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

CMakeFiles/camodocal_features2d.dir/ORBGPU.cc.o:在函数‘camodocal::ORBGPU::ORBGPU(int, float, int, int, int, int, int, int)’中 #113

Open
dinghong1125 opened this issue Mar 23, 2022 · 5 comments

Comments

@dinghong1125
Copy link

CMakeFiles/camodocal_features2d.dir/ORBGPU.cc.o:在函数‘camodocal::ORBGPU::ORBGPU(int, float, int, int, int, int, int, int)’中:
ORBGPU.cc:(.text+0x108):对‘cv::cuda::ORB::create(int, float, int, int, int, int, int, int, int, bool)’未定义的引用
CMakeFiles/camodocal_features2d.dir/SurfGPU.cc.o:在函数‘camodocal::SurfGPU::SurfGPU(double, int, int, bool, float)’中:
SurfGPU.cc:(.text+0x96):对‘cv::cuda::DescriptorMatcher::createBFMatcher(int)’未定义的引用
collect2: error: ld returned 1 exit status
src/features2d/CMakeFiles/camodocal_features2d.dir/build.make:165: recipe for target 'lib/libcamodocal_features2d.so' failed
make[2]: *** [lib/libcamodocal_features2d.so] Error 1
CMakeFiles/Makefile2:1233: recipe for target 'src/features2d/CMakeFiles/camodocal_features2d.dir/all' failed
make[1]: *** [src/features2d/CMakeFiles/camodocal_features2d.dir/all] Error 2
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2

@dinghong1125 dinghong1125 changed the title CMakeFiles/camodocal_features2d.dir/ORBGPU.cc.o:在函数‘camodocal::ORBGPU::ORBGPU(int, float, int, int, int, int, int, int)’中: ORBGPU.cc:(.text+0x108):对‘cv::cuda::ORB::create(int, float, int, int, int, int, int, int, int, bool)’未定义的引用 CMakeFiles/camodocal_features2d.dir/SurfGPU.cc.o:在函数‘camodocal::SurfGPU::SurfGPU(double, int, int, bool, float)’中: SurfGPU.cc:(.text+0x96):对‘cv::cuda::DescriptorMatcher::createBFMatcher(int)’未定义的引用 collect2: error: ld returned 1 exit status src/features2d/CMakeFiles/camodocal_features2d.dir/build.make:165: recipe for target 'lib/libcamodocal_features2d.so' failed make[2]: *** [lib/libcamodocal_features2d.so] Error 1 CMakeFiles/Makefile2:1233: recipe for target 'src/features2d/CMakeFiles/camodocal_features2d.dir/all' failed make[1]: *** [src/features2d/CMakeFiles/camodocal_features2d.dir/all] Error 2 Makefile:140: recipe for target 'all' failed make: *** [all] Error 2make CMakeFiles/camodocal_features2d.dir/ORBGPU.cc.o:在函数‘camodocal::ORBGPU::ORBGPU(int, float, int, int, int, int, int, int)’中 Mar 23, 2022
@Billy-Mazotti
Copy link

@dinghong1125 I believe I'm getting the same issue (see output from "make" after "cmake -DCMAKE_BUILD_TYPE=Release .. ").


USERNAME@USERNAME-GS66-Stealth-10SE:~/camodocal/build$ make
[ 3%] Built target camodocal_sparse_graph
[ 48%] Built target ceres
[ 53%] Built target agast
[ 54%] Built target camodocal_brisk
[ 56%] Built target camodocal_gpl
[ 60%] Built target camodocal_camera_models
[ 60%] Building CXX object src/features2d/CMakeFiles/camodocal_features2d.dir/ORBGPU.cc.o
In file included from /home/USERNAME/camodocal/src/features2d/ORBGPU.h:33:0,
from /home/USERNAME/camodocal/src/features2d/ORBGPU.cc:1:
/usr/include/opencv2/xfeatures2d.hpp:247:103: error: expected ‘;’ at end of member declaration
oid compute( InputArray image, std::vector& keypoints, OutputArray descriptors ) CV_OVERRIDE = 0;
^
/usr/include/opencv2/xfeatures2d.hpp:247:105: error: ‘CV_OVERRIDE’ does not name a type; did you mean ‘CV_VERSION’?
d compute( InputArray image, std::vector& keypoints, OutputArray descriptors ) CV_OVERRIDE = 0;
^~~~~~~~~~~
CV_VERSION
/usr/include/opencv2/xfeatures2d.hpp:251:59: error: expected ‘;’ at end of member declaration
OutputArrayOfArrays descriptors ) CV_OVERRIDE;
^
/usr/include/opencv2/xfeatures2d.hpp:251:61: error: ‘CV_OVERRIDE’ does not name a type; did you mean ‘CV_VERSION’?
OutputArrayOfArrays descriptors ) CV_OVERRIDE;
^~~~~~~~~~~
CV_VERSION
/usr/include/opencv2/xfeatures2d.hpp:998:92: error: ‘cv::FastFeatureDetector::DetectorType’ has not been declared
int threshold, bool nonmaxSuppression=true, cv::FastFeatureDetector::DetectorType type=FastFeatureDetector::TYPE_9_16);
^~~~~~~~~~~~
src/features2d/CMakeFiles/camodocal_features2d.dir/build.make:62: recipe for target 'src/features2d/CMakeFiles/camodocal_features2d.dir/ORBGPU.cc.o' failed
make[2]: *** [src/features2d/CMakeFiles/camodocal_features2d.dir/ORBGPU.cc.o] Error 1
CMakeFiles/Makefile2:1232: recipe for target 'src/features2d/CMakeFiles/camodocal_features2d.dir/all' failed
make[1]: *** [src/features2d/CMakeFiles/camodocal_features2d.dir/all] Error 2
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2


