Richer Convolutional Features for Edge Detection论文笔记

总结

使用CNN进行边缘检测,主要在数据库BSD500实验。主要贡献如下:

  1. 网络开始阶段,细节边缘丰富。网络后续阶段,细节(内部)边缘减少,轮廓信息更明显。所以利用FPN思想结合高层和底层的Feature Map进行边缘检测。
  2. 优化LOSS FUNCTION,使其更具有一般性。

在BSDS500 benchmark,得到 ODS F-measure 0.811 (8FPS)

简化版本ODS F-measure 0.806 (30FPS)

得到2017年最好边缘检测的效果。

网络结构

Richer Convolutional Features for Edge Detection论文笔记

网络主干为VGG16, 每个ConvGroup即一个stage后接pooling下采样。

每个stage的各个conv层后接1x1conv降维,再将group中所有降维后的feature maps相加(eltwise)得到融合特征。再接一个deconv恢复尺寸记为Stage feature map,用其计算loss。

最后阶段concat每个stage得到的Stage feature map,然后接一个1x1conv降维,计算loss。

网络具体结构及感受野如下表格所示

Richer Convolutional Features for Edge Detection论文笔记

优化LOSS FUNCTION

Edge Detection任务中,每个图像有多个Anotation,因为每个标注者对边缘的标注可能不统一。

所以本文整合多个标注信息:

将所有人标注为0的区域设定为背景,将标注均值大于Richer Convolutional Features for Edge Detection论文笔记的pixel定义为edge。平均标注介于二者之间的pixels定义为模糊点,不计算loss。

公式如下

Richer Convolutional Features for Edge Detection论文笔记

其他细节

1. 实验中使用了dilated conv以及一些超参数具体设置如下

Richer Convolutional Features for Edge Detection论文笔记

2. 评价指标ODS、OIS

Richer Convolutional Features for Edge Detection论文笔记

通过预测结果生成最终edge map的时候,置信度是一个超参数,记为p,p的选取可以通过ODS和OIS两种方法,当然这两种方法得到的F score也不一样。

ODS是选取一个固定的p应用于所有图片,使得整个数据集上的F score最大。

OIS是在每一张图片上均选取不同的使得该图片F score最大的p。

通常使用ODS作为测评指标。

吐槽

Edge detection任务上另一个有代表性的工作为HED,Holistically-Nested Edge Detection。发表于ICCV2015。

RCF与HED的区别其实很小,无非就是将每个conv层后的结果利用起来。HED是用group conv后的结果。

另外一点就是LOSS FUNCTION的计算改进。

不管黑猫白猫能抓耗子就是好猫,RCF也将HED效果提升了不少。