opencv编译安装
编译环境安装:
1 | sudo apt-get install build-essential
|
必需包安装:
1 | sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
|
可选包安装:
1 | sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
|
opencv下载:
稳定版
1 | wget https: //github .com /Itseez/opencv/archive/3 .1.0.zip
|
github源代码
1 | git clone git: //github .com /Itseez/opencv .git
|
创建编译的临时目录:
1 2 3 | cd ~ /opencv
mkdir build
cd build
|
注意: 这里假设opencv解压开的或者从github获取的源代码目录在用户主目录下。
生成cmake编译配置:
1 | cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX= /usr/local ..
|
编译:
安装opencv:
运行测试:
1 2 3 | git clone https: //github .com /Itseez/opencv_extra .git
OPENCV_TEST_DATA_PATH=~ /opencv_extra
~ /opencv/build/bin/opencv_test_core
|
一个例子:
首先创建一个目录 test,并进入目录:
其次,创建文件 DisplayImage.cpp 如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | #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;
}
|
接着,创建cmake配置文件 CMakeLists.txt,如下:
1 2 3 4 5 6 | cmake_minimum_required(VERSION 2.8)
project( DisplayImage )
find_package( OpenCV REQUIRED )
include_directories( ${OpenCV_INCLUDE_DIRS} )
add_executable( DisplayImage DisplayImage.cpp )
target_link_libraries( DisplayImage ${OpenCV_LIBS} )
|
最后运行:
参考:
http://docs.opencv.org/3.1.0/d7/d9f/tutorial_linux_install.html
http://docs.opencv.org/3.1.0/db/df5/tutorial_linux_gcc_cmake.html