[HN Gopher] OpenDroneMap
___________________________________________________________________
OpenDroneMap
Author : mooreds
Score : 255 points
Date : 2022-07-14 11:39 UTC (2 days ago)
(HTM) web link (www.opendronemap.org)
(TXT) w3m dump (www.opendronemap.org)
| mch82 wrote:
| What motivated the choice of AGPL license?
|
| OpenDroneMap has dependencies on GDAL, Proj4J, GeoPackage, SciPy,
| Python, Nginx, and Django, among other packages. Those
| foundational libraries tend to have more permissive licenses
| (PSF, MIT, BSD 3-Clause, Apache 2.0 etc.).
| mooreds wrote:
| https://www.opendronemap.org/2020/12/ghost-busting-speed-imp...
| references https://drewdevault.com/2020/07/27/Anti-AGPL-
| propaganda.html
|
| Here's a forum post covering the same issue:
| https://community.opendronemap.org/t/licensing-queries/6545/...
|
| Disclosure: I'm not an opendronemap community member, so this
| is based on some googling only.
| mch82 wrote:
| Thanks. Those are great links.
| pierotofy wrote:
| OpenDroneMap co-founder here: to make sure modifications to the
| software continue to be released as open source to end users.
| Other licenses allow companies to just take the software,
| modify it to their needs and not release those changes back.
| ODM is very suited for use in cloud environments, so the AGPL
| works very well here.
| intense_feel wrote:
| This is a very cool software! I highly recommend to try it out if
| you own a drone, even if just for a fun, I learned so much when I
| was tinkering with it.
|
| Around a year ago I needed to obtain an aerial map of some
| specific area, but due to recent drastic changes (construction
| work) and poor quality of the public maps I had to somehow create
| my own. I fly drones for recreational purposes so I was thinking
| about using it to make that map when I found out about ODM which
| is exactly what I was looking for. ODM itself just processes
| already obtained images (AFAIK) so there is also a whole process
| of getting them from drone. That's when I found about other
| software for planning fully automated flight paths so there is a
| perfect overlap between the photos (required for quality maps and
| 3D reconstruction). I managed to make a high quality map with
| 1px:1cm ratio via ODM that I still use from time to time.
|
| Like I mentioned if you own a drone I would recommend to try it
| out even if it's just for fun as for my case I learned a lot of
| other stuff I didn't knew before like that automated flight path
| planning.
| sbf501 wrote:
| So it is basically just footage from GoPros strapped to drones,
| and not something requiring building BetaFlight/iNav with a new
| feature?
| cronix wrote:
| I love this software. We recently purchased 60 acres of former
| Weyerhaeuser Forest land with nothing on it except a logging
| road. Used my air2s to map it (using DroneLink as flight planning
| software [thank you DJI for finally releasing the SDK]) taking
| over 2000 images and stitching it all together with ODM, which I
| can then import into QGIS as a GeoTiff. From there I can add
| roads and buildings for our building sites. Plan is to map the
| property after something gets added, like roads, the well,
| clearing land, solar farm, outbuildings, so we can view the
| progress over time. The 3d capabilities are also pretty wild,
| which I import into Blender3D and can make little movies with.
| After the solar field is put in we will be using it for remote
| solar panel inspection as well.
| carbadtraingood wrote:
| I use ODM to map large areas (100-300) acres regularly. It's
| pretty much fire and forget on AWS spot instances.
|
| Combined with Dronelink, my workflow is largely automated. Just a
| few more pieces I'd need to have in place to be able have it be
| more or less hands off.
|
| The next piece I want to tackle is creating a watched directory
| or S3 bucket that automatically spins up a spot instance,
| monitors for the completeness of the work, downloads the results
| to S3, and shuts down the spot instance. Then all I'd have to do
| is watch the drone fly and move photos into a folder.
| pierotofy wrote:
| Something like https://github.com/hobuinc/codm ? :)
| carbadtraingood wrote:
| Time to read up on this and AWS Batch!
| smallerfish wrote:
| Cool idea, which I've wanted to exist (so I'm glad it does). I
| have two suggestions for improving the site:
|
| 1) The huge list of software in the ecosystem is overwhelming.
| Bury it. The choice of picking the two alternative ways of
| running it at the top is fine, but that's all the front page
| should have to say about software.
|
| 2) Critically, on the front page you need a quick demo or diagram
| showing how you get data into it. As a potential user, I really
| don't care about the open ecosystem or joining a community (this
| is good content for a "Developers" tab) - instead I want to know
| how much effort it's going to take me to capture the images and
| turn them into a cool map. What software does the drone need to
| run? Can you push video into ODM and get a map out, or do I need
| to preprocess those images? How far can I go with it, and how are
| those results achieved? Do I need to be a developer or can I be a
| semi-technical drone operator? FPV drones ok, or just DJI? Etc
| etc.
| pierotofy wrote:
| These are great suggestions, thanks! I'll see if we can make
| some improvements.
| crysin wrote:
| Wanted to share a personal project I've been working on using
| ODM.
|
| I'm mostly on a weekly basis capturing the progress of my home as
| it is built. I have a DJI Mini 2 and using Dronelink to create
| the missions. I was originally using DJI Flight Planner + Litchi
| but it's paths it was generating for the area I wanted to cover
| wasn't great and it forced my gimble to look straight down, I'm
| sure Litchi may have let me adjust that somewhere but I couldn't
| figure it out. I had 85% overlap but even with that, as the house
| started getting built ODM seemed to be unable to generate point
| cloud points for some of the walls thus resulting in large holes
| in the geometry. I switched to Dronelink which overall has been a
| much more user-friendly experience for the mission planning and
| it lets me control the gimbal angle. While my photo clarity isn't
| as great as now, my drone doesn't stop for each photo, having my
| camera angled slightly throughout the mission has greatly reduced
| the missing geometry in the outputted model. I've been very
| pleased with ODM thus far though the amount of settings in WebODM
| have been overwhelming and I've settled on just using the Default
| as it seems the best at giving me decent 3D geometry that is
| compressible in a GLTF format.
|
| I'm working on a explorer to catalog the phases.
| https://crysin.github.io/new-construction-explorer/
|
| Any suggestions on better ways to improve the output are welcome.
| pierotofy wrote:
| Lovely! Try bumping --mesh-octree-depth by 1 or 2 for sharper
| models. Also if you're capturing photos in motion, definitely
| enable --rolling-shutter which will help compensate for the
| rolling shutter distortion of the DJI Mini 2's camera (it will
| take a bit longer to process though).
| laen wrote:
| I've been trying to get my organization to use ODM, but finding
| it difficult. The problem is analogous to the issues that Gimp
| has to Photoshop or Linux to Windows -- ease of use.
| Additionally, even if you properly configure the software the
| quality still is not comparable to the big proprietary players in
| the photogrammetry field: Bentley Systems; Pix4D; Drone Deploy.
|
| A major reason for the quality issues is that the major drone
| manufacturers work directly with the proprietary photogrammetry
| software providers in the field to optimize the algorithms to
| their drones. These drone manufacturers then promote these
| proprietary solutions. This puts ODM at a disadvantage as there
| is no short-term financial incentive for manufacturers to promote
| ODM.
|
| Like other fields, the proprietary photogrammetry industry is
| increasing moving to implementing their solutions exclusively in
| the cloud. This is forcing folks to give up their data and
| building a data moat - a problem for my organization.
|
| I hope ODM keeps developing and becomes as ubiquitous as linux.
| Its quality is getting close for my organization to consider its
| implementation. Keep up the great work!
| TheaomBen wrote:
| Are you aware of solutions like Alicevision/Meshroom (MPLv2)?
|
| https://alicevision.org/
| pierotofy wrote:
| Thanks for championing ODM! :) It's true that proprietary
| systems have had a lead in development for a long time, but
| especially of late the software has gotten really good. If you
| haven't tried the software in a while, I'd recommend updating
| and giving it another try.
|
| The quality issue is an interesting one; I remember having a
| discussion with a client that was considering transitioning
| away from Bentley's ContextCapture (CC) and they mentioned that
| CC was generating much denser point clouds compared to ODM. CC
| tends to generate very good looking point cloud models, except
| its algorithms extract points from a mesh interpolation
| approach, so sometimes you end up with points where
| geometrically there shouldn't be any. Sure they look good, but
| is that "good" quality?
| pierotofy wrote:
| OpenDroneMap co-founder here: happy to see this on HN and to
| answer any questions.
| kfarr wrote:
| Very cool! I noticed AGPL 3 License, do you offer licensing
| options if folks want to host this integrated with other closed
| source code? Or would it be permissible to create a
| "microservice" with ODM only that closed source software can
| use API calls to contact?
| pierotofy wrote:
| We do not offer other licensing options. We encourage people
| and organizations to create services that leverage ODM,
| closed or open, while respecting the terms of the AGPL.
| dsmmcken wrote:
| I found it neat that it really can make use of all the cpu and
| memory you can throw at it. I used it to stich around 1000
| photos, and watched as it maxed my 32 cores and 64gb ram in my
| workstation for hours.
|
| I wanted to annotate a map of my property to keep track of the
| fruit trees I am planting. Google maps resolution for the area is
| extremely low, but a basic DJI drone, pix4d capture (free for
| capture) and ODM can give you a nice detailed imagery with very
| little work. The difference was being able to see a stand of
| trees vs individuals.
| carbadtraingood wrote:
| It's great, but several times it does fall back to single
| threaded performance. I regularly use it to generate photos of
| hundreds of acres, and I end up needing a machine with more RAM
| and less CPU.
| pierotofy wrote:
| Yep, RAM is usually the bottleneck for processing larger
| datasets. We do have a divide-and-conquer approach to push
| the limits of your hardware though:
| https://docs.opendronemap.org/large/
| carbadtraingood wrote:
| I found, in practice, that the divide and conquer approach
| led to weird altitude artifacts, where different divisions
| would result in different heights, so the point clouds
| didn't line up. Could have been a one off bug though.
| pierotofy wrote:
| It can happen; point cloud alignment between submodels
| can be tricky. Sometimes increasing the amount of split
| overlap can help, but not always.
| davijo wrote:
| Amazing piece of software! I've a question. It's a bit
| unclear to me, is there a global adjustment applied to
| the sub-blocks that would help with the overlap issues?
| pierotofy wrote:
| There is; the alignment uses affine transformations, but
| it cannot account for certain cases (e.g. severe bowling
| effects). It's an interesting area of research.
| jarofgreen wrote:
| By coincidence I tried this last week; it really is pretty
| impressive.
|
| The one thing I missed is some intros/guidance on how best to
| take photos to feed it; which angle, how much spacing, any tools
| to use in flight etc. I got pretty good results with my first run
| but was going to blindly experiment to see if I could improve it.
| Any tips?
| dsmmcken wrote:
| I've only done a handful of captures, but found this to be a
| reasonable guide:
|
| https://help.dronedeploy.com/hc/en-us/articles/1500004964282...
|
| I use the pix4d capture app for setting the flight path. It can
| be used to just do the capture part for free, where as their
| paid product can also do the stitching for you but seems
| prohibitively expensive for a non-professional who just wants
| to make a small number of maps.
| 7ewis wrote:
| What did you use it for? Agree on the intros, I have a DJI
| drone but have no idea how I'd use this software. Does it
| install on my controller, do I fly in a special way?
| pierotofy wrote:
| https://docs.opendronemap.org/flying/
|
| We might need to put this page in a more visible place.
| mch82 wrote:
| Are maps created by the OpenDroneMap community catalogued
| anywhere? I may have missed the obvious answer, but only found
| docs about creating maps (which is, of course, extremely cool!).
| pierotofy wrote:
| Here's also a few example maps compared side by side with other
| software: https://opendronemap.github.io/UAVArena/
| mooreds wrote:
| I haven't seen a list, but here's a set of well known datasets:
| https://www.opendronemap.org/odm/datasets/
|
| Some of them include the resulting imagery.
| mch82 wrote:
| Cool. Looking forward to checking these out.
| site-packages1 wrote:
| This is really cool, just took my drone out and took 64 pics of
| my neighborhood and turned them into a TIFF viewable on qGIS via
| the ODM CLI. Love it. There are a few oddities, for example it
| produced a few geoTIFFs for viewing, two of them are correctly
| placed, but the high resolution one doesn't seem to contain geo
| bounds and just displays in qGIS adjacent to the world map. Seems
| like there's still some development to be done, but this seems
| like a really cool and interesting project. Excited to see where
| it goes from here!
|
| edit: the above was user error (or my lack of patience waiting on
| the high-rez final photo to load!), everything works wonderfully.
| pierotofy wrote:
| Glad you like it! :) Is this the odm_orthophoto_render.tif
| file? If so, that's normal. That file is not a higher
| resolution image, it's just an intermediate file that doesn't
| have georeferencing and compression. The final georeferenced
| image, odm_orthophoto.tif, by default is cropped to the bounds
| of the model and you can disable that by passing "--crop 0".
| The two images will look identical without crop.
| site-packages1 wrote:
| Very interesting, thank you! i mostly drone as a hobby to get
| some interesting shots, so this is my first foray into using
| it to do anything like this. Indeed I am talking about
| odm_orthophoto_render.tif, I assumed it was the higher
| resolution one because of the size (about 3x the size of the
| other two), and qGIS was not treating odm_orthophoto.tif
| well, but after closer inspection looks like qGIS just didn't
| like odm_orthophoto.tif because it was having trouble loading
| it full resolution, but it did end up loading it correctly if
| I gave it a few more moments to load, and works really well!
|
| Thanks so much for the ad hoc tech help, will definitely be
| playing with this more!
| pierotofy wrote:
| Welcome!
|
| You can also use --build-overviews for speeding up load
| times in QGIS or --cog for generating Cloud Optimized
| GeoTIFFs that both open fast in QGIS and can be streamed
| fast over HTTP.
| kristianpaul wrote:
| Love it!, i've flown my dji mini2 for exploration porpoises and
| got decent cartography with ODM i used later some abseiling and
| the measurements where off by 2 mts (not bad since the GPS wasn't
| RTK or similar)
| SapporoChris wrote:
| Exciting project and I'm a proponent. I'm curious about privacy
| aspects and how they're are handled. I didn't see anything in my
| cursorily glance at the website.
|
| For example if neighbor complains about their land being mapped.
| I don't even know if it's a justifiable complaint. I'm sure it
| depends on the local laws.
|
| I guess my question is, how is this project (or drone pilots)
| going to defend against lawsuits. (if they occur) (seems
| inevitable)
| colineartheta wrote:
| This is (mostly) governed by the FAA and their license granted
| to drone pilots [1]. Your concerns are also touched on by the
| FAA during the training [2]. Please consider that plenty of
| smart people have considered these same things before you
| comment.
|
| 1.
| https://www.faa.gov/uas/commercial_operators/become_a_drone_...
| 2.
| https://www.faa.gov/uas/commercial_operators/operations_over...
| ck2 wrote:
| You know how there was the first airplane flight across America?
|
| Then the first car driven across America.
|
| Much later cycling, running, walking.
|
| When is going to be the first drone flight across America?
|
| Lots of technical and political hurdles.
|
| I am sure the military has already done it, I mean at the
| consumer level.
| abstract_put wrote:
| Without any idea how to do anything, I was able to use the
| cheapest DJI drone (Mini 2) and ODM to stitch together a giant
| orthophoto of my parent's maple sugar bush. It overlays extremely
| nicely over Google Maps without any ground control points. The
| resolution is such that one can pick out individual buckets on
| each tree.
|
| This is _very_ cool software and I've started making maps of my
| own property every ~month or so just to see how things change. I
| started by manually flying missions and eyeballing where to take
| photos, and everything worked great. I see other mentions here
| that say the "capture" part can be done for free by PIX4D, I
| ended up paying for Dronelink to do the same thing.
|
| It's much nicer to have a consistent mission so things always
| come out the same, and way more efficient to have the software
| handle where to take the photos. Having the overlap in both
| directions taken care of is very nice. Now I just sit back and
| make sure nothing crazy happens (e.g. strong winds) and swap the
| battery out when it dies before resuming the mission. SO neat!
| emadehsan wrote:
| What are some algorithms involved in building a project like
| this?
| colineartheta wrote:
| The Colinearity Equation is a (the?) major backbone of most
| point cloud and photogrammetry algorithms
| pierotofy wrote:
| https://www.youtube.com/watch?v=GMil9tpwE_Q
| farmin wrote:
| Structure from motion
| terramars wrote:
| i highly highly recommend trying Colmap if you like ODM. it's not
| suitable for drone footage by itself (it works but why), but it
| has amazing performance for just handheld video walkthroughs or
| if you have a lot of geotagged photos. basically the next
| generation / natural extension of the original Bundler that
| brought open source unstructured SfM to the mainstream. not photo
| realistic or anything but very usable for most practical
| applications.
| Enginerrrd wrote:
| Colmap is pretty amazing. It takes about 6-10x longer to run
| when you max everything out, but it does things no other
| software has managed to do for me.
|
| That said, I made our drone photogrammetry pipeline with ODM
| and I wouldn't use colmap.
|
| There's still some annoying things that no software can seem to
| do: with a single camera, I'd love to create a 3D map of a
| road. But no matter how much overlap of photos I get, (I
| mounted a stabilized GoPro to a truck and took video, than
| pulled together geotagged stills) for some reason I could never
| get a good point cloud out of that data. Even colmap. Colmap
| does it's absolute best if you walk around in a circle with a
| common central point of focus. It's frustrating because I KNOW
| the 3D information is there. I can see it. Plenty of features
| to match. But for some reason this seems to be a hard task for
| current SFM libraries.
| pierotofy wrote:
| I can chime in on the road: there's probably insufficient
| color variation and that gets filtered out during patch-
| match. You can relax the NCC Threshold parameter and you
| should be able to reconstruct the road (you'll also get more
| outliers in other areas though). There might be an option in
| COLMAP to do that. In ODM you need to modify the
| fNCCThresholdKeep parameter in OpenMVS (you'll need to
| recompile OpenMVS).
| Enginerrrd wrote:
| That's an interesting idea. I'm a bit skeptical though,
| since these were dirt and gravel forest roads with lots of
| different colors and apparent features.
| the__alchemist wrote:
| What sort of setups does this support? What drone models and
| firmware? What sort of cameras are supported? Quads? Fixed? DJI?
| Betaflight? Ardupilot? Does it need a camera with a gimbal?
| pierotofy wrote:
| Pretty much any camera (even multiple cameras), from any
| orientation (no gimbal required). Also works with your
| cellphone camera or DSLR camera. Just try not to change the
| focus between shots too much. DJI models are well supported.
___________________________________________________________________
(page generated 2022-07-16 23:01 UTC)