Ubuntu安装opencv4

如果你之前安装过OpenCV,必须卸干净:

sudo make uninstall   #
cd ..
sudo rm -r build
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

1、获取opencv安装包:

可以百度云盘搜索,也可以用git clone的方法:

#获取opencv源码
git clone git@github.com:opencv/opencv.git
#获取opencv_contrib源码,根据自己需要,可以不安装
git clone git@github.com:opencv/opencv_contrib.git 

2、安装依赖库

sudo apt-get install build-essential libgtk2.0-dev libvtk7-dev libjpeg-dev libtiff5-dev libjasper-dev libopenexr-dev libtbb-dev

3、安装opencv

以opencv-4.1.0为例,将下载后的解压,按以下命令操作:

3.1 cmake

unzip opencv-4.1.0.zip

cd opencv-4.1.0

mkdir build

cd build

cmake -DCMAKE_BUILD_TYPE=Release -DOPENCV_GENERATE_PKGCONFIG=ON -DCMAKE_INSTALL_PREFIX=/usr/local/opencv ..  #设置安装目录,注意后面的两个点不要丢,否则找不到cmakelist文件
make # 编译 这一步会花一点时间,大概20分钟到一个小时,如果你的cpu性能好,可以用 make -j8

更全的安装命令:

cmake -D CMAKE_BUILD_TYPE=RELEASE -DOPENCV_GENERATE_PKGCONFIG=ON -D CMAKE_INSTALL_PREFIX=/usr/local -D INSTALL_PYTHON_EXAMPLES=ON -D INSTALL_C_EXAMPLES=OFF -D WITH_TBB=ON -D WITH_V4L=ON -D WITH_QT=ON -D WITH_GTK=ON -D WITH_OPENGL=ON -D BUILD_TIFF=ON -D WITH_IPP=ON -D BUILD_EXAMPLES=ON -D WITH_FFMPEG=OFF ..

解决tiff问题:

-D BUILD_TIFF=ON

解决lippicv问题:

-D WITH_IPP=ON

解决“video stream stopped ”问题:

-D WITH_FFMPEG=OFF

注意需要先安装ffmpeg,安装教程:https://blog.csdn.net/sunmingyang1987/article/details/125128525,然后-D WITH_FFMPEG=OFF,如果设置为ON,编译时汇报下面类似错误:

error: ‘CODEC_ID_H264’ was not declared in this scope; did you mean ‘AV_CODEC_ID_H264’?
-DOPENCV_GENERATE_PKGCONFIG=ON opencv4 默认不生产pc文件,需要开启此项
-DCMAKE_INSTALL_PREFIX=/usr/local/opencv opencv的安装路径,可以省略,将安装到默认/usr/local目录
-DOPENCV_EXTRA_MODULES_PATH=…/…/opencv_contrib/modules/ 将 opencv 和 opencv_contrib 一起编译,如果不需要 opencv_contrib 可以将此项去掉

这一步成功后显示如下:
Ubuntu安装opencv4_第1张图片

3.2 make install

输入以下命令:

make -j12

Ubuntu安装opencv4_第2张图片接下来:

sudo make install

Ubuntu安装opencv4_第3张图片至此,安装工作已经完了,接下来进行配置,否则检测不到opencv。

4、配置

输入以下命令:

cd /etc/ld.so.conf.d/
sudo touch opencv.conf
# 根据安装位置
sudo sh -c 'echo "/usr/local/opencv/lib" > opencv.conf'  //注意自己的安装位置
sudo ldconfig

然后,复制.pc文件:

sudo cp -f /usr/local/opencv/lib/pkgconfig/opencv4.pc /usr/lib/pkgconfig/opencv4.pc

注意,我安装的是4.1.0,生成的是opencv4.pc,不是opencv.pc

测试一下:

pkg-config --modversion opencv4

输出:
在这里插入图片描述

附:

如果以前安装失败,最好将之前安装残留的文件完全清除,先进入之前opencv的build文件夹下,然后输入以下命令:

sudo make uninstall
cd ..
sudo rm -r build
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

opencv3的安装和opencv4相同,需要注意的是,如果要安装两个版本的opencv,安装路径最好区分一下,便于以后配置环境,例如可以直接安装到/usr/local/目录下,对应的环境配置如下:

sudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf' 
 
sudo ldconfig

安装其他软件要用到OpenCV时,对于OpenCV3,在CMakelist.txt中:

FIND_PACKAGE(OpenCV REQUIRED)

如果用到opencv4,在上面命令前面添加opencv4路径即可:

set(CMAKE_PREFIX_PATH "/usr/local/opencv") 

报错:/usr/bin/ld: warning: libzstd.so.1.3.7, needed by //home/user/anaconda3/lib/libtiff.so.5

原因使用了其它的tiff编译版本库,cmake的时候加上:

-D BUILD_TIFF=ON -D ENABLE_PRECOMPILED_HEADERS=OFF
not found (try using -rpath or -rpath-link) 

参考文献:

【1】在Ubuntu16.04下安装OpenCV环境,详细执行步骤和测试案例,良心填坑帖
【2】linux环境下编译安装opencv
【3】ubuntu安装opencv 解决ippicv下载问题:ippicv_2019_lnx_intel64_general_20180723.tgz

你可能感兴趣的:(Linux,计算机视觉,机器学习,linux,opencv,深度学习,机器学习)