一种基于UDT的蛛网膜下腔出血病灶分割方法

文档序号:31707744发布日期:2022-10-01 12:37阅读:366来源:国知局
一种基于UDT的蛛网膜下腔出血病灶分割方法
一种基于udt的蛛网膜下腔出血病灶分割方法
技术领域
1.本发明属于医学图像处理技术领域,具体涉及一种基于udt应用于蛛网膜下腔出血病灶分割算法,可迁移应用于其他各类医学影像中的病灶分割任务。


背景技术:

2.蛛网膜下腔出血(subarachnoid hemorrhage,sah)是指脑底部或脑表面的病变血管破裂,血液直接流入蛛网膜下腔而引起的一种临床综合症,属于颅内出血(intracranial hemorrhage,ich)中的一类,其他四种出血类型分别为:硬膜下出血、硬膜外出血、脑室出血与脑实质内出血。该类病症发生后,如果不采取及时的诊断和治疗,极有可能导致患者瘫痪甚至死亡。临床上,放射科医生通常根据非对比颅脑ct扫描分析患者的病情,做出相应的诊断与治疗方案。由于该类病患人数众多,医生通常需要连续阅览大量相关ct影像。在阅片后期,过度疲劳可能会导致医生对患者的病情做出错误判断,出现漏诊、误诊等情况,从而对患者的生命安全造成危害。故此,基于医学ct影像分割的计算机辅助诊断系统在该领域有着一定的应用前景与临床价值。
3.随着深度学习技术的不断发展,基于全卷积神经网络(fully convolutional network,fcn)、u型网络(u-net)的衍生模型被成功应用于颅内出血的病灶分割任务中。蛛网膜下腔出血病灶有着不同于其他四类出血病灶的数据特征:一般情况下,其他四类病灶的分布位置固定、形态稳定、数量少。而蛛网膜下腔出血病灶大多呈弥散型、位置多样、形态差异大、数量多。蛛网膜下腔出血病灶的精确分割是一项具有挑战性的任务。目前仅有少量文献专门研究蛛网膜下腔出血ct影像的病灶分割,大部分文献集中在颅内出血ct影像的病灶分割任务上。
4.现有方法可大致分为两大类:
5.一是基于阈值、区域或边界的传统分割算法。这类算法仅需依赖少量的数据集甚至不需要训练数据,即可应用于颅内出血的病灶分割任务中。bhanu等人在文献“prakash,knb,et al."segmentation and quantification of intra-ventricular/cerebral hemorrhage in ct scans by modified distance regularized level set evolution technique."international journal of computer assisted radiology and surgery 7.5(2012):785-798.”中提出一种基于距离正则化水平集演化模型的改进算法用于颅内出血的病灶分割任务,该算法会过滤掉像素数目较小的区域,难以有效对蛛网膜下腔出血的小病灶进行分割。anjali等人在文献“gautam,a.;raman,b."automatic segmentation of intracerebral hemorrhage from brain ct images."in machine intelligence and signal analysis;springer,2019;pp.753

764.”中对模糊c均值算法进行改进,用来去除颅骨,实现脑实质区域提取,然后利用小波阈值法分割颅内出血的病灶。由于蛛网膜下腔出血的病灶大多呈弥散型,其中有相当部分像素与周围脑介质像素的差异较小,导致此算法对该类病灶的分割精度不高。
6.二是基于fcn、u-net的深度学习分割算法。fcn是最早提出用于对自然图像进行语
义分割的深度学习模型。u-net则是在fcn的基础上,针对医学影像语义较为简单、结构较为固定的数据特点而被设计出来的,能够很好地利用提取到的高级语义信息和低级特征。cho等人在文献“cho,j.,et al."improving sensitivity on identification and delineation of intracranial hemorrhage lesion using cascaded deep learning models."journal of digital imaging(2019).”中设计级联fcn模型分割来自不同窗宽、窗位的颅内出血ct影像中所包含的病灶;kuang等人在文献“kuang,h.,b.k.menon,and w.qiu."segmenting hemorrhagic and ischemic infarct simultaneously from follow-up non-contrast ct images in patients with acute ischemic stroke."ieee access 7(2019).”中对u-net模型进行了修改,引入人工规定的数据特征,并将多个模型集成到一个综合框架中。然而,这些衍生模型的基本构件仍旧是卷积核,其感受野为固定方形,难以精确提取蛛网膜下腔出血病灶的数据特征,从而导致上述模型在蛛网膜下腔出血这类弥散型病灶的分割任务上往往表现不佳。


技术实现要素:

