作者 | 小书童  编辑 | 集智书童

点击下方卡片,关注“自动驾驶之心”公众号

ADAS巨卷干货,即可获取

点击进入→自动驾驶之心【目标检测】技术交流群

后台回复【2D检测综述】获取鱼眼检测、实时检测、通用2D检测等近5年内所有综述!

在2D目标检测领域,由相似目标之间的重叠引起的拥挤是普遍存在的挑战。在本文中,首先强调了拥挤问题的两个主要影响:

  1. IoU置信相关干扰(ICD)

  2. 混淆重复数据消除(CDD)

然后,从数据扩充的角度探索破解这些困难的途径。首先,提出了一种用于制作拥挤场景的特Copy-Paste方案。基于此操作,首先设计了一种“共识学习”策略,以进一步抵抗ICD问题,然后发现Paste过程自然地揭示了场景中目标的伪“深度”,这可能用于缓解CDD困境。

这两种方法都源自对Copy-Paste的神奇使用,无需额外的处理费用。实验表明,在典型的拥挤检测任务中,本文的方法可以轻松地将最先进的检测器提高2%以上,而无需任何计算开销。此外,这项工作可以在拥挤场景中胜过现有的数据扩充策略。

1、简介

目标检测的任务已经被仔细研究了相当长的时间。在深度学习时代,近年来,已经提出了许多精心设计的目标检测方法,并将检测性能提高到了令人惊讶的高水平。尽管如此,仍然存在许多根本性问题没有得到根本解决。其中之一是“拥挤问题”,这通常表示属于同一类别的目标高度重叠在一起的现象。在几何方式中,基本困难源于2D空间的语义歧义。

如图1所示,在3D世界中,每个体素都有其“独特的语义”,并位于“特定目标”上。然而,投影到2D平面后,一个像素可能落在几个碰撞的目标上。在将概念从“像素”演变为“框”之后,拥挤场景中的语义模糊导致了重叠的概念。

为了探究这个问题的影响,作者深入到检测范式的本质。通常,目标检测器读取图像并输出一组边界框,每个边界框与置信度分数相关。对于理想的检测器,得分值应传达预测框与GT的重叠程度。换句话说,这两个框之间的交集(IoU)应与置信度得分呈正相关。

在图2中可视化了与IoU相关的得分的平均值和标准差之后,结果表明,即使是现成的检测器,这种正相关性也会随着拥挤程度的增加而逐渐受到干扰。这项实验研究清楚地表明了当前检测算法在面对超重重叠时的困难。作者将这种影响体现为IoU置信度相关干扰(ICD)。

另一方面,典型的检测管道通常以重复数据消除模块结束,例如,广泛采用的非最大抑制(NMS)。由于前面提到的2D语义模糊,这些模块经常被严重重叠的预测所混淆,这导致在人群中严重缺失。作者将这种类型的效果称为混淆重复数据消除(CDD)。

为了克服这两个障碍,作者从数据扩充的角度探索了一条道路。参考前面的工作,提出了一种简单的Copy-Paste变体。首先,按照一些专门用于制作拥挤场景的规则,将目标分割块粘贴到训练图像上。然后,围绕Copy-Paste设计了一种“共识学习”方法,将重叠目标的置信分布与其相同但未重叠的对应目标对齐,这进一步限制了ICD问题。

此外,由于程序控制的粘贴过程,当两个目标重叠时,自然可以获得哪个在前面,哪个在后面的额外信息。这种无成本的知识提供了关于除了跨越图像平面的x轴和y轴之外的额外第三维深度的线索,这可以被视为对导致CDD困境的前述2D限制的突破。

从这个动机出发提出了一个名为“覆盖深度”的概念,并半监督地训练检测器来预测这个标签。然后,引入了覆盖深度感知NMS(OD-NMS),以在重复数据消除期间利用深度知识。实验表明,该策略可以帮助区分2D空间中聚集的框,并进一步提高检测结果。

作者从多个方面评估本文的方法。作为一种数据增强策略,无论是手工方法还是自动化方法,这项工作都可以在拥挤的场景中胜过其他算法。作为一种解决拥挤问题的方法,本文的方法可以稳定地将最先进的检测器提高2%以上,而无需任何提示。此外,由于手动标记拥挤的数据是消耗资源的,因此该方法提供了一种仅对“稀疏数据”进行训练的方法,并通过数据增强应用于拥挤的场景。总之,这项工作的主要贡献有两方面:

