跳转至

Shifted Autoencoders for Point Annotation Restoration in Object Counting

会议: ECCV 2024
arXiv: 2312.07190
代码: 有(将公开代码和修正后的标注)
领域: 目标计数
关键词: 目标计数, 点标注修复, 去噪自编码器, 标注一致性, 通用预处理

一句话总结

提出Shifted AutoEncoders (SAE),一种受MAE启发的点标注修复方法:通过随机位移点标注后训练UNet恢复,使模型学到"通用位置知识"而忽略个体标注噪声;用训练好的SAE修复原始标注使其更一致,可为任意计数模型(密度图/定位型)稳定提升性能,在9个数据集上创下新记录。

研究背景与动机

目标计数任务(人群、车辆、细胞等)普遍使用2D点标注来标记物体。这种标注方式虽然高效(尤其在密集/重叠场景),但存在固有问题:

标注不一致性:不同标注者对同一类物体选择的标注点位置存在主观差异。例如在人群计数中,点标注在对应头部上的分布大致服从高斯分布(共享一个中心位置,但各有不同的偏移噪声)。这种不一致性会在训练阶段引入模糊和混乱,损害模型的计数精度。

现有解决方案(ADSCNet、BL、NoiseCC、RSI等)主要通过修改损失函数或网络结构来增强模型对噪声标注的容忍能力,但: - 没有直接改善标注质量本身 - 每次训练新模型都需要额外开销 - 仅针对密度图方法设计,未验证在定位型方法上的效果

作者提出了一个更直接的方案:在训练计数模型之前,先修复标注使其更一致。这是一个通用的预处理步骤,修复后的标注可用于任何计数方法。

方法详解

整体框架

SAE包含三个步骤: 1. 位移生成:对原始点标注施加随机2D位移 2. SAE训练:训练UNet从位移后的点恢复到原始位置(学习恢复向量场) 3. 自修复:将原始标注视为"被位移的点",用训练好的SAE修复

核心直觉类比MAE:MAE通过mask-reconstruct学到图像的通用知识而忽略特定细节(如重建巴士时丢失了文字)。SAE通过shift-restore学到物体上的通用标注位置,忽略个体标注者的偏移噪声。

关键设计

  1. 位移点生成策略:对每个标注点pi=(xi,yi)施加随机位移向量vi,包含角度ai(均匀采样自(0,2π))和幅度mi(均匀采样自(0,ri))。关键在ri的设定——采样半径应近似物体的空间尺度:

简单方案:\(r_i^s = \alpha \times d_i\)(α≤0.5防止重叠),其中di是到最近邻的距离

改进方案:\(r_i = \alpha \times \min(d_i, \bar{d}_i^{\mathcal{N}_3})\),额外考虑3个近邻的平均距离,避免稀疏分布物体的采样区域过大引入过多背景。α在所有实验中统一设为0.4。

  1. SAE网络与训练目标:采用轻量级UNet(VGG16 backbone)预测恢复向量场F∈R^{2×H×W},包含x和y方向的恢复向量。训练使用MSE损失,仅在位移点坐标处计算:

$\(\mathcal{L} = \frac{1}{N}\sum_{i=1}^{N}\|\hat{v}_i - (-v_i)\|^2\)$

其中\(\hat{v}_i = (F_x(\hat{p}_i), F_y(\hat{p}_i))\)是预测的恢复向量,\(-v_i\)是真实的逆位移向量。直觉:当同一类头部出现多次且标注分散时,最优恢复策略是将它们都移向分布中心。

  1. 点标注修复:将原始标注视为"被位移的点",SAE网络预测恢复向量场后,修复后的标注为:

$\(P_r = \{(x_i + F_x(p_i), y_i + F_y(p_i))\}\)$

修复后的标注通过消除个体偏移噪声,实现了更好的一致性。

损失函数 / 训练策略

  • 数据增强:随机缩放、水平翻转、随机裁剪到512×512
  • 位移向量在每个epoch重新随机生成
  • Adam优化器,weight decay 5e-4,lr 1e-4
  • 100 epochs,batch size 8,单卡RTX 3090
  • 每个数据集独立训练SAE(不引入额外数据)

实验关键数据

主实验

人群计数(SH PartA/B, UCF-QNRF, JHU++)

