Closed ichsan2895 closed 2 weeks ago
Another experiment with different dataset:
the newest glomap (glomap-v1) is 2 times slower than previous glomap (816e06fcc8beaac13255cc996131f64e543b11a5) in desolation
dataset from ns-download-data desolation
(this is command is came from nerfstudio).
glomap 1.0.0 : 47 minutes 22 seconds glomap 816e06f : 23 minutes 10 seconds
Thank you. Could you please post the full output logs of both runs so we can better understand which stage got slower? I assume you made sure nothing else is running on your machine?
Truck
from TanksandTemples
glomap mapper
with Glomap 1.0.0
= 54 minutes 7 secondsLoading Images 251 / 251
Loading Image Pair 17275 / 17275
I0810 03:10:59.387260 56056 colmap_converter.cc:303] Pairs read done. 5380 / 17275 are invalid
I0810 03:10:59.389647 56056 global_mapper.cc:80] Loaded database
-------------------------------------
Running preprocessing ...
-------------------------------------
I0810 03:10:59.393271 56056 view_graph_manipulation.cc:246] Decompose relative pose for 11895 pairs
I0810 03:10:59.782438 56056 view_graph_manipulation.cc:295] Decompose relative pose done. 569 pairs are pure rotation
I0810 03:10:59.782481 56056 timer.cc:87] Elapsed time: 0.39280 [seconds]
-------------------------------------
Running view graph calibration ...
-------------------------------------
I0810 03:10:59.782578 56056 view_graph_calibration.cc:16] Start ViewGraphCalibrator
I0810 03:10:59.790105 56056 view_graph_calibration.cc:33] No cameras to optimize
-------------------------------------
Running relative pose estimation ...
-------------------------------------
I0810 03:10:59.792971 56056 image_undistorter.cc:17] Undistorting images..
I0810 03:11:00.100065 56056 image_undistorter.cc:37] Image undistortion done
I0810 03:11:00.101219 56056 relpose_estimation.cc:24] Estimating relative pose for 11895 pairs
Estimating relative pose: 100%
I0810 03:12:26.654115 56056 relpose_estimation.cc:69] Estimating relative pose done
I0810 03:12:27.197885 56056 relpose_filter.cc:46] Filtered 4254 relative poses with inlier number < 30
I0810 03:12:27.198285 56056 relpose_filter.cc:63] Filtered 1 relative poses with inlier ratio < 0.25
I0810 03:12:27.200683 56056 timer.cc:87] Elapsed time: 87.40773 [seconds]
-------------------------------------
Running rotation averaging ...
-------------------------------------
I0810 03:13:49.688534 56056 relpose_filter.cc:31] Filtered 335 relative rotation with angle > 10 degrees
I0810 03:15:15.589160 56056 relpose_filter.cc:31] Filtered 0 relative rotation with angle > 10 degrees
I0810 03:15:15.683785 56056 global_mapper.cc:95] 251 / 251 images are within the connected component.
I0810 03:15:15.683825 56056 timer.cc:87] Elapsed time: 168.48312 [seconds]
-------------------------------------
Running track establishment ...
-------------------------------------
Initializing pairs 17275 / 17275
Establishing pairs 17275 / 17275
Establishing tracks 251868 / 251868
I0810 03:15:21.908317 56056 track_establishment.cc:149] Discarded 1045 tracks due to inconsistency
I0810 03:15:22.945314 56056 global_mapper.cc:115] Before filtering: 251868, after filtering: 139272
I0810 03:15:22.945353 56056 timer.cc:87] Elapsed time: 7.26105 [seconds]
-------------------------------------
Running global positioning ...
-------------------------------------
I0810 03:15:23.067170 56056 image_undistorter.cc:17] Undistorting images..
I0810 03:15:23.185139 56056 image_undistorter.cc:37] Image undistortion done
I0810 03:15:23.185348 56056 global_positioning.cc:43] Setting up the global positioner problem
I0810 03:15:27.986876 56056 global_positioning.cc:68] Solving the global positioner problem
I0810 03:39:50.891803 56056 global_positioning.cc:77] Ceres Solver Report: Iterations: 65, Initial cost: 1.431143e+07, Final cost: 4.907264e+01, Termination: CONVERGENCE
I0810 03:39:50.982862 56056 track_filter.cc:86] Filtered 2799 / 139272 tracks by angle error
I0810 03:39:50.982911 56056 timer.cc:87] Elapsed time: 1467.91577 [seconds]
-------------------------------------
Running bundle adjustment ...
-------------------------------------
I0810 03:39:52.794458 56056 global_mapper.cc:167] Bundle adjustment start
I0810 03:46:20.189857 56056 bundle_adjustment.cc:48] Ceres Solver Report: Iterations: 28, Initial cost: 3.007972e+06, Final cost: 2.298918e+06, Termination: CONVERGENCE
I0810 03:46:20.189962 56056 global_mapper.cc:183] Global bundle adjustment iteration 1 / 3, stage 1 finished (position only)
I0810 03:46:20.189971 56056 timer.cc:87] Elapsed time: 387.39548 [seconds]
I0810 03:54:08.082413 56056 bundle_adjustment.cc:48] Ceres Solver Report: Iterations: 34, Initial cost: 2.298918e+06, Final cost: 5.011432e+05, Termination: CONVERGENCE
I0810 03:54:08.082536 56056 global_mapper.cc:195] Global bundle adjustment iteration 1 / 3, stage 2 finished
I0810 03:54:08.082546 56056 timer.cc:87] Elapsed time: 855.28805 [seconds]
I0810 03:54:08.082618 56056 image_undistorter.cc:17] Undistorting images..
I0810 03:54:08.197299 56056 image_undistorter.cc:37] Image undistortion done
I0810 03:54:08.197340 56056 global_mapper.cc:206] Filtering tracks by reprojection ...
I0810 03:54:08.345047 56056 track_filter.cc:48] Filtered 286 / 139272 tracks by reprojection error
I0810 03:56:37.725657 56056 bundle_adjustment.cc:48] Ceres Solver Report: Iterations: 12, Initial cost: 4.897004e+05, Final cost: 4.893111e+05, Termination: CONVERGENCE
I0810 03:56:37.725780 56056 global_mapper.cc:183] Global bundle adjustment iteration 2 / 3, stage 1 finished (position only)
I0810 03:56:37.725790 56056 timer.cc:87] Elapsed time: 1004.93130 [seconds]
I0810 03:57:02.539398 56056 bundle_adjustment.cc:48] Ceres Solver Report: Iterations: 2, Initial cost: 4.893111e+05, Final cost: 4.892969e+05, Termination: CONVERGENCE
I0810 03:57:02.539464 56056 global_mapper.cc:195] Global bundle adjustment iteration 2 / 3, stage 2 finished
I0810 03:57:02.539474 56056 timer.cc:87] Elapsed time: 1029.74498 [seconds]
I0810 03:57:02.539511 56056 image_undistorter.cc:17] Undistorting images..
I0810 03:57:02.586779 56056 image_undistorter.cc:37] Image undistortion done
I0810 03:57:02.586840 56056 global_mapper.cc:206] Filtering tracks by reprojection ...
I0810 03:57:02.799959 56056 track_filter.cc:48] Filtered 349 / 139272 tracks by reprojection error
I0810 04:00:27.912617 56056 bundle_adjustment.cc:48] Ceres Solver Report: Iterations: 18, Initial cost: 4.821012e+05, Final cost: 4.815972e+05, Termination: CONVERGENCE
I0810 04:00:27.912703 56056 global_mapper.cc:183] Global bundle adjustment iteration 3 / 3, stage 1 finished (position only)
I0810 04:00:27.912711 56056 timer.cc:87] Elapsed time: 1235.11822 [seconds]
I0810 04:00:45.966985 56056 bundle_adjustment.cc:48] Ceres Solver Report: Iterations: 1, Initial cost: 4.815972e+05, Final cost: 4.815972e+05, Termination: CONVERGENCE
I0810 04:00:45.967048 56056 global_mapper.cc:195] Global bundle adjustment iteration 3 / 3, stage 2 finished
I0810 04:00:45.967075 56056 image_undistorter.cc:17] Undistorting images..
I0810 04:00:46.081766 56056 image_undistorter.cc:37] Image undistortion done
I0810 04:00:46.081835 56056 global_mapper.cc:206] Filtering tracks by reprojection ...
I0810 04:00:46.217898 56056 track_filter.cc:48] Filtered 934 / 139272 tracks by reprojection error
I0810 04:00:47.405088 56056 image_undistorter.cc:17] Undistorting images..
I0810 04:00:47.491355 56056 image_undistorter.cc:37] Image undistortion done
I0810 04:00:47.491398 56056 global_mapper.cc:232] Filtering tracks by reprojection ...
I0810 04:00:47.635782 56056 track_filter.cc:48] Filtered 0 / 139272 tracks by reprojection error
I0810 04:00:47.679867 56056 track_filter.cc:123] Filtered 15812 / 139272 tracks by too small triangulation angle
I0810 04:00:47.679909 56056 timer.cc:87] Elapsed time: 1254.88542 [seconds]
-------------------------------------
Running retriangulation ...
-------------------------------------
I0810 04:00:47.680034 56056 database_cache.cc:65] Loading cameras...
I0810 04:00:47.680253 56056 database_cache.cc:75] 1 in 0.000s
I0810 04:00:47.680320 56056 database_cache.cc:83] Loading matches...
I0810 04:00:47.725147 56056 database_cache.cc:89] 11921 in 0.045s
I0810 04:00:47.725180 56056 database_cache.cc:105] Loading images...
I0810 04:00:47.786114 56056 database_cache.cc:155] 251 in 0.061s (connected 251)
I0810 04:00:47.786223 56056 database_cache.cc:166] Building correspondence graph...
I0810 04:00:48.433806 56056 database_cache.cc:195] in 0.648s (ignored 0)
Triangulating image 251 / 251
Global bundle adjustment iteration 5 / 5
I0810 04:01:40.169464 56056 timer.cc:87] Elapsed time: 52.48946 [seconds]
-------------------------------------
Running bundle adjustment ...
-------------------------------------
I0810 04:01:40.169611 56056 global_mapper.cc:263] Bundle adjustment start
I0810 04:04:33.206118 56056 bundle_adjustment.cc:48] Ceres Solver Report: Iterations: 10, Initial cost: 4.942431e+05, Final cost: 4.824064e+05, Termination: CONVERGENCE
I0810 04:04:33.206395 56056 image_undistorter.cc:17] Undistorting images..
I0810 04:04:33.314141 56056 image_undistorter.cc:37] Image undistortion done
I0810 04:04:33.314179 56056 global_mapper.cc:271] Filtering tracks by reprojection ...
I0810 04:04:33.613461 56056 track_filter.cc:48] Filtered 4 / 130674 tracks by reprojection error
I0810 04:04:56.225811 56056 bundle_adjustment.cc:48] Ceres Solver Report: Iterations: 1, Initial cost: 4.824064e+05, Final cost: 4.824064e+05, Termination: CONVERGENCE
I0810 04:04:56.225899 56056 timer.cc:87] Elapsed time: 248.54588 [seconds]
I0810 04:04:57.856669 56056 image_undistorter.cc:17] Undistorting images..
I0810 04:04:57.984745 56056 image_undistorter.cc:37] Image undistortion done
I0810 04:04:57.984783 56056 global_mapper.cc:286] Filtering tracks by reprojection ...
I0810 04:04:58.195732 56056 track_filter.cc:48] Filtered 0 / 130674 tracks by reprojection error
I0810 04:04:58.307062 56056 track_filter.cc:123] Filtered 4 / 130674 tracks by too small triangulation angle
I0810 04:04:58.307122 56056 global_mapper.cc:86] Reconstruction done in 3238.92 seconds
I0810 04:04:58.634246 56056 colmap_io.cc:27] Extracting colors ...
I0810 04:05:04.431320 56056 global_mapper.cc:91] Export to COLMAP reconstruction done
CPU times: user 25 s, sys: 7.93 s, total: 32.9 s
Wall time: 54min 7s
glomap mapper
with Glomap 816e06f
= 28 minutes 5 secondsLoading Images 251 / 251
Loading Image Pair 17275 / 17275
WARNING: Logging before InitGoogleLogging() is written to STDERR
I0809 16:53:34.273909 17207 colmap_converter.cc:301] Pairs read done. 5380 / 17275 are invalid
I0809 16:53:34.275255 17207 global_mapper.cc:75] Loaded database
-------------------------------------
Running preprocessing ...
-------------------------------------
I0809 16:53:34.278347 17207 view_graph_manipulation.cc:244] Decompose relative pose for 11895 pairs
I0809 16:53:34.389482 17207 view_graph_manipulation.cc:294] Decompose relative pose done. 569 pairs are pure rotation
I0809 16:53:34.389499 17207 timer.cc:87] Elapsed time: 0.11423 [seconds]
-------------------------------------
Running view graph calibration ...
-------------------------------------
I0809 16:53:34.389564 17207 view_graph_calibration.cc:14] Start ViewGraphCalibrator
I0809 16:53:34.395828 17207 view_graph_calibration.cc:30] No cameras to optimize
-------------------------------------
Running relative pose estimation ...
-------------------------------------
I0809 16:53:34.397984 17207 image_undistorter.cc:17] Undistorting images..
I0809 16:53:34.506913 17207 image_undistorter.cc:43] Image undistortion done
I0809 16:53:34.507787 17207 relpose_estimation.cc:17] Estimating relative pose for 11895 pairs
Estimating relative pose: 100%
I0809 16:55:16.036262 17207 relpose_estimation.cc:68] Estimating relative pose done
I0809 16:55:16.430272 17207 relpose_filter.cc:46] Filtered 4254 relative poses with inlier number < 30
I0809 16:55:16.430642 17207 relpose_filter.cc:63] Filtered 1 relative poses with inlier ratio < 0.25
I0809 16:55:16.432955 17207 timer.cc:87] Elapsed time: 102.03498 [seconds]
-------------------------------------
Running rotation averaging ...
-------------------------------------
I0809 16:56:44.017477 17207 relpose_filter.cc:31] Filtered 335 relative rotation with angle > 10 degrees
I0809 16:58:12.021565 17207 relpose_filter.cc:31] Filtered 0 relative rotation with angle > 10 degrees
I0809 16:58:12.026521 17207 global_mapper.cc:95] 251 / 251 images are within the connected component.
I0809 16:58:12.026532 17207 timer.cc:87] Elapsed time: 175.59356 [seconds]
-------------------------------------
Running track establishment ...
-------------------------------------
Initializing pairs 17275 / 17275
Establishing pairs 17275 / 17275
Establishing tracks 251868 / 251868I0809 16:58:18.927482 17207 track_establishment.cc:148] Discarded 1045 tracks due to inconsistency
I0809 16:58:19.993551 17207 global_mapper.cc:115] Before filtering: 251868, after filtering: 139272
I0809 16:58:19.993587 17207 timer.cc:87] Elapsed time: 7.96680 [seconds]
-------------------------------------
Running global positioning ...
-------------------------------------
I0809 16:58:20.294095 17207 image_undistorter.cc:17] Undistorting images..
I0809 16:58:20.583870 17207 image_undistorter.cc:43] Image undistortion done
I0809 16:58:20.583916 17207 global_positioning.cc:43] Setting up the global positioner problem
I0809 16:58:23.945712 17207 global_positioning.cc:68] Solving the global positioner problem
I0809 17:11:26.411020 17207 global_positioning.cc:77] Ceres Solver Report: Iterations: 64, Initial cost: 1.431143e+07, Final cost: 4.913989e+01, Termination: CONVERGENCE
I0809 17:11:26.506924 17207 track_filter.cc:86] Filtered 2799 / 139272 tracks by angle error
I0809 17:11:26.506949 17207 timer.cc:87] Elapsed time: 786.21288 [seconds]
-------------------------------------
Running bundle adjustment ...
-------------------------------------
I0809 17:11:33.696373 17207 global_mapper.cc:167] Bundle adjustment start
I0809 17:13:00.536206 17207 bundle_adjustment.cc:47] Ceres Solver Report: Iterations: 18, Initial cost: 3.007790e+06, Final cost: 2.299861e+06, Termination: CONVERGENCE
I0809 17:13:00.536253 17207 global_mapper.cc:183] Global bundle adjustment iteration 1 / 3, stage 1 finished (position only)
I0809 17:13:00.536258 17207 timer.cc:87] Elapsed time: 86.83986 [seconds]
I0809 17:14:26.444023 17207 bundle_adjustment.cc:47] Ceres Solver Report: Iterations: 13, Initial cost: 2.299861e+06, Final cost: 5.025031e+05, Termination: CONVERGENCE
I0809 17:14:26.444078 17207 global_mapper.cc:195] Global bundle adjustment iteration 1 / 3, stage 2 finished
I0809 17:14:26.444083 17207 timer.cc:87] Elapsed time: 172.74769 [seconds]
I0809 17:14:26.444108 17207 image_undistorter.cc:17] Undistorting images..
I0809 17:14:26.493177 17207 image_undistorter.cc:43] Image undistortion done
I0809 17:14:26.493203 17207 global_mapper.cc:206] Filtering tracks by reprojection ...
I0809 17:14:26.687494 17207 track_filter.cc:48] Filtered 241 / 139272 tracks by reprojection error
I0809 17:15:18.397917 17207 bundle_adjustment.cc:47] Ceres Solver Report: Iterations: 7, Initial cost: 4.907452e+05, Final cost: 4.902634e+05, Termination: CONVERGENCE
I0809 17:15:18.397965 17207 global_mapper.cc:183] Global bundle adjustment iteration 2 / 3, stage 1 finished (position only)
I0809 17:15:18.397979 17207 timer.cc:87] Elapsed time: 224.70158 [seconds]
I0809 17:15:34.628309 17207 bundle_adjustment.cc:47] Ceres Solver Report: Iterations: 2, Initial cost: 4.902634e+05, Final cost: 4.902475e+05, Termination: CONVERGENCE
I0809 17:15:34.628361 17207 global_mapper.cc:195] Global bundle adjustment iteration 2 / 3, stage 2 finished
I0809 17:15:34.628371 17207 timer.cc:87] Elapsed time: 240.93197 [seconds]
I0809 17:15:34.628397 17207 image_undistorter.cc:17] Undistorting images..
I0809 17:15:34.785624 17207 image_undistorter.cc:43] Image undistortion done
I0809 17:15:34.785770 17207 global_mapper.cc:206] Filtering tracks by reprojection ...
I0809 17:15:34.909463 17207 track_filter.cc:48] Filtered 341 / 139272 tracks by reprojection error
I0809 17:15:59.467975 17207 bundle_adjustment.cc:47] Ceres Solver Report: Iterations: 7, Initial cost: 4.831195e+05, Final cost: 4.826833e+05, Termination: CONVERGENCE
I0809 17:15:59.468027 17207 global_mapper.cc:183] Global bundle adjustment iteration 3 / 3, stage 1 finished (position only)
I0809 17:15:59.468031 17207 timer.cc:87] Elapsed time: 265.77164 [seconds]
I0809 17:16:56.410465 17207 bundle_adjustment.cc:47] Ceres Solver Report: Iterations: 2, Initial cost: 4.826833e+05, Final cost: 4.826782e+05, Termination: CONVERGENCE
I0809 17:16:56.410512 17207 global_mapper.cc:195] Global bundle adjustment iteration 3 / 3, stage 2 finished
I0809 17:16:56.410547 17207 image_undistorter.cc:17] Undistorting images..
I0809 17:16:56.496332 17207 image_undistorter.cc:43] Image undistortion done
I0809 17:16:56.496378 17207 global_mapper.cc:206] Filtering tracks by reprojection ...
I0809 17:16:56.907650 17207 track_filter.cc:48] Filtered 951 / 139272 tracks by reprojection error
I0809 17:16:57.667418 17207 image_undistorter.cc:17] Undistorting images..
I0809 17:16:57.680253 17207 image_undistorter.cc:43] Image undistortion done
I0809 17:16:57.680272 17207 global_mapper.cc:232] Filtering tracks by reprojection ...
I0809 17:16:57.835798 17207 track_filter.cc:48] Filtered 0 / 139272 tracks by reprojection error
I0809 17:16:57.884030 17207 track_filter.cc:123] Filtered 15816 / 139272 tracks by too small triangulation angle
I0809 17:16:57.884055 17207 timer.cc:87] Elapsed time: 324.18767 [seconds]
-------------------------------------
Running retriangulation ...
-------------------------------------
I0809 17:16:57.884119 17207 database_cache.cc:65] Loading cameras...
I0809 17:16:57.884308 17207 database_cache.cc:75] 1 in 0.000s
I0809 17:16:57.884325 17207 database_cache.cc:83] Loading matches...
I0809 17:16:57.925050 17207 database_cache.cc:89] 11921 in 0.041s
I0809 17:16:57.925096 17207 database_cache.cc:105] Loading images...
I0809 17:16:57.989940 17207 database_cache.cc:155] 251 in 0.065s (connected 251)
I0809 17:16:57.990082 17207 database_cache.cc:166] Building correspondence graph...
I0809 17:16:58.740631 17207 database_cache.cc:195] in 0.751s (ignored 0)
Triangulating image 251 / 251
Global bundle adjustment iteration 5 / 5
I0809 17:18:25.276007 17207 timer.cc:87] Elapsed time: 87.39192 [seconds]
-------------------------------------
Running bundle adjustment ...
-------------------------------------
I0809 17:18:25.276088 17207 global_mapper.cc:263] Bundle adjustment start
I0809 17:20:34.534809 17207 bundle_adjustment.cc:47] Ceres Solver Report: Iterations: 10, Initial cost: 4.942312e+05, Final cost: 4.824307e+05, Termination: CONVERGENCE
I0809 17:20:34.534955 17207 image_undistorter.cc:17] Undistorting images..
I0809 17:20:34.691501 17207 image_undistorter.cc:43] Image undistortion done
I0809 17:20:34.691529 17207 global_mapper.cc:271] Filtering tracks by reprojection ...
I0809 17:20:35.299844 17207 track_filter.cc:48] Filtered 4 / 130683 tracks by reprojection error
I0809 17:21:09.321916 17207 bundle_adjustment.cc:47] Ceres Solver Report: Iterations: 1, Initial cost: 4.824307e+05, Final cost: 4.824307e+05, Termination: CONVERGENCE
I0809 17:21:09.321964 17207 timer.cc:87] Elapsed time: 251.43786 [seconds]
I0809 17:21:10.639187 17207 image_undistorter.cc:17] Undistorting images..
I0809 17:21:10.691316 17207 image_undistorter.cc:43] Image undistortion done
I0809 17:21:10.691350 17207 global_mapper.cc:286] Filtering tracks by reprojection ...
I0809 17:21:10.898177 17207 track_filter.cc:48] Filtered 0 / 130683 tracks by reprojection error
I0809 17:21:10.971972 17207 track_filter.cc:123] Filtered 4 / 130683 tracks by too small triangulation angle
I0809 17:21:10.972008 17207 global_mapper.cc:81] Reconstruction done in 1656.7 seconds
I0809 17:21:11.132624 17207 colmap_io.cc:27] Extracting colors ...
I0809 17:21:37.883306 17207 global_mapper.cc:86] Export to COLMAP reconstruction done
CPU times: user 13.3 s, sys: 4.43 s, total: 17.7 s
Wall time: 28min 5s
desolation
from ns-process-data
in Nerfstudioglomap mapper
with Glomap 1.0.0
= 47 minutes 22 secondsLoading Images 207 / 207
Loading Image Pair 8316 / 8316
I0810 04:39:36.185542 160925 colmap_converter.cc:303] Pairs read done. 1798 / 8316 are invalid
I0810 04:39:36.186715 160925 global_mapper.cc:80] Loaded database
-------------------------------------
Running preprocessing ...
-------------------------------------
I0810 04:39:36.187765 160925 view_graph_manipulation.cc:246] Decompose relative pose for 0 pairs
I0810 04:39:36.385485 160925 view_graph_manipulation.cc:295] Decompose relative pose done. 0 pairs are pure rotation
I0810 04:39:36.385535 160925 timer.cc:87] Elapsed time: 0.19881 [seconds]
-------------------------------------
Running view graph calibration ...
-------------------------------------
I0810 04:39:36.386910 160925 view_graph_calibration.cc:16] Start ViewGraphCalibrator
I0810 04:39:37.191917 160925 view_graph_calibration.cc:155] 0 cameras are rejected in view graph calibration
I0810 04:39:37.194278 160925 view_graph_calibration.cc:189] invalid / total number of two view geometry: 457 / 7250
-------------------------------------
Running relative pose estimation ...
-------------------------------------
I0810 04:39:37.286543 160925 image_undistorter.cc:17] Undistorting images..
I0810 04:39:37.987447 160925 image_undistorter.cc:37] Image undistortion done
I0810 04:39:37.988440 160925 relpose_estimation.cc:24] Estimating relative pose for 6061 pairs
Estimating relative pose: 100%
I0810 04:39:57.028359 160925 relpose_estimation.cc:69] Estimating relative pose done
I0810 04:39:57.133253 160925 relpose_filter.cc:46] Filtered 1039 relative poses with inlier number < 30
I0810 04:39:57.133450 160925 relpose_filter.cc:63] Filtered 0 relative poses with inlier ratio < 0.25
I0810 04:39:57.134884 160925 timer.cc:87] Elapsed time: 19.84836 [seconds]
-------------------------------------
Running rotation averaging ...
-------------------------------------
I0810 04:41:18.429863 160925 relpose_filter.cc:31] Filtered 104 relative rotation with angle > 10 degrees
I0810 04:42:41.703155 160925 relpose_filter.cc:31] Filtered 0 relative rotation with angle > 10 degrees
I0810 04:42:41.707059 160925 global_mapper.cc:95] 207 / 207 images are within the connected component.
I0810 04:42:41.707078 160925 timer.cc:87] Elapsed time: 164.57217 [seconds]
-------------------------------------
Running track establishment ...
-------------------------------------
Initializing pairs 8316 / 8316
Establishing pairs 8316 / 8316
Establishing tracks 208454 / 208454
I0810 04:42:43.194803 160925 track_establishment.cc:149] Discarded 309 tracks due to inconsistency
I0810 04:42:43.737779 160925 global_mapper.cc:115] Before filtering: 208454, after filtering: 105137
I0810 04:42:43.737825 160925 timer.cc:87] Elapsed time: 2.03050 [seconds]
-------------------------------------
Running global positioning ...
-------------------------------------
I0810 04:42:43.802008 160925 image_undistorter.cc:17] Undistorting images..
I0810 04:42:43.885285 160925 image_undistorter.cc:37] Image undistortion done
I0810 04:42:43.885341 160925 global_positioning.cc:43] Setting up the global positioner problem
I0810 04:42:44.987314 160925 global_positioning.cc:68] Solving the global positioner problem
I0810 04:54:12.851419 160925 global_positioning.cc:77] Ceres Solver Report: Iterations: 79, Initial cost: 4.205278e+06, Final cost: 2.641509e+01, Termination: CONVERGENCE
I0810 04:54:12.947635 160925 track_filter.cc:86] Filtered 3280 / 105137 tracks by angle error
I0810 04:54:12.947683 160925 timer.cc:87] Elapsed time: 689.14570 [seconds]
-------------------------------------
Running bundle adjustment ...
-------------------------------------
I0810 04:54:15.224331 160925 global_mapper.cc:167] Bundle adjustment start
I0810 05:03:15.834949 160925 bundle_adjustment.cc:48] Ceres Solver Report: Iterations: 73, Initial cost: 4.119951e+06, Final cost: 2.308401e+06, Termination: CONVERGENCE
I0810 05:03:15.835081 160925 global_mapper.cc:183] Global bundle adjustment iteration 1 / 3, stage 1 finished (position only)
I0810 05:03:15.835112 160925 timer.cc:87] Elapsed time: 540.61074 [seconds]
I0810 05:15:02.728114 160925 bundle_adjustment.cc:48] Ceres Solver Report: Iterations: 76, Initial cost: 2.308401e+06, Final cost: 4.875129e+05, Termination: CONVERGENCE
I0810 05:15:02.728201 160925 global_mapper.cc:195] Global bundle adjustment iteration 1 / 3, stage 2 finished
I0810 05:15:02.728209 160925 timer.cc:87] Elapsed time: 1247.50384 [seconds]
I0810 05:15:02.728245 160925 image_undistorter.cc:17] Undistorting images..
I0810 05:15:02.788170 160925 image_undistorter.cc:37] Image undistortion done
I0810 05:15:02.788192 160925 global_mapper.cc:206] Filtering tracks by reprojection ...
I0810 05:15:02.936795 160925 track_filter.cc:48] Filtered 1112 / 105137 tracks by reprojection error
I0810 05:17:39.737493 160925 bundle_adjustment.cc:48] Ceres Solver Report: Iterations: 23, Initial cost: 4.332975e+05, Final cost: 4.326059e+05, Termination: CONVERGENCE
I0810 05:17:39.737627 160925 global_mapper.cc:183] Global bundle adjustment iteration 2 / 3, stage 1 finished (position only)
I0810 05:17:39.737641 160925 timer.cc:87] Elapsed time: 1404.51327 [seconds]
I0810 05:21:57.493745 160925 bundle_adjustment.cc:48] Ceres Solver Report: Iterations: 39, Initial cost: 4.326059e+05, Final cost: 4.317574e+05, Termination: CONVERGENCE
I0810 05:21:57.493844 160925 global_mapper.cc:195] Global bundle adjustment iteration 2 / 3, stage 2 finished
I0810 05:21:57.493852 160925 timer.cc:87] Elapsed time: 1662.26948 [seconds]
I0810 05:21:57.493891 160925 image_undistorter.cc:17] Undistorting images..
I0810 05:21:57.587899 160925 image_undistorter.cc:37] Image undistortion done
I0810 05:21:57.587983 160925 global_mapper.cc:206] Filtering tracks by reprojection ...
I0810 05:21:57.732326 160925 track_filter.cc:48] Filtered 480 / 105137 tracks by reprojection error
I0810 05:24:03.185732 160925 bundle_adjustment.cc:48] Ceres Solver Report: Iterations: 16, Initial cost: 4.295608e+05, Final cost: 4.292205e+05, Termination: CONVERGENCE
I0810 05:24:03.185863 160925 global_mapper.cc:183] Global bundle adjustment iteration 3 / 3, stage 1 finished (position only)
I0810 05:24:03.185870 160925 timer.cc:87] Elapsed time: 1787.96150 [seconds]
I0810 05:25:03.345834 160925 bundle_adjustment.cc:48] Ceres Solver Report: Iterations: 6, Initial cost: 4.292205e+05, Final cost: 4.291865e+05, Termination: CONVERGENCE
I0810 05:25:03.345978 160925 global_mapper.cc:195] Global bundle adjustment iteration 3 / 3, stage 2 finished
I0810 05:25:03.346030 160925 image_undistorter.cc:17] Undistorting images..
I0810 05:25:03.388139 160925 image_undistorter.cc:37] Image undistortion done
I0810 05:25:03.388160 160925 global_mapper.cc:206] Filtering tracks by reprojection ...
I0810 05:25:03.564947 160925 track_filter.cc:48] Filtered 958 / 105137 tracks by reprojection error
I0810 05:25:04.396481 160925 image_undistorter.cc:17] Undistorting images..
I0810 05:25:04.409750 160925 image_undistorter.cc:37] Image undistortion done
I0810 05:25:04.409762 160925 global_mapper.cc:232] Filtering tracks by reprojection ...
I0810 05:25:04.562089 160925 track_filter.cc:48] Filtered 0 / 105137 tracks by reprojection error
I0810 05:25:04.590642 160925 track_filter.cc:123] Filtered 29352 / 105137 tracks by too small triangulation angle
I0810 05:25:04.590660 160925 timer.cc:87] Elapsed time: 1849.36629 [seconds]
-------------------------------------
Running retriangulation ...
-------------------------------------
I0810 05:25:04.590724 160925 database_cache.cc:65] Loading cameras...
I0810 05:25:04.590806 160925 database_cache.cc:75] 1 in 0.000s
I0810 05:25:04.590819 160925 database_cache.cc:83] Loading matches...
I0810 05:25:04.610821 160925 database_cache.cc:89] 6521 in 0.020s
I0810 05:25:04.610842 160925 database_cache.cc:105] Loading images...
I0810 05:25:04.652190 160925 database_cache.cc:155] 207 in 0.041s (connected 207)
I0810 05:25:04.652277 160925 database_cache.cc:166] Building correspondence graph...
I0810 05:25:04.986716 160925 database_cache.cc:195] in 0.334s (ignored 0)
Triangulating image 207 / 207
Global bundle adjustment iteration 5 / 5
I0810 05:25:53.704849 160925 timer.cc:87] Elapsed time: 49.11414 [seconds]
-------------------------------------
Running bundle adjustment ...
-------------------------------------
I0810 05:25:53.704974 160925 global_mapper.cc:263] Bundle adjustment start
I0810 05:26:37.748193 160925 bundle_adjustment.cc:48] Ceres Solver Report: Iterations: 9, Initial cost: 2.102714e+05, Final cost: 1.944808e+05, Termination: CONVERGENCE
I0810 05:26:37.748373 160925 image_undistorter.cc:17] Undistorting images..
I0810 05:26:37.801471 160925 image_undistorter.cc:37] Image undistortion done
I0810 05:26:37.801515 160925 global_mapper.cc:271] Filtering tracks by reprojection ...
I0810 05:26:37.946785 160925 track_filter.cc:48] Filtered 60 / 83212 tracks by reprojection error
I0810 05:26:48.326716 160925 bundle_adjustment.cc:48] Ceres Solver Report: Iterations: 1, Initial cost: 1.944808e+05, Final cost: 1.944808e+05, Termination: CONVERGENCE
I0810 05:26:48.326777 160925 timer.cc:87] Elapsed time: 103.73606 [seconds]
I0810 05:26:49.165402 160925 image_undistorter.cc:17] Undistorting images..
I0810 05:26:49.205266 160925 image_undistorter.cc:37] Image undistortion done
I0810 05:26:49.205302 160925 global_mapper.cc:286] Filtering tracks by reprojection ...
I0810 05:26:49.362457 160925 track_filter.cc:48] Filtered 0 / 83212 tracks by reprojection error
I0810 05:26:49.402202 160925 track_filter.cc:123] Filtered 60 / 83212 tracks by too small triangulation angle
I0810 05:26:49.402230 160925 global_mapper.cc:86] Reconstruction done in 2833.22 seconds
I0810 05:26:49.566906 160925 colmap_io.cc:27] Extracting colors ...
I0810 05:26:56.866111 160925 global_mapper.cc:91] Export to COLMAP reconstruction done
CPU times: user 22.3 s, sys: 6.73 s, total: 29 s
Wall time: 47min 22s
glomap mapper
with Glomap 816e06f
= 23 minutes 10 secondsLoading Images 207 / 207
Loading Image Pair 8316 / 8316
WARNING: Logging before InitGoogleLogging() is written to STDERR
I0810 05:34:23.372784 198711 colmap_converter.cc:301] Pairs read done. 1798 / 8316 are invalid
I0810 05:34:23.373488 198711 global_mapper.cc:75] Loaded database
-------------------------------------
Running preprocessing ...
-------------------------------------
I0810 05:34:23.374469 198711 view_graph_manipulation.cc:244] Decompose relative pose for 0 pairs
I0810 05:34:23.401512 198711 view_graph_manipulation.cc:294] Decompose relative pose done. 0 pairs are pure rotation
I0810 05:34:23.401556 198711 timer.cc:87] Elapsed time: 0.02805 [seconds]
-------------------------------------
Running view graph calibration ...
-------------------------------------
I0810 05:34:23.401639 198711 view_graph_calibration.cc:14] Start ViewGraphCalibrator
I0810 05:34:23.521937 198711 view_graph_calibration.cc:155] 0 cameras are rejected in view graph calibration
I0810 05:34:23.522614 198711 view_graph_calibration.cc:190] invalid / total number of two view geometry: 457 / 7250
-------------------------------------
Running relative pose estimation ...
-------------------------------------
I0810 05:34:23.524588 198711 image_undistorter.cc:17] Undistorting images..
I0810 05:34:23.612573 198711 image_undistorter.cc:43] Image undistortion done
I0810 05:34:23.612978 198711 relpose_estimation.cc:17] Estimating relative pose for 6061 pairs
Estimating relative pose: 100%
I0810 05:34:36.622067 198711 relpose_estimation.cc:68] Estimating relative pose done
I0810 05:34:36.719262 198711 relpose_filter.cc:46] Filtered 1039 relative poses with inlier number < 30
I0810 05:34:36.719483 198711 relpose_filter.cc:63] Filtered 0 relative poses with inlier ratio < 0.25
I0810 05:34:36.721145 198711 timer.cc:87] Elapsed time: 13.19657 [seconds]
-------------------------------------
Running rotation averaging ...
-------------------------------------
I0810 05:35:58.816598 198711 relpose_filter.cc:31] Filtered 104 relative rotation with angle > 10 degrees
I0810 05:37:22.921464 198711 relpose_filter.cc:31] Filtered 0 relative rotation with angle > 10 degrees
I0810 05:37:22.924903 198711 global_mapper.cc:95] 207 / 207 images are within the connected component.
I0810 05:37:22.924917 198711 timer.cc:87] Elapsed time: 166.20375 [seconds]
-------------------------------------
Running track establishment ...
-------------------------------------
Initializing pairs 8316 / 8316
Establishing pairs 8316 / 8316
Establishing tracks 208454 / 208454I0810 05:37:24.115367 198711 track_establishment.cc:148] Discarded 309 tracks due to inconsistency
I0810 05:37:24.441570 198711 global_mapper.cc:115] Before filtering: 208454, after filtering: 105137
I0810 05:37:24.441604 198711 timer.cc:87] Elapsed time: 1.51645 [seconds]
-------------------------------------
Running global positioning ...
-------------------------------------
I0810 05:37:24.502079 198711 image_undistorter.cc:17] Undistorting images..
I0810 05:37:24.583094 198711 image_undistorter.cc:43] Image undistortion done
I0810 05:37:24.585600 198711 global_positioning.cc:43] Setting up the global positioner problem
I0810 05:37:25.694860 198711 global_positioning.cc:68] Solving the global positioner problem
I0810 05:43:50.667496 198711 global_positioning.cc:77] Ceres Solver Report: Iterations: 81, Initial cost: 4.205278e+06, Final cost: 2.632315e+01, Termination: CONVERGENCE
I0810 05:43:50.728596 198711 track_filter.cc:86] Filtered 3258 / 105137 tracks by angle error
I0810 05:43:50.728632 198711 timer.cc:87] Elapsed time: 386.22659 [seconds]
-------------------------------------
Running bundle adjustment ...
-------------------------------------
I0810 05:43:51.654896 198711 global_mapper.cc:167] Bundle adjustment start
I0810 05:47:28.921141 198711 bundle_adjustment.cc:47] Ceres Solver Report: Iterations: 87, Initial cost: 4.100806e+06, Final cost: 2.300256e+06, Termination: CONVERGENCE
I0810 05:47:28.921195 198711 global_mapper.cc:183] Global bundle adjustment iteration 1 / 3, stage 1 finished (position only)
I0810 05:47:28.921200 198711 timer.cc:87] Elapsed time: 217.26629 [seconds]
I0810 05:50:41.284178 198711 bundle_adjustment.cc:47] Ceres Solver Report: Iterations: 85, Initial cost: 2.300256e+06, Final cost: 4.824724e+05, Termination: CONVERGENCE
I0810 05:50:41.284233 198711 global_mapper.cc:195] Global bundle adjustment iteration 1 / 3, stage 2 finished
I0810 05:50:41.284240 198711 timer.cc:87] Elapsed time: 409.62933 [seconds]
I0810 05:50:41.284263 198711 image_undistorter.cc:17] Undistorting images..
I0810 05:50:41.401324 198711 image_undistorter.cc:43] Image undistortion done
I0810 05:50:41.401392 198711 global_mapper.cc:206] Filtering tracks by reprojection ...
I0810 05:50:41.509699 198711 track_filter.cc:48] Filtered 998 / 105137 tracks by reprojection error
I0810 05:52:02.390492 198711 bundle_adjustment.cc:47] Ceres Solver Report: Iterations: 20, Initial cost: 4.402218e+05, Final cost: 4.337661e+05, Termination: CONVERGENCE
I0810 05:52:02.390661 198711 global_mapper.cc:183] Global bundle adjustment iteration 2 / 3, stage 1 finished (position only)
I0810 05:52:02.390676 198711 timer.cc:87] Elapsed time: 490.73577 [seconds]
I0810 05:54:16.220324 198711 bundle_adjustment.cc:47] Ceres Solver Report: Iterations: 65, Initial cost: 4.337661e+05, Final cost: 4.325616e+05, Termination: CONVERGENCE
I0810 05:54:16.220414 198711 global_mapper.cc:195] Global bundle adjustment iteration 2 / 3, stage 2 finished
I0810 05:54:16.220422 198711 timer.cc:87] Elapsed time: 624.56551 [seconds]
I0810 05:54:16.220445 198711 image_undistorter.cc:17] Undistorting images..
I0810 05:54:16.283643 198711 image_undistorter.cc:43] Image undistortion done
I0810 05:54:16.283797 198711 global_mapper.cc:206] Filtering tracks by reprojection ...
I0810 05:54:16.349584 198711 track_filter.cc:48] Filtered 477 / 105137 tracks by reprojection error
I0810 05:55:18.482970 198711 bundle_adjustment.cc:47] Ceres Solver Report: Iterations: 63, Initial cost: 4.301869e+05, Final cost: 4.290840e+05, Termination: CONVERGENCE
I0810 05:55:18.483023 198711 global_mapper.cc:183] Global bundle adjustment iteration 3 / 3, stage 1 finished (position only)
I0810 05:55:18.483029 198711 timer.cc:87] Elapsed time: 686.82812 [seconds]
I0810 05:56:23.069931 198711 bundle_adjustment.cc:47] Ceres Solver Report: Iterations: 61, Initial cost: 4.290840e+05, Final cost: 4.279875e+05, Termination: CONVERGENCE
I0810 05:56:23.069981 198711 global_mapper.cc:195] Global bundle adjustment iteration 3 / 3, stage 2 finished
I0810 05:56:23.070004 198711 image_undistorter.cc:17] Undistorting images..
I0810 05:56:23.106969 198711 image_undistorter.cc:43] Image undistortion done
I0810 05:56:23.106999 198711 global_mapper.cc:206] Filtering tracks by reprojection ...
I0810 05:56:23.232625 198711 track_filter.cc:48] Filtered 1000 / 105137 tracks by reprojection error
I0810 05:56:24.298941 198711 image_undistorter.cc:17] Undistorting images..
I0810 05:56:24.383677 198711 image_undistorter.cc:43] Image undistortion done
I0810 05:56:24.383692 198711 global_mapper.cc:232] Filtering tracks by reprojection ...
I0810 05:56:24.445924 198711 track_filter.cc:48] Filtered 0 / 105137 tracks by reprojection error
I0810 05:56:24.473917 198711 track_filter.cc:123] Filtered 29297 / 105137 tracks by too small triangulation angle
I0810 05:56:24.473935 198711 timer.cc:87] Elapsed time: 752.81903 [seconds]
-------------------------------------
Running retriangulation ...
-------------------------------------
I0810 05:56:24.474036 198711 database_cache.cc:65] Loading cameras...
I0810 05:56:24.474146 198711 database_cache.cc:75] 1 in 0.000s
I0810 05:56:24.474160 198711 database_cache.cc:83] Loading matches...
I0810 05:56:24.501024 198711 database_cache.cc:89] 6521 in 0.027s
I0810 05:56:24.501057 198711 database_cache.cc:105] Loading images...
I0810 05:56:24.555958 198711 database_cache.cc:155] 207 in 0.055s (connected 207)
I0810 05:56:24.556057 198711 database_cache.cc:166] Building correspondence graph...
I0810 05:56:24.805909 198711 database_cache.cc:195] in 0.250s (ignored 0)
Triangulating image 207 / 207
Global bundle adjustment iteration 5 / 5
I0810 05:57:13.132736 198711 timer.cc:87] Elapsed time: 48.65873 [seconds]
-------------------------------------
Running bundle adjustment ...
-------------------------------------
I0810 05:57:13.132828 198711 global_mapper.cc:263] Bundle adjustment start
I0810 05:57:21.927593 198711 bundle_adjustment.cc:47] Ceres Solver Report: Iterations: 9, Initial cost: 2.102342e+05, Final cost: 1.945270e+05, Termination: CONVERGENCE
I0810 05:57:21.927726 198711 image_undistorter.cc:17] Undistorting images..
I0810 05:57:21.986218 198711 image_undistorter.cc:43] Image undistortion done
I0810 05:57:21.986249 198711 global_mapper.cc:271] Filtering tracks by reprojection ...
I0810 05:57:22.047595 198711 track_filter.cc:48] Filtered 57 / 83213 tracks by reprojection error
I0810 05:57:24.902325 198711 bundle_adjustment.cc:47] Ceres Solver Report: Iterations: 1, Initial cost: 1.945270e+05, Final cost: 1.945270e+05, Termination: CONVERGENCE
I0810 05:57:24.902382 198711 timer.cc:87] Elapsed time: 60.42836 [seconds]
I0810 05:57:25.760757 198711 image_undistorter.cc:17] Undistorting images..
I0810 05:57:25.805934 198711 image_undistorter.cc:43] Image undistortion done
I0810 05:57:25.805966 198711 global_mapper.cc:286] Filtering tracks by reprojection ...
I0810 05:57:25.950541 198711 track_filter.cc:48] Filtered 0 / 83213 tracks by reprojection error
I0810 05:57:25.979750 198711 track_filter.cc:123] Filtered 57 / 83213 tracks by too small triangulation angle
I0810 05:57:25.979771 198711 global_mapper.cc:81] Reconstruction done in 1382.61 seconds
I0810 05:57:26.061383 198711 colmap_io.cc:27] Extracting colors ...
I0810 05:57:33.052809 198711 global_mapper.cc:86] Export to COLMAP reconstruction done
CPU times: user 11.3 s, sys: 3.8 s, total: 15.1 s
Wall time: 23min 10s
Thank you. It appears that all operations related to Ceres became slower.
There is a chance that this change here causes the difference on your end: https://github.com/colmap/glomap/commit/eb8e5884bd5dd45d87796ef3948e2c51d81b8e13#diff-4bd49c871f91795f9edfeb71aaa5291ccede08041c991d6dd1b3ecdc6c016febR25
Can you try reverting to the fixed 16 threads and report back? Can you also share some details about your machine (CPU, RAM, OS, ...).
Thank you. It appears that all operations related to Ceres became slower.
There is a chance that this change here causes the difference on your end: eb8e588#diff-4bd49c871f91795f9edfeb71aaa5291ccede08041c991d6dd1b3ecdc6c016febR25
Can you try reverting to the fixed 16 threads and report back? Can you also share some details about your machine (CPU, RAM, OS, ...).
Sorry for late reply. I run colmap & glomap with 2 different machine. The machine that I feel it slower is Runpod cloud environment. Maybe This changes https://github.com/colmap/glomap/commit/eb8e5884bd5dd45d87796ef3948e2c51d81b8e13#diff-4bd49c871f91795f9edfeb71aaa5291ccede08041c991d6dd1b3ecdc6c016febR25 seems affect that since cloud provider limit the number of CPU cores in that virtualized machine.
On my local computer, the speed remains same, fortunatelly.
I test 3 different version of mapper :
colmap mapper
with Colmap 3.11.0-dev ac81c2fglomap mapper
with Glomap 816e06fglomap mapper
with Glomap 1.0.0In term of speed, here is the result: [1] = 37 minutes 20 seconds [2] = 28 minutes 5 seconds [3] = 54 minutes 7 seconds
I tested it on a dataset called
Truck
fromTanksandTemples
. It contains 251 images with 1920x1080 resolution. I use colmap for processingcolmap feature_exctractor
andcolmap exhausive_matcher
. Then I getdatabase.db
from that process.Additional information:
What should I do, so I can get faster speed with latest glomap?