5 #include "../lib/args.h" 6 #include "../lib/assert.h" 7 #include "../lib/camera.h" 11 int main(
int argc,
const char* argv[]) {
12 get_args(argc, argv,
"in_cameras1.json in_cameras2.json out_cameras.json [common_camera]");
23 if(common_camera_name.empty()) {
24 for(
const camera& cam : cameras2) {
25 const std::string& name = cam.name;
26 if(cameras1_map.find(name) != cameras1_map.end())
continue;
27 out_cameras.push_back(cam);
31 if(cameras1_map.find(common_camera_name) == cameras1_map.end())
32 throw std::runtime_error(
"common_camera not in in_cameras1.json");
33 if(cameras2_map.find(common_camera_name) == cameras2_map.end())
34 throw std::runtime_error(
"common_camera not in in_cameras2.json");
36 const camera& cam1 = cameras1_map.at(common_camera_name);
37 const camera& cam2 = cameras2_map.at(common_camera_name);
40 for(
const camera& cam : cameras2) {
41 const std::string& name = cam.name;
42 if(cameras1_map.find(name) != cameras1_map.end())
continue;
43 camera transformed_cam = cam;
46 out_cameras.push_back(transformed_cam);
void export_cameras_file(const camera_array &cameras, const std::string &filename)
std::map< std::string, camera > cameras_map(const camera_array &arr)
int main(int argc, const char *argv[])
mat44 extrinsic_inv() const
camera_array cameras_arg()
void set_extrinsic(const mat44 &)
std::string out_filename_arg()
std::vector< camera > camera_array
cv::Matx< real, 4, 4 > mat44
std::string string_opt_arg(const std::string &def="")
void get_args(int argc, const char *argv[], const std::string &usage)