首先要感谢这些人所写到博客:http://blog.youkuaiyun.com/CupidYzw97/article/details/74857467。
准备工作:由于官网上下载太慢,这里给出了opencv3.2到下载地址:https://github.com/hanxuan123/opencv3.2
里面有3个文件都是待会要用到,准备好了就可以开始了.
一、安装依赖
在终端输入以下三条命令,安装所需要的依赖
1. sudo apt-get install build-essential
2. sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
3. sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
二、新建一个文件夹,将下载好的all文件夹里面到opencv3.2.0 zip解压到进去,然后把opencv_contrib-3.2.0.zip解压到opencv3.2.0文件夹中,同时在该目录下生成一个新文件命名为build.然后cd build开始进行编译.
第一步:
cd opencv-3.2.0/build
第二步:
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_EXTRA_MODULES_PATH=
/home/hanxuan/opencv-3.2.0/opencv3.2.0/opencv_contrib-3.2.0/modules/ ..
注意这里 PATH =/home/hanxuan/opencv-3.2.0/opencv3.2.0/opencv_contrib-3.2.0/modules/ ..需要根据自己文件夹到位置进行相应变换.此过程中可能遇到的问题:
(由于网络原因,可能出现ippicv_linux_20151201.tgz(这个文件在我上传的all文件夹中已经给出)无法在终端下载的情况,则可以先单独下载ippicv_linux_20151201.tgz之后,把其移动到终端所提示的路径(终端会提示该路径找不到文件),如路径/opencv-3.2.0/3rdparty/ippicv/downloads/linux-808b791a6eac9ed78d32a7666804320e/
移动的时候,可以另外打开一个终端操作:
sudo mv ippicv_linux_20151201.tgz /opencv-3.2.0/3rdparty/ippicv/downloads/linux-808b791a6eac9ed78d32a7666804320e
三、
make和install
第1步:
sudo make
第2步:sudo make install
至此我们的opencv和opencv_contrib就编译安装完成了。一定要记着sudo make install 否则会出现自己的程序在编译时提示:error:为声明的定义.接下来我们来试试opencv是否安装好,在终端输入(ubuntu自带的是2.7.2,我换了3.5到没成功所以这里用的是2.7版本python)
python
>>>import cv2
>>>cv2.__version__
>>>'3.2.0'
#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} )
然后在该目录下执行 cmake. 然后make然后把图片lena.jpg放入该文件夹中,
接下来执行命令./DisplayImage lena.jpg即可以成功显示