(1)提出了一种面向拥挤的Copy-Paste方案,并引入了共识学习策略,这有效地帮助检测器抵抗ICD问题,并在拥挤场景中带来改善。

(2) 设计了一种简单的方法来利用粘贴过程产生的弱深度知识,从而进一步优化检测器。

2、相关工作

2.1、Crowded Object Detection

在拥挤的场景中检测物体一直是一个长期的挑战,在这一主题上花费了大量精力。例如,Zhang等人2018年提出了特定的损失函数,以约束更接近相应的GT并远离附近物体的提议,从而增强重叠个体之间的区别。CaSe使用一个新的分支来计算感兴趣区域(RoI)中的行人数量,并为每个提议生成相似性嵌入。作为对上述CDD问题的回应,一组工作集中于缓解非最大抑制(NMS)的不足。自适应NMS引入了一种自适应机制来动态调整NMS中的阈值,从而在人群中实现更好的召回。

2020 Huang等人NMS利用较少遮挡的可见框来指导完整框的选择,而需要额外标记(可见框)。CrowdDet提出了一个方案来进行多个预测,并使用精心设计的Set NMS来解决严重重叠的情况。最近的一些作品探索了其他方式。Zhang等人将行人检测任务建模为一个变分推理问题。Zheng等人改进了端到端检测器Sparse R-CNN,以适应拥挤的检测场景。

2.2、Data Augmentation in Object Detection

在计算机视觉领域,数据增强长期以来被用于优化模型训练,其主要来源于图像分类任务。早期的方法通常包括颜色变换和随机裁剪等策略。自然,核心思想被转移到检测领域,一些操作(例如,图像翻转和尺度抖动)已被广泛采用作为标准模块。

目前,已经出现了具有更具体理论基础的方法。这些变体,从手工设计的Cutout、Mixup和CutMix到基于学习的AutoAugment、Fast AutoAugment和RandAugment,对图像分类产生了相当大的影响,并显示出物体检测的巨大潜力。

同时,也有一些工作专注于检测任务。Stitcher和YOLOv4引入了包含重新缩放图像patch的Mosaic输入,以增强鲁棒性。

Zoph和Chen等人重新设计了AutoAugment方案,以适应目标检测。也有研究人员提出了一种联合搜索数据增强和损失函数策略的方法。Liu等人提出了一种新的APGAN,用于在进行增强时从其他数据集转移行人。

2.3、Copy-Paste Augmentation

Copy-Paste增强技术于2017年首次提出。通过从源图像中剪切对象块并粘贴到目标图像,可以轻松获取组合数量的合成训练数据,并显著提高检测/分割性能。这一惊人的魔力随后被后续作品所验证,并通过上下文改编进一步完善了该方法。

Ghiasi等人声称只要训练足够,简单的Copy-Paste可以带来相当大的改进。他们的实验进一步表明了这种增强策略在实例级图像理解上的潜力。需要注意的是Copy-Paste的最初动机是使样本空间多样化,特别是对于稀有类别或缓解复杂的掩模标签。

然而,在本文的工作中利用这种操作来精确地解决拥挤问题。尽管在以前的工作中有过简单的实践,但从未系统地设计和研究过这种策略在处理拥挤场景方面的实际效果。

3、回顾IoU-Confidence Disturbances

本部分着重于解决Iou置信干扰(ICD)。作者探索了实现这一目标的两种连续方式。首先,进行Copy-Paste以制作拥挤的场景。然后,在重叠目标和非重叠目标之间引入共识学习,这依赖于Copy-Paste。

3.1、Crowdedness Oriented Copy-Paste

根据图2的观察,一个直观的想法是让更多的拥挤案例主导训练。为此,仔细地重新设计了Copy-Paste策略。首先,介绍了“组”的概念。一个图像应该包括几个组,每个组由多个严重重叠的目标组成。按照这个逻辑方案,首先在图像上生成组中心,然后在它们周围粘贴目标。

形式上,对于要增强的每个训练图像,初始化一组C“组中心”:

