Linux-ubuntu16.04 Python3.5配置OpenCV3.2的方法


Posted in Python onApril 02, 2018

1.OpenCV下载

首先创建一个空的文件夹,进入文件夹执行如下命令,如我创建的文件夹是opencv-python

cd opencv-python
git clone https://github.com/opencv/opencv.git

也可以直接进入网址OpenCV_Download下载

使用git下载后应有一个名字为opencv的文件夹,进入文件夹执行如下命令:

cd opencv
mkdir build
cd build

2.编译opencv源码

使用cmake编译opencv源码,在编译前请确认所有的依赖项已经正确安装,可执行如下命令:

sudo apt-get install build-essential
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev

如果项目已经安装会自动略过,如果项目没有安装则会安装。

在使用cmake编译阶段系统是64位还是32位在这个地方执行的命令是不同的

我的电脑比较渣,装的是32位的系统,这里以32位系统的编译命令为主,同样介绍64位的编译命令,理论上除了文件路径其他应该一样,但是没有经过验证,请慎重!!!

以上执行完毕后,32位执行如下命令进行编译

cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local PYTHON3_EXECUTABLE = /usr/bin/python3 PYTHON_INCLUDE_DIR = /usr/include/python3.5 PYTHON_INCLUDE_DIR2 = /usr/include/i386-linux-gnu/python3.5m PYTHON_LIBRARY = /usr/bin/i386-linux-gnu-python3/libpython3.5m.so PYTHON3_NUMPY_INCLUDE_DIRS = /usr/local/lib/python3.5/dist-packages/numpy/core/include/ ..

对于64位系统,cmake命令中的可选项即PYTHON_INCLUDE_DIR等在官方指导文件中可以通过下列提示具体查看

PYTHON2(3)_EXECUTABLE = <path to python>
PYTHON_INCLUDE_DIR = /usr/include/python<version>
PYTHON_INCLUDE_DIR2 = /usr/include/x86_64-linux-gnu/python<version>
PYTHON_LIBRARY = /usr/lib/x86_64-linux-gnu/libpython<version>.so
PYTHON2(3)_NUMPY_INCLUDE_DIRS = /usr/lib/python<version>/dist-packages/numpy/core/include/

参考网上其他人给出的编译命令,将64位系统编译命令写出,但是未经本人验证,如果有已经配置成功的同学请给我留言,以便完善。

cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local PYTHON3_EXECUTABLE = /usr/bin/python3 PYTHON_INCLUDE_DIR = /usr/include/python3.5 PYTHON_INCLUDE_DIR2 = /usr/include/x86_64-linux-gnu/python3.5m PYTHON_LIBRARY = /usr/lib/x86_64-linux-gnu-python3/libpython3.5m.so PYTHON3_NUMPY_INCLUDE_DIRS = /usr/local/lib/python3.5/dist-packages/numpy/core/include/ ..

64位或32位系统编译opencv只在cmake命令有差别,cmake执行完之后分别执行如下命令

make
sudo make install

如果没有出错的话,至此使用python3开发opencv的开发环境就已经配置完成了。写个小程序试一下:

示例代码

import cv2
srcImage = cv2.imread('lena.jpg')
cv2.imshow('Python3', srcImage)
cv2.waitKey(0)

运行结果如下:

Linux-ubuntu16.04 Python3.5配置OpenCV3.2的方法

以上这篇Linux-ubuntu16.04 Python3.5配置OpenCV3.2的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python random模块(获取随机数)常用方法和使用例子
May 13 Python
python中的装饰器详解
Apr 13 Python
Python迭代器定义与简单用法分析
Apr 30 Python
Python基于Floyd算法求解最短路径距离问题实例详解
May 16 Python
使用pytorch进行图像的顺序读取方法
Jul 27 Python
Python + selenium + requests实现12306全自动抢票及验证码破解加自动点击功能
Nov 23 Python
pandas去重复行并分类汇总的实现方法
Jan 29 Python
Python3.7 新特性之dataclass装饰器
May 27 Python
python中struct模块之字节型数据的处理方法
Aug 27 Python
python数据处理之如何选取csv文件中某几行的数据
Sep 02 Python
python中调试或排错的五种方法示例
Sep 12 Python
python tkinter基本属性详解
Sep 16 Python
浅谈配置OpenCV3 + Python3的简易方法(macOS)
Apr 02 #Python
Window10+Python3.5安装opencv的教程推荐
Apr 02 #Python
Python浅复制中对象生存周期实例分析
Apr 02 #Python
python基础教程项目五之虚拟茶话会
Apr 02 #Python
Python实现批量读取图片并存入mongodb数据库的方法示例
Apr 02 #Python
python基础教程项目四之新闻聚合
Apr 02 #Python
Python实现将数据框数据写入mongodb及mysql数据库的方法
Apr 02 #Python
You might like
php 格式化数字的时候注意数字的范围
2010/04/13 PHP
解析php中两种缩放图片的函数,为图片添加水印
2013/06/14 PHP
php给图片加文字水印
2015/07/31 PHP
微信自定义菜单的创建/查询/取消php示例代码
2016/08/05 PHP
Referer原理与图片防盗链实现方法详解
2019/07/03 PHP
解决laravel-admin 自己新建页面里 js 需要刷新一次的问题
2019/10/03 PHP
jQuery UI-Draggable 参数集合
2010/01/10 Javascript
jquery中this的使用说明
2010/09/06 Javascript
JQuery UI DatePicker中z-index默认为1的解决办法
2010/09/28 Javascript
ASP.NET jQuery 实例15 通过控件CustomValidator验证CheckBoxList
2012/02/03 Javascript
jQuery实现页面滚动时动态加载内容的方法
2015/03/20 Javascript
Javascript中的return作用及javascript return关键字用法详解
2015/11/05 Javascript
微信小程序的动画效果详解
2017/01/18 Javascript
微信小程序使用progress组件实现显示进度功能【附源码下载】
2017/12/12 Javascript
Vue 重置组件到初始状态的方法示例
2018/10/10 Javascript
Vue实现移动端左右滑动效果的方法
2018/11/27 Javascript
微信小程序渲染性能调优小结
2019/07/30 Javascript
javascript实现摄像头拍照预览
2019/09/30 Javascript
微信小程序实现锚点功能
2019/11/20 Javascript
javascript异常处理实现原理详解
2020/02/17 Javascript
uni-app如何页面传参数的几种方法总结
2020/04/28 Javascript
JS array数组检测方式解析
2020/05/19 Javascript
[06:16]DOTA2守卫传承者——职业选手谈心路历程
2015/02/26 DOTA
[31:47]夜魇凡尔赛茶话会 第三期01:选手知多少
2021/03/11 DOTA
Python实现的递归神经网络简单示例
2017/08/11 Python
浅述python2与python3的简单区别
2018/09/19 Python
Python中的枚举类型示例介绍
2019/01/09 Python
Python3标准库总结
2019/02/19 Python
Python二叉搜索树与双向链表转换算法示例
2019/03/02 Python
tensorflow对图像进行拼接的例子
2020/02/05 Python
python3中datetime库,time库以及pandas中的时间函数区别与详解
2020/04/16 Python
优衣库澳大利亚官网:UNIQLO澳大利亚
2017/01/18 全球购物
Lentiamo丹麦:购买便宜的隐形眼镜
2021/01/13 全球购物
2014年护士个人工作总结
2014/11/11 职场文书
2014年依法行政工作总结
2014/11/19 职场文书
女性健康知识讲座主持词
2015/07/04 职场文书