ECCV-2018最佼佼者的目标检测算法

2018 年 9 月 12 日 计算机视觉战队

转眼间,离上次9月3日已有9天的时间,好久没有将最新最好的“干货”分享给大家,让大家一起在学习群里讨论最新技术,那今天我给大家带来ECCV-2018年最优paper之一,也是目标检测里的佼佼者,值得我们去深挖,去学习!

目标检测算法概述

CornerNet可以说是今年ECCV一大亮点,其主要是由密歇根大学Hei Law等人创作,并在ECCV2018上发表,主要实现了更加精准的目标检测算法。但是,今天在开始介绍接下来主角“CornerNet”之前,我带大家先简单回忆下object detection领域的主流算法,如果有兴趣的您,可以浏览如下的文章:

接下来主要回顾之前流行算法的原因,是因为CornerNet的主要算法和现在的主流算法框架很很多不一样。

在深度学习领域的目标检测算法中,现在主要分为One-stage(如:SSD, YOLO,YOLO后期还出了更多的精确度和速度极高的版本)和Two-stage(如经典的RCNN系列)两种。

One-stage是直接在输入的图片上经过各种卷积池化类的计算,从其意思也可以理解,就是一个阶段,一般为end-to-end框架,经过复杂的计算后,最终生成detections。但是,Two-stage则与其与众不同,其主要是先去提取候选区域, 再基于提取的候选区域进行第二次修正。

通过实验和框架的计算复杂度明显可以看得出,One-stage的网络框架速度快, 但是最终的检测精度会较低点,而Two-stage精度高, 但由于框架复杂度提高,检测速度会随之变慢,最终的选择取决使用的实际应用。

自从AlexNet在ImageNet大赛上取得第一的成绩,而且远远超越第二名,因此深度学习有一次出名,掀起了深度学习新的一次浪潮。之后,Ross Girshick又将卷积神经网络(CNN)取代了传统的HOG、HOF和DPM等特征提取方法。

