最近,很长一段时间都在读项目代码,没有文档,极少量的注释,让我深刻体会到了身为一名程序员最讨厌的四件事是:别人不写注释,别人不写文档,自己写注释,自己写文档。
项目中有一部分内容涉及到opencv的内容,且包括2.x版本和3.x版本,自己本来对图像处理这一块也不是很了解,所以一开始真是一脸????。然后就看是恶补,去网上看了一堆的博客、教程及视频之类的。其中浅墨君的博客给了我很大的帮助,不过浅墨君的教程主要是在Windows下实现,而我实在Linux下做开发,因此中间还是有一点点的不同。
下面的内容主要是根据浅墨君的博客教程,整理的一些opencv的知识,希望没有侵权吧,这里贴出浅墨君的博客地址(https://blog.csdn.net/column/details/opencv-tutorial.html),大家可以去学习。
好了,闲话少说,接下来进入正文,首先说说opencv的安装和配置。主要涉及opencv2.4.9和opencv3.1.0。这里主要以安装opencv3.1.0为例,opencv2.4.9的安装与opencv3.1.0大同小异。
一、源码下载
在官网:http://opencv.org/上找到OpenCV Linux版下载下来。
二、cmake已及依赖库安装
1、安装cmake
1 sudo apt-get install cmake
如果需要安装最新的cmake,可以去cmake官网下载源码,自己编译安装,这里就不详细介绍了。
2、安装依赖库
sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg.dev libtiff4.dev libswscale-dev libjasper-dev
至于这些依赖库具体是做什么,我也不是很了解,这里就不解释啦。总之,想要安装opencv呢,就必须得先安装这些依赖库,这里为自己的不严谨默哀两分钟。
3、编译安装opencv3.1.0
1 $ unzip OpenCV-3.1.0.zip 2 $ cd opencv-3.1.0 3 $ mkdir build 4 $ cd build 5 $ cmake .. 6 $ sudo make -j4 7 $ sudo make install
好了,opencv3.1.0安装完毕,是不是觉得很简单,这里使用cmake编译安装时,没有指定具体的安装路径,则系统会默认将opencv安装在系统路径/usr/local目录下,其中头文件在/usr/local/include下,库文件在/usr/local/lib下。
如果想要将opencv安装自己指定的目录下,则可以安装下列步骤操作:
1 $ unzip OpenCV-3.1.0.zip 2 $ cd opencv-3.1.0 3 $ mkdir build 4 $ cd build 5 $ cmake -DCMAKE_INSTALL_PREFIX=/usr/local/opencv3.1 .. 6 $ sudo make -j4 7 $ sudo make install
此时,就将opencv安装在了/usr/local/opencv3.1下,opencv的所有文件都在这个目录下,方便查询和管理。但这个路径不是系统的默认路径,因此需要修改环境变量,将这个路径加载到环境变量中。方法如下:
1 $ sudo gedit /etc/ld.so.conf.d/opencv.conf 2 末尾加入/usr/local/opencv3.1/lib,保存退出 3 $ sudo ldconfig #使配置生效 4 打开/etc/bash.bashrc; 5 $ sudo gedit /etc/bash.bashrc 6 PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig export 7 PKG_CONFIG_PATH 8 保存退出 9 $ sudo source /etc/bash.bashrc #使配置生效 10 $ sudo updatedb #更新database
好了,至此opencv安装完毕。