Anchor-free目标检测

基于关键点

<<CornerNet: Detecting Objects as Paired Keypoints>>


目标框由左上角点和右下角点确定,所以要预测一个目标框的位置大小,可转换为生成两个角点的热力图。对于多个目标,会有多个角点对,如何区分?添加一个embedding预测项!如果一个左上角点和一个右下角点的embedding相近,表示两个点“对上眼了”,可以组成一个目标框。为了使得预测的框的坐标更为准确,添加一个offset预测项,对于预测的角点进行坐标修正。



角点有什么特征呢?人呢,自然知道——矩形框的一横一竖相交处就是角点嘛,然而网络不容易知道啊,教教它吧!引入corner pooling。




前向推理:
1、在角点热力图中,使用3*3的池化层做了个NMS。

2、取出top-100个左上,右下点,通过offset调整角点位置。
3、计算左上,右下角点embedding的L1距离,距离小的,类别一样的构成目标框。角点得分的平均作为置信度。

<<Bottom-up Object Detection by Grouping Extreme and Center Points>>

一个目标框可以用左上右下角点组成,还可以用左下右上角点极左、极右,极上,极下四个点组成,比如一个菱形,过左右极点做竖线,过上下极点做横线,这样一个外接矩形框就出来了。



这么多极点的预测结果,怎么组合?慢慢遍历吧。。。同时添加目标中心点热力图的预测,根据极点构成的框框的中心点在中心点热力图的得分情况,对预测结果进行过滤。

一般没有数据集标注极点,所以只能自己动手,丰衣足食,使用extreme click annotations或者通过算法对已有标签进行处理来生成真值标签。

<<CenterNet: Keypoint Triplets for Object Detection>>

首先“diss”一下cornerNet——你固然是好,然而不够好。为何不再加个中心点热力图预测呢?



前向推理:
1、由CornerNet提出的方法选择top-k的目标框
2、选择分数为top-k的中心关键点,结合offset,remap到输入图像大小
3、对于每个目标框,定义一块中心区域,检查一下中心点是不是在中心区域内,且类别是否一致。(中心区域选择:根据目标尺度来,对于小目标,选大点,对于大目标,选小点。比如目标框大于150像素,5 * 5划分,目标小于150像素,3 * 3划分,选中间1 * 1的格子。)
4、如果中心点和中心区域匹配上了,置信度值是左上角,右下角,中心点三者平均;没有匹配,则删除

既然cornerNet搞了个corner pooling,顺势而为,center pooling水到渠成。顺便帮corner pooling再改进下——cascade corner pooling。



<<Objects as Points>>

大家用(x,y,w,h)训练darknet是那么的熟练,然而现在,角点,极点,一堆“花里胡哨”的,回归初心吧——中心点热力图预测+中心点offset回归+框的宽高回归。


密集预测

既然不用anchor,那么可以对于特征图上的每个点都产生一个预测嘛。咦,yolov1不就是这么做的,当然分成7 * 7的区域有点粗糙。。。

<<Feature Selective Anchor-Free Module for Single-Shot Object Detection>>

在Retinanet基础上,fpn的每层输出加两个分支用于anchor-free预测。



真值生成:原图目标框b投影到特征图P^l中,大小为b_p^l,定义effective box为b_e^l(正样本),定义 ignoring box为b_i^l(梯度不回传),宽高分别为b_p^l的0.2和0.5倍。
对分类输出,白色区域表示目标所在区域,灰色区域为忽略区域,黑色为负样本区域。计算focal loss。
对于坐标输出,对于b_e^l里面所有的pixel(i,j),预测四个坐标,分别是(i,j)与b_p^l的上下左右边的偏移。effective box外面不计算loss。

在线特征选择:FSAF module对于每个实例,根据其特征,选择该在哪个特征层进行预测,而不是像anchor-based方法只用目标的大小。


<<FCOS: Fully Convolutional One-Stage Object Detection>>

对于特征图F_i上的一个像素点 (x, y),反投影到输入图像上,坐标为(xs+s/2,ys+s/2)(s为当前特征图的stride)。如果落在gt框中,那么该点为正样本。
但是如果用所有的这些“正样本点”进行loss计算,会带来2个问题:第一个,如果这个点是两个目标框相交区域内的点,那么这个点该预测哪一个目标呢?第二个,如果这个点在目标角落处,其需要预测的(t,b,l,r)值相差很大,预测的框不靠谱。


针对第一个问题,利用多尺度预测,将不同目标分配给不同层进行预测,消除歧义性。尺度m2, m3, m4, m5, m6 m7 设置为 0, 64, 128, 256, 512 和无穷;如果要回归的真值s^∗, t^∗, r^∗和b^∗,最大值大于m_i,或者小于m_{i-1},那么这个点为负样本,不需要回归框。如果一个点还是关联多个目标框,选择面积较小的那个框作为这个点的真值。
针对第二个问题,使用 Center-ness得分,表示目标框内的像素点距离中心的偏移程度,真值计算如下式所示。在推理时,目标框的得分是Center-ness得分乘以类别得分,因此距离中心点较远的点的预测结果置信度会被拉低,去除这些低质量的预测结果。

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

推荐阅读更多精彩内容