一种基于深度学习的3D CT床快速分割方法
文献发布时间:2023-06-19 09:24:30
技术领域
本发明涉及计算机视觉、深度学习的技术领域,尤其涉及一种基于深度学习的3DCT床快速分割方法。
背景技术
随着计算机科学技术的发展,计算机技术在医学影像方面的应用也越来越多。电子计算机断层扫描(Computed Tomography,以下简称CT)利用其独特的优势逐渐在医学方面发挥重要的作用,将传统的成像技术提高到了一个新的水平,目前,CT不仅仅只用于物体的平面,更多地是应用于一个三维的目标物体,获取其三维的CT体数据。
CT扫描床作为CT的重要设备,是用来配合扫描装置完成全方位扫描的辅助工具,直接影响到检测结果和成像质量,是用来配合扫描装置完成全方位扫描的辅助工具,在物体拍摄CT的过程中,扫描床具有上下前后移动等功能,用以辅助目标物体更好地呈现在图像正中央。但是在实践过程中,CT图像扫描床总是包含CT图像中,这样就会对CT图像造成干扰、影响临床诊断的准确性,因此,去除CT图像扫描床在医学图像的处理中是必不可少地的一步。
传统方案的方法通过图像处理进程读取三维的CT图像,对扫描的图像进行多线程操作,然后通过阈值分割、形态学运算等操作去除图像中的CT床部分。
上述方法可以用于某些图像的CT床去除,若图像中的物体的灰度值或者形态与CT床结构相似则无法完整地去除,故此方法只适用于某些特定的图像,无法大范围推广使用。
发明内容
本部分的目的在于概述本发明的实施例的一些方面以及简要介绍一些较佳实施例。在本部分以及本申请的说明书摘要和发明名称中可能会做些简化或省略以避免使本部分、说明书摘要和发明名称的目的模糊,而这种简化或省略不能用于限制本发明的范围。
鉴于上述现有存在的问题,提出了本发明。
因此,本发明解决的技术问题是:提供一种基于深度学习的3D CT床快速分割新方法,能够通过输入CT图像,自动识别出CT床体部分,并在原图中去除CT床体。
为解决上述技术问题,本发明提供如下技术方案:利用labelme标注输入的三维CT图切片中的CT床;基于深度学习构建CT床分割模型并训练标注完成的数据,得到训练完成的网络模型;利用训练好的所述网络模型分割原始CT图像中的一张切片,得到所述CT床,根据形态学操作所述CT床,得到CT床掩模;根据“与”运算策略计算所述原始图像剩余的所有切片及所述掩模,完成CT床的快速分割去除。
作为本发明所述的基于深度学习的3D CT床快速分割方法的一种优选方案,其中:所述三维CT图切片的输入包括,利用Python dicom提取CT图像信息,得到三维CT图像的切片,将切片生成三维矩阵f(x,y,z)。
作为本发明所述的基于深度学习的3D CT床快速分割方法的一种优选方案,其中:所述CT图像的二值化结果包括,定义阈值T1和T2,介于该阈值范围内的所有体素的CT值为1,小于T1或大于T2的所有体素的CT值设置为0;得到二值化切片序列图像bin_image:
作为本发明所述的基于深度学习的3D CT床快速分割方法的一种优选方案,其中:所述CT床分割模型包括一个提取特征的编码器和一个实现精确定位的解码器。
作为本发明所述的基于深度学习的3D CT床快速分割方法的一种优选方案,其中:所述编码器包括,三个子模块包括两个n×n×n的卷积运算、一个ReLU激活函数及一个剩余连接和一个m×m×m最大合并运算,其步长为s。
作为本发明所述的基于深度学习的3D CT床快速分割方法的一种优选方案,其中:所述解码器包括,三个子模块,定义每个子模块的反褶积为t×t×t,步长为s,连接一个残差连接和两个f×f×f的卷积运算并进行ReLU运算。
作为本发明所述的基于深度学习的3D CT床快速分割方法的一种优选方案,其中:所述编码器和所述解码器网络的连接包括,基于最大池之前及反褶积操作后通过Res-attention路径连接。
作为本发明所述的基于深度学习的3D CT床快速分割方法的一种优选方案,其中:减少所述编码器和所述解码器之间的语义差距过程包括,Res_attention_path包括一个带有剩余连接和注意门的e×e×e卷积滤波器链。
作为本发明所述的基于深度学习的3D CT床快速分割方法的一种优选方案,其中:基于所述掩模CT_mask进行形态学膨胀运算包括,
其中,x表示集合平移的位移量,
作为本发明所述的基于深度学习的3D CT床快速分割方法的一种优选方案,其中:所述结构元素B包括,
本发明的有益效果:本发明可以对三维CT图像进行批处理,并在原图中准确分割,有效地去除三维图像的CT床;本发明利用Res-attention路径连接机制构造全新深度网络模型,解决了去除CT床精度不好的问题;本发明无需将所有CT切片放入CT床分割模型,仅需将一张切片送入网络模型所得CT床掩膜,继而将其余切片与掩膜进行与运算实现CT床快速精确3D分割。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。其中:
图1为本发明一个实施例提供的基于深度学习的3D CT床快速分割方法的基本流程示意图;
图2为本发明一个实施例提供的基于深度学习的3D CT床快速分割方法的网络结构示意图;
图3为本发明一个实施例提供的基于深度学习的3D CT床快速分割方法的Res_attention_path结构示意图;
图4为本发明一个实施例提供的基于深度学习的3D CT床快速分割方法的标注原图;
图5为本发明一个实施例提供的基于深度学习的3D CT床快速分割方法的CT床的mask图;
图6为本发明一个实施例提供的基于深度学习的3D CT床快速分割方法的标注后的CT床图;
图7为本发明一个实施例提供的基于深度学习的3D CT床快速分割方法的预测CT床的mask图;
图8为本发明一个实施例提供的基于深度学习的3D CT床快速分割方法的去除CT床后的示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合说明书附图对本发明的具体实施方式做详细的说明,显然所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明的保护的范围。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其他不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。
其次,此处所称的“一个实施例”或“实施例”是指可包含于本发明至少一个实现方式中的特定特征、结构或特性。在本说明书中不同地方出现的“在一个实施例中”并非均指同一个实施例,也不是单独的或选择性的与其他实施例互相排斥的实施例。
本发明结合示意图进行详细描述,在详述本发明实施例时,为便于说明,表示器件结构的剖面图会不依一般比例作局部放大,而且所述示意图只是示例,其在此不应限制本发明保护的范围。此外,在实际制作中应包含长度、宽度及深度的三维空间尺寸。
同时在本发明的描述中,需要说明的是,术语中的“上、下、内和外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一、第二或第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
本发明中除非另有明确的规定和限定,术语“安装、相连、连接”应做广义理解,例如:可以是固定连接、可拆卸连接或一体式连接;同样可以是机械连接、电连接或直接连接,也可以通过中间媒介间接相连,也可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
实施例1
参照图1~3,为本发明的一个实施例,提供了一种基于深度学习的3D CT床快速分割方法,包括:
S1:利用labelme标注输入的三维CT图切片中的CT床。
需要说明的是,三维CT图切片的输入包括:
利用Python dicom提取CT图像信息,得到三维CT图像的切片,将切片生成三维矩阵f(x,y,z)。
其中,CT图像的二值化结果包括:
定义阈值T1和T2,介于该阈值范围内的所有体素的CT值为1,小于T1或大于T2的所有体素的CT值设置为0;
得到二值化切片序列图像bin_image:
具体的,利用Python dicom提取CT图像信息,得到三维CT图像的切片,将切片生成三维矩阵f(x,y,z),选取拍摄的一部分CT图像进行格式转换以便对图像进行标注,选取格式转换后的图像,对其进行手工标注,选择出CT床所在的区域,并将标注完的图片进行保存成json文件,使用脚本文件批量执行json文件,使其解压,显示标注的原图及标注的mask图片,对mask图片进行二值化操作,图像的二值化使图像中数据量大为减少,从而能凸显出目标的轮廓,也就是将整个图像呈现出明显的黑白效果的过程,便于送入网络模型中训练。
对图像进行二值化,设定阈值T1和T2(T1
S2:基于深度学习构建CT床分割模型并训练标注完成的数据,得到训练完成的网络模型。 需要说明的是:CT床分割模型包括一个提取特征的编码器和一个实现精确定位的解码器。 其中,编码器包括: 三个子模块包括两个n×n×n的卷积运算、一个ReLU激活函数及一个剩余连接和一个m×m×m最大合并运算,其步长为s。 解码器包括: 三个子模块,定义每个子模块的反褶积为t×t×t,步长为s,连接一个残差连接和两个f×f×f的卷积运算并进行ReLU运算。 编码器和解码器网络的连接包括: 基于最大池之前及反褶积操作后通过Res-attention路径连接。 减少编码器和解码器之间的语义差距过程包括, Res_attention_path包括一个带有剩余连接和注意门的e×e×e卷积滤波器链。 具体的,构建CT床分割模型,该网络通过下采样和上采样将不同尺度的特征连接起来,即使只使用少量的带注释训练样本,它是对称的,有一个提取特征的编码器和一个实现精确定位的解码器。编码器包含三个子模块,每个子模块都有两个n×n×n的卷积运算,其次是一个ReLU(整流线性单元)激活函数,再其次是一个剩余连接和一个m×m×m最大合并运算,步长为s,以快速增加视野。译码器还由三个子模块组成,每个子模块的反褶积为t×t×t,步长为s,其次连接一个残差连接和两个f×f×f的卷积运算,之后进行ReLU运算。编码器和解码器网络的相应层分别在最大池之前和反褶积操作之后通过Res-attention(残差网络路径)路径连接,本发明使用3,2,1卷积块沿着三个注意路径分别有a,b和c个滤波器,全连接层通过d×d×d卷积滤波器和sigmoid(S型生长曲线)激活函数输出最终结果。 为了减少编码器和解码器之间的语义差距,本发明引入了一个“Res_attention_path”,它利用一个带有剩余连接(1×1×1卷积滤波器)和注意门的e×e×e卷积滤波器链。其中,注意门用于重新调整编码器的输出特性并增加目标区域的值,门信号是注意力学习的方向,即在上采样之前从上一层获取信息,最后,将Res_attention路径的结果与解码器的特征连接起来。 将上述步骤中获得原图ori_image及mask图片存成数组形式放入网络模型中训练,得到训练好的网络模型tra_model,如图2、图3所示。 S3:利用训练好的网络模型分割原始CT图像中的一张切片,得到CT床,根据形态学操作CT床,得到CT床掩模。需要说明的是:基于掩模CT_mask进行形态学膨胀运算包括:
其中,x表示集合平移的位移量, 其中,结构元素B包括:
具体的,将未标注的原始CT切片图像ori_image转成数组形式;对这些数据进行归一化处理;将数组输入到步骤S2步骤的训练好的网络模型中,进行预测,输出模型预测的CT扫描床图像数组。对掩模CT_mask再进行形态学膨胀运算,用结构元素B进行膨胀的数学公式为
其中,x表示集合平移的位移量, S4:根据“与”运算策略计算原始图像剩余的所有切片及掩模,完成CT床的快速分割去除。 具体的,将原始图像ori_image全部剩余切片图像数组与掩模图像CT_mask1数组进行像素点匹配,若CT扫描床图像数组中某像素的值为1,则把原始CT图像数组中的该位置的像素值置0,将去除CT图像扫描床后的CT图像数组转换成图片并输出,输出图像为out_image。 实施例2 参照图4~8为本发明另一个实施例,为了对本方法中采用的技术效果加以验证说明,本实施例选择传统技术方案CT扫描床的去除方法及人工去除方法与本发明方法进行对比,以验证本方法所具有的真实效果。 在仿真软件中,扫描获得100头种猪的三维CT图像,获得的CT图像大小是512×512,每一头种猪的CT图存放在一个文件夹内;提取CT图像信息,获取三维CT图像的切片,将切片按顺序叠加,生成三维矩阵f(x,y,z)’;在100头种猪CT图像中选择20头CT图像作为训练集;将选定的20头种猪的3D CT图片进行格式转换保存成PNG格式,以便对其进行标注;利用labelme(深度学习图像标注工具)对20头种猪CT图像进行标注,每头种猪选取20张,共400张图片作为标注的原始数据,选择出CT床所在的区域,并将标注完的图片保存成json文件;使用脚本文件批量执行json文件,使其解压,显示标注的原图及标注的mask图片;对mask图片进行二值化操作,图像的二值化使图像中数据量大为减少,从而能凸显出目标的轮廓,也就是将整个图像呈现出明显的黑白效果的过程,便于送入网络模型中训练。对图像进行二值化,设定阈值T1=-800HU,T2=1500HU,这一阈值范围可将活猪胴体部分在图像中的像素都包含在内,介于该阈值范围内的所有体素的CT值设置为1,小于T1或大于T2的所有体素的CT值设置为0,得二值化切片序列图像bin_image:
根据S1步骤构建训练模型并进行训练,其中,本实施例利用3,2,1卷积块沿着三个注意路径分别有64,128和256个滤波器,全连接层通过1×1×1卷积滤波器和sigmoid激活函数输出最终结果。 根据S1步骤得到训练好的网络模型,训练目标函数为二值交叉熵,由S1步骤获得CT将未标注的原始CT切片图像转成数组形式,对这些数据归一化处理,把数变为(0,1)之间的小数,主要是为了数据处理方便,把数据映射到0~1范围之内处理,更加便捷快速,更有利于提升模型的收敛速度,归一化是让不同维度之间的特征在数值上有一定比较性,更有利于提取特征。归一化的计算公式如下:
其中X 根据S1步骤完成CT床的快速分割。 传统的方案利用图像处理进程读取三维的CT图像,对扫描的图像进行多线程操作、然后通过阈值分割、形态学运算等操作去除图像中的CT床部分,以及利用传统手工切割方案三者对比,其对比结果如下表所示:
从上述对比数据可以看出,本发明方法在准确度、分割精度及效率上都高于传统方案,在时间上能够实现快速去除并比传统方案时间短,普通CT扫描床的去除方法仅适用于特定图像,无法大范围推广,手工切割方法与本发明方法适用范围很广,但是本发明方法在其他数据上较差于本发明方法,其对比结果可以体现出本发明方法能够快速、高效、准确、自动地识别出3D CT图像的扫描床部分。 应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。
- 一种基于深度学习的3D CT床快速分割方法
- 一种基于深度学习的3D CT床快速分割方法