Purpose of parameters in WebODM


I am playing around with infrared images and WebODM. I want to get an orthophoto and find the “best” set of parameters so that the quality is as good as possible. Of course the quality depends on the data aquisition process, but I want to understand how the orthophoto generation can be influenced and what processing step and parameters are relevant.

As ODM provides a ton of parameters for various processing steps, how can I find out what parameters have an impact on the orthophoto generation. Images are taken using a DJI drone and the ZH20T camera system. No GCP. I have no memory issue so far.
From that orthophoto I want to detect objects (photovoltaic modules) and extract their GPS coordinates.

The parameters I use for the moment are:
auto-boundary: true, dem-resolution: 5, dsm: true, fast-orthophoto: true, feature-quality: ultra, gps-accuracy: 10, matcher-neighbors: 20, min-num-features: 40000, orthophoto-resolution: 1, pc-filter: 0, pc-geometric: true, pc-quality: ultra, rerun-from: dataset

How can I determine gps-accuracy?
Do I need to consider DEM and DSM parameters for the orthophoto?

Results of my experiments:

Infrared images:

GPS accuracy is a function of how good the GPS on your drone is. Which model is it, exactly? For my Mini 2, I just leave it set to the default 10 meters and things come out very, very close to reality. Usually features on the reconstruction come out within 6-18 inches of their actual real-world locations. More images usually equals more accuracy, as the competing GPS errors seem to get averaged out.

1 Like

The drone is a Matrice 300 RTK with a Zenmuse H20T camera system. The spec of the Matrice 300 says that the positioning accuracy horizontal is 1.5m with GPS, with RTK way better (~1-1.5cm), if i understood the spec correctly. I am only getting the images from the drone operator, not a lot of experience so far.
E.g. when the orthophoto is overlayed on the map within WebODM, I can see a deviation of around 4.5m.
The blurry corner in the left region is from the map, and the overlayed orthophoto in the region to the right. I marked the centers of the PV module located in the corner and measured the distance.

My question now is if I can improve the accuracy somehow when I know the deviation is about 4.5m?

First, set your --gps-accuracy flag to twice your anticipated RTK accuracy, in this case 0.03m when you process. That said, the base imagery is from Google and may be inaccurate up to 10 or more meters, depending on where in the world. So, it is likely you are showing the offsets in the underlying imagery, not accuracy issues in your dataset. But setting the gps-accuracy will ensure you are properly constraining your model for maximum accuracy.


Yes, I did not yet consider the “accuracy” of Google Maps. I set gps-accuracy to 0.03, and on one side of the orthophoto the distance is around 1.5m, on the opposite side around 3.5m.
Can I somewhere evaluate the result like in WebODM with the overlay?

You could use some known points of known accuracy and overlay in QGIS or similar.

For anybody trying to figure out the meaning and impact of the parameters:

I can highly recommend the ODM book of Piero Toffanin. Its worth every cent. Reading through the descriptions of the parameters, although not all available parameters are covert when using the currect release of ODM, I got much better results on the orthophoto. Would have saved lots of time instead of using the trial and error approach :slight_smile:


Is there a place where folks can submit errata or the equivalent of pull requests for new or updated content?