推荐一个不错的边缘检测网络:HED

2019 年 12 月 13 日 极市平台

加入极市专业CV交流群,与6000+来自腾讯,华为,百度,北大,清华,中科院等名企名校视觉开发者互动交流!更有机会与李开复老师等大牛群内互动!

同时提供每月大咖直播分享、真实项目需求对接、干货资讯汇总,行业技术交流。关注 极市平台 公众号 ,回复 加群,立刻申请入群~



边缘检测算子


要得到一张图片的边缘,我们可以通过边缘算子,下面着重介绍Sobel算子。


Sobel算子是典型的基于一阶导数的边缘检测算子,由于该算子中引入了类似局部平均的运算,因此对噪声具有平滑作用,能很好的消除噪声的影响。Sobel算子对于象素的位置的影响做了加权。


Sobel算子包含两组3x3的矩阵,分别为横向及纵向模板,将之与图像作平面卷积,即可分别得出横向及纵向的亮度差分近似值。实际使用中,常用如下两个模板来检测图像边缘。


检测水平边沿 横向模板:


检测垂直平边沿 纵向模板:


图像的每一个像素的横向及纵向梯度近似值可用以下的公式结合,来计算梯度的大小。


最后用以下公式计算梯度方向:


最后代码如下:

import cv2import numpy as np  img = cv2.imread("./image.jpg", 0)x = cv2.Sobel(img,cv2.CV_16S,1,0)y = cv2.Sobel(img,cv2.CV_16S,0,1)absX = cv2.convertScaleAbs(x)absY = cv2.convertScaleAbs(y)dst = cv2.addWeighted(absX,0.5,absY,0.5,0)cv2.imshow("absX", absX)cv2.imshow("absY", absY)cv2.imshow("Result", dst)cv2.waitKey(0)cv2.destroyAllWindows()


Holistically-Nested Edge Detection


这篇文章使用深度学习的方法,其中Holistically表示该算法试图训练一个image-to-image的网络;Nested则强调在生成的输出过程中通过不断的集成和学习得到更精确的边缘预测图的过程。文章把HED和传统Canny算法进行边缘检测的效果对比,如下图我们可以看到HED的效果要明显优于Canny算子的。




网络具体实现


使用VGG-16作为骨干网络,并且使用迁移学习初始化网络权重。


文章中列举了几种multi scale的deeplearning方法,具体如下图:



(a) Multi-stream learning: 使用不同结构,不同参数的网络训练同一副图片,类似的结构有Inception;

(b) Skip-layer network learning:该结构有一个主干网络,在主干网络中添加若干条到输出层的skip-layer,类似的结构有FPN;

(c) Single model on multiple inputs: 该方法使用同一个网络,不同尺寸的输入图像得到不同尺度分Feature Map,YOLOv2采用了该方法;

(d) Training independent network: 使用完全独立的网络训练同一张图片,得到多个尺度的结果,该方法类似于集成模型;

(e) Holistically-Nested networks: HED采用的方法。


Holistically-Nested networks的具体结构如图:



VGG-16作为backbone。在VGG-16的5个block的Max Pooling降采样之前,HED通过side_branch函数产生了5个分支,最后这5个side_branch的输出通过Concatenate操作合并在一起。网络的5个side_branch和一个fuse branch通过sigmoid激活函数后共同作为网络的输出,每个输出的尺寸均和输入图像相同。



损失函数


损失函数主要涉及关于side branch的目标函数和fuse层的损失函数。


网络最后的目标就是最小化这个两个损失之和:




-End-



*延伸阅读



CV细分方向交流群


添加极市小助手微信(ID : cv-mart),备注:研究方向-姓名-学校/公司-城市(如:目标检测-小极-北大-深圳),即可申请加入目标检测、目标跟踪、人脸、工业检测、医学影像、三维&SLAM、图像分割、姿态估计、超分辨率、嵌入式视觉、OCR 等极市技术交流群(已经添加小助手的好友直接私信),更有每月大咖直播分享、真实项目需求对接、干货资讯汇总,行业技术交流一起来让思想之光照的更远吧~


△长按添加极市小助手


△长按关注极市平台


觉得有用麻烦给个在看啦~  


登录查看更多
4

相关内容

卷积神经网络的概述论文:分析、应用和展望,21页pdf
专知会员服务
91+阅读 · 2020年4月7日
【Google AI】开源NoisyStudent:自监督图像分类
专知会员服务
55+阅读 · 2020年2月18日
小于1MB的行人检测网络
极市平台
8+阅读 · 2019年9月23日
BASNet,一种能关注边缘的显著性检测算法
极市平台
15+阅读 · 2019年7月19日
目标检测之非极大值抑制(NMS)各种变体
极市平台
3+阅读 · 2019年5月2日
特征金字塔网络FPN的直觉与架构
论智
11+阅读 · 2018年8月6日
RASNet 论文笔记
统计学习与视觉计算组
10+阅读 · 2018年4月26日
实战|手把手教你实现图象边缘检测!
全球人工智能
10+阅读 · 2018年1月19日
【下载】PyTorch 实现的YOLO v2目标检测算法
专知
15+阅读 · 2017年12月27日
Deep Learning for Generic Object Detection: A Survey
Arxiv
13+阅读 · 2018年9月6日
Arxiv
4+阅读 · 2018年6月14日
Arxiv
8+阅读 · 2018年5月15日
Arxiv
7+阅读 · 2018年3月19日
VIP会员
相关VIP内容
卷积神经网络的概述论文:分析、应用和展望,21页pdf
专知会员服务
91+阅读 · 2020年4月7日
【Google AI】开源NoisyStudent:自监督图像分类
专知会员服务
55+阅读 · 2020年2月18日
相关资讯
小于1MB的行人检测网络
极市平台
8+阅读 · 2019年9月23日
BASNet,一种能关注边缘的显著性检测算法
极市平台
15+阅读 · 2019年7月19日
目标检测之非极大值抑制(NMS)各种变体
极市平台
3+阅读 · 2019年5月2日
特征金字塔网络FPN的直觉与架构
论智
11+阅读 · 2018年8月6日
RASNet 论文笔记
统计学习与视觉计算组
10+阅读 · 2018年4月26日
实战|手把手教你实现图象边缘检测!
全球人工智能
10+阅读 · 2018年1月19日
【下载】PyTorch 实现的YOLO v2目标检测算法
专知
15+阅读 · 2017年12月27日
Top
微信扫码咨询专知VIP会员