参考http://lib.youkuaiyun.com/article/opencv/25737
http://blog.youkuaiyun.com/yehuohan/article/details/51327465
ubuntu16.04安装opencv3.1.0+Qt5.6.0
1、安装依赖的库
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 1
- 2
- 3
- 4
- 5
- 6
- 7
Q1 :Unable to locate package build-essential
在安装 g++ 等工具时 会提示 Unable to locate package build-essential,这种情况下先执行 sudo apt-get update 更新一下, 更新完。继续 sudo apt-get install build-essential
在文件无法保存的时候, 可以使用命令 sudo vim ./etc/apt/sources.list 可以实现保存
其实错误信息已经很明确了,Unable to locate packet就是无法找到包嘛,那还不赶紧sudo apt-get update下!sudo 以其他身份来执行指令sudo可让用户以其他的身份来执行指定的指令t。在/etc/sudoers中设置了可执行sudo指令的用户。若其未经授权的用户企图使用sudo,则会发出警告的邮件给管理员。用户使用sudo时,必须先输入密码,之后有5分钟的有效期限,超过期限则必须重新输入密码。
apt-get 一个下载的命令参数有install 安装 update 更新 remove 移除 check 检查。比如: sudo apt-get install samba-3.0-7 下载并安装一个名字为samba-3.0-7的程序
2、下载源码
- 在官网下载:http://opencv.org/downloads.html
- 或着用git clone:
- 1
- 2
- 3
- 4
- 1
- 2
- 3
- 4
3、使用cmake安装
- 解压源码包,得到opencv-3.1.0 (用git的话,即是opencv310)
- 然后建立编译目标文件夹
- 1
- 2
- 1
- 2
- 使用cmake或着用cmake-gui生成Makefile
(1) cmake方式
- 1
- 2
- 3
- 1
- 2
- 3
(2) cmake-gui方式
cmake-gui即cmake和图形界面版程序:
先安装cmake-gui
- 1
- 1
然后打开cmake-gui:
“/opencv-3.1.0” 和 “/opencv-3.1.0/build”换成自己的,然后先点 Configure 然后点 Generate。
在Configure过程中,若出现
– ICV: Downloading ippicv_linux_20141027.tgz…
。。。。
则下载 ippicv_linux_20141027.tgz,替换掉 opencv-3.1.0/3rdparty/ippicv/downloads/linux-8b449a536a2157bcad08a2b9f266828b 下的同名文件即可,注意替换后,重新编译,或着一开始就放进去
4、安装OpenCv
在opencv3.1.0/build下,终端运行:
- 1
- 2
- 3
- 4
- 1
- 2
- 3
- 4
5、opencv程序编写实例
- 建立文件夹test
- 编写test.cpp
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
方法一:使用CMake生成OpenCv工程
- 编写CMakeLists.txt
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 编译程序
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
方法二:使用Qt作为IDE环境生成opencv工程
- 配置qt的cmake构建方案(需要安装cmake):
1、打开Qt,找到 “工具->选项->构建和运行->构建套件”,如下图设置:
其中cmake安装好,Qt会自动配置好 “CMake” 参数的
2、开始新建opencv工程
新建工程 - 选择Non-Qt project 然后先Plain C++ Application
3、然后下一步
4、 选择CMake
5、只选择刚配置的构建套件
6、点完成
7、会出现下图对话框,点 “执行CMake” 就可以点 ”完成“ 了
8、然后编定main.cpp和CMakeLists.txt文件,CMakeLists.txt要增加最后两行代码
然后运行即可出结果,这里要注意的是,如果使用了”影子构建”(即项目构建生成的文件单独放在一个文件夹中,如build-untitled-Console_GCC_32bit_with_cmake-Default这样的文件夹),则生成的可执行文件也在build-untitled-Console_GCC_32bit_with_cmake-Default文件夹中,上述代码要想显示出图像,就需要将图片文件pic.jpg放在此文件夹中。
9、其实,也可以在Qt中直接 Open Project,然后选择打开CMakeLists.txt,就可以从第5步开始配置项目,过程一样的。
方法三:使用Makefile生成opencv工程
- main.cpp使用之前的即,建立如下Makefile文件
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 然后make,即可编译,接着就可以运行了
方法四:使用qmake生成opencv工程
qmake需要编写pro文件,如下test.pro:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
然后用如下命令
- 1
- 2
- 3
- 4
- 5
- 1
- 2
- 3
- 4
- 5
有了pro文件,也可以用qt creator打开工程,然后同样可以运行。
同时,也可以使用qt creator建立plain c++项目,使用qmake,然后改pro文件。