如何在Ubuntu上安装OpenCV 4

opencv

为什么要麻烦安装OpenCV 4?

在3.x版本的基础上,进一步的优化,C ++ 11支持,更加舒适紧凑的模块设计,以及对深度神经网络(DNN)模块的改进。

1.我应该在OpenCV 4中使用哪个版本的Ubuntu OS?

本次实操是在Ubuntu 18.04上安装OpenCV 4。在Ubuntu 16.04上我也测试过,完全兼容。

如果打算使用这台机器进行深度学习,我建议您使用Ubuntu 16.04,因为GPU驱动程序更加成熟。

如果您打算仅将这台机器用于OpenCV和其他计算机视觉项目,那么Ubuntu 18.04比较好。

2.我应该在OpenCV 4上使用Python 2.7还是Python 3?

Python 3已成为标配,我强烈建议你把Python 3与OpenCV 4一起装。

毕竟2.7已经不维护了,如果必须使用Python 2.7,当然也可以按照以下说明进行操作,只是请确保在创建虚拟环境时一定要安装Python 2.7的头文件和库文件,并指定Python 2.7。 其他的都一样。


开始安装

步骤1:在Ubuntu上安装OpenCV 4依赖项

以下演示是在Ubuntu 18.04上装:Python 3和OpenCV 4。

首先更新系统:

How to install OpenCV 4 on Ubuntu
$ sudo apt-get update
$ sudo apt-get upgrade

安装开发者工具

How to install OpenCV 4 on Ubuntu
$ sudo apt-get install build-essential cmake unzip pkg-config

然后安装图像和视频 I / O库。

How to install OpenCV 4 on Ubuntu
$ sudo apt-get install libjpeg-dev libpng-dev libtiff-dev
$ sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
$ sudo apt-get install libxvidcore-dev libx264-dev

想在磁盘加载图像以及读取视频文件必须使用这些库。

然后给GUI后端安装GTK:


How to install OpenCV 4 on Ubuntu
$ sudo apt-get install libgtk-3-dev

安装俩包含对OpenCV进行数学优化的软件包

How to install OpenCV 4 on Ubuntu
$ sudo apt-get install libatlas-base-dev gfortran

最后安装python开发头文件

How to install OpenCV 4 on Ubuntu
$ sudo apt-get install python3-dev

有了以上依赖,就可以安装opencv了。

步骤2:下载OpenCV 4

主文件夹并下载opencvopencv_contrib

contrib库包含其他额外的模块和功能

然后按照下面的连接下载就好了,如果想下载其他版本,修改后面的链接即可。

How to install OpenCV 4 on Ubuntu
$ cd ~
$ wget -O opencv.zip https://github.com/opencv/opencv/archive/4.0.0.zip
$ wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.0.0.zip

opencv-4.0opencv-4.x

然后解压即可:

How to install OpenCV 4 on Ubuntu
$ unzip opencv.zip
$ unzip opencv_contrib.zip

建议重命名目录:

How to install OpenCV 4 on Ubuntu
$ mv opencv-4.0.0 opencv
$ mv opencv_contrib-4.0.0 opencv_contrib

如果你没有重命名目录,请不要忘记更新CMake路径

现在 OpenCVopencv_contrib 已经准备就绪了,接下来配置环境。

步骤3:为OpenCV 4配置Python 3虚拟环境

安装一个pip

How to install OpenCV 4 on Ubuntu
$ wget https://bootstrap.pypa.io/get-pip.py
$ sudo python3 get-pip.py

然后就可以利用虚拟环境进行Python开发了

Python虚拟环境可以独立处理Python项目,不会把环境搞坏。
例如,你有一个Python + OpenCV项目,它需要较旧版本的scikit-learn(v0.14),但你想为较新的项目继续使用最新版本的scikit-learn(0.19)

使用虚拟环境,就可以分别处理这两个软件版本依赖了。

你要是对虚拟环境不熟悉,可以看这里

如果你更熟悉condaPyEnv,请跳过此部分

继续安装 virtualenvvirtualenvwrapper,这些软件包可以创建和管理Python虚拟环境:

How to install OpenCV 4 on Ubuntu
$ sudo pip install virtualenv virtualenvwrapper
$ sudo rm -rf ~/get-pip.py ~/.cache/pip

记得更新〜/.bashrc 文件

# virtualenv and virtualenvwrapper
export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
source /usr/local/bin/virtualenvwrapper.sh

