PP-YOLOE-R | 手把手教你将PP-YOLOE用于旋转目标检测,顺带达成SOTA性能!
arXiv:https://arxiv.org/abs/2211.02386
code: https://github.com/PaddlePaddle/PaddleDetection
任意方向目标检测是遥感图像目标检测与自然场景文字检测中最基本的任务。本文提出了一种高效的Anchor-free 旋转目标检测方案PP-YOLOE-R,通过引入大量的有用tricks,所提方案达成如下性能(DOTA1.0):
单尺度训练/测试:PP-YOLOE-R-l/x分别取得了78.14mAP与78.28mAP;
多尺度训练/测试:PP-YOLOE-R-l/x分别取得了80.02mAP与80.73mAP.
总而言之,PP-YOLOE-R超过了所有Anchor-free方案,具有与两阶段Anchor-based方案相当的性能。此外,PP-YOLOE-R具有部署友好特性,在TensorRT与FP16加持下,PP-YOLOE-R-s/m/l/x在RTX2080Ti上推理速度可达69.8/55.1/48.3/37.1FPS。与其他方案的性能对比可参考下图。
本文方案
上图给出了PP-YOLOE_R架构示意图,与PP-YOLOE整体架构类似,可以理解为:PP-YOLOE-R是PP-YOLOE针对旋转目标检测任务进行的适配与升级。
Baseline 在基线模型方面,首先将FCOSR一文的FCOSR Assigner与ProbIoU 损失引入到PP-YOLOE中作为全文的基线模型。骨干部分与Neck部分采用了PP-YOLOE的配置,未作调整;在检测头方面,对回归分支进行了调整以适配旋转目标检测任务:。该基线模型取得了75.61mAP(单尺度训练/测试)。
Rotated Task Alignment Learning TOOD一文提出的TAL由assign与loss两部分构成,其assign部分构建一个任务对齐度量准则选择正样本,定义如下:
在旋转任务对齐学习(RTAL)过程中,正样本选择过程可以充分利用GT的几何特性,引入了SkewIoU替换上式的。通过使用RTAL,模型检测指标提升到了77.24mAP。
Decouple Angle Prediction Head "解耦"无疑是一种很有效的思路,在这里同样适用。一般来讲,的预测要比更难,且所需特征也存在差异。通过引入解耦角度预测分支,模型检测指标提升0.54mAP达到了77.78mAP。
Angle Prediction with DFL ProbIoU采用回归损失对进行联合优化。为计算ProbIoU,旋转框需要转换为高斯框。当旋转框接近正方形时,旋转角度无法有效决定。为解决该问题,作者引入了DFL预测角度。具体来说,我们对角度进行离散化处理并得到积分形式的预测,描述如下:
注:在本文中,作者采用了OpenCV关于旋转框的定义并设置。通过引入DFL,模型检测性能提升了0.23mAP达到了78.01mAP。
Leanable Gating Unit for RepVGG RepVGG是一种非常好的涨点方案,作者进一步引入了可学习门限单元以控制前一层的信息量。该设计主要是针对小目标与稠密目标而设计,以使其自适应融合不同感受野特征。
注:分别表示卷积。在PP-YOLOE中,RepResBlock并未使用短连接分支,即每个RepResBlock金辉引入一个可学习参数,而在推理阶段,该参数可以合并到卷积中,故不会对参数量与速度产生任何影响。通过引入可学习门限单元,模型检测性能提升了0.13mAP达到了78.14mAP。
此外,作者还尝试将ProbIoU损失替换为KLD损失(它具有尺度不变性,非常适用于Anchor-free方案),但是出现了大幅性能下降,见上表。
上图给出了本文方案与其他旋转目标检测方案的性能对比,可以看到:
单尺度训练/测试:PP-YOLOE-R-l/x分别取得了78.14mAP与78.28mAP,几乎超越了其他所有旋转目标检测;
多尺度训练/测试:PP-YOLOE-R-l/x分别取得了80.02mAP与80.73mAP。PP-YOLOE-x超越了所有Anchor-free方案,仅比两阶段Anchor-based最优方案低0.2mAP。
多尺度训练/测试:PP-YOLOE-R-s与PP-YOLOE-R-m可以取得79.42mAP与79.71mAP,同样是非常优异的结果(考虑到参数量与FLOPs)。
值得一提的是,在保持高性能的同时,PP-YOLOE-R并未使用特殊的算子(如DeformConv、Rotated RoI Align),这使得它可以在不同硬件平台上进行部署,PP-YOLOE-R可以轻松的采用TensorRT进行加速,而其他SOTA方案大部分不支持TensorRT加速。当输入为,开启FP16后,PP-YOLOE-R-s/m/l/x在RTX2080Ti上推理速度可达69.8/55.1/48.3/37.1FPS。
推荐阅读
优于ConvNeXt,南开&清华开源基于大核注意力的VAN架构 CVPR2022 | RepLKNet: 大核卷积+结构重参数让CNN再次伟大 RepVGG|让你的ConVNet一卷到底,plain网络首次超过80%top1精度 Timm助力ResNet焕发“第二春”,无蒸馏且无额外数据,性能高达80.4% Apple提出更小、更快、更高性能的端侧实时Transformer类轻量型MobileViT MobileNeXt来了!打破常规,逆残差模块超强改进,精度速度双超MobileNetV2 “文艺复兴” ConvNet卷土重来!FAIR重新设计纯卷积新架构 Transformer的终章还是新起点?MetaFormer才是你真正需要的