首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >深入理解深度学习分割网络Unet——U-Net: Convolutional Networks for Biomedical Image Segmentation

深入理解深度学习分割网络Unet——U-Net: Convolutional Networks for Biomedical Image Segmentation

作者头像
全栈程序员站长
发布2022-08-10 10:57:32
发布2022-08-10 10:57:32
2.1K0
举报

大家好,又见面了,我是你们的朋友全栈君。

##背景

代码语言:javascript
复制
	Mask = Function(I)
  1. 什么是图像分割问题呢? 简单的来讲就是给一张图像,检测是用框出框出物体,而图像分割分出一个物体的准确轮廓。也这样考虑,给出一张图像 I,这个问题就是求一个函数,从I映射到Mask。至于怎么求这个函数有多种方法。我们可以看到这个图,左边是给出图像,可以看到人和摩托车,右边是分割结果。
  1. 求这个函数有很多方法,但是第一次将深度学习结合起来的是这篇文章全卷积网络(FCN),利用深度学习求这个函数。在此之前深度学习一般用在分类和检测问题上。由于用到CNN,所以最后提取的特征的尺度是变小的。和我们要求的函数不一样,我们要求的函数是输入多大,输出有多大。为了让CNN提取出来的尺度能到原图大小,FCN网络利用上采样和反卷积到原图像大小。然后做像素级的分类。可以看图二,输入原图,经过VGG16网络,得到特征map,然后将特征map上采样回去。再将预测结果和ground truth每个像素一一对应分类,做像素级别分类。也就是说将分割问题变成分类问题,而分类问题正好是深度学习的强项。如果只将特征map直接上采样或者反卷积,明显会丢失很多信息。

3. FCN采取解决方法是将pool4、pool3、和特征map融合起来,由于pool3、pool4、特征map大小尺寸是不一样的,所以融合应该前上采样到同一尺寸。这里的融合是拼接在一起,不是对应元素相加。

4. FCN是深度学习在图像分割的开山之作,FCN优点是实现端到端分割等,缺点是分割结果细节不够好,可以看到图四,FCN8s是上面讲的pool4、pool3和特征map融合,FCN16s是pool4和特征map融合,FCN32s是只有特征map,得出结果都是细节不够好,具体可以看自行车。由于网络中只有卷积没有全连接,所以这个网络又叫全卷积网络。

##Unet网络结构

Matrix_1和Matrix_2分别是将卷积核和图像转成矩阵函数。也就说给一个输入X,利用矩阵乘法能得到卷积后输出Y。

代码语言:javascript
复制
								Y=C*X

所以卷积可以分解成两个矩阵相乘。很显然,卷积反向传播就是C的转置相乘。举个例子:

代码语言:javascript
复制
							Y=[1,2]*[X,x_1]T

Y对x求导,dy/dx=[1,2]^T。

反卷积就是转置卷积,也是一种卷积,可以看到图7,这个就是转置卷积,由小尺寸到大尺寸的过程。也就是说反卷积也可以表示为两个矩阵乘积,很显然转置卷积的反向传播就是也是可进行的。所以说整体是Unet是可以反向传播的。 3.Unet——与其他结构比较之FPN

这是FPN检测网络,可以看到红框,如果将红框到过来可以发现,FPN部分结构和Unet相似之处。从而说明Unet网络结构是基于多尺度的。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/129940.html原文链接:https://javaforall.cn

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

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

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

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

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