其中每个元组表示位于相应组中心的目标(、和分别表示坐标和标准化目标大小)。通过从当前图像上的原始目标采样来获得这些组中心。组号|C|是从[0, N]的整数范围中随机选择的,其中N是超参数。

第二步是在这些组中心周围粘贴目标。对于每个、 应该生成组中目标的集合:

类似地,组中的对象数||来自范围[0,M],其中M是另一个超参数。由于拥挤的本质是“重叠”的,因此被强制与群中心对象重叠。可以从概率意义上的、和条件的三个方面来处理重叠。

首先,组中的对象通常具有相似的大小。设是图像中中心物体尺寸条件下的概率密度函数。选择为高斯函数,如下所示:

其中是标准偏差,本文中使用的是常数0.2。为了保证重叠,在建模坐标值和时采用了两个独立的均匀分布:

式中,和是从具有重叠的群中心偏移的最大距离。系数τ和η用于调整拥挤度。

在训练期间,对于加载的每个图像,集合和都是按照上述规则生成的。然后,目标分割块将被采样、重新缩放并相应地粘贴到图像上。

3.2、Consensus Learning

通过Copy-Paste工具包,使用专门的策略来抵抗ICD问题,从而增强检测器训练。考虑到图2所示的观察结果,预测分数的不稳定性来源于拥挤,一种新的解决方案是将拥挤环境中的一个目标的分数(被其他目标覆盖)与未覆盖时的分数对齐。由于Copy-Paste方法可以很容易地生成这种类型的目标对,其中两个相同的目标位于不同的环境中。图3说明了作者的想法。

在前面的数据扩充之后,作者选择了一组由其他目标覆盖的目标。然后,将与中的目标patch相同的目标patch重新粘贴到图像上,而不进行覆盖,从而构建另一组。

在训练期间,强制执行每个目标的预测分数分布与其对应的保持一致。作者将这一过程称为共识学习,通过对每一对中的“达成共识”进行类比。具体来说,具体来说,让是与匹配的建议集,是匹配的建议集,首先计算每个目标得分的平均值和标准差:

其中,和分别为和的大小,表示一个建议的预测置信值。然后,通过均方误差(MSE)损失来追踪一对,接近:

值得指出的是,只有覆盖的一半参与了梯度的反向传播,而非覆盖的一半(用∗标记)被视为目标。

3.3、Analyze the IoU-Confidence Disturbances

现在,分析了方法在减轻上述ICD问题上的有效性。为了重新审视图2右侧提出的原始动机,在图4中绘制了分数的标准差(STD)。

首先,清楚地表明,用提出的Crowdedness-oriented Copy-Paste(CCP)训练的模型的 STDs明显低于基线模型(BL),并且通过提高拥挤程度(从图4-(a)到(d))。其次,虽然CCP和CCP+CL的曲线似乎没有明显的区别,但通过计算它们的平均std(图4中的4个直方图),作者发现后者的值实际上低于前者。

此外,作者绘制了另一个使用random copy-paste(RCP)增强的模型,而没有特别考虑拥挤性。很明显, STDs Score的下降幅度要小得多。这些观察结果表明,本文的方法可以显著提高检测器在拥挤场景中的鲁棒性,从而缓解ICD问题。

4、Alleviate the Confused De-Duplications

本文的增强策略有一个自然的副产品:对于粘贴的这些重叠目标,相对的“深度顺序”是先验的。换句话说,我们知道哪个在前面,哪个在后面。现在,让我们回到第节中描述的语义歧义。基本上,2D空间中的歧义是由真实(3D)世界中缺少一维造成的。从这个角度来看,深度顺序可以被视为额外第三维度的一些薄弱知识,这有助于减轻模糊性。作为一种可行的实践,在这项工作中利用深度顺序信息来解决混淆的重复数据消除(CDD)问题。

首先,引入一个名为“overlay depth”(OD)的变量,该变量描述了目标在视觉上被其他目标覆盖的程度。图5显示了计算OD的过程。首先假设一个目标的覆盖深度等于1.0,如果没有其他目标覆盖它。设是由目标覆盖的目标的区域,表示区域的大小。对于图像中的任何目标,存在一组覆盖的目标:

其中,是当前图像中所有目标的集合。然后,可以明确定义的OD值:

因此,一个物体被其他物体(同一类别的物体)遮挡得越严重,其OD值就越高(如图中的物体b1和b2)。

