基于CNN和局部信息的脑血管图像分割方法

2021-11-17 07:09李孟歆李美玲裴文龙
计算机仿真 2021年5期
关键词:脑血管灰度脑部

李孟歆,李美玲,裴文龙,徐 睿

(沈阳建筑大学信息与控制工程学院,辽宁 沈阳 110000)

1 引言

脑血管疾病,特别是缺血性中风,是发达国家死亡的主要原因之一。脑部CT血管造影图像(Computed Tomography Angiography,CTA)是描述超急性期受影响缺血组织的理想成像方式。如果能够通过功能急性成像协议和先进的基于机器学习的图像分析来准确预测梗死随时间的增长,那么治疗方案的预期益处可以更好地权衡潜在风险。因此,研究脑部CTA图像对脑血管疾病的判定具有重大意义。

最近几年,为解决CTA图像分割问题,研究人员做了大量的工作,提出了许多实用的分割算法,比如基于阈值的分割方法[1]、基于区域的分割方法[2]、基于边缘的分割方法[3]以及基于特定理论的分割方法,特定理论包括深度学习[4]、小波理论[5]和模糊集理论[6]等。但这些算法或多或少存在一些问题:如对于图像中的噪声,极有可能产生过度分割的现象、冗余度大等。针对这些问题,本文提出一种基于卷积神经网络和局部信息的多模态脑血管图像分割方法。该方法首先对原始CTA图像分别使用高斯滤波和拉普拉斯滤波去除噪声和做锐化处理,和原始图像分别以单个模态作为输入采用卷积神经网络对图像进行血管提取,得到三个模态的分割结果,然后采用加权平均法得到融合结果,最后采用基于局部信息的改进模糊C均值算法对融合结果进行分割得到最终结果。

2 卷积神经网络

本文中主要使用卷积神经网络(Convolutional Neural Network, CNN)来分割CTA图像中血管。目前,卷积神经网络已广泛用于图像处理中,Zhao[7]等人提出了一种基于递阶卷积神经网络的半监督脑血管分割方法。该方法将规则方法中精细的模型特征设计转换为规则方法,解决了医学图像到脑血管的映射问题;Lucas[8]等人利用多尺度CNN 和卷积自动编码器,预测新患者的病变组织概率。CNN可以获得输入和输出的高度非线性表示,而无需提前提取图像特征,此外,其不需要对原始图像做其它处理,避免了图像预处理部分,因而本文通过卷积神经网络对脑血管进行分割。

3 基于卷积神经网络和局部信息的多模态脑血管图像分割方法

3.1 脑部CTA图像前处理

对脑部CTA图像前处理有两部分,分别是高斯滤波和拉普拉斯锐化。原始CTA图像中含高斯噪声,故使用均值为0、方差为0.5的高斯算子对原始CTA图像进行卷积处理,消除背景的噪声点。原始CTA图像中含有细小血管结构,很难识别出来,故使用中心为-8的拉普拉斯算子将细小结构锐化出来,能够增强图像边缘像素点的灰度值以及血管点的空间特征。

3.2 CNN结构

卷积神经网络包括输入层、隐含层和输出层,其中隐含层包括卷积层、池化层和全连接层三类常见构筑。本文采用的CNN结构包含输入-卷积层-Max-pooling层-全连接层-分类层-输出层。和原始CNN最大的区别在于本文的CNN结构采用Max-pooling层取代了下采样层。Max-pooling层能减少模型参数数量,有助于降低模型过拟合问题。

表1列出了本文采用的CNN结构中每层的参数,包括特征映射向量和核大小。图1为本文采用的CNN结构示意图。

图1 本文采用的CNN结构

表1 卷积神经网络参数

本文采用的CNN模型学习过程如下:首先,输入层输入尺寸为35x35大小的图像,经过第一层卷积层卷积,卷积核大小为4x4,共8个卷积核,故通过卷积层处理后输出8x32x32的特征图;然后第一层的特征图送入池化层,即Max-pooling层,核大小为2x2,对上一层的8个特征映射向量分别做最大池化处理,得到8个16x16的特征图;按以上方式将前一层的输出特征图再送入卷积层和Max-pooling层处理,一直到达全连接层即第七层,经过核为1x1的全连接层处理后得到24x1x1的特征向量输出,最后经过分类层的logistics函数得到输出值,从而完成卷积神经网络的一次前向学习过程。

卷积神经网络结构的卷积层通过全连接的方式与上一层的特征输出相连,并且卷积层的输出通过该层对应的卷积核与上一层的所有特征卷积求和,加上偏置,再经过激活函数作用获得。

