OpenCV 3 将会为我们带来什么?
2015-01-21 09:12
357 查看
年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,这杠杠的加速我就不多说了,上图!
IPP加速效果
那么现在大家最关心的应该是稳定性了。OpenCV 3.0 beta通过了绝大部分测试,只有一小部分涉及32位Windows的没有通过,作一般使用也不会有太大问题了。
遗憾的是3.0的文档还没有正式发布,如果需要,得自己到源代码编译文档。而且现阶段文档还有很多2.x的残留。不过,稍微摸索一下就能解决大多数问题。总之,如果你在用OpenCV做开发的话,尤其是性能很重要的开发,现在可以试试OpenCV 3.0了。
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,这杠杠的加速我就不多说了,上图!
IPP加速效果
那么现在大家最关心的应该是稳定性了。OpenCV 3.0 beta通过了绝大部分测试,只有一小部分涉及32位Windows的没有通过,作一般使用也不会有太大问题了。
遗憾的是3.0的文档还没有正式发布,如果需要,得自己到源代码编译文档。而且现阶段文档还有很多2.x的残留。不过,稍微摸索一下就能解决大多数问题。总之,如果你在用OpenCV做开发的话,尤其是性能很重要的开发,现在可以试试OpenCV 3.0了。
相关文章推荐
- 虚拟现实爆发元年,VR将会给我们带来什么?
- LBS能为我们带来什么
- Imagine Cup 给我们带来了什么
- 自定义VsSingleFileGenerator能给我们带来什么
- Epoll 给我们带来了什么?
- Google开发者大会给我们带来了什么
- 大学课程能给我们带来什么?——“我们能从大学得到什么”
- 大学究竟给我们带来了什么
- AI 的快速发展会给我们带来什么
- Spring4.0给我们带来什么?
- WP7发布了,能给我们带来什么
- 2003年微软为我们带来什么?
- Erlang给我们带来什么
- 软考给我们带来了什么?
- Entity Framework:存储过程能为我们带来些什么?
- 扩展方法为我们带来了什么
- HTML5能为我们带来什么?(一)
- OpenSource给我们带来什么?
- HTML5给我们带来了什么?
- 中美战略与经济对话将会给我国带来什么?