从这个特性出发,叠加深度的应用基于一个合理的观察:2个高度重叠的物体通常位于不同的深度,或者更具体地说,具有不同的OD值。因此,通过从深度轴获取额外的知识,可以在混乱的2D平面中进行重复数据消除时采用OD值。

现在,使检测器能够预测OD值。通常,检测模型采用分支来回归边界框的坐标。根据这一设计,为分支添加了一个额外的预测因子,以负责OD回归。该修改导致了可忽略的计算负担,并且可以很容易地在单阶段和两阶段结构中实现。在训练期间,采用了常见的L2损失。应该强调的是,由于覆盖深度的半监督知识,只能获取粘贴对象的OD。因此,只有当GT可用时才激活OD回归损失。从形式上讲,整个损失可以写为:

其中为常规检测损失,为共识学习损失,分别为OD回归损失。在本文中,使用了α = γ = 1和η = 0.1。

在推理过程中提出了一种新的重复数据消除策略,称为Overlay Depth-aware NMS(OD-NMS)。在原始的NMS管道中,bbox被递归地相互比较,如果IoU超过一个阈值,则在每个步骤中其中一个将被抑制。按照这个方案,在拥挤的场景中目标可能会错误地重复数据删除。在OD-NMS中,对于IoU高于阈值的困难情况,将预测的OD值整合到一个更全面的决策中。如果两个目标的深度不同,即两个OD值的绝对差值高于预定义的阈值,可以取消当前步骤中的抑制。根据经验,模糊的情况经常在大的IoU范围内增加:当两个bbox更严重地重叠时,需要更严格的OD阈值来判断它们是否是不同的目标。因此,我们设计了一个基于于单位值的OD的动态阈值:

其中,δ和ψ为常系数。

算法1总结了整个过程。通过这种方式,拥挤场景中的目标可以被有效地召回,而不是不适当地进行重复数据删除。这种策略可以看作是具有相当时间复杂度的原始NMS的演变。

5、实验

5.1、消融实验

1、Crowdedness-oriented Design

2、Consensus Learning

3、Overlay Depth

4、Robustness to Pasting Objects

5.2、CrowdHuman

5.3、Results on CityPersons

5.4、Results on KITTI

6、参考

[1].Improving Crowded Object Detection via Copy-Paste.

往期回顾

领域最全 | 计算机视觉算法在路面坑洼检测中的应用综述(基于2D图像/3D LiDAR/深度学习)

自动驾驶之心】全栈技术交流群

自动驾驶之心是首个自动驾驶开发者社区,聚焦目标检测、语义分割、全景分割、实例分割、关键点检测、车道线、目标跟踪、3D目标检测、BEV感知、多传感器融合、SLAM、光流估计、深度估计、轨迹预测、高精地图、规划控制、模型部署落地、自动驾驶仿真测试、硬件配置、AI求职交流等方向;

添加汽车人助理微信邀请入群

备注:学校/公司+方向+昵称

自动驾驶之心【知识星球】

想要了解更多自动驾驶感知(分类、检测、分割、关键点、车道线、3D目标检测、多传感器融合、目标跟踪、光流估计、轨迹预测)、自动驾驶定位建图(SLAM、高精地图)、自动驾驶规划控制、领域技术方案、AI模型部署落地实战、行业动态、岗位发布,欢迎扫描下方二维码,加入自动驾驶之心知识星球(三天内无条件退款),日常分享论文+代码,这里汇聚行业和学术界大佬,前沿技术方向尽在掌握中,期待交流!

