发布于 2014-12-28 23:55:17 | 338 次阅读 | 评论: 0 | 来源: 网友投递
这里有新鲜出炉的Python-OpenCV 图像与视频处理教程,程序狗速度看过来!
OpenCV 跨平台计算机视觉库
OpenCV的全称是:Open Source Computer Vision Library。OpenCV是一个基于(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows和Mac OS操作系统上。它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。
今年8月,OpenCV 3.0 alpha发布,同时宣布beta将在仲秋时节发布,而正式版会在圣诞节和新年的假期就绪。其中beta版已在光棍节发布,而从目前GitHub仓库的情况来看,正式版可能还得过一阵子才行。
3.0将是OpenCV的又一个革命性版本,它会带来哪些改变呢?
大体上保留了OpenCV 2经典的C++和Python编程接口风格。其中,Python接口大大增强,也加入了Python 3.x的支持。一般来说,以前版本的程序只要做少数修改,就可以使用OpenCV 3了。另外还改善了Java接口,并且加入了MATLAB支持。
架构调整。图片、视频编解码从highgui模块分离出来,组成了imgcodecs和videoio。原先的OpenCL模块ocl事实上与其 它模块融为一体,而CUDA加速模块gpu分解成了数个以cuda开头的模块。此外,除了官方支持的OpenCV代码,还有一些自发贡献的内容、不稳定的 内容,或者版权尚存争议的内容,都放到了新的仓库opencv_contrib中。
更多新算法。新版本包括了TLD、鱼眼镜头模型等全新算法,还包括了一些更高层次可以直接拿来用的高级封装,比如汽车检测等。
引入T-API,使OpenCL加速更容易。目前可以参考OpenCV源代码中T-API的范例。可以发现,开启和关闭OpenCL加速,只需要一个语句就够了。这也就是为什么ocl模块会消失了吧。
更多指令集优化。除了之前为Intel CPU做的优化以外,OpenCV 3还容纳了ARM平台NEON指令集的支持。通过英特尔的帮助,OpenCV 3对x86和x64平台默认使用IPP,这杠杠的加速我就不多说了,上图!
那么现在大家最关心的应该是稳定性了。OpenCV 3.0 beta通过了绝大部分测试,只有一小部分涉及32位Windows的没有通过,作一般使用也不会有太大问题了。
遗憾的是3.0的文档还没有正式发布,如果需要,得自己到源代码编译文档。而且现阶段文档还有很多2.x的残留。不过,稍微摸索一下就能解决大多数问题。总之,如果你在用OpenCV做开发的话,尤其是性能很重要的开发,现在可以试试OpenCV 3.0了。