该文章是MICCAI 2017年关于肺节点切割的文章,作者是Xinyang Feng , Jie Yang , Andrew F. Laine , Elsa D. Angelini,来自于哥伦比亚大学。本文的核心思想是将CNN与GAP(global average pooling)结合进行弱监督的分割。
本文的方法是将分割分为两个阶段,如下图所示。
第一个阶段,通过CNN网络将肺部切片分为有和无肺结节两类。而本文的CNN网络不同于传统的CNN网络,他是由卷积层+GAP+全连接组成。这里介绍下GAP(global average pooling),这个思想是14年ICLR的一篇非常厉害的paper:《Network In Network》所提出,基本思想是将CNN中的全连接层转化成整张图的一个均值池化,从而每个特征图形成一个特征点输出,使得参数数量急剧减少,原理如下图所示。
除了将肺部切片进行分类外,第一阶段还会利用激活图的加权平均值与FC层学习到的权重,生成显示潜在结节定位的结节活化图(NAM)。第二个阶段,利用NAM对CT进行粗分割、细分割,最终得出肺结节切割结果。除此之外,文章还采用了FCN网络中的跳跃结构,将CNN中的浅层通过跳跃架构和Conv + GAP结构连接,具体过程如下:
1)NAM
首先,生成结节活化图。我们将最后卷积层(x,y)空间位置处k单元的活化程度表示成
通过GAP之后每个单元k的活化度为
那么对于每个结节经过FC层之后就会有一个得分,用以判别是否在NAM里
上式中权重是在最后的FC层得到用以判定单元k对于分类任务的重要性,而由于空间位置信息保存在
所以结节活化图由下式表示
则(1)可以化成
将NAM上采样到输入图像的大小,我们就可以识别与结节最相关的判别图像区域。
而多GAP CNN模型就是结合浅层较高的分辨率从而产生NAM。
2)分割阶段
粗分割:在NAM中最显着的斑点定义的空间范围内筛选结节候选者。然后使用基于迭代条件模式(ICM)的多阶段分割方法对其进行粗分割。
细分割:NAM表示潜在但不是确切的结节位置,为了获取精确位置,本文从粗分割中交替遮蔽结节位置生成残差NAM(R-NAM)用下式生成细分割结果:
单GAP CNN模型有更好的判别能力,而多GAP CNN模型有更精确的定位能力,所以对于混合模型,我们先用单GAP CNN模型生成一个baseline区域,如果多GAP CNN模型能够在baseline里分割一个更精确的位置,就将这个新位置设置为新的baseline区域,反之不变,下图为单和多GAP CNN模型粗分割结果图。
实验部分
本文采用LIDC-IDRI数据库的1,010次胸部CT扫描作为数据集,分割结果如下表:
可以看出2-GAP中可以达到此模型的最佳效果,跟U-net相比性能差距不大,但是此模型的方法所需要的标记样本相比完全监督的CNN相比降低了100倍,所以针对标注样本少的数据集可以采用此方法。
网友评论