具体的一些之前流行算法,您可以点击如下链接进行阅读。(RNNYOLO等,蓝色字体可以链接到对应的paper

度学习近期总结分析

图 1 Faster RCNN算法框架

Motivation

CornerNet认为Two-stage目标检测最明显的缺点是区域候选阶段需要提取的anchor boxes。

  • 提取的anchor boxes数量较多,比如DSSD使用40k,RetinaNet使用100k,anchor boxes众多造成anchor boxes征服样本均衡;

  • Anchor boxes需要调整很多超参数,比如anchor boxes数量、尺寸、比率,影响模型的训练和推断速率。

本次提出的One-stage的检测方法,舍弃传统的 anchor boxes思路,提出CornerNet模型预测目标边界框的左上角和右下角一对顶点,即,使用单一卷积模型生成热点图和连接矢量:所有目标的左上角和所有目标的右下角热点图,每个顶点的连接矢量(embedding vector)。

图 2 CornerNet框架


主要思路其实来源于一篇多人姿态估计的论文。

基于CNN的2D多人姿态估计方法,通常有2个思路(Bottom-Up ApproachesTop-Down Approaches):

  • Top-Down framework:就是先进行行人检测,得到边界框,然后在每一个边界框中检测人体关键点,连接成每个人的姿态,缺点是受人体检测框影响较大,代表算法有RMPE;

  • Bottom-Up framework:就是先对整个图片进行每个人体关键点部件的检测,再将检测到的人体部位拼接成每个人的姿态,代表方法就是openpose。

本次的第一个创新是讲目标检测上升到方法论,基于多人姿态估计的Bottom-Up思想,首先同时预测定位框的顶点对(左上角和右下角)热点图和embedding vector,根据embedding vector对顶点进行分组。

第二个创新是提出了corner pooling用于定位顶点。自然界的大部分目标是没有边界框也不会有矩形的顶点,依top-left corner pooling 为例,对每个channel,分别提取特征图的水平和垂直方向的最大值,然后求和。

图 3 corner pooling计算方式

本次paper认为corner pooling之所以有效,是因为:

  • 目标定位框的中心难以确定,和边界框的4条边相关,但是每个顶点只与边界框的两条边相关,所以corner 更容易提取;

  • 顶点更有效提供离散的边界空间,实用O(wh)顶点可以表示O(w2h2) anchor boxes。

Paper的第三个创新是模型基于hourglass架构,使用focal loss的变体训练神经网络。

论文提出的CornerNet在MS COCO测试验证,达到42.1% AP,完胜所有的One-stage目标检测方法,基于PyTorch源码请在公众号回复CornerNet

Architecture

  • Overview

图 4 CornerNet模型架构


如图 4所示,CornerNet模型架构包含三部分,Hourglass Network,Bottom-right corners&Top-left Corners Heatmaps和Prediction Module。

Hourglass Network是人体姿态估计的典型架构,论文堆叠两个Hourglass Network生成Top-left和Bottom-right corners,每一个corners都包括corners Pooling,以及对应的Heatmaps, Embeddings vector和offsets。embedding vector使相同目标的两个顶点(左上角和右下角)距离最短, offsets用于调整生成更加紧密的边界定位框。

  • Detecting Corners

Paper模型生成的heatmaps包含C channels(C是目标的类别,没有background channel),每个channel是二进制掩膜,表示相应类别的顶点位置。

对于每个顶点,只有一个ground-truth,其他位置都是负样本。在训练过程,模型减少负样本,在每个ground-truth顶点设定半径r区域内都是正样本,这是因为落在半径r区域内的顶点依然可以生成有效的边界定位框,论文中设置IoU=0.7。

pcij表示类别为c,坐标是(i,j)的预测热点图,ycij表示相应位置的ground-truth,论文提出变体Focal loss表示检测目标的损失函数:

由于下采样,模型生成的热点图相比输入图像分辨率低。论文提出偏移的损失函数,用于微调corner和ground-truth偏移。

  • Grouping Corners

输入图像会有多个目标,相应生成多个目标的左上角和右下角顶点。对顶点进行分组,论文引入Associative Embedding的思想,模型在训练阶段为每个corner预测相应的embedding vector,通过embedding vector使同一目标的顶点对距离最短,既模型可以通过embedding vector为每个顶点分组。

模型训练Lpull损失函数使同一目标的顶点进行分组, Lpush损失函数用于分离不同目标的顶点。

  • Hourglass Network

Hourglass Network同时包含了bottom-up(from high resolutions to low resolutions)和top-down (from low resolutions to high resolutions)。而且,整个网络有多个bottom-up和top-down过程。这样设计的目的是在各个尺度下抓取信息。针对目标检测任务,论文调整了Hourglass一些策略。

Experiments

论文的训练损失函数包含了第三部分介绍的4个损失函数,αβ γ用于调整相应损失函数的权重:

模型训练过程中使用10个Titan X (PASCAL) GPUs,详细的训练参数可参考原论文。模型的推断时间是244ms/ image (Titan XPASCAL GPU)。

CornerNet相比其它one-stage目标检测算法,MS COCO数据集测试AP有明显提高,虽然性能接近于Two-stage检测算法,但是推断时间无明显优势。

Table 4MS COCO test-dev数据集性能对比

Discussion

个人观点:CornerNet创新来自于多人姿态估计的Bottom-Up思路,预测corner的heatmps,根据Embeddings vector对corner进行分组,其主干网络也来自于姿态估计的Hourglass Network。模型的源码请在公众号回复:CornerNet获取,可以放心研究测试。

CV的很多任务之间是相通的,CVPR2018 best paper也印证这一观点,在不同的子领域寻找相似性,迁移不同领域的算法,是CV行业一个趋势。

多人姿态估计的Hourglass Network算法也不断改进中,其实论文模型的推断速率受限于Hourglass Network的特征提取,有志青年也可以沿着这个思路取得更好的性能。


  • Newell, A., Huang, Z., Deng, J.: Associative embedding: End-to-end learning for joint detection and grouping. In: Advances in Neural Information Processing Systems. pp. 2274{2284 (2017)

  • Hei Law, Jia Deng :CornerNet: Detecting Objects as Paired Keypoints.ECCV2018

  • Girshick, R.: Fast r-cnn. arXiv preprint arXiv:1504.08083 (2015)

  • Girshick, R., Donahue, J., Darrell, T., Malik, J.: Rich feature hierarchies for accurate object detection and semantic segmentation. In: Proceedings of the IEEE conference on computer vision and pattern recognition. pp. 580{587 (2014)

  • Lin, T.Y., Goyal, P., Girshick, R., He, K., Doll´ar, P.: Focal loss for dense object detection. arXiv preprint arXiv:1708.02002 (2017)

  • Liu, W., Anguelov, D., Erhan, D., Szegedy, C., Reed, S., Fu, C.Y., Berg, A.C.:SSD: Single shot multibox detector. In: European conference on computer vision.pp. 21{37. Springer (2016)

  • Newell, A., Yang, K., Deng, J.: Stacked hourglass networks for human pose estimation. In: European Conference on Computer Vision. pp. 483{499. Springer (2016)

  • Amir R. Zamir , Alexander Sax Taskonomy: Disentangling Task Transfer Learning.CVPR2018

文章地址

https://arxiv.org/abs/1808.01244

如果想加入我们“计算机视觉战队”,请扫二维码加入学习群,我们一起学习进步,探索领域中更深奥更有趣的知识!

登录查看更多
3

相关内容

ECCV的全称是European Conference on Computer Vision(欧洲计算机视觉国际会议) ,两年一次,是计算机视觉三大会议(另外两个是ICCV和CVPR)之一。每次会议在全球范围录用论文300篇左右,主要的录用论文都来自美国、欧洲等顶尖实验室及研究所,中国大陆的论文数量一般在10-20篇之间。
深度学习目标检测方法及其主流框架综述
专知会员服务
147+阅读 · 2020年6月26日
【文献综述】深度学习目标检测方法及其主流框架综述
专知会员服务
118+阅读 · 2020年6月26日
3D目标检测进展综述
专知会员服务
191+阅读 · 2020年4月24日
专知会员服务
161+阅读 · 2020年4月21日
CVPR2020 | 商汤-港中文等提出PV-RCNN:3D目标检测新网络
专知会员服务
43+阅读 · 2020年4月17日
大盘点 | 性能最强的目标检测算法
极市平台
9+阅读 · 2019年7月8日
最全综述 | 图像目标检测
计算机视觉life
31+阅读 · 2019年6月24日
目标检测:Anchor-Free时代
极市平台
42+阅读 · 2019年4月17日
ECCV 2018 | CornerNet:目标检测算法新思路
极市平台
13+阅读 · 2018年8月11日
深度学习时代的目标检测算法
炼数成金订阅号
39+阅读 · 2018年3月19日
综述:深度学习时代的目标检测算法
极市平台
27+阅读 · 2018年3月17日
干货 | 深度学习时代的目标检测算法
AI科技评论
6+阅读 · 2018年3月6日
论文 | 基于CNN的目标检测算法
七月在线实验室
9+阅读 · 2017年12月7日
Mesh R-CNN
Arxiv
4+阅读 · 2019年6月6日
DPOD: Dense 6D Pose Object Detector in RGB images
Arxiv
5+阅读 · 2019年2月28日
Scale-Aware Trident Networks for Object Detection
Arxiv
4+阅读 · 2019年1月7日
Auto-Context R-CNN
Arxiv
4+阅读 · 2018年7月8日
Arxiv
8+阅读 · 2018年1月12日
Arxiv
4+阅读 · 2016年12月29日
VIP会员
相关VIP内容
深度学习目标检测方法及其主流框架综述
专知会员服务
147+阅读 · 2020年6月26日
【文献综述】深度学习目标检测方法及其主流框架综述
专知会员服务
118+阅读 · 2020年6月26日
3D目标检测进展综述
专知会员服务
191+阅读 · 2020年4月24日
专知会员服务
161+阅读 · 2020年4月21日
CVPR2020 | 商汤-港中文等提出PV-RCNN:3D目标检测新网络
专知会员服务
43+阅读 · 2020年4月17日
相关资讯
大盘点 | 性能最强的目标检测算法
极市平台
9+阅读 · 2019年7月8日
最全综述 | 图像目标检测
计算机视觉life
31+阅读 · 2019年6月24日
目标检测:Anchor-Free时代
极市平台
42+阅读 · 2019年4月17日
ECCV 2018 | CornerNet:目标检测算法新思路
极市平台
13+阅读 · 2018年8月11日
深度学习时代的目标检测算法
炼数成金订阅号
39+阅读 · 2018年3月19日
综述:深度学习时代的目标检测算法
极市平台
27+阅读 · 2018年3月17日
干货 | 深度学习时代的目标检测算法
AI科技评论
6+阅读 · 2018年3月6日
论文 | 基于CNN的目标检测算法
七月在线实验室
9+阅读 · 2017年12月7日
相关论文
Mesh R-CNN
Arxiv
4+阅读 · 2019年6月6日
DPOD: Dense 6D Pose Object Detector in RGB images
Arxiv
5+阅读 · 2019年2月28日
Scale-Aware Trident Networks for Object Detection
Arxiv
4+阅读 · 2019年1月7日
Auto-Context R-CNN
Arxiv
4+阅读 · 2018年7月8日
Arxiv
8+阅读 · 2018年1月12日
Arxiv
4+阅读 · 2016年12月29日
Top
微信扫码咨询专知VIP会员