精华内容
下载资源
问答
  • 目标检测主干网络
    千次阅读
    2019-12-26 16:26:08

    目标检测算法 CNN主干网络
    SSD

    在深度学习目标检测算法中很重要的一个部分就是特征提取,用来提取特征的就是CNN中的backbone,Backbone的复杂度很大程度上决定了目标检测算法的耗时。

    例如我们常说的SSD算法就是Backbone为VGG16的SSD,后来由于工程化场景限制,衍生出一系列兼顾适应场景精度和速度的网络。例如MobileNet-SSD,Resnet-SSD,RefineDet-SSD

    例如我们常说的YOLO,其Backbone是darkNet,后来也有同学做出了MobileNet-YOLO

    R-CNN的文章表明,将大规模的多尺度的分类问题中训练的模型作为目标检测的预训练模型,可以为训练检测器提供更丰富的语义信息,且可以提高检测性能。 在后来的几年中,这种方法已成为大多数对象检测器的默认策略。

    在此,总结一下在目标检测算法中常用的一些CNN Backbone.

    开始VGG16是在AlexNet基础上发展来的,其结构是直筒型,由五组卷积层和三个全连接层组成,在每一个组中使用最大值池化去降低空间维度,VGG16提出一个观点:通过堆加卷积层增加网络的深度,可以提高模型的表达能力。这个观点在当时一度很流行,但是后来人们才发现,如果使用SGD去训练网络,当网络深度到达一定数量之后(20层),模型训练和优化会遇到问题,“梯度弥散”导致深层的网络反而会比浅层的网络表现更差,这就被称为“网络退化”。所以直筒型的网络结构,也不可能无限制的堆积下去。

    所以在2016年,Resnet被提出,主要是在网络中增加shortcut连接,降低训练优化难度。在resnet中有一个层可以直接跳过非线性层直接将数据传递到下一层。所以特征图可以被看做成浅层的激活和残差函数的求和,这样深层网络向浅层网络反传梯度的时候就像有了一条高速公路,所以再深的网络都不怕梯度弥散了,常见的resnet有16层到152层。

    后来,何恺明又提出一个resnet的预激活变体(pre-activation variant of resnet),被称为resnetV2,其实我们现在常说的resnet就是这个V2版本。作者的实验显示,合适的BN层的顺序可以提高原始Resnet的表现,这样一个非常简单且有效的改进直接使得resnet的层数可以达到1000层,增加深度的同时还有精度提升。

    resnetV2

    再后来,又有个人觉得resnet还可以改进,他认为resnet没有全部利用好浅层的特征,导致参数量有些浪费,所以他提出了DenseNet,在2017年的CVPR直接被评为best paper。作者在这篇文章依然保持着ShortCut,同时做了一个疯狂的举动,把所有层都连接起来了,如下图所示。主要优点就是:增强特征传播,鼓励特征复用,更少的参数量。

    再后来,何恺明大神离开了MSRA,加入了FaceBook,和RBG大神混到了一起,又搞出了一个ResNeXt,其主要思想是将分组卷积(Group Convolution)引进到了resnet中。101层的ResNeXt精度可以和ResNet相当,但是计算量只有后者的一半。从这个时间节点可以看出来,网络的精度再往上提升,如果按照现有的套路走确实很困难了,得另辟蹊径。所以很多学者的目标就转为研究保证精度不掉,降低计算量。

    再后来,谷歌提出MobilNet系列,截止到目前,MobileNetV1,V2,V3都已经问世。MobileNetV1的文章据说成文很早,但是发表出来的时间较晚。从MobileNetV1的结构中就可以看到依然是直筒型的,只是采用了DepthWise代替了传统的卷积,就已经将参数量优化了许多,并且精度也相当。将CNN部署到移动设备的进程又推进了一步。V2采用了"倒瓶颈层“的网络结构,不再是直筒型。V3是采用NAS技术搜索出来的最优结构。

    上面所列举出来的网络都是常见的用作目标检测算法的BackBone,但是别忘了它们设计之初都是用来做分类任务的,所有的表现性能都是在分类测试集上得到的分数,用它们来搭建目标检测算法之后的预训练模型也是在ImageNet这种分类数据集上训练的。直接将分类模型的权重迁移到目标检测上来,其实不是最优的,因为目标检测和图片分类有一个潜在的冲突:

    • 分类算法要求有很大的感受野,更多地关注空间不变性(spatial invariance),所以有很多的下采样操作被用来降低特征图的分辨率,所以最后生成的的特征图具有三个特征,低分辨率,空间不变性,大的感受野。但是在目标检测中,高分辨率的空间信息对于准确的定位目标具有很重要的作用。
    • 分类只需要在单一的特征图上做预测就可以了,但是检测需要在不同表达能力的特征图上检测多尺度目标

    后来DetNet被提出来,用来平衡目标检测和分类网络的之间的冲突。使用了膨胀卷积(dilated convolutions)去增大感受野,DetNet也是在分类数据集上预训练,用来目标检测的BackBone。

    总结一下:目标检测中为了提升精度而改进主干网络的方法最近变得越来越少了,很多文章都转向去研究怎么减少计算量不降低精度,从而更加适应工程部署。所以我推荐,刚开始做目标检测的同学们,去学习一下经典的网络结构和原理就好了,把重点放在研究LightWeight CNN上,不是花时间去研究怎么刷榜,刷榜对于现在来说意义不大了。

    获取上面出现的所有文章,公众号回复“07”
    在这里插入图片描述

    更多相关内容
  • 目标检测-SSD主干网络

    2021-06-25 14:26:45
    1、RESIZE图像到300 x 300 x 3 2、原始VGG的卷积和池化都保存下来、后续的三个全连接层被转换为了conv6-2 conv-7-2 conv8-2 con9-2 用于提取更多的特征窗口 300,300,3 -> 300,300,64 ->...

    1、RESIZE图像到300 x 300 x 3

    2、原始VGG的卷积和池化都保存下来、后续的接上了conv6-2 conv-7-2 conv8-2 con9-2 用于提取更多的特征窗口 

    300,300,3 -> 300,300,64 -> 300,300,64 -> 150,150,64 -> 150,150,128 -> 150,150,128 -> 75,75,128 -> 75,75,256 -> 75,75,256 -> 75,75,256 -> 38,38,256 -> 38,38,512 -> 38,38,512 -> 38,38,512 -> 19,19,512 ->  19,19,512 ->  19,19,512 -> 19,19,512
    到base结束,我们获得了一个19,19,512的特征层
    、pool5 19x19x512
    、conv6_512 _3 19x19x1024

    每个网格对应多个boxes 也就是先验框.

    3、VGG主干网络

    增加的conv6-2 conv-7-2 conv8-2 con9-2

    4、处理特征 分别做回归和分类

    展开全文
  • 昨天,来自 Facebook AI Research 的 Yanghao Li、何恺明等研究者在 arXiv 上上传了一篇新论文,证明了将普通的、非分层的视觉 Transformer 作为主干网络进行目标检测的可行性。他们希望这项研究...

    点击下方卡片,关注“CVer”公众号

    AI/CV重磅干货,第一时间送达

    转载自:机器之心 | 编辑:张倩、小舟

    做目标检测就一定需要 FPN 吗?昨天,来自 Facebook AI Research 的 Yanghao Li、何恺明等研究者在 arXiv 上上传了一篇新论文,证明了将普通的、非分层的视觉 Transformer 作为主干网络进行目标检测的可行性。他们希望这项研究能够引起大家对普通主干检测器的关注。

    237856842f67a8df7db028e2f0af02b4.png

    研究概览

    11e3e62bd6480b372c5d272e89045a70.png

    Exploring Plain Vision Transformer Backbones for Object Detection

    论文链接:https://arxiv.org/abs/2203.16527

    当前的目标检测器通常由一个与检测任务无关的主干特征提取器和一组包含检测专用先验知识的颈部和头部组成。颈部 / 头部中的常见组件可能包括感兴趣区域(RoI)操作、区域候选网络(RPN)或锚、特征金字塔网络(FPN)等。如果用于特定任务的颈部 / 头部的设计与主干的设计解耦,它们可以并行发展。从经验上看,目标检测研究受益于对通用主干和检测专用模块的大量独立探索。长期以来,由于卷积网络的实际设计,这些主干一直是多尺度、分层的架构,这严重影响了用于多尺度(如 FPN)目标检测的颈 / 头的设计。

    在过去的一年里,视觉 Transformer(ViT)已经成为视觉识别的强大支柱。与典型的 ConvNets 不同,最初的 ViT 是一种简单的、非层次化的架构,始终保持单一尺度的特征图。它的「极简」追求在应用于目标检测时遇到了挑战,例如,我们如何通过上游预训练的简单主干来处理下游任务中的多尺度对象?简单 ViT 用于高分辨率图像检测是否效率太低?放弃这种追求的一个解决方案是在主干中重新引入分层设计。这种解决方案,例如 Swin Transformer 和其他网络,可以继承基于 ConvNet 的检测器设计,并已取得成功。

    在这项工作中,何恺明等研究者追求的是一个不同的方向:探索仅使用普通、非分层主干的目标检测器。如果这一方向取得成功,仅使用原始 ViT 主干进行目标检测将成为可能。在这一方向上,预训练设计将与微调需求解耦,上游与下游任务的独立性将保持,就像基于 ConvNet 的研究一样。这一方向也在一定程度上遵循了 ViT 的理念,即在追求通用特征的过程中减少归纳偏置。由于非局部自注意力计算可以学习平移等变特征,它们也可以从某种形式的监督或自我监督预训练中学习尺度等变特征。

    研究者表示,在这项研究中,他们的目标不是开发新的组件,而是通过最小的调整克服上述挑战。具体来说,他们的检测器仅从一个普通 ViT 主干的最后一个特征图构建一个简单的特征金字塔(如图 1 所示)。这一方案放弃了 FPN 设计和分层主干的要求。为了有效地从高分辨率图像中提取特征,他们的检测器使用简单的非重叠窗口注意力(没有 shifting)。他们使用少量的跨窗口块来传播信息,这些块可以是全局注意力或卷积。这些调整只在微调过程中进行,不会改变预训练。

    fce8ccc2c920509f78225ef0c5bfc793.png

    这种简单的设计收获了令人惊讶的结果。研究者发现,在使用普通 ViT 主干的情况下,FPN 的设计并不是必要的,它的好处可以通过由大步幅 (16)、单一尺度图构建的简单金字塔来有效地获得。他们还发现,只要信息能在少量的层中很好地跨窗口传播,窗口注意力就够用了。

    更令人惊讶的是,在某些情况下,研究者开发的名为「ViTDet」的普通主干检测器可以媲美领先的分层主干检测器(如 Swin、MViT)。通过掩蔽自编码器(MAE)预训练,他们的普通主干检测器可以优于在 ImageNet-1K/21K 上进行有监督预训练的分层检测器(如下图 3 所示)。

    b0b6204cf9146e16942fa7d0a5b094d2.png

    在较大尺寸的模型上,这种增益要更加显著。该检测器的优秀性能是在不同的目标检测器框架下观察到的,包括 Mask R-CNN、Cascade Mask R-CNN 以及它们的增强版本。

    在 COCO 数据集上的实验结果表明,一个使用无标签 ImageNet-1K 预训练、带有普通 ViT-Huge 主干的 ViTDet 检测器的 AP^box 可以达到 61.3。他们还在长尾 LVIS 检测数据集上展示了 ViTDet 颇具竞争力的结果。虽然这些强有力的结果可能部分来自 MAE 预训练的有效性,但这项研究表明,普通主干检测器可能是有前途的,这挑战了分层主干在目标检测中的根深蒂固的地位

    方法细节

    该研究的目标是消除对主干网络的分层约束,并使用普通主干网络进行目标检测。因此,该研究的目标是用最少的改动,让简单的主干网络在微调期间适应目标检测任务。经过改动之后,原则上我们可以应用任何检测器头(detector head),研究者选择使用 Mask R-CNN 及其扩展。

    简单的特征金字塔

    FPN 是构建用于目标检测的 in-network 金字塔的常见解决方案。如果主干网络是分层的,FPN 的动机就是将早期高分辨率的特征和后期更强的特征结合起来。这在 FPN 中是通过自上而下(top-down)和横向连接来实现的,如图 1 左所示。

    95e0e5b5ec17f0c7d11fb78e44ce263b.png

    如果主干网络不是分层网络,那么 FPN 动机的基础就会消失,因为主干网络中的所有特征图都具有相同的分辨率。该研究仅使用主干网络中的最后一张特征图,因为它应该具有最强大的特征。

    研究者对最后一张特征图并行应用一组卷积或反卷积来生成多尺度特征图。具体来说,他们使用的是尺度为 1/16(stride = 16 )的默认 ViT 特征图,该研究可如图 1 右所示,这个过程被称为「简单的特征金字塔」。

    7edde164da48f3e8a7853b02b13fd397.png

    从单张特征图构建多尺度特征图的策略与 SSD 的策略有关,但该研究的场景涉及对深度、低分辨率的特征图进行上采样。在分层主干网络中,上采样通常用横向连接进行辅助,但研究者通过实验发现,在普通 ViT 主干网络中横向连接并不是必需的,简单的反卷积就足够了。研究者猜想这是因为 ViT 可以依赖位置嵌入来编码位置,并且高维 ViT patch 嵌入不一定会丢弃信息。

    如下图所示,该研究将这种简单的特征金字塔与同样建立在普通主干网络上的两个 FPN 变体进行比较。在第一个变体中,主干网络被人为地划分为多个阶段,以模仿分层主干网络的各个阶段,并应用横向和自上而下的连接(图 2(a))。第二个变体与第一个变体类似,但仅使用最后一张特征图(图 2(b))。该研究表明这些 FPN 变体不是必需的。

    09d1a921462ee7af873a994a2c4ed3bd.png

    主干网络调整

    目标检测器受益于高分辨率输入图像,但在整个主干网络中,计算全局自注意力对于内存的要求非常高,而且速度很慢。该研究重点关注预训练主干网络执行全局自注意力的场景,然后在微调期间适应更高分辨率的输入。这与最近使用主干网络预训练直接修改注意力计算的方法形成对比。该研究的场景使得研究者能够使用原始 ViT 主干网络进行检测,而无需重新设计预训练架构。

    该研究探索了使用跨窗口块的窗口注意力。在微调期间,给定高分辨率特征图,该研究将其划分为常规的非重叠窗口。在每个窗口内计算自注意力,这在原始 Transformer 中被称为「受限」自注意力。

    与 Swin 不同,该方法不会跨层「移动(shift)」窗口。为了允许信息传播,该研究使用了极少数(默认为 4 个)可跨窗口的块。研究者将预训练的主干网络平均分成 4 个块的子集(例如对于 24 块的 ViT-L,每个子集中包含 6 个),并在每个子集的最后一个块中应用传播策略。研究者分析了如下两种策略:

    • 全局传播。该策略在每个子集的最后一个块中执行全局自注意力。由于全局块的数量很少,内存和计算成本是可行的。这类似于(Li et al., 2021 )中与 FPN 联合使用的混合窗口注意力。

    • 卷积传播。该策略在每个子集之后添加一个额外的卷积块来作为替代。卷积块是一个残差块,由一个或多个卷积和一个 identity shortcut 组成。该块中的最后一层被初始化为零,因此该块的初始状态是一个 identity。将块初始化为 identity 使得该研究能够将其插入到预训练主干网络中的任何位置,而不会破坏主干网络的初始状态。

    这种主干网络的调整非常简单,并且使检测微调与全局自注意力预训练兼容,也就没有必要重新设计预训练架构。

    实验结果

    消融研究

    在消融研究中,研究者得到了以下结论:

    1、一个简单的特征金字塔就足够了。在表 1 中,他们比较了图 2 所示的特征金字塔构建策略。

    ac8e652fa7820e14ff3c5f092f3c5acc.png

    2、在几个传播块的帮助下,窗口注意力就足够了。表 2 总结了本文提出的主干调整方法。简而言之,与只有窗口注意力、无跨窗口传播块的基线(图中的「none」)相比,各种传播方式都可以带来可观的收益。

    efa7059c134aa81c7f05dd27061fd929.png

    e81bb32a9d4a33ec33c42a8bd0c5f866.png

    3、掩蔽自编码器可以提供强大的预训练主干。表 4 比较了主干预训练的策略。

    78a21b13d185199395487f4ae46d54cb.png

    与分层主干的对比

    下表 5 显示了与分层主干网络的比较结果。

    1b5640ba0424fa4d1a392d8a0cc75c15.png

    下图 3 显示了几种模型的准确率与模型尺寸、FLOPs 和测试时间三者的关系。

    07c70557e9b84942dbbc6ac37d893467.png

    与之前系统的对比

    下表 6 给出了几种方法在 COCO 数据集上的系统级比较结果。

    6af0dadc387c7624236b68088d0f6bee.png

    
     
    ViTDet 论文下载
    
    后台回复:ViTDet,即可下载上面论文

    ICCV和CVPR 2021论文和代码下载

    后台回复:CVPR2021,即可下载CVPR 2021论文和代码开源的论文合集

    后台回复:ICCV2021,即可下载ICCV 2021论文和代码开源的论文合集

    后台回复:Transformer综述,即可下载最新的3篇Transformer综述PDF

    目标检测和Transformer交流群成立

    扫描下方二维码,或者添加微信:CVer6666,即可添加CVer小助手微信,便可申请加入CVer-Transformer或者目标检测 微信交流群。另外其他垂直方向已涵盖:目标检测、图像分割、目标跟踪、人脸检测&识别、OCR、姿态估计、超分辨率、SLAM、医疗影像、Re-ID、GAN、NAS、深度估计、自动驾驶、强化学习、车道线检测、模型剪枝&压缩、去噪、去雾、去雨、风格迁移、遥感图像、行为识别、视频理解、图像融合、图像检索、论文投稿&交流、PyTorch、TensorFlow和Transformer等。

    一定要备注:研究方向+地点+学校/公司+昵称(如Transformer或者目标检测+上海+上交+卡卡),根据格式备注,可更快被通过且邀请进群

    624d43f139a5b3abd2fa17e1c7842433.png

    ▲扫码或加微信: CVer6666,进交流群

    CVer学术交流群(知识星球)来了!想要了解最新最快最好的CV/DL/ML论文速递、优质开源项目、学习教程和实战训练等资料,欢迎扫描下方二维码,加入CVer学术交流群,已汇集数千人!

    20ba8feb70fa520d7978cab6c57ca865.png

    ▲扫码进群

    ▲点击上方卡片,关注CVer公众号

    整理不易,请点赞和在看ef7f10a1a800f432f5138505ff205863.gif

    展开全文
  • CV微信技术交流群转载自:机器之心 | 编辑:张倩、小舟做目标检测就一定需要 FPN 吗?来自 Facebook AI Research 的 Yanghao Li、何恺明等研究者在 arXiv 上上传了一篇论文,证明了将普通的、非分层的视觉 ...

    点击下方卡片,关注“CVer”公众号

    AI/CV重磅干货,第一时间送达

    点击进入—> CV 微信技术交流群

    转载自:机器之心 | 编辑:张倩、小舟

    做目标检测就一定需要 FPN 吗?来自 Facebook AI Research 的 Yanghao Li、何恺明等研究者在 arXiv 上上传了一篇论文,证明了将普通的、非分层的视觉 Transformer 作为主干网络进行目标检测的可行性。他们希望这项研究能够引起大家对普通主干检测器的关注。

    f4985f6f374afb92254122a0df8b8450.png

    研究概览

    c6871fe54de1632ed47e3e22da99f65d.png

    Exploring Plain Vision Transformer Backbones for Object Detection

    代码(已开源):

    https://github.com/facebookresearch/detectron2/tree/main/projects/ViTDet

    论文链接:https://arxiv.org/abs/2203.16527

    当前的目标检测器通常由一个与检测任务无关的主干特征提取器和一组包含检测专用先验知识的颈部和头部组成。颈部 / 头部中的常见组件可能包括感兴趣区域(RoI)操作、区域候选网络(RPN)或锚、特征金字塔网络(FPN)等。如果用于特定任务的颈部 / 头部的设计与主干的设计解耦,它们可以并行发展。从经验上看,目标检测研究受益于对通用主干和检测专用模块的大量独立探索。长期以来,由于卷积网络的实际设计,这些主干一直是多尺度、分层的架构,这严重影响了用于多尺度(如 FPN)目标检测的颈 / 头的设计。

    在过去的一年里,视觉 Transformer(ViT)已经成为视觉识别的强大支柱。与典型的 ConvNets 不同,最初的 ViT 是一种简单的、非层次化的架构,始终保持单一尺度的特征图。它的「极简」追求在应用于目标检测时遇到了挑战,例如,我们如何通过上游预训练的简单主干来处理下游任务中的多尺度对象?简单 ViT 用于高分辨率图像检测是否效率太低?放弃这种追求的一个解决方案是在主干中重新引入分层设计。这种解决方案,例如 Swin Transformer 和其他网络,可以继承基于 ConvNet 的检测器设计,并已取得成功。

    在这项工作中,何恺明等研究者追求的是一个不同的方向:探索仅使用普通、非分层主干的目标检测器。如果这一方向取得成功,仅使用原始 ViT 主干进行目标检测将成为可能。在这一方向上,预训练设计将与微调需求解耦,上游与下游任务的独立性将保持,就像基于 ConvNet 的研究一样。这一方向也在一定程度上遵循了 ViT 的理念,即在追求通用特征的过程中减少归纳偏置。由于非局部自注意力计算可以学习平移等变特征,它们也可以从某种形式的监督或自我监督预训练中学习尺度等变特征。

    研究者表示,在这项研究中,他们的目标不是开发新的组件,而是通过最小的调整克服上述挑战。具体来说,他们的检测器仅从一个普通 ViT 主干的最后一个特征图构建一个简单的特征金字塔(如图 1 所示)。这一方案放弃了 FPN 设计和分层主干的要求。为了有效地从高分辨率图像中提取特征,他们的检测器使用简单的非重叠窗口注意力(没有 shifting)。他们使用少量的跨窗口块来传播信息,这些块可以是全局注意力或卷积。这些调整只在微调过程中进行,不会改变预训练。

    4588c4fe1e8501b9d1c5162e8f1b4e99.png

    这种简单的设计收获了令人惊讶的结果。研究者发现,在使用普通 ViT 主干的情况下,FPN 的设计并不是必要的,它的好处可以通过由大步幅 (16)、单一尺度图构建的简单金字塔来有效地获得。他们还发现,只要信息能在少量的层中很好地跨窗口传播,窗口注意力就够用了。

    更令人惊讶的是,在某些情况下,研究者开发的名为「ViTDet」的普通主干检测器可以媲美领先的分层主干检测器(如 Swin、MViT)。通过掩蔽自编码器(MAE)预训练,他们的普通主干检测器可以优于在 ImageNet-1K/21K 上进行有监督预训练的分层检测器(如下图 3 所示)。

    97fa74fb04c36b54bbcf8bab0711a6ad.png

    在较大尺寸的模型上,这种增益要更加显著。该检测器的优秀性能是在不同的目标检测器框架下观察到的,包括 Mask R-CNN、Cascade Mask R-CNN 以及它们的增强版本。

    在 COCO 数据集上的实验结果表明,一个使用无标签 ImageNet-1K 预训练、带有普通 ViT-Huge 主干的 ViTDet 检测器的 AP^box 可以达到 61.3。他们还在长尾 LVIS 检测数据集上展示了 ViTDet 颇具竞争力的结果。虽然这些强有力的结果可能部分来自 MAE 预训练的有效性,但这项研究表明,普通主干检测器可能是有前途的,这挑战了分层主干在目标检测中的根深蒂固的地位

    方法细节

    该研究的目标是消除对主干网络的分层约束,并使用普通主干网络进行目标检测。因此,该研究的目标是用最少的改动,让简单的主干网络在微调期间适应目标检测任务。经过改动之后,原则上我们可以应用任何检测器头(detector head),研究者选择使用 Mask R-CNN 及其扩展。

    简单的特征金字塔

    FPN 是构建用于目标检测的 in-network 金字塔的常见解决方案。如果主干网络是分层的,FPN 的动机就是将早期高分辨率的特征和后期更强的特征结合起来。这在 FPN 中是通过自上而下(top-down)和横向连接来实现的,如图 1 左所示。

    23bec4c89f279b479572ca3e47e4b4b0.png

    如果主干网络不是分层网络,那么 FPN 动机的基础就会消失,因为主干网络中的所有特征图都具有相同的分辨率。该研究仅使用主干网络中的最后一张特征图,因为它应该具有最强大的特征。

    研究者对最后一张特征图并行应用一组卷积或反卷积来生成多尺度特征图。具体来说,他们使用的是尺度为 1/16(stride = 16 )的默认 ViT 特征图,该研究可如图 1 右所示,这个过程被称为「简单的特征金字塔」。

    a795e977313193e295e8a64a64f3e4dc.png

    从单张特征图构建多尺度特征图的策略与 SSD 的策略有关,但该研究的场景涉及对深度、低分辨率的特征图进行上采样。在分层主干网络中,上采样通常用横向连接进行辅助,但研究者通过实验发现,在普通 ViT 主干网络中横向连接并不是必需的,简单的反卷积就足够了。研究者猜想这是因为 ViT 可以依赖位置嵌入来编码位置,并且高维 ViT patch 嵌入不一定会丢弃信息。

    如下图所示,该研究将这种简单的特征金字塔与同样建立在普通主干网络上的两个 FPN 变体进行比较。在第一个变体中,主干网络被人为地划分为多个阶段,以模仿分层主干网络的各个阶段,并应用横向和自上而下的连接(图 2(a))。第二个变体与第一个变体类似,但仅使用最后一张特征图(图 2(b))。该研究表明这些 FPN 变体不是必需的。

    44b356edfbf963c441f0f918a8fe1712.png

    主干网络调整

    目标检测器受益于高分辨率输入图像,但在整个主干网络中,计算全局自注意力对于内存的要求非常高,而且速度很慢。该研究重点关注预训练主干网络执行全局自注意力的场景,然后在微调期间适应更高分辨率的输入。这与最近使用主干网络预训练直接修改注意力计算的方法形成对比。该研究的场景使得研究者能够使用原始 ViT 主干网络进行检测,而无需重新设计预训练架构。

    该研究探索了使用跨窗口块的窗口注意力。在微调期间,给定高分辨率特征图,该研究将其划分为常规的非重叠窗口。在每个窗口内计算自注意力,这在原始 Transformer 中被称为「受限」自注意力。

    与 Swin 不同,该方法不会跨层「移动(shift)」窗口。为了允许信息传播,该研究使用了极少数(默认为 4 个)可跨窗口的块。研究者将预训练的主干网络平均分成 4 个块的子集(例如对于 24 块的 ViT-L,每个子集中包含 6 个),并在每个子集的最后一个块中应用传播策略。研究者分析了如下两种策略:

    • 全局传播。该策略在每个子集的最后一个块中执行全局自注意力。由于全局块的数量很少,内存和计算成本是可行的。这类似于(Li et al., 2021 )中与 FPN 联合使用的混合窗口注意力。

    • 卷积传播。该策略在每个子集之后添加一个额外的卷积块来作为替代。卷积块是一个残差块,由一个或多个卷积和一个 identity shortcut 组成。该块中的最后一层被初始化为零,因此该块的初始状态是一个 identity。将块初始化为 identity 使得该研究能够将其插入到预训练主干网络中的任何位置,而不会破坏主干网络的初始状态。

    这种主干网络的调整非常简单,并且使检测微调与全局自注意力预训练兼容,也就没有必要重新设计预训练架构。

    实验结果

    消融研究

    在消融研究中,研究者得到了以下结论:

    1、一个简单的特征金字塔就足够了。在表 1 中,他们比较了图 2 所示的特征金字塔构建策略。

    947e897e683a1d7f053c0c6338bd4a43.png

    2、在几个传播块的帮助下,窗口注意力就足够了。表 2 总结了本文提出的主干调整方法。简而言之,与只有窗口注意力、无跨窗口传播块的基线(图中的「none」)相比,各种传播方式都可以带来可观的收益。

    f3dac6de092dca39b3e3007613ce8301.png

    712cb857c5ac6d3705c699af8b9ae31e.png

    3、掩蔽自编码器可以提供强大的预训练主干。表 4 比较了主干预训练的策略。

    f81b0464fca0a3473b62703289d9bd4d.png

    与分层主干的对比

    下表 5 显示了与分层主干网络的比较结果。

    4d6dbdf3ce684cc93be2f19215307f48.png

    下图 3 显示了几种模型的准确率与模型尺寸、FLOPs 和测试时间三者的关系。

    273fc2d5858bb8275815e2c67c2f0527.png

    与之前系统的对比

    下表 6 给出了几种方法在 COCO 数据集上的系统级比较结果。

    ee58cfec8a9819b19d619e293d91e19e.png

    
     
    ViTDet 论文和代码下载
    
    后台回复:ViTDet,即可下载上面论文和代码
    目标检测和Transformer交流群成立
    扫描下方二维码,或者添加微信:CVer6666,即可添加CVer小助手微信,便可申请加入CVer-目标检测或者Transformer 微信交流群。另外其他垂直方向已涵盖:目标检测、图像分割、目标跟踪、人脸检测&识别、OCR、姿态估计、超分辨率、SLAM、医疗影像、Re-ID、GAN、NAS、深度估计、自动驾驶、强化学习、车道线检测、模型剪枝&压缩、去噪、去雾、去雨、风格迁移、遥感图像、行为识别、视频理解、图像融合、图像检索、论文投稿&交流、PyTorch、TensorFlow和Transformer等。
    一定要备注:研究方向+地点+学校/公司+昵称(如目标检测或者Transformer+上海+上交+卡卡),根据格式备注,可更快被通过且邀请进群
    
    ▲扫码或加微信: CVer6666,进交流群
    CVer学术交流群(知识星球)来了!想要了解最新最快最好的CV/DL/ML论文速递、优质开源项目、学习教程和实战训练等资料,欢迎扫描下方二维码,加入CVer学术交流群,已汇集数千人!
    
    ▲扫码进群
    ▲点击上方卡片,关注CVer公众号
    整理不易,请点赞和在看
    展开全文
  • _菜鸟学Python的博客-CSDN博客说到目标检测,那可谓当前的自动驾驶、新零售、智慧工业等热门行业中的关键技术之一。目标检测不仅在行人、车辆、商品以及火灾检测等任务中发挥着极其关键的价值,在目标跟踪、姿态识别...
  • COCO 数据集上的目标检测精度的最高纪录已经有将近一年时间停留在53.3 mAP,曾经报告达到过这一高度的算法有:1)Cascade Mask R-CNN(Triple-ResNeXt...
  • 目标检测2022最新进展

    万次阅读 多人点赞 2022-03-17 15:51:13
    之前目标检测综述一文中详细介绍了目标检测相关的知识,本篇博客作为扩展补充,记录目前(2022)目标检测的最新进展,主要是在coco test-dev上霸榜且知名度较广的目标检测网络。具体详情可参考相关论文或者代码。 ...
  • Darknet-53 特征提取 13 x 13 每个网格点3个先验框 26 x 26 每个网格点3个先验框 52 x 52 每个网格点3个先验框 13 13 75 -> 13 13 3 20(类别概率)1(是否有物体) 4(先验框坐标) ...上采样是图像维度的堆叠与...
  • 论文提出了深度残差模块并在此基础上形成了深度残差学习框架ResNet,解决极深神经网络训练代价大幅上升,但效果却没有提升,甚至有所下降的问题
  • Swin Transformer 做主干的 RetinaNet 目标检测网络(mmdetection)
  • 论文重新对传统卷积网络的设计空间以及其他局限进行测试,逐步将ViTs中的一些Tricks应用到标注的ResNet中,发现了一些能够提升网络性能的关键因素,最终输出的网络命名为ConvNext
  • Swin Transformer 做主干的 YOLOv3 目标检测网络(mmdetection)
  • 计算机视觉研究院专栏作者:Edison_G现代性能最佳的目标检测器在很大程度上依赖于主干网络,其进步通过探索更有效的网络结构带来一致的性能提升。然而,设计或搜索新的主干并在ImageNet...
  • 目标检测R-CNN系列算法改进对比总结

    千次阅读 2020-08-18 18:39:00
    Contents1 R-CNN2 SPPNet3 Fast R-CNN4 Faster R-CNN5 三种目标检测神经网络对比说明      在RCNN系列算法提出之前,目标检测是基于滑动窗口的方法。在图片上,选择大小适宜的窗口、合适的步进长度,进行从左到右...
  • 代码: import torch import torch.nn as nn import torch.nn.functional as F from torch.autograd import Variable import os base = [ 64, 64, 'M', 128, 128, 'M', 256, 256, 256, 'C', 512, 512, 512, ...
  • 计算机视觉研究院专栏作者:Edison_G现代性能最佳的目标检测器在很大程度上依赖于主干网络,其进步通过探索更有效的网络结构带来一致的性能提升。然而,设计或搜索新的主干并在ImageNet...
  • SSD介绍: 是作者Wei Liu在ECCV 2016上发表的论文提出的。对于输入尺寸300*300的SSD网络使用Nvidia Titan X在VOC 2007...SSD网络结构:(可以达到在不同特征尺度上预测不同尺度的目标) 1、会对输入的图像进行...
  • 目标检测网络

    千次阅读 2021-01-31 23:21:37
    大致分为两类one-stage和two-stage,主要区别是检测目标类别与bounding box回归任务是否分开进行。 two-stage代表是rcnn系列(rcnn、fast-rcnn、faster-rcnn) one-stage代表是yolo系列(yolov1-yolov5)、SSD、...
  • 目标检测主干网络----CNN进化之路

    千次阅读 2020-05-16 11:50:11
    feature map in CNN 可以通俗地认为feature map就是通道数,在输入层等于图片地颜色通道数,之后地卷积层就是卷积核的个数 多个feature map(多个卷积核)的作用是什么 在卷积神经网络中,我们希望用一个网络模拟...
  • 昨天,来自 Facebook AI Research 的 Yanghao Li、何恺明等研究者在 arXiv 上上传了一篇新论文,证明了将普通的、非分层的视觉 Transformer 作为主干网络进行目标检测的可行性。他们希望这项研究能够...
  • 在上一篇文章中,已经利用DataLoader加载预处理后的数据集。 接下来将从零开始,搭建自己的目标检测网络,实现训练和预测。
  • YOLO v2介绍: 在原论文当中,使用pascal voc 2007数据集以及imagent数据集... 上图给出了当时主流的目标检测网络框架的FPS-mAP性能对比,可以很明显的看出,YOLOv2的强大,比较常用的是YOLOv2 416*416配置。 ...
  • Swin Transformer做主干的 Faster RCNN 目标检测网络
  • 深度卷积网络目标检测器。随着现代深度卷积网络 [19] 的发展,像 OverFeat [34] 和 R-CNN [12] 这样的目标检测器在准确度上显示出显着的提高。 OverFeat 采用了类似于早期神经网络人脸检测器的策略,将 ConvNet ...
  • 人工智能论文:基于深度学习的目标检测技术综述.pdf人工智能论文:基于深度学习的目标检测技术综述.pdf人工智能论文:基于深度学习的目标检测技术综述.pdf人工智能论文:基于深度学习的目标检测技术综述.pdf人工智能...
  • 基于深度卷积神经网络目标检测研究综述 人工智能技术与咨询 来自《光学精密工程》,作者范丽丽等 摘要:作为计算机视觉中的基本视觉识别问题,目标检测在过去的几十年中得到了广泛地研究。目标检测旨在给定...
  • PointPillars是一个基于点云的快速目标检测网络,在配置为Intel i7 CPU和1080ti GPU上的预测速度为62Hz,在无人驾驶领域中常常能够使用上它,是一个落地且应用广泛的一个3D快速目标检测网络。 ...
  • 第 2 节中讨论了骨干网络目标检测器需要强大的骨干网络来提取丰富的特征。众所周知,特定领域图像检测器的典型管道是任务的基础和里程碑。 在第 3 节中,本文阐述了之前提出的最具代表性和开创性的基于深度学习的...
  • 目标检测网络-yolo

    千次阅读 2022-03-27 01:48:23
    目标检测网络-yolo

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 10,909
精华内容 4,363
关键字:

目标检测主干网络