26 unsigned long capacity = 2 * getParametersCount() + 1;
32 argv =
new char*[capacity];
37 for (
const auto& option : options_bool_) {
38 SetValue(
"--" + option.first, argc, argv);
40 bool bool_flag = *option.second;
48 for (
const auto& option : options_int_) {
49 SetValue(
"--" + option.first, argc, argv);
55 for (
const auto& option : options_double_) {
56 SetValue(
"--" + option.first, argc, argv);
62 for (
const auto& option : options_string_) {
63 SetValue(
"--" + option.first, argc, argv);
65 SetValue(*option.second, argc, argv);
69 if (argc == 0 || !argv)
return false;
76 options_bool_.clear();
78 options_double_.clear();
79 options_string_.clear();
179 &sequential_matching_options.
overlap);
189 "SequentialMatching.loop_detection_num_nearest_neighbors",
194 "SequentialMatching.loop_detection_num_images_after_verification",
195 &sequential_matching_options
196 .loop_detection_num_images_after_verification);
198 "SequentialMatching.loop_detection_max_num_features",
232 &spatial_matching_options.
ignore_z);
286 registerOption(
"Mapper.ba_min_num_residuals_for_cpu_multi_threading",
287 &incremental_mapper_options
288 .ba_min_num_residuals_for_cpu_multi_threading);
297 &incremental_mapper_options.ba_global_use_pba);
299 &incremental_mapper_options.ba_global_pba_gpu_index);
344 "Mapper.abs_pose_min_inlier_ratio",
359 "Mapper.tri_create_max_angle_error",
362 "Mapper.tri_continue_max_angle_error",
365 "Mapper.tri_merge_max_reproj_error",
374 "Mapper.tri_re_max_angle_error",
383 "Mapper.tri_ignore_two_view_tracks",
399 "BundleAdjustment.max_num_iterations",
403 .max_linear_solver_iterations);
405 "BundleAdjustment.function_tolerance",
409 "BundleAdjustment.gradient_tolerance",
412 "BundleAdjustment.parameter_tolerance",
468 registerOption(
"PatchMatchStereo.filter_geom_consistency_max_cost",
void addDelaunayMeshingOptions(const colmap::mvs::DelaunayMeshingOptions &delaunay_meshing_options)
static void ReleaseOptions(int argc, char **argv)
void addBundleAdjustmentOptions(const colmap::BundleAdjustmentOptions &bundle_adjustment_options)
void addExtractionOptions(const colmap::ImageReaderOptions &image_reader_options, const colmap::SiftExtractionOptions &sift_extraction_options)
void addStereoFusionOptions(const colmap::mvs::StereoFusionOptions &stereo_fusion_options)
void addSequentialMatchingOptions(const colmap::SiftMatchingOptions &sift_matching_options, const colmap::SequentialMatchingOptions &sequential_matching_options)
void addMapperOptions(const colmap::IncrementalMapperOptions &incremental_mapper_options)
void addImagePairsMatchingOptions(const colmap::SiftMatchingOptions &sift_matching_options, const colmap::ImagePairsMatchingOptions &image_pairs_matching_options)
void addExhaustiveMatchingOptions(const colmap::SiftMatchingOptions &sift_matching_options, const colmap::ExhaustiveMatchingOptions &exhaustive_matching_options)
void addPoissonMeshingOptions(const colmap::mvs::PoissonMeshingOptions &poisson_meshing_options)
void registerOption(const std::string &name, const T *option)
void addVocabTreeMatchingOptions(const colmap::SiftMatchingOptions &sift_matching_options, const colmap::VocabTreeMatchingOptions &vocab_tree_matching_options)
void addSpatialMatchingOptions(const colmap::SiftMatchingOptions &sift_matching_options, const colmap::SpatialMatchingOptions &spatial_matching_options)
void addTransitiveMatchingOptions(const colmap::SiftMatchingOptions &sift_matching_options, const colmap::TransitiveMatchingOptions &transitive_matching_options)
static void SetValue(const std::string &value, int argc_, char **argv_)
void addMatchingOptions(const colmap::SiftMatchingOptions &sift_matching_options)
void addPatchMatchStereoOptions(const colmap::mvs::PatchMatchOptions &patch_match_options)
Generic file read and write utility for python interface.
std::string to_string(const T &n)
bool refine_principal_point
ceres::Solver::Options solver_options
std::string camera_params
bool single_camera_per_folder
double default_focal_length_factor
std::string camera_mask_path
bool single_camera_per_image
bool ba_refine_focal_length
IncrementalTriangulator::Options triangulation
double ba_global_function_tolerance
int ba_global_max_num_iterations
int ba_local_max_refinements
IncrementalMapper::Options mapper
double ba_global_max_refinement_change
std::string snapshot_path
int ba_global_points_freq
bool ba_refine_principal_point
double max_focal_length_ratio
double ba_local_max_refinement_change
int ba_local_max_num_iterations
int ba_global_images_freq
double ba_global_points_ratio
double ba_local_function_tolerance
double min_focal_length_ratio
int ba_global_max_refinements
double ba_global_images_ratio
bool ba_refine_extra_params
double abs_pose_max_error
double local_ba_min_tri_angle
double init_min_tri_angle
double init_max_forward_motion
double filter_min_tri_angle
int abs_pose_min_num_inliers
double filter_max_reproj_error
double abs_pose_min_inlier_ratio
bool ignore_two_view_tracks
int complete_max_transitivity
double complete_max_reproj_error
double merge_max_reproj_error
double re_max_angle_error
double create_max_angle_error
double continue_max_angle_error
int loop_detection_num_images
std::string vocab_tree_path
int loop_detection_num_nearest_neighbors
int loop_detection_max_num_features
int loop_detection_num_checks
int loop_detection_period
int num_images_after_verification
std::string match_list_path
std::string vocab_tree_path
int num_nearest_neighbors
double max_side_length_factor
double max_side_length_percentile
double distance_sigma_factor
double quality_regularization
int filter_min_num_consistent
double min_triangulation_angle
double geom_consistency_max_cost
double filter_geom_consistency_max_cost
double geom_consistency_regularizer
double filter_min_triangulation_angle
bool write_consistency_graph
double incident_angle_sigma