FCN做语义分割,RoI pooling和RoI align,EAST中的loss function

FCN做语义分割

  • 像素分割时,一般融合feature map中多层的特征
  • 没有全连接层,减少模型参数量,提高计算速度
  • 难点:几何上监督信息的定义(eg: EAST旋转矩形与四边形的检测框、如何监督弯曲的检测区域?)

RoI pooling(出自Fast R-CNN)

作用:

  • 根据预选框在输入图像中的位置坐标在特征图中将相应区域池化为固定尺寸的特征图,以便进行后续bounding box的分类和回归操作。

局限性分析:

  1. 预选框的位置通常是由模型回归得到的,一般来讲是浮点数,会先将其量化成整数坐标值;
  2. 根据卷积核尺寸(kernel size)以及卷积步长(stride),其位置坐标对应到feature map上仍可能变为浮点数,这是会进行第二次坐标的量化。
  • 这两次量化使得在feature map上的RoI已经偏离了原预选框的位置。
  • 改进方案为RoI align(在Mask-RCNN中被提出,反向传播公式论文中没有,见博客,不知出处)。

目前所知的两种RoI pooling方式:

  1. 将RoI region划分成固定的m*n个sections,每个section进行max-pooling。使得不同的RoI region都可以得到固定维度的特征表示。
  2. 在保持高度一致的情况下,不改变原RoI region的aspect ratio,然后通过将其送入RNN系列网络实现固定维度的特征表示。

被认为的弊端:

  • 方向变化和量化因子带来的负面影响

RoI align(出自Mask-RCNN)

主要思想:

  • 取消量化操作,使用双线性内插的方法获得坐标为浮点数的像素点上的像素值,从而将整个特征聚集过程转化为一个连续的操作。

具体做法:

  1. 遍历每一个候选区域,保持浮点数边界不做量化。
  2. 将候选区域分割成k x k个单元,每个单元的边界也不做量化。
  3. 在每个单元中计算固定四个坐标位置,用双线性内插的方法计算出这四个位置的值,然后进行最大池化操作。
  • RoI pooling and RoI align can be integrated into the convolutional layers for in-network region cropping, which is a key component for training an end-to-end framework.

EAST中的loss function

  • Loss for Score Map(binary classification loss):class-balanced cross-entropy loss,省去了样本均衡,难负样本挖掘等步骤
  • Loss for Geometries(regression loss with scale-invariant):
    • RBOX regression:AABB loss(IoU loss)➕ angle loss
    • QUAD regression:scale-normalized smoothed-L1 loss
  • 经过FCN,每个像素都会生成一个对应的bounding box
  • 先threshold,然后merge by NMS
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值