关于卷积层的激活函数,修正线性单元(Rectified Linear Unit,ReLU)近几年颇受关注,ReLU函数简练,收敛速度较快,提升了神经网络的稀疏表达能力。然而其明显的缺点,即训练时有可能出现神经元死亡,神经元再也不会对任何数据有激活现象,因此有人提出了一种自适应地从数据中学习参数的参数化修正线性单元

f(x)=max(αx,x)

(1)

α为自适应学习参数。当α在给定范围内取样时,ReLU就变成了随机纠正线性单元(Randomized Rectified Linear Unit,RReLU)。因此本文使用了RReLU函数作为卷积层的激活函数。

另外,在下采样层对上层的输出特征图进行池化操作之后,还要对其进行激活函数的作用,具体方式如下所示:

(2)

其中,down(x)——池化操作;

β——下采样参数,通常是一个常数;

b——下采样层的偏置参数。

在分类层中,本文使用logistics回归分类,logistics函数的具体形式为

(3)

式中θ表示参数矩阵。

3.3 网络初始化及训练

CNN网络的参数初始化包括卷积核和logistics函数的初始化,分别通过高斯分布N(0,0.4)和高斯分布N(0,0.2)进行初始化,并且所有的偏置均设置为零。

关于训练CNN网络,随机梯度下降算法是十分流行的优化方法,然而其学习过程速度过慢。因此本文通过动量方法加速学习,提高收敛速度,公式如下

v=m*v+g

(4)

p=p-lr*v

(5)

其中p,g,v和m分别表示参数,梯度,速度和动量。其必要参数是动量m,m=0.9。

3.4 数据融合

对于同一个样本数据,三种模态的卷积神经网络共有三个分割结果,不同模态的结果对于不同特征有所侧重,这样有利于利用多模态对不同类型特征的侧重融合之后分割结果更加准确。本文用加权平均法对分割结果进行处理,设置三个均值分别对应三个模态的结果,将单独的结果乘以均值再加和起来即为融合结果。

3.5 后处理

融合这三种模态后发现,实验结果显示仍然有一些误分割,例如颅骨和眼眶部位并没有较为理想的分离出去。因而依据眼眶和颅骨等相关部分的集合位置特点,可以使用模糊C均值(Fuzzy C-means,FCM)算法对分割结果进行后处理。但传统FCM算法在分割图像的时候,只会考虑单一的独立像素信息,而忽视图像相邻像素点具有相似性质的特点,必然会对图像分割的结果造成一定的影响。故为了更好的应对这种情况和克服FCM算法其它缺点,Stelios提出基于局部信息的改进FCM算法(Fuzzy Local Information C-Means Clustering,FLICM),FLICM算法可调用邻域信息,对图像进行分割。所以本文同样采用基于局部信息的改进FCM算法来对融合后的图像进行后处理。FLICM算法中目标函数定义为

(6)

其中Gij是模糊因子,表示NK内像素与聚类中心vi的欧式距离加权和,反映了FLICM算法中对邻域信息的利用。

4 实验结果及分析

4.1 实验结果

本文算法是在Matlab R2016a平台下实现的,实验数据来源于辽宁省人民医院图像中心提供的脑部CTA图像数据集。数据集中包含了200幅脑部CTA图像,将这些图像分为两部分,150张图像为训练数据,另一部分50张为测试数据。本文采用基于块的方法,所以将实验图片转化为图像patch,做为CNN的输入。

图2显示的是原始CTA图像与经过高斯滤波后图像的对比。从图2中可以看出高斯滤波模糊化了图像边缘,平滑处理了脑实质中细小血管结构的噪声点,然而大血管的灰度减小与周围区域的对比度变小,骨骼以及眼眶周围区域的灰度无差异变化。

图2 滤波结果图

图3显示的是原始CTA图像与经过拉普拉斯滤波后图像的对比。(a)(b)两张图对比可以看出,滤波后的图像的整体保留了原图像的多数特征,脑实质灰度提高,模糊化了细小血管的边缘,同时与周围背景的对比加强。然而脑实质中的噪声点也得到增强,主要大血管部分的灰度降低,与周围对比度下降,骨骼周围的灰度基本没有变化。

图3 滤波结果图

本文采用的CNN结构并行处理各个模态图像,因而能够观察到不同模态图像卷积后的分割结果。图4是脑部 CTA图像的不同模态实验结果,(a)为原始图像,(b)为CNN分割原始图像后的图像,(c)为CNN分割高斯滤波后的图像,(d)为CNN分割拉普拉斯滤波后的图像。经对比可知,脑部主要血管能够被分割识别出来,但在靠近眼眶周围三种模态的分割结果均产生了误分割,同时脑脊液处的误分割减少,其中第三种拉普拉斯模态的分割效果最优,较为理想地对细小血管进行了分割,第二种高斯模态的分割效果最差,在颅骨部分产生较多的误差。

