掌桥专利:专业的专利平台
掌桥专利
首页

训练目标检测模型的方法、目标检测的方法及其装置

文献发布时间:2023-06-19 10:48:02


训练目标检测模型的方法、目标检测的方法及其装置

技术领域

本发明涉及医疗设备技术领域,具体涉及一种训练目标检测模型的方法、目标检测的方法及其装置。

背景技术

骨骼是人体的重要组织器官,是人体钙元素的存储部位,同时也是人体的重要造血器官,具有支持身体、保护内脏、完成运动和参与代谢等作用。椎骨分割通过对影像数据进行一定的操作,分割出椎体及椎间盘等的骨骼轮廓和位置等,椎骨分割在多个应用领域如治疗计划制定、辅助外科手术等方面起着关键的辅助作用。

电子计算机断层扫描(computed tomography,CT)图像是利用精确准直的X线束、γ射线及超声波等,与灵敏度极高的探测器一同围绕人体的某一部位作一个接一个的断面扫描,具有扫描时间快,图像清晰等特点,CT图像在临床实践中的应用非常广泛,可用于多种疾病的检查。

目前,一种常见的方法是使用深度学习方法得到的目标检测模型进行椎骨分割,但由于椎体和椎间盘的形态特点,在CT图像上椎体中一般也同时包含椎间盘,目标检测模型在训练过程中往往不易收敛,从而导致椎间盘的分割效果不够理想。

发明内容

有鉴于此,本发明实施例致力于提供一种训练目标检测模型的方法、目标检测的方法及其装置,以解决现有技术中目标检测模型在训练过程中不易收敛的问题。

第一方面,本发明提供了一种训练目标检测模型的方法,该方法包括:

获取训练图像的特征图;确定所述特征图中的预测框,所述预测框用于指示所述训练图像中的目标区域;确定所述预测框的候选损失值及所述候选损失值对应的权重,所述权重是根据所述预测框与真值之间的差异确定的;根据所述候选损失值及所述权重确定损失值;根据所述损失值训练所述目标检测模型。

在本发明实施例中,所述权重是根据所述预测框与真值之间的差异确定的,也就是说,在预测结果(即所述预测框与真值之间的差异)不同时,为所述候选损失值确定不同的权重,此时,根据该权重确定损失值,并根据所述损失值训练所述目标检测模型,解决现有技术中目标检测模型在训练过程中不易收敛的问题。

进一步地,使用本发明实施例中的方法训练后得到的目标检测模型,还可以提高椎间盘和椎体预测的准确率。

在一个实施例中,所述候选损失值包括所述预测框的类别的候选损失值和所述预测框的偏移量的候选损失值。

在一个实施例中,所述预测框包括椎体对应的第一预测框和椎间盘对应的第二预测框中的至少一项,所述真值包括椎体和椎间盘中的至少一项。

在一个实施例中,所述确定所述预测框的候选损失值及所述候选损失值对应的权重,包括:

根据真值确定所述候选损失值;在所述真值为椎间盘的边界框、所述第二预测框的类别不为椎间盘的情况下,增大所述第二预测框的候选损失值对应的权重和/或减小所述第一预测框的候选损失值对应的权重;在所述真值为椎体、所述第一预测框的类别为椎体的情况下,将所述第一预测框的候选损失值及所述第二预测框的候选损失值对应的权重均置为0;在其他情况下,所述第一预测框的候选损失值对应的权重和所述第二预测框的候选损失值对应的权重均为预设值。

在一个实施例中,所述根据所述候选损失值及所述权重确定损失值,包括:

在所述真值为椎间盘、所述第二预测框的类别不为椎间盘的情况下,根据增大后的所述第二预测框的候选损失值对应的权重和/或减小后的所述第一预测框的候选损失值对应的权重、及其所述候选损失值确定所述损失值;在所述真值为椎体、所述第一预测框的类别为椎体的情况下,所述损失值为0;在其他情况下,根据所述预设值及所述候选损失值确定所述损失值。

在一个实施例中,所述根据所述候选损失值及所述权重确定损失值,包括根据下述公式确定所述预测框的类别的损失值:

