Ubuntu 16.04编译安装OpenCV(Python)

本帖记录在Ubuntu 16.04上安装OpenCV的步骤,并分别安装Python 2和Python 3的绑定。如果你只用C++接口,可以忽略Python的安装。

Ubuntu 16.04系统默认安装了两个Python版本:Python2核Python3,默认的版本还是Python2。本帖安装的OpenCV同时支持这两个版本。

#1 安装OpenCV依赖

升级系统:

安装基本编译工具:

由于OpenCV是计算机视觉库,总需要加载一些图像文件( JPEG, PNG, TIFF)。使用下面命令安装一些必要的图像库:

除了图片之外,OpenCV还要处理视频文件。使用下面命令安装一些视频编解码库:

OpenCV的GUI模块highgui依赖Gtk。安装gtk库:

下面安装一些可以提高OpenCV性能的库,如矩阵操作:

安装Python2和Python3的开发库:

#2 下载OpenCV源码

目前OpenCV的最新稳定版是3.1.0,你可以去Github OpenCV项目主页查看最新版本。

下载和OpenCV版本对应的opencv_contrib(一些扩展功能和non-free代码):

注意:opencv和opencv_contrib的版本要一致。

#3 创建Python虚拟环境

虚拟环境可以保持Python开发环境的干净整洁,强烈建议使用虚拟环境。

首先安装pip:

安装virtualenv:

在~/.bashrc文件中添加如下环境变量:

使环境变量生效:

创建Python虚拟环境:

Ubuntu 16.04编译安装OpenCV(Python)

切换工作目录:

Ubuntu 16.04编译安装OpenCV(Python)

分别在cv2、cv3虚拟环境安装numpy:

#4 编译OpenCV

激活要安装的Python虚拟环境:

编辑OpenCV:

编译:

安装:

#5 完成OpenCV的安装

Python 2.7:

OpenCV模块位于/usr/local/lib/python-2.7/site-packages/目录。

Ubuntu 16.04编译安装OpenCV(Python)

创建链接:

Python 3.5:

OpenCV模块位于/usr/local/lib/python3.5/site-packages/目录。

为Python3编译的模块名字不是cv.so,而是cv2.cpython-35m-x86_64-linux-gnu.so,系统不同名字也不同。重命名:

创建链接:

测试安装:

安装完成。

我在编译OpenCV时遇到的错误(BUILD_EXAMPLES=OFF):


其它安装OpenCV的方法

1)安装Ubuntu默认仓库中的OpenCV:

版本旧,不支持Python3。

2)使用OpenCV安装脚本:

相关文章

《Ubuntu 16.04编译安装OpenCV(Python)》有9个想法

  1. 您好,我再Ubuntu16.04上安装opencv3.2.0,按照这个流程。
    根本没有/usr/local/lib/python3.5/site-packages/目录。
    python3.5下只有一个dist-packages目录。
    您碰到过这个问题么,怎么解决?

    1. site-packages 是在你下载的源码的路径里,不一定是”/usr/local/lib/python3.5″,比如,我把源码下载到了”/home/opencv-3.1.0″,那就在”/home/opencv-3.1.0/lib/python3.5/site-packages/”里找”cv2.so”

    1. 请问你的问题解决了吗?我编译什么的都没有报错,但是在python2.7/site-packages/下就是没有cv2.so文件

        1. 我在3.5下编译通过,没有报错,同样没有找到 cv2.cpython-35m-x86_64-linux-gnu.so ,搜索解决了好久,没能解决,求帮忙,感谢

发表评论

电子邮件地址不会被公开。 必填项已用*标注