1安装OpenCV3.4.0+contrib
进入官网 : http://opencv.org/releases.html , 选择 3.4.0 版本的 sources , 下载 opencv-3.4.0.zip 。
unzip opencv-3.4.0.zip unzip opencv_contrib.3.4.0.zip -d opencv-3.4.0
将opencv_contrib解压到了opencv-3.4.0目录下。
安装依赖库和cmake ,如果提醒需要apt-get update,那就先sudo su进入root权限,再sudo apt-get update,然后在执行下面命令
sudo apt-get install cmake
sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg.dev libtiff4.dev libswscale-dev libjasper-dev
1.1正常安装
命令行进入已解压的文件夹 opencv-3.4.0 目录下,执行:
mkdir build # 创建编译的文件目录 cd build cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local .. make -j8 #编译
在98%的时候会等很久很久,属于正常现象。编译过程很顺利,编译成功后安装:
sudo make install #安装
安装完成后通过查看 opencv 版本验证是否安装成功:
pkg-config --modversion opencv
卸载OpenCV的方法:进入OpenCV解压文件夹中的buid 文件夹:
cd /home/ccem/opencv-3.4.0/build
运行:
sudo make uninstall
然后把整个opencv-3.4.0文件夹都删掉。随后再运行:
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
把一些残余的动态链接文件和空文件夹删掉。有些文件夹已经被删掉了所以会找不到路径。
1.2cuda版本opencv安装
这里主要说一下不同的配置,主要是要编译CUDA版本的OpenCV,所以在cmake的时候要将开关打开。
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D INSTALL_PYTHON_EXAMPLES=ON -D INSTALL_C_EXAMPLES=ON -D OPENCV_EXTRA_MODULES_PATH=../opencv_contrib-3.4.0/modules -D PYTHON3_EXECUTABLE=/usr/bin/python3 -D PYTHON_EXECUTABLE=/usr/bin/python -D WITH_TBB=ON -D WITH_V4L=ON -D WITH_QT=ON \ -D WITH_GTK=ON -D WITH_OPENGL=ON -D BUILD_EXAMPLES=ON -D WITH_CUDA=ON -D BUILD_TIFF=ON -D INSTALL_PYTHON_EXAMPLES=ON ..
cmake之后,可以看到cuda模块的都配置成功了。
接下来就执行make
编译完成。
执行安装。
sudo make install
安装完成。
用下面的命令查看一下安装结果。
pkg-config opencv --cflags --libs
2 配置环境
sudo make install 执行完毕后OpenCV编译过程就结束了,接下来就需要配置一些OpenCV的编译环境首先将OpenCV的库添加到路径,从而可以让系统找到
sudo gedit /etc/ld.so.conf.d/opencv.conf
执行此命令后打开的可能是一个空白的文件,不用管,只需要在文件末尾添加
/usr/local/lib
执行如下命令使得刚才的配置路径生效
sudo ldconfig
这个时候可能会提示错误如下图所示(上部分)
sbin/ldconfig.real: /usr/lib/nvidia-375/libEGL.so.1 不是符号连接
/sbin/ldconfig.real: /usr/lib32/nvidia-375/libEGL.so.1 不是符号连接
出现这个错误可能是由于系统BUG所致
只需要分别输入上面图下部分的四行命令就可解决
sudo mv /usr/lib/nvidia-375/libEGL.so.1 /usr/lib/nvidia-375/libEGL.so.1.org sudo mv /usr/lib32/nvidia-375/libEGL.so.1 /usr/lib32/nvidia-375/libEGL.so.1.org sudo ln -s /usr/lib/nvidia-375/libEGL.so.375.39 /usr/lib/nvidia-375/libEGL.so.1 sudo ln -s /usr/lib32/nvidia-375/libEGL.so.375.39 /usr/lib32/nvidia-375/libEGL.so.1
配置bash
sudo gedit /etc/bash.bashrc
在最末尾添加
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig export PKG_CONFIG_PATH
保存,执行如下命令使得配置生效
source /etc/bash.bashrc
更新
sudo updatedb
找到
cd到opencv-3.4.0/samples/cpp/example_cmake目录下
我们可以看到这个目录里官方已经给出了一个cmake的example我们可以拿来测试下
按顺序执行
cd ../samples/cpp/example_cmake cmake . make ./opencv_example
即可看到打开了摄像头,在左上角有一个hello opencv
即表示配置成功
原文地址:https://www.cnblogs.com/kekeoutlook/p/10593477.html