Ubuntu18.04 安装opencv 4.8.0教程(亲测可用)

1. 安装准备

        安装前需要下载一些必须的依赖项。 不同版本opencv依赖会有不同,具体见官网opencv安装

sudo apt-get install build-essential   
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev

        常出现的问题:无法定位 libjasper-dev

sudo add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"
sudo apt update
sudo apt install libjasper1 libjasper-dev

Releases - OpenCV

2. 安装opencv

sudo apt-get install git
git clone https://github.com/opencv/opencv.git

需要注意的是:opencv的viz模块需要单独处理!!!!!

坑爹啊这么常用的模块不放到source里面。

在安装 OpenCV 的 viz 模块之前,请务必确认以下关键步骤:

  1. 首先,检查您的 OpenCV 源代码目录中的 modules 文件夹。特别注意是否存在 viz 文件夹。
  2. 如果 viz 文件夹缺失,即使按照网上的各种指南进行操作,也无法成功安装 viz 模块。
  3. 若发现 viz 文件夹不存在,您可以从 OpenCV 的额外模块仓库获取: https://github.com/opencv/opencv_contrib
  4. 在 opencv_contrib 仓库的 modules 目录中,您将找到 viz 文件夹。
  5. 下载 viz 文件夹,并将其复制到您的 OpenCV 源代码的 modules 目录中。
  6. 确保复制的 viz 文件夹版本与您的 OpenCV 版本相匹配,以避免潜在的兼容性问题。
  7. 完成这些步骤后,您就可以按照标准流程继续编译和安装 OpenCV,包括 viz 模块在内。

通过执行这些操作,您可以确保 viz 模块的所有必要文件都已就位,从而大大提高成功安装的可能性。记住,在开始编译过程之前,仔细检查和准备必要的文件是非常重要的。

# 也可以直接从官网中下载
mkdir build
cd build

cmake \
-D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D WITH_GTK=ON \
-D OPENCV_GENERATE_PKGCONFIG=YES \
-D WITH_VTK=ON \
-D PYTHON_EXECUTABLE=/usr/bin/python3 \
..


# 另外的版本
cmake \
-D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D WITH_GTK=ON \
-D OPENCV_GENERATE_PKGCONFIG=YES \
-D OPENCV_EXTRA_MODULES_PATH=/home/fairlee/opencv-4.8.0/opencv_contrib-4.8.0/modules/ \
-D WITH_VTK=ON \
-D PYTHON_EXECUTABLE=/usr/bin/python3 \
..

OPENCV_GENERATE_PKGCONFIG=YES:表示自动生成OpenCV的pkgconfig文件,否则需要自己手动生成。opencv_contrib的目录需要根据自己电脑更改

非常干净的,没有任何“警告”的cmake . .

2.1 编译和安装

# 返回当前系统的处理器核心数量
make -j`nproc`  

 编译代码时快的飞起!!!!!!!!!!!!! 

安装

sudo make install

3. 环境变量配置

3.1 将OpenCV的库添加到系统路径

3.1.1配置ld.so.conf文件

sudo gedit /etc/ld.so.conf

在文件中加上一行

include /etc/ld.so.conf.d/*.conf
include /usr/local/lib

3.1.2 手动生成opencv.conf文件

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

添加内容如下

/usr/local/lib

以上两种方法配置好后,执行如下命令使得配置的路径生效

sudo ldconfig

3.1.3 生成opencv4.pc文件

sudo touch /usr/local/lib/pkgconfig/opencv4.pc

内容如下 (这个内容应该是自动生成的,或者安装后就有opencv4.pc文件)

用下面的命令进行查看:

sudo gedit /usr/local/lib/pkgconfig/opencv4.pc

86f259c8f2674cf3a179732d38ed2b94.png

3.1.4 配置系统bash

        因为在cmake时,选择了自动生成OpenCV的pkgconfig文件,在/usr/local/lib/pkgconfig路径可以看到文件,确保文件存在,执行如下命令

sudo gedit /etc/bash.bashrc

        在文末添加

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

        保存退出,然后执行如下命令使配置生效

source /etc/bash.bashrc

4. 查看版本

pkg-config --modversion opencv4
pkg-config --cflags opencv4
pkg-config --libs opencv4
  • pkg-config --modversion opencv4 作用:显示已安装的 OpenCV4 的版本号。 意义:这可以帮助你确认系统中安装的 OpenCV 版本,对于确保代码兼容性和排查版本相关问题非常有用。
  • pkg-config --cflags opencv4 作用:显示编译 OpenCV4 程序时需要的编译器标志(compiler flags)。 意义:这些标志通常包括头文件的包含路径(-I 选项)。在编译使用 OpenCV 的程序时,你需要将这些标志添加到编译命令中,以确保编译器能找到必要的头文件。
  • pkg-config --libs opencv4 作用:显示链接 OpenCV4 库时需要的库文件和链接器标志。 意义:这包括库文件的路径和名称(通常是 -L 和 -l 选项)。在链接使用 OpenCV 的程序时,你需要将这些标志添加到链接命令中,以确保链接器能找到并链接所有必要的 OpenCV 库。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值