Half-UNet:用于医学图像分割的简化U-Net架构

news/2024/11/20 4:33:52/

Half-UNet简化了编码器和解码器,还使用了Ghost模块(GhostNet)。并重新设计的体系结构,把通道数进行统一。

论文动机

编码器的不同类型的架构图,编码器(A-C)的结构分别来源于U-Net的编码器、解码器和全的Unet结构。

下面是上图的一些结果指标

将U-Net 的编码器和解码器都视为编码器。通过设计单个解码器来聚合 C1 到 C16 的特征,其结构与 UNet 3+ 中的全尺寸特征聚合相同。编码器(A)可以达到与编码器(C)相当的性能,而编码器(B)的性能明显下降。也就是说U-Net的解码器(图中的B部分)是可以被简化的并且不影响性能。

Half-UNet

1、统一通道数

上图说明了如何在UNet3+的第三解码器层中构造全尺寸聚合特征映射。

在U-Net和UNet 3+的每一个下采样步骤中,特征通道的数量都增加了一倍,增强了特征表达的多样性。但是这增加了模型的复杂性。在 Half-UNet 中,所有特征图的通道数是统一的,也就是减少了卷积运算中的过滤器数量。

2、全尺寸特征融合

U-Net和UNet 3+都使用串联操作进行特征融合,这需要更多的内存和计算量。而加法操作不需要额外的参数和计算复杂度。将不同比例尺的特征图上采样到原始图像的大小,然后通过加操作进行特征融合。

从上图可以看到,他只用了unet的编码器部分,也就是一半的unet,所以这就是Half-UNet的由来

3、Ghost 模块

与标准卷积相比,Half-UNet 使用 Ghost 模块来减少所需的参数和 FLOP。与 GhostNet 中一样,Ghost 模块使用廉价操作的同时生成更多的特征图。

使用 s=2,其中 s 表示固有特征图比例的倒数。一半的特征图由卷积生成,另一半由深度可分离卷积生成。最后将特征图的两部分连接起来形成输出。

结果

论文使用3个数据集

定量结果

Half-UNet†:删除 Half-UNet 中的 Ghost 模块,在乳房 X 光图像方面优于 U-Net 及其变体,在肺结节图像方面比 Half-UNet 更接近U-Net。Half-UNet† 在左心室 MRI 图像方面的表现不如 Half-UNet。

与U-Net及其变体相比,Half-UNet(有无Ghost模块)具有相似的分割精度,而参数和flop分别降低了98.6%和81.8%。

Half-UNet†u 和 Half-UNet †d 的通道数在下采样后翻倍。解码器中的特征融合有两种策略:

1、Upsampling2D + 3×3 convolution,Half-UNet†u和UNet 3+是这样做的;

2、反卷积,也就是Half-UNet†_d和U-Net所做的。

可以看到Half-UNet†u和Half-UNet†d与Half-UNet†相比,增加了所需的flop和参数。

定性结果

Half-UNet、U-Net 和 UNet 3+ 在左心室 MRI 中的定性比较。Half-UNet 可以更完整地分割心内膜和心外膜边界。

进一步的研究

在Half-UNet子网络的左侧,由于双线性上采样和加法都是线性运算,因此几乎不产生参数和计算。在Half-UNet子网络的右侧部分,由于输入通道数量较少(只有64个),并且使用了Ghost模块,卷积的代价明显小于其他结构。

Half-UNet避免了上述三种网络的问题,大大降低了所需的参数和FLOPs。

总结

根据论文表述U-Net 在医学图像分割中的成功主要归功于其分而治之的解决方案,而不是特征融合。所以作者提出了Half-UNet,简化了特征融合部分。

根据我个人的理解,Half-UNet 除了大大减少了参数和FLOPs以外,应该会在分割界限不尖锐的情况表现的比unet更好。

论文地址:Half-UNet: A Simplified U-Net Architecture for Medical Image Segmentation

https://avoid.overfit.cn/post/b6a976d524644102bec313b1a28e0375


http://www.ppmy.cn/news/34828.html

相关文章

logstash+elasticsearch+Kibana(ELK)日志收集

文章目录一.安装elasticsearch二. 安装kibana三.配置logstash四.springboot整合logstash五.spring整合Elastic Search不要一股脑执行以下语句,请观察修改要修改的地方 注意给logstash,elasticsearch,kibana释放端口,云服务器提供商和系统的端口 一.安装elasticsearch # 安装e…

数据结构中的堆

一、树的重要知识点 节点的度:一个节点含有的子树的个数称为该节点的度(有几个孩子)叶节点或终端节点:度为0的节点称为叶节点;如上图:B、C、H、I...等节点为叶节点(0个孩子)非终端节点或分支节点…

Linux lvm管理讲解及命令

♥️作者:小刘在C站 ♥️个人主页:小刘主页 ♥️每天分享云计算网络运维课堂笔记,努力不一定有收获,但一定会有收获加油!一起努力,共赴美好人生! ♥️夕阳下,是最美的绽放,树高千尺,落叶归根人生不易,人间真情 前言 目录 一、lvm管理 1.Logical Volume Manager,逻…

基于springboot实现在线blog博客系统 源码+论文 展示

基于springboot实现在线blog博客系统 源码论文开发语言:Java 框架:springboot JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7 数据库工具:Navicat11 开发软件:eclipse/myeclipse/idea Maven包…

day15-面向对象总结

Code Mind 根据面对问题不同人层显出来的思维模式不同,可以将编程思维分为三种: 面向过程编程(穷人思想) - 遇到问题马上想到是解决这个问题的具体逻辑和步骤 函数式编程(小资思想) - 遇到问题马上想到有没有一个已经存在的函数可以解决这个问题&#…

面试问了解Linux内存管理吗?10张图给你安排的明明白白

linux内存管理,内存管理好像离我们很远,但这个知识点虽然冷门(估计很多人学完根本就没机会用上)但绝对是基础中的基础,这就像武侠中的内功修炼,学完之后看不到立竿见影的效果,但对你日后的开发工…

初识进程

文章目录一、进程的概念1. 进程是什么及进程的管理2. Linux 下的 pcb3. 系统调用接口 getpid 和 getppid4. 系统调用接口 fork一、进程的概念 1. 进程是什么及进程的管理 在 Linux下 ./binaryfile 运行一个程序或者在 Windows下双击运行一个程序时,程序就变成了一个…

八大排序算法之归并排序(递归实现+非递归实现)

目录 一.归并排序的基本思想 归并排序算法思想(排升序为例) 二.两个有序子序列(同一个数组中)的归并(排升序) 两个有序序列归并操作代码: 三.归并排序的递归实现 递归归并排序的实现:(后序遍历递归) 递归函数抽象分析: 四.非递归归并排序的实现 1.非递归归并排序算法…