APP下载

一种基于注意力机制的CT图像预处理方法

2022-03-03庄咸乐王朝立孙占全

小型微型计算机系统 2022年3期
关键词:蒙版原图滤波

庄咸乐,王朝立,孙占全

(上海理工大学 光电信息与计算机工程学院,上海 200093)

1 引 言

近年来,神经网络在医疗行业的应用越来越普遍,其优秀的效果和稳定性获得了医疗行业的广泛认可,而相关领域的同行们的贡献也加速了这些应用的落地,医疗CT图像的分割就是其中重要的应用领域之一[1,2].

相较于其它生活图像,CT图像具有一些特殊的性质,其分割主要目标在图中的大致位置与形状通常差别不大.对于大多医生来说,通常关注的位置也只会集中在这些区域,而不会关注其它区域的纹理信息.欲使计算机理解并利用上这种专家的注意力经验,前人通常使用的是图像窗口技术.窗口技术主要原理即将原12位图的CT值映射到8位可显示的范围中,并根据各组织的密度不同,选用不同的窗宽窗位调节,即可提高不同组织的对比度[3].但是这种预处理方式有一个明显的问题,即使这种方式可以提取出指定密度组织的信息,但是对于明显不在肝脏区域的组织也做不到完全去除;其次,固定的窗宽窗位对于不同人和不同来源的数据集也不能表现出明显的适用性[4].

受到注意力机制提高感兴趣区域权重的启发,本文提出一种针对CT图像等医疗图像的预处理方法,利用各数据集的标签数据,制作一个经验蒙版,即目标分割在原图中的概率分布图,再将这个蒙版和原图结合,去除大量无关信息即负样本后再送入网络中去,可以减少因类别不平衡导致的训练难度大,减少网络输入冗余,降低假阳性率.

2 相关工作

2.1 CT图像分割

图像分割在医疗影像学的诊断中十分重要.医学图像的自动分割能帮助医生快速甄别脏器以及确认病变区域的大小与位置.而CT(计算机断层扫描)技术,利用精准的传感器,能够采集到人体的三维体素信息.若要将CT图像中的病灶分割出来,这意味着需要对CT图像逐张进行分割,若全靠影像科医生眼看和手动制作的话,工作量必然很大,难以高质量完成.故当神经网络方法出现之后,就有大量的学者将神经网络应用在这个领域当中,以达到减少人工工作量和提高分割质量的目的.

首先,全卷积神经网络(FCNs)[5]在一系列广泛的图像分割问题上取得了突破性的成功.许多研究人员受此启发,开始利用全卷积的思路在各种类型的分割问题上分别展开研究.针对FCN分割效果较差的问题,U-net[6]结构被提出,其先进的encoder-decoder结构和跳跃连接结构在各个图像分割领域尤其是医学影像分割领域被证实了具有较大的优越性.随后,Segnet[7]的出现优化了FCN的网络大小和运算效率,同时还能保持较高的精确度.在此之后,各种基于先进网络结构的组合层出不穷,如着力于主干网络特征提取能力提升的基于VGG-16的FCN[8]、多通道FCN[9]等.PSPnet[10]紧接着被提出,它将金字塔结构用于多尺度特征融合、以提高深层网络分辨能力.针对某些三维元素,如体素或视频分割,将二维卷积替换为三维卷积的三维FCNs[11]、Vnet[12]、3D-Unet[13]等;深入思考U-net结构中的编码-解码结构并加以扩展创新的Unet++[14];综合了层间信息和层内信息并在比赛中取得优异成绩的3d-DenseUnet[15]等.这些网络结构也常用于CT图像的分割,如肝癌分割、脑CT影像、肺结节的检查等,而应用这些分割结构之前首先需要对CT图像进行一定程度的预处理.

2.2 CT图像预处理

由于CT原始图像是12位数据,转换到计算机显示的8位图时会有信息丢失,且原始图像中脏器组织、骨质、体液等密度信息相近.若直接将12位数据映射到8位会有大量信息丢失,故目前无论是医生观测还是图像分割前,均采用韩森费尔德发明的窗口法[3].如图1所示,将图像中每个CT值中小

图1 窗口法原理图Fig.1 Principle of windowing method

于窗位值最小值的数值全部等于最小值,大于最大值的等于最大值,再通过线性映射到8位数据,即0到255的计算机可显示范围内,从而达到提高所需信息的对比度,减少无关信息的目的.

尽管窗位窗宽法具有可以增强指定脏器组织的优点,但是对于其它无关区域的数据也无法做到完全隔离,仍然会有大量纹理数据存在.同时,对于不同人和不同设备,采集的CT数据也有许多差异,一个固定的窗宽窗位数值难以适用于这样复杂的条件、泛化能力差[4],故本文考虑在CT图像的预处理过程中使用注意力机制.

