Python 3.x 安装opencv+opencv_contrib的操作方法


Posted in Python onApril 02, 2018

Note:这篇文章不会包含任何的技术解答,仅是安装教程。同样不保证对所有可能的安装中遇到的问题都能适用。不过如果不幸又幸运地遇到了跟我一样的问题,我希望你能从我这里找到解决方案。

前言

最近做作业需要Python+opencv,但发现opencv.org官网中提供的包只支持2.7版本。因为Python已在Anaconda下已经安装了3.5且写了一些代码,所以并不想卸载了3.5重新安装2.7,所以查了资料想要能让opencv能在3.5上跑。

正文

环境:Win7, 64bit

python version: 3.5.1,Anaconda 2.4.1(64bit)

1. 选择合适的版本下载(不是在官网,因为如我前言中所说官网所支持的是Python2.7版本),下载地址:

http://www.lfd.uci.edu/~gohlke/pythonlibs/#opencv

比如说我下载的是opencv_python‑3.2.0‑cp35‑cp35m‑win_amd64.whl,这个名字标识了三部分:cp35,cp35m和win_amd64。cp35表示Python是3.5版本,win_amd64是表示安装的Python是64bit的。

特别注意:

1. 这里的64bit指的是Python安装的64bit而不是操作系统,有时候64bit的操作系统同样可能安装了32bit的Python。确认安装的版本方法为打开cmd界面,输入python --version进行查询。

2. 如果你想使用如sift的功能,单单安装opencv是不够的,需要同时安装opencv_contrib,对应于上一个网址中下载opencv_python‑3.2.0+contrib‑cp35‑cp35m‑win_amd64.whl 直接进行安装即可(不用安装没有opencv_contrib版本的)。除了包的名字不同以外,安装步骤和下面都是相同的。

2. 安装下载的.whl文件,在cmd界面中输入:

pip install 文件路径\opencv_python‑3.2.0‑cp35‑cp35m‑win_amd64.whl

比如我将其放在c盘中,则使用:

pip install c:\opencv_python‑3.2.0‑cp35‑cp35m‑win_amd64.whl

这个安装过程应该会很快,这一步完成后就安装成功了~

当然,很可能像我一样出现了如下error:

opencv_python‑3.2.0‑cp35‑cp35m‑win_amd64.whl is not a supported wheel on this platform. ~(>_<)~

兵来将挡水来土掩咯~在解决这个问题之前,在cmd中先查询

python
>>> import pip; 
>>> print(pip.pep425tags.get_supported())

返回结果:

