今天将分享Unet的改进模型DC-UNet,改进模型来自2020年的论文《DC-UNet Rethinking the U-Net Architecture with Dual Channel Efficient CNN for Medical Images Segmentation》,通过理解该模型思想,在VNet基础上可以做同样的改进。
一、原始Unet网络
1、 原始Unet有一些缺陷。文章作者因此提出了的改进Unet的DC-Unet(双通道Unet),主要从两个方面来设计的,一个是设计了高效的CNN结构取代Unet中的编码器和解码器,第二个是用残差模块取代编码器与解码器之间的跳跃连接。相对于原始Unet结果,在三个数据上结果分别提升了2.9%,1.49%和11.42%的精度。
2、 Unet经典结构
由卷积层,池化层,上采样样层,跳跃连接层构成。
二、 MultiResUNet网络
1.1、采用不同大小的卷积核来替换原始Unet的卷积来提取特征,然后再将不同卷积的结果进行拼接连接,实现不同图像尺度的特征融合到一起。如下图所示,为了减少通道个数,从而减少参数计算,通过1x1卷积来减少维度,如下图所示。
论文中作者对上述Inception模块进行了简化,可以通过一系列相同卷积操作组合达到不同大小卷积核计算效果,然后将不同卷积计算结果进行拼接完成不同尺度特征的拼接融合,如下图b所示。此外,作者还增加残差连接到Inception模块中去,如下图c所示。
2.2、Unet中跳跃连接模块替换成残差路径连接,如下图所示,该模块输入是解码网络的输出,经过四个3x3的残差连接卷积操作,最后再与编码网络的输出进行拼接。
2.3、具有多尺度残差模块和残差路径的MultiResUnet结构如下所示。每个多尺度残差网络的卷积核大小及个数是3个3x3和1个1x1,特征通道个数每一个模块不一样,具体可以看表1。残差路径的卷积核大小是多个3x3和1x1模块的叠加,从下图可以看到模块中3x3和1x1的残差模块的个数分别是4,3,2,1。具体可以看表格1。
三、 DC-UNet网络
针对MultiResUnet模型提出更有效的网络结构来提取更多空间特征。为了克服无效空间特征的问题,采用多个通路的3个3x3卷积层代替MultiRes模块中的残差连接。论文作者在双通道模块中采用了2个通路的3个3x3卷积层,最后将这两个通路的结果线性相加输出。如下图所示。
具有双通道模块和残差路径的DC-Unet结构如下所示。每个双通道模块的卷积核大小都是3x3大小,特征通道个数每一个模块不一样,具体可以看表2。残差路径的卷积核大小是多个3x3和1x1模块的叠加,从下图可以看到模块中3x3和1x1的残差模块的个数分别是4,3,2,1。具体可以看表格2。
四、 训练细节
预处理将图像统一到256x128大小,并将图像从16位数据格式转换到8位数据格式。采用二值交叉熵损失函数,优化器采用Adam及其默认参数。
五、 评价指标
由于输出的图像是0到1的数值,可以采用二值的比较方法:jaccard相似性即IOU。可以采用灰度的比较方法:绝对值平均误差(MAE),Tanimoto相似性(jaccard相似性的扩展衍生),结构相似性(SSIM)。
六、 结果对比
在三个数据集上对比了UNet,MultiResUNet和DC-UNet,不管从客观评价指标还是主管视觉上,DC-Unet的结果都是最好的。