[TMI 2020] Co-Learning Feature Fusion Maps From PET-CT Images of Lung Cancer

[TMI 2020] Co-Learning Feature Fusion Maps From PET-CT Images of Lung Cancer

目录

摘要

论文主要做pet-ct联合分析。现有pet-ct图像分析始讲两种模态分开分析或者基于特定的任务融合两个模态的信息。这些方法忽略了跨模态的空间变化视觉特征(意思是没有充分考虑模态间的关系,且不同模态对于不同目标具有不同的优先级–某一模态能更好的捕获某一目标)
本文目标:基于新的监督CNN改善多模态,即pet-ct中互补信息的融合;这个CNN可以学习互补信息融合方式一进行多模态医学图像分析;
过程:1)对每个模态进行特征编码;2)利用编码特征得到空间变换融合map,这个map量化了各模态不同空间位置的重要性;3)融合map和编码特征map相乘,获得不同位置的多模态互补特征表示;4)利用多模态互补特征进行图像分析。
针对的任务:检测和分割多区域(肺,纵隔,肿瘤);实验对象:肺癌的pet-ct图像数据集;baseline:有三个;结果:检测和分割精度都高于baseline

引言

PET: 18F-氟去氧葡萄糖(18F-FDG)正电子发射型断层扫描
[TMI 2020] Co-Learning Feature Fusion Maps From PET-CT Images of Lung Cancer
CT:计算机断层扫描

PET-CT:结合可PET检测功能不正常区域的敏感性和CT良好的解剖结构定位功能。

在PET中,病变对FDG的吸收强于正常结构,

方法

Materials

Architecture

结构如Fig.1 (图中数字表示特征的channel数)
[TMI 2020] Co-Learning Feature Fusion Maps From PET-CT Images of Lung Cancer
主要由4个部分组成:
两个encoder:分别对PET和CT进行编码,得到与各自模态最相关的特征;encoder的输入是2D的slice image。
一个co-learning和融合部分:获得spatially varying fusion map,然后用这个map对每个模态的不同位置encoder特征进行加权。(包含多尺度)
一个重构部分:fusion的多尺度特征(上一输出)卷积,上采样,多尺度特征融合,最后进行预测。

Modality-Specific Encoders

对每个模态对应有一个encoder,获得与输入图像模态相关的特征。
encoder结构:包含4个卷积块,每个卷积块包含两个卷积层(卷积特征)和一个最大池化层(对卷积特征下采样);在每次卷积后都进行以0为均值,unit variance的batch normalization;BN后进行leaky relu激活。

Multi-Modality Feature Co-Learning and Fusion

该模块包括两个部分:

  1. co-learning:
    输入:两个模态的编码特征 F ^ C T , F ^ P E T \hat{F}_{CT},\hat{F}_{PET} F^CT​,F^PET​,大小均为 h × w × c h\times w \times c h×w×c;
    将两个特征进行堆叠得到 X ^ m u l t i \hat X_{multi} X^multi​, 为一个 h × w × m × c h\times w \times m \times c h×w×m×c, m = 2 m=2 m=2为模态数;对 X ^ m u l t i \hat X_{multi} X^multi​进行核为 k × k × m k\times k \times m k×k×m的三维卷积;
    <看论文的意思应该是在特征堆叠的时候一个CT特征的channel,一个PET特征的channel,直到两个模态所有channel特征这样穿插堆叠完毕,得到X,然后直接进行三维卷积;>
    3D卷积后并不进行BN,但是进行leaky relu
    输出:fusion map
    [TMI 2020] Co-Learning Feature Fusion Maps From PET-CT Images of Lung Cancer
  2. fusion operation:
    F f u s i o n F_{fusion} Ffusion​和 F ^ C T \hat{F}_{CT} F^CT​ / F ^ P E T \hat{F}_{PET} F^PET​进行像素级相乘,最终得到 F c o − l e a r n e d F_{co-learned} Fco−learned​;
    整个框架会得到四个尺度的 F c o − l e a r n e d F_{co-learned} Fco−learned​,参见Fig.1。
    [TMI 2020] Co-Learning Feature Fusion Maps From PET-CT Images of Lung Cancer

Reconstruction

