这样可以更精确的目标检测——超网络

暑假的“尾巴”很多人都抓不住了,因为不知不觉,新的学期要开始了,几家欢喜几家愁,但是会想起学生时代的我,还是特征憧憬新的学期到来,那种激动的心情无法用美丽的辞藻去形容,在此,也祝大家新学期新“形象”,都能通过自己的努力去实现心里设定的小目标,加油~

那接下来我们开始今天的分享,也是上次文章的一次内容补充和知识的拓展——“哇~这么Deep且又轻量的Network,实时目标检测”,若有兴趣的您,可以去回顾一下。

目标检测出现的问题

现在的先进方法去进行目标检测的时候,经常使用成千个候选区域去得到较高的Recall,该过程严重影响了检测的效率。虽然最新的区域后选网络(RPN)用了几百个候选区域就可以达到较好的检测准确度,但是其仍然挣扎于小目标检测和精确定位(比如较大的IoU阈值),主要由于特征图的粗劣。

主要内容

于是,提出一个深度的多层网络,称为“HyperNet”,用来处理候选区域的产生和共同目标检测。HyperNet先融合不同层的特征图,然后将它们压缩到一个统一的空间。

HyperFeature包含了图像的深层但又含有更高的语义、中间层但又互补和底层但自然高分辨率特征。最后通过端到端(End-to-End)共同训练策略来构建HyperNet

最后本文在VOC2007和VOC2012数据集上实验,都得到较高的准确度,并且有5fps的速度(只在一个GPU上运行),因此其有较好的实时处理能力。

图1 Top:前10个区域检测的区域和最后检测结果;Down:HyperNet简单框架

HyperNet框架

HyperNet框架如图2所示,首先,一张完整的图片通过卷基层向前传递,并产生不同的激活映射。将多层特征图融合,然后将他们压缩到一个统一的空间,命名为“HyperFeature”。接下来,一个简单的区域后选产生网络被构建并产生了大约100个候选区域。最后,这些后选区域被分类并调整基于目标检测模块。

图2 HyperNet目标检测框架

HyperFeature Production

在CNN的子采样和池化操作过程中,这些特征图并不具有相同的分辨率。为了结合多层的特征图并有相同的分辨率,本次对于不同层执行了不同的采样策略。

  • 在底层增加了一个Max-Pooling层去进行子采样;
  • 对于更高的层,增加一个反卷积(Deconv)操作去进行子采样。

每个采样结果后再用一个卷基层处理,卷积操作不仅可以提取更多的语义特征,还可以压缩成一个统一的空间。最后归一化多特征图,并连接它们成为一个输出立方体,其被称为HyperFeatureHyperFeature有一些优点:

  • 多层的抽象:灵感来自于神经学,在计算机视觉问题中已被推理,多层是有益的。深度、中间和底层CNN特征是真的可以互补;
  • 适当的分辨率:特征图分辨率从1000X600到250X150,其更适合用于检测。 RegionProposal Generation

本次设计了一个简单的ConvNet用于区域后选产生。这个ConvNet包括一个ROI池化层,一个Conv层和一个全连接层(FC),随后有两个相似的输出层。对于每一张图像,这个网络将产生30K后选框并有不同的尺寸和纵横比。

之后的每一个后选框都要分别打分和调整,一些区域之间高度重叠。为了减少冗余,基于它们的得分,在区域中采用贪婪的非极大值抑制。更具体地说,固定IoU阈值在0.7,对每张图像其可以减少1K候选区域。我们训练检测网络的时候用了前200个候选区域。

ObjectDetection

最简单的方式来实现目标检测是通过FC-Dropout-FC-Dropout流水线。基于这个流水线,本次有两个改进:

  • FC层之前,添加一个Conv层(3X3X63)去使分类器更强大。而且这个操作减少了一半的特征维度,促进后面的计算;
  • Dropout ratio从0.5改变到0.25,我们发现对目标分类更有效果。

检测网络也有两个相似的输出层。不同的是,对于每个候选框,其有(N+1)个输出得分和(4*N)个bounding box回归补偿(其中N是目标类别数目,+1是背景)。

JointTraining

