12 ms·
Map Features in OpenStreetMap with Computer Vision
- ks2048 2y agoI did some work in this field, although years ago. There is a huge amount of existing models, datasets, tools, etc. https://github.com/satellite-image-deep-learning https://github.com/satellite-image-deep-learning
- nativeit 2y agoThis is an amazing set of resources, thanks for sharing. I have been tinkering with QGIS, and signed up for a slew of public/private satellite imagery APIs to bring in data to play with. The EU’s space agency has a lot of really good data sources with fully open access (no user accounts necessary). I am looking forward to working with this new collection of ML-specific tools.
- daavoo 2y ago> really good data sources with fully open access (no user accounts necessary) Ola! I am the author of the repo, worked in satellite projects for the Galician goverment some years ago. You don't need an account to download the data from OSM (you do need to contribute back, which makes sense IMO). You don't need an account to download tiles from some publicly available sources (i.e. https://pnoa.ign.es/ https://pnoa.ign.es/ in Spain) but I prefer to made the code work with MapBox and let them pay the infra (until they stop free offering). Happy to share a simple snippet to use a different tile provider. Any public dataset (that I am aware) is not really meant to be frequently updated, at best you get a second version release a year later. A lot of public money (I know because have been payed a small portion of these budgets) is spent on building datasets that are used for a couple of research papers, uploaded to the web and then become outdated. If I want to help updating them or correcting label mistakes, in most (all?) cases, there is no practical way for me to do it. I believe that OpenStreetMap has the potential to be the best publicly available spatial "dataset" for (some specific) CV use cases. If we focus on creating ways to contribute with quality data (the idea behind this small project), it will just keep getting a better dataset, that anyone can contribute to be up-to-date.
- banana_dick_4 2y ago[dead]
- nativeit 2y agoThanks so much for the add'l context, that all sounds very real. I have worked in/around academic projects, and maintaining otherwise useful assets and data that follow on from individual projects sounds like a somewhat ubiquitous challenge. I am a systems admin and IT consultant by day, my interests in ML and cartographic endeavors are extra-curricular, but I appreciate what you're doing!
- stereo 2y agoHi from the OpenStreetMap Foundation. Please don't add AI-detected features directly to the database. The algorithms have problems with false positives, and with mapping straight or rectangular objects as wobbly, as shown in the second-to-last screenshot. As a helper to detect missing features, this is a precious tool. But we still need human intervention to make sure the detected objects are drawn correctly. See also: https://wiki.openstreetmap.org/wiki/Import/Guidelines https://wiki.openstreetmap.org/wiki/Import/Guidelines and https://wiki.openstreetmap.org/wiki/Automated_Edits_code_of_conduct https://wiki.openstreetmap.org/wiki/Automated_Edits_code_of_...
- daavoo 2y ago> But we still need human intervention to make sure the detected objects are drawn correctly. Hi, I am the author. The demo app and any provided code example includes a step asking a human to verify the detected features. You can't upload them automatically unless you modify the source code. I reiterate the human verification across the docs, linked post, and any code samples. I haven't ever uploaded features automatically. In fact I manually edited and labeled hundreds of swimming pool samples myself before even training the first version. Happy to hear and implement any ideas on how to improve the process to prevent automated features to be uploaded. I know some people might say: just don't publish the tool, I think we can do better at embracing AI and having an open discussion.
- halosghost 2y agoI am afraid your “human in the loop” isn't [0]. You acknowledge the problem of AI slop up-front, but seem to have chosen to plow forward anyway. Please do consider your actions and their effects carefully [1]. You are in a position of potential influence; try not to squander it. All the best, -HG [0]: https://pluralistic.net/2024/10/30/a-neck-in-a-noose/ https://pluralistic.net/2024/10/30/a-neck-in-a-noose/ [1]: https://web.cs.ucdavis.edu/~rogaway/papers/radical.pdf https://web.cs.ucdavis.edu/~rogaway/papers/radical.pdf
- Vinnl 2y ago
- orbital-decay 2y agoExperiencing automated mapping first-hand makes me extremely wary of it. I've travelled across South America on a motorcycle, and OSM has a large amount of edits there that look automated (particularly in Brazil), making it barely usable in certain places. I'm not even talking about rural roads but also fairly large cities.
- pastage 2y agoArmchair mapping will always result in bad maps. I usually try to use mapwithme and leave photo notes describing issues when I travel, I take photos of fences and play grounds, other people take scenic pictures. So it might very well be automatic mapping, just saying that I know my armchair mapping can be pretty bad when I gonand check it OTG.
- Aachen 2y agoBy bad, do you mean incomplete or that it's often actually wrong? Because my experience is that it's very complementary and I see things on aerial that I didn't irl and of course also vice versa. Mapping from the air seems to work well to me North Korea should be an interesting example, I guess we have no chance of anyone commenting on it but there's people who've been mapping it from actual satellite imagery, so very poor quality compared to the airplane-based georeferenced photographs we're used to in most countries. If armchair mapping makes bad maps, that will be the best example to have someone check out, but alas. (The visitor-accessible parts may not count as much because a mapper could have visited those)
- deleted 2y ago[deleted]
- banana_dick_4 2y ago[dead]
- banana_dick_5 2y ago[dead]
- 2y ago
- pierotofy 2y agoWorked on something similar a few months ago (albeit for smaller scale geographic data): https://github.com/uav4geo/GeoDeep https://github.com/uav4geo/GeoDeep
- daavoo 2y agoHi there! That is some cool work, happy to chat and discuss ideas for collaboration :)
- banana_dick_2 2y ago[dead]
- banana_dick_2 2y ago[dead]
- qwertox 2y agoGoogle would not allow this, but Mapbox seems to be OK with this, if it is used for non-commercial purposes or OSM, and only if their satellite data is used (not their vector data): 1.6. No Tracing, Deriving, or Extracting. Customer shall not trace or otherwise derive or extract content, data and/or information from the Service Offerings except that Customer may use Studio or third-party software to trace Mapbox Maps solely comprised of satellite imagery to produce derivative vector datasets (i) for non-commercial purposes or (ii) for OpenStreetMap. Kind of nice from them.
- mtmail 2y agoBing also allows OpenStreetMap mappers to use their aerial imagery for tracing. https://wiki.openstreetmap.org/wiki/Bing_Maps#Aerial_imagery https://wiki.openstreetmap.org/wiki/Bing_Maps#Aerial_imagery
- banana_dick_3 2y ago[dead]
- banana_dick_4 2y ago[dead]
- banana_dick_4 2y ago[dead]
- ecommerceguy 2y agoWe used to call this heads up digitizing.
- banana_dick_2 2y ago[dead]
- banana_dick_1 2y ago[flagged]
- banana_dick_3 2y ago[dead]
- banana_dick_4 2y ago[dead]
- banana_dick_5 2y ago[dead]
- banana_dick_7 2y ago[dead]
- anakaine 2y agoId love to see a bit more detail on fine tuning SAM/2 to do things like detect pools or solar arrays. Both these are fantastic things to have mapped for community resilience projects, but I've not been able to follow along with SAM2 fine tuning at all. I've got a Yolov8 model which does quite a good job of finding and segmenting out solar, but the edges are absolutely horrible and require an insane amount t of work to clean up. I've seen results from SAM2 that has been trained, and the results look massively better. Wouldn't put these in OSM due to stereo6 comment about accuracy, but I could sure use them elsewhere.
- daavoo 2y ago> but I've not been able to follow along with SAM2 fine tuning at all. Hi there! There is no SAM2 finetuning involved in the project. The segmentation data from OSM doesn't have enough quality to properly train a segmentation model from it. What I am using here is a YOLO model for bounding box prediction. The bounding boxes from OSM are good enough for this. I then pass the each individual bounding box as a "prompt" to SAM2 for a segmentation of what is inside. I also tried to pass the centroid of the box as a "prompt" for SAM but it gave worse results.
- cratermoon 2y ago[flagged]
- CaptainFever 2y agoThis is spam.
- hollerith 2y agoNo it isn't.
- CaptainFever 2y agoYes it is.
- lucb1e 2y agoAnd this is why we can't have good spam filters: people will flag anything unwanted as spam, no matter if they signed up for it a while ago (like a newsletter email), or didn't enjoy a comment related to AI on an AI comment thread (like here). Wikipedia adds that spam also typically has a commercial, or otherwise prohibited, purpose Not saying this shouldn't be flagged ("Don't feed egregious comments by replying; flag them instead." this arguably meets that bar in low effort and low value/quality), but it's not spam if they aren't pasting it indiscriminately to many places for some illegitimate purpose Speaking of which, welles-nietes replies (what's that in English, »"yes it is, no it isn't"-replies« perhaps? Or a »yes-no argument«? I tried a translator and chatgpt but neither gave options that seem correct) are at about the same level, no?
- matkoniecz 2y agoYes, it is. Bare link promoting mildly related product/account/project, added without explanation and one that was easily replaceable with less promotional text is a spam. At least in my opinion.
- cratermoon 2y ago[flagged]
- throwaway346434 2y agoOh, great re swimming pools - solar detection is another one on my list to have a go at. I feel like a lot of the pushback here is an idea that OSM can grow from hand mapping; but as someone with 60k changesets over a decade... no amount of human volunteer enthusiasm is to the point that it can "solve" mapping at a global scale to the standards that make the map data overwhelmingly useful. I feel we need a scalable framework for importing and maintaining data: ways to annotate the quality, sources, where to report bugs in the data source, and guidance to consumers. Ie if I want to query "businesses of type X" "mapped by humans within the last year", I can sort of do that with "check date". But who knows how many of those attributes are accurate, or if the mapper who checked only checked one aspect (name/location)? Would it be better to ingest alltheplaces opening hours to maintain this data automatically, every month? Would it be better as a data consumer if I could filter to only certain sources I trust? Or I could use data - even if the polygons aren't perfect or similar, even with known limitations like "poi inferred by AI".
- cinntaile 2y agoSolar might be problematic. How will you discern between a solar panel and a solar thermal collector? They look practically the same but their function is very different.
- Freak_NL 2y ago> Would it be better to ingest alltheplaces opening hours to maintain this data automatically, every month? Alltheplaces plays dangerously loose with (also) using resources clearly marked as copyrighted and protected with an API-key. As it is that project can serve as inspiration, but it is incompatible with OpenStreetMap.
- matkoniecz 2y agoCan you give any specific example? I am currently working on project that would use ATP and I am vetting its spiders. So far I have not found any bad ones. If you found one then knowing which one you mean would be highly useful! (BTW, just marking something as copyrighted does not make it copyrighted)
- curtisszmania 2y ago[dead]
- ySteeK 2y agoWait, we are not mapping things we see in sattelite images, we are mapping things that have ground truth. Please do not contribute anything ai-fantasized
- moffkalast 2y agoSatelite images are the ground truth OSM is traced on. And the quality of those tracings varies wildly at times, I've had to fix weirdly offset shores that had roads on them placed on the sea on more than one occasion. If this can be somewhat consistent then it'll probably do better than the average OSM contributor. Something like segmenting houses, roads, bodies of water, comparing against current data and highlighting inconsistencies for correction would be a good start though.
- mistrial9 2y ago> it'll probably do better than the average OSM contributor let us reconsider this statement, please. An unexpected and powerful effect of the Openstreetmap project is iterated convergence on ground truth. No person is perfect in contribution, and few people are consistently terrible. Revision and updates, common vision towards accuracy, an appreciation of cooperative contributions.. have astounded the public and humbled critics repeatedly. Not because every key stroke and mouse click is perfect, but because iteration and plural sources have converged in a usable system of software and data. AI inputs to Openstreetmap are not new, as noted in other comments. The path forward is bright, useful to humans and participatory in the Openstreetmap project.
- daavoo 2y ago> Something like segmenting houses, roads, bodies of water, comparing against current data and highlighting inconsistencies for correction would be a good start though. Hi there, I agree that is a valuable usage of a model trained with OSM data. I didn't have the time to release the code but I am/was doing exactly that to refine the training dataset. I take the trained model and run it against the ground truth from OSM. Any heavy mismatch between the two almost always result in an useful edit to be made in OSM.
- gpvos 2y agoCan Mozilla please focus on making a good browser?
- daavoo 2y agoHello everyone, thanks for all the valuable feedback. I have published a new release where any code to directly upload to OSM has been replaced with an export to OsmChange format. I hope this is a step in the right direction, I will continue the discussion on the dedicated thread in the OSM forum.