Ubuntu笔记(四)-Ubuntu22.04安装OpenCV4

Ubuntu嵌入式Qt编程+目标检测项目实战_超详细教程(亲自实践)

Ubuntu笔记(四)-Ubuntu22.04安装OpenCV4

本文作者Lawrence,位置未经作者允许禁止转载,谢谢!
以下所有内容,均来源于亲自实战和查询相关资料。

文章目录

    • Ubuntu嵌入式Qt编程+目标检测项目实战_超详细教程(亲自实践)
    • Ubuntu笔记(四)-Ubuntu22.04安装OpenCV4
  • 前言
  • 一、OpenCV4.5.0的下载
  • 二、安装步骤
    • 1.更新和下载cmake、依赖包
    • 2.开始配置Cmake
    • 3、编译安装
    • 4、安装Opencv
    • 4、环境配置
    • 6、验证安装是否成功
    • 7、测试Qt中Opencv的使用
  • 总结


前言

本文主要介绍OpenCV4.5.0在Ubuntu20.04中的安装步骤


一、OpenCV4.5.0的下载

官网下载:OpenCV下载官网点击Sources即可下载OpenCV4.5.0.zip。
Ubuntu笔记(四)-Ubuntu22.04安装OpenCV4_第1张图片
由于OpenCV更新速度比较快,现在4.6版本的也已经出来了,建议大家安装2年前的,比较稳定。下载好之后,解压到home目录下,如下图所示:
Ubuntu笔记(四)-Ubuntu22.04安装OpenCV4_第2张图片

二、安装步骤

1.更新和下载cmake、依赖包

添加opencv所需要的依赖库:
Required Packages
GCC 4.4.x or later
CMake 2.8.7 or higher
Git
GTK+2.x or higher, including headers (libgtk2.0-dev)
pkg-config
Python 2.6 or later and Numpy 1.5 or later with developer packages (python-dev, python-numpy)
ffmpeg or libav development packages: libavcodec-dev, libavformat-dev, libswscale-dev(一些开发用视频解码)
[optional] libtbb2 libtbb-dev
[optional] libdc1394 2.x
[optional] libjpeg-dev, libpng-dev, libtiff-dev, libjasper-dev, libdc1394-dev
[optional] CUDA Toolkit 6.5 or higher

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install build-essential
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev

接下来这块安装时容易出现问题,尤其是在arm架构的Ubuntu上:

sudo apt-get install python3-dev python3-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper1 libjasper-dev libdc1394-dev

特别的:
sudo apt-get install libjasper-dev libdc1394-dev
包errorE: unable to locate 原因:因为树莓派是ARM架构,不支持你当前的源
方法如下:

sudo gedit /etc/apt/sources.list

更换清华源,再加一个xenial-security main

deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-security main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ xenial-security main
sudo apt update

即可解决上述安装包问题,亲测有效。
Ubuntu笔记(四)-Ubuntu22.04安装OpenCV4_第3张图片

2.开始配置Cmake

到OpenCV4.5.0目录下,新建build文件夹,用于存放编译后的文件

cd ~/opencv-4.5.0
mkdir build 
cd build

Cmake编译注意事项:
OPENCV_GENERATE_PKGCONFIG=ON这个配置一定要加上,Linux下我们使用opencv,需要使用pkg-config来进行环境变量的管理,这个软件需要.pc类型的文件作为软件配置信息,如果我们不配置,会出现opencv安装成功但是c编程无法使用的情况
另外就是 CMAKE_INSTALL_PREFIX=/usr/local这个关于安装路径的配置,这里的安装路径是在/usr/local下,这也是opencv的默认配置。
千万注意,最后的两个点点,千万不要删,这个指向CMakeLists.txt所在的目录。
其他编译项:
-D WITH_CUDA=OFF 有cuda编译时改为ON
-D WITH_FFMPEG=ON ffmpeg前提要安装才能ON
需要编译contrib,指定代码路径:
-D OPENCV_EXTRA_MODULES_PATH=/home/ly/opencv_contrib-4.0.0/modules
其他还有好多配置项,需要根据具体应用场景使用,如果只是OpenCV普通应用的话,都无需配置。如下:

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

输出将会如下:表示Cmake编译成功
Ubuntu笔记(四)-Ubuntu22.04安装OpenCV4_第4张图片

3、编译安装

开始编译过程:

sudo make -j4

根据你的处理器修改-f值。如果你不知道你的处理器核心数,你可以输入nproc找到。
编译将会花费几分钟,或者更多,这依赖于你的系统配置。我这边是4.
在这里插入图片描述
编译结果如下图所示:
Ubuntu笔记(四)-Ubuntu22.04安装OpenCV4_第5张图片

4、安装Opencv

sudo make install

4、环境配置

/etc/ld.so.conf.d/加入对于库的.conf文件,首先新建opencv.conf

sudo gedit /etc/ld.so.conf.d/opencv.conf

然后在文件中输入:/usr/local/lib
Ubuntu笔记(四)-Ubuntu22.04安装OpenCV4_第6张图片

保存后终端输入以下代码,将/etc/ld.so.conf.d中的数据读入缓存

sudo ldconfig 

添加pkg-config环境变量,配置bash,修改bash.bashrc文件

 sudo gedit /etc/bash.bashrc

在文末加上

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH

如下图所示:
Ubuntu笔记(四)-Ubuntu22.04安装OpenCV4_第7张图片
保存后退出,终端输入以下命令使配置激活生效

source ~/.bashrc

更新一下:

sudo apt install mlocate
sudo updatedb

6、验证安装是否成功

然后查看一下opencv的版本信息,终端输入 注意是opencv4

pkg-config --modversion opencv4

如下图,正确显示版本号表示opencv安装成功。
在这里插入图片描述

7、测试Qt中Opencv的使用

主要是在.pro文件中:

INCLUDEPATH += /usr/local/include/opencv4
LIBS += /usr/local/lib/libopencv_*.so
main.cpp中编写如下代码:

#include 
using namespace cv;
int main()
{
    Mat img = imread("/home/ly/Desktop/shanghai.jpeg");
    cv::imshow("img",img);
    cv:: waitKey(0);
    return 0;
}

点击运行,只要可以显示图片即可,
Ubuntu笔记(四)-Ubuntu22.04安装OpenCV4_第8张图片
到此,Ubuntu20.04安装OpenCV4,并验证完成。


总结

本文Ubuntu20.04安装OpenCV4.5.0安装和简单Qt测试,记录了安装时候踩过的坑,后续所有目标QT项目图像相关功能测试,都是基于此环境下进行实战演练。亲自实战,有问题欢迎大家评论并联系我,喜欢的话记得点赞哦!

你可能感兴趣的:(Ubuntu嵌入式Qt编程,目标检测项目实战,ubuntu,linux,运维)