将* F c o − l e a r n e d F_{co-learned} Fco−learned​进行一次上采样和两次卷积,然后与比其低一级的 F c o − l e a r n e d F_{co-learned} Fco−learned​stack,再次进行上述操作,重复至所有尺度 F c o − l e a r n e d F_{co-learned} Fco−learned​均完成以上操作。
上采样==最近邻插值,保证输出与输入大小一致,类似反卷积,但是不包含任何stride 操作。
也使用了BN和leaky relu。
经过最后一个重构模块,得到的输出与输入大小相同,第三维有64个channel,然后用1*1的卷积减少channel数至R+1,其中R为ROIs的数目(可理解为目标的数目),对于每个像素都可以得到向量 o o o, o o o的每一维表示其属于/不属于某一类,不属于某一类的便认为是相对于这一类的背景。将这些数值经过softmax转换成属于某一类的概率。 Fig.4给出了三个类别(R=3)的概率图,三个类别分别为lung fields,mediastinum和tumors,剩下的是“other class”,即除了这几类之外的所有。
[TMI 2020] Co-Learning Feature Fusion Maps From PET-CT Images of Lung Cancer

Network Training

优化:SGD
数据增强:对训练样本进行随机裁剪,flipping(因为肺有左右对称结构)
1)loss function
L ( o ) = 1 ∣ o ∣ ∑ o S ( o ) E ( o ) + λ ∑ j ( w j ) 2 L(o)={{1\over |o|} \displaystyle\sum_{o}S(o)E(o)+\lambda \displaystyle\sum_{j} (w_j)^2} L(o)=∣o∣1​o∑​S(o)E(o)+λj∑​(wj​)2
其中,
S ( o ) = 1 − n T ( o ) ∑ r R + 1 n r S(o)=1-{{n_{T(o)}}\over {\textstyle\sum_{r}^{R+1}n_r}} S(o)=1−∑rR+1​nr​nT(o)​​,这一项相当于样本不平衡权重;分子—当前类前景像素数;分母—出当前类的其他类及背景像素数;
E ( o ) = − ∑ i R + 1 y i ( o ) l o g ( p i ( o ) ) E(o)=-\displaystyle\sum_{i}^{R+1}y_i(o)log(p_i(o)) E(o)=−i∑R+1​yi​(o)log(pi​(o)),这一项为交叉熵;
L ( o ) L(o) L(o)的最后一项是正则项,防止过拟合, λ \lambda λ是正则系数, w j w_j wj​是 W W W中的第j个weight,此处采用L2正则,可以对 W W W中较小的权重进行惩罚。(这里j是指所有的网络权重吗???)

2)参数选择
两折交叉验证(section II-A)
[TMI 2020] Co-Learning Feature Fusion Maps From PET-CT Images of Lung Cancer

Experimental Design

环境:tensorflow 1.4 + ubuntu 14.04 + CUDA 8.0 + CuDNN +11GB nvidia gtx 1080ti
1)fusion baseline 的比较
A. multi-branch(MB)CNN:每个模态单独处理,然后combine 各个模态处理结果,与本文模型去掉co-learning 部分以后的结构相似;
B. multi-channel(MC)input CNN:将各模态作为输入的一个channel,结构类似于本文结构的单个encoder部分,没有co-learning和将CT,PET分别作为各自encoder输入部分;
C. a fused (FS)input CNN:网络输入是基于pixel-intermixing融合后的PET-CT,网络结构类似于本文单一的encoder,无co-learning部分。

通过检测ROIs(肺、纵隔、肿瘤)以及其他图像组成部分来验证本文模型的有效性。
对应的评价指标:precision, sensitivity(recall), specificity, accuracy.
分割评价指标:Dice

2)与lung tumor分割baseline的比较
A. a tumor co-segmentation method : 该baseline是对PET和CT分别进行分割;本文在比较时也将联合分割的结果分离开来进行比较?
B. a variational tumor segmentation method:基于UNet进行粗分割,得到肿瘤在CT中的ROIs,然后在PET里用fuzzy variational model进行优化。

该实验仅进行肿瘤分割,用Dice作为指标进行结果评估。

