• Linux —— OpenCv编译安装


    背景

         在此之前本人使用OpenCv场景均在Windows系列系统下,那么也没有涉及到Cv加速部分,所以在该系统下OpenCv都是直接使用官方编译好的Release版本。而偶尔的在Ubuntu、Centos、麒麟系统使用OpenCv的情况,也是同事会预先对其编译好。

         于是今天趁着另一个项目的接触,笔者参考了其他同行的文章,边在Ubuntu虚拟机编译边写下这篇文章。以此来对你我提供或多或少的帮助。有不足之处,请一定提出,多谢。

    编译

         1、准备好Ubuntu虚拟机系统或其他Linux系统,下载OpenCv 3.4.0源码 (提取码:9uwl)

         2、下载好源码后,解压后进入该目录,创建build目录。

    // 解压opencv源码
    jxd@jxd-virtual-machine:~$ unzip opencv-3.4.0.zip
    
    // 进入解压源码目录
    jxd@jxd-virtual-machine:~$ cd opencv-3.4.0/
    
    // 在源码目录下创建build目录
    jxd@jxd-virtual-machine:~/opencv-3.4.0$ mkdir build
    
    // 进入build目录
    jxd@jxd-virtual-machine:~/opencv-3.4.0$ cd build/
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

         3、编译

    // cmake配置
    jxd@jxd-virtual-machine:~/opencv-3.4.0/build$ cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
    
    // 4个线程编译
    jxd@jxd-virtual-machine:~/opencv-3.4.0/build$ make -j4
    
    // 编译安装
    jxd@jxd-virtual-machine:~/opencv-3.4.0/build$ sudo make install
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

              本步骤错误集合。(通常在此步出错后百度不出来的,更换OpenCv源码版本再尝试。)

    错误:
    	make[2]: *** [modules/python3/CMakeFiles/opencv_python3.dir/build.make:56...
    解决:
    	如下图,修改该源码内容。添加一个(char *)即可。
    
    • 1
    • 2
    • 3
    • 4

    在这里插入图片描述
         
         4、验证编译

              此时终端输入"opencv_version",若可以查看OpenCv版本即为编译完成。
    在这里插入图片描述
         
         5、配置opencv环境变量

              (1)、编译完成后,会创建opencv.pc文件,搜索是否存在opencv.pc文件。若存在可继续执行后续步骤。若不存在则检查上面cmake部分的参数!
    在这里插入图片描述

              (2)、配置OpenCv库环境变量

    // 1、打开所有用户环境变量配置
    sudo vi /etc/profile
    
    	// 在/etc/profile文件最后,加入下面两行
    	export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
    	export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
    
    // 2、环境变量生效
    source /etc/profile
    
    // 3、搜索出可共享的动态链接库,进而创建出动态装入程序(ld.so)所需的连接和缓存文件
    sudo ldconfig
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

              (3)、验证OpenCv是否安装成功

    // 输出opencv版本
    pkg-config opencv --modversion
    
    // 输出opencv库,通过pkgconfig配置
    pkg-config opencv --libs
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在这里插入图片描述

    关注

    笔者 - jxd

    微信公众号搜索 “码农总动员” 或 微信扫描下方二维码,了解更多你不知道的XX,O(∩_∩)O

    在这里插入图片描述

  • 相关阅读:
    postgresql中控制符带来的数据错觉
    记一次 .NET某收银软件 非托管泄露分析
    牛客网——杨辉三角
    vue 01 创建一个简单vue页面
    Java数组编程练习题(面试题)
    超详细!linux系统nlg-eval安装指南
    AR智能眼镜主板硬件设计_AR眼镜光学方案
    html 滤镜效果 黑白
    从lc560“和为 K 的子数组“带你认识“前缀和+哈希表“的解题思路
    vue开发前的入门准备
  • 原文地址:https://blog.csdn.net/automoblie0/article/details/125558673