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