目录
一、前言
UNet 是一种卷积神经网络(CNN)架构,专为图像分割任务设计,是一个语义分割模型。它由 Olaf Ronneberger 等人在 2015 年提出,最初用于医学图像分割(如细胞、组织分割),但因其高效和灵活的特性,逐渐被广泛应用于其他领域的图像分割任务。
二、整体架构
1、整体架构---理解1
U-Net的整体架构呈现对称的 U形结构,主要由编码器(Encoder)、解码器(Decoder)以及跳跃连接(Skip Connections)三部分组成。
(1)编码器(Encoder)
编码器负责提取输入图像的特征,逐步减少空间维度,同时增加特征通道的数量。它由多个卷积块成,每个卷积块包括:
进行两次 3×3 的卷积(Conv)操作,每次卷积后使用非线性的ReLU 激活函数。然后再进行2×2 的最大池化(Max Pooling)进行下采样,将特征图的分辨率减半。
【每经过一次卷积和池化操作,图像的尺寸都会减半,通道数通常翻倍】
随着编码器的深入,特征图的尺寸逐渐减小,但通道数(特征维度)逐步增加,以捕捉更高层次的语义信息。
(2)瓶颈层(Bottleneck)
瓶颈层是 U-Net 中最深的一层,连接编码器和解码器,主要用于学习高层语义信息。仍然是采用两次 3×3 的卷积 + ReLU激活函数,但没有池化操作。
【此时空间尺寸最小,包含最深层次的特征表示】
(3)解码器(Decoder)
解码器的任务是逐步恢复图像的空间分辨率,并生成最终的分割结果。
它由多个解码块成,每个解码块通常包含以下组件:
(i)2×2 的转置卷积(Transpose Convolution)或上采样(Upsampling)操作,用于增加特征图的分辨率。
(ii)拼接操作,将编码器相应层的特征与解码器的当前层的特征拼接(跳跃连接)。
(iii)两次连续的 3×3 的卷积操作,每次卷积后使用 ReLU 激活函数。
(4)跳跃连接(Skip Connection)
U-Net 的一个关键设计是跳跃连接。它是通过直接将编码器层的输出(即高分辨率的特征图)与解码器层的对应输出进行连接(拼接),这样做可以帮助网络更好地保留图像的空间信息,从而提高分割结果的精度。
2、整体结构---理解2
U-Net的整体架构呈现对称的 U形结构,可以分为主干特征提取部分、加强特征提取部分和预测部分这三个部分。
(1)主干特征提取部分
Unet的主干特征提取部分由卷积+最大池化组成,整体结构与VGG类似
以输入的图像大小为512x512x3为例,获得五个初步的有效特征层,如下:
conv1:进行两次[3,3]的64通道的卷积,获得一个[512,512,64]的初步有效特征层,再进行2X2最大池化,获得一个[256,256,64]的特征层。
conv2:进行两次[3,3]的128通道的卷积,获得一个[256,256,128]的初步有效特征层,再进行2X2最大池化,获得一个[128,128,128]的特征层。
conv3:进行三次[3,3]的256通道的卷积,获得一个[128,128,256]的初步有效特征层,再进行2X2最大池化,获得一个[64,64,256]的特征层。
conv4:进行三次[3,3]的512通道的卷积,获得一个[64,64,512]的初步有效特征层,再进行2X2最大池化,获得一个[32,32,512]的特征层。
conv5:进行三次[3,3]的512通道的卷积,获得一个[32,32,512]的初步有效特征层。
(2)加强特征提取部分
利用上一步得到的五个初步的有效特征层进行特征融合,特征融合的方式就是对特征层进行上采样并且进行堆叠。
(3)预测部分
通过前两步可以获取输入进来的图片的特征,再利用特征获得预测结果的过程:
利用一个1x1的卷积进行通道调整,将最终特征层的通道数调整成num_classes。
三、优缺点
1、优点
(1)适用于小样本数据
U-Net在有限的标注数据下也能取得良好效果。这对于生物医学图像分割中标注数据不足的情况尤为有利。
(2)端到端的训练
U-Net采用全卷积网络结构,可以进行端到端的训练,即从原始图像到最终的分割结果,无需额外的预处理或后处理步骤。这种端到端的训练方式简化了整个流程,并使得网络能够自动学习适应特定任务的特征表示。
(3)分割精度高
U-Net能够准确地区分不同的目标和背景,尤其在医学图像分割领域表现出色。其对称的U型结构和跳跃连接设计,使得网络能够同时利用低层次的细节特征和高层次的语义特征,提高了分割结果的准确性和细节保留能力(缓解了深层网络信息丢失的问题)。
(4)多尺度特征融合
U-Net采用多尺度特征融合策略,能够在不同的尺度和大小的目标检测中表现出良好的性能。这有助于提升对小目标和边缘区域的分割效果。
(5)灵活的输入尺寸
U-Net网络中没有全连接层,因此可以接受任意大小的输入图像。这种灵活性使得U-Net适用于不同尺寸的图像分割任务。
2、缺点
(1)高内存需求
U-Net的跳跃连接和对称结构增加了模型的参数量,导致训练时对显存需求较高。尤其在处理大尺寸图像时,内存消耗尤为明显。
(2)训练时间和成本较高
由于U-Net网络结构的复杂性,训练时间和内存成本相对较高。这在一定程度上限制了其在某些实时或大规模数据集上的应用。
(3)容易过拟合
对于数据较少的任务,U-Net 可能会出现过拟合现象