Ubuntu16.04/树莓派Python3+opencv配置教程(分享)


Posted in Python onApril 02, 2018

无论是Windows、Linux、还是树莓派 。配置python3的opencv环境都是让人头大的一件事情,尤其是许多人用pip安装以后,发现opencv虽然装上了,但是却装在了系统原生的python2下。

笔者也是经历过很多次失败之后,才安装成功。

本文采用编译的方法配置opencv,每一步都有ubuntu和树莓派的分别配置,由于两个系统极其相似(可以说是基本一样),所以并在一文详解。

一般来说,只要按照步骤去安装配置,就不会出错。废话不多说,开始表演!

step1:准备工作

1.ubuntu

安装前的准备工作:

1.1.对Ubuntu apt-get仓库进行更新

sudo apt-get update && sudo apt-get upgrade

1.2.安装必要的python插件及一些环境

sudo apt-get install python3-setuptools python3-dev -y

1.3.安装pip

sudo easy_install3 pip

1.4.对pip进行的更新(非必要)

pip install --upgrade pip

1.5.安装numpy包

pip install numpy

一些通用的包:

1.6.安装build-essential

sudo apt-get install build-essential -y

1.7.其他的一些开发用包

sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev -y

2.树莓派

更新树莓派的系统与内核

2.1 sudo apt-get update

2.2 sudo apt-get upgrade

2.3 sudo rpi-update

更新内核时可能会报“No space left on device”错误,这是因为储存空间不足,最好在更新前检查内存使用(使用free命令即可)

step2:开始安装opencv

ubuntu/树莓派通用

1、首先,你要找一个合适的地方存放opencv的安装包,我选择的路径是~/Download/opencv

2、进入安装路径,并下载安装包

cd ~/Download/opencv
wget https://github.com/Itseez/opencv/archive/3.0.0.zip

3、下载完成后,需要创建编译后文件存放的路径:

unzip 3.0.0.zip && cd opencv-3.0.0
mkdir build && cd build

4、接下来一步,要小心小心按照本地路径来配置,在build目录下执行如下命令:

cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local
PYTHON3_EXECUTABLE=/usr/bin/python3
PYTHON_INCLUDE_DIR=/usr/include/python3.4
PYTHON_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython3.4m.so
PYTHON3_NUMPY_INCLUDE_DIRS=/usr/local/lib/python3.4/dist-packages/numpy/core/include ..

注意这里所有的是一行命令,每一个路径都要确保存在,不要忘记最后的两个点,大多时候树莓派和ubuntu在PYTHON_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython3.4m.so这个路径上会有不同,在树莓派中,cd到/usr/lib/目录下,找到一个目录下,存在libpython3.4m.so,(大不了一个一个找),找到了就记住路径替换即可。

这一步,主要是找到文件,比如找到python3.4 找到libpython3.4m.so 找到numpy/core/include 的路径,各自对应替换即可

5、最后执行安装命令:

make && sudo make install

记住是在build目录下执行,此步安装时间较长,可以先去看看opencv的入门教程神马的

6、如果你之前的步骤都完成了,那么恭喜你,开始验证吧

import cv2
>>> print(cv2.__version__)
... opencv-3.0.0

以上这篇Ubuntu16.04/树莓派Python3+opencv配置教程(分享)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python六大开源框架对比
Oct 19 Python
在Linux系统上部署Apache+Python+Django+MySQL环境
Dec 24 Python
Python的collections模块中的OrderedDict有序字典
Jul 07 Python
Python3中lambda表达式与函数式编程讲解
Jan 14 Python
PyQt编程之如何在屏幕中央显示窗体的实例
Jun 18 Python
python3.x 生成3维随机数组实例
Nov 28 Python
Python 实现将大图切片成小图,将小图组合成大图的例子
Mar 14 Python
python中判断文件结束符的具体方法
Aug 04 Python
Pytorch之Tensor和Numpy之间的转换的实现方法
Sep 03 Python
python 爬取英雄联盟皮肤并下载的示例
Dec 04 Python
python 利用PyAutoGUI快速构建自动化操作脚本
May 31 Python
Python 数据科学 Matplotlib图库详解
Jul 07 Python
Linux-ubuntu16.04 Python3.5配置OpenCV3.2的方法
Apr 02 #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
You might like
PHP防注入安全代码
2008/04/09 PHP
php array_pop()数组函数将数组最后一个单元弹出(出栈)
2011/07/12 PHP
php用正则表达式匹配URL的简单方法
2013/11/12 PHP
PHP生成条形码大揭秘
2015/09/24 PHP
实例说明js脚本语言和php脚本语言的区别
2019/04/04 PHP
Nigma vs Alliance BO5 第一场2.14
2021/03/10 DOTA
js隐藏与显示回到顶部按钮及window.onscroll事件应用
2013/01/25 Javascript
JQuery设置和去除disabled属性的5种方法总结
2013/05/16 Javascript
jQuery探测位置的提示弹窗(toolTip box)详细解析
2013/11/14 Javascript
javascript动态向网页中添加表格实现代码
2014/02/19 Javascript
jQuery实现鼠标经过图片预览大图效果
2014/04/10 Javascript
JavaScript代码编写中各种各样的坑和填坑方法
2014/06/06 Javascript
IE中document.createElement的iframe无法设置属性name的解决方法
2015/09/14 Javascript
深入学习jQuery Validate表单验证(二)
2016/01/18 Javascript
js获取元素的标签名实现方法
2016/10/08 Javascript
细数JavaScript 一个等号,两个等号,三个等号的区别
2016/10/09 Javascript
js字符串与Unicode编码互相转换
2017/05/17 Javascript
微信小程序自定义轮播图
2018/11/04 Javascript
如何通过shell脚本自动生成vue文件详解
2019/09/10 Javascript
python将txt等文件中的数据读为numpy数组的方法
2018/12/22 Python
python 读取鼠标点击坐标的实例
2018/12/29 Python
django从后台返回html代码的实例
2020/03/11 Python
宝塔面板成功部署Django项目流程(图文)
2020/06/22 Python
解析Tensorflow之MNIST的使用
2020/06/30 Python
python如何发送带有附件、正文为HTML的邮件
2021/02/27 Python
新加坡交友网站:be2新加坡
2019/04/10 全球购物
高中语文教学反思
2014/01/16 职场文书
大学生英语演讲稿
2014/04/24 职场文书
电台编导求职信
2014/05/06 职场文书
管理标语大全
2014/06/24 职场文书
餐饮店长岗位职责
2015/04/14 职场文书
给老婆的检讨书(搞笑版)
2015/05/06 职场文书
身份证丢失证明
2015/06/19 职场文书
校园安全学习心得体会
2016/01/18 职场文书
MySQL数据库压缩版本安装与配置详细教程
2021/05/21 MySQL
Redis实现分布式锁的五种方法详解
2022/06/14 Redis