CornerNet

CornerNet-(目标检测->关键点检测)

流程:

  1. ConvNet生成两组heat maps来预测不同分类下的corners,其中一组负责预测左上角,另一组负责预测右下角。backbone使用hourglass network。每组heatmap有C个channel,其中C是category数量,heatmap的size为  。每个channel就是一个binary mask,表示location是否是这个分类下的corner。
  2. ConvNet为每个corner预测embedding vector,用于判断某左上角和右下角是否同属一个目标,
  3. 为了使得通过预测左上角和右下角corner得到的bbox更加紧贴目标,ConvNet还预测了corner的location偏差offset

 

损失函数

    L_off 为关于取整计算时缺失的梯度。

anchor free:

corner在离散化bbox空间更加高效,比如 (h,w)的feature map,corner总共有  种可能性,而anchor box则有  种可能性,所以可以说使用了  的corners 来表征  的anchor boxes。

corner:

gt corner location为中心的某个圆内,应该降低对negative location的惩罚比较合理,随着negative location远离圆中心,逐渐增大惩罚。记  为gt heatmap的值,当  位置处是gt corner且对应分类为  时,  表示positive,其余情况  表示negative,在gt corner对应分类  下对一定几何范围内的negative location 降低惩罚。在离gt较近的区域内的negative corner的IOU值大于0.7 我们也认为是有必要保留的,所以作出这样的惩罚。

 

其中  表示negative location  与 gt corner location(圆中心)的坐标相对值,  是圆的半径, ,这个值控制惩罚降低的变化速度,值越大,随着negative location远离圆中心,  值下降的越慢

损失函数为:  N为一个image中object的数量  为预测heatmap上的预测值(预测位置  处是分类为  的corner的概率)

 

坐标的修复:

 

 

 

 

 

pooling layer:

 

作者认为,要确定一个location是不是top-left corner,需要从这个location水平向右看,才能知道是不是目标的top most边界,同理,从这个location垂直向下看,才能知道是不是目标的left most边界。这就是corner pooling层。所有location的vector就组成heatmap。corner poolingdie叠加了tl右边的最大特征值和最下边的最大特征值,根据右边和下面的特征来确定corner tl。

 

embedding:寻找属于同一目标的左上 右下的location

etk和ebk分别是第k个目标左上和右下corner对应位置的embedding vector,ek是这两个向量的均值向量。在pull的时候,需要使同一个目标corner对应的两个embedding vector的距离尽量小,这里就以两个embedding vector分别到其均值向量也就是ek的距离之和表征两个embedding vector的距离;在push的时候,需要不同目标的corner对应的embedding vector尽量远,在这里就以每两个目标的均值向量ek之间的距离均值表征不同目标的距离。其实这么做就是为了保证类内离散度小的同时,类间差大。

 

hourglass:

hourglass模块结合了local 特征和 global 特征生成新的特征,重复这个过程,从而捕获更加higher-level的信息

使用了两个hourglass模块级联,并做了一些修改,包括:1. 下采样使用stride=2的conv代替max-pooling。2. 在hourglass内部,feature分辨率和channel的变化(见下面的具体讨论部分)。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值