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

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

相关推荐