Issue with opensfm reconstruction

Good day to everyone. Please help me with one problem. I have recently installed ODM (version: 2.4.10) natively on Ubuntu 20.04.2 LTS by your description steps declared on the web page. Installation was done great, without any problem during it. After installation, I downloaded the attached sample image dataset (Aukerman) to test if everything is ok with the ODM installation. When I ran ODM natively, all steps were successfully accomplished before step OpenSfM reconstruction. I used all default settings set by default ODM installation during ODM execution, except project path (for project path, I was using a new created folder “project” in the main ODM-master folder). After running and finish the step OpenSfM reconstruction, ODM tells me that “The program could not process this dataset using the current settings. Check that the images have enough overlap, that there are enough recognizable features, and that the images are in focus. You could also try to increase the --min-num-features parameter. The program will now exit.”. I will paste you all report from the terminal of ODM.

I thought that everything would be going great with the attached sample images. But as you can see, it does not. So I had tried to change the setting -min-num-features parameter (-min-num-features parameter: 20000) of the project, but the error still exists. I think that maybe the problem is in OpenSfM because it can’t create file reconstruction.json. But I don’t know. Please help me because I don’t know what to do anymore to fix this problem. Thank you.

My PC specifications are this: RAM: 64 GB RAM, Processor: AMD Ryzen 9 3900X, 12 Core, 24 Thread Processor, 4.6 GHz Max Boost, 3.8 GHz Base, Graphics card: AMD Raden RX 5700 XT, 8 GB GDDR6.

