OpenCV2学习笔记(二十)
最后更新于:2022-04-01 06:36:31
##Win8.1 64位+OpenCV 2.4.9+Python2.7.9配置
OpenCV提供了Python接口,主要特性包括:
* 提供与OpenCV 2.x中最新的C++接口极为相似的Python接口,并且包括C++中不包括的C接口
* 提供对OpenCV 2.x中所有主要部件的绑定:CxCORE (almost complete), CxFLANN (complete), Cv (complete), CvAux (C++ part almost complete, C part in progress), CvVidSurv (complete), HighGui (complete), and ML (complete)
* 在Python中访问C++中的数据结构
* 完善的内存管理,使用者无须担心内存的问题
* 可以在 OpenCV 的 Mat 与 wxWidgets, PyGTK, and PIL 中使用的 arrays 互相转换
比起C++,Python适合做原型。这里介绍如何配置OpenCV 2.4.9+Python2.7.9,以便在Python中使用OpenCV图形库。
**需要下载的东西如下**(注意版本问题):
一.opencv 2.4.9 下载链接: [http://opencv.org/](http://opencv.org/) ,关于opencv的编译与配置可参考:[http://blog.csdn.net/liyuefeilong/article/details/43526975](http://blog.csdn.net/liyuefeilong/article/details/43526975)
[http://blog.csdn.net/liyuefeilong/article/details/44872809](http://blog.csdn.net/liyuefeilong/article/details/44872809)
二.python 下载链接: [https://www.python.org/](https://www.python.org/). (版本选择python2.7.9)
三.NumPy(opencv的python版需要该模块,NumPy的版本要和Python版本相同),这里提供两种安装方法:
1.此处下载链接: [http://www.lfd.uci.edu/~gohlke/pythonlibs/](http://www.lfd.uci.edu/~gohlke/pythonlibs/) 选择最新版本numpy-1.9.2+mkl-cp27-none-win_amd64.whl,请留意不要下载成cp27对应python 2.7版本,若python选择64位,则NumPy也必须选择64版本。whl文件的安装步骤如下:
* 将下载的NumPy包移动到python安装位置(笔者的路径为C:\Python27)下的Scripts文件夹
* Shift+右键打开命令窗口cmd,输入:`pip install wheel` 安装wheel模块。
* wheel安装成功后,在命令窗口中键入以下命令即安装成功:
~~~
cd c:/Python27/Scripts
pip install numpy-1.9.2rc1+mkl-cp27-none-win_amd64.whl
~~~
2.下载链接: [http://download.csdn.net/detail/liyuefeilong/8647101](http://download.csdn.net/detail/liyuefeilong/8647101)
下载完成后,运行文件numpy-MKL-1.8.0.win-amd64-py2.7.exe,一步一步安装即可。
**简单的配置**
在opencv文件夹中,找到build->python->2.7,其中包含x86和x64两个文件夹,由于这里安装的python和NumPy均为64位版本,因此复制x64文件夹中的cv2.pyd文件到C:\Python27\Lib\site-packages 中即可。
为了测试安装和配置是否成功,可以打开opencv\sources\samples\python中的例程,如:camera.py,正常情况下即可调用电脑的默认摄像头:
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2015-12-30_5683a76ccf429.jpg)
或者双击运行drawing.py,如果没有问题应该看到彩色条纹。
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2015-12-30_5683a76ce951b.jpg)
文件夹包含许多例程,其中一些在打开后只是一闪而过,一种原因是程序需要若干参数,这里只是验证配置是否正确,若要跑通所有例程,还是要打开代码看看。事实上,opencv里的很多宏在python里需要加上cv2.cv前缀即可生效。
参考链接:[http://blog.csdn.net/nwpulei/article/details/7277511](http://blog.csdn.net/nwpulei/article/details/7277511)
[http://blog.csdn.net/gxf1027/article/details/9324671](http://blog.csdn.net/gxf1027/article/details/9324671)
[http://www.open-open.com/lib/view/open1355657468166.html](http://www.open-open.com/lib/view/open1355657468166.html)