方法 SHA-MAE SHA-MSE SHB-MAE SHB-MSE QNRF-MAE JHU-MAE
P2PNet 52.8 85.8 6.5 10.9 91.7 66.8
P2PNet & SAE 48.2 (↓4.6) 76.1 (↓9.7) 6.2 (↓0.3) 10.0 (↓0.9) 85.9 (↓5.8) 62.4 (↓4.4)
MAN 55.6 93.2 7.1 10.5 77.5 53.2
MAN & SAE 52.2 (↓3.4) 81.9 (↓11.3) 5.4 (↓1.7) 7.0 (↓3.5) 74.2 (↓3.3) 49.7 (↓3.5)
STEERER 56.5 89.8 7.1 10.7 74.1 55.8
STEERER & SAE 54.3 (↓2.2) 84.5 (↓5.3) 6.4 (↓0.7) 10.1 (↓0.6) 71.4 (↓2.7) 52.9 (↓2.9)

遥感目标计数(RSOC数据集)

方法 Building-MAE Small-Vehicle-MAE Large-Vehicle-MAE Ship-MAE
P2PNet 6.3 63.1 8.1 28.2
P2PNet & SAE 5.7 (↓0.6) 53.3 (↓9.8) 7.0 (↓1.1) 25.0 (↓3.2)
ASPDNet 7.6 252.6 19.7 81.8
ASPDNet & SAE 6.7 (↓0.9) 182.0 (↓70.6) 16.9 (↓2.8) 75.1 (↓6.7)

细胞计数(MBM, ADI, DCC)

方法 MBM-MAE MBM-MSE ADI-MAE DCC-MAE DCC-MSE
SAUNet 5.7 7.7 14.3 3.0 4.8
SAUNet & SAE 4.2 (↓1.5) 5.8 (↓1.9) 11.2 (↓3.1) 2.6 (↓0.4) 3.4 (↓1.4)

消融实验

超参数α对性能的影响(BL方法)

α QNRF-MAE QNRF-MSE RSV-MAE RSV-MSE MBM-MAE MBM-MSE
Baseline 87.4 149.6 173.0 477.8 8.4 10.3
0.3 86.5 148.3 149.7 389.4 7.3 9.2
0.4 81.6 146.5 130.6 341.4 6.3 8.8
0.5 82.4 146.3 138.2 364.8 6.9 8.6
0.6 91.0 158.9 190.6 516.5 8.3 10.8

α=0.6时因采样区域重叠导致性能下降。α=0.4在大多数场景下最优。

关键发现

  • SAE对所有测试的计数方法都能带来一致提升,包括密度图方法和定位方法
  • 抗噪声方法(BL、NoiseCC、RSI)同样有效——这些方法增强模型容忍度,SAE则直接改善标注质量,两者互补
  • 11个数据集(3个领域)的5种baseline方法上全部有效,在9个数据集上创下新记录
  • 在额外人工噪声测试中,SAE的鲁棒性优于BL和NoiseCC,尤其在中等噪声水平(≤0.4×r)下影响很小
  • 平均来看:人群计数4个数据集上减少MAE 3.0、MSE 6.4;遥感4个数据集上减少MAE 9.2、MSE 40.6

亮点与洞察

  • 类比精妙:将MAE的"mask-reconstruct学通用知识"类比到点标注的"shift-restore学通用位置",思路非常巧妙
  • 解决的是元问题:不特定于某个计数模型,而是直接改善数据质量,可作为通用预处理步骤
  • 方法极其简单:核心就是一个UNet+MSE loss,没有复杂的模块设计
  • 跨域泛化:人群、遥感、细胞三个完全不同的领域都有效
  • 可叠加性:与现有抗噪声方法互补,可进一步提升性能

局限与展望

  • 作者自述:SAE依赖于物体的可重复视觉模式,对于外观差异极大的物体类别可能效果有限
  • 采样半径ri的估计基于近邻距离,在物体大小差异极大或分布极不均匀时可能不准确
  • 目前修复是一次性的(运行一次SAE),迭代修复是否能进一步改善?
  • 对标注缺失(漏标)问题未涉及,仅处理位置偏移
  • α=0.4的选择可能对不同数据集不是最优的

相关工作与启发

  • 与MAE/DAE家族的联系深刻:从自监督表示学习的"学通用忽略特定"原理中汲取灵感
  • 可扩展到其他使用点标注的任务(如关键点检测、姿态估计)
  • 与数据清洗/标注修正方向相关,提供了一条不需要额外标注的自动化路径
  • 密度图方法和定位方法的统一改进说明问题根源在数据而非模型

评分

  • 新颖性: ⭐⭐⭐⭐⭐(MAE→SAE的类比原创且有效)
  • 实验充分度: ⭐⭐⭐⭐⭐(11个数据集、3个领域、5种baseline、抗噪方法、噪声鲁棒性)
  • 写作质量: ⭐⭐⭐⭐⭐(动机清晰、类比直观、实验设计合理)
  • 价值: ⭐⭐⭐⭐⭐(简单通用有效,实用价值极高)

相关论文