OpenCV介绍
OpenCV是由intel的Gary Bradsky在1999年发起,第1版在2000年发布。OpenCV是一个开放的计算视觉库,支持大量的计算视觉、机器学习算法。
目前,OpenCV已经支持主流的编程语言如C++,Python,Java等;并且能够夸平台,在Windows/Linux/OS X/Android/iOS等主要的操作系统上均能够使用。并且提供了CUDA和OPENCL的GPU加速接口。
OpenCV-Python 是OpenCV提供的Python API。它结合了OpenCV C++ API和Python语言两者的优点。
OpenCV-Python
Python 是Guido van Rossum开发的一个通用编程语言,因为简洁性以及代码的可读性在短时间内流行开来。编程者可以使用少量代码表达他的想法并且不失可读性。
比起C/C++,Python运行会慢些。但Python提供了C/C++的扩展接口,可以使用C/C++编写对速度/性能要求高的代码并使用Python进行封装,然后就可以像使用其他Python模块一样使用这些C/C++代码。这有两个好处:1)代码可以和C/C++一样快(实际在后台运行的就是C/C++代码)。2)容易在Python中使用。OpenCV-Python就是一个OpenCV的原始C++实现的Python封装包。
此外,对Numpy的支持使得一些任务变得更加简单方便。Numpy是一个高度优化的Python数值计算库,它提供了类MATLAB的语法。所有的OpenCV数组和Numpy数组可以互相装换。所有Numpy能做的操作都能结合到OpenCV,另外,一些支持Numpy的库如SciPy,Matplotlib也能结合使用。
因此,OpenCV-Python非常适合做计算视觉的快速原型验证的工具。
有用的链接:
[1] Python Documentation
[2] OpenCV Documentation