1、安装依赖的库
sudo apt-get install build-essential// 必须的,gcc编译环境
sudo apt-get install cmake git // 必须的,包括cmake等工具
sudo apt-get install libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev// 显示使用
2、下载源码
在官网下载:http://opencv.org
或着用git clone:
3、使用cmake安装
- 建立编译目标文件夹
- 1
- 2
- 1
- 2
- 使用cmake或着用cmake-gui生成Makefile
(1) cmake方式
- 1
- 2
- 3
#上步可能出现因某文件下载失败(被墙或网络差),而无法正常安装,此刻可以自行下载该文件,放在正确位置。即可跳过下载过程。
(2) cmake-gui方式
cmake-gui即cmake和图形界面版程序:
先安装cmake-gui
- 1
- 1
然后打开cmake-gui:
“/OpenCV-3.1.0” 和 “/opencv-3.1.0/build”换成自己的,然后先点 Configure 然后点 Generate。
4、安装OpenCv
在opencv3.1.0/build下,终端运行:
如果出现一大堆的错误
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
CUDA_cufft_LIBRARY (ADVANCED)
linked by target "opencv_cudev" in directory E:/opencv/sources/modules/cudev
linked by target "opencv_test_cudev" in directory E:/opencv/sources/modules/cudev/test
linked by target "opencv_core" in directory E:/opencv/sources/modules/core
CUDA_cufft_LIBRARY (ADVANCED)
linked by target "opencv_cudev" in directory E:/opencv/sources/modules/cudev
linked by target "opencv_test_cudev" in directory E:/opencv/sources/modules/cudev/test
linked by target "opencv_core" in directory E:/opencv/sources/modules/core
然后把with_CUDA的状态为:不选择,在此configure没有问题
如果出现错误: Makefile:160: recipe for target 'all' failed
安装anaconda之后,很多默认的编译器都变成了anaconda自带的了,比如python和gcc等。那么系统中的python安装的东西自然是用不了的。两种方式:
第一种方法:
增加 -D WITH_OPENMP=ON
第二种方法:
从系统变量中删除Anaconda路径
sudo gedit ~/.bashrc
注释掉如下两行
#export PATH="/home/lab/SOFT_APP/Anaconda2/bin:$PATH"
source ~/.bashrc
5、扫尾工作
#最后
将ippicv中的64位lib文件复制到/usr/local/lib下位于: ~ /opencv-3.1.0/3rdparty/ippicv/unpack/ippicv_lnx/lib/intel64/libippicv.a
如果编译正常,运行时提示出错:
error while loading shared libraries: libopencv_highgui.so.3.2; cannot open shared object file:no such file or directory
在终端输入:
pkg-config --cflags --libs opencv
看到输出一些-I -L选项如下,即pkg-config 安装正确,OpenCV 安装正确。如未安装,请先安装;如果发现不正确,可以修改/usr/local/lib/pkgconfig/opencv.pc文件,这个文件就是opencv的目录配置。
#加入动态链接库
sudo sh -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'
sudo ldconfig
sudo gedit /etc/profile #在最后加入两行
或者:
因为这是通过opencv的库之间的缺失环节的所以有必要指定ld_libraty_path配置。 PS.lib路径是假设是:export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
我已经尝试了一下,效果很好。
方法一:直接在终端输入以下命令
方法二:编写一个C/C++小程序,打印字符串"CV_VERSION" 或者 "CV_MAJOR_VERSION", "CV_MINOR_VERSION", "CV_SUBMINOR_VERSION"。