Richer Convolutional Features for Edge Detection

Yun Liu1      Ming-Ming Cheng1      Xiaowei Hu1      Kai Wang1      Xiang Bai2

1Nankai University     2HUST

Abstract

In this paper, we propose an accurate edge detector using richer convolutional features (RCF). Since objects in natural images possess various scales and aspect ratios, learning the rich hierarchical representations is very critical for edge detection. CNNs have been proved to be effective for this task. In addition, the convolutional features in CNNs gradually become coarser with the increase of the receptive fields. According to these observations, we attempt to adopt richer convolutional features in such a challenging vision task. The proposed network fully exploits multiscale and multilevel information of objects to perform the image-to-image prediction by combining all the meaningful convolutional features in a holistic manner. Using VGG16 network, we achieve state-of-the-art performance on several available datasets. When evaluating on the well-known BSDS500 benchmark, we achieve ODS F-measure of 0.811 while retaining a fast speed (8 FPS). Besides, our fast version of RCF achieves ODS F-measure of 0.806 with 30 FPS.

Papers

Motivation

 

 

 

We build a simple network based on VGG16 to produce side outputs of conv3_1, conv3_2, conv3_3, conv4_1, conv4_2 and conv4_3. One can clearly see that convolutional features become coarser gradually, and the intermediate layers conv3_1, conv3_2, conv4_1, and conv4_2 contain lots of useful fine details that do not appear in other layers.

 

 

 

Method

Our RCF network architecture. The input is an image with arbitrary sizes, and our network outputs an edge possibility map in the same size. We combine hierarchical features from all the conv layers into a holistic framework, in which all of the parameters are learned automatically. Since receptive field sizes of conv layers in VGG16 are different from each other, our network can learn multiscale, including low-level and objectlevel, information that is helpful to edge detection.

The pipeline of our multiscale algorithm. The original image is resized to construct an image pyramid. And these multiscale images are input to RCF network for a forward pass. Then, we use bilinear interpolation to restore resulting edge response maps to original sizes. A simple average of these edge maps will output high-quality edges.

Evaluation on BSDS500 dataset

The evaluation results on standard BSDS500 dataset. Both single-scale and multiscale versions of RCF achieve better performance than humans.

 

The comparison with some competitors on BSDS500 dataset. The top three results are highlighted in red, green and blue respectively.

说点什么

13 Comments on "Richer Convolutional Features for Edge Detection"

Notify of
avatar
张松龙
Guest
张松龙

程明明老师,您好,我跑您rcf代码时出现这样的错误,是什么原因导致的呢?F1027 13:05:30.217037 5997 net.cpp:775] Cannot copy param 0 weights from layer ‘score-dsn2’; shape mismatch. Source param shape is 1 128 1 1 (128); target param shape is 1 21 1 1 (21). To learn this layer’s parameters from scratch rather than copying from a saved net, rename the layer.

Yun Liu
Editor
Yun Liu

您好,你的初始化权重的模型和网络不对应,我们score-dsn2层的param shape不是1 128 1 1,所以你用的网络肯定不是我们的。请从https://github.com/yun-liu/rcf上下载相应的代码和训练好的模型。

王洲涛
Guest
王洲涛

程明明老师,您好,请教您一个问题。如果想用自己标记的数据去训练RCF,请问是否有快速准确的标记方法或者软件可以推荐。谢谢~

周文璋
Guest
周文璋

我有个问题想请您指导下,我下了你们的代码,在windows10平台基于vs2015进行caffe编译,报有std::tuple 系列错误,我想问下,你们编译caffe的具体环境有哪些

hhh
Guest
hhh

您好,哪里可以下载其他算法的评价指标呢?

Yun Liu
Editor
Yun Liu

您好,您可以到其他算法的主页上下载;或者跑一下它们的代码,再用BSDS500 Benchmark里的code生成

miao
Guest
miao

程明明老师:

您好,您的RCF工作非常好!请问在每个level卷积时为何1×1的kernel要设置为21种?

Yun Liu
Editor
Yun Liu

您好,每个level的卷积设置为大约几十对结果是没什么影响的,设置为21并没什么特殊的含义

wpDiscuz