文章目录
OpenCv 3.x
- 大体保留OpenCv 2经典的C++和Python编程接口风格;
- 增强Python接口,加入Python 3.X的支持;
- 改善了Java接口,并且接入MATLAB支持;
- 架构调整。
- 图片、视频编解码从highgui模块分离出来,组成
imgcodec
和videoio
; - 原先 OpenCL模块ocl与其他模块融为一体;
- CUDA 加速模块 gpu 分解成数个以cuda开头的模块;
- 除了官方支持的 OpenCv 代码,还有一些自发贡献的内容,都放在 opencv_contrib 中;
- 图片、视频编解码从highgui模块分离出来,组成
- 添加了新的算法。
- 新版本包括了TLD,鱼眼镜头模型等全新算法;
- 还包括更高层次的高级封装,比如汽车检测等。
- 引入T-API,使OpenCv加速更容易;
- 目前可以参考OpenCv源代码中的T-API代码;
- 开启和关闭OpenCL功能只需要一句代码。更加的方便。
- 优化更多指令集。
- 除了对Intel平台的CPU的优化外,还添加了对 ARM 平台 NEON 指令集的支持;
- OpenCv3 对 X86 和 X64 平台默认支持 IPP,加快了处理速度;
- 稳定性。
- Beta 版本的绝大部分算法通过稳定测试;
- 只有设计 32 位 windows 的极少部分没有通过;
- 2017年12月,发布3.4.x版本;
- opencv_dnn 从 opencv_contrib 移至 opencv;
- 同时 OpenCV 开始支持 C++ 11 构建,
- 加强对神经网络的支持,opencv_dnn 被持续改进和扩充。
OpenCv 4.x
- 2018年10月4.0.0发布:
- OpenCV开始需要支持C++11的编译器才能编译,
- 使用 "wide universal intrinsics"对基础函数进行重写,这些内联函数可以根据目标平台和编译选项映射为SSE2、 SSE4、 AVX2、NEON 或者 VSX 内联函数,获得性能提升;
- 还加入了 QR code 的检测和识别,以及 Kinect Fusion algorithm;
- DNN 也在持续改善和扩充。