查看: 87|回复: 3

几种常见分割网络分析与对比(FCN、U-net、DSN)

[复制链接]

4

主题

6

帖子

13

积分

新手上路

Rank: 1

积分
13
发表于 2022-12-21 20:55:53 | 显示全部楼层 |阅读模式
1.1 全卷积神经网络(Fully Convolutional Networks, FCN)
基于传统的卷积神经网络的分割方法通常是:为了对一个像素分类,使用该像素周围的图像块作为网络的输入。这种方法有几个缺点:
1、存储开销很大。如果对每个像素使用的图像块的大小为15x15,则所需的存储空间为原来图像的225倍。
2、计算效率低下。因为相邻像素块重复,计算机需要做大量的重复计算,所以导致计算效率低下。
3、感受野太小,无法获取全局信息。通常像素块的大小比整幅图像小很多,因此算法只能提取一些局部的特征信息,从而导致分类的性能受到限制。
针对上述问题, Long Jonathan等人[2]2015年提出全卷积网络(Fully Convolutional Networks, FCN)结构。FCN可以对图像进行像素级的分类,从而解决了语义级别的图像分割问题。与经典的卷积神经网络在卷积层之后使用全连接层得到固定长度的特征向量进行分类不同,FCN可以接受任意尺寸的输入图像,采用反卷积层对最后一个卷积层的feature map进行上采样, 使它恢复到输入图像相同的尺寸,从而可以对每个像素都产生了一个预测, 同时保留了原始输入图像中的空间信息, 最后在上采样的特征图上进行逐像素分类。FCN网络结构图如图1-1所示:



图1-1  FCN网络结构图

此外文章作者还采用了跳跃连接结构对分割进行细化,即结合最后预测层和具有更小步长的跨层信息,该方法结合了精细层和粗糙层,让模型能做出遵从全局结构的局部预测。如图1-2所示:



图1-2 跳跃连接结构示意图

FCN的优点是将分类网改写为用于分割的像素点分类网。具体的改动包括两个方面,即将全连接层改写为卷积层,并且使用反卷积完成上采样的过程;同时使用跳跃连接的结构,将深的粗糙的信息与浅的精细的信息相结合,产生准确和精细的分割。但是缺点也很明显:分割结果不够精细。进行8倍上采样虽然比32倍的效果好了很多,但是上采样的结果还是比较模糊和平滑,对图像中的细节不敏感;对各个像素进行分类,没有充分考虑像素与像素之间的关系;忽略了在通常的基于像素分类的分割方法中使用的空间规整(spatial regularization)步骤,缺乏空间一致性。为了解决这一问题,许多研究者采用MRF算法[3]或CRF算法[4]对FCN输出的分割结果进行改进,进一步优化分割结果。
1.2 用于医学图像分割的卷积神经网络(U-net)

2015年,OlafRonneberger等人[5]提出了U-net网络结构,U-net是基于FCN的一种语义分割网络,适用于做医学图像的分割。在本文中,作者修改并扩展了FCN网络结构,使它在使用少量的数据进行训练的情况下获得精确的分割结果。其主要思想是在收缩网络的后面补充一个与前面类似的网络,其中池化运算符由上采样运算符替换。因此,这些层增加了输出的分辨率。为了定位,从收缩路径的高分辨率特征与上采样输出相结合。然后,连续卷积层可以学习基于该信息组装更精确的输出。U-net网络结构如图1-3所示:



图1-3 U-net网络结构示意图

在上图中,每个蓝色块表示一个多通道特征图,特征图的通道数标记在顶部,X-Y尺寸设置在块的左下边缘,不同颜色的箭头代表不同的操作。图的左半部分是收缩路径,右半部分是扩展路径。其中需要注意的是,每经过一次上采样都会将通道数减半,再与收缩路径对应的特征图进行拼接。并且在拼接之前会进行 crop,(例如在上图中,64*64大与56*56,为了使这两个特征图能够顺利拼接,取64*64中间部分56*56的大小,然后拼接),因为两者的尺寸并不相同(主要是因为 valid conv 造成的)。最后一层使用1 X 1大小的卷积核,将通道数降低至特定的数量(如像素点的类别数量)。
1.2.1  FCN与U-net的区别
FCN的主要思想是使用连续的层补充通常的收缩网络,在判别输出的位置添加上采样层,这些层增加了输出层的分辨率,为了定位。来自于收缩路径的高分别率与上采样输出相结合,基于这个信息,一个连续的卷积层可以学习组装更精确的输出。而U-net与FCN的不同在于,U-net的上采样依然有大量的通道,这使得网络将上下文信息向更高分辨率传播,作为结果,扩展路径与收缩路径对称,形成一个U型的形状,如图1-3所示,网络没有全连接层,只是每个卷积层的有效部分。
1.2.2  创新与不足
本文提出的U-net网络结构,它同时具备捕捉上下文信息的收缩路径和允许精确定位的对称扩展路径,这使得网络将上下文信息向更高层分辨率传播;Overlap-tile 策略,这种方法用于补全输入图像的上下信息,可以解决由于内存不足造成的图像输入的问题;同时使用弹性形变[6]对数据进行增强,既可以解决训练数据不足的问题,也可以提高算法的鲁棒性;使用了加权损失。预先计算权重图,一方面补偿了训练数据每类像素的不同频率,另一方面使网络更注重学习相互接触的细胞间边缘。
但是上面的创新点并不适合所有的分割任务,比如对刚体进行分割,因为很难通过弹性形变对刚体数据进行增强。
1.3 深度监督网络(Deeply-Supervised Nets, DSN)

DSN[7]是在现有的CNN基础上提出来的,在隐藏层引入了分类器(SVM或Softmax),同时还使用随机梯度方法扩展的技术,它的核心思想是为隐藏层提供集成的直接监督层,而不是仅在输出层提供监督,并将此监督传播回早期层的标准方法。文章中通过为每个隐藏层引入伴随目标函数来提供这种集成的直接隐藏层监督;这些伴随目标函数可以被视为学习过程中的附加(软)约束。使用来自随机梯度方法的分析技术来研究限制性设置,其中引入伴随目标函数直接导致提高收敛率,这种综合深度监督结构具有如下的优势:
1. 对于小型训练数据和相对较浅的网络,深度监督可以提供强大的正则化;
2. 对于大型训练数据和更深层次的网络,深度监督可以通过改善其它有问题的收敛来提升训练性能。
总的来说,DSN方法可以与许多现有的CNN类型网络结合使用,能够减轻梯度爆炸或梯度消失;对于小型训练数据和相对较浅的网络,DSN起到强大的“正规化”的作用;对于大型训练数据和非常深的网络,DSN使训练过程变得方便。
-----------------
PS:如果觉得有用的话,点个赞再走吧!
回复

使用道具 举报

4

主题

8

帖子

16

积分

新手上路

Rank: 1

积分
16
发表于 2022-12-21 20:56:24 | 显示全部楼层
请教一下,unet为啥不用padding解决每次conv带来的size减小啊[思考]
回复

使用道具 举报

4

主题

7

帖子

14

积分

新手上路

Rank: 1

积分
14
发表于 2022-12-21 20:57:20 | 显示全部楼层
感觉也是可以的吧,见过一些做法就是直接把padding改成same形式,这样输入大小就会等于输出大小了
回复

使用道具 举报

1

主题

3

帖子

4

积分

新手上路

Rank: 1

积分
4
发表于 2022-12-21 20:57:55 | 显示全部楼层
说的话感觉文绉绉的,不好理解,有点把问题将复杂化了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表