Pix4D vs WebODM: disappointing results from WebODM, what am I doing wrong?

Hi all,
I’ve run a job on both the trial version of Pix4DMapper and WebODM (from installer). 317 images captured with a Mavic Air 2, no GCPs.
I am quite disappointed at how they compare (see this folder content).

Not only the point coverage is much less, but also the measure of the car is more off than Pix4D: the real measure is 4.91m, exactly what Pix4d gives (maybe a lucky shot?) against 4.80m from WebODM. I was expecting a bit better TBH, I have a very good coverage in that area with a lot of pictures quite close to the car.

One big question: with the default settings WebODM ran in 3 hours, while it took much longer for Pix4d to run: is Pix4d running a higher quality by default? Before I run again the WebODM job, I’d like to hear suggestions on which settings I should change, keeping in mind I don’t have a powerful PC. My target is to have overnight runs.

Thanks everyone!

1 Like


Indeed, Pix4DMapper settings and WebODM settings don’t always align.

What processing presets did you choose for both programs?

1 Like

I chose the default ones for both! Here are the webODM settings (also visible in the log file I uploaded here)

[INFO] Initializing ODM 2.8.0 - Sun Apr 24 23:09:07 2022
[INFO] ==============
[INFO] auto_boundary: True
[INFO] boundary: {}
[INFO] build_overviews: False
[INFO] camera_lens: auto
[INFO] cameras: {}
[INFO] cog: True
[INFO] copy_to: None
[INFO] crop: 3
[INFO] debug: False
[INFO] dem_decimation: 1
[INFO] dem_euclidean_map: False
[INFO] dem_gapfill_steps: 3
[INFO] dem_resolution: 5
[INFO] depthmap_resolution: 640
[INFO] dsm: True
[INFO] dtm: False
[INFO] end_with: odm_postprocess
[INFO] fast_orthophoto: False
[INFO] feature_quality: high
[INFO] feature_type: sift
[INFO] force_gps: False
[INFO] gcp: None
[INFO] geo: None
[INFO] gps_accuracy: 10
[INFO] ignore_gsd: False
[INFO] matcher_neighbors: 8
[INFO] matcher_type: flann
[INFO] max_concurrency: 4
[INFO] merge: all
[INFO] mesh_octree_depth: 11
[INFO] mesh_size: 200000
[INFO] min_num_features: 10000
[INFO] name: 62df2a9f-afcc-4884-aafa-1e744c6095ec
[INFO] optimize_disk_space: False
[INFO] orthophoto_compression: DEFLATE
[INFO] orthophoto_cutline: False
[INFO] orthophoto_kmz: False
[INFO] orthophoto_no_tiled: False
[INFO] orthophoto_png: False
[INFO] orthophoto_resolution: 5
[INFO] pc_classify: False
[INFO] pc_csv: False
[INFO] pc_ept: True
[INFO] pc_filter: 2.5
[INFO] pc_geometric: False
[INFO] pc_las: False
[INFO] pc_quality: medium
[INFO] pc_rectify: False
[INFO] pc_sample: 0
[INFO] pc_tile: False
[INFO] primary_band: auto
[INFO] project_path: C:\WebODM\resources\app\apps\NodeODM\data
[INFO] radiometric_calibration: none
[INFO] rerun: None
[INFO] rerun_all: False
[INFO] rerun_from: None
[INFO] resize_to: 2048
[INFO] sfm_algorithm: incremental
[INFO] skip_3dmodel: False
[INFO] skip_band_alignment: False
[INFO] skip_orthophoto: False
[INFO] skip_report: False
[INFO] sm_cluster: None
[INFO] smrf_scalar: 1.25
[INFO] smrf_slope: 0.15
[INFO] smrf_threshold: 0.5
[INFO] smrf_window: 18.0
[INFO] split: 999999
[INFO] split_image_groups: None
[INFO] split_overlap: 150
[INFO] texturing_data_term: gmi
[INFO] texturing_keep_unseen_faces: False
[INFO] texturing_outlier_removal_type: gauss_clamping
[INFO] texturing_skip_global_seam_leveling: False
[INFO] texturing_skip_local_seam_leveling: False
[INFO] texturing_tone_mapping: none
[INFO] tiles: False
[INFO] time: False
[INFO] use_3dmesh: False
[INFO] use_exif: False
[INFO] use_fixed_camera_params: False
[INFO] use_hybrid_bundle_adjustment: False
[INFO] verbose: False

1 Like

Yesterday I re-run WebODM with modified settings:

auto-boundary: true, dem-gapfill-steps: 5, dem-resolution: 1, dsm: true, end-with: odm_report, feature-quality: ultra, gps-accuracy: 2, ignore-gsd: true, orthophoto-resolution: 1, pc-filter: 0, pc-quality: high, use-fixed-camera-params: true, rerun-from: opensfm

It’s been running for 23 hours and still matching pictures :smiley:


I would highly recommend not using this. More trouble than it is worth.

Do you have a really good calibrated camera model? If not, I would let the pipeline calculate one for this dataset and remove this option.

No I don’t have any calibrated model… It’s been running for 16 hours now, I feel bad stopping it, it is at this stage:

[INFO] Generating C:\WebODM\resources\app\apps\NodeODM\data\62df2a9f-afcc-4884-aafa-1e744c6095ec\odm_dem\dsm_r0.02_x2_y2.tif (max, radius: 0.02, resolution: 0.01)
[INFO] running pdal pipeline -i “C:\Users\entro\AppData\Local\Temp\tmpvkiqis7a.json”

Is it worth stopping and restarting from a certain point with the suggested modifications?

Thanks a lot for the support!

1 Like

Nope! you’re getting close to the end!

Try those next time :slight_smile:

It’s stuck on that line since 2 hours! Is it normal? I would have liked to start another job in 4 hours, before midnight here in Italy :slight_smile:

1 Like

Depends upon the area of reconstruction, your machine, and the settings. It looks like a pretty fine resolution was requested, so yes, it might take a long time.

What is weird is that CPU usage is at 0 and also memory usage is low…

1 Like

That step should be mostly disk activity, if I’m not mistaken.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.