Terminal report of ODM:
[INFO] Initializing ODM - pet tra 16 17:03:28 2021
[INFO] ==============
[INFO] build_overviews: False
[INFO] camera_lens: auto
[INFO] cameras: {}
[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: False
[INFO] dtm: False
[INFO] end_with: odm_report
[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_distance: 0
[INFO] matcher_neighbors: 8
[INFO] matcher_type: flann
[INFO] max_concurrency: 24
[INFO] merge: all
[INFO] mesh_octree_depth: 11
[INFO] mesh_size: 200000
[INFO] min_num_features: 8000
[INFO] name: aukerman
[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: False
[INFO] pc_filter: 2.5
[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: /home/pc/Programs/ODM-master/projects
[INFO] radiometric_calibration: none
[INFO] rerun: None
[INFO] rerun_all: False
[INFO] rerun_from: None
[INFO] resize_to: 2048
[INFO] skip_3dmodel: False
[INFO] skip_band_alignment: 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
[INFO] ==============
[INFO] Running dataset stage
[INFO] Loading dataset from: /home/pc/Programs/ODM-master/projects/aukerman/images
[INFO] Loading 77 images
[INFO] Wrote images database: /home/pc/Programs/ODM-master/projects/aukerman/images.json
[INFO] Found 77 usable images
[INFO] Parsing SRS header: WGS84 UTM 17N
[INFO] Finished dataset stage
[INFO] Running split stage
[INFO] Normal dataset, will process all at once.
[INFO] Finished split stage
[INFO] Running merge stage
[INFO] Normal dataset, nothing to merge.
[INFO] Finished merge stage
[INFO] Running opensfm stage
[INFO] Writing exif overrides
[INFO] Maximum photo dimensions: 4896px
[INFO] PyOpenCL is missing (not a GPU build)
[INFO] Altitude data detected, enabling it for GPS alignment
[INFO] [‘use_exif_size: no’, ‘flann_algorithm: KDTREE’, ‘feature_process_size: 2448’, ‘feature_min_frames: 8000’, ‘processes: 24’, ‘matching_gps_neighbors: 8’, ‘matching_gps_distance: 0’, ‘optimize_camera_parameters: yes’, ‘undistorted_image_format: tif’, ‘bundle_outlier_filtering_type: AUTO’, ‘align_orientation_prior: vertical’, ‘triangulation_type: ROBUST’, ‘retriangulation_ratio: 2’, ‘feature_type: SIFT’, ‘use_altitude_tag: yes’, ‘align_method: auto’, ‘local_bundle_radius: 0’]
[INFO] running /home/pc/Programs/ODM-master/SuperBuild/src/opensfm/bin/opensfm extract_metadata “/home/pc/Programs/ODM-master/projects/aukerman/opensfm”
[INFO] running /home/pc/Programs/ODM-master/SuperBuild/src/opensfm/bin/opensfm detect_features “/home/pc/Programs/ODM-master/projects/aukerman/opensfm”
[INFO] running /home/pc/Programs/ODM-master/SuperBuild/src/opensfm/bin/opensfm match_features “/home/pc/Programs/ODM-master/projects/aukerman/opensfm”
[INFO] running /home/pc/Programs/ODM-master/SuperBuild/src/opensfm/bin/opensfm create_tracks “/home/pc/Programs/ODM-master/projects/aukerman/opensfm”
[INFO] running /home/pc/Programs/ODM-master/SuperBuild/src/opensfm/bin/opensfm reconstruct “/home/pc/Programs/ODM-master/projects/aukerman/opensfm”
[ERROR] The program could not process this dataset using the current settings. Check that the images have enough overlap, that there are enough recognizable features and that the images are in focus. You could also try to increase the --min-num-features parameter.The program will now exit.

Do you have the proper permissions to read/write/execute that directory from docker/ODM?

1 Like

Thank you so much for your quick response. I have run command ./run.sh with the sudo role, and nothing has been changed. The issue is still here. If i do something wrong please correct me. Thank you. I may mention that I don’t run ODM via docker. I got installed ODM native on my own PC. Do you maybe have any other ideas?

2 Likes

Same thing happened to me. Dataset with 377 images was not processed. Same error. Tried smaller dataset, still same problem. Other software (Pix4D, Metashape) are able to process these data.

Are both of you able to share your datasets?

1 Like

Thank you for your response. I don’t need to share my dataset Aukerman because it is already available and can be download from the official ODM web page (https://github.com/OpenDroneMap/odm_data_aukerman/archive/master.zip).

1 Like

I tried this one from sensefly for testing purposes: https://s3.eu-central-1.amazonaws.com/senseflycom/datasets/johnson-quarry/RGB+img.zip

To provide more information:
OS - Ubuntu 20.04, running in docker
CPU - Ryzen 7 2700X
RAM - DDR4 16GB
GPU - GTX1060 (Not used)
SSD - 480GB (100GB used for swap)

2 Likes

I really don’t know anymore where the problem is. I tried almost everything that is in my knowledge. I have attempted to install the latest version of software ODM on different PCs with Ubuntu 20.04.2.0 LTS, and change nearly all possible parameters in settings.yaml file, and the issue is still here. Since I don’t know how to fix the problem, it seems to me that the only solution is to install software ODM v2.0.0. on UBUNTU 18.04.5 LTS, because this was the only approach when I was successfully and fully run software ODM. My only regret is that I won’t be able to use newer versions of ODM more than version 2.0.0, with their latest improvements and novel features. But I have to mention that ODM v2.0.0 is also perfect, and I am very grateful that it works. Thank you.

Why don’t you try the ODM snap image? It is up to date and doesn’t have any of these dependency issues.

2 Likes

So you think, that problem might be in version of Ubuntu? Or you think it might be in version of ODM?

I installed snap image (sudo snap install --edge opendronemap), but I get error:

Python path configuration:
  PYTHONHOME = (not set)
  PYTHONPATH = (not set)
  program name = 'python3'
  isolated = 0
  environment = 1
  user site = 1
  import site = 1
  sys._base_executable = '/usr/bin/python3'
  sys.base_prefix = '/usr'
  sys.base_exec_prefix = '/usr'
  sys.executable = '/usr/bin/python3'
  sys.prefix = '/usr'
  sys.exec_prefix = '/usr'
  sys.path = [
    '/usr/lib/python38.zip',
    '/usr/lib/python3.8',
    '/usr/lib/python3.8/lib-dynload',
  ]
Fatal Python error: init_fs_encoding: failed to get the Python codec of the filesystem encoding
Python runtime state: core initialized
ModuleNotFoundError: No module named 'encodings'

Current thread 0x00007fc6c4078740 (most recent call first):
<no Python frame>

How are you getting that error? What command are you issuing?

After installation of snap image, I used “opendronemap” command.

WebODM works with latest version on Ubuntu 18.04. Looks like newer version of Ubuntu caused main problem in this thread.

So an upstream problem in Ubuntu? Do you know what component?