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中sys.argv参数用法实例分析
May 20 Python
python中__slots__用法实例
Jun 04 Python
Python 爬虫学习笔记之正则表达式
Sep 21 Python
Python实现对字符串的加密解密方法示例
Apr 29 Python
python中csv文件的若干读写方法小结
Jul 04 Python
python 读取文件并替换字段的实例
Jul 12 Python
django实现支付宝支付实例讲解
Oct 17 Python
python Django框架实现web端分页呈现数据
Oct 31 Python
浅谈pandas.cut与pandas.qcut的使用方法及区别
Mar 03 Python
Python numpy矩阵处理运算工具用法汇总
Jul 13 Python
Django集成MongoDB实现过程解析
Dec 01 Python
python 高阶函数简单介绍
Feb 19 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 file_get_contents抓取Gzip网页乱码的三种解决方法
2013/11/12 PHP
php中照片旋转 (orientation) 问题的正确处理
2017/02/16 PHP
php中curl和soap方式请求服务超时问题的解决
2018/06/11 PHP
PHP创建对象的六种方式实例总结
2019/06/27 PHP
简单的php购物车代码
2020/06/05 PHP
延时重复执行函数 lLoopRun.js
2007/05/08 Javascript
SlideView 图片滑动(扩展/收缩)展示效果
2010/08/01 Javascript
jQuery中fadeIn、fadeOut、fadeTo的使用方法(图片显示与隐藏)
2013/05/08 Javascript
javascript检查表单数据是否改变的方法
2013/07/30 Javascript
代码触发js事件(click、change)示例应用
2013/12/13 Javascript
jQuery表格列宽可拖拽改变且兼容firfox
2014/09/03 Javascript
Javascript中的getUTCHours()方法使用详解
2015/06/10 Javascript
理解javascript中的原型和原型链
2015/07/30 Javascript
DOM 事件的深入浅出(一)
2016/12/05 Javascript
JS实现点击链接切换显示隐藏内容的方法
2017/10/19 Javascript
JS实现将链接生成二维码并转为图片的方法
2018/03/17 Javascript
vue+vant实现商品列表批量倒计时功能
2020/01/13 Javascript
Vue循环遍历选项赋值到对应控件的实现方法
2020/06/22 Javascript
js实现列表按字母排序
2020/08/11 Javascript
[01:06:54]DOTA2-DPC中国联赛 正赛 SAG vs DLG BO3 第二场 2月28日
2021/03/11 DOTA
python采集博客中上传的QQ截图文件
2014/07/18 Python
Python实现的多线程同步与互斥锁功能示例
2017/11/30 Python
python3利用Dlib19.7实现人脸68个特征点标定
2018/02/26 Python
使用Python-OpenCV向图片添加噪声的实现(高斯噪声、椒盐噪声)
2019/05/28 Python
如何使用Python实现斐波那契数列
2019/07/02 Python
联想墨西哥官方网站:Lenovo墨西哥
2016/08/17 全球购物
Allen Edmonds官方网站:一家美国优质男士鞋类及配饰制造商
2019/03/12 全球购物
标记环介质访问控制协议
2016/03/27 面试题
Shell如何接收变量输入
2012/09/24 面试题
应聘编辑职位自荐信范文
2014/01/05 职场文书
法人代表任命书范本
2014/06/05 职场文书
中国文明网向国旗敬礼活动精彩寄语2014
2014/09/27 职场文书
小平小道观后感
2015/06/09 职场文书
黑暗中的舞者观后感
2015/06/18 职场文书
使用 CSS 轻松实现一些高频出现的奇形怪状按钮
2021/12/06 HTML / CSS
Python可视化学习之seaborn调色盘
2022/02/24 Python