ubuntu18.04安装和配置Opencv4.1.0
本文主要描述ubuntu系统安装和配置opencv中遇到的问题的解决方案,并提高详细的安装和配置步骤
一定要注意下面的一些命令的路径一定要根据自己的系统名称适当修改、下载opencv和opencv_contrib到主目录下面进行操作(切记切记)
(1)所需文件:
对于安装和配置一个完全成功的opencv而言、这些工具是必须的
- opencv安装包:
复制这段内容后打开百度网盘App,操作更方便哦。 链接:https://pan.baidu.com/s/1XQLsyx5j84eXzXXuRE0dew 提取码:x0tf–来自百度网盘超级会员V4的分享 - opencv安装和编译过程中所缺少的文件
复制这段内容后打开百度网盘App,操作更方便哦。 链接:https://pan.baidu.com/s/1ZjOxzq_gUk-qZmurmgmoqQ 提取码:w99y–来自百度网盘超级会员V4的分享
(2)安装步骤:
(2-1)更新系统:
建议更换ubuntu的软件源、之后再进行更新:
sudo apt-get update
sudo apt-get upgrade
(2-2)安装一些依赖项目
# 因为安装 libjasper-dev 这个依赖包可能会出问题,所以先执行以下命令,在执行后续依赖包的安装
sudo add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"
sudo apt update
sudo apt install libjasper1 libjasper-dev
sudo apt-get install libgtk-3-dev libgtk2.0-dev pkg-config
# 接下来就可以执行后续命令
# 这块因为软件源可能还是会出现一些问题:(解决方法见下面)
sudo apt-get install build-essential
# opencv4.1.0需要 libgtk-3-dev
sudo apt-get install cmake libgtk-3-dev libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python3-dev python3-numpy python-dev python-numpy libpython3.6-dev libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff5-dev libjasper-dev libdc1394-22-dev # 处理图像所需的包
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev liblapacke-dev
sudo apt-get install libopenexr-dev
sudo apt-get install libxvidcore-dev libx264-dev # 处理视频所需的包
sudo apt-get install libatlas-base-dev gfortran # 优化opencv功能
sudo apt-get install ffmpeg
(2-3)安装 cmake GUI
sudo apt-get install cmake-gui
(2-4)解压刚才下载的opencv和opencv_contrib
# 用这个命令解压
unzip opencv_contrib-4.1.0.zip
unzip opencv-4.1.0.zip
(2-5)准备编译!
将解压好的opencv_contrib-4.1.0目录移动到opencv-4.1.0目录里面
然后再在opencv-4.1.0目录下新建一个build目录
mkdir build
(2-6)开始cmake编译
cd build #进入刚才新建的build目录
cmake-gui ../opencv-4.1.0 #打开cmkae编译器
(2-7)编译过程
where is the source code:就是你的opencv-4.1.0源码路径
where to build the binaries:就是你打算把编译结果放在哪、一般就放在你刚才新建的build目录下
选择好路径之后点击Configure进行编译配置、但是此时界面会出现很多红色、不用担心、待会再解决、最后界面会出现Configure done的字样
此时再点击Generate 、直至出现Generate done的字样、但是这时候还是有很多东西没有配置好的
(2-8)再次编译过程
(1)在 CMAKE_BUILD_TYPE 值处选择 Release
(2)在 OPENCV_EXTRA_MODULES_PATH 处,为其设置 opencv_contrib-4.1.0 的路径,精确到 /modules 目录
(3)勾选 OPENCV_PYTHON3_VERSION
(4)添加 python 的路径
(5)勾选 OPENCV_GENERATE_PKGCONFIG
这些必须完成、否则会出现一些不可预料的错误
再次点击 Configure 进行配置
如果还有红色不要担心、没有事情
最后,点击 Generate,出现 “Generating done” 则意味着 cmake 的工作结束了
(2-9)
在 build 目录下输入 sudo make -j2
j2表示两个CPU线程去编译:你也可以查看你的电脑CPU支持多少线程之后对于修改成j3 j4或是其他
cat /proc/cpuinfo | grep "processor" | wc -l #查看CPU信息
直到终端显示100%
就表示完成了、但是那时不可能那么简单的、一般到78%
就会卡住(不要问我为什么知道、问就是因为我装了好多次了)
卡住了多半是因为提示缺少boostdesc_bgm.i
为什么缺少、就是因为刚才在cmake编译的时候、那些红色的报错没有解决、所以这里就缺失了部分文件
解决办法:
(1)下载我上面给的百度网盘链接、这里再给一次:
复制这段内容后打开百度网盘App,操作更方便哦。 链接:https://pan.baidu.com/s/1ZjOxzq_gUk-qZmurmgmoqQ 提取码:w99y–来自百度网盘超级会员V4的分享
下载解压之后、将里面的所有文件拷贝到opencv_contrib/modules/xfeatures2d/src/
这个目录下面
(2)将opencv-4.1.0/modules
目录下面的features2d文件夹拷贝到build目录下
然后继续回到build目录下,继续sudo make -j2
这次是绝对没有问题的、一直会到100%
最后执行:sudo make install
(3)配置环境:
(3-1)
首先将OpenCV的库添加到路径,从而可以让系统找到
sudo gedit /etc/ld.so.conf.d/opencv.conf
执行此命令后打开的可能是一个空白的文件,不用管,只需要在文件末尾添加
/home/cheng/opencv-4.1.0/build/lib
然后保存退出
(3-2)
配置bash,执行如下命令
sudo gedit /etc/bash.bashrc
在末尾添加
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/home/cheng/opencv-4.1.0/build/lib/pkgconfig
export PKG_CONFIG_PATH
保存退出,然后执行如下命令使得配置生效
source /etc/bash.bashrc
到这里ubuntu18.04配置Opencv就已经大功告成了
推荐阅读:
ubuntu下QT配置opencv.