Where you able to resolve this?

@dinghong1125
Copy link
Author

@dinghong1125我相信我遇到了同样的问题(请参阅“cmake -DCMAKE_BUILD_TYPE=Release ..”之后的“make”输出)。

USERNAME@USERNAME-GS66-Stealth-10SE:~/camodocal/build$ make [ 3%] 构建目标 camodocal_sparse_graph [ 48%] 构建目标 ceres [ 53%] 构建目标 agast [ 54%] 构建目标 camodocal_brisk [ 56%] 构建target camodocal_gpl [ 60%] 构建目标 camodocal_camera_models [ 60%] 构建 CXX 对象 src/features2d/CMakeFiles/camodocal_features2d.dir/ORBGPU.cc.o 在 /home/USERNAME/camodocal/src/features2d/ORBGPU.h 包含的文件中: 33:0, 来自/home/USERNAME/camodocal/src/features2d/ORBGPU.cc:1:/usr/include/opencv2/xfeatures2d.hpp:247:103 :错误:预期的';' 在成员声明结束时 oid compute(InputArray image, std::vector& keypoints, OutputArray 描述符) CV_OVERRIDE = 0; ^ /usr/include/opencv2/xfeatures2d.hpp:247:105:错误:“CV_OVERRIDE”没有命名类型;你的意思是“CV_VERSION”吗? d 计算(InputArray 图像,std::vector& 关键点,OutputArray 描述符)CV_OVERRIDE = 0; ^~~~~~~~~~~ CV_VERSION /usr/include/opencv2/xfeatures2d.hpp:251:59: 错误: 预期';' 在成员声明的 末尾 OutputArrayOfArrays 描述符 ) CV_OVERRIDE; ^ /usr/include/opencv2/xfeatures2d.hpp:251:61: 错误:'CV_OVERRIDE' 没有命名类型;你的意思是“CV_VERSION”吗? OutputArrayOfArrays 描述符 ) CV_OVERRIDE; ^~~~~~~~~~~ CV_VERSION /usr/include/opencv2/xfeatures2d.hpp:998:92: error: 'cv::FastFeatureDetector::DetectorType' 没有被声明 int 阈值,bool nonmaxSuppression=true,cv::FastFeatureDetector::DetectorType type=FastFeatureDetector::TYPE_9_16); ^~~~~~~~~~~~ src/features2d/CMakeFiles/camodocal_features2d.dir/build.make:62:目标'src/features2d/CMakeFiles/camodocal_features2d.dir/ORBGPU.cc.o'的配方失败 了[2]: *** [src/features2d/CMakeFiles/camodocal_features2d.dir/ORBGPU.cc.o] 错误 1​​CMakeFiles/Makefile2:1232: 目标 'src/features2d/CMakeFiles/camodocal_features2d.dir/all' 的配方 失败[1]: *** [src/features2d/CMakeFiles/camodocal_features2d.dir/all] 错误 2 Makefile:140: 目标“所有”的配方失败 make: *** [all] 错误 2

你能在哪里解决这个问题?

Sorry, I didn't solve the problem. Finally I used ROS to calibrate my camera.

@Billy-Mazotti
Copy link

Thanks for the response! Did you use ROS to calibrate your camera's extrinsic parameters? If so would you mind pointing me towards whatever resource(s) you used?

@dinghong1125 dinghong1125 reopened this May 27, 2022
@dinghong1125
Copy link
Author

The ROS package I use is image_pipeline to calibrate my stereo camera. It's very convenient.
http://wiki.ros.org/image_pipeline
You can type in at the terminal “rosrun camera_calibration cameracalibrator.py --approximate 0.1 --size 6x8 --square 0.100 left:=/camera/left/image_raw right:=/camera/right/image_raw --no-service-check”.
Topic and board parameters need to be adjusted.
Stereo camera needs to have a public view.(I don't have a good method for stereo camera or multi camera calibration without public view.)
The calibrated file package is stored in the TMP folder.

@dinghong1125
Copy link
Author

dinghong1125 commented Oct 11, 2022 via email

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

2 participants