Sina Weibo:小锋子Shawn
Tencent E-mail:[email protected]
http://blog.csdn.net/dgyuanshaofeng/article/details/82048113

CornerNet[1]的作者是来自密歇根大学的Hei Law和Jia Deng,此算法/模型是目标检测的新方法。其中Jia Deng,还有其它比较出名的工作,比如人体姿态估计领域的Stacked hourglass networks(堆叠漏斗网络)(ECCV2016),图像分类领域的ImageNet数据集(CVPR2009)。

0 摘要

将目标包围盒(object bounding box)转化为一对关键点(paired keypoints):左-上角点和右-下角点,其优势在于取消anchor boxes的设计。anchor boxes通常在检测器中使用,比如SSD和Faster R-CNN。提出corner pooling(角点池化),用于准确定位角点。在MS COCO数据集上,取得42.1%AP,超越所有一阶段式检测器(这里有问题,因为一阶段式检测器更为强调速度,而非精度,因此与这些模型比精度,似乎有些流氓了)。

1 介绍

anchor boxes就是各种size和aspect ratio预先定义好的框。一阶段式检测器依赖anchor boxes(锚框)实现类似二阶段式检测器的检测精度,并且更为有效率。然而,有两点缺陷。其一,需要大量锚框,DSSD使用40k,RetinaNet使用100k,最后造成正负锚框的巨大不平衡。其二,引入许多超参数和设计选择。如图1所示,为CornerNet的方法pipeline。卷积网络输出所有左和上一对角点的热图,输出所有右和下一对角点的热图,还输出每一对角点的embedding vector(嵌入向量)。

「Computer Vision」Notes on CornerNet
图 1

CornerNet的另一个要素是角点池化,如图2所示。总之,角点通常在目标之外,需要借助其它信息来定位角点,而非使用角点附近的信息。

「Computer Vision」Notes on CornerNet
图 2 Corner Pooling

作者给出了检测角点比检测包围框好的两点假设性理由。其一,包围盒的中心需要目标四边,而角点需要两边。其二,更有效,可用O(wh)角点表达O(w^2 * h^2)可能锚框。

2 相关工作

分别介绍了两类目标检测器,其中DSSD和RON都使用了类似的漏斗网络。
着重介绍了DeNet和本文工作的区别。
特别强调了本文工作的启发工作Associative Embedding[2],后文为NIPS2017的文章,可以重点阅读一下,因为NIPS上视觉类文章还是比较少的。
本文工作还使用了新颖变种focal loss。

3 角点网络(CornerNet)

3.1 Overview

如图3所示。

「Computer Vision」Notes on CornerNet
图3 CornerNet

3.2 检测角点

变种focal loss:

Ldet=...

fast r-cnn里面的smooth L1 loss:
Loff=...

3.3 组合角点

组合角点的“pull”(拉近)损失:

Lpull=...

分离角点的“push”(推远)损失:
Lpush=...

3.4 角点池化(Corner Pooling)

如图4所示,非常清楚地解释了如何进行角点池化。在实现中,详细阅读作者的cpp代码。

「Computer Vision」Notes on CornerNet
图4 角点池化

如图5所示,为预测模块。具体修改见开源代码和文章描述。

「Computer Vision」Notes on CornerNet
图5 预测模块

3.5 漏斗网络(hourglass network)

作者对hourglass network[3]作了比较大的修改。

4 实验

4.1 训练细节

总的训练损失:

L=Ldet+αLpull+βLpush+γLoff

4.2 测试细节

4.3 MS COCO

4.4 消融实验

1、角点池化
2、减小负样本位置惩罚
3、误差分析

4.5 与世界一流检测器比较

如表1所示。

「Computer Vision」Notes on CornerNet
表1 各方法比较

[1] CornerNet Detecting Objects as Paired Keypoints ECCV 2018 [paper] [Pytorch code]
[2] Associative Embedding End-to-End Learning for Joint Detection and Grouping NIPS 2017 [paper] [Pytorch code]
[3] Stacked Hourglass Networks for Human Pose Estimation ECCV 2016 [paper]

相关文章:

  • 2021-11-29
  • 2021-09-19
  • 2021-09-25
  • 2021-04-22
  • 2021-09-05
  • 2021-10-23
  • 2021-12-15
  • 2021-10-18
猜你喜欢
  • 2021-04-03
  • 2021-11-07
  • 2021-05-11
  • 2021-10-13
  • 2021-07-16
  • 2021-11-12
  • 2021-09-14
  • 2021-10-05
相关资源
相似解决方案