本文转载 微卡智享
所有权为微卡智享所有
一、安装opencv
- 使用git 下载opencv
#下载源码的语句
git clone https://github.com/opencv/opencv.git
- 进入opencv 文件建立build目录
cd opencv
mkdir build
- 编译
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_GENERATE_PKGCONFIG=ON ..
make -j8
sudo make install
安装完成
二、 配置Opencv
- 配置OpenCV的include路径
安装完成后,OpenCV的hpp文件都在在/usr/local/include/opencv4/opencv2,需要修改一下软链接
ln -s /usr/local/include/opencv4/opencv2/ /usr/include/opencv2/
- OpenCV4.pc的处理
安装前也是看了好几个文章,都介绍到说这个地方注意在 cmake 这一步要加上OPENCV_GENERATE_PKGCONFIG=ON 不然没有pkg-config 支持会很痛苦。并且build中也不会出现opencv4.pc的文件。
编译了好几次没在在Build文件夹下看到opencv4.pc的文件,一直没什么头绪,后面也是无意间在build文件夹下的unix-install文件夹中找到了
sudo chmod 777 pkgconfig
打开的opencv4.pc的文件里面主要看includedir,上面我们修改了链接路径,所以这里可以不用做任何修改了
# Package Information for pkg-config
prefix=/usr/local
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include/opencv2
Name: OpenCV
Description: Open Source Computer Vision Library
Version: 4.5.4
Libs: -L${exec_prefix}/lib -lopencv_gapi -lopencv_highgui -lopencv_ml -lopencv_objdetect -lopencv_photo -lopencv_stitching -lopencv_video -lopencv_calib3d -lopencv_features2d -lopencv_dnn -lopencv_flann -lopencv_videoio -lopencv_imgcodecs -lopencv_imgproc -lopencv_core
Libs.private: -ldl -lm -lpthread -lrt
Cflags: -I${includedir}
检测系统中能否找到头文件
pkg-config --cflags opencv4
pkg-config --libs opencv4
- 配置环境
上面的步骤做完后,在/etc/ld.so.conf.d的目录下可以看到opencv.conf的文件
#在opencv.conf中添加内容:
/usr/local/lib
然后执行生效命令
sudo ldconfig
修改/etc/bash.bashrc
在bash.bashrc的文件末尾添加
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
接下来就执行更新命令
source /etc/bash.bashrc
sudo updatedb
完成上面这些,OpenCV的安装配置就算完成了。
三、在vscode在终端添加配置任务,生成task.json的文件
- 重点
因为前面OpenCV中已经配置好了pkg-config,所以这里面最重要的一句就是pkg-config --libs --cflags opencv4,双引号里面要加上单引号。
{
"version": "2.0.0",
"tasks": [
{
"type": "cppbuild",
"label": "C/C++: g++ 生成活动文件",
"command": "/bin/g++",
"args": [
"-fdiagnostics-color=always",
"-g",
"${file}",
"-o",
"${fileDirname}/${fileBasenameNoExtension}",
"`pkg-config --libs --cflags opencv4`"
],
"options": {
"cwd": "${fileDirname}"
},
"problemMatcher": [
"$gcc"
],
"group": "build",
"detail": "编译器: /bin/g++"
}
]
}
然后按Ctrl+Shift+P,找到C++编辑配置,生成c_cpp_properties.json 文件
在includePath的目录下加入前面我们链接的OpenCV的头文件目录/usr/include/opencv2
launch.json调试文件中主要就是修改program的路径,默认生成的指定目录是工作目录下的Build/Debug/Output中,这里改我们在生成的配置路径即可。