Open mmcike opened 2 years ago
Interface change slightly for OpenMVG V2. Please use the -g option on GeometricFilter binay. Thanks
Interface change slightly for OpenMVG V2. Please use the -g option on GeometricFilter binay. Thanks
Got it. Thanks.
It occurs those errors below when I execute "DensifyPointCloud scene.mvs" command in directory of OpenMVS.
20:58:57 [App ] Preparing images for dense reconstruction completed: 66 images (153ms) 20:58:57 [App ] error: reference image 22 has no good images in view 20:58:57 [App ] error: reference image 4 has not enough images in view 20:58:57 [App ] error: reference image 46 has no good images in view 20:58:57 [App ] error: reference image 58 has no good images in view 20:58:57 [App ] error: reference image 2 has not enough images in view 20:58:57 [App ] error: reference image 64 has no good images in view 20:58:57 [App ] error: reference image 10 has no good images in view 20:58:57 [App ] error: reference image 8 has not enough images in view 20:58:57 [App ] error: reference image 52 has no good images in view 20:58:57 [App ] error: reference image 28 has not enough images in view 20:58:57 [App ] error: reference image 40 has not enough images in view 20:58:57 [App ] error: reference image 34 has not enough images in view 20:58:57 [App ] error: reference image 14 has no good images in view 20:58:57 [App ] error: reference image 16 has no good images in view 20:58:57 [App ] Selecting images for dense reconstruction completed: 52 images (1ms)
Please tell me what should I do? Thanks.
This is an error related to OpenMVS. Can you first related to your OpenMVG scene and the stats at the end of the SfM process?
这是与 OpenMVS 相关的错误。你能先谈谈你的OpenMVG场景和SfM过程结束时的统计数据吗?
print ("1. Intrinsics analysis")
pIntrisics = subprocess.Popen( [os.path.join(OPENMVG_SFM_BIN, "openMVG_main_SfMInit_ImageListing"), "-i", input_dir, "-o", matches_dir, "-f", "1", "-c", "7"] )
# pIntrisics = subprocess.Popen( [os.path.join(OPENMVG_SFM_BIN, "openMVG_main_SfMInit_ImageListing"), "-i", input_dir, "-o", matches_dir, "-f", "1", "-c", "7", "-d", camera_file_params] )
pIntrisics.wait()
print ("2. Compute features")
pFeatures = subprocess.Popen( [os.path.join(OPENMVG_SFM_BIN, "openMVG_main_ComputeFeatures"), "-i", matches_dir+"/sfm_data.json", "-o", matches_dir, "-m", "SIFT", "-f" , "1", "-n", "8"] )
pFeatures.wait()
print ("2. Compute matches")
pMatches = subprocess.Popen( [os.path.join(OPENMVG_SFM_BIN, "openMVG_main_ComputeMatches"), "-i", matches_dir+"/sfm_data.json", "-o", matches_dir+"/matches.putative.bin", "-f", "1", "-n", "ANNL2"] )
pMatches.wait()
print ("2. Filter matches" )
pFiltering = subprocess.Popen( [os.path.join(OPENMVG_SFM_BIN, "openMVG_main_GeometricFilter"), "-i", matches_dir+"/sfm_data.json", "-m", matches_dir+"/matches.putative.bin" , "-g" , "a", "-o", matches_dir+"/matches.f.bin" ] )
pFiltering.wait()
reconstruction_dir = os.path.join(output_dir,"reconstruction_sequential")
print ("3. Do Incremental/Sequential reconstruction") #set manually the initial pair to avoid the prompt question
pRecons = subprocess.Popen( [os.path.join(OPENMVG_SFM_BIN, "openMVG_main_SfM"), "--sfm_engine", "INCREMENTAL", "--input_file", matches_dir+"/sfm_data.json", "--match_dir", matches_dir, "--output_dir", reconstruction_dir] )
pRecons.wait()
pRecons = subprocess.Popen( [os.path.join(OPENMVG_SFM_BIN, "openMVG_main_openMVGSpherical2Cubic"), "-i", reconstruction_dir+"/sfm_data.bin", "-o", os.path.join(reconstruction_dir, "cubic")] )
pRecons.wait()
print ("5. Colorize Structure")
pRecons = subprocess.Popen( [os.path.join(OPENMVG_SFM_BIN, "openMVG_main_ComputeSfM_DataColor"), "-i", reconstruction_dir+"/sfm_data.bin", "-o", os.path.join(reconstruction_dir,"colorized.ply")] )
pRecons.wait()
print ("4. Structure from Known Poses (robust triangulation)")
pRecons = subprocess.Popen( [os.path.join(OPENMVG_SFM_BIN, "openMVG_main_ComputeStructureFromKnownPoses"), "-i", reconstruction_dir+"/sfm_data.bin", "-m", matches_dir, "-o", os.path.join(reconstruction_dir,"robust.ply")] )
pRecons.wait()
# openMVG_main_openMVG2PMVS openMVG_main_openMVG2openMVS
pRecons = subprocess.Popen( [os.path.join(OPENMVG_SFM_BIN, "openMVG_main_openMVG2openMVS"), "-i", os.path.join(reconstruction_dir, "cubic", "sfm_data_perspective.bin"), "-o", os.path.join(reconstruction_dir, "cubic", "scene.mvs"), "-d", os.path.join(reconstruction_dir, "cubic", "openmvs_images")] )
pRecons.wait()
Using input dir : C:\Users\dmgz0\Downloads\ReleaseV2.0.Rainbow-Trout.WindowsBinaries_VS2019\360_Flat\images output_dir : C:\Users\dmgz0\Downloads\ReleaseV2.0.Rainbow-Trout.WindowsBinaries_VS2019\tutorial_out
INFO: [main_SfMInit_ImageListing.cpp:478] SfMInit_ImageListing report: listed #File(s): 12 usable #File(s) listed in sfm_data: 11 usable #Intrinsic(s) listed in sfm_data: 1 INFO: [main_ComputeFeatures.cpp:121] You called : ./openMVG_main_ComputeFeatures --input_file C:\Users\dmgz0\Downloads\ReleaseV2.0.Rainbow-Trout.WindowsBinaries_VS2019\tutorial_out\matches/sfm_data.json --outdir C:\Users\dmgz0\Downloads\ReleaseV2.0.Rainbow-Trout.WindowsBinaries_VS2019\tutorial_out\matches --describerMethod SIFT --upright 0 --describerPreset NORMAL --force 1 --numThreads 8
Node degree statistics: min: 10, max: 10, mean: 10, median: 10 'neato' �����ڲ����ⲿ���Ҳ���ǿ����еij��� ���������ļ���
Node degree statistics: min: 9, max: 10, mean: 9, median: 10 INFO: [main_GeometricFilter.cpp:376] Task done in (s): 0 INFO: [main_GeometricFilter.cpp:379] Export Adjacency Matrix of the pairwise's geometric matches 'neato' �����ڲ����ⲿ���Ҳ���ǿ����еij��� ���������ļ���
TrackLength, Occurrence 2 2806 3 1199 4 591 5 363 6 190 7 124 8 80 9 43 10 36 11 58
INFO: [loggerprogress.hpp:79] [Selection of an initial pair] 30% INFO: [loggerprogress.hpp:79] [Selection of an initial pair] 40% INFO: [loggerprogress.hpp:79] [Selection of an initial pair] 60% INFO: [loggerprogress.hpp:79] [Selection of an initial pair] 70% INFO: [loggerprogress.hpp:79] [Selection of an initial pair] 100% INFO: [sequential_SfM.cpp:495] Putative starting pair info: index:(0,10) view basename:(R0010210,R0010220) INFO: [sequential_SfM.cpp:538] Relative pose a-contrario upper_bound residual is: 12.4384 INFO: [sfm_data_BA_ceres.cpp:496] Bundle Adjustment statistics (approximated RMSE):
MSE Residual InitialPair Inlier:
INFO: [sfm_data_BA_ceres.cpp:496] Bundle Adjustment statistics (approximated RMSE):
INFO: [sfm_data_BA_ceres.cpp:496] Bundle Adjustment statistics (approximated RMSE):
INFO: [sfm_data_BA_ceres.cpp:496] Bundle Adjustment statistics (approximated RMSE):
INFO: [sfm_data_BA_ceres.cpp:496] Bundle Adjustment statistics (approximated RMSE):
INFO: [sfm_data_BA_ceres.cpp:496] Bundle Adjustment statistics (approximated RMSE):
INFO: [sfm_data_BA_ceres.cpp:496] Bundle Adjustment statistics (approximated RMSE):
INFO: [sfm_data_BA_ceres.cpp:496] Bundle Adjustment statistics (approximated RMSE):
INFO: [sfm_data_BA_ceres.cpp:496] Bundle Adjustment statistics (approximated RMSE):
INFO: [sfm_data_BA_ceres.cpp:496] Bundle Adjustment statistics (approximated RMSE):
Used motion prior: 0 INFO: [sfm_data_BA_ceres.cpp:496] Bundle Adjustment statistics (approximated RMSE):
Used motion prior: 0 INFO: [sfm_data_BA_ceres.cpp:496] Bundle Adjustment statistics (approximated RMSE):
Histogram of residuals: 0 | 7899 0.397 | 11706 0.794 | 3953 1.19 | 1608 1.59 | 742 1.98 | 425 2.38 | 194 2.78 | 115 3.18 | 49 3.57 | 24 3.97
INFO: [main_SfM.cpp:549] Total Sfm took (s): 1 INFO: [main_SfM.cpp:551] ...Generating SfM_Report.html INFO: [main_SfM.cpp:556] ...Export SfM_Data to disk. INFO: [main_openMVGSpherical2Cubic.cpp:63] force_recompute_images = 1 INFO: [loggerprogress.hpp:79] [Generating cubic views:] 100% size_cubic_images = 1024 INFO: [loggerprogress.hpp:79] [Creating cubic sfm_data structure:] 10% INFO: [loggerprogress.hpp:79] [Creating cubic sfm_data structure:] 20% INFO: [loggerprogress.hpp:79] [Creating cubic sfm_data structure:] 30% INFO: [loggerprogress.hpp:79] [Creating cubic sfm_data structure:] 40% INFO: [loggerprogress.hpp:79] [Creating cubic sfm_data structure:] 50% INFO: [loggerprogress.hpp:79] [Creating cubic sfm_data structure:] 60% INFO: [loggerprogress.hpp:79] [Creating cubic sfm_data structure:] 70% INFO: [loggerprogress.hpp:79] [Creating cubic sfm_data structure:] 80% INFO: [loggerprogress.hpp:79] [Creating cubic sfm_data structure:] 90% INFO: [loggerprogress.hpp:79] [Creating cubic sfm_data structure:] 100% INFO: [main_openMVGSpherical2Cubic.cpp:276] #views: 66
INFO: [loggerprogress.hpp:79] [- Regions Loading -] 100% INFO: [main_ComputeStructureFromKnownPoses.cpp:300] Robust triangulation of the tracks: [Triangulation of guided epipolar geometry matches] INFO: [loggerprogress.hpp:79] [- PROCESS VIEWS -] 20% INFO: [loggerprogress.hpp:79] [- PROCESS VIEWS -] 30% INFO: [loggerprogress.hpp:79] [- PROCESS VIEWS -] 50% INFO: [loggerprogress.hpp:79] [- PROCESS VIEWS -] 70% INFO: [loggerprogress.hpp:79] [- PROCESS VIEWS -] 80% INFO: [loggerprogress.hpp:79] [- PROCESS VIEWS -] 100% INFO: [loggerprogress.hpp:79] [- UNDISTORT IMAGES ] 20% INFO: [loggerprogress.hpp:79] [- UNDISTORT IMAGES ] 30% INFO: [loggerprogress.hpp:79] [- UNDISTORT IMAGES ] 50% INFO: [loggerprogress.hpp:79] [- UNDISTORT IMAGES ] 70% INFO: [loggerprogress.hpp:79] [- UNDISTORT IMAGES ] 80% INFO: [loggerprogress.hpp:79] [- UNDISTORT IMAGES ] 100% INFO: [main_openMVG2openMVS.cpp:236] Scene saved to OpenMVS interface format:
INFO: [main_openMVG2openMVS.cpp:241] platform ( 0 ) #cameras: 1 INFO: [main_openMVG2openMVS.cpp:243] 66 images (66 calibrated) 4458 Landmarks
Process finished with exit code 0
openMVG_main_ComputeMatches -i $dataset_out/matches/sfm_data.json -o $dataset_out/matches -g a
INFO: [main_ComputeMatches.cpp:110] Unrecognized option -g
it occurs a info when i execute this line. 2.openMVG_main_SfM -i $dataset_out/matches/sfm_data.json -m $dataset_out/matches -o $dataset_out/reconstruction
ERROR: [main_SfM.cpp:409] Cannot load the match file.How should i do? I run it on windows11.