40 #include "util/version.h"
44 typedef std::function<int(
int,
char**)> command_func_t;
47 const std::vector<std::pair<std::string, command_func_t>>& commands) {
49 "%s -- Structure-from-Motion and Multi-View Stereo\n"
59 std::cout <<
"Documentation:" <<
std::endl;
62 std::cout <<
"Example usage:" <<
std::endl;
63 std::cout <<
" colmap help [ -h, --help ]" <<
std::endl;
65 std::cout <<
" colmap gui -h [ --help ]" <<
std::endl;
66 std::cout <<
" colmap automatic_reconstructor -h [ --help ]" <<
std::endl;
67 std::cout <<
" colmap automatic_reconstructor --image_path IMAGES "
68 "--workspace_path WORKSPACE"
71 <<
" colmap feature_extractor --image_path IMAGES --database_path "
74 std::cout <<
" colmap exhaustive_matcher --database_path DATABASE"
76 std::cout <<
" colmap mapper --image_path IMAGES --database_path DATABASE "
81 std::cout <<
"Available commands:" <<
std::endl;
83 for (
const auto& command : commands) {
84 std::cout <<
" " << command.first <<
std::endl;
93 int main(
int argc,
char** argv) {
98 Q_INIT_RESOURCE(resources);
101 std::vector<std::pair<std::string, command_func_t>> commands;
103 commands.emplace_back(
"automatic_reconstructor",
121 commands.emplace_back(
"image_undistorter_standalone",
123 commands.emplace_back(
"mapper", &
RunMapper);
131 commands.emplace_back(
"model_orientation_aligner",
151 const std::string command =
"gui";
154 return ShowHelp(commands);
156 const std::string command = argv[1];
158 if (command ==
"help" || command ==
"-h" || command ==
"--help") {
159 return ShowHelp(commands);
161 command_func_t matched_command_func =
nullptr;
162 for (
const auto& command_func : commands) {
163 if (command == command_func.first) {
164 matched_command_func = command_func.second;
168 if (matched_command_func ==
nullptr) {
170 "ERROR: Command `%s` not recognized. To list "
172 "available commands, run `colmap help`.",
177 int command_argc = argc - 1;
178 char** command_argv = &argv[1];
179 command_argv[0] = argv[0];
180 return matched_command_func(command_argc, command_argv);
184 return ShowHelp(commands);
int main(int argc, char **argv)
QTextStream & endl(QTextStream &stream)
int RunModelAligner(int argc, char **argv)
int RunImageUndistorter(int argc, char **argv)
void InitializeGlog(char **argv)
int RunPoissonMesher(int argc, char **argv)
int RunModelOrientationAligner(int argc, char **argv)
int RunModelConverter(int argc, char **argv)
int RunImageFilterer(int argc, char **argv)
int RunModelComparer(int argc, char **argv)
std::string GetBuildInfo()
int RunMatchesImporter(int argc, char **argv)
int RunImageUndistorterStandalone(int argc, char **argv)
int RunColorExtractor(int argc, char **argv)
int RunVocabTreeRetriever(int argc, char **argv)
int RunImageRectifier(int argc, char **argv)
int RunVocabTreeBuilder(int argc, char **argv)
int RunSequentialMatcher(int argc, char **argv)
int RunPatchMatchStereo(int argc, char **argv)
std::string GetVersionInfo()
int RunStereoFuser(int argc, char **argv)
int RunPointTriangulator(int argc, char **argv)
int RunHierarchicalMapper(int argc, char **argv)
int RunModelCropper(int argc, char **argv)
int RunImageDeleter(int argc, char **argv)
int RunDatabaseCleaner(int argc, char **argv)
int RunFeatureExtractor(int argc, char **argv)
int RunTransitiveMatcher(int argc, char **argv)
int RunModelMerger(int argc, char **argv)
int RunImageTexturer(int argc, char **argv)
int RunMapper(int argc, char **argv)
int RunImageRegistrator(int argc, char **argv)
int RunGraphicalUserInterface(int argc, char **argv)
int RunDatabaseMerger(int argc, char **argv)
int RunRigBundleAdjuster(int argc, char **argv)
int RunProjectGenerator(int argc, char **argv)
int RunDelaunayMesher(int argc, char **argv)
int RunModelSplitter(int argc, char **argv)
int RunSpatialMatcher(int argc, char **argv)
std::string StringPrintf(const char *format,...)
int RunFeatureImporter(int argc, char **argv)
int RunAutomaticReconstructor(int argc, char **argv)
int RunModelAnalyzer(int argc, char **argv)
int RunBundleAdjuster(int argc, char **argv)
int RunVocabTreeMatcher(int argc, char **argv)
int RunPointFiltering(int argc, char **argv)
int RunModelTransformer(int argc, char **argv)
int RunExhaustiveMatcher(int argc, char **argv)
int RunDatabaseCreator(int argc, char **argv)