Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

colmap make #40

Open
DanielLiking opened this issue Sep 15, 2022 · 4 comments
Open

colmap make #40

DanielLiking opened this issue Sep 15, 2022 · 4 comments

Comments

@DanielLiking
Copy link

Why would this problem happen? I used your colmap version(without git clone or checkout): cmake & make. Then it's wring during the process of making
Screenshot from 2022-09-15 13-43-36

[ 50%] Building CXX object src/CMakeFiles/colmap.dir/mvs/meshing.cc.o
[ 50%] Building CXX object src/CMakeFiles/colmap.dir/optim/bundle_adjustment.cc.o
[ 50%] Building CXX object src/CMakeFiles/colmap.dir/ui/undistortion_widget.cc.o
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc: In function ‘bool colmap::RefineAbsolutePose(const colmap::AbsolutePoseRefinementOptions&, const std::vector&, const std::vector<Eigen::Matrix<double, 2, 1>, std::allocator<Eigen::Matrix<double, 2, 1> > >&, const std::vector<Eigen::Matrix<double, 3, 1> >&, Eigen::Vector4d*, Eigen::Vector3d*, colmap::Camera*)’:
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:242:20: error: ‘QuaternionParameterization’ in namespace ‘ceres’ does not name a type
242 | new ceres::QuaternionParameterization;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:243:13: error: ‘class ceres::Problem’ has no member named ‘SetParameterization’; did you mean ‘SetParameterLowerBound’?
243 | problem.SetParameterization(qvec->data(), quaternion_parameterization);
| ^~~~~~~~~~~~~~~~~~~
| SetParameterLowerBound
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:276:16: error: ‘SubsetParameterization’ is not a member of ‘ceres’; did you mean ‘LocalParameterization’?
276 | ceres::SubsetParameterization* camera_params_parameterization =
| ^~~~~~~~~~~~~~~~~~~~~~
| LocalParameterization
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:276:40: error: ‘camera_params_parameterization’ was not declared in this scope
276 | ceres::SubsetParameterization* camera_params_parameterization =
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:277:17: error: expected type-specifier
277 | new ceres::SubsetParameterization(
| ^~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:279:17: error: ‘class ceres::Problem’ has no member named ‘SetParameterization’; did you mean ‘SetParameterLowerBound’?
279 | problem.SetParameterization(camera->ParamsData(),
| ^~~~~~~~~~~~~~~~~~~
| SetParameterLowerBound
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc: In function ‘bool colmap::RefineRelativePose(const ceres::Solver::Options&, const std::vector<Eigen::Matrix<double, 2, 1>, std::allocator<Eigen::Matrix<double, 2, 1> > >&, const std::vector<Eigen::Matrix<double, 2, 1>, std::allocator<Eigen::Matrix<double, 2, 1> > >&, Eigen::Vector4d*, Eigen::Vector3d*)’:
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:333:18: error: ‘QuaternionParameterization’ in namespace ‘ceres’ does not name a type
333 | new ceres::QuaternionParameterization;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:334:11: error: ‘class ceres::Problem’ has no member named ‘SetParameterization’; did you mean ‘SetParameterLowerBound’?
334 | problem.SetParameterization(qvec->data(), quaternion_parameterization);
| ^~~~~~~~~~~~~~~~~~~
| SetParameterLowerBound
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:336:10: error: ‘HomogeneousVectorParameterization’ is not a member of ‘ceres’
336 | ceres::HomogeneousVectorParameterization* homogeneous_parameterization =
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:336:45: error: ‘homogeneous_parameterization’ was not declared in this scope; did you mean ‘quaternion_parameterization’?
336 | ceres::HomogeneousVectorParameterization* homogeneous_parameterization =
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
| quaternion_parameterization
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:337:11: error: expected type-specifier
337 | new ceres::HomogeneousVectorParameterization(3);
| ^~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:338:11: error: ‘class ceres::Problem’ has no member named ‘SetParameterization’; did you mean ‘SetParameterLowerBound’?
338 | problem.SetParameterization(tvec->data(), homogeneous_parameterization);
| ^~~~~~~~~~~~~~~~~~~
| SetParameterLowerBound
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc: In member function ‘void colmap::BundleAdjuster::AddImageToProblem(colmap::image_t, colmap::Reconstruction*, ceres::LossFunction*)’:
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:420:22: error: ‘QuaternionParameterization’ in namespace ‘ceres’ does not name a type
420 | new ceres::QuaternionParameterization;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:421:17: error: ‘class ceres::Problem’ has no member named ‘SetParameterization’; did you mean ‘SetParameterLowerBound’?
421 | problem_->SetParameterization(qvec_data, quaternion_parameterization);
| ^~~~~~~~~~~~~~~~~~~
| SetParameterLowerBound
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:425:16: error: ‘SubsetParameterization’ is not a member of ‘ceres’; did you mean ‘LocalParameterization’?
425 | ceres::SubsetParameterization* tvec_parameterization =
| ^~~~~~~~~~~~~~~~~~~~~~
| LocalParameterization
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:425:40: error: ‘tvec_parameterization’ was not declared in this scope; did you mean ‘quaternion_parameterization’?
425 | ceres::SubsetParameterization* tvec_parameterization =
| ^~~~~~~~~~~~~~~~~~~~~
| quaternion_parameterization
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:426:17: error: expected type-specifier
426 | new ceres::SubsetParameterization(3, constant_tvec_idxs);
| ^~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:427:19: error: ‘class ceres::Problem’ has no member named ‘SetParameterization’; did you mean ‘SetParameterLowerBound’?
427 | problem_->SetParameterization(tvec_data, tvec_parameterization);
| ^~~~~~~~~~~~~~~~~~~
| SetParameterLowerBound
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:423:33: warning: unused variable ‘constant_tvec_idxs’ [-Wunused-variable]
423 | const std::vector& constant_tvec_idxs =
| ^~~~~~~~~~~~~~~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc: In member function ‘void colmap::BundleAdjuster::ParameterizeCameras(colmap::Reconstruction*)’:
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:514:16: error: ‘SubsetParameterization’ is not a member of ‘ceres’; did you mean ‘LocalParameterization’?
514 | ceres::SubsetParameterization* camera_params_parameterization =
| ^~~~~~~~~~~~~~~~~~~~~~
| LocalParameterization
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:514:40: error: ‘camera_params_parameterization’ was not declared in this scope
514 | ceres::SubsetParameterization* camera_params_parameterization =
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:515:17: error: expected type-specifier
515 | new ceres::SubsetParameterization(
| ^~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:517:19: error: ‘class ceres::Problem’ has no member named ‘SetParameterization’; did you mean ‘SetParameterLowerBound’?
517 | problem_->SetParameterization(camera.ParamsData(),
| ^~~~~~~~~~~~~~~~~~~
| SetParameterLowerBound
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc: In member function ‘void colmap::RigBundleAdjuster::AddImageToProblem(colmap::image_t, colmap::Reconstruction*, std::vectorcolmap::CameraRig, ceres::LossFunction)’:
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:1061:14: error: ‘SubsetParameterization’ is not a member of ‘ceres’; did you mean ‘LocalParameterization’?
1061 | ceres::SubsetParameterization* tvec_parameterization =
| ^~~~~~~~~~~~~~~~~~~~~~
| LocalParameterization
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:1061:38: error: ‘tvec_parameterization’ was not declared in this scope
1061 | ceres::SubsetParameterization* tvec_parameterization =
| ^~~~~~~~~~~~~~~~~~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:1062:15: error: expected type-specifier
1062 | new ceres::SubsetParameterization(3, constant_tvec_idxs);
| ^~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:1063:17: error: ‘class ceres::Problem’ has no member named ‘SetParameterization’; did you mean ‘SetParameterLowerBound’?
1063 | problem_->SetParameterization(tvec_data, tvec_parameterization);
| ^~~~~~~~~~~~~~~~~~~
| SetParameterLowerBound
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:1059:31: warning: unused variable ‘constant_tvec_idxs’ [-Wunused-variable]
1059 | const std::vector& constant_tvec_idxs =
| ^~~~~~~~~~~~~~~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc: In member function ‘void colmap::RigBundleAdjuster::ParameterizeCameraRigs(colmap::Reconstruction*)’:
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:1147:20: error: ‘QuaternionParameterization’ in namespace ‘ceres’ does not name a type
1147 | new ceres::QuaternionParameterization;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:1148:15: error: ‘class ceres::Problem’ has no member named ‘SetParameterization’; did you mean ‘SetParameterLowerBound’?
1148 | problem_->SetParameterization(qvec_data, quaternion_parameterization);
| ^~~~~~~~~~~~~~~~~~~
| SetParameterLowerBound
make[2]: *** [src/CMakeFiles/colmap.dir/build.make:661: src/CMakeFiles/colmap.dir/estimators/pose.cc.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: *** [src/CMakeFiles/colmap.dir/build.make:882: src/CMakeFiles/colmap.dir/optim/bundle_adjustment.cc.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:858: src/CMakeFiles/colmap.dir/all] Error 2
make: *** [Makefile:149: all] Error 2

I hope to receive your reply! THX

@xiaoyudanaa
Copy link

加个微信,我也在弄这个,讨论一下:Weafree

@DanielLiking
Copy link
Author

@weiyithu

@weiyithu
Copy link
Owner

Sorry, I forget to responce. It seems that your ceres version is not right. You can try to install ceres 2.0.0 from googlesource.

@DanielLiking
Copy link
Author

okay I figured it out!THX

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants