[HN Gopher] Creating aerial imagery with a bike helmet camera (G... ___________________________________________________________________ Creating aerial imagery with a bike helmet camera (GoPro) and OpenDroneMap Author : jakecopp Score : 40 points Date : 2022-12-11 21:16 UTC (1 hours ago) (HTM) web link (jakecoppinger.com) (TXT) w3m dump (jakecoppinger.com) | jakecopp wrote: | I wrote this guide on generating 3D models and orthorectified | imagery from 360 degree cameras. Usually this sort of thing is a | lot easier with drones, but there are a lot of places you can't | fly drones! | | I'm hoping this makes mapping curb/street/parking data more | accessible. | | For example, OpenStreetMap has a new street parking spec which | could make use of lots of street imagery! | https://wiki.openstreetmap.org/wiki/Street_parking | Enginerrrd wrote: | I've spent a lot of time trying to get 3d models of rural roads | with a truck-mounted go-pro and photogrammetry. | | At the end of the day, I couldn't get it to work despite having | some great data sets. I talked to someone who did manage to get | this work, proved down to centimeter accuracy but they were | only able to get it to work with great difficulty and a rig | with 5 different cameras. They said by the time you do all | that, you'll have invested enough that lidar would make as much | sense cost-wise. | | I believe the problem is at the MVS step, but it seems like | none of the libraries handle this use case very well for some | reason, despite having great overlapping features. | | When taken on the ground, doing orbits looking in toward a | common object works reasonably well, and colmap handled this | the best. Especially with exhaustive matching, but it takes | DAYS to process. (Or, 4-6 hours if you REALLY optimize the | process.) | | But moving in a line, no matter how much overlap of the | features you get, just doesn't work that well, and I do not | understand why. I think it fails in the feature matching step | and it makes no sense since it has really similar images to try | and match if you capture at any reasonable frequency. | | I think THIS worked better than I would have expected because | of the 3d aspect where the lens gives you multiple perspectives | on objects along the sides. | jakecopp wrote: | > But moving in a line, no matter how much overlap of the | features you get, just doesn't work that well, and I do not | understand why. | | How far apart were the photos taken? I think OpenDroneMap | needs lots of overlap with drone photos, and even more with | spherical photos to extract features well. | | I haven't experimented with a non-360 degree camera - the | benefit of a 360 degree camera is you effectively double the | photos you get (front/back). Cycling or walking also ensures | huge overlap. | tomarr wrote: | Hey nice writeup. I saw you linked to Mapillary on there, have | you used this and the API? The CV side can really add to | mapping functionality. | thomasbibby wrote: | This is fantastic! Great write up. A question: any idea what | sort of accuracy you're getting at the end of the process with | respect to things like carriageway widths? As you allude to in | the article, this could be a great tool for advocacy groups to | identify where a road is wide enough to accommodate cycle | lanes, or where footpath widths are substandard. I was just | wondering if it's possible to get the +/- 10cm accuracy that'd | be ideal for doing this sort of work. Thanks! | saidinesh5 wrote: | Been meaning to play with opendronemap for quite a while now. | Thanks for the write up. | | Regarding the fisheye correction, may be you can find some code | and presets from the gyroflow project? they have presets for a | lot of camera lenses out there, and they do fisheye correction | and stabilization real time on GPU: | https://github.com/gyroflow/gyroflow/blob/master/src/core/ca... | jakecopp wrote: | Thanks! OpenDroneMap is an awful lot of fun to use, I got | into it when making models with a DJI Mini Pro 3. | | Wow that is some awesome software! I know OpenDroneMap does | have a library of lenses but it doesn't seem to be able to | detect the GoPro Fusion. I can't find the code with the | presets right now, but | https://docs.opendronemap.org/arguments/camera-lens/ is the | documentation for selecting the lens type. | | My understanding is that if it can't find a lens preset it's | not an issue; it will instead figure out the lens geometry | which it also can output. I haven't tinkered with the code | though and I'm still getting to know the software! ___________________________________________________________________ (page generated 2022-12-11 23:00 UTC)