注意:大部分内容是转载(已经表明出处),一是为了自己可以以后用到,二是记录下一些自己尝试时的问题,给可能出现同样问题的大家一点帮助
1,QT包可能会报错,需要安装,ant安装,g++安装,gcc安装等,
2,编译时候出错最多,各种问题卡着我,装了2天才弄好,附上自己装的时候的命令:sudo cmake -D CMAKE_BUILDTYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/user/local -D WITH_TBB=ON -D WITH_QT=ON
3,有的错误可能会因为默认jdk版本,或者是环境变量配置
4,个人强烈推荐去官网下载,,,,,,
5,补充一下,编译错误经常会提示JNI找不到,或者unavailable java,可能就是jdk路径不对,我当时解决是
重新配置jdk,还有人用了更简便的方法 termial输入 export jdk路径,也能解决。。。
文章链接: http://blog.csdn.net/youngpan1101/article/details/58027049
作者:宋洋鹏(youngpan1101)
邮箱: yangpeng_song@163.com
附上另一个大神的一点点,据说在这也容易出错:
1,系统更新,,
- sudo apt-get update
- sudo apt-get upgrade
2,安装步骤:【Ref_1】【Removing older versions of OpenCV】
再附上一篇,讲Cmake错误的:http://blog.csdn.net/sparkexpert/article/details/70941449
安装 OpenCV
- OpenCV 提供了大量图像开源算法,是计算机视觉中使用极广的图像处理算法库。
-
安装步骤:【Ref_1】【Removing older versions of OpenCV】
- 下载安装包
- 【opencv-3.2.0 编译安装需要的所有安装包_百度云】
- OpenCV 及所需第三方库各个版本下载链接
- 【opencv-3.2.0 编译安装需要的所有安装包_百度云】
-
安装依赖项
[compiler]$ sudo apt-get install build-essential [required]$ sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev [optional]$ sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
- 1
-
解压
$ sudo unzip opencv-3.2.0.zip $ sudo tar -xzvf opencv_contrib-3.2.0.tar.gz
-
编译安装
$ cd opencv-3.2.0 $ sudo mkdir build $ cd build $ sudo cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_EXTRA_MODULES_PATH=<path to opencv_contrib-3.2.0/modules/> ..
- 1
在此过程中会出现下载 ippicv_linux_20151201.tgz 或者 protobuf-cpp-3.1.0.tar.gz 包失败的情况,若下载失败 或者file DOWNLOAD HASH mismatch
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/ 路径下的同名文件。
- 1
-
执行安装
$ sudo make -j4 $ sudo make install
- 1
-
使用命令查看安装版本
$ pkg-config --modversion opencv
- 1
- 下载安装包
-
实例演示【源码包下载】
-
CMakeLists.txt
cmake_minimum_required(VERSION 2.8) project( DisplayImage ) # 寻找OpenCV库 find_package( OpenCV 3.2 REQUIRED ) # 添加头文件 include_directories( ${OpenCV_INCLUDE_DIRS} ) add_executable( DisplayImage DisplayImage.cpp ) # 链接OpenCV库 target_link_libraries( DisplayImage ${OpenCV_LIBS} )
- 1
- 2
- 3
-
DisplayImage.cpp
#include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> #include <stdio.h> #include <iostream> using namespace std; using namespace cv; int main(int argc, char** argv ) { if ( argc != 2 ) { std::cout << "usage: DisplayImage <Image_Path>" << std::endl; return -1; } Mat image; image = imread( argv[1], 1 ); if ( !image.data ) { std::cout << "No image data..." << std::endl; return -1; } namedWindow("Display Image", CV_WINDOW_AUTOSIZE ); imshow("Display Image", image); waitKey(0); return 0; }
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 1
- 20
- 21
- 22
- 23
- 24
- 25
-
编译和运行程序
$ cd build $ cmake .. $ make $ ./DisplayImage <path to image>
-
查看可执行文件的依赖库
$ ldd ./DisplayImage
-