ClassLoss=-((1-p)

其中,ClassLoss表示所述预测框的类别的损失值,p表示所述预测框的类别为目标类型的概率;

在所述真值为椎间盘、所述第二预测框的类别不为椎间盘的情况下,根据下述公式确定所述预测框的偏移量的损失值:

OffsetLoss=2*L

在所述真值为椎体、所述第一预测框的类别为椎体的情况下,根据下述公式确定所述预测框的偏移量的损失值:

OffsetLoss=0*L

在其他情况下,根据下述公式确定所述预测框的偏移量的损失值:

OffsetLoss=1*L

其中,OffsetLoss表示所述预测框的偏移量的损失值,L

可选地,L

例如,L

其中,L表示损失值,a和γ表示权重,y表示真值,y′表示预测值(即预测框)。

在一个实施例中,所述确定所述特征图中的预测框,包括:

确定所述特征图的多个锚框;

将所述多个锚框中与真值的边界框的交并比最大的锚框确定为所述预测框。

第二方面,提供了一种目标检测的方法,该方法包括:

获取输入图像的特征图;使用目标检测模型确定所述特征图中预测框,所述预测框用于指示所述训练图像中的目标区域;其中,所述目标检测模型是通过第一方面或者第二方面的任一可能的实现方式中的方法训练后得到的。

进一步地,使用上述第一方面中的方法训练后得到的目标检测模型,可以提高椎间盘和椎体预测的准确率。

第三方面,本发明提供了一种训练目标检测模型的装置,所述装置用于执行所述第一方面或者第一方面的任一可能的实现方式中的方法。

第四方面,本发明提供了一种目标检测的装置,所述装置用于执行所述第二方面或者第二方面的任一可能的实现方式中的方法。

第五方面,提供了一种训练目标检测模型的装置,所述装置包括存储介质和中央处理器,所述存储介质可以是非易失性存储介质,所述存储介质中存储有计算机可执行程序,所述中央处理器与所述非易失性存储介质连接,并执行所述计算机可执行程序以实现所述第一方面或者第一方面的任一可能的实现方式中的方法。

第六方面,提供了一种目标检测的装置,所述装置包括存储介质和中央处理器,所述存储介质可以是非易失性存储介质,所述存储介质中存储有计算机可执行程序,所述中央处理器与所述非易失性存储介质连接,并执行所述计算机可执行程序以实现所述第二方面或者第二方面的任一可能的实现方式中的方法。

第七方面,提供一种芯片,所述芯片包括处理器与数据接口,所述处理器通过所述数据接口读取存储器上存储的指令,执行第一方面或第一方面的任一可能的实现方式中的方法。

可选地,作为一种实现方式,所述芯片还可以包括存储器,所述存储器中存储有指令,所述处理器用于执行所述存储器上存储的指令,当所述指令被执行时,所述处理器用于执行第一方面或第一方面的任一可能的实现方式中的方法。

第八方面,提供一种芯片,所述芯片包括处理器与数据接口,所述处理器通过所述数据接口读取存储器上存储的指令,执行第二方面或第二方面的任一可能的实现方式中的方法。

可选地,作为一种实现方式,所述芯片还可以包括存储器,所述存储器中存储有指令,所述处理器用于执行所述存储器上存储的指令,当所述指令被执行时,所述处理器用于执行第二方面或第二方面的任一可能的实现方式中的方法。

第九方面,提供一种计算机可读存储介质,所述计算机可读介质存储用于设备执行的程序代码,所述程序代码包括用于执行第一方面或者第一方面的任一可能的实现方式中的方法的指令。

第十方面,提供一种计算机可读存储介质,所述计算机可读介质存储用于设备执行的程序代码,所述程序代码包括用于执行第二方面或者第二方面的任一可能的实现方式中的方法的指令。

在本发明实施例中,所述权重是根据所述预测框与真值之间的差异确定的,也就是说,在预测结果(即所述预测框与真值之间的差异)不同时,为所述候选损失值确定不同的权重,此时,根据该权重确定损失值,并根据所述损失值训练所述目标检测模型,解决现有技术中目标检测模型在训练过程中不易收敛的问题。

进一步地,使用本发明实施例中的方法训练后得到的目标检测模型,还可以提高椎间盘和椎体预测的准确率。

附图说明

图1为适用于本发明实施例的一个应用场景图。

图2为本发明一个实施例中的训练目标检测模型的方法的示意性框图。

图3为本发明一个实施例中的目标检测的方法的示意性框图。

图4为本发明另一个实施例中的目标检测的方法的示意性框图。

图5为本发明一个实施例中的建立训练数据集的方法的示意性框图。

图6为本发明一个实施例中的椎体坐标框的示意性框图。

图7为本发明另一个实施例中的训练目标检测模型的方法的示意性框图。

图8为本发明一个实施例中的对预测框进行后处理的方法的示意性框图。

图9为本发明一个实施例提供的训练目标检测模型的装置的示意性框图。

图10为本发明一个实施例提供的目标检测的装置的示意性框图。

图11为本发明另一个实施例提供的目标检测的装置的示意性框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例中的方法可以应用于各种基于医学图像进行图像分割的场景,本发明实施例中对此并不限定。例如,本发明实施例中的方法可以应用于基于医学图像进行骨分割的场景。

本发明实施例中的医学图像可以为电子计算机断层扫描(computed tomography,CT)图像及磁共振成像(magnetic resonance imaging,MRI)图像等,本发明实施例中对医学图像的类型并不限定。

图1为适用于本发明实施例的一个应用场景图。

图1中的应用场景100可以包括图像获取装置110及目标检测装置120。

需要说明的是,图1所示的应用场景仅为示例而非限定,图1所示的应用场景中可以包括更多或更少的装置或设备,本发明实施例中对此并不限定。

其中,所述图像获取装置110可以为电子计算机断层(computed tomography,CT)扫描仪、磁共振成像(magnetic resonance imaging,MRI)或其他用于拍摄医学图像的装置或设备,所述目标检测装置120可以为计算机设备、服务器(例如,云端服务器)或其他能够对图像进行目标检测(或图像分割等)处理的装置或设备。

可以看出,本发明实施例对医学图像并不限定,本发明实施例中的所述医学图像可以包括CT图像、MRI图像或其他应用于医学领域的图像。

例如,所述图像获取装置110可以为CT扫描仪,CT扫描仪可以用于对人体组织进行X线扫描,得到人体组织的CT图像序列。

在一实施例中,通过CT扫描仪对骨骼进行扫描,可以得到包括骨骼的横断位CT图像序列。该骨骼例如可以为动物或者人体的脊柱、胫骨、股骨、肋骨和髌骨或者其他骨组织,本发明实施例中对此不作限定。

例如,所述目标检测装置120可以为计算机设备,所述计算机设备可以是通用型计算机或者由专用的集成电路组成的计算机装置等,本发明实施例中对此不做限定。

本领域技术人员可以知晓,上述计算机设备的数量可以为一个或大于一个,多个计算机设备的类型可以相同或者不同。本发明实施例中对终端的数量和设备类型不加以限定。

计算机设备中可以部署有神经网络模型,用于对待处理图像(例如,通过所述图像获取装置得到的医学图像)进行目标检测(或图像分割等)处理,得到用于指示待处理图像中的目标区域的预测框。

例如,计算机设备可以通过其中部署的神经网络模型(例如,所述神经网络模型可以为目标检测模型)对CT图像进行目标检测,得到用于指示待处理图像中的椎体及椎间盘的预测框。

计算机设备可以为服务器或云端服务器,直接对待处理图像进行目标检测(或图像分割等)等处理。

或者,计算机设备也可以与服务器(图1中未示出)之间通过通信网络相连。计算机设备可以将其从CT扫描仪获取到的CT图像等发送给服务器,利用服务器中的神经网络模型对CT图像进行目标检测,并且将该目标检测结果存储为样本图像,以对服务器中的神经网络模型进行训练,得到用于目标检测的神经网络模型。

计算机设备还可以从服务器中获取CT图像,进而通过神经网络模型对CT图像进行目标检测,以生成用于指示该CT图像中的目标区域的预测框,本发明实施例中对具体的实现方式并不做限定。

图2是本发明一个实施例的训练目标检测模型的方法200的示意性框图。所述方法200可以由图1中的所述目标检测装置120执行,所述目标检测装置120可以包括目标检测模型。

应理解,图2示出了方法200的步骤或操作,但这些步骤或操作仅是示例,本发明实施例还可以执行其他操作或者图2中方法200的各个操作的变形,或者,并不是所有步骤都需要执行,或者,这些步骤可以按照其他顺序执行。

S210,获取训练图像的特征图。

其中,所述训练图像可以是由原始的椎骨分割数据生成的,该原始的椎骨分割数据可以是电子计算机断层(computed tomography,CT)图像等医学图像进行图像分割后得到的。

所述训练图像可以包括其对应的真值,所述真值可以包括椎体和椎间盘中的至少一项。

例如,所述真值可以为椎体,或者,所述真值也可以为椎间盘,或者,所述真值还可以同时包括椎体和椎间盘,本发明实施例中对此并不限定。

其中,椎节可以指脊柱上的一节一节的脊椎,椎体可以指椎节中的一部分,具体的定义可以参照现有技术中的描述,本发明实施例中不再赘述。

可选地,所述训练图像可以是从预设建立的训练数据集中获取的,该建立的训练数据集的具体方法可以参照下述图4中实施例的详细描述,这里不再赘述。

S220,确定所述特征图中的预测框。

其中,所述预测框可以用于指示所述训练图像中的目标区域。

可选地,所述预测框可以包括第一预测框和第二预测框中的至少一项。

例如,所述第一预测框可以指所述训练图像中的椎体部分对应的预测框,所述第二预测框可以指所述训练图像中的椎间盘部分对应的预测框。

可选地,所述确定所述特征图中的预测框,可以包括:

确定所述特征图的多个锚框;将所述多个锚框中与真值的边界框的交并比最大的锚框确定为所述预测框。

上述这种生成多个锚框、再从多个锚框中确定预测框的具体方法可以参照下述图4中实施例的详细描述,这里不再赘述。

需要说明的是,上述实施例仅为示例而非限定,本发明实施例中也可以使用现有技术中的其他方法确定所述特征图中的预测框,本发明实施例中对此并限定。

S230,确定所述预测框的候选损失值及所述候选损失值对应的权重。

其中,所述权重可以是根据所述预测框与真值之间的差异确定的。

所述预测框与真值之间的差异可以包括所述预测框的类别与真值的类别之间差异、以及所述预测框的位置相对于真值的边界框的偏移量。

可选地,所述候选损失值包括所述预测框的类别的候选损失值和所述预测框的偏移量的候选损失值。

例如,在所述训练图像其对应的真值包括椎体和椎间盘的情况下,所述候选损失值可以包括所述第一预测框的类别的损失值、所述第二预测框的类别的损失值、所述第一预测框相对于所述真值中的椎体的边界框的偏移量的损失值、以及所述第二预测框相对于所述真值中的椎间盘的边界框的偏移量的损失值。

其中,所述第一预测框的类别的损失值可以是指:根据所述第一预测框预测的类别为椎体的概率与真值的差确定的损失值。

例如,所述第一预测框被预测为椎体的概率为P,所述第一预测框被预测为椎体的概率与真值的差为(1-P),那么,所述第一预测框的类别的损失值可以是根据(1-P)确定的。

所述第二预测框的类别的损失值与所述第一预测框的类别的损失值的确定方法类似,这里不再赘述。

进一步地,所述确定所述预测框的候选损失值及所述候选损失值对应的权重,可以包括:

根据真值确定所述候选损失值;

在所述真值为椎间盘的边界框、所述第二预测框的类别不为椎间盘的情况下,增大所述第二预测框的候选损失值对应的权重和/或减小所述第一预测框的候选损失值对应的权重;

在所述真值为椎体、所述第一预测框的类别为椎体的情况下,将所述第一预测框的候选损失值及所述第二预测框的候选损失值对应的权重均置为0;

在其他情况下,所述第一预测框的候选损失值对应的权重和所述第二预测框的候选损失值对应的权重均为预设值。

例如,在所述真值为椎间盘的情况下,可以分为下述两种情况:

情况一:

若所述第二预测框的类别是椎间盘,则所述第一预测框的候选损失值对应的权重和所述第二预测框的候选损失值对应的权重均为预设值。

情况二:

若所述第二预测框的类别是椎体,则增大所述第二预测框的候选损失值对应的权重和/或减小所述第一预测框的候选损失值对应的权重。

这样处理的原因是:椎间盘的形态较明显,不应该预测错,简而言之就是:椎间盘容易辨认,辨认错了就要受到惩罚,即增大所述第二预测框的候选损失值对应的权重和/或减小所述第一预测框的候选损失值对应的权重。

再例如,在所述真值为椎体的情况下,可以分为下述两种情况:

情况三:

若所述第一预测框的类别是椎间盘,则所述第一预测框的候选损失值对应的权重和所述第二预测框的候选损失值对应的权重均为预设值。

情况四:

若所述第一预测框的类别是椎体,则不传回损失(即,将所述第一预测框的候选损失值及所述第二预测框的候选损失值对应的权重均置为0)。

这样处理的原因是:CT图像中椎体中会包含椎间盘,不容易区分,所以不传回损失,简而言之就是:椎体不好辨认,好不容易辨认对了,就不要受任何惩罚了。

可选地,所述预设值可以为A,A为正整数。

例如,A可以为1。

S240,根据所述候选损失值及所述权重确定损失值。

其中,所述损失值可以理解根据所述训练图像得到的总损失值。

例如,在所述训练图像中包括椎间盘和椎体的情况下,所述训练图像的损失值可以分为所述训练图像的预测框的类别的损失值及所述训练图像的预测框的偏移量的损失值。

其中,所述训练图像的预测框的类别的损失值可以包括第一预测框的类别的损失值和第二预测框的类别的损失值,所述训练图像的预测框的偏移量的损失值可以包括第一预测框的偏移量的损失值和第二预测框的偏移量的损失值。

可选地,所述根据所述候选损失值及所述权重确定损失值,可以包括:

在所述真值为椎间盘、所述第二预测框的类别不为椎间盘的情况下,根据增大后的所述第二预测框的候选损失值对应的权重和/或减小后的所述第一预测框的候选损失值对应的权重、及其所述候选损失值确定所述损失值;

在所述真值为椎体、所述第一预测框的类别为椎体的情况下,所述损失值为0;

在其他情况下,根据所述预设值及其所述候选损失值确定所述损失值。

进一步地,所述根据所述候选损失值及所述权重确定损失值,可以包括根据下述公式确定所述预测框的类别的损失值:

ClassLoss=-((1-p)

其中,ClassLoss表示所述预测框的类别的损失值,p表示所述预测框的类别为目标类型的概率;

在所述真值为椎间盘、所述第二预测框的类别不为椎间盘的情况下,可以根据下述公式确定所述预测框的偏移量的损失值:

OffsetLoss=2*L

在所述真值为椎体、所述第一预测框的类别为椎体的情况下,根据下述公式确定所述预测框的偏移量的损失值:

OffsetLoss=0*L

在其他情况下,可以根据下述公式确定所述预测框的偏移量的损失值:

OffsetLoss=1*L

其中,OffsetLoss表示所述预测框的偏移量的损失值,L

可选地,L

例如,L

其中,L表示损失值,a和γ表示权重,y表示真值,y′表示预测值(即预测框)。

S250,根据所述损失值训练所述目标检测模型。

在通过上述方法200训练完所述目标检测模型之后,就可以下述图3中的方法300所示,使用所述目标检测模型检测输入图像(例如,CT图像)中的椎体及椎间盘。

图3是本发明一个实施例的目标检测的方法300的示意性框图。

所述方法300可以由图1中的目标检测装置120执行,或者所述方法300也可以由服务器或云端服务器(图1中未示出)执行,本发明实施例中对此并不限定。

应理解,图3示出了方法300的步骤或操作,但这些步骤或操作仅是示例,本发明实施例还可以执行其他操作或者图3中方法300的各个操作的变形,或者,并不是所有步骤都需要执行,或者,这些步骤可以按照其他顺序执行。

S310,获取输入图像的特征图。

S320,使用目标检测模型确定所述特征图中预测框,所述预测框用于指示所述训练图像中的目标区域;

其中,所述目标检测模型可以是基于上述图2所示的方法200中的任一实施例训练后得到的。

所述目标检测模型输出的预测框可以包含椎体二维(2D)预测框和椎间盘的2D预测框,进一步地,可以将该椎体二维(2D)预测框和该椎间盘的2D预测框转换为该椎体三维(3D)预测框和该椎间盘的3D预测框,具体的转换方法可以参照下述图8中的实施例,这里不再赘述。

图4是本发明一个实施例的目标检测的方法400的示意性框图。

所述方法400可以由图1中的目标检测装置120执行,或者所述方法300也可以由服务器或云端服务器(图1中未示出)执行,本发明实施例中对此并不限定。

应理解,图4示出了方法400的步骤或操作,但这些步骤或操作仅是示例,本发明实施例还可以执行其他操作或者图4中方法400的各个操作的变形,或者,并不是所有步骤都需要执行,或者,这些步骤可以按照其他顺序执行。

S410,建立训练数据集。

所述训练数据集可以包括训练图像及其对应的真值,所述真值可以包括椎体和椎间盘中的至少一项。

其中,椎节可以是指脊柱上的一节一节的脊椎,椎体可以指椎节中的一部分。

所述训练数据集可以是由原始的椎骨分割数据生成的,该原始的椎骨分割数据可以是电子计算机断层(computed tomography,CT)图像等医学图像进行图像分割后得到的。

例如,可以通过图5所示的方法500建立所述训练数据集。

如图5所示,原始的椎骨分割数据可以包含椎节分割数据和椎间盘分割数据,但当前暂不做区分,统一进行处理。

如图5所示,所述方法500可以包括步骤510、步骤520、步骤530、步骤540、步骤550及步骤560,具体如下:

S510,调整大小(resize)。

例如,原始数据可以包括椎节分割数据(即椎节图像)和椎间盘分割数据(即椎间盘图像),可以对原始数据进行调整大小(resize),将原始数据中的每张图像的大小调整为512×512,图像层厚调整为1.5毫米(mm)。

S520,窗宽窗位变换。

例如,可以进行窗宽窗位变换,将每张图像的窗位(center)变换为300,将每张图像的窗宽(width)变换为1500。

S530,获取坐标框(box)。

例如,对椎间盘分割数据,可以基于上述S510和S520处理后得到的结果,获取每张图像中椎间盘分割数据的最小外包矩形框,并将这些外包矩形框最为最终的椎间盘坐标框。

再例如,对椎节分割数据,可以基于上述S510和S520处理后得到的结果,获取每张图像椎节分割数据的最小外包矩形框,然后对这些矩形框进行切割,仅留下椎体的外包矩形框。

S540,截取颈椎椎体。

由于颈椎的椎体较小,形态与其他椎体也不太相同,因此,对颈椎的椎体进行单独处理。

例如,如图6中左图所示,可以根据经验值截取每个颈椎框x方向的中间1/3,y方向的前1/3作为最终的颈椎椎体坐标框。

S550,截取其他椎体。

对于其他椎体,如图6中右图所示,可以根据经验值截取x方向的中间1/3,y方向的前1/2作为最终的椎体坐标框。

S560,输出椎间盘及椎体的坐标框。

通过上述步骤的处理,椎间盘的坐标框以及椎体的坐标框(包括颈椎椎体坐标框和其他椎体坐标框)已经全部生成,可以分别设置椎间盘的类别及其对应的坐标框,椎体对应的类别及其对应的坐标框,生成最终的训练数据集。

S420,训练目标检测模型。

此时,可以基于上述S410建立的训练数据集、使用图2中的方法200或下述图7中的方法700训练所述目标检测模型。

下面结合图7的方法700对训练目标检测模型的过程进行详细说明。

如图7所示,所述方法700可以包括步骤710、步骤720、步骤730、步骤740、步骤750及步骤760,具体如下:

S710,特征提取

可选地,可以提取训练图像的特征图(feature map),所述训练图像可以是从S410中建立的训练数据集中获取的。所述训练图像可以为3D图像(例如,3D的CT图像)。

可选地,可以通过特征提取模块提取所述训练图像的特征图。

所述特征提取模块可以是由多组卷积层,池化层,激活层、特征抽取层串联组成的,所述特征提取模块可以从所述训练图像中抽取能够用于检测或分割出椎体和椎间盘的特征信息,这些特征信息可以称为特征图,即所述训练图像的特征图。

S720,上采样

可选地,可以对S710中提取出来的所述特征图进行上采样,以提取出不同尺度目标的特征。

可选地,可以通过上采样模块对所述特征图进行上采样。

通常,在特征提取的过程中特征图的尺寸会变得越来越小,不利于对于小尺寸目标的分割,所以,可以通过上采样模块将所述特征图放大,并且与抽样过程中对应尺寸的特征图相加,这样比较有利于下一步的检测(或者说分割)。

S730,生成锚框

可选地,可以从所述特征图中生成多个大小和宽高比不同的锚框。具体的生成锚框的方法可以参照现有技术,这里不再赘述。

可选地,可以通过锚框生成模块从所述特征图中生成多个锚框。

锚框生成模块可以以所述特征图中的每个像素为中心,为每个单元(这里的单元可以指所述特征图中预设尺寸的单元区域)设置尺度或者长宽比不同的多个锚框,预测框的边界是以这些锚框为基准的。这样处理可以在一定程度上减少训练难度。一般情况下,可以为每个单元会设置多个锚框,这多个锚框尺度和长宽比不同。

S740,分配锚框

可选地,可以将待检测目标分配给生成的锚框(例如,可以包含锚框的标注类别和偏移量)。

在训练数据集中,可以将每个锚框视为一个训练样本,为了训练所述目标检测模型,可以为每个锚框标注两类标签:第一类是锚框所含目标的类别(例如,椎体或椎间盘);第二类是真实边界框相对锚框的偏移量。

基于上述S730生成的多个锚框,可以通过交并比(intersection over union,IoU)衡量两个边界框的相似度,然后为每个锚框预测类别以及偏移量,接着根据预测的偏移量调整锚框位置从而得到预测框,最后筛选需要输出的预测框。

S750,坐标框分类

可选地,可以对锚框进行分类。

可选地,可以通过坐标框分类模块对锚框进行分类。

例如,可以通过坐标框分类模块对锚框进行分类,接下来,可以按照锚框与标注结果(真值的边界框)交并比的大小来确定该锚框的真实分类。再计算模型该类别的分类误差,用于模型本轮的优化求导。

分类误差公式可以如下所示:

ClassLoss=-((1-p)

其中,ClassLoss表示分类误差的损失值,p表示该锚框的类别为目标分类的概率。当p的值越接近于1,则可以认为分类误差就越小。

S760,坐标框回归

可选地,可以通过坐标框回归模块对锚框进行回归。

例如,可以通过坐标框回归模块生成锚框的偏置,通过对比锚框的偏置与真实边界框的位置,计算模型的偏置误差,用于模型的本轮训练的求导优化。

锚框的偏置误差是通过偏置焦点损失(Bias Focal Loss)误差来计算,具体的计算方法如下:

锚框的偏置是锚框相对于真实目标区域的距离,由于椎间盘和椎体的样本分布远小于负样本,因此采用焦点损失(Focal Loss)来计算回归误差,Focal Loss能够缓解目标检测中正负样本比例严重失衡问题。

Focal Loss的具体计算公式可以如下:

其中,L表示损失值,a和γ表示权重,y表示真值,y′表示预测值(即预测框)。

此时,总损失的计算公式可以如下:

Loss=ω

其中,Loss表示总损失,ω

可选地,椎间盘的损失和椎体的损失可以通过上述Focal Loss的计算公式得到。

默认情况,权重系数ω

Loss=1*L

其中,Loss表示总损失,L

但是,针对椎间盘和椎体的检测来说,Focal Loss在训练过程中会出现不易收敛的情况,例如,在优化椎间盘loss的时,椎体loss会上升,而在优化椎体loss的时椎间盘loss又会上升。

因此,根据CT图像中椎体中会包含椎间盘,且椎间盘形态明显,能明显区分于椎体的特点,在本发明实施例中采用了Bias Focal Loss来计算回归误差,具体的计算公式可以如下:

OffsetLoss=2*L

OffsetLoss=0*L

OffsetLoss=1*L

其中,OffsetLoss表示锚框(即所述预测框)的回归误差,L

从上式可以看出,在检测目标是椎间盘、但椎间盘却没有被预测为椎间盘的情况下,可以将椎间盘的损失增大(如上式a中将椎间盘的损失对应的权重系数从默认值1增大为2),还可以将椎体的损失减小(如上式a中将椎节的损失对应的权重系数从默认值1减小为0)。这样处理的原因是:椎间盘形态较明显,不应该预测错。

而在预测目标是椎体、且椎体也被预测为椎体的情况下,可以不传回损失(如上式b中各权重系数均为)。

在其他情况下,则各权重系数可以使用默认值(如上式c中各权重系数均为1)。这样做的原因是:CT图像中椎体中会包含椎间盘,不容易区分椎间盘。

另外,因为CT图像本身包含了三维的信息,为了使用三维的图像信息,每一次输入的训练数据都是连续2N+1层的CT图像,N为大于或等于1的整数。

此时,在通过特征抽取模块在抽取特征时,可以将最中间的那一层CT图像作为关键帧,将其他的上下N层都作为邻近的相关信息。

S430,对所述目标检测模型输出的预测框进行后处理。

此时,可以对所述目标检测模型输出的预测框(例如,2D坐标框)进行后处理,下面结合图8的方法800对所述后处理的过程进行详细说明。

如图8所示,所述方法800可以包括步骤810、步骤820、步骤830、步骤840、步骤850、步骤860及步骤870,具体如下:

S810,去除假阳。

可选地,可以通过计算IoU来去除假阳,该步骤中可以不单独区分椎体和椎间盘。

例如,计算逻辑可以为:先将预测框按IoU分组,具体可以为:第一个坐标框默认加入新分组,从第二个坐标框开始,如果与当前所有分组中的坐标框IoU均小于预设阈值,则可以将其加入新的分组,否则加入已有分组,如此继续,直到最后一个坐标框分组完成。

这时会有N个分组,从中选出坐标框数量最多的分组,作为椎间盘和椎体的坐标框集合。

S820,对椎间盘的坐标框进行合并。

基于S810的处理结果,从中挑选出分类类别为椎间盘的坐标框进行3D合并,从头到脚逐层遍历坐标框,若与上一层的层差不超过预设阈值,则合并为同一个椎间盘,否则将其视为新的椎间盘,如此继续,直到最后获取所有椎间盘的3D预测框。

S830,对椎体的坐标框中的缺失层进行插值。

基于S810的处理结果,从中挑选出分类类别为椎体的坐标框进行3D合并,基本逻辑与上述S820相同,在此基础上对椎体检出缺失层进行插值,S840,对插值后的坐标框进行平滑处理。

基于S830的处理结果,可以利用加权平均平滑多层之间的坐标,以此保证椎体的预测框较为连贯,不会出现反复横跳的现象。

S850,通过椎间盘切割椎体。

S860,获取椎体的关键点。

基于S850的处理结果,分别选取每个椎体3D预测框的中心点作为该椎体的关键点,得到椎体关键点列表。至此,椎间盘和椎体3D预测框,椎体关键点列表全部生成。

S870,输出3D预测框及椎体的关键点列表。

通过上述图8中方法800的各步骤的处理,就可以得到椎体和椎间盘的3D预测框及椎体的关键点列表。

S440,使用训练好的所述目标检测模型对椎体及椎间盘进行在线检测。

此时,就可以使用训练好的所述目标检测模型对椎体及椎间盘进行在线检测。

在线椎间盘和椎体的检测过程中,可以对一个CT序列的图像进行逐张检测。对于某一张CT图像,其序列号为i,选取其上下邻近个N张连续的图像,组成2N+1个通道的数据,作为预测的数据输入到模型中。

预测模型会输出被预测框坐标、对应的分类编号和置信度,以及基于椎体预测框得到的椎体关键点列表。通过设置置信度的阈值,筛除置信度低的检测结果,这样可以排除大部分假阳的检测结果。

为了排除体外物体对模型造成不良的影响,在预测时可以通过阈值分割将身体其他部分分割出来。例如,可以使分割结果只包含肌肉、骨骼组织,而不包含人体的内脏、衣服等。如果模型的预测结果位于身体分割结果内则保留下来,否则判断为假阳,从输出结果中过滤掉。

图9是本发明一个实施例提供的训练目标检测模型的装置900的示意性框图。应理解,图9示出的训练目标检测模型的装置900仅是示例,本发明实施例的装置900还可包括其他模块或单元。

应理解,装置900能够执行图2及图4的方法中的各个步骤,为了避免重复,此处不再详述。

在本发明一种可能的实现方式中,所述装置包括:

获取单元910,用于获取训练图像的特征图;

第一确定单元920,用于确定所述特征图中的预测框,所述预测框用于指示所述训练图像中的目标区域;

第二确定单元930,用于确定所述预测框的候选损失值及所述候选损失值对应的权重,所述权重是根据所述预测框与真值之间的差异确定的;

损失值确定单元940,用于根据所述候选损失值及所述权重确定损失值;

训练单元950,用于根据所述损失值训练所述目标检测模型。

应理解,这里的训练目标检测模型的装置900以功能模块的形式体现。这里的术语“模块”可以通过软件和/或硬件形式实现,对此不作具体限定。例如,“模块”可以是实现上述功能的软件程序、硬件电路或二者结合。所述硬件电路可能包括应用特有集成电路(application specific integrated circuit,ASIC)、电子电路、用于执行一个或多个软件或固件程序的处理器(例如共享处理器、专有处理器或组处理器等)和存储器、合并逻辑电路和/或其它支持所描述的功能的合适组件。

作为一个示例,本发明实施例提供的训练目标检测模型的装置900可以是处理器或芯片,以用于执行本发明实施例所述的方法。

图10是本发明一个实施例提供的目标检测的装置1000的示意性框图。应理解,图10示出的目标检测的装置1000仅是示例,本发明实施例的装置1000还可包括其他模块或单元。

应理解,装置1000能够执行图3及图4的方法中的各个步骤,为了避免重复,此处不再详述。

在本发明一种可能的实现方式中,所述装置包括:

获取单元1010,用于获取输入图像的特征图;

确定单元1020,用于使用目标检测模型确定所述特征图中预测框,所述预测框用于指示所述训练图像中的目标区域;

关于所述装置1000的详细训练过程可以参照上述方法200及方法400中的实施例,这里不再赘述。

应理解,这里的目标检测的装置1000以功能模块的形式体现。这里的术语“模块”可以通过软件和/或硬件形式实现,对此不作具体限定。例如,“模块”可以是实现上述功能的软件程序、硬件电路或二者结合。所述硬件电路可能包括应用特有集成电路(application specific integrated circuit,ASIC)、电子电路、用于执行一个或多个软件或固件程序的处理器(例如共享处理器、专有处理器或组处理器等)和存储器、合并逻辑电路和/或其它支持所描述的功能的合适组件。

作为一个示例,本发明实施例提供的目标检测的装置1000可以是处理器或芯片,以用于执行本发明实施例所述的方法。

图11是本发明一个实施例的目标检测的装置400的示意性框图。图11所示的装置400包括存储器401、处理器402、通信接口403以及总线404。其中,存储器401、处理器402、通信接口403通过总线404实现彼此之间的通信连接。

存储器401可以是只读存储器(read only memory,ROM),静态存储设备,动态存储设备或者随机存取存储器(random access memory,RAM)。存储器401可以存储程序,当存储器401中存储的程序被处理器402执行时,处理器402用于执行本发明实施例的训练目标检测模型的方法及目标检测的方法的各个步骤,例如,可以执行图2、图3及图4所示实施例的各个步骤。

处理器402可以采用通用的中央处理器(central processing unit,CPU),微处理器,应用专用集成电路(application specific integrated circuit,ASIC),或者一个或多个集成电路,用于执行相关程序,以实现本发明方法实施例的训练目标检测模型的方法及目标检测的方法。

处理器402还可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,本发明实施例的训练目标检测模型的方法及目标检测的方法的各个步骤可以通过处理器402中的硬件的集成逻辑电路或者软件形式的指令完成。

上述处理器402还可以是通用处理器、数字信号处理器(digital signalprocessing,DSP)、专用集成电路(ASIC)、现成可编程门阵列(field programmable gatearray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器401,处理器402读取存储器401中的信息,结合其硬件完成本发明实施例中目标检测的装置包括的单元所需执行的功能,或者,执行本发明方法实施例的训练目标检测模型的方法及目标检测的方法,例如,可以执行图2、图3及图4所示实施例的各个步骤/功能。

通信接口403可以使用但不限于收发器一类的收发装置,来实现装置400与其他设备或通信网络之间的通信。

总线404可以包括在装置400各个部件(例如,存储器401、处理器402、通信接口403)之间传送信息的通路。

应理解,本发明实施例所示的装置400可以是处理器或芯片,以用于执行本发明实施例所述的训练目标检测模型的方法及目标检测的方法。

应理解,本发明实施例中的处理器可以为中央处理单元(central processingunit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(digital signalprocessor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,其中A,B可以是单数或者复数。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系,但也可能表示的是一种“和/或”的关系,具体可参考前后文进行理解。

本发明中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。

应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换等,均应包含在本发明的保护范围之内。

相关技术
  • 训练目标检测模型的方法及装置、目标检测方法及装置
  • 目标检测方法和目标检测模型的训练方法、装置
技术分类

06120112683776