精华内容
下载资源
问答
  • 任务目标与目标任务的意思
    千次阅读
    2021-06-27 21:39:40

    在这里插入图片描述

    本文发表于第32届神经信息处理系统会议(NIPS 2018),是法国汽车零部件供应商法雷奥集团(Valeo)研究提出的一种用于自动驾驶领域的多任务神经网络,可同时执行目标检测与语义分割任务。
    代码开源地址:https://github.com/MarvinTeichmann/MultiNet

    Abstract

    卷积神经网络(CNN)被成功地用于各种视觉感知任务,包括目标检测、语义分割、光流、深度估计和视觉SLAM。通常,这些任务是独立探索和建模的。

    本文提出了一种同时进行学习目标检测和语义分割的联合多任务网络设计。主要目的是通过共享两个任务的编码器来实现低功耗嵌入式SOC的实时性能。我们使用一个类似于ResNet10的小型编码器构建了一个高效的体系结构,该编码器为两个解码器所共享。目标检测使用YOLOv2类解码器,语义分割使用FCN作为解码器。

    我们在两个公共数据集(Kitti,Cityscapes)和我们的私有鱼眼摄像机数据集中对所提出的网络进行了评估,并证明了联合网络与单独网络具有相同的准确率。我们进一步优化了网络,使1280x384分辨率的图像达到30fps。


    1. Introduction

    卷积神经网络(CNNs)已经成为自动车辆中大多数视觉感知任务的标准构件。目标检测是CNN在行人和车辆检测中的首批成功应用之一。近年来,语义分割逐渐成熟,从检测道路、车道、路缘等道路对象开始。尽管嵌入式系统的计算能力有了很大提高,专用CNN硬件加速器的趋势也在不断发展,但高精度的语义分割的实时性能仍然具有挑战性。本文提出了一种语义分割和目标检测的实时联合网络,覆盖了自动驾驶中所有的关键对象。

    论文的其余部分结构如下。第二节回顾了目标检测在自动驾驶中的应用,并提供了使用多任务网络解决该问题的动机。第三部分详细介绍了实验装置,讨论了所提出的体系结构和实验结果。最后,第四部分对论文进行了总结,并提出了未来可能的研究方向。

    在这里插入图片描述

    2. Multi-task learning in Automated Driving

    多任务的联合学习属于机器学习的一个子分支,称为多任务学习。多任务联合学习背后的基本理论是,网络在接受多任务训练时可以表现得更好,因为它们通过利用任务间规则来更快地学习游戏规则。这些网络不仅具有较好的通用性,而且降低了计算复杂度,使其在低功耗嵌入式系统中非常有效。最近的进展表明,CNN可以用于各种任务[6],包括运动目标检测[13]、深度估计[8]和视觉SLAM[9]。

    我们的工作最接近于最近的MultiNet[14]。我们的不同之处在于,我们关注的是更小的网络更多类的两个任务,以及在三个数据集中进行的更广泛的实验

    2.1 Important Objects for Automated Driving

    流行的语义分割汽车数据集有CamVid[1]和较新的City Scenes[3]。后者具有5000个注释帧的大小,这是相对较小的。在这个数据集上训练的算法不能很好地推广到在其他城市和隧道等看不见的对象上测试的数据。为了弥补这一点,我们创建了像Synthia[11]和Virtual Kitti[4]这样的合成数据集。有一些文献表明,在较小的数据集中,组合会产生合理的结果。但对于自动驾驶系统的商业部署来说,它们仍然有限。因此,最近正在努力构建更大的语义细分数据集,如Mapillary vistas数据集[10]和ApolloScape[7]。Mapillary数据集由25,000幅图像组成,共100类。ApolloScape数据集由50个类别的143,000张图像组成。

    2.2 Pros and Cons of MTL

    在本文中,我们提出了一种具有共享编码器的网络结构,该编码器可以共同学习。其主要优点是提高了效率、可伸缩性,可以利用先前的功能添加更多任务,并通过归纳迁移(任务的学习可转移特征)实现更好的泛化。我们将在下面更详细地讨论共享网络的优缺点。

    共享网络的优点:

    • 计算效率:共享功能背后简单易懂的直觉提高了计算效率。假设有两个类和两个独立的网络,分别占用50%的处理能力。如果有可能在两个网络之间共享30%,则每个网络都可以重复使用额外的15%来单独创建一个稍大的网络。有大量的经验证据表明,网络的初始层是与任务无关的(oriented Gabor filters),我们应该能够进行一定程度的共享,越多越好。
    • 泛化和准确性:在忽略计算效率的情况下,共同学习的网络往往泛化得更好、更准确。这就是为什么ImageNet上的迁移学习非常流行的原因,那里有网络学习非常复杂的类别,比如区分特定种类的狗。因为拉布拉多犬和博美拉多犬这两个物种之间的细微差别是后天习得的,所以它们更善于检测一项更简单的犬类检测任务。另一个论点是,当他们共同学习时,过度适应某项特定任务的可能性较小。
    • 可扩展到更多任务,如流量估计、深度、通信和跟踪。因此,可以协调共同的CNN特写流水线,以用于各种任务。

    共享网络的缺点:

    • 在非共享网络的情况下,算法是完全独立的。这可以使数据集设计、体系结构设计、调优、硬负面挖掘等变得更简单、更容易管理。
    • 调试共享网络(尤其是当它不工作时)相对较难。

    3. Proposed Algorithm and Results

    3.1 Network Architecture

    在本节中,我们将报告我们计划改进的基线网络设计的结果。我们在图1的高级框图中提出了一种联合学习的共享编码器网络体系结构。我们实现了一个由3个分割类(背景、道路、人行道)和3个对象类(汽车、人、骑车人)组成的两任务网络。

    为了在低功耗嵌入式系统上实现可行性,我们使用了一个名为 Resnet10 的小型编码器,该编码器完全共享这两个任务。FCN8 作为语义分割的解码器,YOLO 作为目标检测的解码器。语义分割的损失函数是最小化误分类的交叉熵损失。对于几何函数,以平方误差损失的形式将目标定位的平均精度作为误差函数。对于这两个任务,我们使用单个损失的加权和 L = w s e g ∗ L s e g + w d e t ∗ L d e t L=w_{seg}∗L_{seg}+w_{det}∗L_{det} L=wsegLseg+wdetLdet。在鱼眼相机具有较大空间变异畸变的情况下,我们使用多项式模型实现了镜头畸变校正。

    在这里插入图片描述

    3.2 Experiments

    在这一部分中,我们将解释实验设置,包括使用的数据集、训练算法细节等,并讨论结果。

    我们在包含5000张图像和两个公开可用的数据集Kitti[5]和CitySces[3]的内部鱼眼数据集上进行了训练和评估。我们使用Keras[2]实现了不同提出的多任务架构。我们使用了来自ImageNet的预先训练好的Resnet10编码器权重,然后针对这两个任务进行了微调FCN8上采样层使用随机权重进行初始化。

    我们使用ADAM优化器,因为它提供了更快的收敛速度,学习率为0.0005。优化器采用分类交叉熵损失和平方误差损失作为损失函数。以平均类IOU(交集)和每类IOU作为语义分割的精度度量,以平均平均精度(MAP)和每类平均精度作为目标检测的精度度量。由于多个任务需要内存,所有输入图像的大小都调整为1280x384

    表1总结了在Kitti、Citycapes和我们的内部鱼眼数据集上STL网络和MTL网络所获得的结果。这旨在为合并更复杂的多任务学习技术提供基准精度。我们将分割网络(STL Seg)和检测网络(STL Det)与执行分割和检测的MTL网络(MTL、MTL100和MTL100)进行比较。

    在这里插入图片描述

    我们测试了MTL损耗的3种配置,第一种配置(MTL)使用分割损耗和检测损耗的简单和 ( w s e g = w d e t = 1 ) (w_{seg}=w_{det}=1) (wseg=wdet=1)。另外两个配置MTL10MTL100使用任务损失的加权和,其中分割损失分别用权重 w s e g = 10 w_{seg}=10 wseg=10 w s e g = 100 w_{seg}=100 wseg=100加权。这弥补了任务损失尺度的差异:在训练过程中,分割损失是检测损失的10-100倍

    MTL网络中的这种加权提高了3个数据集的分割任务的性能。即使分割任务的MTL结果略低于STL(Single-task Learning)结果,本实验也表明,通过正确调整参数,多任务网络具有学习更多的能力。此外,通过保持几乎相同的精度,我们在内存和计算效率方面有了显著的提高。我们利用几种标准的优化技术来进一步改善运行时间,并在汽车级低功耗SOC上实现30fps。

    4 Conclusion

    本文中,我们讨论了多任务学习在自动驾驶环境中的应用,用于联合语义分割和目标检测任务。首先,我们激发了完成这两项任务的需要而不仅仅是语义分割。

    然后我们讨论了使用多任务方法的利弊。我们通过精心选择编解码器,构建了一个高效的联合网络,并对其进行了进一步优化,在低功耗的嵌入式系统上达到了30fps。

    我们分享了在三个数据集上的实验结果,证明了联合网络的有效性。在未来的工作中,我们计划探索增加视觉感知任务,如深度估计、流量估计和视觉SLAM。

    更多精彩内容,请关注我的公众号【AI 修炼之路】!

    更多相关内容
  • 工作一段时间后,或者参与一个项目后,你会发现...企业可以通过战略目标拆解,实现自上而下目标对焦;任务拆解执行,实现自下而上结果汇总;内外团队协作,实现信息高效流转;任务风险管理,实现风险快速传递;通过任务

    工作一段时间后,或者参与一个项目后,你会发现团队里每个人都非常优秀,工作也充满热情,但是整体的效率就是上不去?因为,一个团队的整体效率,并不是每个人效率的相加。因为这里面有协作成本。

    如何通过降低协作成本,来提高团队的工作效率呢?以前看到的是技术、产品和人员的问题,其实都是组织的问题。只有提高组织能力,才能提高团队的工作效率。

    如何提高组织能力?

    企业可以通过战略目标拆解,实现自上而下目标对焦;任务拆解执行,实现自下而上结果汇总;内外团队协作,实现信息高效流转;任务风险管理,实现风险快速传递;通过任务的沉淀复盘和任务转模板,让能力复用,提升企业的组织能力。

    智办事是第一个提出以“目标+事情”为中心的企业数字化管理与协作工具,深度整合目标管理、项目管理、任务协作、智能待办、风险管理和工作流程标准化,赋能企业组织升级,助力企业数字化转型。

    1、目标管理

    团队协作效率低,很大的一个原因是,一线执行层并没有按照战略目标推进工作。

    为什么会出现这个情况?因为大部分企业都没有做到战略目标拆解落地,统一组织目标和个人目标,达成共识。

    智办事可以制定公司的目标,然后将公司的目标拆解为部门的目标,部门的目标又可以拆解为团队的目标,最后团队的目标可以拆解为员工个人的目标。

    最后目标拆解会以目标树的形式展示,直观地展示企业战略目标的层次关系和组织结构;子目标的完成可以保证上级目标的实现;大大提高成员的自我驱动力和工作效率。

    这样目标拆解下来,企业、部门、团队和个人的目标都非常明确,并且目标和价值观都是统一的,知道团队前进的方向是什么,不会出现偏离方向的问题。自己拆解的目标,他也更有动力去执行任务。

    其实这就是目标管理和精细化管理。

    目标管理(MBO)是著名的管理大师彼得·德鲁克提出的,是以目标的制定和拆解、目标的实施及完成情况的检查、奖惩为手段,通过员工的自我管理来实现企业的经营目的一种管理方法。

    精细化管理是科学管理之父泰勒最早提出的,是一种对战略和目标进行拆解、细化和落实的过程,是让企业的战略规划能有效贯彻到每个环节并发挥作用的过程,同时也是提升企业整体执行能力的一个重要途径。

    企业只有实现了目标管理和精细化管理,才可以更有效地完成战略目标。

    2、任务管理

    为了实现企业的战略目标,还需要做任务管理。基于企业目标的任务才是有价值的企业任务。管理者要能够把战略拆解为目标,目标有效拆解为任务。

    任务管理首先要做到的是将任务拆解,并建立流程标准。不仅要做成事情,还要高效地做成事情。

    任务拆解可以使用WBS工具:WBS是工作分解结构,说的是项目要拆解为任务,任务要拆解为一项项工作,再把工作分配到每个人的日常活动中,直到拆解不下去为止。

    需要注意的是:任务只能有唯一负责人,其他人都是协作者;所有人的日常工作加在一起,应该得到任务的总和,不能缺漏;每个任务都要以结果为导向,一定要定义可交付的成果。

    在智办事里面,你可以将任务层层拆解,任务还可以和目标建立关联,事情是为目标服务的,一切都以目标为导向。

    任务还可以建立清单步骤,防止遗漏重要步骤,也可以形成标准的执行规范。你会发现公司的事情有了具体的载体,就是一个个的任务,智办事让事情清晰可见。

    3、信息流转

    高效的团队协作,必须要让信息高效流转。目前很多企业的团队成员之间的沟通主要依靠聊天工具和口头沟通。割裂的系统形成信息孤岛,而信息流转的效率决定了企业的生产力。

    其实这就是在办公上使用IM软件进行沟通协作的弊端,这些软件是以“人”为中心,功能主要是私信和群聊,讨论内容很容易偏离具体的“事情”。

    在智办事这个统一的办公协作平台沟通协作,以“事情”为中心,人围绕着具体的事情工作,信息得以高效流转,智办事解决了信息难以沉淀、资料分散凌乱和信息严重失真的问题。

    使用智办事后,专事专任务,有事情就建任务。成员因任务和“@”而聚集,它就像是一个“集结号”,建立一个临时跨部门团队,让任务协作人员快速加入到任务参与协作,共同解决这个任务。沟通信息非常聚焦,信息得以高速流转,以秒级速度得到回应。

    4、风险管理

    管理一个公司或者团队,最困难的事情莫过于追踪大家的工作状况,往往是任务分配下去了,无法及时掌握进度。做绩效评估时候仅凭主观判断,无法清晰掌握团队的工作成绩和工作效率。这样团队的协作效率就会非常低。

    如何做好风险管理?

    事后不如事中控制,事中不如事前控制。可视化是预防项目出现风险的重要手段。

    在智办事里面,每个目标和任务都有进度功能,可以实时展示事情的进展情况。进展汇报功能可以及时上报任务的风险情况,信息是同步和透明的,可以有效防止任务延期。

    团队成员可以随时主动上报风险任务,如果子任务出现延期风险,系统会自动通知到总任务,方便团队成员及时解决风险任务。

    项目主管可在任务总览中查看任务统计、甘特图和资源视图,便于及时作出及时的调整和风险干预。

    任务统计可以查看项目的任务总量、当前风险任务数;甘特图可以直观展示项目的完成情况,让管理者对项目进展有一个准确的评估,把控重要任务的进度;资源视图可以查看团队成员的工作量,以便做出资源调整。

    5、复盘改善

    当一个团队的项目持续了几个月的时候,需要用复盘的方式将经历转化为经验,经验复用,再通过复盘,将经验转化为可被执行的有效Action,这样个人和团队的能力都会提升,下次项目过程中的经历会更加有效。

    项目复盘可以先按照项目成员自己的思路去复盘,然后再整体复盘。复盘需要考虑目标回顾、结果陈述、过程分析和规律总结。

    智办事通过将任务层层拆解,持续沉淀出任务标准流程,多次复盘和迭代任务流程,优化项目流程,逐渐将个人能力沉淀为组织能力,形成能力复用,最终实现赋能全体团队成员。

    通过固化项目的标准结构流程,最后可以将项目转换为模板,做到赋能组织成员和明确工作流程,实现能力的复制和流程的复制。

    今天的分享到这里就结束啦,感谢你能看到这里,听说三连的小伙伴都好运连连! 喜欢的话就点击关注小智吧,更多实用干货等你获取!

    展开全文
  • YOLOv5+DeepSORT多目标跟踪计数精讲

    千人学习 2021-05-10 23:39:05
    基础篇包括多目标跟踪任务介绍、数据集和评估指标;   实践篇包括Win10和Ubuntu系统上的YOLOv5+DeepSORT的多目标跟踪和计数具体的实践操作步骤演示,特别是对行人、车辆的ReID数据集讲解了训练方法; &...
  • 目标检测 数据方面 Label Smoothing 模型方面 样本不均衡 目标遮挡 More 更多可见计算机视觉-Paper&Code - 知乎 小目标检测 数据方面 将图像resize成不同的大小 对小目标进行数据增强,过采样策略...

    目录

    小目标检测

    数据方面

    Label Smoothing

    模型方面

    样本不均衡

    目标遮挡

    More


    更多可见计算机视觉-Paper&Code - 知乎

    小目标检测

    数据方面

    1. 将图像resize成不同的大小
    2. 对小目标进行数据增强,过采样策略oversampling,重复正样本数
    3. 在图片内用实例分割的Mask抠出小目标图片再使用paste等方法

    常见的几种数据增强方法如下

    1. cutout:将图片区域随机扣除
    2. cutmix:将cutout扣除后的区域用同一batch中样本进行填充
    3. mixup:随机将两张图片进行融合
    4. mosaic:在将四张样本图片拼接起来,模型在一个batch中看到了4倍更多的信息

    分割中常用的8倍+1的输入大小,513 (PASCAL VOC) 或者 769 (Cityscapes)

    align_corners=False默认

    align_corners =True 分割中常用

    Label Smoothing

    Label Smoothing Regularization(LSR),即标签平滑正则化。主要也可以在模型蒸馏里进行soft label学习而不是one hot。

    onehot:便于生成、但类别间无关,对错误标签很敏感,易高置信度过拟合

    soft label:能够赋予不同类别间的一定相关性。本质上LSR可以降低模型的置信度,抑制正负样本输出差值,防止模型过拟合,从而提高其健壮性和性能

    模型方面

    1. 提高细节信息,增加空洞卷积,将下采样从32倍改为8倍
    • 传统的分类网络为了减少计算量,都使用到了下采样,而下采样过多,会导致小目标的信息在最后的特征图上只有几个像素(甚至更少),信息损失较多
    • 下采样扩张的感受野比较利于大目标检测,而对于小目标,感受野可能会大于小目标本身,导致效果较差
    • 空洞卷积可以很好的扩大卷积核的感受野,可以很好的保留图像的空间特征,也不会损失图像信息,适用于小目标检测(不过对于像素级任务空洞卷积会导致像素连续信息丢失)

    2. 特征金字塔网络FPN

    FPN论文链接

    保持高分辨率浅层特征图感受野小适合小目标检测,细节信息更加丰富。深层特征图感受野大适合大目标检测,语义信息更丰富

    3. Scale Normalization for Image Pyramids

    在训练时,每次回传那些大小在预先指定范围内的proposal的gradient,而忽略掉过大或者过小的proposal;在测试时,建立大小不同的Image Pyramid,同样只保留那些大小在指定范围内的输出结果

    4. 更多更稠密的Anchor

    5. GAN方法

    使用GAN对小目标生成一个和大目标很相似的Super-resolved Feature,然后把这个Super-resolved Feature叠加在原来的小目标的特征图上,以此增强对小目标特征表达来提升小目标的检测性能

    6. 利用Context信息

    检测人脸时,图片中不会仅仅只有一张脸,会有其他部位

    7. loss上增加小目标的权重

    样本不均衡

    子韵如初:Paper Reading - 综述系列 - 语义分割中正负样本不均衡问题

    Paper Reading - Loss系列 - OHEM Training Region-based Object Detectors with Online Hard Example Mining - 知乎

    目标遮挡

    Repulsion Loss: Detecting Pedestrians in a Crowd

    行人之间互相遮挡,导致传统的检测器容易受遮挡的干扰。提出了Repulsion Loss来尽可能让预测框贴近真实框的同时,又能与同类排斥

    假设我们目标行人是左一,但是他被左二被遮挡了。那么左二的GT会导致模型的预测框去往左二移动shift

    其次,NMS操作是为了抑制去除掉多余的框。 左一的预测框因为距离左二太近,会被左二的预测框给抑制,导致出现漏检。导致任务对NMS阈值有很强的的敏感性阈值太低了会带来漏检,阈值太高了会标出错误的目标

    现有的方法仅仅要求预测框尽可能靠近目标框,而没有考虑周围附近的物体。因此提出Repulsion Loss,该损失函数在要求预测框Pred靠近目标框Target(吸引)的同时,也要求预测框Pred远离其他不属于目标Target的真实框(排斥)该损失函数很好的提升了行人检测模型的性能,并且降低了NMS对阈值的敏感性

    More

    人体姿态识别中,如图,应该怎么样区分那条腿属于哪个人的呢。可通过人体部位距离进行判定

    展开全文
  • 前言单阶段目标检测通常通过优化目标分类和定位两个子任务来实现,使用具有两个平行分支的头部,这可能会导致两个任务之间的预测出现一定程度的空间错位。本文提出了一种任务对齐的一阶段目标检测(TOOD),它以基于...

    前言 单阶段目标检测通常通过优化目标分类和定位两个子任务来实现,使用具有两个平行分支的头部,这可能会导致两个任务之间的预测出现一定程度的空间错位。本文提出了一种任务对齐的一阶段目标检测(TOOD),它以基于学习的方式显式地对齐这两个任务。

    TOOD在MS-CoCO上实现了51.1Ap的单模型单尺度测试。这大大超过了最近的单阶段检测器,如ATSS(47.7AP)、GFL(48.2AP)和PAA(49.0AP),它们的参数和FLOPs更少。

    本文来自公众号CV技术指南的论文分享系列

    关注公众号CV技术指南 ,专注于计算机视觉的技术总结、最新技术跟踪、经典论文解读。

    图片

    论文:TOOD: Task-aligned One-stage Object Detection

    代码:https://github.com/fcjian/TOOD

    Background


    目标检测通常被表示为通过联合优化目标分类和定位的多任务学习问题。由于分类和定位的学习机制不同,两个任务学习到的特征的空间分布可能不同,当使用两个单独的分支进行预测时,会导致一定程度的错位

    最近的一级目标检测器试图通过聚焦于目标的中心来预测两个独立任务的一致输出。他们假设位于对象中心的锚(即,无锚检测器的锚点,或基于锚的检测器的锚盒)可能给出分类和定位两者的更准确的预测。

    例如,最近的FCOS和ATSS都使用中心度分支来增强从对象中心附近的锚点预测的分类分数,并为相应锚点的定位损失分配更大的权重。此外,FoveaBox将对象的预定义中心区域内的锚视为正样本。这样的启发式设计已经取得了很好的效果,但这些方法可能会受到两个限制

    (1)分类和定位独。目前的单级检测器通过两个独立的分支(即头部)并行独立地进行目标分类和定位。这种由两个分支组成的设计可能会导致两个任务之间缺乏交互,从而导致在执行它们时预测不一致。如图1的“result”栏所示,TSS检测器(左上角)识别“餐桌”的对象(用红色块显示的锚点表示),但更准确地定位“披萨”的另一个对象(红色边界框)。

    图片

    图1:由ATSS(顶行)和TOOD(底行)预测的检测结果(‘Result’)以及分类得分(‘Score’)和定位得分(‘IoU’)的空间分布图示。

    (2)与任务无关的样本分配。大多数无锚点检测器使用基于几何的分配方案来选择对象中心附近的锚点进行分类和定位,而基于锚点的检测器通常通过计算锚框和ground truth之间的IoUs来分配锚盒。然而,用于分类和定位的最佳锚点通常是不一致的,并且可能根据对象的形状和特征而变化很大。广泛使用的样本分配方案是与任务无关的,因此可能很难对这两个任务做出准确而一致的预测,如图1中ATSS的 ‘Score’ 和 ‘IOU’ 分布所示。‘Result’列还说明最佳定位锚(绿色块)的空间位置可能不在对象的中心,并且它与最佳分类锚(红色块)不能很好地对齐。因此,在非最大值抑制(NMS)过程中,精确的bounding box可能会被精度较低的bounding box所抑制。

    创新思路


    为了解决这些局限性,论文提出了一种任务对齐的一阶段目标检测(Task-aligned One-stage Object Detection, TOOD),旨在通过设计一种新的头部结构和面向对齐的学习方法来更精确地对齐这两个任务:

    针对传统的一步法目标检测中分类和定位分别采用两个分支并行实现的特点,设计了一种任务对齐头(T-Head),以增强两个任务之间的交互性。这使得这两项任务能够更协作地工作,进而更准确地调整它们的预测。T-Head在概念上很简单:它计算任务交互特征,并通过一种新颖的任务对齐预测器(TAP)进行预测。然后,它根据任务对齐学习提供的学习信号对两个预测的空间分布进行对齐,如下所述。

    为了进一步克服未对齐问题,论文提出了一种任务对齐学习(TAL)来明确两个任务的最优锚点之间的距离它是通过设计一个样本分配方案和一个与任务相关的损失来执行的。样本分配通过计算每个锚点的任务对齐度来收集训练样本(正样本或负样本),而任务对齐损失逐渐统一最佳锚点,以便在训练期间预测分类和定位。因此,在推断时,可以保留分类得分最高并且共同具有最精确定位的边界框。

    提出的T-Head和学习策略可以协同工作,在分类和定位两个方面做出高质量的预测。论文的主要贡献可以概括为:

    (1)设计了一种新的T-Head,在保持分类和定位特征的同时,增强了分类和定位之间的交互,并进一步将两个任务在预测上对齐;

    (2)论文提出了TAL,在识别出的任务对齐锚点上显式地对齐两个任务,并为所提出的预测器提供学习信号;

    (3)论文在MSCOCO上进行了广泛的实验,TOOD达到了51.1AP,超过了现有的单级检测器,如ATSS。定性结果进一步验证了任务对齐方法的有效性。

    Methods


    与最近的单级探测器类似,TOOD具有一个“主干-FPN-头”的整体流水线。此外,考虑到效率和简单性,TOOD在每个位置使用一个锚点(与ATSS相同),其中“锚”是指anchor-free检测器的锚点,或者是anchor-based检测器的锚盒。

    图片

    图2. TOOD的整体学习机制。

    首先,T-Head对FPN特征进行预测。其次,使用预测来计算每个锚点处的任务对齐度量,基于该度量,TAL为T-Head产生学习信号。最后,T-Head对分类和定位的分布进行了相应的调整。具体地说,对齐程度最高的锚点通过“Prob”(概率图)获得更高的分类分数,并通过学习的“偏移量”获得更准确的边界框预测。

    如图2所示,T-Head和TAL可以协作改进两项任务的一致性。具体地说,T-Head首先对FPN特征进行分类和定位预测。然后,TAL基于一种新的任务对齐度量来计算任务对齐信号,该度量度量测量两个预测之间的对齐程度。最后,T-Head在反向传播过程中使用TAL计算的学习信号自动调整其分类概率和定位预测。

    Task-aligned Head


    为了设计一种高效的head结构,以改进单级探测器中head的传统设计(如图3(A)所示)。论文通过考虑两个方面来实现这一点:(1)增加两个任务之间的交互,(2)增强检测器学习比对的能力。T-Head如图3(B)所示,它有一个简单的特征提取器和两个任务对齐的预测器(TAP)。

    图片

    图3.传统的并行头和提出的T-Head之间的比较。

    为了增强分类和定位之间的交互,论文使用特征提取器来学习来自多个卷积层的任务交互特征堆栈,如图3(B)中的蓝色部分所示。这种设计不仅方便了任务的交互,而且为这两个任务提供了多层次的特征和多尺度的有效感受野。形式上,Xfpn表示FPN特征。特征提取器使用具有激活函数的N个连续卷积层来计算任务交互特征:

    图片

    其中,conv k和δ分别指第k个卷积层和ReLU函数。因此,论文利用head的单个分支从FPN特征中提取丰富的多尺度特征。然后,将计算出的任务交互特征送入两个TAP进行分类定位。

    Task-aligned Predictor(TAP)


    论文对计算出的任务交互特征进行目标分类和定位,这两个任务可以很好地感知彼此的状态。然而,由于单一分支的设计,任务交互功能不可避免地在两个不同的任务之间引入了一定程度的功能冲突,这在其它论文中也有讨论。

    图片

    图4 Task-aligned Predictor(TAP)

    直观地说,对象分类和定位的任务具有不同的目标,因此聚焦于不同类型的特征(例如,不同的层次或感受野)。因此,论文提出了一种层注意机制(layer attention mechanism),通过在层级动态计算任务特征来鼓励任务分解。如图4所示,针对每个分类或定位任务分别计算特定于任务的功能:

    图片

    其中wk是可学习层注意w的第k个元素,它是根据跨层任务交互特征计算出来的,能够捕获层之间的依赖关系:

    图片

    其中X inter是通过平均池化获得。最后,从每个Xtask中预测分类或定位的结果:

    图片

    其中X task是X_k task的拼接特征,conv1是用于降维的1×1卷积层。然后,使用Sigmoid函数将Z task转换为密集分类分数P(H×W×80),或对象边界框B(H×W×4),其具有distance-to-bbox的转换。

    Prediction Alignment


    在预测阶段,通过调整两个预测的空间分布来进一步明确地对齐这两个任务:P和B。与以往只能基于分类特征或局部特征调整分类预测的中心度分支或IOU分支不同,论文通过使用计算的任务交互特征联合考虑两个任务来对这两个预测进行对齐。值得注意的是,分别对这两个任务执行对齐方法。

    图片

    如图4所示,论文使用空间概率图M∈(H×W×1)来调整分类预测:

    图片

    其中M是从交互特征计算的,从而允许它学习在每个空间位置的两个任务之间的一致性程度。同时,通过交互特征进一步学习空间偏移量映射O∈(H×W×8),用于调整每个位置的预测bounding box,从而对定位预测进行对齐。具体地说,学习的空间偏移使对齐程度最高的锚点能够识别其周围的最佳边界预测:

    图片

    值得注意的是,每个通道的偏移量都是独立学习的,这意味着对象的每个边界都有自己的学习偏移量。这允许对四个边界进行更准确的预测,因为它们中的每一个都可以单独从其附近最精确的锚点学习。因此,不仅协调了这两个任务,而且通过为每边确定一个精确的锚点来提高定位精度。

    对齐图M和O是从交互特征堆栈中自动学习的:

    图片

    T-Head是一个独立的模块,可以在没有TAL的情况下正常工作。它可以方便地以即插即用的方式应用于各种一级物体检测器,以提高检测性能

    Task Alignment Learning


    TAL与以前的方法有两个不同之处。首先,从任务对齐的角度,它基于设计的度量动态地选择高质量的锚。其次,它同时考虑锚点分配和权重。它包括一个样本分配策略和专门为协调这两项任务而设计的新损失

    为了应对NMS,训练实例的锚点分配应该满足以下规则:(1)对齐的锚点应该能够预测高分类分数,并进行精确的联合定位;(2)对齐错误的锚点应该具有低分类分数并随后被抑制。基于这两个目标,论文设计了一个新的锚点对齐度量来明确地度量锚点级别的任务对齐程度。对准度量被集成到样本分配和损失函数中,以动态地改进每个锚点处的预测。

    图片

    其中,s和u分别表示分类分数和IOU值。α和β用于控制锚点对齐度量中这两个任务的影响。

    对于每个实例,选择取值最大的锚点作为正样本,而将剩余的锚点作为负样本。同样,训练是通过计算专门为调整分类和定位任务而设计的新损失函数来执行的。

    Task-aligned Loss


    为了显式提高对齐锚点的分类得分,同时降低未对齐锚点(即t值较小)的分类得分,我们在训练过程中使用了替换正锚点的二进制标签。使用归一化t,即ˆt来代替正锚点的二进制标签,其中ˆt由以下两个性质来归一化:(1)确保硬实例的有效学习(对于所有对应的正锚点,这些硬实例通常具有较小的值);(2)基于预测bounding box的精度来保持实例之间的排序。

    因此,论文采用简单的实例级归一化来调整ˆt的规模:ˆt的最大值等于每个实例中的最大IOU值(u)。分类任务的损失函数定义如下:

    图片

    采用焦点损失进行分类,以缓解训练期间负样本和正样本之间的不平衡。其中i表示对应于一个实例的第i个锚点与负值锚点,j表示来自负负锚点的第j个锚点,γ是聚焦参数。

    与分类目标类似,根据ˆt重新加权为每个锚点计算的bounding box回归损失,并且GIoU loss(L_GIoU)可以重新表示如下:

    图片

    其中b和~b表示预测的边界框和相应的ground truth。TAL的总训练损失是L_cli和L_reg的总和。

    Conclusion


    1. 论文在MS-Coco上进行了广泛的实验,TOOD在MS-CoCO上实现了51.1AP的单模型单尺度测试。这大大超过了最近的单阶段检测器,如ATSS(47.7AP)、GFL(48.2AP)和PAA(49.0AP),它们的参数和FLOPs更少。

    图片

    图片

    2.不同训练样本分配方案之间的比较。‘Pos/neg’:正/负锚定分配。‘Weight’:锚定权重分配。‘fixed’:固定分配。‘ada’:自适应赋值。在这里,TAP根据最后head tower的分类和定位特征对齐预测。

    图片

    3.不同检测器中不同head结构的比较。

    图片

    4.可视化

    图片

    欢迎关注公众号 CV技术指南 ,专注于计算机视觉的技术总结、最新技术跟踪、经典论文解读。

    在公众号中回复关键字 “入门指南“可获取计算机视觉入门所有必备资料。

    其它文章

    CVPR2020 | D3S: 判别式单镜头分割跟踪器

    Pytorch 数据流中常见Trick总结

    计算机视觉中的transformer模型创新思路总结

    PNNX: PyTorch 神经网络交换格式

    ICCV2021 | 渐进采样式Vision Transformer

    MobileVIT:轻量级视觉Transformer+移动端部署

    ICCV2021 | SOTR:使用transformer分割物体

    ML2021 | PatrickStar:通过基于块的内存管理实现预训练模型的并行训练

    ICCV2021 | PnP-DETR:用Transformer进行高效的视觉分析

    ICCV2021 | Vision Transformer中相对位置编码的反思与改进

    2021-视频监控中的多目标跟踪综述

    一文概括机器视觉常用算法以及常用开发库

    统一视角理解目标检测算法:最新进展分析与总结

    给模型加入先验知识的常见方法总结    |    谈CV领域审稿

    全面理解目标检测中的anchor    |    实例分割综述总结综合整理版

    HOG和SIFT图像特征提取简述    |    OpenCV高性能计算基础介绍

    目标检测中回归损失函数总结    |    Anchor-free目标检测论文汇总

    小目标检测的一些问题,思路和方案    |    小目标检测常用方法总结

    2021年小目标检测最新研究综述

    深度学习模型大小与模型推理速度的探讨

    视频目标检测与图像目标检测的区别

    CV算法工程师的一年工作经验与感悟

    单阶段实例分割综述    |    语义分割综述    |    多标签分类概述

    视频理解综述:动作识别、时序动作定位、视频Embedding

    资源分享 | SAHI:超大图片中对小目标检测的切片辅助超推理库

    论文创新的常见思路总结    |    卷积神经网络压缩方法总结

    神经网络超参数的调参方法总结   |    数据增强方法总结

    归一化方法总结 | 又名"BN和它的后浪们"

    Batch Size对神经网络训练的影响    |    计算机视觉入门路线

    展开全文
  • 目标检测与目标定位的理解

    千次阅读 2022-02-15 21:48:47
    针对单个目标任务,识别就是给定一张图片,要让计算机告诉你图片中是什么。 目标定位 定位任务不仅要识别出图像中是什么,还要给出目标在图像中的位置信息。简单的说,就是用一个矩形框把识别的目标框出来(有时候...
  • 优秀的前端工程师任务目标和实践

    千次阅读 2017-11-01 10:12:54
    前端工程师的工作目标: 在设计师和工程师之间创建可视化的语言;用可视化的设计,定义一组代表内容、品牌和功能的组件;为 Web 应用程序的公约、框架、需求、可视化的语言和规格设定底线;定义 Web 应用程序的...
  • 什么是解耦头? 在做实例分割时,我们需要输出分类置信度图和实例mask图; 在做目标检测时,我们需要输出目标的分类和边框位置; 所以,这两类任务都需要输出分类和位置!...有实验表明使用解耦头之后目标检测任务
  • (1)细化系统需求导出软件...(2)解决需求间的冲突:需求协商,用户进行讨论,数据处理(功能、硬件要求、性能要求是否合理) (3)确定软件边界(核心任务):界面,use-case图,system类方法的前后置条件 ...
  • 目标跟踪介绍(单目标

    万次阅读 多人点赞 2019-06-21 22:01:55
    随着研究人员不断地深入研究,视觉目标跟踪在近十几年里有了突破性的进展,使得视觉跟踪算法不仅仅局限于传统的机器学习方法,更是结合了近些年人工智能热潮—深度学习(神经网络)和相关滤波器等方法,并取...
  • 本文简要介绍了目标检测PASCAL VOC数据集。 PASCAL VOC数据集简介二级目录三级目录 简介 二级目录 三级目录
  • 【游戏开发实战】Unity从零做一个任务系统(含源码工程 | 链式任务 | 主线任务 | 分支任务
  • 图像目标检测任务在过去三年的时间取得了巨大的进展,检测性能得到明显提升。但在视频监控、车辆辅助驾驶等领域,基于视频的目标检测有着更为广泛的需求。由于视频中存在运动模糊,遮挡,形态变化多样性,光照变化...
  • 如果你的团队正在努力赶在截止日期之前完成任务,你需要选择一个项目管理或任务管理平台来保证任务按计划进行,Jack Wallen 介绍了每款工具并帮助你选择一款最适合的。
  • 学习率(Learning rate,简称lr)作为目标检测这类监督学习中最重要的超参,其决定着分类函数或边界框回归函数能否收敛到局部最小值以及何时收敛到最小值。正确的学习率可使目标函数在合适的时间内收敛到局部最优。...
  • 目标分割、目标识别、目标检测和目标跟踪的区别

    千次阅读 多人点赞 2019-07-16 13:15:39
    1)目标分割,任务是把目标对应的部分分割出来。 2)目标检测,检测到图片当中的目标的具体位置 3) 目标识别,即是在所有的给定数据中,分类出哪一些sample是目标,哪一些不是。这个仅仅做一下分类任务。 4)目标...
  • 从0开始实现目标检测——原理篇

    千次阅读 2022-02-15 19:56:07
    收到一个任务,对交通场景中的图片进行目标检测,要能识别出指定的6个类别物品在图中的位置。比如要识别下图中的小汽车、行人、自行车、卡车等。 比如下图: 经过识别后,如图所示: 经过目标检测模型预测的...
  • 姊妹篇:ILSVRC2016目标检测任务回顾(上)--图像目标检测 图像目标检测任务在过去三年的时间取得了巨大的进展,检测性能得到明显提升。但在视频监控、车辆辅助驾驶等领域,基于视频的目标检测有着更为广泛的需求。...
  • 目标跟踪算法综述

    万次阅读 2021-11-30 13:49:15
    前言: 目标跟踪是计算机...目标跟踪融合了图像处理、机器学习、最优化等多个领域的理论和算法,是完成更高层级的图像理解( 如目标行为识别) 任务的前提和基础。 目标跟踪的基本任务是在一段视频序列中给定目标的初始..
  • 目标检测识别算法研究

    千次阅读 2019-05-03 16:20:33
    目标检测识别是很多计算机视觉任务的基础,通俗地讲,其目的是在目标场景中将目标用一个个框框出来,并且识别出这个框中的物体。即包括加测(where)和识别(what)两个过程。 1.技术难点 目标检测识别任务...
  • 目标分类与目标检测

    万次阅读 2019-05-10 11:00:29
    通常情况下,我们使用 mAP@0.5,mAP@0.5 的意思是在测试集中,为了使目标能够标记为“正检测样本”,这个目标与真实值的 IoU 值至少必须达到 0.5(并且被正确标记类别)。这个 0.5 值是可以调整的,但是在大多数的...
  • 目标检测遮挡问题及解决方案汇总

    千次阅读 2022-03-14 10:44:37
    部分内容来自: 目标检测之小目标检测和遮挡问题_AndyJ的学习之旅-CSDN博客_遮挡...如果检测任务目标是汽车和人,那么汽车被人遮挡,是不同类间遮挡 如果两个人一起走路,一个人被另一个人遮挡,算同类间遮挡,...
  • 但凡要给自己定目标,考虑时间管理、效能提升的人,都绕不开这三个概念:任务目标和计划。 弄不清楚三者关系并且各种混用的大有人在,比如说:周计划和周任务、月目标和月计划、年目标和年计划的区别是什么?你...
  • 计算机视觉的上游任务和下游任务

    千次阅读 2022-04-22 16:14:24
    这几天看CV论文和视频,经常被提及什么上游任务下游任务,搜了很多资料才看懂。如果理解有误烦请各位前辈大佬指正! ------------------------------------------------------------------------------------------...
  • 目标检测

    千次阅读 2021-12-14 10:22:48
    Chen等提出了一个针对小目标的数据集,对小目标进行定义:同一类别中,所有目标实例的相对面积,即边界框面积图像面积之比的中位数在0.08%~0.58%之间。如在640×480\times480×480像素分辨率图像中,16×1616\...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 984,839
精华内容 393,935
关键字:

任务目标与目标任务的意思