文章目录
1 查看opencv版本
pkg-config --modversion opencv
pkf-config会查找.pc文件(/usr/lib/pkgconfig, /usr/share/pkgconfig, /usr/local/lib/pkgconfig, /usr/local/share/pkgconfig)
locate opencv.pc
# Package Information for pkg-config
prefix=/usr/local
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir_old=${prefix}/include/opencv
includedir_new=${prefix}/include
Name: OpenCV
Description: Open Source Computer Vision Library
Version: 3.2.0
Libs: -L${exec_prefix}/lib -lopencv_shape -lopencv_stitching -lopencv_objdetect -lopencv_superres -lopencv_videostab -lopencv_calib3d -lopencv_features2d -lopencv_highgui -lopencv_videoio -lopencv_imgcodecs -lopencv_video -lopencv_photo -lopencv_ml -lopencv_imgproc -lopencv_flann -lopencv_core
Libs.private: -L/usr/lib/x86_64-linux-gnu -lpng -lz -ltiff -ljasper -ljpeg -lgtk-x11-2.0 -lgdk-x11-2.0 -lpangocairo-1.0 -latk-1.0 -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lpangoft2-1.0 -lpango-1.0 -lgobject-2.0 -lglib-2.0 -lfontconfig -lfreetype -lgthread-2.0 -ldc1394 -lavcodec -lavformat -lavutil -lswscale -ldl -lm -lpthread -lrt
Cflags: -I${includedir_old} -I${includedir_new}
2 Opencv4 + CUDA安装
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D INSTALL_PYTHON_EXAMPLES=OFF -D INSTALL_C_EXAMPLES=OFF -D OPENCV_ENABLE_NONFREE=ON -D WITH_CUDA=ON -D WITH_CUDNN=ON -D OPENCV_DNN_CUDA=ON -D ENABLE_FAST_MATH=1 -D CUDA_FAST_MATH=1 -D WITH_OPENGL=ON -D CUDA_ARCH_BIN=7.5 -D CUDA_ARCH_PTX=7.5 -D WITH_CUBLAS=1 -D BUILD_OPENCV_python3=ON -D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-4.4.0/modules/ -D HAVE_opencv_python3=ON ..
3 Opencv3 + NO_CUDA安装
https://blog.csdn.net/u010003609/article/details/100086151先看下这个,有点bug
/usr/include/c++/7/cstdlib:75:15: fatal error: stdlib.h: No such file or directoryz
cmake -D WITH_CUDA=OFF -DENABLE_PRECOMPILED_HEADERS=OFF ..
4 解决opencv3和opencv4共存的问题(orbslam2+航母项目)
参考解决方案:先安装opencv再安装opencv4 https://blog.csdn.net/m0_37993445/article/details/121227948
其他参考解决方案:https://blog.csdn.net/Ensurensure/article/details/127435046
安装opencv3后在opencv4.4.0文件夹build执行:其中注意的是CMAKE_INSTALL_PREFIX位置为安装opencv4库的位置,需要自己设置
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/home/yzl/opencv4 -D INSTALL_PYTHON_EXAMPLES=OFF -D INSTALL_C_EXAMPLES=OFF -D OPENCV_ENABLE_NONFREE=ON -D WITH_CUDA=ON -D WITH_CUDNN=ON -D OPENCV_DNN_CUDA=ON -D ENABLE_FAST_MATH=1 -D CUDA_FAST_MATH=1 -D WITH_OPENGL=ON -D CUDA_ARCH_BIN=7.5 -D CUDA_ARCH_PTX=7.5 -D WITH_CUBLAS=1 -D BUILD_OPENCV_python3=ON -D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-4.4.0/modules/ -D HAVE_opencv_python3=ON -D OPENCV_GENERATE_PKGCONFIG=ON ..
然后make;sudo make install
配置opencv变量
sudo gedit /etc/ld.so.conf.d/opencv.conf
添加CMAKE_INSTALL_PREFIX/lib
/home/yzl/opencv4/lib
然后执行
sudo ldconfig
然后编辑~/.zshrc(bashrc)
# opencv-4.4.0
export PKG_CONFIG_PATH=${PKG_CONFIG_PATH}:/home/yzl/opencv4/lib/pkgconfig
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:./home/yzl/opencv4/lib
查看当前opencv3版本:pkg-config --modversion opencv
查看当前opencv4版本:pkg-config --modversion opencv4
查看头文件和库:
pkg-config --cflags opencv4
pkg-config --libs opencv4
5 安装后使用要点
在编写CMakeLists.txt中:
调用opencv3
FIND_PACKAGE(OpenCV REQUIRED)
调用opencv4
方法一:需要在上面指令上添加
set(CMAKE_PREFIX_PATH "/home/yzl/opencv4")
方法二:实测
find_package(OpenCV 4 REQUIRED)
6 查看OpenCVConfig.cmake
locate OpenCVConfig.cmake