以上两个方法的输入都是以肿瘤区域为中心的图像块,为了实验比较的公平性,本文进行了两项实验,一是输入为图像块,二是输入为整个PET-CT切片(大小为256*256)。

3)评估融合的有效性
均匀融合率:30%PET/70%CT–主要包含解剖结构信息;50%PET/50%CT–equal information;70%PET/30CT–主要包含功能信息

结果

[TMI 2020] Co-Learning Feature Fusion Maps From PET-CT Images of Lung Cancer
[TMI 2020] Co-Learning Feature Fusion Maps From PET-CT Images of Lung Cancer
MC-肿瘤区域过小
MB&FS-肿瘤区域过大
MB对于胸壁概率高,将其分为纵隔

[TMI 2020] Co-Learning Feature Fusion Maps From PET-CT Images of Lung Cancer
[TMI 2020] Co-Learning Feature Fusion Maps From PET-CT Images of Lung Cancer本文方法倾向于过分割
baseline方法倾向于欠分割

[TMI 2020] Co-Learning Feature Fusion Maps From PET-CT Images of Lung Cancer

对每个channel特征图进行可视化时,做了归一化,亮度越高,说明在融合时该像素越重要
1.该图显示了每个区域对不同信息的优先级的不同。(红框–着重肺;绿框–着重肿瘤)
2.该图还表明,融合权重是从两种模态的特征得出的。(红框–肺和肿瘤的权重都有;蓝框–肺的权重远大于肿瘤的权重)

[TMI 2020] Co-Learning Feature Fusion Maps From PET-CT Images of Lung Cancer
本文CNN对于不同样本图像均可获得较为一致的结果;均匀融合做不到这一点,对于第一行所示图像,50%PET融合效果最好;但是对于第二行所示图像,30%PET更有利于肿瘤的检测和分割;而本文以学习到的weight进行融合,结果对于样本的敏感性降低。

讨论

spatially varying fusion map 可以更准确的融合PET-CT中不同位置的功能特征和解剖结构特征。
1.comparison with baseline fusion cnns
融合方式(鲁棒)+多尺度(避免空间信息丢失)

2.tumor segmentation performance
baseline方法,用整个slice和用patch作为输入的dice相差较大,说明baseline不能在图像复杂(包含更多解剖结构信息和功能信息)的情况下准确分割肿瘤;本文在slice上的结果和baseline在patch上的结果相当,说明本文网络不依赖于裁剪的数据进行学习。

3.fusion map analysis
其他baseline在进行融合时,没有考虑不同模态空间位置上的相关性;

4.direction for further research
1>其他CNN如果也用本文类似的特征融合方式,效果会提高;
2>改进encoder的结构;
3>co-learning模块也可以使用更多堆叠卷积实现,这样co-learning的特征会得到更优的细节信息;
4>对于重构部分,用全连接层/全局平均池化实现分类;
5>本文方法可以改成多分辨率融合方法,融合不同尺度的信息!(这一点自己没想到!co-learning作用于两个不同尺度的encoder特征)
6>本文需要手动选择胸部范围,保证研究的区域的正确性;自动方法或许会学则到范围外的切片,导致性能下降;因此需要研究如何自动正确选择正确的胸部范围切片;
7>本文研究需要保证不同模态的图像有相同的坐标,但是PET和CT的分辨率不同,需要将CT切片下采样至PET切片分辨率大小,会丢失组织边界细节信息丢失;上采样PET切片至CT切片分辨率大小,由于插值,会引入更多的噪声,因此,需要考虑如何处理不同分辨率的多模态输入;
8>增加数据集数量会提升性能;
9>使用的是灰度值,使用原始值可能会更好;PET输出其实是CLUTs,会提供更多的彩色信息;
10>本文只针对某一特定任务,如肺肿瘤分割进行co-learning,或许可以扩展到跨任务的co-learning。

结论

1>co-learning的多模态特征融合
2>多尺度特征融合

上一篇:SHELL 脚本在指定目录下遍历指定文件的列表


下一篇:C语言:对传入sp的字符进行统计,三组两个相连字母“ea”"ou""iu"出现的次数,并将统计结果存入ct所指的数组中。-在数组中找出最小值,并与第一个元素交换