从2022年10月份开始,大家曾经陆续在PaddleDetection仓库的develop分支下尝鲜体验了一些预公布的新算法。现在通过4个月的打磨降级,PaddleDetection v2.6正式公布,最新版本有哪些更新以及性能晋升呢?快来关上这份更新解读吧!
更新重点
- PP-YOLOE家族再添新员,半监督、少样本、蒸馏学习加持,旋转框、小指标、密集全场景检测笼罩;
- PP-Human、PP-Vehicle:性能新增、推理提速、多路视频流反对;
- 半监督检测、少样本学习、模型蒸馏算法全面开源,助力解决少样本、泛化性、标注量、冷启动问题。
可进入下方链接疾速体验
https://github.com/PaddlePaddle/PaddleDetection
对于PaddleDetection的技术问题以及文末彩蛋欢送大家入群探讨,也欢送大家在GitHub点star反对咱们的工作!
01 PP-YOLOE家族再添新员
在理解PP-YOLOE家族v2.6降级内容前,让咱们先回顾一下PP-YOLOE+模型的特点。
PP-YOLOE+是基于飞桨云边一体高精度模型PP-YOLOE迭代优化降级的版本,具备以下特点:
- 训练收敛减速
应用Objects365预训练模型,缩小训练轮数,训练收敛速度晋升3.75倍。
- 上游工作泛化性显著晋升
在农业、夜间安防、工业等不同场景数据集上验证,精度最高晋升8.1%。
- 高性能部署能力
本次降级PP-YOLOE+反对多种部署形式,包含Python/C++、Serving、ONNX Runtime、ONNX-TRT、INT8量化等部署能力。
超强性能与超高泛化性使得PP-YOLOE+助力开发者在最短时间、最大量数据上能失去最优成果。如下图是PP-YOLOE+各个版本模型的性能状况
下图是PP-YOLOE+与其余YOLO支流模型的benchmark状况。在速度和精度下面,PP-YOLOE+均有劣势。
- 理解更多
https://github.com/PaddlePaddle/PaddleDetection/tree/release/2.6/configs/ppyoloe
在v2.6更新内容中,基于PP-YOLOE+的根底:
- 咱们补充了旋转框检测、小指标检测、密集检测场景专用模型
- 同时针对端侧GPU场景的超高推理速度要求,进一步补充了超轻量通用指标检测模型PP-YOLOE+_t版本
- 同时咱们提供了这些通用模型和专用模型(旋转框检测、小指标检测、密集检测)的半监督学习、少样本学习、模型蒸馏技术计划,助力解决业务场景中少样本、泛化性、标注量、冷启动等难题。
接下来就具体看一下吧。
PP-YOLOE+旋转框、小指标、密集全场景检测笼罩
PP-YOLOE-R:旋转框检测模型
PP-YOLOE-R(Rotate) 是一个高效的单阶段Anchor-free旋转框检测模型,基于PP-YOLOE+引入了一系列改良策略来晋升检测精度。依据不同的硬件对精度和速度的要求,PP-YOLOE-R蕴含s/m/l/x四个尺寸的模型。
在DOTA 1.0数据集上,PP-YOLOE-R-l和PP-YOLOE-R-x在单尺度训练和测试的状况下别离达到了78.14mAP和78.28 mAP,这在单尺度评估下超过了简直所有的旋转框检测模型。通过多尺度训练和测试,PP-YOLOE-R-l和PP-YOLOE-R-x的检测精度进一步晋升至80.02mAP和80.73 mAP,超过了所有的Anchor-free办法并且和最先进的Anchor-based的两阶段模型精度简直相当。在放弃高精度的同时,PP-YOLOE-R防止应用非凡的算子,例如Deformable Convolution或Rotated RoI Align,使其能轻松地部署在多种多样的硬件上。
- 理解更多
https://github.com/PaddlePaddle/PaddleDetection/tree/release/2.6/configs/rotate/ppyoloe_r
PP-YOLOE-SOD:小指标检测模型
PP-YOLOE-SOD(Small Object Detection) 针对小指标检测提出了两种检测计划,别离是基于切图拼图流程优化的小指标检测计划以及基于原图模型算法优化的小指标检测计划。同时提供了数据集主动剖析脚本,只需输出数据集标注文件,便可失去数据集统计后果,辅助判断数据集是否是小指标数据集以及是否须要采纳切图策略,同时给出网络超参数参考值。在VisDrone-DET数据集上,单模型精度达到38.5mAP。
- 理解更多
https://github.com/PaddlePaddle/PaddleDetection/tree/release/2.6/configs/smalldet
PP-YOLOE-DOD:密集检测模型
PP-YOLOE-DOD(Dense Object Detection) 是基于PP-YOLOE+的密集指标检测算法,针对密集检测工作,咱们做了如下优化:
- 数据预处理
为了适应商超数据的高分辨率,咱们增大了模型训练和推理的输出尺寸; - 标签匹配策略
为了适应密集场景,咱们去除了动态匹配策略,在全副的训练周期中都应用动静匹配策略。在SKU数据集检测精度mAP 60.3,达到了开源最优。
理解更多
https://github.com/PaddlePaddle/PaddleDetection/tree/release/2.6/configs/ppyoloe/application
PP-YOLOE+_t:超轻量通用指标检测模型
PP-YOLOE+_t是对PP-YOLOE+ x、l、m、s版本通用检测模型的进一步丰盛,次要针Jetson等端侧GPU硬件对检测的帧率与速度均有极高要求的状况下提出的超轻量模型,通过优化匹配策略、减少辅助头、更小的输出尺寸等形式优化性能与速度,实现“速度腾飞”!
比拟理解PaddleDetection的开发者可能晓得,咱们其实还有另一个速度腾飞的模型大杀器PP-PicoDet,二者的次要区别是PP-PicoDet次要是针对Arm等端侧CPU场景打造的,而PP-YOLOE+ 次要针对GPU场景打造。PP-YOLOE+_t聚焦于Jetson等边缘端场景应用,大家在选型时能够做参考。如下图是PP-YOLOE+_t版本的性能体现:
- 理解更多
https://github.com/PaddlePaddle/PaddleDetection/tree/release/2.6/configs/ppyoloe
PP-YOLOE+半监督、少样本和蒸馏学习计划,助力解决少样本、泛化性、标注量、冷启动问题
PP-YOLOE+少样本学习计划
PaddleDetection团队针对PP-YOLOE+ 提供了少样本学习的计划,引入了Compare-Contrast算法。
在预训练模型的根底上,仅通过极少的标注数据即可训练失去较好的模型成果。下表是PP-YOLOE+_s版本模型在工业数据集PKU-Market-PCB上,通过引入少样本学习计划,Box AP失去了2.4的晋升。
- 理解更多
https://github.com/PaddlePaddle/PaddleDetection/tree/release/2.6/configs/few-shot
PP-YOLOE+半监督学习计划
PaddleDetection团队联合Dense Teacher前沿算法,针对PP-YOLOE+ 提供了半监督学习计划。
半监督学习联合有标签数据和无标签数据,在大幅节俭数据标注的状况下,仍然达到较高的模型精度。在理论产业利用过程中,半监督学习是我的项目冷启动时常见的策略之一。下表是,在仅采纳5%、10%有标签数据进行监督学习,95%、90%无标签数据进行半监督学习的状况下,精度失去了1.2~2.5的晋升。
- 理解更多
https://github.com/PaddlePaddle/PaddleDetection/tree/release/2.6/configs/semi_det/baseline
PP-YOLOE+模型蒸馏计划
PaddleDetection团队针对PP-YOLOE+ 提供了模型蒸馏计划,联合了logits蒸馏和feature蒸馏。
在模型参数量、推理速度不变的状况下,能够迁徙高精度大模型的学习能力,从而达到更高的精度。如下表,通过大模型的蒸馏,小模型均有了1个点的精度晋升。
- 理解更多
https://github.com/PaddlePaddle/PaddleDetection/tree/release/2.6/configs/ppyoloe/distill
02 PP-Human、PP-Vehicle性能新增、推理提速
PP-Human:行人剖析工具箱,推理提速、多路视频流反对
https://www.bilibili.com/video/BV1s24y1g7Pk/?vd_source=fcca93...
PP-Human经由实在业务场景数据深度打磨优化,领有适应不同光线、简单背景下的人体属性特征分析、异样行为辨认、出入口人流计数与轨迹绘制、跨镜跟踪四大外围性能。不仅如此,PP-Human还兼容单张图片、单路或多路视频等多种数据输出类型,更合乎产业简单的环境利用需要,同时思考到产业自定义开发的需要,PP-Human还提供了模型训练与性能新增全流程教程。在本次PaddleDetection v2.6更新中:
- 在PP-YOLOE+_t模型的加持下,PP-Human行人剖析工具箱开源边缘端实时检测模型,精度mAP 45.7,Jetson AGX Xavier端到端(蕴含前后解决) 推理速度达到80FPS。
- 同时,反对多路视频流部署能力,实现Jetson AGX Xavier 4路视频流端到端20FPS实时部署。
理解更多https://github.com/PaddlePaddle/PaddleDetection/tree/release/2.6/deploy/pipeline
PP-Vehicle:车辆剖析工具箱,新增逆行、压线剖析、推理提速、多路视频流反对
PP-Vehicle是一款针对车辆剖析相干场景的开源工具,产品次要围绕以下几个方面进行设计开发:
- 实用性
针对车辆剖析场景共性的底层模型进行优选迭代。针对几个高频场景车牌辨认、车流统计、违章剖析、属性剖析等进行了具体的后处理策略设计,能够满足业务的疾速上线需要。同时提供丰盛的二次开发教程,不便用户依据本人的业务场景进行私有化开发。
- 泛化性
在公开数据集以及自采数据集上进行充沛训练,并且提供预训练模型,笼罩车辆剖析中监控视角、驾驶员视角、俯拍视角等常见相机视角。
- 低代码
实现1行代码疾速部署,反对图片、视频、单路/多路rtsp视频流输出,批改配置文件即可疾速实现策略批改以及pipeline的组合。
在本次PaddleDetection v2.6版本更新中:
- PP-Vehicle车辆剖析工具箱新增车辆逆行剖析、压线剖析性能
- 在PP-YOLOE+_t模型的加持下,开源边缘端实时检测模型,精度mAP 53.5,Jetson AGX Xavier上端到端(蕴含前后解决) 推理速度达速度80FPS
- 同时,反对多路视频流部署能力,实现Jetson AGX Xavier 4路视频流端到端20FPS实时部署
理解更多
https://github.com/PaddlePaddle/PaddleDetection/tree/release/2.6/deploy/pipeline
03 PP-Human、PP-Vehicle性能新增、推理提速
除了下面的PP-YOLOE+针对半监督、少样本学习、模型蒸馏计划外,咱们还开源了更多的相干模型,大家能够基于不同的模型进行相干计划测试。
半监督检测
半监督指标检测是同时应用有标注数据和无标注数据进行训练的指标检测,既能够极大地节俭标注老本,也能够充分利用无标注数据进一步提高检测精度。
PaddleDetection团队复现了DenseTeacher半监督检测算法,用户能够下载应用。
- 理解更多
https://github.com/PaddlePaddle/PaddleDetection/tree/release/2.6/configs/semi_det
少样本学习
PaddleDetection团队联结百度研究院大数据实验室,在本次版本更新中开源两种少样本(Few-Shot)迁徙学习的新算法Label Co-tuning和Contrastive Tuning,从不同角度应答标注有余的挑战,晋升模型学习效果。
跨畛域Label Co-tuning算法
该办法的次要思路是充分利用预训练模型的语义空间,开掘其与上游工作的关联,计算出类别之间的关系作为上游工作的辅助语义标签,作为原始one-hot类别标签的补充。
畛域内Contrastive Tuning算法
比照学习是一种通用的表征学习思路,能够学习样例级的判断特色,也可视为一种无效的数据加强策略。该算法针对指标检测的工作个性,实现patch级别的比照学习,以强化指标畛域的表征学习效果。
- 理解更多
https://github.com/PaddlePaddle/PaddleDetection/blob/release/2.6/configs/few-shot
模型蒸馏
本次版本更新中,咱们开源了FGD蒸馏算法、LD蒸馏算法和CWD蒸馏算法。
FGD蒸馏算法
FGD全称为Focal and Global Knowledge Distillation for Detectors,是指标检测工作的一种蒸馏办法。FGD蒸馏分为两个局部Focal和Global。Focal蒸馏拆散图像的前景和背景,让学生模型别离关注老师模型的前景和背景局部特色的要害像素。Global蒸馏局部重建不同像素之间的关系并将其从老师转移到学生,以弥补Focal蒸馏中失落的全局信息。试验结果表明,FGD蒸馏算法在基于anchor和anchor free的办法上能无效晋升模型精度。在PaddleDetection中,咱们实现了FGD算法,并基于RetinaNet算法进行了验证。
CWD蒸馏算法
CWD全称为Channel-wise Knowledge Distillation for Dense Prediction*,通过最小化老师网络与学生网络的通道概率图之间的 Kullback-Leibler (KL) 散度,使得在蒸馏过程更加关注每个通道的最显著的区域,进而晋升文本检测与图像宰割工作的精度。在PaddleDetection中,咱们实现了CWD算法,并基于GFL(Generalized Focal Loss)和RetinaNet模型进行了验证。
LD蒸馏算法
LD全称为Localization Distillation for Dense Object Detection,将回归框示意为概率分布,把分类工作的KD用在定位工作上,并且应用就地取材、分而治之的策略,在不同的区域别离学习分类常识与定位常识。在PaddleDetection中,咱们实现了LD算法,并基于GFL模型进行了验证。
- 理解更多
https://github.com/PaddlePaddle/PaddleDetection/blob/release/2.6/configs/slim/distill
04 PP-Human、PP-Vehicle性能新增、推理提速
PaddleDetection继续跟踪深度学习视觉前沿算法,并评估筛选价值比拟高的算法进行优化开源。在本次版本发新中新增如下方向算法:
- YOLO家族新增YOLOv8、YOLOv6-3.0
- 指标检测算法新增DINO, YOLOF
- 新增ViTDet系列检测模型,PP-YOLOE+ViT_base、Mask RCNN + ViT_base、Mask RCNN + ViT_large
- 新增多指标跟踪算法CenterTrack
- 新增旋转框检测算法FCOSR;
- 新增实例宰割算法QueryInst;
- 新增3D关键点检测算法Metro3d。
理解更多
https://github.com/PaddlePaddle/PaddleDetection/blob/release/2.6/configs/slim/distill
05 根底能力晋升
在本次更新中,PaddleDetection反对Python3.10版本、EMA反对过滤不更新参数、AdamW适配飞桨框架2.4.1版本。新增检测热力求可视化能力,适配FasterRCNN/MaskRCNN系列、PP-YOLOE系列、BlazeFace、SSD、 RetinaNet。
06 Roadmap of PaddleDetection
咱们曾经在PaddleDetection Issue区开拓了Roadmap专区,欢迎您在此留下贵重的倡议、新个性需要或者任何想对PaddleDetection团队说的话,咱们会踊跃融入到后续的版本更新中,同时也欢送大家参加到PaddleDetection的开源建设中。
- Roadmap专区
https://github.com/PaddlePaddle/PaddleDetection/issues/7892
One More Thing
2023飞桨黑客马拉松PaddlePaddle Hackathon第四期现已正式启动,本次流动由深度学习技术及利用国家工程钻研核心主办,飞桨承办,英特尔作为顶级资助方,OpenVINO、Arm、Hugging Face、Jina、TVM、瑞芯微、算能、地平线等独特出品,旨在激励开发者理解与参加深度学习开源我的项目的共建。
本次流动上线200+个开发工作,从框架开发、模型套件开发、模型复现、硬件我的项目开发到产业落地计划包罗万象,依据开发难度分为根底工作和进阶工作。同时提供高达100w的现金奖池以及飞桨黑客松证书,欢送大家来PaddleDetection专区支付工作:https://github.com/PaddlePaddle/Paddle/issues/51281#detection
欢送大家来官网体验PaddleDetection最新版本!