2017-06-28 70 views
0

我們正在試圖安裝並運行OpenPose庫中找到一個演示在Github上: https://github.com/CMU-Perceptual-Computing-Lab/openpose/blob/master/doc/installation.md#manual-compilationOpenPose圖書館 - 構建發行問題

與安裝來自Caffe和所有先決條件,這樣做,但在執行安裝我們得到以下errror命令:

CXX examples/tutorial_wrapper/2_user_synchronous.cpp 
AR -o .build_release/lib/libopenpose.a 
LD -o .build_release/lib/libopenpose.so.1.0.0-rc3 
CXX/LD -o .build_release/examples/tutorial_pose/2_extract_pose_or_heatmat_from_image.bin 
.build_release/lib/libopenpose.so: undefined reference to `cv::VideoCapture::VideoCapture(cv::String const&)' 
.build_release/lib/libopenpose.so: undefined reference to `cv::VideoCapture::set(int, double)' 
.build_release/lib/libopenpose.so: undefined reference to `cv::VideoCapture::release()' 
.build_release/lib/libopenpose.so: undefined reference to `cv::VideoCapture::operator>>(cv::Mat&)' 
.build_release/lib/libopenpose.so: undefined reference to `cv::VideoWriter::VideoWriter(cv::String const&, int, double, cv::Size_<int>, bool)' 
.build_release/lib/libopenpose.so: undefined reference to `cv::VideoCapture::isOpened() const' 
.build_release/lib/libopenpose.so: undefined reference to `cv::VideoCapture::get(int) const' 
.build_release/lib/libopenpose.so: undefined reference to `cv::VideoCapture::VideoCapture(int)' 
.build_release/lib/libopenpose.so: undefined reference to `cv::VideoCapture::~VideoCapture()' 
.build_release/lib/libopenpose.so: undefined reference to `vtable for cv::VideoWriter' 
collect2: error: ld returned 1 exit status 
Makefile:492: recipe for target '.build_release/examples/tutorial_pose/2_extract_pose_or_heatmat_from_image.bin' failed 
make: *** [.build_release/examples/tutorial_pose/2_extract_pose_or_heatmat_from_image.bin] Error 1 
make: *** Waiting for unfinished jobs.... 

------------------------- ------------------------- 
Errors detected. Exiting script. The software might have not been successfully installed. 
------------------------- ------------------------- 

請幫助我得到這個蘆葦。

感謝

+0

你有什麼版本的OpenCV ...如果你正在使用的OpenCV 3.2.0然後我會建議你使用3.1.0,在這裏,對於一些OpenPose問題制定一個答案https://stackoverflow.com/questions/44236198/openpose編譯-告訴-未定義引用到cvvideocapturevideocapture/44237793#442377937 – Eliethesaiyan

回答

0

這可能是因爲libopencv_video和/或libopencv_videoio尚未添加到項目中。如果您從源代碼構建opencv,請檢查這些庫是否已經構建。

0

它看起來像你沒有檢查OpenCV3國旗同時在OpenPose,但Caffe makefiles.config文件。

例如,如果你使用手動編譯你所指出的,假設你有Ubuntu的16和CUDA 8.所以,你需要修改這兩個文件:

通過在它們中取消註釋# OPENCV_VERSION := 3

之後,簡單地重新運行它們指定的命令:cp Makefile.config.Ubuntu16.example Makefile.config

而且make clean兩個OpenPose,但Caffe並重新構建它。