ubuntu18.04安装openCV3.2.0详解(附加源码+第三方库)


openCV 简单介绍

OpenCV 的全称是 Open Source Computer Vision Library,是一个开源代码计算机视觉库。OpenCV 其实就是一堆 C 和 C++语言的源代码文件,这些源代码文件中实现了许多常用的计算机视觉算法,可用于开发实时的图像处理、计算机视觉以及模式识别程序,目前在工业界以及科研领域广泛采用。


1、opencv 安装准备工作

1.1 安装环境

Ubuntu18.04 LTS
opencv3.2.0
contrib3.2.0

1.2 源码获取

软件百度网盘链接:

链接:https://pan.baidu.com/s/1Mjq1n6Yj62iwVqLFgfULkQ
提取码:czeu

软件官网下载地址:

https://github.com/opencv/opencv/archive/3.2.0.tar.gz
https://github.com/opencv/opencv_contrib/archive/3.2.0.tar.gz

2、opencv 具体安装步骤

2.1 安装 opencv 所需依赖库

sudo apt-get install cmake libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg-dev libpng-dev libtiff-dev libtiff5-dev libswscale-dev libjasper-dev libcurl4-openssl-dev libtbb2 libdc1394-22-dev

2.1.1 解决:E: 无法定位软件包 libjasper-dev

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install libjasper1 libjasper-dev --fix-missing

2.1.2 备注: 如果安装依赖库失败,可根据失败提示执行以下命令单独安装(再重新执行2.1步骤):

sudo apt-get update		//更新软件列表
sudo apt-get upgrade    //更新软件
sudo apt-get install xxxx --fix-missing    //xxxx 表示需要安装的库

2.2 解压 openCV 源码

2.2.1 将下载的两个源码文件拷贝到 Ubuntu 中并解压:

cd /my_work/project/openCV	//安装openCV的路径(根据实际情况选择即可)
cp ~/sambashare/opencv-3.2.0.tar.gz ./
cp ~/sambashare/opencv_contrib-3.2.0.tar.gz ./
tar -xzf opencv-3.2.0.tar.gz
tar -xzf opencv_contrib-3.2.0.tar.gz

2.3 配置 opencv

2.3.1 创建编译安装目录:

mkdir opencv-3.2.0/build
mkdir opencv-3.2.0_install

2.3.2 通过 cmake 工具生成 Makefile:

cd opencv-3.2.0/build
cmake -D CMAKE_BUILD_TYPE=Release -D OPENCV_GENERATE_PKGCONFIG=ON -D CMAKE_INSTALL_PREFIX=/my_work/project/openCV/opencv-3.2.0_install -D OPENCV_EXTRA_MODULES_PATH=/my_work/project/openCV/opencv_contrib-3.2.0/modules ..
  • /my_work/project/openCV 这个路径,大家要根据自己的实际情况修改。
  • cmake 配置途中需要下载:
    • ippicv_linux_20151201.tgz 位于:opencv-3.2.0/3rdparty/ippicv/downloads/linux-808b791a6eac9ed78d32a7666804320e
    • protobuf-cpp-3.1.0.tar.gz 位于:opencv_contrib-3.2.0/modules/dnn/.download/bd5e3eed635a8d32e2b99658633815ef/v3.1.0/
    • 一堆 .i 文件位于:opencv_contrib-3.2.0/modules/xfeatures2d/cmake/.download/
    • 如果网速实在太慢可以(ctrl+c)中断 cmake,可直接拷贝下载好的文件到相应目录,然后再重新执行上面的 cmake 命令。
    • 以上所有文件我都给大家准备好了,百度云盘直接下载:
      链接:https://pan.baidu.com/s/1bgcQtYceX9XSLZikxfaf9w
      提取码:dfkf
    • 以上所有文件在github的获取方式,也给大家整理了相关链接(拿走不谢~~):
    1. ippicv_linux_20151201.tgz
    2. protobuf-cpp-3.1.0.tar.gz
    3. 所有.i文件(缺vgg_generated_48.i)
    4. vgg_generated_48.i

2.4 编译安装 opencv

进入 opencv-3.2.0/build 目录完成编译安装(该过程根据不同配置的计算可
能需要 20 分钟左右):

make -j8
make install

2.5 opencv 环境配置

2.5.1 添加 opencv 库:
打开或创建 opencv.conf 文件, 并添加 opencv 安装路径:

$ vi /etc/ld.so.conf.d/opencv.conf    //打开或创建opencv.conf文件, 添加以下内容:
/my_work/project/OpenCV/opencv-3.2.0_install/lib    //opencv安装路径
  • 重复啰嗦一次: /my_work/project/OpenCV 这个路径,大家要根据自己的实际情况修改。

2.5.2 使 opencv 配置文件生效:

sudo ldconfig

2.5.3 配置 bash 环境变量:

$ sudo gedit ~/.bashrc    //在文件末尾添加如下内容:
export PKG_CONFIG_PATH=/my_work/project/OpenCV/opencv-3.2.0_install/lib/pkgconfig
$ source ~/.bashrc       //使环境变量立即生效

2.5.4 验证 opencv 环境配置是否成功:

pkg-config --cflags --libs opencv
  • 成功打印:-I/my_work/project/OpenCV/opencv-3.2.0_install/include/opencv

2.6 opencv 测试

2.6.1 修改 opencv-3.2.0/samples/cpp/example_cmake/CMakeLists.txt, 在文件中添加下面一行:

set(OpenCV_DIR /my_work/project/OpenCV/opencv-3.2.0/build)

在这里插入图片描述

2.6.2 然后执行 cmake . 用于生成 Makefile:

cmake .

在这里插入图片描述

2.6.3 执行 make:

make

在这里插入图片描述

2.6.4 执行生成的可执行文件:

./opencv_example
  • 执行结果展示
    在这里插入图片描述

2.6.5 example.cpp 源码:

#include <opencv2/opencv.hpp> 	// 头文件
using namespace cv; 			// 包含cv命名空间

int main()
{
	// 读入一张图片
	Mat img = imread("1.jpg");
	
	// 在窗口中显示载入的图片
	imshow("【载入的图片】",img);
	
	// 等待6000 ms后窗口自动关闭
	waitKey(6000);
}

2.6.7 附加图片(右键图片另存为下载即可):

在这里插入图片描述


总结

今天就给大家介绍到这里啦,创作不易,希望能与大家相互学习、长足共进,同时也希望这篇文章能帮助到大家,尽量少走一些弯路。

  • 22
    点赞
  • 119
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 23
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 23
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

积步千里

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值