openMVG / Image_datasets

Image dataset for testing OpenMVG
Other
41 stars 17 forks source link

instructions for 360 dataset no longer work #4

Open 96fps opened 1 year ago

96fps commented 1 year ago

The instructions for processing 360 images (at Image_datasets/blob/main/360_dataset/README.md) appear to have become broken by a change to openMVG or openMVS.

line 20 of the readme reads:

$ openMVG_main_ComputeMatches -i $dataset_out/matches/sfm_data.json -o $dataset_out/matches -g a

running this command prints usage instructions and warns of an unrecognized option -g

$ openMVG_main_ComputeMatches -i $dataset_out/matches/sfm_data.json -o $dataset_out/matches -g a
INFO: [main_ComputeMatches.cpp:79] Usage: openMVG_main_ComputeMatches
[-i|--input_file]   A SfM_Data file
[-o|--output_file]  Output file where computed matches are stored
[-p|--pair_list]    Pairs list file

[Optional]
[-f|--force] Force to recompute data]
[-r|--ratio] Distance ratio to discard non meaningful matches
   0.8: (default).
[-n|--nearest_matching_method]
  AUTO: auto choice from regions type,
  For Scalar based regions descriptor:
    BRUTEFORCEL2: L2 BruteForce matching,
    HNSWL2: L2 Approximate Matching with Hierarchical Navigable Small World graphs,
    HNSWL1: L1 Approximate Matching with Hierarchical Navigable Small World graphs
      tailored for quantized and histogram based descriptors (e.g uint8 RootSIFT)
    ANNL2: L2 Approximate Nearest Neighbor matching,
    CASCADEHASHINGL2: L2 Cascade Hashing matching.
    FASTCASCADEHASHINGL2: (default)
      L2 Cascade Hashing with precomputed hashed regions
     (faster than CASCADEHASHINGL2 but use more memory).
  For Binary based descriptor:
    BRUTEFORCEHAMMING: BruteForce Hamming matching,
    HNSWHAMMING: Hamming Approximate Matching with Hierarchical Navigable Small World graphs
[-c|--cache_size]
  Use a regions cache (only cache_size regions will be stored in memory)
  If not used, all regions will be load in memory.
[Pre-emptive matching:]
[-P|--preemptive_feature_count] <NUMBER> Number of feature used for pre-emptive matching
INFO: [main_ComputeMatches.cpp:109] Unrecognized option -g

running the command without -g a results in invalid region file error:

INFO: [main_ComputeMatches.cpp:113]  You called : 
openMVG_main_ComputeMatches
--input_file /home/96fps/project/Image_datasets/360_dataset/360_Flat/matches/sfm_data.json
--output_file /home/96fps/project/Image_datasets/360_dataset/360_Flat/matches
--pair_list 
Optional parameters:
--force 0
--ratio 0.8
--nearest_matching_method AUTO
--cache_size unlimited
--preemptive_feature_used/count 0 / 200
ERROR: [sfm_regions_provider.hpp:124] Invalid regions files for the view: /home/96fps/project/Image_datasets/360_dataset/360_Flat/images/R0010217.JPG
ERROR: [sfm_regions_provider.hpp:124] Invalid regions files for the view: /home/96fps/project/Image_datasets/360_dataset/360_Flat/images/R0010211.JPG
ERROR: [sfm_regions_provider.hpp:124] Invalid regions files for the view: /home/96fps/project/Image_datasets/360_dataset/360_Flat/images/R0010214.JPG
ERROR: [sfm_regions_provider.hpp:124] Invalid regions files for the view: /home/96fps/project/Image_datasets/360_dataset/360_Flat/images/R0010215.JPG
ERROR: [sfm_regions_provider.hpp:124] Invalid regions files for the view: /home/96fps/project/Image_datasets/360_dataset/360_Flat/images/R0010220.JPG
ERROR: [sfm_regions_provider.hpp:124] Invalid regions files for the view: /home/96fps/project/Image_datasets/360_dataset/360_Flat/images/R0010212.JPG
ERROR: [sfm_regions_provider.hpp:124] Invalid regions files for the view: /home/96fps/project/Image_datasets/360_dataset/360_Flat/images/R0010213.JPG
ERROR: [sfm_regions_provider.hpp:124] Invalid regions files for the view: /home/96fps/project/Image_datasets/360_dataset/360_Flat/images/R0010210.JPG
ERROR: [sfm_regions_provider.hpp:124] Invalid regions files for the view: /home/96fps/project/Image_datasets/360_dataset/360_Flat/images/R0010218.JPG
ERROR: [sfm_regions_provider.hpp:124] Invalid regions files for the view: /home/96fps/project/Image_datasets/360_dataset/360_Flat/images/R0010219.JPG
ERROR: [sfm_regions_provider.hpp:124] Invalid regions files for the view: /home/96fps/project/Image_datasets/360_dataset/360_Flat/images/R0010216.JPG
INFO: [loggerprogress.hpp:79] [- Regions Loading -] 100%
ERROR: [main_ComputeMatches.cpp:194] Cannot load view regions from: /home/96fps/project/Image_datasets/360_dataset/360_Flat.
pmoulon commented 1 year ago

Hello @96fps There is a slight change in the API with OpenMVG2.0 We separated the match and geometric filtering steps to add more modularity. So you need to remove this -g a from ComputeMatches and add it on GeometricFiltering binary see here https://github.com/openMVG/openMVG/blob/develop/src/software/SfM/SfM_SequentialPipeline.py.in#L66

Hoping it helps, and you right we should update our doc