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
|
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
..
|
编译:
1
|
make
-j4
# runs 4 jobs in parallel
|
安装opencv:
1
|
sudo
make
install
|
运行测试:
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,并进入目录:
1
2
|
mkdir
test
cd
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} )
|
最后运行:
1
|
.
/DisplayImage
psu.jpg
#随便一张图片都行
|
参考:
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