我之前没有把资料查完整,安装了opencv3之后发现SIFT算法已经被移走了,听说是还在测试中,所以就移到了opencv_contrib模块里,所以这里分享一下安装心得啊!
ps:其实回去装opencv2也许更方便,毕竟资料更多,我也只是想挑战一下。
环境:ubuntu15.10+opencv3.2.0 with extra module opencv_contrib
1.下载资料并解压
opencv资源下载官网地址:http://opencv.org/downloads.html
opencv_contrib下载地址:https://github.com/opencv/opencv_contrib
2.安装依赖
sudo
apt-get
install
build-essential
sudo
apt-get
install
cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo
apt-get
install
python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
3.CMake Opencv源码:
建立一个编译目录(例如:/build)把cmake后的文件都放在这里边。
cd
~
/opencv
mkdir
build
cd
build
然后开始cmake,这里需要注意几个cmake的参数,比较重要。
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=
/usr/local
-D OPENCV_EXTRA_MODULES_PATH=<path to opencv_contrib
/modules/
> ..
注:命令中最后的" .. "(空格+两个点)千万不要忘记
其中 CMAKE_BUILD_TYPE=Release / Debug
OPENCV_EXTRA_MODULES_PATH 就是用来指定要编译的扩展模块,后边加上刚下载的opencv_contrib模块的路径即可。
比如我的命令具体如下:cmake -DOPENCV_EXTRA_MODULES_PATH=/usr/opencv-3.2.0/opencv_contrib-master/modules/ ..
[注]为了方便找,我把opencv_contrib-master解压后放到了opencv3.2.0文件夹下。
4.把代码编译成可执行文件,这里官方推荐使用多进程编译,推荐七个进程:
make
-j7
5.安装
执行命令:
sudo
make
install
6.问题及解决
下载文件失败,没关系,多试几次就好了
参考资料:
https://github.com/opencv/opencv_contrib/blob/master/README.md
http://www.cnblogs.com/asmer-stone/p/5089764.html