7.本发明公开了基于udt的蛛网膜下腔出血病灶分割方法,主要向res-u-net模型的编码器中引入单尺度、多尺度可变型注意力模块、以及基于交叉可变型注意力的跳跃连接模块,以缓解现有方法难以对sah病灶数据特征进行精确表达,而导致分割精度低的问题。具体地,本发明目的在于改善以下两方面:
8.1.基于阈值、区域或边界的传统分割算法所依赖的病灶区域判定规则均是针对ich病灶的数据特征而设定的,难以对sah病灶呈弥散性的数据特性进行精确建模。
9.2.基于fcn、u-net深度学习分割算法模型的基本构件为传统卷积。然而,由于卷积核的感受野是固定方形,难以有效对sah出血病灶数据特征进行精确表达。
10.本发明设计了一种基于udt的蛛网膜下腔出血病灶分割算法,向res-u-net模型的编码器引入单尺度、多尺度可变型注意力模块,与基于交叉可变型注意力的跳跃连接模块,以缓解现有方法难以对sah病灶数据特征进行精确表达,而导致分割精度低的问题。其技术方案具体如下:
11.1.针对蛛网膜下腔出血病灶大多分布弥散、形状多样的数据特点,在res-u-net编码器的第二层后嵌一个单尺度可变型注意力模块(single scale deformable attention,ssda)。该模块能根据输入数据内容,自适应确定每个元素的注意力域,在减小计算冗余度的同时,实现对sah病灶数据特征的精确表达。
12.2.针对蛛网膜下腔出血病灶在一张ct切片图像中区域面积差异大,即尺寸不一的特点,在ssda模块的基础上,向res-u-net编码器的第三、四、五层各后嵌一个多尺度可变型注意力模块(multiple scales deformable attention,msda)。该模块可融合各编码层输出的不同尺度特征,使模型提取到的数据特征更具鲁棒性与表征性。
13.3.设计基于交叉可变型注意力的跳跃连接模块(cross deformable attention

skip connection,cda-sc)。该模块可通过计算交叉可变型注意力,来利用编码特征信息恢复解码特征在上采样操作时丢失的细粒度信息,从而使模型对sah病灶的微小病灶、病灶边缘等部分进行精确分割。
14.4.将上述设计的ssda、msda、以及cda-sc模块引入到res-u-net模型中,构成udt模
型。该模型相对于其他分割方法能更精细提取sah病灶的数据特征,从而提高模型对该类病灶的分割精度。
15.总体来说,针对蛛网膜下腔出血病灶的数据特点,本发明提出了一种基于udt的蛛网膜下腔出血病灶分割方法。该方法能够精确提取蛛网膜下腔出血病灶的数据特征,从而提高模型对该类病灶的分割精度。具体实现过程如下:
16.步骤1,采集及转换蛛网膜下腔出血病灶的ct影像数据,构建训练集与测试集;
17.首先将每张ct切片图像转化为png格式,使用标注工具对蛛网膜下腔出血病灶区域进行人工标注;随后,将图像与相应的标记数据随机划分为训练集与测试集,分别用于后续模型内部参数的更新与模型分割性能的量化评估;
18.步骤2,构建单尺度可变型注意力模块ssda,所述ssda模块根据输入数据,自适应确定特征中每个元素所对应的注意力域,然后对其注意力域所有采样点对应的元素分配权重;将输入数据线性映射后,在其映射特征每个元素对应的多个采样元素上做加权和操作,完成单尺度可变型注意力的计算;
19.步骤3,构建多尺度可变型注意力模块msda,所述msda模块是对单尺度可变型注意力模块的扩展,接收多个不同尺寸的特征,计算采样点在多尺度特征的相对位置的同时,估测采样点在多尺度特征上的参考位置,以确定查询元素在各尺寸特征中对应的注意力域;将多尺度特征分别线性映射后,对每个查询元素在这些映射特征中分别对应的多个采样元素上做加权和操作,完成多尺度可变型注意力的计算;
20.步骤4,构建基于交叉可变型注意力的跳跃连接结构cda-sc,所述cda-sc是对跳跃连接通过编码特征中信息恢复解码特征细粒度特征的能力进行强化;具体的:首先,通过对编码特征分别做多次独立的1
×
1卷积操作,确定解码特征元素所对应的注意力域,分配注意力域所有采样点对应特征元素的权重;将解码特征线性映射后,在其映射特征每个元素对应的多个采样元素上做加权和操作,完成交叉可变型注意力的计算并输出;然后将输出特征与编码特征在通道方向上进行拼接,实现基于交叉可变型注意力的跳跃连接结构的构建。
21.步骤5,构建udt模型,输出病灶概率图
22.在res-u-net基础上,将上述构建的三种模块引入到其部分结构中,详细情况如下:在第二编码层的残差双卷积模块后面设置了一个ssda模块;分别在第三、四与五层的残差双卷积模块后面设置了一个msda模块;除第一编码层、解码层间的跳跃连接以外,其他层间的跳跃连接结构均设置为cda-sc;
23.步骤6,在蛛网膜下腔出血训练集上对udt模型进行训练,直至模型收敛;
24.步骤7,在蛛网膜下腔出血测试集上对udt模型进行测试,将测试集中的图片分别输入到训练后的udt模型中,得到病灶概率图,并转换为病灶分割掩模图;然后,将这些掩模图与测试集上的标签数据进行比对,计算出各评定指标后,求其平均值作为该模型对蛛网膜下腔出血病灶分割性能的评定标准。
25.进一步的,步骤2的具体实现包括如下子步骤;
26.步骤2.1,计算采样点在单尺度特征的相对位置
27.单尺度可变型注意力模块采用多头注意力计算模式,记输入该模块的特征为x∈rh×w×c,其中h、w、c分别表示特征的长、宽与维度,该模块按通道维度将输入特征x均分为m个
特征m∈[1,m],cm=c/m,m表示单头注意力模块数目,q
mij
表示在特征xm上第i行j列元素,记录元素q
mij
的位置信息,表示q
mij
所对应的特征向量;
[0028]
特征xm经过k次独立的1
×
1卷积操作后,输出k组2d偏置δp
mqk
∈rh×w×2,分别记录k个采样元素于q
mij
的相对位置,其中,m、k分别代表单个注意力模块的序号、q
mij
所对应的采样点序号,k表示采样点的个数;
[0029]
步骤2.2,计算权重矩阵与线性映射
[0030]
将特征xm分别输入到两个1
×
1卷积层中,得到线性映射与权重矩阵a
mqk
∈rh×w×k,在权重矩阵a
mqk
中,每个通道s
mij
∈r1×k存储元素q
mij
对应k个采样点的权重w
mijk
,其中:
[0031]
步骤2.3,计算单尺度可变型注意力特征
[0032]
根据在步骤2.1中计算的k组2d偏置δp
mqk
,步骤2.2中计算的注意力权重矩阵a
mqk
与特征xm的线性映射vm,计算单尺度注意力特征,具体公式如下:
[0033][0034]
在公式(1)中,表示第m个单头单尺度注意力模块的输出特征是一个可更新参数矩阵,用于为特征x'm分配合适权重进行信息聚合操作。
[0035]
进一步的,步骤3的具体实现包括如下子步骤;
[0036]
步骤3.1,计算采样点在多尺度特征的相对位置
[0037]
多尺度可变型注意力模块能接收n个多尺度特征其中hn、wn、cn分别表示第n个特征的长、宽与维度,n∈{1,2,3,...,n},具体为:hn=2
(n-1)
*h1,wn=2
(n-1)
*w1,cn=c1/2
(n-1)

