2012-07-15 94 views
3

openCV使用新版本更改了特徵檢測器/描述符(通常情況下)。我已經發現,我需要添加opencv 2.4 SIFT編譯錯誤

#include "opencv2/nonfree/nonfree.hpp" 
#include "opencv2/nonfree/features2d.hpp" 

但是,它仍然不`噸的工作。我得到的錯誤是:

error: ‘cv::SIFT::DetectorParams’ has not been declare 

我使用標準的命令建立

gcc `pkg-config --cflags --libs opencv` -o descriptorExtractor main.cpp 

和所有的圖書館等應正確

pkg-config --cflags --libs opencv 

-I/opt/ros/fuerte/include/opencv -I/opt/ros/fuerte/include -L/opt/ros/fuerte/lib -lopencv_calib3d -lopencv_contrib -lopencv_core -lopencv_features2d -lopencv_flann -lopencv_gpu -lopencv_highgui -lopencv_imgproc -lopencv_legacy -lopencv_ml -lopencv_nonfree -lopencv_objdetect -lopencv_photo -lopencv_stitching -lopencv_ts -lopencv_video -lopencv_videostab 

怎麼又錯OpenCV的聯繫?請不要問我爲什麼我需要從openCV SIFT而不是從其他軟件或二進制文件,我只需要它...

+0

如果這個問題仍然存在,你可以給一個代碼示例?如果問題解決了,您可以發佈「解決」作爲答案並將其標記爲已接受?乾杯 – 2012-11-23 03:36:03

回答

0

我不記得它......但我認爲問題是這樣的我沒有使用

cv::initModule_nonfree();