FB imported roads misaligned more than 60 meters


In this area Bing imagery was badly aligned. All features derived from this imagery have a bad offset, unless the mapper took care to align imagery with GPS tracks first.


I contacted Facebook, as they are the largest contributor to this offset-mapped roads.

Manually moving all the roads causes junction points of unmoved or already aligned roads to mismatch.

Shall we simply remove the roads without additional tags and remap them? Might be faster than trying to manually align them.
Just take care to not delete anything having “local” tags.


What a mess! Sometimes I think those FB and Grab mappers are only concerned with one thing; and that’s whether two points, towns or whatever, are connected by road to one another. Smooth curves and other things, esthetics if you will, don’t count for much. Apparently, neither does positional accuracy. Did nobody tell them about adjusting offsets?

Anyway, I think the roads should be realigned manually. If you delete them and start over, you risk the loss of important details. I’ve been mapping along Route 1 lately and there are lots of new additions that will trip you up if you’re not careful. For one example, turn lanes have been added in many places. Sometimes the mapper splits the road, adds a lane to allow for a turning lane, but forgets to split it at the intersection. I’ve done it myself. The road ahead will now show an incorrect number of lanes.

I have noticed that the imagery layers we have now (thank you, FB) do not align with one another at all. Each must be separately calibrated for offset. It’s easy to be working with one layer that is offset calibrated, switch to another layer to see if it contains more or different information, and then start mapping using the new later but forget to adjust the offset. This has also happened to me. As I proceed along Route 1 adding details, almost every new chunk of satellite imagery needs to be calibrated because the offset can change in the space of one tile. It literally drives me crazy. Perhaps one of those scenarios is what went wrong in the changeset you’re discussing.




probably at the time of editing the Imagery now available with “Bing” was the best available. We could blame them for not checking for offset before starting to map. I certainly mentioned that before and it is quite certainly also documented in one of the forum messages we had in discussions with DrishT.

I try to figure out the bounding box of the area so badly offset in Bing. This is the western boundary:
15.3372641, 105.1392454
Check out imagery at this node to see the offset.

Manually fixing is quite bad. I did this with a few major highways. All connected nodes need to be touched again. And if you move a connected road, the previous connection point as well.

It helps a bit to use Josm to select all way nodes and then deselect those not to move.

Still: I am tempted to just delete “tracks” in the initial condition of the FB import (last user FB)

Ok, I roughly identified the affected area. It is about 180 square kilometres large.

It covers this area:

You can copy the following code into an osm file and load as a layer in JOSM to see it.

<?xml version='1.0' encoding='UTF-8'?>
<osm version='0.6' upload='never' generator='JOSM'>
  <node id='-104873' action='modify' lat='15.3137175198' lon='105.14772981137' />
  <node id='-104874' action='modify' lat='15.33753961903' lon='105.13926743925' />
  <node id='-104875' action='modify' lat='15.35627151517' lon='105.13212471932' />
  <node id='-104876' action='modify' lat='15.36353930813' lon='105.12996822327' />
  <node id='-104877' action='modify' lat='15.36922922095' lon='105.12901067197' />
  <node id='-104878' action='modify' lat='15.38202319008' lon='105.12689709395' />
  <node id='-104879' action='modify' lat='15.3870686687' lon='105.14234125078' />
  <node id='-104880' action='modify' lat='15.39230280064' lon='105.16645430982' />
  <node id='-104881' action='modify' lat='15.38629284744' lon='105.18454312742' />
  <node id='-104882' action='modify' lat='15.38178785481' lon='105.20307182729' />
  <node id='-104883' action='modify' lat='15.35443254236' lon='105.20883857936' />
  <node id='-104884' action='modify' lat='15.3480645535' lon='105.21109968156' />
  <node id='-104885' action='modify' lat='15.33932700491' lon='105.21585792035' />
  <node id='-104886' action='modify' lat='15.33019849129' lon='105.21883248746' />
  <node id='-104887' action='modify' lat='15.30116773521' lon='105.21245955348' />
  <node id='-104888' action='modify' lat='15.27866884328' lon='105.21274923205' />
  <node id='-104889' action='modify' lat='15.26241929233' lon='105.21353243709' />
  <node id='-104890' action='modify' lat='15.25378685372' lon='105.21466969371' />
  <node id='-104891' action='modify' lat='15.23972991781' lon='105.21591423869' />
  <node id='-104892' action='modify' lat='15.20379661823' lon='105.19856571078' />
  <node id='-104893' action='modify' lat='15.20037222295' lon='105.16044616431' />
  <node id='-104894' action='modify' lat='15.20260338727' lon='105.15673935145' />
  <node id='-104895' action='modify' lat='15.20713035488' lon='105.14810263574' />
  <node id='-104896' action='modify' lat='15.20869367528' lon='105.13855397165' />
  <node id='-104897' action='modify' lat='15.21902061634' lon='105.13923525274' />
  <node id='-104898' action='modify' lat='15.23928481101' lon='105.14351604223' />
  <node id='-104899' action='modify' lat='15.24232813581' lon='105.14239489496' />
  <node id='-104900' action='modify' lat='15.25091964636' lon='105.14402030826' />
  <node id='-104901' action='modify' lat='15.26386834278' lon='105.1456510967' />
  <node id='-104902' action='modify' lat='15.27695079739' lon='105.14650939822' />
  <node id='-104903' action='modify' lat='15.28026268051' lon='105.14635919452' />
  <node id='-104904' action='modify' lat='15.30554511372' lon='105.14477132678' />
  <node id='-106524' action='modify' lat='15.29014659153' lon='105.18070186615' />
  <node id='-106612' action='modify' lat='15.29053954517' lon='105.1260709548' />
  <node id='-106622' action='modify' lat='15.28524075126' lon='105.13319491804' />
  <node id='-106637' action='modify' lat='15.29340620088' lon='105.12336729884' />
  <node id='-106642' action='modify' lat='15.29862197847' lon='105.13859688699' />
  <node id='-106651' action='modify' lat='15.1985888353' lon='105.18218277812' />
  <node id='-106662' action='modify' lat='15.29632457152' lon='105.20762084842' />
  <way id='-103302' action='modify'>
    <nd ref='-104873' />
    <nd ref='-104874' />
    <nd ref='-104875' />
    <nd ref='-104876' />
    <nd ref='-104877' />
    <nd ref='-104878' />
    <nd ref='-104879' />
    <nd ref='-104880' />
    <nd ref='-104881' />
    <nd ref='-104882' />
    <nd ref='-104883' />
    <nd ref='-104884' />
    <nd ref='-104885' />
    <nd ref='-104886' />
    <nd ref='-104887' />
    <nd ref='-106662' />
    <nd ref='-104888' />
    <nd ref='-104889' />
    <nd ref='-104890' />
    <nd ref='-104891' />
    <nd ref='-104892' />
    <nd ref='-106651' />
    <nd ref='-104893' />
    <nd ref='-104894' />
    <nd ref='-104895' />
    <nd ref='-104896' />
    <nd ref='-104897' />
    <nd ref='-104898' />
    <nd ref='-104899' />
    <nd ref='-104900' />
    <nd ref='-104901' />
    <nd ref='-104902' />
    <nd ref='-104903' />
    <nd ref='-106622' />
    <nd ref='-106612' />
    <nd ref='-106637' />
    <nd ref='-106642' />
    <nd ref='-104904' />
    <nd ref='-104873' />
    <tag k='area' v='yes' />
    <tag k='fixme' v='This area has bad Bing offset. Many roads need realignment' />