[0038]
特征x1表示该模块所在编码层卷积模块的输出特征,其余特征则分别表示前面n-1个编码层的输出特征;
[0039]
多尺度可变型注意力模块采用的是多头注意力计算模式;该模块按维度方向将分别将输入特征xn均分为m个特征m∈[1,m],cm=c/m,作为单头多尺度可变型注意力模块的输入;记q
nmij
表示在特征x
nm
上第i行j列元素,记录元素q
nmij
的位置信息,则表示q
nmij
所表示的特征向量;
[0040]
特征x
1m
经过n*k次独立的1
×
1卷积操作后,输出n个k组2d偏置对n个多尺度特征x
nm
分别记录k个采样元素于q
1mij
的相对位置,其中的n、m、k分别代表多尺
度特征的序号、单个注意力模块的序号与q
1mij
在不同特征中所对应的采样点序号,k表示采样点的个数;
[0041]
步骤3.2,估测特征元素在多尺度特征上的参考位置
[0042]
由于输入特征x
nm
的尺寸不同,而输出特征的尺寸固定与特征x
1m
保持一致,故不同尺寸特征上的参考位置需要相对于位置被估测;其详细思路是:将特征x
1m
上的参考点位置映射到其他大尺度特征对应区域的左上角位置(2
(n-1)
*i1,2
(n-1)
*j1),然后对横、纵坐标分别随机分配区域范围内的正数偏置,公式如下:
[0043]in
=2
(n-1)
*i1+rand_int(0,2
(n-1)-1)
ꢀꢀ
(2)
[0044]jn
=2
(n-1)
*j1+rand_int(0,2
(n-1)-1)
ꢀꢀ
(3)
[0045]
上述公式中的rand_int(0,2
(n-1)-1)随机产生一个整数,其范围是[0,2
(n-1)-1];
[0046]
步骤3.3,计算权重矩阵与线性映射
[0047]
将特征x
1m
输入到一个1
×
1卷积层中,输出权重矩阵在权重矩阵a
nmqk
中,每个通道s
nmij
∈r1×
(n*k)
存储元素q
1mij
对应n*k个采样点的权重w
nmijk
,其中:
[0048]
后续将特征x
nm
分别输入到n个1
×
1卷积层中,各卷积层输出线性映射
[0049]
步骤3.4,计算多尺度可变型注意力特征
[0050]
分别根据步骤3.1、3.2与3.3计算出的n个k组2d偏置δp
nmqk
、特征元素在多尺度特征上的参考位置与权重矩阵a
nmqk
、n组线性映射v
nm
,计算多尺度可变型注意力特征,具体公式如下:
[0051][0052]
在上述公式中,表示第m个单头多尺度注意力模块的输出特征是一个可更新参数矩阵,用于为特征x'
nm
分配合适权重进行信息聚合操作。
[0053]
进一步的,步骤4的具体实现包括如下子步骤;
[0054]
步骤4.1,计算采样点在编码特征的相对位置
[0055]
记解码特征编码特征其中hd=he、wd=we、cd=ce;
[0056]
交叉可变型注意力模块采用的是多头注意力计算模式;该模块按维度方向将分别将输入特征xd、xe均分为m个特征与m∈[1,m],cm=c/m,m是单头交叉可变型注意力模块的个数;记q
dmij
表示在编码特征x
dm
上的第i行j列元素,
记录元素q
dmij
的位置信息,则表示q
dmij
所表示的特征向量;
[0057]
为了利用编码特征x
em
恢复解码特征x
dm
在上采样过程中丢失的细粒度特征,将编码特征x
em
经过k次独立的1
×
1卷积操作后,输出k组2d偏置记录k个采样元素于q
dmij
的相对位置,其中d、m、k分别代表特征的来自编码器、单个注意力模块的序号与q
dmij
在解码特征中所对应的采样点序号,k表示采样点的个数;
[0058]
步骤4.2,计算权重矩阵与线性映射
[0059]
通过一个1
×
1卷积层,利用编码特征x
em
,计算权重矩阵在权重矩阵a
emqk
中,每个通道s
emij
∈r1×k存储元素q
dmij
对应k个采样点的权重w
emijk
,其中:
[0060]
后续将特征x
dm
输入到一个1
×
1卷积层中,输出编码特征的线性映射
[0061]
步骤4.3,计算交叉可变型注意力特征
[0062]
根据上述步骤计算出的k组2d偏置δp
emqk
、权重矩阵a
emqk
与编码特征x
dm
的线性映射v
dm
,计算交叉可变型注意力特征,具体公式如下:
[0063][0064]
在上述公式中,表示第m个单头交叉注意力模块的输出特征输出特征是一个可更新参数矩阵,用于为特征x'
dm
分配合适权重进行信息聚合操作;
[0065]
步骤4.4,拼接特征
[0066]
将交叉可变型注意力模块的输出特征x'd与编码特征xe按维度方向进行拼接,得到特征用符号表达如下:
[0067]
x
ed
=concat(xe,x'd,dim=1)
ꢀꢀꢀꢀꢀꢀ
(6)
[0068]
上式中的concat(
·
)表示特征拼接函数,dim=1表示特征拼接方向是维度方向。
[0069]
进一步的,步骤5的具体实现方式包括如下子步骤;
[0070]
步骤5.1,构建编码器
[0071]
udt的编码器有5层,分别记作ea,a∈[1,2,3,4,5];
[0072]
第一个编码层e1由2个带残差连接的双卷积模块构成,分别记作由2个带残差连接的双卷积模块构成,分别记作输入数据先经过模块,输出特征随后经过模块,输出特征其中,c1》c0;最后,将特征输入到最大池
化层中,下采样输出特征h1=h0/2,w1=w0/2;上述模块具体的符号化表达如下所示:
[0073]
brc(
·
)=conv(relu(bn(
·
)))
ꢀꢀꢀꢀꢀꢀꢀ
(7)
[0074][0075]
上述第一个公式中的bn表示数据归一化层,relu表示修正线性激活函数,conv表示步长与填充均为1,尺寸为3
×
3的卷积层,其中的符号“·”指代特征,brc(
·
)则表示综合卷积处理层;第二个公式中的t表示卷积模块所处的结构,为编码器e或解码器d,l表示其所在的层级,u表示其所在层级的排列序号;分别指代模块的第1、2个综合卷积处理层,是指残差连接中使用到的综合卷积处理层;
[0076]
除了在e1中设置了2个带残差连接的双卷积模块,其余编码层的模块均只有1个;在第二个编码层e2中的模块中后接一个单次度可变型注意力模块然后分别在第三、四与五编码层e
(3,4,5)
中的模块后各接一个多尺度可变型注意力模块各编码层之间均设置有最大池化模块,至此,udt编码器部分组构完毕;
[0077]
步骤5.2,构建基于交叉可变型注意力模块的跳跃连接结构
[0078]
udt的解码器有4层,分别记作db,b∈[4,3,2,1];
[0079]
在各级编码层ea与解码层db之间,a=b=4,3,2,均设置有基于交叉可变型注意力模块的跳跃连接结构,考虑到计算复杂性,在e1与d1之间设置的是普通的跳跃连接结构;
[0080]
的处理过程如下:第五个编码层e5的输出特征先通过双线性插值上采样与1
×
1卷积操作,输出特征h3=2*h4,w3=2*w4,c4=c5/2;后续将特征/2;后续将特征输入到交叉可变型注意力模块中,输出特征然后,将特征与按维度方向上拼接起来,输出特征作为编码层d4的输入;其余基于交叉可变型注意力模块的跳跃连接结构和的计算流程与保持一致;
[0081]
步骤5.3,构建解码器
[0082]
在第四个编码层e4与第四个解码层d4之间的模块输出特征输入到d4中被进一步处理;d
(4,3,2)
层均只由一个带残差连接的双卷积模块所构成,其可记作在d1解码层中,含有2个残差连接的双卷积模块,其可分别记作在模块后接一个输出维度为分割目标数的1
×
1卷积层,最后通过softmax层对维度方向上的概率分布;在蛛网膜下腔出血病灶的分割任务中,分割的目标只有出血病灶一类,故使用的是sigmoid层来计算元素为病灶点的概率;在各解码层间,均
设置有双线性插值上采样模块与1
×
1卷积模块。
[0083]
进一步的,步骤6中训练中采用的损失函数是二元交叉熵损失函数,其具体的公式如下:
[0084]
bceloss(x
ij
,y
ij
)=-[y
ij
·
log(x
ij
)+(1-y
ij
)
·
log(1-x
ij
)]
ꢀꢀ
(9)
[0085][0086]
公式(9)计算概率图上第i行j列的元素x
ij
∈{p|p∈[0,1],p是小数}与其对应单个标签y
ij
∈{0,1}之间的二元交叉熵损失,式子(10)通过计算h
×
w个bceloss(x
ij
,y
ij
)的平均值,来得到udt输出概率图与其对应标签的二元交叉熵损失,,h和w分别表示标签图片的高和宽,hxw则指代标签图片上的元素总数目;根据bceloss(x,y),使用反向传播算法更新模型的内部参数。
[0087]
进一步的,步骤1的具体实现包括如下子步骤;
[0088]
步骤1.1,通过itk-snap软件,分别设置其窗宽、窗位为80hu、50hu,选取z轴方向上含蛛网膜下腔出血病灶的ct切片,将其转化为png格式图片进行导出;
[0089]
步骤1.2,在专家指导下,使用标注工具labelme对ct图像中的蛛网膜下腔出血病灶区域进行人工标注,得到标签数据,完成对蛛网膜下腔出血数据集的构建;每个ct图像的尺寸为3x512x512,标签数据的尺寸为512x512;后续将该数据集随机划分为训练集与测试集,其规模分别为210张、80张。
[0090]
进一步的,步骤7的具体实现包括如下子步骤;
[0091]
步骤7.1,将udt输出的概率图转化为掩模图
[0092]
udt模型接收特征的输入后,输出概率图c
out
为分割目标的类别数,在sah的病灶分割任务中c
out
=1,将概率图x
out
转换为掩模图mask,便于蛛网膜出血病灶的直观展示;具体的转换公式如下:
[0093][0094]
上式中,p
ij
表示概率图x
out
第i行j列的出血病灶概率值,r
ij
表示掩模图mask第i行j列的像素值;
[0095]
步骤7.2,利用掩模图与标记数据计算分割评价指标
[0096]
将测试集上的所有数据test-xi,i∈[1,2,3,...,n],n是测试集的规模,输入到训练后的udt模型中去,分别输出其对应的概率图后续通过转化函数,将这些概率图转化为掩模图maski;
[0097]
通过比对掩模图maski与对应标签labeli的相关信息,计算出各分割评价指标index-ki,k∈[1,2,...,k],k是指标的类别数,然后求这些评定指标的平均值index-k
i-avg
作为最终结果对udt模型的分割性能进行评估。
[0098]
进一步的,分别选取dice与iou作为模型在蛛网膜下腔出血测试集上的评价指标,各评价指标的计算公式如下:
[0099][0100][0101]
其中上述公式中的tp表示真阳性,即预测值与真实值均为1;tf表示真阴性,即预测值与真实值均为0;fp表示假阳性,即预测值为1,但真实值为0;fn表示假阴性,即预测值为0,但真实值为1。
[0102]
本发明相对于现有的蛛网膜下腔出血分割算法有以下优点:
[0103]
1.提出的ssda模块能根据输入数据对每个元素的注意力域进行动态调整,从而更好地聚合元素间的信息,以缓解固定形状、尺寸的卷积核难以精确表达sah病灶数据特征的问题;
[0104]
2.提出的msda模块可以融合各编码层输出的不同尺度特征中的信息,以适应ct影像中sah病灶尺度不一的数据特性,使模型提取到的数据特征更具鲁棒性。
[0105]
3.提出的cda-sc模块进一步融合编码层的位置信息和解码层的语义信息,使模型能更精确分割蛛网膜下腔出血病灶的一些细粒度结构,比如:微小病灶、病灶区域等。
附图说明
[0106]
图1为采用本发明所提出的udt模型的整体架构。
[0107]
图2为udt与其他模型在测试集部分图片上的输出掩模图对比。
具体实施方式
[0108]
下面结合附图和实施例对本发明的技术方案作进一步说明。
[0109]
本发明的基于udt的蛛网膜下腔出血病灶分割算法,主要实现步骤如下:
[0110]
(1)采集及转换蛛网膜下腔出血病灶的ct影像数据
[0111]
首先将每张ct切片图像转化为png格式,并在专家指导下,使用标注工具对蛛网膜下腔出血病灶区域进行人工标注。随后,将图像与相应的标记数据随机划分为训练集与测试集,分别用于后续模型内部参数的更新与模型分割性能的量化评估。
[0112]
(2)构建单尺度可变型注意力模块(ssda)
[0113]
构建单尺度可变型注意力模块,根据输入图像的内容,自适应选择固定数量的采样点,作为每个元素的注意力域,而不再是传统注意力机制中所规定的全域,在减小计算冗余度的同时,还能对sah病灶数据特征进行精确表达;
[0114]
(3)构建多尺度可变型注意力模块(msda)
[0115]
在上述的单尺度可变型注意力模块的基础上,扩展构建了多尺度可变型注意力模块,该模块可融合各编码层输出的不同尺度特征中的信息,使模型提取到的数据特征更具鲁棒性。
[0116]
(4)构建基于交叉可变型注意力的跳跃连接结构(cda-sc)
[0117]
构建基于交叉可变型注意力的跳跃连接结构,对跳跃连接通过编码特征中信息恢复解码特征细粒度特征的能力进行强化,从而使模型能更精细分割蛛网膜下腔出血病灶的细节部分,比如:微小病灶、病灶区域边缘等。
[0118]
(5)构建udt模型
[0119]
在res-u-net基础上,将上述构建的三种模块引入到其部分结构中,详细情况如下:在第二编码层的残差双卷积模块后面设置了一个ssda模块;分别在第三、四与五层的残差双卷积模块后面设置了一个msda模块;除第一编、解码层间的跳跃连接以外,其他层间的跳跃连接结构均设置为cda-sc。
[0120]
(6)在蛛网膜下腔出血训练集上对udt模型进行训练
[0121]
利用在步骤(1)中制作的训练集,采用随机梯度下降法训练该模型,直至模型收敛。
[0122]
(7)在蛛网膜下腔出血测试集上对udt模型进行测试
[0123]
利用在步骤(1)中制作的测试集,对模型进行测试。将测试集中的图片分别输入到训练后的udt模型中,得到病灶分割掩模图。然后,将这些掩模图与测试集上的标签数据进行比对,计算出各评定指标后,求其平均值作为该模型对蛛网膜下腔出血病灶分割性能的评定标准。
[0124]
以下结合附图1,对本发明的具体分割以及测试验证作进一步的详细描述。
[0125]
步骤1,采集及转换蛛网膜下腔出血病灶的ct影像数据
[0126]
步骤1.1,通过itk-snap软件,分别设置其窗宽、窗位为80hu、50hu,选取z轴方向上含蛛网膜下腔出血病灶的ct切片,将其转化为png格式图片进行导出;
[0127]
步骤1.2,在专家指导下,使用标注工具labelme对ct图像中的蛛网膜下腔出血病灶区域进行人工标注,得到标签数据,完成对蛛网膜下腔出血数据集的构建。每个ct图像的尺寸为3x512x512,标签数据的尺寸为512x512。后续将该数据集随机划分为训练集与测试集,其规模分别为210张、80张。
[0128]
步骤2,构建单尺度可变型注意力模块
[0129]
该模块可根据输入数据,自适应确定特征中每个元素所对应的注意力域,然后对其注意力域所有采样点对应的元素分配权重。将输入数据线性映射后,在其映射特征每个元素对应的多个采样元素上做加权和操作,完成单尺度可变型注意力的计算。
[0130]
步骤2.1,计算采样点在单尺度特征的相对位置
[0131]
单尺度可变型注意力模块采用多头注意力计算模式。记输入该模块的特征为x∈rh×w×c(h、w、c分别表示特征的长、宽与维度),该模块按通道维度将输入特征x均分为m个特征m表示单头注意力模块数目,q
mij
表示在特征xm上第i行j列元素,记录元素q
mij
的位置信息,表示q
mij
所对应的特征向量。
[0132]
特征xm经过k次独立的1
×
1卷积操作后(k表示采样点的个数),输出k组2d偏置δp
mqk
∈rh×w×2,分别记录k个采样元素于q
mij
的相对位置,其中的m、k分别代表单个注意力模块的序号、q
mij
所对应的采样点序号。
[0133]
步骤2.2,计算权重矩阵与线性映射
[0134]
将特征xm分别输入到两个1
×
1卷积层中,得到线性映射与权重矩阵a
mqk
∈rh×w×k。在权重矩阵a
mqk
中,每个通道s
mij
∈r1×k存储元素q
mij
对应k个采样点的权重wmijk
,其中:
[0135]
步骤2.3,计算单尺度可变型注意力特征
[0136]
根据在步骤2.1中计算的k组2d偏置δp
mqk
,步骤2.2中计算的注意力权重矩阵a
mqk
与特征xm的线性映射vm,计算单尺度注意力特征,具体公式如下:
[0137][0138]
在公式(1)中,表示第m个单头单尺度注意力模块的输出特征特征是一个可更新参数矩阵,用于为特征x'm分配合适权重进行信息聚合操作。
[0139]
步骤3,构建多尺度可变型注意力模块
[0140]
该模块是对单尺度可变型注意力模块的扩展,可接收多个不同尺寸的特征。由于尺寸的不一,除了要计算采样点在多尺度特征的相对位置的同时,还需估测采样点在多尺度特征上的参考位置,才可确定查询元素在各尺寸特征中对应的注意力域。将多尺度特征分别线性映射后,对每个查询元素在这些映射特征中分别对应的多个采样元素上做加权和操作,完成多尺度可变型注意力的计算。
[0141]
步骤3.1,计算采样点在多尺度特征的相对位置
[0142]
多尺度可变型注意力模块能接收n个多尺度特征其中hn、wn、cn分别表示第n个特征的长、宽与维度(n∈{1,2,3,...,n}),具体为:hn=2
(n-1)
*h1,wn=2
(n-1)
*w1,cn=c1/2
(n-1)

[0143]
多尺度可变型注意力模块采用的是多头注意力计算模式。该模块按维度方向将分别将输入特征xn均分为m个特征均分为m个特征作为单头多尺度可变型注意力模块的输入。记q
nmij
表示在特征x
nm
上第i行j列元素,记录元素q
nmij
的位置信息,则表示q
nmij
所表示的特征向量。
[0144]
特征x
1m
经过n*k次独立的1
×
1卷积操作后(k表示采样点的个数),输出n个k组2d偏置对n个多尺度特征x
nm
分别记录k个采样元素于q
1mij
的相对位置,其中的n、m、k分别代表多尺度特征的序号、单个注意力模块的序号与q
1mij
在不同特征中所对应的采样点序号。
[0145]
步骤3.2,估测特征元素在多尺度特征上的参考位置由于输入特征x
nm
的尺寸不同,而输出特征的尺寸固定与特征x
1m
保持一致,故不同尺寸特征上的参考位置需要相对于位置被估测。其详细思路是:将特征x
1m
上的参考点位置映射到其他大尺度特征对应区域的左上角位置(2
(n-1)
*i1,2
(n-1)
*j1),然后对横、纵坐标分别随机分
配区域范围内的正数偏置,公式如下:
[0146]in
=2
(n-1)
*i1+rand_int(0,2
(n-1)-1)
ꢀꢀ
(2)
[0147]jn
=2
(n-1)
*j1+rand_int(0,2
(n-1)-1)
ꢀꢀ
(3)
[0148]
上述公式中的rand_int(0,2
(n-1)-1)随机产生一个整数,其范围是[0,2
(n-1)-1]。
[0149]
步骤3.3,计算权重矩阵与线性映射
[0150]
将特征x
1m
输入到一个1
×
1卷积层中,输出权重矩阵在权重矩阵a
nmqk
中,每个通道s
nmij
∈r1×
(n*k)
存储元素q
1mij
对应n*k个采样点的权重w
nmijk
,其中:
[0151]
后续将特征x
nm
分别输入到n个1
×
1卷积层中,各卷积层输出线性映射
[0152]
步骤3.4,计算多尺度可变型注意力特征
[0153]
分别根据步骤3.1、3.2与3.3计算出的n个k组2d偏置δp
nmqk
、特征元素在多尺度特征上的参考位置与权重矩阵a
nmqk
、n组线性映射v
nm
,计算多尺度可变型注意力特征,具体公式如下:
[0154][0155]
在上述公式中,表示第m个单头多尺度注意力模块的输出特征特征是一个可更新参数矩阵,用于为特征x'
nm
分配合适权重进行信息聚合操作。
[0156]
步骤4,构建基于交叉可变型注意力的跳跃连接结构该模块接收两个尺寸一致的特征,它们分别来自编码器、解码器。首先,通过对编码特征分别做多次独立的1
×
1卷积操作,确定解码特征元素所对应的注意力域,分配注意力域所有采样点对应特征元素的权重。将解码特征线性映射后,在其映射特征每个元素对应的多个采样元素上做加权和操作,完成交叉可变型注意力的计算。然后将该输出特征与编码特征在通道方向上进行拼接,实现基于交叉可变型注意力的跳跃连接结构的构建。
[0157]
步骤4.1,计算采样点在编码特征的相对位置
[0158]
记解码特征编码特征其中hd=he、wd=we、cd=ce。
[0159]
交叉可变型注意力模块采用的是多头注意力计算模式。该模块按维度方向将分别将输入特征xd、xe均分为m个特征与与m是单头交叉可变型注意力模块的个数。记q
dmij
表示在编码特征x
dm
上的第i行j列元素,记录元素q
dmij
的位置信息,则表示q
dmij
所表示的特征向量。
[0160]
为了利用编码特征x
em
恢复解码特征x
dm
在上采样过程中丢失的细粒度特征,将编码特征x
em
经过k次独立的1
×
1卷积操作后(k表示采样点的个数),输出k组2d偏置记录k个采样元素于q
dmij
的相对位置,其中的d、m、k分别代表特征的来自编码器、单个注意力模块的序号与q
dmij
在解码特征中所对应的采样点序号。
[0161]
步骤4.2,计算权重矩阵与线性映射
[0162]
通过一个1
×
1卷积层,利用编码特征x
em
,计算权重矩阵在权重矩阵a
emqk
中,每个通道s
emij
∈r1×k存储元素q
dmij
对应k个采样点的权重w
emijk
,其中:
[0163]
后续将特征x
dm
输入到一个1
×
1卷积层中,输出编码特征的线性映射
[0164]
步骤4.3,计算交叉可变型注意力特征
[0165]
根据上述步骤计算出的k组2d偏置δp
emqk
、权重矩阵a
emqk
与编码特征x
dm
的线性映射v
dm
,计算交叉可变型注意力特征,具体公式如下:
[0166][0167]
在上述公式中,表示第m个单头交叉注意力模块的输出特征输出特征是一个可更新参数矩阵,用于为特征x'
dm
分配合适权重进行信息聚合操作。
[0168]
步骤4.4,拼接特征
[0169]
将交叉可变型注意力模块的输出特征x'd与编码特征xe按维度方向进行拼接,得到特征用符号表达如下:
[0170]
x
ed
=concat(xe,x'd,dim=1)
ꢀꢀ
(6)
[0171]
上式中的concat(
·
)表示特征拼接函数,dim=1表示特征拼接方向是维度方向。
[0172]
步骤5,构建udt模型,输出病灶概率图,每个像素值均介于0到1之间;
[0173]
步骤5.1,构建编码器
[0174]
udt的编码器有5层,分别记作ea,a∈[1,2,3,4,5]。
[0175]
第一个编码层e1由2个带残差连接的双卷积模块构成,分别记作由2个带残差连接的双卷积模块构成,分别记作输入数据先经过模块,输出特征随后经过模块,输出特征其中,c1》c0。最后,将特征(也可记为
)输入到最大池化层中,下采样输出特征上述模块具体的符号化表达如下所示:
[0176]
brc(
·
)=conv(relu(bn(
·
)))
ꢀꢀ
(7)
[0177][0178]
上述第一个公式中的bn表示数据归一化层,relu表示修正线性激活函数,conv表示步长与填充均为1,尺寸为3
×
3的卷积层,其中的符号“·”指代特征,brc(
·
)则表示综合卷积处理层。第二个公式中的t表示卷积模块所处的结构(编码器e或解码器d),l表示其所在的层级,u表示其所在层级的排列序号。分别指代模块的第1、2个综合卷积处理层,是指残差连接中使用到的综合卷积处理层。
[0179]
除了在e1中设置了2个带残差连接的双卷积模块,其余编码层的模块均只有1个。在第二个编码层e2中的模块中后接一个单次度可变型注意力模块然后分别在第三、四与五编码层e
(3,4,5)
中的模块后各接一个多尺度可变型注意力模块各编码层之间均设置有最大池化模块。至此,udt编码器部分组构完毕。
[0180]
步骤5.2,构建基于交叉可变型注意力模块的跳跃连接结构
[0181]
udt的解码器有4层,分别记作db,b∈[4,3,2,1]。
[0182]
在各级编码层ea与解码层db(a=b=4,3,2)之间,均设置有基于交叉可变型注意力模块的跳跃连接结构,考虑到计算复杂性,在e1与d1之间设置的是普通的跳跃连接结构。
[0183]
第五个编码层e5的输出特征先通过双线性插值上采样与1
×
1卷积操作,输出特征卷积操作,输出特征后续将特征后续将特征输入到交叉可变型注意力模块中,输出特征然后,将特征与按维度方向上拼接起来,输出特征作为编码层d4的输入。上述为的处理过程,其余基于交叉可变型注意力模块的连接跳跃结构和的计算流程跟上述保持一致。
[0184]
步骤5.3,构建解码器
[0185]
在第四个编码层e4与第四个解码层d4之间的模块输出特征输入到d4中被进一步处理。d
(4,3,2)
层均只由一个带残差连接的双卷积模块所构成,其可记作在d1解码层中,含有2个残差连接的双卷积模块,其可分别记作在模块后接一个输出维度为分割目标数的1
×
1卷积层,最后通过softmax层对维度方向上的概率分布。在蛛网膜下腔出血病灶的分割任务中,分割的目标
只有出血病灶一类,故在实验中,使用的是sigmoid层来计算元素为病灶点的概率。在各解码层间,均设置有双线性插值上采样模块与1
×
1卷积模块。
[0186]
步骤6,在蛛网膜下腔出血训练集上对udt模型进行训练
[0187]
训练中采用的损失函数是二元交叉熵损失函数(binary crossentropy loss,bce),其具体的公式如下:
[0188]
bceloss(x
ij
,y
ij
)=-[y
ij
·
log(x
ij
)+(1-y
ij
)
·
log(1-x
ij
)]
ꢀꢀ
(9)
[0189][0190]
公式(9)计算概率图上第i行j列的元素x
ij
∈{p|p∈[0,1],p是小数}与其对应单个标签y
ij
∈{0,1}之间的二元交叉熵损失,式子(10)通过计算h
×
w个bceloss(x
ij
,y
ij
)的平均值,来得到udt输出概率图与其对应标签的二元交叉熵损失,h和w分别表示标签图片的高和宽,hxw则指代标签图片上的元素总数目。根据bceloss(x,y),使用反向传播算法(back propagation,bp)更新模型的内部参数。
[0191]
步骤7,在蛛网膜下腔出血测试集上对udt模型进行测试
[0192]
步骤7.1,将udt输出的概率图转化为掩模图
[0193]
udt模型接收特征的输入后,输出概率图c
out
为分割目标的类别数。在sah的病灶分割任务中c
out
=1。后续需要将概率图x
out
转换为掩模图mask,便于蛛网膜出血病灶的直观展示。具体的转换公式如下:
[0194][0195]
上式中,p
ij
表示概率图x
out
第i行j列的出血病灶概率值,r
ij
表示掩模图mask第i行j列的像素值。
[0196]
步骤7.2,利用掩模图与标记数据计算分割评价指标
[0197]
将测试集上的所有数据test-xi(i∈[1,2,3,...,n],n是测试集的规模)输入到训练后的udt模型中去,分别输出其对应的概率图后续通过转化函数,将这些概率图转化为掩模图maski。
[0198]
通过比对掩模图maski与对应标签labeli的相关信息,计算出各分割评价指标index-ki(k∈[1,2,...,k],k是指标的类别数),然后求这些评定指标的平均值index-k
i-avg
作为最终结果对udt模型的分割性能进行评估。
[0199]
本发明的效果可以通过以下实验做进一步的说明。
[0200]
1.实验条件
[0201]
本发明中模型的训练与测试均进行在显存为48g的nvidia a40 gpu设备上,使用的操作系统是ubuntu 20,采用的深度学习框架为pytorch。
[0202]
2.实验内容
[0203]
我们分别选取了dice与iou作为模型在蛛网膜下腔出血测试集上的评价指标,各评价指标的计算公式如下:
[0204][0205][0206]
其中上述公式中的tp表示真阳性,即预测值与真实值均为1;tf表示真阴性,即预测值与真实值均为0;fp表示假阳性,即预测值为1,但真实值为0;fn表示假阴性,即预测值为0,但真实值为1。
[0207]
为了证明本发明所提出的udt模型相对于其他分割模型,能更精确地对蛛网膜下腔出血的病灶进行分割。在实验中,选取多个模型,设置统一训练参数,在同一数据集上,进行对比实验。对比算法分别出自以下文献:
[0208]
1.“long j.,e.shelhamer and t.darrell."fully convolutional networks for semantic segmentation"ieee transactions on pattern analysis and machine intelligence 39.4(2015):640-651.”[0209]
2.“o.ronneberger,p.fischer and t.brox,"u-net:convolutional networks for biomedical image segmentation"in international conference on medical image computing and computer-assisted intervention.springer,2015,pp.234

24”[0210]
3.“chen j,lu y,yu q,et al."transunet:transformers make strong encoders for medical image segmentation".arxiv.2102.04306(2021)”[0211]
本发明所提出的udt模型与其他分割模型的对比实验结果如下:
[0212]
表1:不同深度学习模型在各分割指标上的对比
[0213][0214]
从表1中,可以看到本发明提出的基于udt的蛛网膜下腔出血病灶分割方法在iou、dice分割指标上均取得最高值。这是因为我们向res-u-net模型中引入单、多尺度可变型注意力模块、以及基于交叉可变型注意力的跳跃连接结构,使得该模型能更精确地对蛛网膜下腔出血病灶呈弥散型且形状多样、尺度不一的数据特性进行建模,从而提高模型对该类病灶的分割精度。上述实验结果进一步证明了本方法的先进性。
[0215]
本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1