Hello everyone,
I tried to do a roof inspection and wanted to create a roof as an orthomosaic. Unfortunately, I found that the result via WebODM is not satisfactory in comparison to Pix4D Cloud.
About my flight data:
DJI Mavic 2 Pro
Images shot with 90 degrees
overlap 75/75
flight altitude 25 m
approx. GSD: 0.7 cm
Parameters in WebODM:
crop: 0, dem-decimation: 1, dem-gapfill-steps: 4, dem-resolution: 1, depthmap-resolution: 1000, dsm: true, dtm: true, end-with: odm_orthophoto, ignore-gsd: true, matcher-neighbors: 8, mesh-octree-depth: 12, mesh-size: 1000000, min-num-features: 64000, orthophoto-resolution: 1, pc-filter: 0, pc-quality: high, rerun-from: dataset
Perhaps you can help me to get a better result out of WebODM?
Find some pictures on DroneDB:
https://hub.dronedb.app/r/brisksky/roof-inspection
1 Like
The Pix4D orthomosaic is much sharper in depth and therefore more suitable for inspection.
1 Like
Pix4D Cloud still beats us on orthos typically. That’s an area of active research and improvement. That said, there is a lot to do to improve your settings:
Brisksky:
Parameters in WebODM:
crop: 0, dem-decimation: 1, dem-gapfill-steps: 4, dem-resolution: 1, depthmap-resolution: 1000, dsm: true, dtm: true, end-with: odm_orthophoto, ignore-gsd: true, matcher-neighbors: 8, mesh-octree-depth: 12, mesh-size: 1000000, min-num-features: 64000, orthophoto-resolution: 1, pc-filter: 0, pc-quality: high, rerun-from: dataset
Make a few changes here. Remove ignore-gsd. That will bring sadness. If your GSD is 0.7, you should set your orthophoto-resolution to 0.7 (or better yet let ODM calculate it, which it might calculate it higher). I wouldn’t use pc-filter 0 unless you know you need it: that could cause a lot of noise. Increase the heck out of your matcher-neighbors – maybe 32. You can turn your mesh-octree depth up to 13 (but I wouldn’t go to 14). Turn your feature quality up to ultra as well as your pc quality and don’t directly use depthmap resolution.
Something like this would be an improvement:
crop: 0, dem-resolution: 1.4, dsm: true, dtm: true, matcher-neighbors: 32, mesh-octree-depth: 13, mesh-size: 600000, min-num-features: 64000, pc-quality: ultra, feature-quality: ultra, resize-to: -1
The following are my typical settings which generally don’t need tweaking for many datasets:
auto-boundary: true, dsm: true, feature-quality: ultra, matcher-neighbors: 40, mesh-octree-depth: 12, mesh-size: 300000, min-num-features: 64000, orthophoto-resolution: 1, pc-geometric: true, pc-quality: ultra, rerun-from: dataset, resize-to: -1
Good luck, and let us know what you see! Any screenshots you can share would be good to see.
6 Likes
What I found, ODM orthophotos (sometimes) give similar result with Pix4D, but the GPS accuracy seems Pix4D is better
Let me give an example
Here is public dataset https://www.sensefly.com/education/datasets/?dataset=1419
ODM result 1st
Pix4D 1st
ODM 2nd
Pix4D 2nd
ODM 3rd
Pix4D 3rd
ODM setting
version = 2.7.2 via Docker
OS = MXLinux 19.4
pc-geometric true; pc-quality high; feature-quality high; mesh-size 600k; mesh-octree-depth 12; orthophoto-resolution 2 cm/px; dem-resolution 2 cm/px; dsm true; min-num-features 12k; the rest are default
We’ve got an update just this week that may address this. If you haven’t already: update and rerun. I’d be curious what you see.
2 Likes
Woah interesting
Has it available from Docker with ./webodm.sh update --gpu
?
2 Likes
I haven’t tested GPU, but I assume so.
2 Likes
system
Closed
3 April 2022 13:42
9
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.