Ubuntu下编译安装 OpenCV 3.1
2016-01-25 11:25
453 查看
下载 OpenCV 3.1
登录网站 OpenCV.org 下载OpenCV 3.1。下载Required Packages
[compiler]:build-essential[required]:cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
[optional]:python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
在此处我使用的是
aptitude进行安装的,因为在使用
apt-get时经常出现依赖问题,我也不会解决,使用
aptitude时,出现依赖问题时会更好更方便的解决。
sudo aptitude install build-essential sudo aptitude install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev sudo aptitude install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
使用CMake编译源码
将下载下来的源码解压后,在opencv文件夹内创建一个新的release目录,存放编译的文件。进行编译
cd ~/opencv mkdir release cd release cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
结束后如下:
再 make:
make
结束后如下:
最后Install:
sudo make install
即完成安装!
测试
首先编写cpp文件:#include <stdio.h> #include <opencv2/opencv.hpp> using namespace cv; int main(int argc, char** argv ) { if ( argc != 2 ) { printf("usage: DisplayImage.out <Image_Path>\n"); return -1; } Mat image; image = imread( argv[1], 1 ); if ( !image.data ) { printf("No image data \n"); return -1; } namedWindow("Display Image", WINDOW_AUTOSIZE ); imshow("Display Image", image); waitKey(0); return 0; }
创建一个CMakeLists.txt文件:
cmake_minimum_required(VERSION 2.8) project( DisplayImage ) find_package( OpenCV REQUIRED ) add_executable( DisplayImage DisplayImage.cpp ) target_link_libraries( DisplayImage ${OpenCV_LIBS} )
生成
cd ~/Documents/cpp文件的目录 cmake . make
执行:
./DisplayImage lena.jpg
Lean:
到现在为止,应该是可以使用了。
总结
整体一路下来就一开始出问题了,安装包的依赖问题,一开始使用的是apt-get,折腾了很长时间没解决,一些pkg装不上。后面使用
aptitude后,他自动将一些pkg降级,省了很多事情,也一会儿就全部装上了,后面编译安装执行就没再出现什么问题了。
References
【1】:OpenCV 官方文档–Installation in Linux【2】:OpenCV 官方文档–Using OpenCV with gcc and CMake
相关文章推荐
- 提高 Linux 上 socket 性能
- linux 环境变量设置错误导致 command not found
- 详解Linux系统中su和sudo命令的用法
- SHELL编程四剑客练习--sed
- windows 下mod_proxy_ajp集成Apache2.4与Tomcat7反向代理与均衡负载
- linux基本命令-注销、关机、重起
- linux下安装zabbix客户端
- nginx 匹配问号 rewrite
- Linux定时任务的使用
- 我理解的MVC设计模式和三层架构
- 通用大型网站页面静态化解决方案
- linux修改hostname
- 查看LINUX进程内存占用情况
- Linux查看物理CPU个数、核数、逻辑CPU个数
- Linux C include路径问题
- linux增加swap空间
- 利用wireshark抓取远程linux上的数据包
- 关于 nginx
- linux 重命名文件和文件夹
- 库会因为权限问题无法打开——selinux开启严格模式