文章目錄
- 0. 前言
- 1. 下載下傳位址
- 2. 使用CMake生成OpenCV源碼
- 3. 編譯OpenCV.sln
- 4. 将新的extra modules配置到項目中
0. 前言
之前把opencv更新到3.4.5,最近打算使用SURF和SIFT,發現找不到對應的子產品。
在新版本裡面,這幾個特征點檢測的方法放在 xfeatures2d 子產品中,但是官網上下載下傳的OpenCV标準包裡面是不包含這個子產品的。從官方的文檔查詢可以看到,這個子產品已經被放到 Extra modules 中了。
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiAzNfRHLGZkRGZkRfJ3bs92YsYTMfVmepNHL90TUN5WNXl1bO1mYwZ0MMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnLxczN0ADNzYTM1ATOwkTMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
這就需要額外編譯 opencv_contrib 。
·····
·····
·····
如果不想看後面,可以直接下載下傳我編譯好的install之後的結果:
百度雲:https://pan.baidu.com/s/1fbRU7jOidtMyflMsQChTdg 提取碼:fxtp
CSDN資源:https://download.csdn.net/download/qinchang1/11705108
·
下載下傳這個之後,可以直接跳到本文第四節!
·····
·····
·····
1. 下載下傳位址
opencv_contrib下載下傳位址: https://github.com/opencv/opencv_contrib/tags
PS: opencv_contrib的版本要和opencv版本一緻!
cmake-gui 下載下傳位址: http://www.cmake.org/cmake/resources/software.html
2. 使用CMake生成OpenCV源碼
opencv_contrib 解壓之後檔案如下,記住這個路徑。
打開CMake
輸入opencv檔案夾下的sources檔案路徑,給個輸出位址,然後再點選“Configure”
選擇VS版本,還有X64!!!
第一次Configure之後會有很多紅色的,表示有錯誤,再點一次Configure。
再點一次之後就變成白色的了。
生成之後,在中間清單中找到“OPENCV_EXTRA_MODULES_PATH”,把之前opencv_contrib解壓檔案夾下的modules路徑加入進去。
并且勾選“OPENCV_ENABLE_NONFREE”!這個一定要勾選,不然的話等會你用代碼的時候就會報錯。
之後點選 Configure,又是點2次,第一次會有紅色,第二次就變白了。
如果不報錯的話,再點一次Generate。
第二次生成完成。
如果出現缺少什麼XXX的話,需要自己額外去下,然後放進對應modules裡面。
3. 編譯OpenCV.sln
點選"Open Project"。
或者進入剛才生成的檔案夾下,點開OpenCV.sln。
之後重新生成解決方案。
我的結果如下:
如下圖順序點選僅生成 INSTALL。
成功之後如下顯示。
之後會生成一個install檔案夾,裡面的内容就相當于包含了extra modules的opencv。
編譯好opencv_contrib install檔案下載下傳:
百度雲:https://pan.baidu.com/s/1fbRU7jOidtMyflMsQChTdg 提取碼:fxtp
CSDN資源:https://download.csdn.net/download/qinchang1/11705108
4. 将新的extra modules配置到項目中
在環境變量中添加剛才生成的install檔案中的bin檔案路徑
D:\opencv_contrib\install\bin
(改成自己的\opencv_contrib路徑)
在使用者變量中添加:
D:\opencv_contrib\install\x64\vc14\bin
(改成自己的\opencv_contrib路徑)
包含目錄輸入:
D:\opencv_contrib\install\include
D:\opencv_contrib\install\include\opencv
D:\opencv_contrib\install\include\opencv2
(改成自己的\opencv_contrib路徑)
庫目錄填入:
D:\opencv_contrib\install\x64\vc14\lib
(改成自己的\opencv_contrib路徑)
添加動态連結庫:
Debug屬性中添加:
opencv_aruco345d.lib
opencv_bgsegm345d.lib
opencv_bioinspired345d.lib
opencv_calib3d345d.lib
opencv_ccalib345d.lib
opencv_core345d.lib
opencv_datasets345d.lib
opencv_dnn_objdetect345d.lib
opencv_dnn345d.lib
opencv_dpm345d.lib
opencv_face345d.lib
opencv_features2d345d.lib
opencv_flann345d.lib
opencv_fuzzy345d.lib
opencv_hfs345d.lib
opencv_highgui345d.lib
opencv_img_hash345d.lib
opencv_imgcodecs345d.lib
opencv_imgproc345d.lib
opencv_line_descriptor345d.lib
opencv_ml345d.lib
opencv_objdetect345d.lib
opencv_optflow345d.lib
opencv_phase_unwrapping345d.lib
opencv_photo345d.lib
opencv_plot345d.lib
opencv_reg345d.lib
opencv_rgbd345d.lib
opencv_saliency345d.lib
opencv_shape345d.lib
opencv_stereo345d.lib
opencv_stitching345d.lib
opencv_structured_light345d.lib
opencv_superres345d.lib
opencv_surface_matching345d.lib
opencv_text345d.lib
opencv_tracking345d.lib
opencv_video345d.lib
opencv_videoio345d.lib
opencv_videostab345d.lib
opencv_xfeatures2d345d.lib
opencv_ximgproc345d.lib
opencv_xobjdetect345d.lib
opencv_xphoto345d.lib
·
·
·
Release屬性中添加:
opencv_aruco345.lib
opencv_bgsegm345.lib
opencv_bioinspired345.lib
opencv_calib3d345.lib
opencv_ccalib345.lib
opencv_core345.lib
opencv_datasets345.lib
opencv_dnn_objdetect345.lib
opencv_dnn345.lib
opencv_dpm345.lib
opencv_face345.lib
opencv_features2d345.lib
opencv_flann345.lib
opencv_fuzzy345.lib
opencv_hfs345.lib
opencv_highgui345.lib
opencv_img_hash345.lib
opencv_imgcodecs345.lib
opencv_imgproc345.lib
opencv_line_descriptor345.lib
opencv_ml345.lib
opencv_objdetect345.lib
opencv_optflow345.lib
opencv_phase_unwrapping345.lib
opencv_photo345.lib
opencv_plot345.lib
opencv_reg345.lib
opencv_rgbd345.lib
opencv_saliency345.lib
opencv_shape345.lib
opencv_stereo345.lib
opencv_stitching345.lib
opencv_structured_light345.lib
opencv_superres345.lib
opencv_surface_matching345.lib
opencv_text345.lib
opencv_tracking345.lib
opencv_video345.lib
opencv_videoio345.lib
opencv_videostab345.lib
opencv_xfeatures2d345.lib
opencv_ximgproc345.lib
opencv_xobjdetect345.lib
opencv_xphoto345.lib
如有錯誤,歡迎指正!