[(‘cp35', ‘none', ‘win_amd64'), (‘py3', ‘none', ‘win_amd64'), (‘cp35', ‘none', ‘any'), (‘cp3', ‘none', ‘any'), (‘py35', ‘none', ‘any'), (‘py3', ‘none', ‘any'), (‘py34', ‘none', ‘any'), (‘py33', ‘none', ‘any'), (‘py32', ‘none', ‘any'), (‘py31', ‘none', ‘any'), (‘py30', ‘none', ‘any')]

发现问题了么?我想要安装的是

opencv_python‑3.2.0‑cp35‑cp35m‑win_amd64.whl,它的三个关键字是(‘cp35', ‘cp35m', ‘win_amd64'),但我电脑里的pip并没有与之完全对应的,因而出现了不supported的现象。

解决方案当然就是更新pip了。

使用更新指令python -m pip install --upgrade pip就可以解决问题了。

不过更新指令连接可能不是很稳定会更新一半就报错,多试几次就好了~

3. 测试opencv的确安装成功

python
>>> import cv2
>>> lena = cv2.imread("d:\lena.jpg") ##找一个放了照片的路径
>>> cv2.imshow("Image",lena)  
>>> cv2.waitKey(0)

问题解决方案多来自:http://stackoverflow.com/questions/28107123/cannot-install-numpy-from-wheel-format

以上这篇Python 3.x 安装opencv+opencv_contrib的操作方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python的迭代器和生成器使用实例
Jan 14 Python
在Python3中初学者应会的一些基本的提升效率的小技巧
Mar 31 Python
Python中基础的socket编程实战攻略
Jun 01 Python
python实现rsa加密实例详解
Jul 19 Python
python之virtualenv的简单使用方法(必看篇)
Nov 25 Python
Python编写一个验证码图片数据标注GUI程序附源码
Dec 09 Python
python pyqtgraph 保存图片到本地的实例
Mar 14 Python
python 日志 logging模块详细解析
Mar 31 Python
python mysql中in参数化说明
Jun 05 Python
怎么快速自学python
Jun 22 Python
如何在VSCode下使用Jupyter的教程详解
Jul 13 Python
python判断元素是否存在的实例方法
Sep 24 Python
在python3.5中使用OpenCV的实例讲解
Apr 02 #Python
Python-OpenCV基本操作方法详解
Apr 02 #Python
浅谈Python Opencv中gamma变换的使用详解
Apr 02 #Python
opencv改变imshow窗口大小,窗口位置的方法
Apr 02 #Python
python opencv设置摄像头分辨率以及各个参数的方法
Apr 02 #Python
python opencv 图像尺寸变换方法
Apr 02 #Python
Python聊天室程序(基础版)
Apr 01 #Python
You might like
PHP上传文件时文件过大$_FILES为空的解决方法
2013/11/26 PHP
php使用curl简单抓取远程url的方法
2015/03/13 PHP
[原创]php获取数组中键值最大数组项的索引值
2015/03/17 PHP
PHP获取对象属性的三种方法实例分析
2019/01/03 PHP
屏蔽Flash右键信息的js代码
2010/01/17 Javascript
jquery实现文本框鼠标右击无效以及不能输入的代码
2010/11/05 Javascript
JavaScript和CSS通过expression实现Table居中显示
2013/06/28 Javascript
jquery修改网页背景颜色通过css方法实现
2014/06/06 Javascript
node+express+ejs制作简单页面上手指南
2014/11/26 Javascript
3种Jquery限制文本框只能输入数字字母的方法
2014/12/03 Javascript
jQuery事件绑定与解除绑定实现方法
2015/04/15 Javascript
bootstrap网页框架的使用方法
2016/05/10 Javascript
jQuery图片轮播插件——前端开发必看
2016/05/31 Javascript
100多个基础常用JS函数和语法集合大全
2017/02/16 Javascript
vue2.0 与 bootstrap datetimepicker的结合使用实例
2017/05/22 Javascript
vue 中自定义指令改变data中的值
2017/06/02 Javascript
seajs中模块依赖的加载处理实例分析
2017/10/10 Javascript
详解Nuxt.js Vue服务端渲染摸索
2018/02/08 Javascript
使用webpack编译es6代码的方法步骤
2019/04/28 Javascript
javascript删除数组元素的七个方法示例
2019/09/09 Javascript
antd配置config-overrides.js文件的操作
2020/10/31 Javascript
[48:54]VGJ.T vs infamous Supermajor小组赛D组败者组第一轮 BO3 第二场 6.3
2018/06/04 DOTA
tensorflow实现图像的裁剪和填充方法
2018/07/27 Python
pandas 对日期类型数据的处理方法详解
2019/08/08 Python
python数据处理之如何选取csv文件中某几行的数据
2019/09/02 Python
Python查找不限层级Json数据中某个key或者value的路径方式
2020/02/27 Python
Python如何实现Paramiko的二次封装
2021/01/30 Python
药学专业大学生个人的自我评价
2013/11/04 职场文书
单位领导证婚词
2014/01/14 职场文书
简短大学毕业感言
2014/01/18 职场文书
大学生评语大全
2014/04/18 职场文书
2016年安全月活动总结
2016/04/06 职场文书
工作简历的自我评价
2019/05/16 职场文书
四年级作文之说明文作文
2019/10/14 职场文书
html5调用摄像头实例代码
2021/06/28 HTML / CSS
MySQL提升大量数据查询效率的优化神器
2022/07/07 MySQL