2.3 注意力机制

视觉的注意力机制是人类视觉所特有的一种大脑信号处理机制,由于信息处理能力有限,人类通过快速扫描全局图像,选择性地关注整体信息的一部分,获得需要重点关注的目标区域,而后对这一区域投入更多注意力资源,同时抑制其它区域的无关信息.这种机制有效地提高了人类识别和认知的效率,学者们也开始学习和利用这种机制[16-18].

2017年,Hu J[19]首次将注意力机制应用于卷积神经网络的特征通道之间,即在层间对各个通道信息的重要性进行总结评估,提高重要信息的占比;2018年,Woo S[20]将注意力机制扩展应用到二维空间,对多通道相同位置的重要性进行总结评估,提取出空间的注意力热图,最后乘回原通道中去.这两种做法均在不增加网络参数量的基础上有效地提高了网络性能.随后,注意力机制在图像分类和分割任务中得到了广泛的应用[21,22].

本文受到注意力机制通过提高图像重要信息权重达到提高网络性能的启发,设计出一种新的CT图像预处理方式,并通过两个数据集以及3个经典网络结构实验检验了这种预处理方法的有效性.

3 设计方法

本文谈论将注意力机制用于CT图像的预处理中,主要处理过程如下:将数据集的标签数据累加处理后,计算出分割目标在原图中的概率分布,并据此制成一个蒙版,再将这个蒙版和原图结合后再送入网络中去训练和测试,以达到避免无效信息的干扰,减少因类别不平衡的影响,减少网络冗余,降低假阳性率的目的.

3.1 蒙版的制作方式

蒙版的制作与使用方式如图2所示.通常,CT图像分割数据集的标签类别主要有脏器组织、病灶、其它, 将数据集的标签数据整理后,按不同的类别分别累加,可以得出其概率分布.

图2 蒙版制作与预处理过程Fig.2 Mask making and preprocessing

这里以肝部CT举例,需要解释的是,由于标签中通常肝脏并不包括病灶,因此这里的标签是将所有记作病灶和肝脏组织部分进行累加,随后可以得出类似如图3中第1张所示的肝脏组织概率分布图,图中区域亮度越高,表明该区域是肝组织的概率越大.

但是,如果参考的样本数据量不足,可能会导致得到的概率分布的高频细节过于丰富,体现在图中的效果就是数据过渡部分不够平滑,这样的概率图无法充分体现数据的共性,而本文期望得到一种适应性更广泛的分布.因此考虑使用滤波来使得概率分布曲面更加平滑,在这里滤波方案不做特别要求,可以使二维图像模糊即可.本文在此选择使用高斯滤波,同时使用高斯滤波的另一个原因是它可以拓展蒙版的一些边缘,增强对一些与训练集有较大出入的个体样本的包容性,二维高斯滤波核的公式见式(1).式中σ为标准差,(x,y)为像素点坐标.

(1)

滤波完成后需要将得到的分布图进行归一化操作,将数据压缩到0-1之间,以便后续操作,效果如图3第1张图所示.但是此时的蒙版还不能直接使用,需要提高低概率部分的通过率,减少因覆盖蒙版造成的纹理缺失和灰度降低,因此需要设计一个单调增的非线性函数, 能够在保持输入的0和1数值不变的同时能够提高整体的信号输出.基于以上要求,本文给出一种函数设计如式(2)所示,函数中的n表达了对低概率部分的置信程度,越大则对低概率部分的提高越多.如图3所示,显示了不同n的选择对覆盖原图的影响效果,本文后续实验中n取16.将分布图代入函数后,将分布为0-1的输入重新映射到0-1区间,得到最终蒙版.

g(x)=1-(1-x)n

(2)

同时,考虑到一种极端情况,当n趋近于无穷时,该函数可以取另一种形式见式(3),即对于所有概率不为0的位置,全部都视作1,这样生成的蒙版再乘上原图后相比式(2)能大大增加原图能提供的信息量,同时对无关信息的过滤能力也会降低.本文将采用式(2)生成的蒙版称为mask,采用式(3)生成的蒙版称为full mask,后续实验中将分别对比采用这两种方法的效果.

(3)

得到蒙版后,即可直接乘上各原图(即对应像素点灰度值直接相乘),最终得到处理后的CT图像.将经这样处理后的图像送入网络中训练,可以减少网络学习冗余信息的成本.但是这种方式极其依赖蒙版制作的质量,蒙版质量差的时候甚至会增加网络学习成本,降低性能.需要说明的是,作为一种预处理方法,使用蒙版和窗口法并不冲突,可以在使用窗口法的基础上再使用蒙版预处理.

图3 不同n值生成蒙版对比(图中从左到右分别取值1、4、8、16)Fig.3 Comparison of mask with different n(values 1,4,8,16 respectively from left to right)