Copy-Paste is All U Need!拥挤目标检测你是如何解决的呢?相关推荐

  1. CVPR2020论文解读:3D Object Detection三维目标检测

    CVPR2020论文解读:3D Object Detection三维目标检测 PV-RCNN:Point-Voxel Feature Se tAbstraction for 3D Object Det ...

  2. 改进YOLOv3 | IA-YOLO让恶劣天气的目标检测起飞了!!!

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 作者丨ChaucerG 来源丨 集智书童 虽然基于深度学习的目标检测方法在传统数据集上取得了良好的效果 ...

  3. 【CVPR2020-Oral】上交华为:GPA跨域目标检测

    关注上方"深度学习技术前沿",选择"星标公众号", 资源干货,第一时间送达! [导读]上交&华为CVPR2020 Oral,基于Graph-induce ...

  4. 3目标检测的准确率_吊打YOLOv3!普林斯顿大学提出:CornerNetLite,基于关键点的实时且精度高的目标检测算法,已开源!...

    点击上方"CVer",选择"星标"和"置顶" 重磅干货,第一时间送达 前戏 最近目标检测方向,出了很多很棒的paper,CVer也立即跟进报 ...

  5. 基于改进SSD的车辆小目标检测方法

    基于改进SSD的车辆小目标检测方法 人工智能技术与咨询 来源:<应用光学>,作者李小宁等 摘 要:地面车辆目标检测问题中由于目标尺寸较小,目标外观信息较少,且易受背景干扰等的原因,较难精确 ...

  6. 【论文阅读】【3d目标检测】Embracing Single Stride 3D Object Detector with Sparse Transformer

    论文标题:Embracing Single Stride 3D Object Detector with Sparse Transformer 源码地址:https://github.com/TuSi ...

  7. OPENMV上的目标检测,目标定位模型

    目标板定位模型 代码地址 前言 在17届省赛结束后,因为担心国赛场地光照影响较大,写了这个目标检测算法.但因为时间以及实力不足,算法仅有了个雏形,没能成功部署,非常遗憾. 今年寒假终于有时间将其完善, ...

  8. 百度开源了一款黑科技!超轻量级目标检测算法,网友:这也太好用了!

    说到目标检测,那可谓当前的自动驾驶.新零售.智慧工业等热门行业中的关键技术之一.目标检测不仅在行人.车辆.商品以及火灾检测等任务中发挥着极其关键的价值,在目标跟踪.姿态识别.手势控制.图像搜索等复合任 ...

  9. 0.99M,150FPS,移动端超轻量目标检测算法PP-PicoDet来了!

    说到目标检测,那可谓当前的自动驾驶.新零售.智慧工业等热门行业中的关键技术之一.目标检测不仅在行人.车辆.商品以及火灾检测等任务中发挥着极其关键的价值,在目标跟踪.姿态识别.手势控制.图像搜索等复合任 ...

最新文章

  1. python装饰器_Python装饰器是个什么鬼?
  2. 【模型解读】resnet中的残差连接,你确定真的看懂了?
  3. Python,得到列表最小k个数或最大k个数的索引
  4. 实验九 根据材料编程(改变字体颜色)
  5. PHP文件系统-文件上传类
  6. .NET Conf China 2020志愿者招募火热开启!还有神秘惊喜等你来领…
  7. (第2篇)一篇文章教你轻松安装hadoop
  8. Cloud一分钟 | 华为云、腾讯云、阿里云中标「央视2018年租赁公有云服务」项目...
  9. 默纳克系统服务器怎么改不了参数,默纳克3000参数设置说明
  10. linux下php模式,linux下安装php两种模式区别
  11. hyper-v 安装centos7 后,虚拟机无法访问网络。
  12. Codeforces - 1191D - Tokitsukaze, CSL and Stone Game - 博弈论
  13. 支持Kubernetes集群运维审计,JumpServer v2.2.0发布丨Release Notes
  14. iOS中都有什么设计模式?各个设计模式的作用?
  15. 分布式文件系统(HDFS)与linux系统文件系统关系
  16. AI产品经理-人工智能的发展
  17. 什么是SSH 以及常见的ssh 功能
  18. daytime协议的服务器和客户端程序,用Socket套接字实现DAYTIME协议的服务器和客户端程序-20210414073352.docx-原创力文档...
  19. newman跟newman-reporter-html安装
  20. 图片切割 - 九宫格

热门文章

  1. 停用词stopWord
  2. python基础-pycharm的使用2
  3. 为什么现在面试都是面试造火箭
  4. docker软件安装(centos7.3)
  5. 刷题之旅第2站,论剑场web16、web17、web18、web19、web20
  6. 拓扑投影matlab,专题一·无线回传拓扑规划(matlab代码)
  7. Ubuntu 16.04 LTS 安装RealSense R200 驱动以及SDK配置+QT+OpenCV(多次实测可用)
  8. jqGrid表格实例
  9. windows10 的rocketMQ安装并测试
  10. 微信推广平台上线:微信公共号可以靠广告赚钱啦