4 ms·
Show HN: Satellite imagery object detection using text prompts
I built a browser-based tool for detecting objects in satellite imagery using vision-language models (VLMs). You draw a polygon on the map and enter a text prompt such as "swimming pools", "oil tanks", or "buses". The system scans the selected area tile-by-tile and returns detections projected back onto the map as GeoJSON.
Pipeline: select area and zoom level, split the region into mercantile tiles, run each tile with the prompt through a VLM, convert predicted bounding boxes to geographic coordinates (WGS84), and render the results back on the map.
It works reasonably well for distinct structures in a zero-shot setting. occluded objects are still better handled by specialized detectors like YOLO models.
There is a public demo and no login required. I am mainly interested in feedback on detection quality, performance tradeoffs between VLMs and specialized detectors, and potential real-world use cases.
- triplecheese 7mo agoThis is cool. I'll give it a go
- JimmyJamesJames 7mo agoGreat idea, almost impossible to use on the mobile due to the mobile UI.
- eyasu6464 7mo agoThanks for the feedback. I’ve resolved the UI issues on mobile.
- ge96 7mo agoTangent question, I know of services like Planet Labs, Maxar... is the capability there now assuming you had money, where you could tag a ship from space and watch it travel (I know there is something like ADSB for ships) but would be interesting.
- notahacker 7mo agoIt's still at the "technical challenge to fuse data from AIS [ADSB for ships, complete with spoofing and transponders being turned off] to [generally] static images from multiple different sources" stage, at least unless you've got the budget for a video satellite to stick in a geostationary-ish orbit
- ge96 7mo agoI also wasn't sure how good satellite image quality is where you can match a ship from above, maybe the pattern of the freight containers could help. And track I didn't indicate frequency, it's not per minute, but say hourly.
- sorenjan 7mo agoPlanet labs has a solution specifically for ships. https://www.planet.com/pulse/illuminate-the-dark-fleet-with-planet-maritime-domain-awareness/ https://www.planet.com/pulse/illuminate-the-dark-fleet-with-...
- ge96 7mo agoDang, that is hard to do, 4 pixels of orange to work with
- fusslo 7mo agovery cool Once I figured out how to use the UI I did 2 scans. first one I had to zoom in before the identification boxes popped up. At first I thought it didnt do anything Second scan I put over a local aviation museum with a mix of helicopters, unusual planes, cars, buildings, and other equipment. I was surprised to see everything identified correctly, though it missed a single helicopter. I'd love a little bell or notification when the scan completes, as I hit 'scan', switch to a different tab and then forgot I was waiting
- eyasu6464 7mo agoThanks for trying it out. The detections not all appearing before zooming is because I added a LOD (level of detail) rendering method, so if hundreds of thousands of objects are detected, it won’t crash the system. Only the areas you’re looking at render, and the more you zoom in, the more objects are displayed. It was a pain to set up, but it’s worth it. The notification idea is great, and I’ll add a sound to play when a scan finishes.
- fusslo 7mo agoThanks, makes sense to me. I was just confused at first since i thought maybe it didnt do anything or my adblocker was making it go weird
- whall6 7mo agoI have been looking for a way to find pickleball courts near my house. This sounded like the perfect tool! I tried "pickle ball court" using the maximum polygon size (actually just slightly under) and... it didn't work. It gave me a red dashed square around a driveway to what looked like a farm. Cool concept though.
- deleted 7mo ago[deleted]
- eyasu6464 7mo agoThanks for the feedback. A dashed square marks the area you select for detection, and once it’s finished, the results will appear. You might want to give it another try because I just tested it on the pickleball courts at 1108 S Harvey Ave, Oklahoma City, OK, 73109, ( https://www.useful-ai-tools.com/tools/satellite-analysis-demo/?lat=35.454553&lng=-97.517433&z=18 https://www.useful-ai-tools.com/tools/satellite-analysis-dem... ) on Ultra High and it detected all of them.
- CyberDildonics 7mo agoWhat happens when you search on google maps?
- iFred 7mo agoWhat kind of image set is used here? A quick scan over the site and I don't know if I can provided my own aerial or satellite imagery or if you provide it.
- sixothree 7mo agoIt successfully located a submerged car in a bayou. (Note, this is a known finding, and nothing reportable). So I think there are some possible positive use cases here. I'm curious what other unsolved mysteries are now solvable with computation.
- d_silin 7mo agoOne guy made a similar solution for our hackathon (airplane detection): https://github.com/nabetse00/webnova_submision/blob/main/Python/Challenge2.md https://github.com/nabetse00/webnova_submision/blob/main/Pyt...
- thenthenthen 7mo agoVery cool, been trying to make something like this as well (for very niche usecases). If i am on mobile the selection polygon max size seems to be very small, like the size of one block?
- aaron695 7mo ago[dead]
- eyasu6464 7mo agoI’m thinking about adding new features. Which one is more useful and should come next: searching with an image of an object, detecting changes over time using Sentinel-2 data, or detecting object in all Google Street View images within a selected area?
- notahacker 7mo agoDepends what you're going for. Change detection has a lot of established use cases but not sure whether LLM interfaces will add usability or remove accuracy; object detection in Google Street View images sounds cool and novel, but not sure what the actual use case is...
- thenthenthen 7mo agoSearching with an image of an object 100%!! (Or just like, find similar areas from a sat crop/screenshot!
- deleted 7mo ago[deleted]
- toader 7mo agoHow should the search box respond to a search of Las Vegas, NV or San Antonio, TX? I'm not getting any response.
- notahacker 7mo agoInteresting to see this change between uses (the bounding boxes are better than the heatmaps I saw the first time I tried it!) The AI struggles a bit with less generic terms. It correctly realised Radcliffe Camera was a building, but tagged another building as well and guessed wrong for Balliol Library (I guess the models haven't seen it from above). On the other hand I was pleased it tagged narrowboats and didn't tag them as fish when I asked it to find fish on that tile...