在训练候选区域步骤,我们指定一个二进制标签(是目标或不是目标)。假设IoU阈值高于0.45的为正样本标,低于0.3的为负样本。这样就就可以最小化多任务损失函数:

其中,Lcls是两个类的Softmax损失,Lreg是Bounding Box回归损失,且

R是平滑的L1损失。在候选产生步骤,我们设置

,其意味着更倾向于好的框架定位。

Speedingup

在区域后选产生模块中,ROIs的数量大,大部分处理时间都在这里(大约占总时间的70%),如图3所示:

图3 HyperNet speed up

将3X3X4的卷积层移到ROI池化层前面。这样的改变有两个优点:

  • Hyper Feature maps的通道数量显著地降低(126到4);
  • 滑动窗分类器更加简单。

实验

图4 在VOC 2007测试集的Recall和IoU阈值。Left:50个区域后选,Middle:100个区域后选;Right:200个区域后选。

图5 在VOC2007测试集的Recall和后选数量。Left:IoU=0.5;Middle:IoU=0.6;Right:IoU=0.7。

表1 VOC 2007测试集结果(IoU=0.5)

表2 VOC 2012测试集结果

表3 不同层结合策略的后选和检测性能

图6 Hyper Feature可视化

表4 在一个Nvidia TitanX GPU上的测试时间

总结

提出了一个HyperNet框架,共同用于区域后选产生和目标检测。HyperNet提供了一个有效的结合框架,用深度但有更高的语义、中间但互补和底层但自然高分辨率的CNN特征。所提框架的亮点是它可以产生少量的后选区域,但是能得到较高的recalls,其基本的HyperNet和加速的HyperNet都能都达到很好的准确度。

文章名:

HyperNet: Towards Accurate Region Proposal Generation and Joint Object Detection


原文发布于微信公众号 - 计算机视觉战队(ComputerVisionGzq)

原文发表时间:2018-09-03

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏大数据挖掘DT机器学习

决策树原理与应用:C5.0

分类预测指通过向现有数据的学习,使模型具备对未来新数据的预测能力。对于分类预测有这样几个重要,一是此模型使用的方法是归纳和提炼,而不是演绎。非数据挖掘类的软件的...

4366
来自专栏企鹅号快讯

机器学习算法分类与其优缺点分析

机器学习算法的分类是棘手的,有几种合理的分类,他们可以分为生成/识别,参数/非参数,监督/无监督等。 例如,Scikit-Learn的文档页面通过学习机制对算法...

2237
来自专栏量子位

DIY自动分类“错题集”:一种基于视觉词汇的文本分类法

作者:曹阳敏 万达网络科技 | 资深研发经理 量子位 已获授权编辑发布 转载请联系原作者 一年多以前我脑子一热,想做一款移动应用:一款给学生朋友用的“错题集”应...

3974
来自专栏机器学习算法工程师

全面解读Group Normbalization-(吴育昕-何凯明 重磅之作)

一句话概括,GroupNormbalization(GN)是一种新的深度学习归一化方式,可以替代BN。

1684
来自专栏数说工作室

造出一艘logistic模型 | 【logistic从生产到使用】(下) | 数说 · 算法

前几天飞扬博士更新了一篇算法文章,关于softmax regression的,它是logistic模型的扩展,因此要是能有些logistic regressio...

3033
来自专栏机器之心

教程 | 如何估算深度神经网络的最优学习率

3655
来自专栏人工智能

主流机器学习算法简介与其优缺点分析

机器学习算法的分类是棘手的,有几种合理的分类,他们可以分为生成/识别,参数/非参数,监督/无监督等。

2.1K4
来自专栏机器之心

从数学到实现,全面回顾高斯过程中的函数最优化

32310
来自专栏机器之心

教程 | 概率编程:使用贝叶斯神经网络预测金融市场价格

3889
来自专栏量子位

在Keras+TF环境中,用迁移学习和微调做专属图像识别系统

图1:CompCars数据集的示例图像,整个数据集包含163家汽车制造商,1713种车型 王小新 编译自 Deep Learning Sandbox 量子位 出...

4335

扫码关注云+社区

领取腾讯云代金券