osm-fr / osmose-backend

Part of osmose that runs the analysis, and send the results to the frontend.
GNU General Public License v3.0
90 stars 114 forks source link

Validation rule traffic sign: Unmapped road bump (Germany) #1790

Closed sun-geo closed 1 year ago

sun-geo commented 1 year ago

I'm happy about general traffic sign recognition validation.

I noticed the task (8300/34) seems to be not suitable in Germany in general, because there doesn't exist such a traffic sign at all.

item 8300 - traffic sign class 34 - Unmapped road bump osmose link for item 8300 and class 34 traffic_calming=bumpwiki / hazard=bumpwiki / sign: Vienna_Convention_road_sign_Aa-7b-V1 svg bump sign commons wikimedia / bump sign Category commons wikimedia

Therefore maybe there are almost all issue marker false positive cases, because of other wrong recognized signs. The automatic traffic sign recognition is mostly wrong - instead of the "Unmapped road bump" sign there are other signs recognized, eg. sign: Vienna_Convention_road_sign_Aa-7a-V1 svg uneven road sign commons wikimedia / uneven road sign Category commons wikimedia

which is a different tag in OSM, see hazard=damaged_roadwiki Example: osmose map link / mapillary link

There are also many wrong cases of recognition by guide plate signs: sign: Zeichen_626-30_-_Leitplatte_(750x500);_StVO_2013 svg / guide plate sign commons wikimedia Examples: i) osmose map link / mapillary link ii) osmose map link / mapillary link

There are also minor wrong cases of recognition by the following signs: parking sign: Zeichen_314-50_-_Parkhaus,_Parkgarage,_StVO_2017 svg parking sign commons wikimedia Example: osmose map link / mapillary link

slope signs:Vienna_Convention_road_sign_Aa-2a-V1-1 svg/ slope sign Category commons wikimedia Example: osmose map link / mapillary link

I don't know if this task works well for other countries, please check before switching off the rule for the entire world.

Famlam commented 1 year ago

Thank you for your detailed report! It's very easy to disable a non-existing traffic sign on a per-country basis (I did the same for the speed limit 110 for NL in the past) so I made a PR to fix this. Should fix 1305 false positives in Germany: https://osmose.openstreetmap.fr/de/issues/open?item=8300&class=34&country=germany%2a

frodrigo commented 1 year ago

PR of @Famlam merged, but not deployed, yet.

About the wrond detection, is on Mapillary side. Osmose can do nothing about it, except disable some traffic sign if there is so much false-positives.

sun-geo commented 1 year ago

Thanks a lot of instant reply and the code updates.

In meantime I looked at wikipedia page: https://en.wikipedia.org/wiki/Comparison_of_European_road_signs#Warning

So it seems, the bump sign is next to Germany also not available for Austria, Switzerland, Liechtenstein and Turkey.

Famlam commented 1 year ago

I went through a random set of matches from those countries:

I'll create a PR

frodrigo commented 1 year ago

Thank you. For reminder, once deployed, frontend will need to be cleaned (manually) for this classes on this countries.

Famlam commented 1 year ago

@frodrigo I think this is deployed, correct? If so, can you clear this detection for Austria, Switzerland, Germany and Turkey on the frontend?

frodrigo commented 1 year ago
select array_agg(id) from sources where analyser = 'Merge_Traffic_Signs' and country like 'switzerland_%';
34001,34002,34003,34004,34005,34006,34007,34008,34009
402784,402835,402886,402937,30974,33000,33003,33006,33009,33012,33015,33018,33021,33024,33027,33030,33033,33038,33041,33044,33047,33050,33053,33056,33059,33062,33065,33068,33071,33074
418511,418566,418621,418676,418731,418786,418841,418896,418951,419006,419061,419116,419171,419226,419281,419336,419391,419446,419501,419556,419611,419666,419721,419776,419831,419886
33325
./item-class-source-remove.sh 8300 34 402784,402835,402886,402937,30974,33000,33003,33006,33009,33012,33015,33018,33021,33024,33027,33030,33033,33038,33041,33044,33047,33050,33053,33056,33059,33062,33065,33068,33071,33074

Removed