前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CNN边缘检测--Richer Convolutional Features for Edge Detection

CNN边缘检测--Richer Convolutional Features for Edge Detection

作者头像
用户1148525
发布2019-05-26 12:02:52
2.1K0
发布2019-05-26 12:02:52
举报

Richer Convolutional Features for Edge Detection CVPR2017 Caffe:https://github.com/yun-liu/rcf

本文针对边缘检测问题,基于 VGG16 网络设计了一个 richer convolutional features (RCF) 用于边缘检测,效果目前是很好的。

首先来看看 VGG16不同卷积层的特征输出

这里写图片描述
这里写图片描述

3 Richer Convolutional Features (RCF) 3.1. Network Architecture 网络结构思路很简单啊

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

我们将卷积分为5个stage,相邻两个stage 通过池化层来降采样,得到不同尺度特征,rich hierarchical information 对边缘检测很有帮助。 随着 receptive field 尺寸的增加,每个卷积层学习到的有用信息将变得 coarser

标准VGG16中的感受野和步长

这里写图片描述
这里写图片描述

我们对VGG16的改动如下: 1)去除所有的全连接层和第五池化层。去除全连接层主要是为了得到全卷积网络,第五池化层对降采样特征图,不利于边缘定位。 2)对VGG16中的每个卷积层使用一个 kernel size 1 × 1 and channel depth 21 卷积层, 每个stage中所有的1 × 1 × 21卷积输出进行元素相加操作( eltwise layer),得到一个复合特征 3)每个 eltwise layer 后面加一个deconv layer 用于放大特征图尺寸的(up-sampling layer) 4)在每个 up-sampling layer 后面使用一个 cross-entropy loss / sigmoid layer 5)所有的 up-sampling layers 输出进行concatenated,随后使用一个 1×1 conv layer 进行特征图融合,最后使用 一个 cross-entropy loss / sigmoid layer 得到输出

下面看看每个 stage 的输出结果

这里写图片描述
这里写图片描述

3.2. Annotator-robust Loss Function 在设计损失函数时,我们对于有争议的边缘点不计入损失函数的计算中,例如有10个人标记,只有1-3个人同时标记某个像素为边缘点。那么该像素点就属于有争议的边缘点。

每个像素的损失函数定义如下

这里写图片描述
这里写图片描述

3.3. Multiscale Hierarchical Edge Detection 对尺度图像输入

这里写图片描述
这里写图片描述

we use three scales 0.5, 1.0, and 1.5 in this paper 对于 BSDS500 数据库, 精度提升: ODS F-measure from 0.806 to 0.811,速度从 30 FPS 降到 8 FPS

3.4. Comparison With HED 和 HED 的比较 下面开始 马三点: 关于这个问题我要说三点 1)HED 只考虑 VGG16 每个 stage 中的最后一个卷积层, 这样很多有用的信息就丢失了。 而 RCF 使用了所有的卷积层信息 2) 我们设计了新的损失函数,不考虑有争议的边缘点计算 3) 多尺度提升性能 multiscale hierarchy to enhance edges 2.3% improvement in ODS F-measure over HED

BSDS500 数据库上对比

这里写图片描述
这里写图片描述

NYUD dataset

这里写图片描述
这里写图片描述

Multicue dataset

这里写图片描述
这里写图片描述

图示结果:

这里写图片描述
这里写图片描述

最后有一点很有意思: non-linearity 没有帮助,甚至导致网络不收敛 In order to investigate whether including additional non-linearity helps, we connecting ReLU layer after 1 × 1 − 21 or 1 × 1 − 1 conv layers in each stage. However, the network performs worse. Especially, when we attempt to add nonlinear layers to 1 × 1 − 1 conv layers, the network can not converge properly.

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017年08月28日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档