因為含有surf特征提取算法在OpenCV2.0版本中是放在nonfree頭文件中。
換成了3.0版本之後,對nonfree模塊測試的還不夠,所以暫時還沒有直接給出像之前2.0版本那樣方便的nonfree庫。
而是放在了xfeatures2d頭文件和xfeatures2d庫中。
xfeatures2d比nonfree多了實驗性二維特征算法(Experimental2DFeaturesAlgorithms)。
想在3.0版本中使用SURF的話,暫時需要自己對OpenCV進行編譯。
只是在編譯之前,還需要下載opencv_contrib,然後在編譯時將其modules文件夾路徑
添加到CMAKE中的OPENCV_EXTRA_MODULES_PATH通過編譯得到xfeatures2d的庫文件就OK了。
使用時的語法也變了。
創建檢測器要用Ptr<SURF>detector=SURF::create()
而不再是SurfFeatureDetectordetector()