RetinaNet 的密集预测:破解类别不平衡难题的单阶段目标检测范式(一)
扫描二维码
随时随地手机看文章
在目标检测技术的演进历程中,“密集预测” 始终是实现高精度与实时性平衡的核心方向之一 —— 其核心逻辑是在图像的全空间范围内生成预测,通过密集覆盖潜在目标位置,减少漏检风险。然而,传统单阶段密集预测算法(如 YOLO v1、SSD)长期面临 “类别不平衡” 的致命瓶颈:密集的预测位置中,绝大多数属于背景(负样本),仅有极少数是目标(正样本),这种极端失衡导致模型训练偏向于简单负样本,对难分目标(如小目标、遮挡目标)的学习不足,最终精度远低于两阶段算法(如 Faster R-CNN)。正是在这一技术困境下,RetinaNet 于 2017 年被提出,其创新性地将 “特征金字塔网络(FPN)” 与 “Focal Loss” 深度结合,既通过 FPN 构建了支持多尺度目标的密集预测架构,又通过 Focal Loss 解决了类别不平衡导致的训练低效问题,首次实现了单阶段密集预测算法在精度上超越两阶段算法,为后续单阶段目标检测的爆发式发展奠定了范式基础。本文将系统阐述 RetinaNet 中密集预测的技术原理、实现架构、性能突破及应用价值,揭示其在目标检测技术演进中的里程碑意义。
RetinaNet 中密集预测的核心前提是构建 “多尺度特征表达体系”,而这一体系的实现依赖于特征金字塔网络(FPN)的引入。在传统单阶段算法(如 SSD)中,虽也利用多尺度特征图进行检测,但不同层级的特征图相互独立,浅层特征图(负责小目标)缺乏深层语义信息支撑,对小目标的类别区分能力有限;深层特征图(负责大目标)虽语义丰富,但分辨率低,对目标细节的捕捉不足。RetinaNet 的 FPN 架构则通过 “自上而下的特征融合” 与 “横向连接”,打破了这种层级割裂:首先,基础网络(如 ResNet)自下而上提取特征,生成不同分辨率的特征图(称为 “骨干特征图”),浅层特征图(如 C2)分辨率高、感受野小,深层特征图(如 C5)分辨率低、感受野大;随后,自上而下的路径将深层高语义特征图(如 C5)通过上采样(如 2 倍插值)提升至与浅层特征图相同分辨率,同时通过横向连接将骨干网络中对应层级的浅层特征图(如 C4)与上采样后的深层特征图融合 —— 这种融合既保留了浅层特征图的细节信息(如小目标的边缘、纹理),又补充了深层特征图的语义信息(如小目标的类别特征),最终生成一组 “语义 - 细节均衡” 的多尺度特征图(称为 “预测特征图”,如 P3 至 P7)。
这组预测特征图构成了 RetinaNet 密集预测的 “空间基座”:每个预测特征图对应特定尺度的目标,P3(分辨率最高)负责检测小目标(如 32×32 像素以下),P7(分辨率最低)负责检测大目标(如 256×256 像素以上),中间层级(P4、P5、P6)覆盖中等尺度目标;同时,每个预测特征图上的每个空间位置都作为预测单元,生成多个不同宽高比的锚点(Anchor),这些锚点以密集网格的形式覆盖整个图像空间 —— 例如,每个位置生成 9 个锚点(3 种尺度 ×3 种宽高比),一张 512×512 输入图像最终会生成超过 10 万个锚点,这种 “全尺度 + 全空间” 的锚点覆盖,确保了对图像中任意位置、任意尺度目标的密集捕捉,从根本上解决了传统算法对小目标、边缘目标的漏检问题。





