官方教程:https://docs.opencv.org/master/d7/d9f/tutorial_linux_install.html
获取源码
获取master
进入安装目录,如
git clone https://github.com/opencv/opencv
将会开始下载opencv,在下载opencv的同时,打开另一个终端,输入如下命令:
git clone https://github.com/opencv/opencv_contrib
将会开始下载opencv-contrib。
下载完成后在安装目录会得到两个文件夹,名字分别为opencv和opencv-contirb
##选择版本
分别进入opencv和opencv-contrib目录,执行一下命令选择版本
git checkout 3.2.0
编译安装
cmake和install
在openv和opencv-contrib目录旁建立release目录,进入该目录运行如下命令:
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local/opencv/opencv320 -D BUILD_NEW_PYTHON_SUPPORT=ON -D OPENCV_GENERATE_PKGCONFIG=ON -D OPENCV_EXTRA_MODULES_PATH=/home/ros05/opencv/opencv3.2.0/opencv_contrib/modules ../opencv
make -j8 # 其中8代表8核编译,根据自己的机器决定
sudo make install
其中-D后面对应各种配置选项需要根据自身情况进行设置,说明如下:
-D CMAKE_INSTALL_PREFIX=/usr/local/opencv/opencv320
用于选择安装目录,尽量设定自己的目录-D BUILD_NEW_PYTHON_SUPPORT=ON
是否支持Python-D OPENCV_GENERATE_PKGCONFIG=ON
如果需要用到makefile进行编译,则需要开启-D OPENCV_EXTRA_MODULES_PATH=/home/ros05/opencv/opencv3.2.0/opencv_contrib/modules
nonfree模块的路径
添加环境变量
install之后你可以通过查看环境变量来确认是否安装成功:
>>>echo $OpenCV_DIR
/usr/local/opencv/opencv410/lib/cmake/opencv4:
>>>pkg-config --cflags opencv # 如果是安装的opencv4版本,需要将opencv改为opencv4
-I/usr/local/opencv/opencv410/include/opencv4/opencv -I/usr/local/opencv/opencv410/include/opencv4
如果以上环境变了输出的值是对的,那么你已经安装成功了,否则你需要编辑环境变量,操作如下:
编辑.bashrc文件
gedit ~/.bashrc
在其中写入
export PKG_CONFIG_PATH=/usr/local/opencv/opencv410/lib/pkgconfig:$PKG_CONFIG_PATH
export LD_LIBRARY_PATH=/usr/local/opencv/opencv410/lib:$LD_LIBRARY_PATH
export OpenCV_DIR=/usr/local/opencv/opencv410/lib/cmake/opencv4:$OpenCV_DIR
cmake时如果出现下载某一个文档很久时,停止cmake手动下载相关文件放在对应目录下即可:
- 下载ippicv_linux_20151201.tgz放在opencv/3rdparty/ippicv/downloads/linux-808b791a6eac9ed78d32a7666804320e目录下
- 下载protobuf-cpp-3.1.0.tar.gz放在opencv_contrib/modules/dnn/.download/bd5e3eed635a8d32e2b99658633815ef/v3.1.0目录下
- 下载vgg_generated_48.i放在opencv_contrib/modules/xfeatures2d/cmake/.download/e8d0dcd54d1bcfdc29203d011a797179
- 下载vgg_generated_64.i放在opencv_contrib/modules/xfeatures2d/cmake/.download/???
- 下载vgg_generated_80.i放在opencv_contrib/modules/xfeatures2d/cmake/.download/???
卸载
如果你cmake时没有指定特定安装目录,而是到/usr/loacl之类的地方,请参考博客:Opencv 安装/卸载教程进行卸载。一般请用_prefix选项指定特定目录,这样卸载时直接删除就比较方便。
cd opencv-3.1.0/release/
sudo make uninstall
cd ..
sudo rm -r release
sudo rm -r /usr/local/include/opencv2 /usr/local/include/opencv /usr/include/opencv /usr/include/opencv2 /usr/local/share/opencv /usr/local/share/OpenCV /usr/share/opencv /usr/share/OpenCV /usr/local/bin/opencv* /usr/local/lib/libopencv*
sudo apt-get –purge remove opencv-doc opencv-data python-opencv