OpenCV 4.3 来了!功能增加,性能加速,例程更丰富~
OpenCV 4.3 版正式发布了!
这是OpenCV每年例行发布的春季版,DNN模块依旧是开发重点,官方一直在进行深度学习推理功能的完善和例程的丰富,另外社区也贡献了不少亮点,我们一起来看看吧!
DNN模块改进
1. 网络结构支持:
1) 新增了对 ONNX 中 LSTM, Broadcasting, Algebra over constants, Slice with multiple inputs 的支持;
2) 新增了对 DarkNet 中 grouped convolutions, sigmoid, swish, scale_channels的支持
3)新增了对MobileNetV3-SSD目标检测网络的支持;
2. Intel 推断引擎OpenVINO™ 的支持:
1) 新增使用nGraph OpenVINO API进行自定义神经网络层;
2) 切换成默认使用nGraph OpenVINO API(nGraph为Intel自家的深度学习底层库);
新增DNN例程
1. 新增人体解析(服饰分割)例程Clothes parts segmentation,
位于:samples/dnn/human_parsing.py
2. 虚拟试衣例程CP-VTON,
出自中山大学和商汤科技ECCV2018的论文Toward Characteristic-Preserving Image-basedVirtual Try-On Network。
位于:samples/dnn/virtual_try_on.py
3. 新增DaSiamRPN目标跟踪例程,
算法出自中科院和商汤科技ECCV2018的论文Distractor-aware Siamese Networks for Visual Object Tracking。
位于:samples/dnn/DaSiamRPN_visual_tracker.py
性能加速
1. OpenCV DNN ARM 加速:
合并了来自中国的OPEN AI LAB团队使用 Tengine 对OpenCV DNN 在ARM指令集的加速。而且加速非常客观!
具体使用方法参见:
https://github.com/opencv/opencv/wiki/Tengine-based-acceleration
2. CPU 优化的 IPP-ICV 库更新到2020.0.0 Gold版;
主模块的integral
, resize 和
opencv_contrib中的RLOF进行SIMD优化;
新增功能模块
1. opencv_contrib新增Alpha Matting (扣像)模块,目前该模块只实现了一个算法,来自CVPR 2019 的 Designing Effective Inter-Pixel Information Flow for Natural Image Matting,给定图像和与其对应的trimap,计算扣像结果。
2. opencv_contrib新增了rapid模块,用于基于轮廓的3D目标跟踪,实现BMVC1990论文RAPID-a video rate object tracker;
功能提升
1. calib3d模块更新了查找棋盘格角点的 findChessboardCornersSB 函数,和文档;
2. imgproc 模块函数霍夫变换进行圆检测的HoughCircles() 新增了HOUGH_GRADIENT_ALT 实现,显著提高圆检测的召回率和精度,值得一试!
3. imgcodecs 模块新增了OpenJPEG 的初始支持,以往OpenCV中巨常用的I/O函数imread 和imwrite使用的是开源工程jasper,但该工程已经年久失修被曝出有多处安全漏洞,且多年未更新了,OpenJPEG作为JPEG2000格式图片官方推荐软件,被引入OpenCV,是对数百万开发者和其后广大最终用户的负责;
4. highgui(Qt)模块新增复制到剪贴板的功能;
5. DNN模块改进了对TensorFlow, Darknet 和 ONNX 模型导入的功能;
6. opencv_contrib中的局部特征SIFT检测子默认在编译时打开,因为其专利过期了!后续官方还要将其挪入主模块;
OpenCV已经陪伴开发者20年了!今夏将发布5.0版,4.3 也许是OpenCV 4的最后一版了,有你期待的功能吗?赶紧下载尝鲜吧!
发布地址:
https://github.com/opencv/opencv/releases