以上考虑的都是二维蒙版,即将CT图像中各层的CT标签全部相加.这种标签形成的蒙版套用在初始的三维数据上,容易理解为在z轴方向上的柱状切除,而人体器官通常是不规则的形状,柱状切除无疑浪费了CT图像中丰富的3D信息,因此,本文考虑制作空间上的三维蒙版.

3.2 三维蒙版

在之前平面蒙版相加时,由于都是512×512的尺寸,因此可以直接叠加.但是在三维空间中,由于各个样本在采样切片的过程中,使用的切片间隔并不一致,导致每个样本的切片数也大相径庭,最少的只有数十片,最多的有300多片,这种维度上的差异使得样本标签不能直接相加.如图4所示,本文采用线性插值的做法,将所有样本插值至最多的样本切片数,保证了所有的样本标签的尺寸完全相同后,再进行累加,得到初始的三维蒙版.蒙版经过滤波、归一化、非线性化后即为三维蒙版.

图4 三维蒙版制作过程Fig.4 Production process of 3D mask

使用时,还需将插值后的蒙版重插值,缩小到原先的尺寸后再使用,这种三维蒙版对于无效信息的过滤效果显然比二维的蒙版强许多,本文将这种方式称为3D mask,具体效果将在后续实验中展示.

3.3 分割结果与蒙版结合补偿

在实际使用过程中,可能会有一些特别的样本会超出蒙版的范围,而由于蒙版与原图相乘之后,超出蒙版范围的信息已经被完全抛弃,这样会大大影响分割的效果.为了补偿这种情况,本文考虑将初次分割结果与蒙版对比,找出这些可能存在遗漏的区域,因此设计了如式(4)所示的蒙版与初次预测的结合算法.

(4)

公式(4)中Ci,j表示新的蒙版中对应坐标为(i,j)的数值,Ai,j表示原蒙版在坐标(i,j)处的灰度值,Bi,j表示初次分割的结果在坐标(i,j)处的灰度值,s为平滑系数,用于保证分母不为0,这里数值取1.数值K表示结合的比例,需要大于等于1,图5所示即为K等于1时结合效果,当K值越大,在原蒙版外的搜索范围就越大.

该算法的核心思想是:如果在每次检查分割结果时发现有部分脏器组织紧挨着我们使用的蒙版,则估计在蒙版和预测的脏器组织交界处之外有可能有被覆盖掉的部分.因此该公式会计算每一个位置到达最近的原蒙版边缘和到达最近的初次分割结果的距离比例,当有分割结果在原蒙版边缘时,蒙版外的某一部分像素点计算该比例即为1,表明该位置到达最近的本文便将这些位置保留下来,如图5示的两张图在左上方的区域,这些位置的点计算到达最近的灰色分割区域和最近的白色蒙版区域距离相同,则认为该区域有组织被覆盖的可能,因此新蒙版将该区域放开以补偿信息损失.

图5 蒙版与初次分割(左图)结合后新蒙版(右图)效果(左图灰色部分表示分割结果,中央圆形部分表示蒙版)Fig.5 Effect of new mask(right)after combination of mask and primary segmentation(left)(gray part of left picture represents segmentation result,and central circular part represents mask)

实验时,首次分割时使用蒙版对图像进行预处理,将预处理后的图片经过网络预测输出后得到初次分割结果,使用该算法对蒙版和初次分割结果结合后生成新蒙版,若新蒙版拓宽了蒙版,即表明本文需要将得到的新蒙版乘上原图后再重新分割,重复以上过程直至新生成的蒙版在蒙版内部则视为算法收敛.

一种新提出的图像预处理方法的好坏最终取决于分割的结果,然而分割的效果还取决于数据库和模型.但要实验所有的数据库和模型是困难的,因此本文针对目前典型的数据库和主要的几类深度神经网络来测试提出方法的有效性.

4 实 验

本文选择了近年来常用的3个深度神经网络FCN[5]、U-net[6]和Segnet[7],分别在两个CT分割数据集LiTS和3Dircadb上,对本文提出的预处理方法进行了测试和结果对比分析.

LiTS数据集包含131个和70个三维腹部CT扫描图像,分别用于训练和测试,3Dircabd中有20个患者的腹部静脉期CT扫描图像.LiTS数据集是从6个不同的临床站点获得的,由于采集的机器和协议不同,故平面分辨率和切片间距有很大的差异,分辨率范围从0.55mm到1.0mm,切片间距从0.45mm到6.0mm不等.需要说明的是,为了保证公平性,本文中对ISBI数据集的训练和测试数据集都将从131套图像中取得,具体将随机抽取其中4/5用于训练,其余1/5用于测试.由于3Dircabd数据集的数据量较少,本文在制作蒙版的过程中也加入了ISBI 2017 LiTS Challenge的标签.

