• Ubuntu 20.04下OpenCV的安装


    程序之美

    前言

    OpenCV是一个基于Apache2.0许可(开源)发行的跨平台计算机视觉和机器学习软件库,可以运行在Linux、Windows、Android和Mac OS操作系统上。我们生活中遇到的很多图形图像处理的应用和软件都或多或少的会借鉴或应用此库,
    故此,亲自研究,实践,Linux下的OpenCV,将调试过程中所遭所遇进行详细讲解,注意事项进行一一列举,希望能够帮助到各位初学OpenCV的小伙伴,避免走弯路,费时费力。

    主体

    本篇我们先学习下OpenCV在Ubuntu 20.04下的编译与安装。

    下载

    进入opencv官网下载
    选择sources下载相应版本的压缩包。
    我这里是github下载的,下载地址为:https://github.com/opencv/opencv
    解压文件,放到home/(用户名)/目录下,我这里下载的是OpenCV-4.6.0。
    在这里插入图片描述

    安装命令

    unzip OpenCV-4.6.0.zip
    cd opencv
    
    mkdir build 
    cd build
    cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
    make -j4
    make install
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    如果按照make -j${proc}进行编译,常出现卡死状态,后来改为make -j4就能顺利通过了。

    环境配置

    编辑/etc/ld.so.conf

    sudo gedit /etc/ld.so.conf
    
    • 1

    在文件中加上一行

    include /usr/local/lib
    
    • 1

    保存文件退出,编辑 /etc/bash.bashrc 文件

    sudo gedit /etc/bash.bashrc 
    
    • 1

    在文件末尾加上几行

    PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
    export PKG_CONFIG_PATH
    
    • 1
    • 2

    保存文件退出。

    查看是否opencv成功:

    pkg-config --modversion opencv # 出现版本号即成功
    
    • 1

    将opencv加入环境变量:

    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib/
    
    • 1

    所遇问题

    在这里插入图片描述

    Package opencv was not found in the pkg-config search path.
    Perhaps you should add the directory containing `opencv.pc'
    to the PKG_CONFIG_PATH environment variable
    No package 'opencv' found
    
    • 1
    • 2
    • 3
    • 4

    该如何解决呢?

    方法一,尝试未解决:

    sudo apt install libopencv-dev htm
    
    • 1

    方法二,解决问题。
    方法如下:

    cd /usr/local/lib
    
    sudo mkdir pkgconfig
    cd pkgconfig
    sudo touch opencv.pc
    sudo vim opencv.pc
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    首先建一个新的文件夹:pkgconfig
    然后cd到这个文件夹下,新建opencv.pc文件;
    再打开opencv.pc文件,文件内输入:

    prefix=/usr/local
    exec_prefix=${prefix}
    includedir=${prefix}/include
    libdir=${exec_prefix}/lib
    
    Name: opencv
    Description: The opencv library
    Version:4.1.2
    Cflags: -I${includedir}/opencv4
    Libs: -L${libdir} -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
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    其中version是你的opencv版本
    最后:wq保存退出。

  • 相关阅读:
    智能家居项目开发准备工作
    pandas合并
    持续投入商品研发,叮咚买菜赢在了供应链投入上
    全网最详细,软件测试-性能测试岗面试题总结(大全)
    机器学习基础(5)—— 模型选择之性能度量
    编码转换 C#
    selenium.chrome怎么写扩展拦截或转发请求?
    【论文速读】| GPTFUZZER:利用自动生成的越狱提示对大型语言模型进行红队测试
    常见荧光染料修饰多种基团及其激发和发射波长数据一览数据
    JVM诊断及工具笔记(4) 使用visualvm分析JVM堆内存泄漏
  • 原文地址:https://blog.csdn.net/hnjzfwy/article/details/125529893