TransUnet医学图像分割模型
TransUNet: Transformers Make Strong Encoders for Medical Image Segmentation
菜鸡申明
如果我有内容理解有误或不够清晰请随时告诉我,我随时会对文章进行调整。
1. 总体介绍
论文链接
TransUnet是首个基于Transformer的医学图像分割模型。整体结构主要为Transformer结构,并使用CNN模型提取特征。
2. 重点分析
2.1 将Transformer与CNN结合在一起
在文中指出,直接应用Transformer存在以下两个问题。
- Transformer会将所有的输入全部视为一维序列,而导致忽略空间之间的关系。
- Transformer专注于上下文之间的语义,而导致局部特征提取能力的欠缺。
故直接使用Transformer对图像进行处理时并不能取得理想的效果。所以我们在使用Transformer的基础上引入CNN来提取低级的视觉特征(或者理解为来着重提取局部的特征)。
在实际中,将CNN用作特征提取器来生成输入特征图,再使用Transformer进行处理。将CNN-Transformer的混合模型作为编码器。
2.2 Transformer层的结构
设输入的向量长宽分别为H、W,将特征分解为P*P大小的小块,故共有N=HW/P2个小块
再对于每一个小块进行线性投影(注意这里将特定位置嵌入和补丁嵌入结合在了一起),再经过多头自注意力模块(MSA)和多层感知机模块(MLP)。
具体的结构处理可以参考An Image is Worth 16x16 Words
2.3 级联式上采样结构
通过级联多个上采样模块实现级联式上采样,从而将分辨率从H/P×W/P提升至H×W,每个模块依次包含2×倍上采样算子、3×3卷积层和ReLU激活层。
可以学习下这种将分辨率放大的方式,避免直接上采样而丢失关键信息。
碎碎念
未来需要补充浏览下 An Image is Worth 16x16 Words 算法,最好是对应的比较一下 Swin Transformer
后续继续完善