edit: 3.8. more accurate bounding area

In browsing around in the impacted area, I can see the source of the error. There is a massive stitching problem in the Bing imagery that is very obvious here 15.2392848, 105.143516. If one was working on the map west of the area Stephan outlined above, you could easily be fooled into thinking your edits were proper as you moved east. The way forward is to use different imagery with an accurate offset and ignore Bing when making the edits. Both Maxar-Premium and Maxar-Standard are good choices for this as they have good detail and require only small offset adjustments. The N-S (latitude) offset is easy because there are several useful traces from the 217. The E-W offset is trickier because there aren’t that many traces from the N-S highways

The question then is, how to go about fixing this? I’m willing to help but unless the repairs are done carefully or by only one mapper at a time, we will cause conflicts between the various editors’ updates. Sounds like a job for the HOT task manager?

I did manually realign some major highways and residential roads.

Maxar Premium matches quite OK on the GPS tracks, so think this can be used in the affected area.

The area is smaller than I feared. I have some more photo-mappings to process, so I won’t work on it today, at least not on larger scale.
I should not conflict with you, as I am currently in Munich and do OSM in the evening. So you probably already sleep.
I had seen edits from Russ in this area. You are both in the same time-zone, right? Maybe you two split the area north/south the river.

As always in such situations: download the area before you edit, upload in smaller chunks. In case of conflict, just drop the edit.

For me it worked well to load the affected area in JOSM. then I use the bing imagery as a layer and pan through the area. All roads that align well with Bing are probably off. I switch then to Maxar and align them.

PS: I updated the Area above. In the middle there is a spike towards the west with bad offset.

I repaired the area north of mun river. I used this mapcss style to have the roads stand out with higher contrast against the imagery.

way[highway] {
  color: #00ffff;

Hi Stephan,

Thanks for flagging this. I see you have fixed quite a bit already, but we will also run through this area and correct any remaining offsets.


@Stephan or Jeff

Please store the imagery offset you are using so we can all use it. It will be a bit arbitrary no matter who does it but at least that way we’ll all be mapping with the same approximate degree of accuracy.

my GPS tracks in the affected area align quite well with the Maxar Premium layer. So I applied no offset to it.
Bing is so outdated, I recommend to not use it at all here.

You will find my GPS track uploaded along highway 217.


I believe all the offsets have been corrected now, but let me know if any other areas pop up.

Based on Stephan’s feedback, and also comparing to his GPS trace, we also just used Maxar Premium for realignment purposes.


IMO, the Maxar-Premium imagery with Zero offset for the longitude is close but not perfect. However, I’m happy to use it that way if everyone else is okay with it.

From Jeff’s post, I guess the fix is mostly done already.

I seldom use Bing anymore, preferring to use either of the Maxar layers instead. In a very few locales I work with in Alaska, however, Bing imagery is still clearer even if a bit out of date.