或者也可以使用命令行直接添加

$ echo -e "\n# virtualenv and virtualenvwrapper" >> ~/.bashrc
$ echo "export WORKON_HOME=$HOME/.virtualenvs" >> ~/.bashrc
$ echo "export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3" >> ~/.bashrc
$ echo "source /usr/local/bin/virtualenvwrapper.sh" >> ~/.bashrc

然后 source 使生效

How to install OpenCV 4 on Ubuntu
$ source ~/.bashrc

创建一个虚拟环境–安装OpenCV 4和其他包

How to install OpenCV 4 on Ubuntu
$ mkvirtualenv cv -p python3

这个命令只是创建了一个Python 3的虚拟环境 cv

这个名字随便起,但是建议你的环境命名-简短、高效
例如:

  • py3cv4
  • py3cv3
  • py2cv2

py3cv4可以代表 Python 3 + OpenCV 4 的虚拟环境

通过使用 workon命令可以验证并激活当前的环境 cv

How to install OpenCV 4 on Ubuntu
$ workon cv

cv_worken

除此之外,还要安装numpy

How to install OpenCV 4 on Ubuntu
$ pip install numpy

现在可以准备在我们的Ubuntu机器上进行编译OpenCV 4

步骤#4:在Ubuntu上使用CMake编译OpenCV 4

这一步是最耗时的
返回OpenCV的解压目录,并创建一个 build 目录

How to install OpenCV 4 on Ubuntu
$ cd ~/opencv
$ mkdir build
$ cd build

使用cmake开始编译

How to install OpenCV 4 on Ubuntu
$ cmake -D CMAKE_BUILD_TYPE=RELEASE \
	-D CMAKE_INSTALL_PREFIX=/usr/local \
	-D INSTALL_PYTHON_EXAMPLES=ON \
	-D INSTALL_C_EXAMPLES=OFF \
	-D OPENCV_ENABLE_NONFREE=ON \
	-D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules \
	-D PYTHON_EXECUTABLE=~/.virtualenvs/cv/bin/python \
	-D BUILD_EXAMPLES=ON ..

注: -D OPENCV_ENABLE_NONFREE = ON 可以保证你使用其他算法。

保证在虚拟环境中的OPENCV_EXTRA_MODULES_PATHPYTHON_EXECUTABLE 是正确的。

CMake完成后,检查输出类似于以下内容

cmake_finish

检查 Interpreter 指向正确的Python 3二进制文件
检查numpy 指向虚拟环境中的地址

check

开始编译OpenCV 4

How to install OpenCV 4 on Ubuntu
$ make -j4

make的参数-j4 指定我有4个编译内核,大多数系统有2、4或8个内核

如果编译失败,则可以尝试使用1个内核进行编译。

make

完成后,就可以执行下面的命令安装了。

How to install OpenCV 4 on Ubuntu
$ sudo make install
$ sudo ldconfig

步骤#5:将OpenCV 4链接到Python 3虚拟环境

确定下python版本

How to install OpenCV 4 on Ubuntu
$ workon cv
$ python --version
Python 3.5

此时你的opencv应该链接在以下文件夹

How to install OpenCV 4 on Ubuntu
$ ls /usr/local/python/cv2/python-3.5
cv2.cpython-35m-x86_64-linux-gnu.so

重命名为cv2.so

How to install OpenCV 4 on Ubuntu
$ cd /usr/local/python/cv2/python-3.5
$ sudo mv cv2.cpython-35m-x86_64-linux-gnu.so cv2.so

提示:如果要同时安装OpenCV 3OpenCV 4,请不要将文件重命名为cv2.so ,可以考虑为其命名 cv2.opencv4.0.0.so

下面那一步,从该文件将符号链接适当地链接到 cv2.so 也一样

How to install OpenCV 4 on Ubuntu
$ cd ~/.virtualenvs/cv/lib/python3.5/site-packages/
$ ln -s /usr/local/python/cv2/python-3.5/cv2.so cv2.so

步骤#6:在Ubuntu上测试OpenCV 4


How to install OpenCV 4 on Ubuntu
$ workon cv
$ python
>>> import cv2
>>> cv2.__version__
'4.0.0'
>>> quit()


发布了97 篇原创文章 · 获赞 154 · 访问量 26万+

猜你喜欢

转载自blog.csdn.net/sinat_36458870/article/details/104665313