OpenCV多版本切换和配置--opencv 安装与卸载、添加 opencv_contrib modules 以及 OpenCv 多版本切换


 

1. 查看安装Opencv的版本、以及libs和cflags

$ pkg-config --modversion opencv $ pkg-config --cflags opencv // 编译链接 $ pkg-config --libs opencv // 库链接 

2. 卸载之前的Opencv版本

$ cd <your_opencv_source_files>/build $ sudo make uninstall $ cd .. && rm -rf build 

3. 安装opencv_contrib----确保与安装的opencv版本一致

"记住:为方便Opencv的调用和读取,建立opencv的install文件夹" $ sudo mkdir -p /usr/local/opencv410 (安装的是opencv-4.1.0) $ cd <your_opencv_source_files>/build $ sudo rm -rf * ## 如果之前安装了opencv再安装contrib就需要将之前的清除再重新安装 $ cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local/opencv410 -D OPENCV_EXTRA_MODULES_PATH=<path to opencv_contrib>/modules/ .. "备注:注意如果要安装opencv_contrib模块,确保将之前build文件下的内容删除,然后再重新编译,否则你就会出错!---ERROR2" $ cmake-gui ##另外,如果你要使用nonfree模块里面的特征点提取等相关内容,请使用cmake-gui 编译勾选参数OPENCV_ENABLE_NONFREE,另外其他参数跟前面一样 ----ERROR1 $ sudo make -j8 $ sudo make install 

4. CMakeLists.txt 调用OpenCV链接库和头文件

 set(CMAKE_PREFIX_PATH "/usr/local/opencv410/lib/cmake/opencv4") ## 或者用以下方式设定opencv4的构建路径 set(OpenCV_DIR "/home/ian/tools/slam_libraries/opencv-4.1.0/build") find_package(OpenCV 4 REQUIRED) include_directories(${OpenCV_INCLUDE_DIRS}) target_link_libraries(*** ${OpenCV_LIBS}) 

5. 编译过程中遇到的两个错误,若按照以上方式安装可避免下述错误

ERROR1: (-213:The function/feature is not implemented) This algorithm is patented and is excluded in this configuration; Set OPENCV_ENABLE_NONFREE CMake option and rebuild the library in function 'create'; ERROR2: error: ‘linemod’ was not declared in this scope template<> struct pyopencvVecConverter<linemod::Match>; 

 

 

[参考链接]:

1. Ubuntu+OpenCV

2. ubuntu卸载OpenCV+Contribute

Author: Ian
星期六, 13. 七月 2019 10:04上午


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM