下载好后home文件夹中就有下载好的安装包,然后我们对安装包进行解压,我下载的是opencv3.3.1在这里插入图片描述
所示执行的命令是:
卸载原先的opencv
1. $ sudo make uninstall
2. $ cd ..
3. $ sudo rm -r build
4. $ 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*
unzip opencv-3.3.1.zip
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.通过终端进入opencv文件夹,新建build文件,进入build文件等等操作,代码如下
cd opencv-3.3.1 # 进入opencv文件夹
mkdir build # 创建build文件夹
cd build # 进入build文件夹
make clean
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local .. #最后的两个点不能省
如果构建contrib需要追加如下指令(可选):
cmake -D OPENCV_ENABLE_NONFREE:BOOL=ON -D CMAKE_BUILD_TYPE=Release -D SFM_DEPS_OK=TRUE -D OPENCV_EXTRA_MODULES_PATH=../opencv_contrib-3.4.6/modules -D BUILD_opencv_legacy=OFF -D BUILD_TIFF=ON -D ENABLE_AVX=ON -D WITH_OPENGL=ON -D WITH_OPENCL=ON -D WITH_IPP=ON -D WITH_TBB=ON -D WITH_EIGEN=ON -D WITH_VTK=ON -D WITH_V4L=ON -D BUILD_EXAMPLES=OFF -D INSTALL_C_EXAMPLES=OFF -D INSTALL_PYTHON_EXAMPLES=OFF -D BUILD_TESTS=OFF -D BUILD_PERF_TESTS=OFF -D CMAKE_INSTALL_PREFIX=/usr/local ..
sudo make -j5 #编译过程十分的漫长
sudo make install #安装完成
4.opencv的编译就已经完成了,下面测试是否安装成功
在终端打开Python 输入:
import cv2 # 如果没有报错就说明已经安装成功了
在这里插入图片描述
下面进行的是opencv环境的配置,首先需要将opencv的库添加至路径
sudo gedit /etc/ld.so.conf.d/opencv.conf
接着在打开的文本中添加(可能打开的是空文本,直接在最后添加上下面这句话即可)
/usr/local/lib
执行下面的代码让程序生效
sudo ldconfig
配置 bash
sudo gedit /etc/bash.bashrc
在打开的文档末尾添加:
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
保存 执行下面的代码使程序生效
source /etc/bash.bashrc
在这里就配置成功了。
在opencv-3.4.0/smaples/cpp/example_cmake目录下执行下面的代码测试
cmake .
make
./opencv_example
如果输出“hello opencv”就代表配置成功了。
pkg-config --modversion opencv 命令可验证opencv版本
问题一:如果debug存在TBB_ENV_LIB_DEBUG-NOTFOUND
请更改:CMakeCache.txt
To the same value as TBB_ENV_LIB:FILEPATH
//Path to a library.
TBB_ENV_LIB:FILEPATH=/usr/lib/x86_64-linux-gnu/libtbb.so
//Path to a library.
TBB_ENV_LIB_DEBUG:FILEPATH=/usr/lib/x86_64-linux-gnu/libtbb.so