ubuntu OpenCV C++安装

本文转载 微卡智享
所有权为微卡智享所有

一、安装opencv

  1. 使用git 下载opencv
#下载源码的语句
git clone https://github.com/opencv/opencv.git
  1. 进入opencv 文件建立build目录
cd opencv
mkdir build
  1. 编译

cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_GENERATE_PKGCONFIG=ON ..

make -j8

sudo make install

安装完成

二、 配置Opencv

  1. 配置OpenCV的include路径

安装完成后,OpenCV的hpp文件都在在/usr/local/include/opencv4/opencv2,需要修改一下软链接


ln -s /usr/local/include/opencv4/opencv2/ /usr/include/opencv2/
  1. 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
  1. 配置环境

上面的步骤做完后,在/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的文件

  1. 重点
    因为前面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中,这里改我们在生成的配置路径即可。

要在Ubuntu上使用OpenCVC++库,你需要进行以下步骤: 1. 首先,确保你已经在系统上安装OpenCV。可以使用以下命令来安装OpenCV库: ``` sudo apt-get install libopencv-dev ``` 2. 确定OpenCV的hpp文件路径。根据引用,OpenCV的hpp文件位于`/usr/local/include/opencv4/opencv2`目录下。你可以使用以下命令创建一个软链接来修改路径: ``` sudo ln -s /usr/local/include/opencv4/opencv2/ /usr/include/opencv2/ ``` 3. 确认OpenCV的pkg-config文件(opencv.pc)中的路径是否正确。根据引用和引用,你需要修改`opencv.pc`文件或者创建一个新的`opencv.pc`文件,确保`includedir`和`libdir`的路径正确指向你的OpenCV安装路径。 4. 创建一个新的C++文件,使用OpenCV库进行编码。在你的C++文件中,你需要包含OpenCV的头文件和库文件,并写入相应的代码来使用OpenCV的功能。 5. 编译你的C++代码。你可以使用以下命令来编译: ``` g++ your_code.cpp -o output `pkg-config --cflags --libs opencv4` ``` 这将会将你的代码编译成一个名为`output`的可执行文件,并链接OpenCV库。 通过以上步骤,你应该能够在Ubuntu上成功使用OpenCVC++库进行编程。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [ubuntu OpenCV C++安装](https://blog.youkuaiyun.com/weixin_37707670/article/details/126637865)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [Ubuntu20环境下OpenCVC++环境配置](https://blog.youkuaiyun.com/qq_39149619/article/details/131679872)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值