本申请涉及图像处理技术领域,具体涉及一种图像处理方法及装置,模型的训练方法及装置,电子设备。
背景技术:
对于骨骼ct图像分割的研究,其非常重要的临床价值体现在计算机辅助信息的识别和帮助神经病理学的临床研究。如果椎节的结构没有被正确的分割和识别,那么所谓的用计算机描述的临床价值将受到局限。
技术实现要素:
有鉴于此,本申请的实施例致力于提供一种图像处理方法及装置,模型的训练方法及装置,电子设备,能够避免在对椎节进行分割时出现欠分割、过分割等现象。
根据本申请实施例的第一方面,提供了一种图像处理方法,包括:根据待分割图像的当前第一椎间盘对应的关键点和实例分割模型,对所述待分割图像的椎骨掩模图像上的当前第二椎间盘相邻的至少一个当前椎节进行目标检测,以确定所述至少一个当前椎节所在位置,其中,所述椎骨掩模图像包括所述待分割图像的背景与椎骨的分割结果,一个当前第一椎间盘对应一个当前第二椎间盘;根据所述至少一个当前椎节所在位置,对所述至少一个当前椎节进行实例分割,以获得所述待分割图像的背景与所述至少一个当前椎节的实例分割结果。
根据本申请实施例的第二方面,提供了一种实例分割模型的训练方法,包括:获取样本图像上的第一椎间盘对应的关键点和所述样本图像的椎骨掩模样本图像,其中,所述椎骨掩模样本图像包括所述样本图像的背景与椎骨的分割结果;基于所述关键点和所述椎骨掩模样本图像,训练所述实例分割模型。
根据本申请实施例的第三方面,提供了一种图像处理装置,包括:目标检测模块,配置为根据待分割图像的当前第一椎间盘对应的关键点和实例分割模型,对所述待分割图像的椎骨掩模图像上的当前第二椎间盘相邻的至少一个当前椎节进行目标检测,以确定所述至少一个当前椎节所在位置,其中,所述椎骨掩模图像包括所述待分割图像的背景与椎骨的分割结果,一个当前第一椎间盘对应一个当前第二椎间盘;实例分割模块,配置为根据所述至少一个当前椎节所在位置,对所述至少一个当前椎节进行实例分割,以获得所述待分割图像的背景与所述至少一个当前椎节的实例分割结果。
根据本申请实施例的第四方面,提供了一种实例分割模型的训练装置,包括:获取模块,配置为获取样本图像上的第一椎间盘对应的关键点和所述样本图像的椎骨掩模样本图像,其中,所述椎骨掩模样本图像包括所述样本图像的背景与椎骨的分割结果;训练模块,配置为基于所述关键点和所述椎骨掩模样本图像,训练所述实例分割模型。
根据本申请实施例的第五方面,提供了一种电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;所述处理器用于执行上述任一实施例所述的方法。
根据本申请实施例的第六方面,提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序用于执行上述任一实施例所述的方法。
本申请的实施例所提供的一种图像处理方法,首先通过待分割图像的当前第一椎间盘对应的关键点和实例分割模型,对待分割图像的椎骨掩模图像上的当前第二椎间盘相邻的至少一个当前椎节进行目标检测,可以确定所述至少一个当前椎节所在位置,再通过所述至少一个当前椎节所在位置,对所述至少一个当前椎节进行实例分割,可以获得所述待分割图像的背景与所述至少一个当前椎节的实例分割结果。这样,能够避免在对椎节进行分割时出现欠分割、过分割等现象。
附图说明
通过结合附图对本申请实施例进行更详细的描述,本申请的上述以及其他目的、特征和优势将变得更加明显。附图用来提供对本申请实施例的进一步理解,并且构成说明书的一部分,与本申请实施例一起用于解释本申请,并不构成对本申请的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
图1所示为本申请实施例所提供的图像分类、目标检测、语义分割与实例分割的概念示意图。
图2所示为本申请实施例所提供的一种实施环境的示意图。
图3所示为本申请一个实施例提供的图像处理系统的示意图。
图4所示为本申请一个实施例提供的图像处理方法的流程示意图。
图5所示为本申请一个实施例提供的实例分割结果的示意图。
图6所示为本申请另一个实施例提供的图像处理方法的流程示意图。
图7所示为本申请一个实施例提供的高斯球的示意图。
图8所示为本申请另一个实施例提供的图像处理方法的流程示意图。
图9所示为本申请另一个实施例提供的图像处理方法的流程示意图。
图10所示为本申请一个实施例提供的椎间盘和椎节的位置关系的示意图。
图11所示为本申请另一个实施例提供的图像处理方法的流程示意图。
图12所示为本申请一个实施例提供的已经预测的第二椎间盘和当前第二椎间盘的关系的示意图。
图13所示为本申请一个实施例提供的实例分割模型的训练方法的流程示意图。
图14至图21所示为本申请一些实施例提供的图像处理装置的框图。
图22和图23所示为本申请一些实施例提供的实例分割模型的训练装置的框图。
图24所示为本申请一个实施例提供的电子设备的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
申请概述
深度学习通过建立具有阶层结构的人工神经网络,在计算系统中实现人工智能。由于阶层结构的人工神经网络能够对输入信息进行逐层提取和筛选,因此深度学习具有表征学习能力,可以实现端到端的监督学习和非监督学习。深度学习所使用的阶层结构的人工神经网络具有多种形态,其阶层的复杂度被通称为“深度”,按构筑类型,深度学习的形式包括多层感知器、卷积神经网络、循环神经网络、深度置信网络和其它混合构筑。深度学习使用数据对其构筑中的参数进行更新以达成训练目标,该过程被通称为“学习”,深度学习提出了一种让计算机自动学习出模式特征的方法,并将特征学习融入到了建立模型的过程中,从而减少了人为设计特征造成的不完备性。
神经网络是一种运算模型,由大量的节点(或称神经元)之间相互连接构成,每个节点对应一个策略函数,每两个节点间的连接代表一个对于通过该连接信号的加权值,称之为权重。神经网络一般包括多个神经网络层,上下网络层之间相互级联,第i个神经网络层的输出与第i+1个神经网络层的输入相连,第i+1个神经网络层的输出与第i+2个神经网络层的输入相连,以此类推。训练样本输入具有分支结构的神经网络层后,通过每个神经网络层输出一个输出结果,该输出结果作为下一个神经网络层的输入,由此,通过多个神经网络层计算获得输出,比较输出层的输出的预测结果与真正的目标值,再根据预测结果与目标值之间的差异情况来调整每一层的权重矩阵和策略函数,神经网络利用训练样本不断地经过上述调整过程,使得神经网络的权重等参数得到调整,直到神经网络输出的预测结果与真正的目标结果相符,该过程就被称为神经网络的训练过程。神经网络经过训练后,可得到神经网络模型。
近年来,深度神经网络在图像、视频等视觉信号的自动化理解方面取得优异的表现。目前,计算机视觉的任务包括图像分类(imageclassification)、目标检测(objectdetection)、语义分割(semanticsegmentation)与实例分割(instancesegmentation)等任务。下面以图1为例,对图像分类、目标检测、语义分割与实例分割进行解释说明。如图1所示,图片中含有1个人、2只狗与1只猫。
图像分类是指对图像中的目标物体进行分类,以判断出每个目标物体所属的分类。例如,在学习分类中数据集有人、羊、狗和猫四种,图像分类就是要得到(或输出)给定的一个图片中含有哪些目标物体的分类。例如,如图1左上角所示的例子中,图像分类任务的输出是标注出图片中的分类:人、猫、狗。
目标检测就是求出图片里面有什么目标物体,以及这些目标物体的位置(例如,把目标物体用检测框,例如,矩形框,框住)。例如,如图1右上角所示的例子中,目标检测任务的输出为标注出图片中的1个人、2只狗、1只猫各自的边界框(矩形框)。
语义分割是指需要区分到图片中的每一点像素点,而不仅仅是用矩形框框住目标物体,但是同一目标物体的不同实例不需要单独分割出来。例如,如图1左下角所示的例子中,语义分割任务的输出是标注出图片中的人,狗,猫,但不需要标注出狗1与狗2。
实例分割是指目标检测和语义分割的结合。相对于目标检测的边界框,实例分割可精确到物体的边缘,相对于语义分割,实例分割需要标注出图上同一目标物体的不同实例。例如,如图1右下角所示的例子中,人有1个实例,狗有2个实例,猫有1个实例,实例分割任务要把这些实例都分别标注出来。
通常情况下,把这些实例都分别分割出来需要两个串行的步骤,首先要进行目标检测,以标注出各实例的边界框,然后对边界框中的实例进行实例分割,以得到每个实例的分割结果。
现有的椎节分割方法一般是通过深度学习进行语义分割或者实例分割,但是由于不同人脊椎密度、形态差异较大,且对于不同的ct机,成像效果差异也较大,故经常出现欠分割、过分割等现象。
现有的椎节的实例分割均是通过如上所述的方式进行,即,对各个椎节进行目标检测,以标注出各椎节的边界框,然后对边界框中的椎节进行实例分割,以得到每个椎节的实例分割结果。但是在对椎节进行目标检测时,得到的边界框很可能包含多个椎节,或者包含半个椎节,也就是说,现有的目标检测所得到的边界框并不能够准确地将各个椎节标注出来,这样得到的实例分割结果是不准确的,容易出现对椎节的欠分割、过分割等现象。
在介绍了本申请的基本原理之后,下面将参考附图来具体介绍本申请的各种非限制性实施例。
示例性系统
图2是本申请实施例所提供的一种实施环境的示意图。该实施环境包括ct扫描仪230、服务器220和计算机设备210。计算机设备210可以从ct扫描仪230处获取胸腹ct图像,同时,计算机设备210还可以与服务器220之间通过通信网络相连。可选的,通信网络是有线网络或无线网络。
ct扫描仪230用于对人体组织进行x线扫描,得到人体组织的ct图像。在一实施例中,通过ct扫描仪230对胸腹部进行扫描,可以得到胸腹部x线正位片,即本申请中的胸腹ct图像。
计算机设备210可以是通用型计算机或者由专用的集成电路组成的计算机装置等,本申请实施例对此不做限定。例如,计算机设备210可以是平板电脑等移动终端设备,或者也可以是个人计算机(personalcomputer,pc),比如膝上型便携计算机和台式计算机等等。本领域技术人员可以知晓,上述计算机设备210的数量可以一个或多个,其类型可以相同或者不同。比如上述计算机设备210可以为一个,或者上述计算机设备210为几十个或几百个,或者更多数量。本申请实施例对计算机设备210的数量和设备类型不加以限定。
服务器220是一台服务器,或者由若干台服务器组成,或者是一个虚拟化平台,或者是一个云计算服务中心。
在一些可选的实施例中,计算机设备210中可以部署有实例分割模型,用于对胸腹ct图像进行实例分割。首先,计算机设备210可以利用其上部署的实例分割模型和从ct扫描仪230处获取的胸腹ct图像的第一椎间盘对应的关键点,对胸腹ct图像的椎骨掩模图像上的第二椎间盘相邻的椎节进行目标检测,以确定第二椎间盘相邻的椎节所在位置。然后,计算机设备210再利用其上部署的实例分割模型和第二椎间盘相邻的椎节所在位置,对所述第二椎间盘相邻的椎节进行实例分割,以获得胸腹ct图像的背景与椎节的实例分割结果。这样,能够避免在对椎节进行分割时出现欠分割、过分割等现象。
在一些可选的实施例中,服务器220利用胸腹ct样本图像对神经网络进行训练,以得到实例分割模型。计算机设备210可以将其从ct扫描仪230获取到的胸腹ct图像发送给服务器220。首先,服务器220可以实例分割模型和从计算机设备210处获取的胸腹ct图像的第一椎间盘对应的关键点,对胸腹ct图像的椎骨掩模图像上的第二椎间盘相邻的椎节进行目标检测,以确定第二椎间盘相邻的椎节所在位置。然后,服务器220再利用实例分割模型和第二椎间盘相邻的椎节所在位置,对所述第二椎间盘相邻的椎节进行实例分割,以获得胸腹ct图像的背景与椎节的实例分割结果,并将实例分割结果发送给计算机设备210,以供医护人员查看。这样,能够避免在对椎节进行分割时出现欠分割、过分割等现象。
图3是本申请一个实施例提供的图像处理系统的框图。如图3所示,该系统包括:
第三语义分割模型31,用于对待分割图像a进行语义分割,获得二分类骨骼的掩模图像b;
第二语义分割模型32,用于对二分类骨骼的掩模图像b进行语义分割,获得椎骨掩模图像c;
第一语义分割模型33,用于对椎骨掩模图像c进行语义分割,获得椎间盘掩模图像d;
关键点获取模块34,用于根据椎间盘掩模图像d,获取待分割图像a的椎间盘对应的关键点e;
实例分割模型35,用于根据待分割图像a的椎间盘对应的关键点e和椎骨掩模图像c,获得待分割图像a的背景和椎节的实例分割结果f。
参照图3中带箭头实线所示的数据流向,以此方式来获取本实施例中的实例分割结果f。
示例性方法
图4是本申请一个实施例提供的图像处理方法的流程示意图。图4所述的方法由计算设备(例如,服务器)来执行,但本申请实施例不以此为限。服务器可以是一台服务器,或者由若干台服务器组成,或者是一个虚拟化平台,或者是一个云计算服务中心,本申请实施例对此不作限定。如图4所示,该方法包括如下内容。
s410:根据待分割图像的当前第一椎间盘对应的关键点和实例分割模型,对所述待分割图像的椎骨掩模图像上的当前第二椎间盘相邻的至少一个当前椎节进行目标检测,以确定所述至少一个当前椎节所在位置。
在一实施例中,该待分割图像可以是指原始胸腹部医学影像,其可以是通过计算机断层扫描摄影(computedtomography,ct)、计算机x线摄影(computedradiography,cr)、数字化x线摄影(digitalradiography,dr)、核磁共振或超声等技术直接获得的影像。
在一实施例中,该待分割图像也可以是指经过预处理后的图像,预处理后的图像可以是指对原始胸腹部医学影像进行预处理后,得到的医学影像。但是本申请实施例并不具体限定预处理的具体实现方式,预处理可以是指灰度归一化、去噪处理或图像增强处理等。
在一实施例中,该待分割图像可以是三维胸腹部平扫ct影像,也可以是三维胸腹部平扫ct影像中的一部分三维医学影像(即,3d块),还可以是三维胸腹部平扫ct影像中的一层二维医学影像,本申请实施例对此并不作具体限定。
在一实施例中,椎骨掩模图像包括待分割图像的背景与椎骨的分割结果,也就是说,对待分割图像进行椎骨的分割,可以获得背景与椎骨的分割结果,再利用预设阈值,对背景与椎骨的分割结果进行二值化处理,可以得到椎骨掩模图像,即,该椎骨掩模图像上的各个像素点可以用0或1进行表示,1表示椎骨区域的像素点,0表示背景区域的像素点。
例如,通过如下方式来获取椎骨掩模图像:将所述待分割图像输入第三语义分割模型,以获得所述二分类骨骼的掩模图像;将所述待分割图像的二分类骨骼的掩模图像输入第二语义分割模型,以获得所述椎骨掩模图像,其中,所述二分类骨骼的掩模图像包括所述待分割图像的背景和骨骼的分割结果。
该二分类骨骼的掩模图像上的各个像素点可以用0或1进行表示,1表示骨骼区域的像素点,0表示背景区域的像素点。
在对椎骨进行分割时,只是将二分类骨骼的掩模图像输入到第二语义分割模型,而没有将待分割图像输入到第二语义分割模型,这是因为不同的待分割图像的差异较大(例如,骨质疏松的病人的ct图像,或者ct剂量较低的ct图像),容易造成过拟合,而只输入二分类骨骼的掩模图像,可以使第二语义分割模型通过骨骼形状,来判断椎骨的位置,从而提高了鲁棒性,减少缺失、假阳等现象。同时,在对骨骼进行二分类时,由于骨骼的灰度比较固定,所以第三语义分割模型很容易训练得到。
第二语义分割模型不仅可以输出背景和椎骨的二分类的分割结果,还可以输出经过argmax算子,得到多类骨骼的分割结果,即,椎骨、肋骨等不同骨骼与背景的分割结果,对多类骨骼的分割结果进行如上所述的二值化处理,可以得到该椎骨掩模图像。
在一实施例中,第一椎间盘对应的关键点可以理解为是第一椎间盘上的一个实体的目标点或者一个像素点,该目标点可以位于第一椎间盘的任意位置,例如,位于椎间盘的重心。
在一实施例中,通过对待分割图像进行处理,可以获得待分割图像的第一椎间盘对应的关键点,但是需要说明的是,本申请实施例并不具体限定如何对待分割图像进行处理。
例如,可以通过如下方式获得待分割图像的第一椎间盘对应的关键点:将椎骨掩模图像输入第一语义分割模型,以获得椎间盘掩模图像;对当前第一椎间盘进行连通域提取,以获得与当前第一椎间盘对应的连通域;确定连通域上的预设点为所述当前第一椎间盘对应的关键点。
通过第一语义分割模型,可以将椎骨掩模图像中的多个第一椎间盘分割出来,但是并不对各个第一椎间盘进行分类,从而得到待分割图像的背景和第一椎间盘的分割结果,对背景和第一椎间盘的分割结果进行如上所述的二值化处理,可以得到该椎间盘掩模图像。
在对待分割图像的第一椎间盘进行分割时,只是将椎骨掩模图像输入到第一语义分割模型,而没有将待分割图像直接输入到第一语义分割模型,这是因为不同的待分割图像的差异较大(例如,骨质疏松的病人的ct图像,或者ct剂量较低的ct图像),容易造成过拟合,而只输入椎骨掩模图像,可以使第一语义分割模型通过肋骨、椎骨形状、椎节间缝隙等特征,来得到第一椎间盘的分割结果,从而提高了鲁棒性,减少缺失、假阳等现象。
需要说明的是,本申请实施例并不限定第一语义分割模型、第二语义分割模型以及第三语义分割模型的具体网络结构,本领域技术人员可以根据实际需求,进行不同的选择,例如,unet、deeplab等网络。
在一实施例中,第一语义分割模型、第二语义分割模型以及第三语义分割模型可以通过3d的神经网络进行训练得到的3d模型。在训练3d模型时,可以对样本图像截取3d块(patch),再进行训练。而预测的过程中,对待分割图像进行滑窗,截取3d块,再将3d块输入3d模型中进行预测,将预测的结果进行拼接,得到相应的掩模图像。
对于第三语义分割模型,该模型的输入是灰度图像,由于该模型对感受野要求不高,为了节省显存占用,提高训练测试的速度,故该模型采用随机截取较小块的方式进行训练。
对于第二语义分割模型,该模型的输入是二分类骨骼的掩模图像,由于该模型是通过骨骼的形状进行预测,需要大的感受野,故该模型采用随机截取较大块的方式进行训练。考虑到对骨骼的分割,其分割精度要求不高,可以先对二分类骨骼的掩模图像进行降采样,再截取较大比例的块。
对于第一语义分割模型,该模型的输入是椎骨掩模图像,由于该模型的输入可以仅截取椎骨掩模图像的椎骨附近的3d块,且为了增大感受野,保证鲁棒性,每一个3d块包括至少两个椎节,但是本申请对包含的椎节的个数不作具体限定。
对于实例分割模型,该模型也可以通过3d的神经网络进行训练得到的3d模型,该模型的输入至少包括椎骨掩模图像。该模型的输入可以以关键点为中心,对椎骨掩模图像截取3d块,且截取的3d块包括至少两个椎节,但是本申请对包含的椎节的个数不作具体限定。
但是需要说明的是,本申请实施例并不具体限定连通域提取的具体实现形式,例如,可以采用从局部到整体,逐个检查每个连通成分,确定一个“起始点”,再向周围邻域扩展地填入标记;还可以采用从整体到局部,先确定不同的连通成分,再对每一个连通成分用区域填充方法填入标记。这两类算法操作的最终目的就是把白色像素和黑色像素组成的一幅点阵椎间盘掩模图像中,将互相邻接的目标“1”值的像素集合提取出来,标记为椎间盘区域,将互相邻接的目标“0”值的像素集合提取出来,标记为背景区域。
在得到第一椎间盘对应的连通域后,可以确定连通域上的预设点为第一椎间盘对应的关键点,但是本申请实施例并不具体限限定预设点的具体位置,可以为连通域的重心,也可以为连通域的边缘。
再例如,还可以通过如下方式获得待分割图像的第一椎间盘对应的关键点:将待分割图像输入检测模型,以获得当前第一椎间盘对应的检测框;确定检测框上的预设点为当前第一椎间盘对应的关键点。
该检测模型可以通过3d检测网络训练得到的,例如,3d的faster-rcnn、yolo系列网络或者其他anchor-free网络等等,本申请实施例对此并不作具体限定。
该检测框包括第一椎间盘的起始点(x,y,z)以及大小(w,h,d),再根据检测框的起始点和大小,计算检测框上的预设点的位置,确定检测框上的预设点为第一椎间盘对应的关键点,但是本申请实施例并不具体限限定预设点的具体位置,可以为检测框的重心,也可以为检测框的边缘。
基于上,与通过检测框的方式获取关键点相比,通过连通域提取的方式获取关键点,可以使关键点的获取更加地准确,因为当椎间盘不完整时,检测框可能会无法准确的将椎间盘框出来,也就无法得到准确的关键点。
在一实施例中,一个当前第一椎间盘对应一个当前第二椎间盘,因此,基于待分割图像上的每个第一椎间盘对应的关键点和与第一椎间盘对应的椎骨掩模图像上的第二椎间盘,均可以得到椎骨掩模图像上的每个第二椎间盘相邻的至少一个椎节所在的位置。但是需要说明的是,本申请实施例并不具体限定至少一个椎节的具体数量,可以为一个,也可以为两个。
因此,利用待分割图像上的第一椎间盘对应的关键点,能够准确地对椎骨掩模图像上的第二椎间盘相邻的至少一个椎节进行定位,从而避免出现现有的目标检测所得到的边界框不能够准确地将各个椎节标注出来的情况,进而能够避免在对椎节进行分割时出现欠分割、过分割等现象。
s420:根据所述至少一个当前椎节所在位置,对所述至少一个当前椎节进行实例分割,以获得所述待分割图像的背景与所述至少一个当前椎节的实例分割结果。
在一实施例中,通过步骤s410中的目标检测,定位出椎骨掩模图像上的每个第二椎间盘相邻的至少一个椎节所在的位置后,实例分割模型还可以对个第二椎间盘相邻的至少一个椎节进行实例分割,即,不仅将至少一个椎节分割出来,还对至少一个椎节进行分类,从而得到待分割图像的背景与多个椎节的实例分割结果。如图5所示为待分割图像的背景与多个椎节的实例分割结果,其中,不同椎节用不同的颜色来表示,即,不同椎节的灰度值不同,有的椎节的颜色为灰白色,有的椎节的颜色为黑色,有的椎节的颜色为白色。
在本申请另一个实施例中,如图6所示的方法是图4所示方法中的步骤s410的示例,如图6所示的方法包括如下内容。
s610:对所述当前第一椎间盘对应的关键点进行高斯映射处理,以获得所述当前第一椎间盘对应的高斯球。
在一实施例中,该高斯球是以关键点为球心,球心的值为1,离球心越远值越小,灰度呈高斯分布,如图7所示为高斯球的示意图。
该高斯球可以理解为一个概率图,距离第一椎间盘的中心较近的像素点的灰度值比较大,距离第一椎间盘的中心较远的像素点的灰度值比较小,这样实例分割模型能够学到由于灰度值不同而产生的距离信息,从而提高目标检测的精度。而且当关键点出现偏移的情况,通过高斯球学习得到的实例分割模型的鲁棒性更高。
s620:将所述高斯球和所述椎骨掩模图像输入所述实例分割模型,确定所述当前第二椎间盘所在位置。
在一实施例中,将高斯球和椎骨掩模图像输入实例分割模型中进行目标检测,由于一个高斯球对应椎骨掩模图像上的一个第二椎间盘,因此,通过该高斯球,可以在椎骨掩模图像上确定出当前第二椎间盘所在位置。
s630:根据所述当前第二椎间盘所在位置,确定所述至少一个当前椎节所在位置。
在一实施例中,由于一个高斯球还对应椎骨掩模图像上的一个第二椎间盘相邻的至少一个椎节,因此,通过该高斯球和当前第二椎间盘所在位置,可以在椎骨掩模图像上确定出当前第二椎间盘相邻的至少一个当前椎节所在位置。
在本申请另一个实施例中,如图8所示的方法是图4所示方法中的步骤s410的示例,如图8所示的方法包括如下内容。
s810:将所述当前第一椎间盘对应的关键点和所述椎骨掩模图像输入所述实例分割模型,确定所述当前第二椎间盘所在位置。
在一实施例中,该关键点对应的像素点的灰度值为1,其他位置对应的像素点的灰度值为0。
在一实施例中,将当前第一椎间盘对应的关键点和椎骨掩模图像输入实例分割模型中进行目标检测,由于一个第一椎间盘对应的关键点对应椎骨掩模图像上的一个第二椎间盘,因此,通过该当前第一椎间盘对应的关键点,可以在椎骨掩模图像上确定出当前第二椎间盘所在位置。
s820:根据所述当前第二椎间盘所在位置,确定所述至少一个当前椎节所在位置。
在一实施例中,由于一个第一椎间盘对应的关键点还对应椎骨掩模图像上的一个第二椎间盘相邻的至少一个椎节,因此,通过该关键点和当前第二椎间盘所在位置,可以在椎骨掩模图像上确定出当前第二椎间盘相邻的至少一个当前椎节所在位置。
除了图6和图8所示的将关键点或者高斯球与椎骨掩模图像输入实例分割模型外,还可以将待分割图像一起输入到实例分割模型中,其作为分割时的分割标准,从而进一步提高实例分割模型的分割的准确性和鲁棒性。
在本申请另一个实施例中,当至少一个当前椎节包括所述当前第二椎间盘上方的第一椎节和所述当前第二椎间盘下方的第二椎节时,如图9所示,步骤s420包括如下内容。
在一实施例中,利用如图6所示的方法或者如图8所示方法,对至少一个当前椎节进行目标检测后,可以定位出椎骨掩模图像上的当前第二椎间盘上方的第一椎节所在的位置和当前第二椎间盘下方的第二椎节所在的位置。实例分割模型再根据第一椎节所在的位置和第二椎节所在的位置,可以对第一椎节和第二椎节进行实例分割,以输出待分割图像的背景、第一椎节和第二椎节的三分类分割结果。
如图10可以看出,每两个椎节1040与1050、1060与1040、1050与1070之间具有一个第二椎间盘1010、1020、1030,相邻的两个第二椎间盘之间具有相互重叠的一个椎节,例如,第二椎间盘1010上方的椎节1040和第二椎间盘1020下方的椎节1040。因此,椎骨掩模图像上的每个椎节均被实例分割模型预测两次,这样能够提高分割的精度,同时,当第一椎间盘对应的关键点有缺失时(尤其是最顶部和最底部位置的关键点很容易分割缺失),椎节分割不会缺失。
s910:根据所述第一椎节所在位置,对所述第一椎节进行实例分割,以获得所述背景与所述第一椎节的当前第一分割结果。
在一实施例中,实例分割模型根据第一椎节所在位置,对第一椎节进行实例分割,以获得背景与第一椎节的当前第一分割结果。
s920:根据所述第二椎节所在位置,对所述第二椎节进行实例分割,以获得所述背景与所述第二椎节的当前第二分割结果。
在一实施例中,实例分割模型根据第二椎节所在位置,对第二椎节进行实例分割,以获得背景与第二椎节的当前第二分割结果。
s930:根据所述当前第一分割结果和所述当前第二分割结果,确定所述实例分割结果。
在一实施例中,将当前第一分割结果和当前第二分割结果进行融合,可以确定该实例分割结果,该实例分割结果融合有当前第一分割结果和当前第二分割结果的和,也就是说,该实例分割结果为待分割图像的背景、第一椎节和第二椎节的三分类分割结果。
但是需要说明的是,本申请实施例并不具体限定融合的具体实现形式,可以将第二分割结果和第一分割结果取平均,得到融合分割结果,也可以将第二分割结果和第一分割结果取并集,得到融合分割结果。
在本申请另一个实施例中,如图11所示,步骤s930包括如下内容。
s1110:根据所述当前第一分割结果和所述当前第二椎间盘之前的第二椎间盘相邻的椎节的分割结果之间的第一交并比和预设阈值,确定与所述第一椎节对应的实例分割结果。
如图12所示,当前第二椎间盘1210之前的第二椎间盘1220、1230等椎间盘已经被实例分割模型预测过,也就是说,第二椎间盘1220相邻的椎节1240、1260,第二椎间盘1230相邻的椎节1250、1260等等椎节已经得到了相应的分割结果。
在一实施例中,所述方法还包括:计算当前第一分割结果与所述当前第二椎间盘之前的已经预测过的多个第二椎间盘相邻的椎节的分割结果之间的交并比;确定所述交并比中的最大交并比为所述第一交并比。
需要说明的是,本申请实施例并不具体限定已经预测过的多个第二椎间盘的数量,例如,可以为在当前第二椎间盘之前已经预测过的所有第二椎间盘。
在一实施例中,交并比为当前第一分割结果与已经预测过的一第二椎间盘相邻的椎节的分割结果的交集和并集的比,交并比越大,表示当前第一分割结果和该第二椎间盘相邻的椎节的分割结果的重叠度越大,交并比越小,表示当前第一分割结果和该第二椎间盘相邻的椎节的分割结果的重叠度越小。
在交并比最大时,所得到的最大交并比为第一交并比,这表示当前第一分割结果和该第二椎间盘相邻的椎节的分割结果为同一个椎节(即,第一椎节)的分割结果的可能性越大,因此,通过将第一交并比与预设阈值进行比较,能够确定出当前第一分割结果和该第二椎间盘相邻的椎节的分割结果是否为同一个椎节的分割结果,从而得到第一椎节对应的实例分割结果。
但是需要说明的是,本申请实施例并不具体限定预设阈值的具体取值,本领域技术人员可以根据实际需求,进行不同的选择。
s1120:根据所述当前第二分割结果和所述当前第一椎间盘之前的第二椎间盘相邻的椎节的分割结果之间的第二交并比和所述预设阈值,确定与所述第二椎节对应的实例分割结果。
在一实施例中,所述方法还包括:计算当前第二分割结果与所述当前第二椎间盘之前的已经预测过的多个第二椎间盘相邻的椎节的分割结果之间的交并比;确定所述交并比中的最大交并比为所述第二交并比。
在一实施例中,在交并比最大时,所得到的最大交并比为第二交并比,这表示当前第二分割结果和已经预测过的一第二椎间盘相邻的椎节的分割结果为同一个椎节(即,第二椎节)的分割结果的可能性越大,因此,通过将第二交并比与预设阈值进行比较,能够确定出当前第二分割结果和该第二椎间盘相邻的椎节的分割结果是否为同一个椎节的分割结果,从而得到第二椎节对应的实例分割结果。
s1130:确定与所述第一椎节对应的实例分割结果和与所述第二椎节对应的实例分割结果为所述实例分割结果。
在一实施例中,将第一椎节对应的实例分割结果和第二椎节对应的实例分割结果取并集或者拼接,即可得到实例分割结果。
在本申请另一个实施例中,步骤s1110包括:当所述第一交并比小于所述预设阈值时,确定所述当前第一分割结果为与所述第一椎节对应的实例分割结果;当所述第一交并比大于所述预设阈值时,确定所述当前第一分割结果和所述分割结果融合后的第一融合结果为与所述第一椎节对应的实例分割结果。
当第一交并比小于预设阈值时,这表示当前第一分割结果和该第二椎间盘相邻的椎节的分割结果不是同一个椎节的分割结果,那么可以直接确定该当前第一分割结果为第一椎节对应的实例分割结果。
当第一交并比大于预设阈值时,这表示当前第一分割结果和该第二椎间盘相邻的椎节的分割结果是同一个椎节的分割结果,那么将当前第一分割结果和该分割结果进行融合,得到所述第一融合结果,再将第一融合结果确定为第一椎节对应的实例分割结果。
在本申请另一个实施例中,步骤s1120包括:当所述第二交并比小于所述预设阈值时,确定所述当前第二分割结果为与所述第二椎节对应的实例分割结果;当所述第二交并比大于所述预设阈值时,确定所述当前第二分割结果和所述分割结果融合后的第二融合结果为与所述第二椎节对应的实例分割结果。
当第二交并比小于预设阈值时,这表示当前第二分割结果和该第二椎间盘相邻的椎节的分割结果不是同一个椎节的分割结果,那么可以直接确定该当前第二分割结果为第二椎节对应的实例分割结果。
当第二交并比大于预设阈值时,这表示当前第二分割结果和该第二椎间盘相邻的椎节的分割结果是同一个椎节的分割结果,那么将当前第二分割结果和该分割结果进行融合,得到所述第二融合结果,再将第二融合结果确定为第二椎节对应的实例分割结果。
但是需要说明的是,本申请实施例并不具体限定融合的具体实现方式。
以此类推,遍历椎骨掩模图像上的每个第二椎间盘,对每个第二椎间盘相邻的两个椎节均执行如上步骤s910至s930,能够得到待分割图像的背景和所有椎节的实例分割结果。
图13是本申请一个实施例提供的实例分割模型的训练方法的流程示意图。图13所述的方法由计算设备(例如,服务器)来执行,但本申请实施例不以此为限。服务器可以是一台服务器,或者由若干台服务器组成,或者是一个虚拟化平台,或者是一个云计算服务中心,本申请实施例对此不作限定。如图13所示,该方法包括如下内容。
s1310:获取样本图像上的第一椎间盘对应的关键点和所述样本图像的椎骨掩模样本图像,其中,所述椎骨掩模样本图像包括所述样本图像的背景与椎骨的分割结果。
本实施例中的样本图像、样本图像上的第一椎间盘对应的关键点、椎骨掩模样本图像均与上述图4所示的方法中的待分割图像、待分割图像上的第一椎间盘对应的关键点、椎骨掩模图像相同,在此不再赘述。
本实施例中获取样本图像上的第一椎间盘对应的关键点、椎骨掩模样本图像的方法与上述图4所示的获取待分割图像上的第一椎间盘对应的关键点、椎骨掩模图像的方法相同,在此不再赘述。
s1320:基于所述关键点和所述椎骨掩模样本图像,训练所述实例分割模型。
在一实施例中,将关键点和椎骨掩模样本图像直接输入实例分割模型进行训练。在另一实施例中,对关键点进行高斯映射处理,以确定与关键点对应的高斯球,再将高斯球和椎骨掩模样本图像输入实例分割模型进行训练。
在本申请另一个实施例中,步骤s1320包括:根据所述关键点,对所述椎骨掩模样本图像上的第二椎间盘相邻的至少一个椎节进行目标检测,以确定所述至少一个椎节所在位置,其中,一个第一椎间盘对应一个第二椎间盘;根据所述至少一个椎节所在位置,对所述至少一个椎节进行实例分割,以获得所述样本图像的背景与所述至少一个椎节的实例分割结果;根据所述实例分割结果和所述样本图像上的训练标签的差异,训练所述实例分割模型。
本实施例中确定至少一个椎节所在位置的方法与上述图6和8所示的确定至少一个椎节所在位置的方法相同,在此不再赘述。
本实施例中对至少一个椎节进行实例分割的方法与上述图4所示的对至少一个椎节进行实例分割的方法相同,在此不再赘述。
在一实施例中,利用损失函数,计算实例分割结果和样本图像上的训练标签的差异,可以得到损失函数值。将损失函数值进行梯度反传,以更新实例分割模型的参数,例如权重,偏值等,本申请对此不做限定。
示例性装置
本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
图14所示为本申请一个实施例提供的图像处理装置的框图。如图14所示,该装置1400包括:
目标检测模块1410,配置为根据待分割图像的当前第一椎间盘对应的关键点和实例分割模型,对所述待分割图像的椎骨掩模图像上的当前第二椎间盘相邻的至少一个当前椎节进行目标检测,以确定所述至少一个当前椎节所在位置,其中,所述椎骨掩模图像包括所述待分割图像的背景与椎骨的分割结果,一个当前第一椎间盘对应一个当前第二椎间盘;
实例分割模块1420,配置为根据所述至少一个当前椎节所在位置,对所述至少一个当前椎节进行实例分割,以获得所述待分割图像的背景与所述至少一个当前椎节的实例分割结果。
在本申请另一个实施例中,如图15所示,目标检测模块1410可以包括:
高斯处理单元1411,配置为对所述当前第一椎间盘对应的关键点进行高斯映射处理,以获得所述当前第一椎间盘对应的高斯球;
第一输入单元1412,配置为将所述高斯球和所述椎骨掩模图像输入所述实例分割模型,确定所述当前第二椎间盘所在位置;
第一确定单元1413,配置为根据所述当前第二椎间盘所在位置,确定所述至少一个当前椎节所在位置。
在本申请另一个实施例中,如图16所示,目标检测模块1410还可以包括:
第二输入单元1414,配置为将所述当前第一椎间盘对应的关键点和所述椎骨掩模图像输入所述实例分割模型,确定所述当前第二椎间盘所在位置;
第二确定单元1415,配置为根据所述当前第二椎间盘所在位置,确定所述至少一个当前椎节所在位置。
在本申请另一个实施例中,如图17所示,在所述至少一个当前椎节包括所述当前第二椎间盘上方的第一椎节和所述当前第二椎间盘下方的第二椎节时,实例分割模块1420包括:
第一实例分割单元1421,配置为根据所述第一椎节所在位置,对所述第一椎节进行实例分割,以获得所述背景与所述第一椎节的当前第一分割结果;
第二实例分割单元1422,配置为根据所述第二椎节所在位置,对所述第二椎节进行实例分割,以获得所述背景与所述第二椎节的当前第二分割结果;
第一确定单元1423,配置为根据所述当前第一分割结果和所述当前第二分割结果,确定所述实例分割结果。
在本申请另一个实施例中,如图18所示,第一确定单元1423可以包括:
第一比较子单元14231,配置为根据所述当前第一分割结果和所述当前第二椎间盘之前的第二椎间盘相邻的椎节的分割结果之间的第一交并比和预设阈值,确定与所述第一椎节对应的实例分割结果;
第二比较子单元14232,配置为根据所述当前第二分割结果和所述当前第一椎间盘之前的第二椎间盘相邻的椎节的分割结果之间的第二交并比和所述预设阈值,确定与所述第二椎节对应的实例分割结果;
确定子单元14233,配置为确定与所述第一椎节对应的实例分割结果和与所述第二椎节对应的实例分割结果为所述实例分割结果。
在本申请另一个实施例中,第一比较子单元14231具体配置为:当所述第一交并比小于所述预设阈值时,确定所述当前第一分割结果为与所述第一椎节对应的实例分割结果;当所述第一交并比大于所述预设阈值时,确定所述当前第一分割结果和所述分割结果融合后的第一融合结果为与所述第一椎节对应的实例分割结果。
在本申请另一个实施例中,第二比较子单元14232具体配置为:当所述第二交并比小于所述预设阈值时,确定所述当前第二分割结果为与所述第二椎节对应的实例分割结果;当所述第二交并比大于所述预设阈值时,确定所述当前第二分割结果和所述分割结果融合后的第二融合结果为与所述第二椎节对应的实例分割结果。
在本申请另一个实施例中,如图19所示,图14所示的装置还包括:
第二输入模块1430,配置为将所述椎骨掩模图像输入第一语义分割模型,以获得所述椎间盘掩模图像,其中,所述椎间盘掩模图像包括所述待分割图像的背景和第一椎间盘的分割结果;
连通域模块1440,配置为对所述当前第一椎间盘进行连通域提取,以获得与所述当前第一椎间盘对应的连通域;
第二确定模块1450,配置为确定所述连通域上的预设点为所述当前第一椎间盘对应的关键点。
在本申请另一个实施例中,如图20所示,图14所示的装置还包括:
第三输入模块1460,配置为将所述待分割图像输入检测模型,以获得所述当前第一椎间盘对应的检测框;
第三确定模块1470,配置为确定所述检测框上的预设点为所述当前第一椎间盘对应的关键点。
在本申请另一个实施例中,如图21所示,图14所示的装置还包括:
第四输入模块1480,配置为将所述待分割图像输入第三语义分割模型,以获得所述二分类骨骼的掩模图像;
第五输入模块1490,配置为将所述待分割图像的二分类骨骼的掩模图像输入第二语义分割模型,以获得所述椎骨掩模图像,其中,所述二分类骨骼的掩模图像包括所述待分割图像的背景和骨骼的分割结果。
图22所示为本申请一个实施例提供的实例分割模型的训练装置的框图。如图22所示,该训练装置2200包括:
获取模块2210,配置为获取样本图像上的第一椎间盘对应的关键点和所述样本图像的椎骨掩模样本图像,其中,所述椎骨掩模样本图像包括所述样本图像的背景与椎骨的分割结果;
训练模块2220,配置为基于所述关键点和所述椎骨掩模样本图像,训练所述实例分割模型。
在本申请另一个实施例中,如图23所示,训练模块2220包括:
目标检测单元2221,配置为根据所述关键点,对所述椎骨掩模样本图像上的第二椎间盘相邻的至少一个椎节进行目标检测,以确定所述至少一个椎节所在位置,其中,一个第一椎间盘对应一个第二椎间盘;
实例分割单元2222,配置为根据所述至少一个椎节所在位置,对所述至少一个椎节进行实例分割,以获得所述样本图像的背景与所述至少一个椎节的实例分割结果;
差异单元2223,配置为根据所述实例分割结果和所述样本图像上的训练标签的差异,训练所述实例分割模型。
示例性电子设备
下面,参考图24来描述根据本申请实施例的电子设备。图24图示了根据本申请实施例的电子设备的框图。
如图24所示,电子设备2400包括一个或多个处理器2410和存储器2420。
处理器2410可以是中央处理单元(cpu)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备2400中的其他组件以执行期望的功能。
存储器2420可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(ram)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(rom)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器2410可以运行所述程序指令,以实现上文所述的本申请的各个实施例的图像处理方法、实例分割模型的训练方法以及/或者其他期望的功能。在所述计算机可读存储介质中还可以存储诸如椎间盘掩模图像、椎骨掩模图像等各种内容。
在一个示例中,电子设备2400还可以包括:输入装置2430和输出装置2440,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。
例如,该输入装置2430可以是上述的麦克风或麦克风阵列,用于捕捉声源的输入信号。在该电子设备是单机设备时,该输入装置2430可以是通信网络连接器。
此外,该输入设备2430还可以包括例如键盘、鼠标等等。
该输出装置2440可以向外部输出各种信息,包括确定出的实例分割结果等。该输出设备2440可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
当然,为了简化,图24中仅示出了该电子设备2400中与本申请有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备2400还可以包括任何其他适当的组件。
示例性计算机程序产品和计算机可读存储介质
除了上述方法和设备以外,本申请的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本申请各种实施例的图像处理方法、实例分割模型的训练方法中的步骤。
所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本申请实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如java、c++等,还包括常规的过程式程序设计语言,诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
此外,本申请的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本申请各种实施例的图像处理方法、实例分割模型的训练方法中的步骤。
所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本申请的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。