实验网络选用上述3个经典网络,各网络中层间也会增加一个BN层.网络损失函数选用dice loss,选择这种损失函数可以一定程度上减少训练样本类间不平衡的问题,与该损失函数类似的还有focal loss以及其它变体[23]等.训练结束后,最终将通过式(5)的体积重叠误差(VOE)、式(6)的相对体积差(RVD)、式(7)的平均对称表面距离(ASD)、式(8)的均方根对称表面距离(RMSD),式(9)中的假阳性率(FPR)这5个评价指标来评估网络分割效果.

(5)

(6)

(7)

(8)

(9)

实验中将统一使用全部训练数据集的标签来制作蒙版,通过将各类别标签累加并经过高斯滤波后代入公式(2)或公式(3)中获得.由于实验设备性能限制,无法在有限时间内完成三维高斯滤波,因此实验中将对每一层单独进行二维高斯滤波,一定程度上取代三维滤波.二维高斯滤波参数为:滤波核尺寸25,方差取4.同时,由于蒙版制作需要非常依赖大量的样本数支持,本次实验中,制作二维蒙版使用了近15000张标签.但是三维蒙版却只有131套标签,数量相对来说还是比较少,这是由于3D的样本获取难度很大.因此实验将会把验证集的标签一同加入到蒙版的制作当中,以提高蒙版质量.为了减少样本过少导致的蒙版边缘产生的断层,三维蒙版的非线性化函数将选用式(3).数据增强方面,也对数据进行了随机的翻转、旋转等,以增强模型的稳定性.

实验硬件环境配置如下,GPU方面准备了4块NVIDIA RTX2080,16G内存;软件环境为ubuntu16.04,cuda9.0,python3.6,tensorflow1.13.0,keras2.2.4.实验中超参数保持一致:batch-size设置为12,训练开始时以0.03的学习率迭代更新,训练50个epoch,最终实验评估结果和分割效果如表1和图6所示.

表1 ISBI 2017 LiTS Challenge / 3Dircadb肝脏分割结果评估Table 1 ISBI 2017 LiTS Challenge / 3Dircadb liver segmentation results

图6 分割效果对比Fig.6 Comparison of segmentation effect

从分割结果的评价指标上可以看出,使用普通蒙版的结果略逊于初始结果,而使用了full mask的结果也比较一般,使用了3D蒙版的肝脏分割结果相较于没有使用该方法的结果从各方面都有一定的提高.

从分割效果图6中可以看出,使用了蒙版之后,可以减少大量的其它组织信息,尤其是脊柱部分,几乎已经被全部挖去.然而普通的蒙版方案在边缘部分存在明暗过渡,而非full mask和3D mask的直接截断式,因此对原图的亮度信息产生了较大干扰,使得网络学习难度不减反增,反应在实际分割效果中的结果就是在蒙版边缘位置会有大量误诊.而相对的,使用full mask和3D mask时,对原图的亮度信息完全没有改变,但是纹理会在蒙版边缘截断,也增加了一定的学习成本.本文认为,如果能够获取更多的样本标签,就可以制作更加平滑的3D蒙版,使得蒙版边缘更平滑,或许可以再进一步提高对于无效信息的过滤能力.

5 结 论

基于注意力机制的启发,本文提出了一种新的CT图像预处理方式.首先根据专家经验制作标签,计算出组织的空间概率分布,利用概率分布制作出CT蒙版.其次,将蒙版覆盖到原图上后即可除去大量低概率区域的图像信息,降低网络学习难度.对于蒙版的制作,文中给出了3种做法.实验结果中显示三维蒙版实验效果较好,对于多项指标都有较好的适应性.针对蒙版的特点,本文还提出了一种蒙版和初次分割结果相结合的蒙版再制做过程,用于补偿使用蒙版导致的信息损失.最后本文使用经典网络结构FCN、Unet和SegNet在LiTS和3Dircadb数据集上做了对比实验,验证了本文提出的预处理方法的有效性.

但是本文设计的方法局限性也较大,通常只适用于主要分割目标的大小和形状在画面中基本不变的样本,因此该方法主要用于一些医学图像和监控视频等领域,在其他图像中一般不太适用.另外制作蒙版也需要足够数量的标签,对于某些样本过少的分割任务也是难以应用的.

猜你喜欢

蒙版原图滤波
基于HP滤波与ARIMA-GARCH模型的柱塞泵泄漏量预测
基于改进自适应中值滤波的图像降噪方法*
浅析PS图形图像处理软件中蒙版技术运用
详解图层蒙版
完形:打乱的拼图
找一找
基于非下采样剪切波变换与引导滤波结合的遥感图像增强
跨越平凡
万能的曲线
巧拼火柴棒