CornerNet: Detecting Objects as Paired Keypoints

这是一篇很久之前就看过的论文,当时没有仔细看,现在又翻出来看了。

CornerNet

CornerNet就像名称那样,网络就是预测物体的top-letf和bottom-right两个点。网络采用Hourglass Network 漏斗结构。

image.png

模型采用热力图进行预测方式,无anchor设置。Hourglass Network网络之后有两个分支,一个是top-left,另一个是bottom-right。每个分支之后会有三个输出Heatmaps,Embeddings,Offsets。
Heatmaps就是网络检测的角点的坐标位置。Embeddings是top-left和bottom-right关系的一个矩阵,当top-left一个位置的点和bottom-right上某个位置点距离较小那就是同一个物体的一对角点了。由于网络经过下采样预测位置和实际位置会有一定的偏移,offset就是偏移修正值。

  • Heatmaps的大小是128 x 128,通道为80(coco数据,80类),所以Heatmaps是一个大小为128 x 128 x 80的张量。以Top-left corners模块中的Heatmaps为例,其每个通道代表coco数据中的80个类别,每个通道的128 x 128网格中的每个点的输出表示该点是一个左上角点的概率。并且该通道预测出来的所有左上角点对应的所有bbox的物体类别都一样。举个例子,假设在通道编号为10(假设物体类别是dog)的128 x 128热图里面,预测出了3个左上角点,也就是有3个bbox,那么这3个bbox的物体类别都是dog。
  • Offsets大小为128 x 128,通道为2(分别为边角点x,y的偏移量)。由于用热图来表示某一点的xy坐标,会损失精度。因此cornerNet还对每个边角点预测其真实位置的偏移量。举个例子,假设通过热图预测出某一左上角点的坐标是(50,50),该坐标的对应尺度是热图的128 x 128,而真实的坐标从网络的输入尺度511 x 511,映射到128 x 128时是(50.2,50.6)这样就损失了精度了。现在cornerNet为(50,50)预测了偏移量为(0.3,0.5),那么可以计算出网络最终的预测坐标为(50.3,50.5)。尽管比真正的坐标(50.2,50.6)差了一点,但比(50,50)还是精确了许多。
  • Embedding大小为128x128,通道为1。现在假设两个预测模块已经分别预测出了100个左上角点,和100个右下角点。那么有个问题,怎么知道哪一个左上角点和哪一个右上角点是属于同一个bbox呢?解决方法就是使用这个Embedding。Top-left预测模块和Bottom-right预测模块都有一个128x128的Embedding,简单来说,这两个Embedding中的每个值相当于一个标签。假设在Top-left预测模块里的Embedding的(50,50)位置的值是10(这个值是多少无所谓),那么其表示Top-left位置为(50,50)的左上角点的标签是10。如果,在Bottom-right预测模块里的Embedding的(100,100)位置的值也是10。那么就认为左上角坐标(50,50)和右下角坐标(100,100)属于同一个bbox。在实际应用中,属于同一个bbox的左上角和右下角的embedding值一般不会完全一样(到后面的Emdedding学习就可以知道为啥了),所以论文在判断左上角点和右上角点是否属于同一bbox的时是通过判断两个点所对应的embedding值的距离。

CornerNet设置

在训练期间,不是减少所有的负样本的数量,而是减少对正位置半径内的负位置给予的惩罚。 这是因为如果一对假角点检测器靠近它们各自的ground-truth位置,它仍然可以产生一个与ground-truth充分重叠的边界框。我们通过确保半径内的一对点生成的边界框与ground-truth的IoU ≥ t(我们在所有实验中将t设置为0.7)来确定物体的大小,从而确定半径。 给定半r径,惩罚的减少量由非标准化的2D高斯

确定。

  1. 通过设计局部损失,N是一张图中物体的数量,α=2 and β=4 用来控制每个点的贡献。


  2. 通过设置图中位置(x,y)到热图的映射[x/n,y/n]偏差Ok


  1. 角点分组策略

图像中可能出现多个目标,因此可能检测到多个左上角和右下角。我们需要确定左上角和右下角的一对角点是否来自同一个目标边界框。我们的方法受到Newell等人提出的用于多人姿态估计任务的关联嵌入方法的启发[27]。Newell等人检测所有人类关节,并为每个检测到的关节生成嵌入。他们根据嵌入之间的距离将节点进行分组。
关联嵌入的思想也适用于我们的任务。 网络预测每个检测到的角点的嵌入向量,使得如果左上角和右下角属于同一个边界框,则它们的嵌入之间的距离应该小。 然后,我们可以根据左上角和右下角嵌入之间的距离对角点进行分组。 嵌入的实际值并不重要。 仅使用嵌入之间的距离来对角点进行分组。etk是对象k的左上的嵌入,ebk是对象k右下嵌入,ek是均值。使用‘pull’使同目标的嵌入相近,使用‘push’是不同目标嵌入产生特定距离∆=1。

  1. 联合多任务损失进行训练

Corner Pooling

使用如下公式进行关于top-left的corner pooling。因为需要进行top-left和bottom-right的max pooling。确定一个像素是否是左上角点时,需要在水平方向上往右看,在竖直方向上往下看。在确定是否时右下角点时,则需要在水平方向上往左看,在竖直方向上往上看。


对于top-left和bottom-right通过分别往下扫描和往右扫描,然后分别取最大值,最后相加。


测试

首先通过在角点热图上使用3×3最大池化层来应用非极大值抑制(NMS)。然后从热图中选择前100个左上角和前100个右下角。 角点位置由相应的偏移调整。 我们计算左上角和右下角嵌入之间的L1距离。距离大于0.5或包含不同类别的角点对将被剔除。 左上角和右下角的平均得分用作检测分数。

模型由于所有的one-stage模型,可以和two-stage媲美。

参考

深度学习【60】物体检测:CornerNet
CornerNet 算法笔记

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,793评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,567评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,342评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,825评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,814评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,680评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,033评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,687评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,175评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,668评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,775评论 1 332
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,419评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,020评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,978评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,206评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,092评论 2 351
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,510评论 2 343