初期的计算机视觉领域大多数程序都是用C/C++编写。随着计算机硬件速度愈来愈快,开源平台愈来愈多,开发者选择计算机视觉算法的实现语言变得更加灵活,代码编写的效力和易用性成为选择编写语言时的斟酌因素,而不再仅仅只斟酌履行效力。
Python的跨平台、开放性、易用性,加上丰富的资源使其成为最近几年来愈来愈多开发者的选择。国外出版了大量的Python编程、学习书籍,亚马逊搜索Python图书,结果列表长达100页共5712本(截止2016年5月28日)。你也能够从诸如Coursera或Edx等mooc平台找到像MIT校长讲授的Python入门等课程。国内也引进了许多优秀的学习资料和许多在线课程。除这些学习资料,更重要的是Python自带很多可免费获得的强大而便捷的图象处理、数学计算和数据发掘模块和丰富的其他网络资源。
本文以windows平台为例,介绍使用Python进行计算机视觉编程的开发环境搭建与基本配置,总结了软件下载地址、安装方法和开发环境搭建的基本方法,并提供了简单的代码示例。想说的是,Python安装方法与系统、软件版本等诸多因素有关,要想1步到位比较难,遇到问题多种方式可以混合尝试。
Python机器视觉编程环境的经常使用配置以下:
选择Python2还是Pyhton3这是1个问题,我们需要知道的:
对初学者,可以先学Pyhton2.7,等第3方库支持较好了再学习Python3,也会比较快入手。
下载与操作系统对应的版本,运行安装,这里选择默许安装路径C:\Python27。
然后添加Python的安装路径到系统环境变量PATH中:计算机->右键->属性->高级系统设置,系统环境变量后加“;”号,然后添加python2.7的路径,肯定。
这样,命令行便可直接运行Pyhton,并查看版本信息
pip是python中的1个包管理器,就是在电脑中自动安装、配制、卸载和升级软件包的工具组合。pip可以代替之前的easy_install,可方便的引入第3方库。
目前最新版本为PIP⑻.1.2。
下载对pip⑻.1.2.tar.gz紧缩包,打开cmd,进入相应解压目录使用命令行安装。
例如,下载的是PIP⑻.1.2.tar.gz紧缩包,解压后得到pip⑻.1.2文件夹。将该拷贝到Python安装目录C:\Python27下(不拷贝到这个文件夹也能够),打开cmd进入pip⑻.1.2目录下运行:
然后再次编辑系统环境变量,将C:\Python27\Scripts也添加到Path,这样可以方便的运行pip
有了pip可以在命令行使用 pip install xxx 的方法方便的安装所需的第3方库,例以下面的NumPy和SciPy等第3方库了。
NumPy(Numeric Python)是Python的1种开源的数值计算扩大。这类工具可用来存储和处理大型矩阵,比Python本身的嵌套列表(nested list structure)结构要高效的多(该结构也能够用来表示矩阵(matrix))。提供了许多高级的数值编程工具,如:矩阵数据类型、矢量处理,和精密的运算库。专为进行严格的数字处理而产生。
NumPy和SciPy都可以在http://www.scipy.org/scipylib/download.html下载。
下载源码,打开cmd,进入相应目录使用命令行安装
方法2:
windows系统可以下载对应版本的.exe文件,如numpy⑴.9.2-win32-superpack-python2.7.exe安装。
使用pip直接安装NumPy
可能会由于网速等缘由安装不成功,多试几次。本机安装时试了两次装成功。
SciPy (Scientific Computing Tools for Python) 是1款方便、易用的python的科学和工程计算工具包。它包括统计,优化,整合,线性代数模块,傅里叶变换,信号和图象处理,常微分方程求解器等。
一样也能够使用pip直接安装scipy
PIL (Python Imaging Library) Python图象处理类库。提供了通用的图象处理功能,和大量游泳的基本图象操作,如图象缩放、裁剪、色采空间转换等。
下载源码,打开cmd,进入相应目录使用命令行安装
windows系统可下载.exe文件,如PIL⑴.1.7.win32-py2.7.exe安装。注意PIL目前免费版支持到Python2.7。
使用pip安装
matplotlib是1个2维Pyhton跨平台交互式绘图库。
安装说明文档http://matplotlib.org/users/installing.html 提示在windows平台安装matplot需要安装相应版本的setuptools, numpy, python-dateutil, pytz, pyparsing, 和 cycler。具体下载地址在该页面下方有。本机只预先装了numpy,其他包可能在pip安装时自动下载安装了吧。大家可以先试试下面的方法2。
使用pip在线安装
LIbSVM是台湾同胞为世界机器学习的出色贡献之1,目前支持Python, R, MATLAB, Perl, Ruby, Weka, CommonLISP, CLISP, Haskell, OCaml, LabVIEW, and PHP interfaces. C# .NET code and CUDA多种语言。
下载LIBSVM软件包libsvm⑶.21.zip文件
windows下安装python的LIBSVM模块及其艰巨,请务必做好思想准备:windows下安装LIBSVM最多见问题出在libsvm.dll文件上,关键是要用正确版本的libsvm.dll文件替换windows下的libsvm.dll文件。
在尝试网上各种方法未果后,终究找到1个在本机环境下能用的方法,并且此方法比较简便,仅供大家参考。本机环境为:
将libsvm⑶.21解压到C:\libsvm⑶.21\
到以下网址下载与自己Python版本对应的LIBSVM的.whl文件:
拷贝到某目录,例如:e:\教程\python\Libsvm
运行cmd,使用pip安装上述.whl文件:
使用安装生成的C:\Python27\Lib\site-packages\下的libsvm.dll替换C:\libsvm⑶.21\windows下的libsvm.dll。至此,libsvm.dll文件和你电脑的版本号完全对应,安装完成,本文在第3节测试安装。
本方法参考了下文:
OpenCV是业界最经常使用的开源机器视觉库,无需多介绍。目前OpenCV仅支持到Python2.7。
下载文件opencv⑵.4.10.exe是1个自解紧缩文件,将解压后的文件夹opencv->build->python->2.7->x86中的 cv2.pyd复制到:C:\Python27\Lib\site-packages 中便可。
Python IDLE GUI新建File,输入以下代码,保存后F5运行
windows7下PythonPIL库show()函数显示图片有问题,解决方法是在将Python安装目录下的Lib/site-packages/PIL目录下的 ImageShow.py 文件的第 99 行进行替换:
将原
替换为
替换后图片将使用windows图片查看器打开。
NumPy参考文档:
PIL参考文档:
打开Python,File->New File,输入以下代码,保存,F5运行
更多示例参考:
帮助文档:
2.7节已安装配置好了LIBSVM,打开IDLE (PythonGUI),新建1个文件,输入以下代码:
取个文件名(例如svmlib_test1.py)保存后,按F5运行,运行结果以下,说明安装成功
===================== RESTART:D:\Python\svmlib_test1.py =====================
Accuracy = 84.2857%(59/70) (classification)
打开解压后opencv文件夹中的source\samples\python
选择drawing.py右键->Edit with IDLE
如果没有问题应当看到变换的彩色条纹:
自己写个显示图象的例子,新建文件,输入代码