什么是OpenCV
OpenCV是一个能够用于图像处理、分析、机器视觉方面的开源函数库,由一系列 C 函数和少量 C++ 类构成。它可以提供多种语言的接口,其中Python、Ruby、MATLAB、C++语言。
为什么要学习OpenCV
计算机视觉应用前景广泛,不管你是做科学研究,还是商业应用,opencv都能够作为你理想的工具库,由于,对于这两者,它全然是免费的。
该库採用C及C++语言编写,能够在windows, linux, mac OSX系统上面执行。该库的全部代码都经过优化,计算效率非常高,由于,它更专注于设计成为一种用于实时系统的开源库。opencv採用C语言进行优化,并且,在多核机器上面,其执行速度会更快。它的一个目标是提供友好的机器视觉接口函数,从而使得复杂的机器视觉产品能够加速面世。该库包括了横跨工业产品检測、医学图像处理、安防、用户界面、摄像头标定、三维成像、机器视觉等领域的超过500个接口函数。
同一时候,由于计算机视觉与机器学习密不可分,该库也包括了比較经常使用的一些机器学习算法。也许,非常多人知道,图像识别、机器视觉在安防领域有所应用。但,非常少有人知道,在航拍图片、街道图片(比如google street view)中,要严重依赖于机器视觉的摄像头标定、图像融合等技术。
近年来,在入侵检測、特定目标跟踪、目标检測、人脸检測、人脸识别、人脸跟踪等领域,opencv可谓大显身手,而这些,不过其应用的冰山一角。
现在,来自世界各地的各大公司、科研机构的研究人员,共同维护支持着opencv的开源库开发。这些公司和机构包括:微软,IBM,索尼、西门子、google、intel、斯坦福、MIT、CMU、剑桥。。。。
其实最重要的一点是在图片处理、图片分析、计算机视觉
方面有用。