图4 脑部血管分割对比图像

图5为脑部融合结果图像。图5对比图4可知,融合结果优于任何单个模态的结果,其对于减少误分割具有较好的效果。

图5 融合结果图像 图6 后处理的图像

因为FCM算法将输入数据视为一组矢量进行统一处理,因而要更多的考虑图像的灰度信息,本文中主要使用FLICM算法去除分割图像中眼眶处的误分割。图6为FLICM算法处理后的图像。对比图6可知,颅骨处和眼眶处有较为理想的分离出去。

4.2 实验分析

从上文的图像显示来看,虽大致看出本文算法对脑部 CTA图像分割的有效性,且能看出各个模态的优缺点、融合结果以及后处理的优势,但图像并不能清楚分析出本文方法的好坏,因此将对本文方法的分割结果定量分析。

通常以关注的类为正类,其它类为负类,分类器在测试数据集上的预测或正确或不正确,4种情况出现的总数分别记作:

TP——将正类预测为正类数;FN——将正类预测为负类数;FP——将负类预测为正类数; TN——将负类预测为负类数。

为了定量评价分割效果,本文利用Dice系数来描述分割结果。Dice系数代表着分割结果与标准分割的相似率,是实验对比中最直观关键的评价指标,计算如式所示

(7)

Dice系数的结果在[0,1]之间,Dice系数越高,则代表分割效果越佳。

4.2.1不同模态组合对比

在实验中,共有两个滤波器来处理原始图像:高斯滤波器和拉普拉斯滤波器。高斯滤波、拉普拉斯滤波将会提取不同类型的细节信息。然而这两种处理方式对应着两种分割效果,两种滤波处理模态加上对原始CTA图像分割的结果,共产生三种模态用于融合比较,因此会产生多种组合方式。在实验中会验证这三种模态的组合方式对分割结果的影响。

在实验中,随机选择5张测试数据,Dice系数如下表2所示。“A”代表了原始模态,“B”代表了高斯模态,“C”代表了拉普拉斯模态,“+”代表了方法融合。可从表2中看出:“A+B+C”模态组合Dice系数最小值最大,最大值也最大;其“B+C”模态组合的Dice系数总体要优于“A+C”模态组合;“A”、“B”、“C”单个模态Dice系数都要小于其它组合模态。总的来说,三种模态组合分割效果最佳,多模态组合表现优于单模态。

表2 不同模态组合的Dice系数

4.2.2 不同方法对比

由于实验对照需要,本文还对其它两种常见的CTA图像分割算法进行了实验:Otsu算法和分水岭算法。阈值法的基本思想是根据图像灰度特征来计算一个或者多个灰度阈值,并将图像中每个像素的灰度值与计算出的阈值作对比,最后将像素按照对比结果分到符合的类型中;分水岭的基本思想是把图像作为测地学上的拓扑地貌,图像中每个像素的灰度值表示该点的海拔高度,每个局部极小值及其影响区域称为集水盆,而集水盆的边界则形成分水岭,对微细边界具有良好的分割效果。

表3反映了各个方法对于50张图的分割结果,从表3中可以看出,本文所用的算法Dice系数平均值明显优于其它算法,即分割效果最佳,其次是原始的 CNN网络,再次是分水岭算法,最后是Otsu算法。

表3 不同分割结果的Dice系数

5 结论

在本文中,提出了一种基于卷积神经网络和局部信息的多模态脑血管图像分割算法,很大程度上改善了脑血管分割,能够帮助准确诊断脑血管疾病,减少了误分割现象,颅骨处和眼眶处有较为理想的分离出去,但本文还存在地方需要进一步改进,本文CNN结构的层数较少,且训练时间短,只能应用于场景较为简单的图像。因此,增加网络层数和训练时间也是未来的研究趋势。

猜你喜欢
脑血管灰度脑部
航空滤光片阵列多光谱图像条带灰度调整算法
全脑血管造影术后并发症的预见性护理
2020年上海市崇明区脑血管疾病监测结果分析
天津港智慧工作平台灰度发布系统和流程设计
Arduino小车巡线程序的灰度阈值优化方案
脑部三维核磁共振图像分析
专家告诉你进行脑血管造影检查都要注意些啥?
12400年前“木乃伊狗”
俄国现12400年前“木乃伊狗” 大脑保存完好
压抑食欲使人笨