首页> 中国专利> 用于放射治疗计划的医学图像中的器官分割的3D卷积神经网络

用于放射治疗计划的医学图像中的器官分割的3D卷积神经网络

摘要

用于分割医学图像的方法、系统和装置,包括在计算机存储介质上编码的计算机程序。在一个方面,方法包括:接收使用医学成像模态捕获的并且描绘人体中的组织区域的医学图像;以及使用分割神经网络处理医学图像以生成分割输出,其中,分割神经网络包括多个编码器块的序列,其中:每个编码器块是残差神经网络块,其包括一个或多个二维卷积神经网络层、一个或多个三维卷积神经网络层或两者,并且每个编码器块都被配置为处理相应的编码器块输入以生成相应的编码器块输出,其中编码器块输出的空间分辨率低于编码器块输入的空间分辨率。

著录项

说明书

背景技术

本说明书涉及使用机器学习模型处理医学图像。

可以使用多种成像模态(例如,计算机断层摄影(CT)成像模态)来捕获医学图像。

机器学习模型接收输入,并基于接收到的输入生成输出,例如预测输出。一些机器学习模型是参数模型,并且基于接收到的输入和模型的参数的值生成输出。

一些机器学习模型是深度模型,它采用多层模型来针对接收到的输入生成输出。例如,深度神经网络是一种深度机器学习模型,包括输出层和一个或多个隐藏层,每个隐藏层将非线性转换应用于接收到的输入以生成输出。

发明内容

本说明书描述了一种系统和方法,该系统和方法被实现为在执行医学图像分割的一个或多个位置中的一个或多个计算机上的计算机程序。可以提供由系统生成的分割以呈现给用户,例如以协助医师或其他医学专业人员。

根据第一方面,提供了一种方法,该方法包括:接收医学图像,所述医学图像使用医学成像模态捕获并且描绘了人体中的组织区域,即3D区域。该方法包括使用分割神经网络处理医学图像以生成分割输出。

分割输出可以包括多个分割通道,每个分割通道对应于来自预定器官集合的相应器官,并且每个分割通道定义对应于所述医学图像中的分割通道的相应器官的分割。对于所述医学图像中的多个体素中的每一个,所述医学图像中的相应器官的分割可以包括表征所述体素是否对应于所述相应器官的内部(例如,组织是否属于器官)的相应分值。分值可以包括二进制分值或被处理以提供二进制分值以定义分割掩码。

在一些实施方式中,分割神经网络包括编码器块序列。每个编码器块可以是包括一个或多个二维卷积神经网络层、一个或多个三维卷积神经网络层或两者的残余神经网络块。这样的残余神经网络块可以具有跳过该块的一个或多个非线性层的连接,例如,该块的输入和输出之间的连接,即直接连接。每个编码器块可以被配置为处理相应的编码器块输入以生成相应的编码器块输出。编码器块输出的分辨率即空间分辨率可以低于编码器块输入的(空间)分辨率。对于在编码器块序列中的初始编码器块之后的每个编码器块,编码器块输入可以包括在编码器块序列中的先前编码器块的先前编码器块输出。分割神经网络还可以包括解码器子网络,其被配置为处理包括每个编码器块的中间输出的解码器子网络输入,以生成分割输出。

在一些实施方式中,分割神经网络包括最终层,其被配置为处理最终层输入以生成分割输出。处理最终层输入以生成分割输出可以包括:根据最终层权重集合处理所述最终层输入,以生成转换后的最终层输入,以及使用Sigmoid激活函数处理所述转换后的最终层输入,以生成分割输出。

可以实现本说明书中描述的主题的特定实施例,以实现以下优点中的一个或多个。

在本说明书中描述的分割神经网络在医学图像分割中实现了与人类专家(例如放射治疗师)相当的性能水平。因此,分割神经网络有潜力部署到临床环境中,从而可以降低医疗保健成本并提高效率。例如,分割神经网络可以用作自动放射治疗计划过程的一部分,以分割“有风险的器官”,也就是在放射治疗过程中有发生意外辐射风险的正常解剖结构。在此示例中,分割神经网络可以部分或完全自动化专家先前执行的耗时任务。

分割神经网络可以生成分割,作为具有激活函数(例如,Sigmoid激活函数)的最终神经网络层的输出,该激活函数被分别应用于分割输出的每个分量。通过将激活函数分别应用于分割输出的每个分量,分割神经网络可以将医学图像的单个体素表征为具有属于多个器官的高概率。例如,分割神经网络可以生成分割输出,该分割输出将单个体素表征为具有同时属于“晶状体”和“眼睛”的高概率。相反,一些常规的分割神经网络生成的分割输出无法将单个体素表征为以很高概率属于多个重叠器官。例如,一些常规的神经网络在最终层使用soft-max激活函数,其中soft-max函数被联合应用于分割输出的各组分量(即,其中一组分量表征医学图像的体素属于不同器官的概率)。在此示例中,要求每个组的分量的soft-max输出之和为1,导致常规神经网络无法将单个体素表征为以很高概率属于多个器官。因此,与某些常规的分割神经网络不同,本说明书中描述的分割神经网络可用于为多个重叠器官生成准确的分割输出。

医学成像模态或系统可以包括计算机断层摄影(CT)医学成像模态或系统,和/或另一成像模态,例如MRI(磁共振成像)或PET(正电子发射断层扫描)扫描。

在一些实施方式中,解码器子网络包括多个解码器块的序列。每个解码器块可以包括残余神经网络块,该残余神经网络块包括一个或多个二维卷积神经网络层。每个解码器块可以被配置为处理相应的解码器块输入以生成相应的解码器块输出。解码器块输出的(空间)分辨率大于解码器块输入的(空间)分辨率。对于在解码器块序列中的初始解码器块之后的每个解码器块,解码器块输入可以包括:(i)相应编码器块的中间输出,以及(ii)先前解码器的先前解码器块输出。编码器块中的三维卷积神经网络层可以包括填充的xy-卷积和未填充的z-卷积。分割神经网络可以包括链接块,例如包括完整连接层的残留神经网络模块。链接块可以被配置为处理链接块输入以生成链接块输出,该链接块输入包括编码器块序列中的最终编码器块的输出,该链接块输出可以被提供作为解码器子网的输入。

本说明书中所述的分割系统可以通过计算(i)预测器官分割的表面与(ii)真实器官分割的表面即不是整个体积之间的一致性度量来表征预测的器官分割的准确性。表面之间的一致性度量可以表征预测分割的表面的一部分,这将需要由专家手动校正,例如,以使分割能够在放射治疗计划中使用。分割系统可以训练分割神经网络,直到基于分割表面一致性测得的性能达到可接受的水平为止。此后,可以将训练的分割神经网络合并到临床工作流程中,其中可能需要专家花费最少的时间来校正由分割神经网络生成的预测分割。

因此,在一些实施方式中,该方法还包括计算表面度量,例如,表面小块度量或表面Dice-Sorensen系数,作为分割性能指标。可以在(i)由来自分割输出的分割通道定义的医学图像中的相应器官的分割与(ii)参考(医学图像中相应器官的人类专家分割)之间计算表面小块度量。计算表面小块度量可以包括确定在(i)所述相应器官的分割的表面;和(ii)所述相应器官的参考分割的表面周围的公差区域之间的第一相交中的体素数量;或确定在(i)所述相应器官的参考分割的表面,和(ii)所述相应器官的分割的表面周围的公差区域之间的第二相交中的体素数量;或两者。确定两者具有可以对预测分割的误报和误报部分进行惩罚的优点。定义公差区域在临床上是有益的,因为它是与分割的绝对偏差,例如以毫米为单位,这对于放射治疗的安全性很重要。

在计算表面小块度量的实施方式中,还可以将所述表面小块度量确定为(i)所述第一相交中的体素数量与所述第二相交中的体素数量之和与(ii)所述相应器官的分割的表面中的体素数量与所述相应器官的参考分割的表面中的体素数量之和的比率。

原则上,可以独立于所使用的分割技术来计算这样的表面度量。应用不限于上述方法,并且表面度量可以例如应用于医学图像中的器官的任何分割,该分割针对医学图像中的多个体素中的每一个定义表征该体素是否对应于器官的内部的值。

可以使用分割损失来训练本说明书中描述的分割神经网络,该分割损失仅包括来自具有最高误差值的那些体素的贡献(例如,其中分割神经网络做出了自信但不正确的预测的体素)。通过使用仅包括具有最高误差值的那些体素的贡献的分割损失,可以训练分割神经网络以专注于医学图像的最困难和模棱两可的部分。通过以这种方式选择对分割损失的贡献,训练还可以考虑类别不平衡,该类别不平衡通常在对大小不同的器官(例如扫描头部,耳蜗65mm

以这种方式,可以对分割神经网络进行训练以在较少的训练迭代上达到可接受的性能水平,并且与常规训练技术相比,训练神经网络可以因此消耗较少的计算资源,例如,存储器和计算能力。

因此,还提供了一种由一个或多个数据处理装置执行的用于训练分割神经网络的方法,该方法被配置为处理医学图像以生成分割输出,所述医学图像使用医学成像模态捕获并且描绘了人体中的组织区域。分割输出可以包括多个分割通道,其中每个分割通道对应于来自预定器官集合的相应器官,并且每个分割通道定义对应于所述医学图像中的分割通道的相应器官的分割。对于医学图像中的多个体素中的每一个,医学图像中的相应器官的分割可以包括表征该体素是否对应于相应器官的内部的相应分值。该方法可以包括:接收训练医学图像;以及使用分割神经网络处理训练医学图像以生成训练分割输出;确定训练医学图像的分割损失。

对于训练分割输出的每个分割通道,确定分割损失可以包括:确定分割通道的误差值集合,其中,分割通道的误差值集合中的每个误差值对应于医学图像中的相应体素,并且基于(i)来自所述分割通道的表征所述体素是否对应于与所述分割通道相对应的器官内部的分值以及(ii)定义所述体素是否对应于与所述分割通道相对应的器官的内部的目标分值之间的误差;在所述分割通道的误差值集合中识别多个最高误差值;基于针对所述训练分割输出的每个分割通道识别的多个最高误差值,确定所述分割损失。

该方法可以还包括基于训练医学图像的分割损失,调整分割神经网络权重的当前值。

该误差可以包括交叉熵损失,例如如果将体素分值二值化从而分割定义了掩码,则为二进制交叉熵损失。该方法可以包括将用于分割通道的误差值集合中的多个最高误差值(例如最高交叉熵)识别为用于分割通道的误差值集合的适当子集。确定分割损失可以包括对所识别的多个最高误差值进行求和。可以对例如由中央图像切片和两侧的图像切片集合确定的图像子体积增量地执行训练。

本说明书的主题的一个或多个实施例的细节在附图和以下描述中阐述。根据说明书、附图和权利要求书,本主题的其他特征、方面和优点将变得显而易见。

附图说明

图1示出了示例分割系统。

图2图示了分割神经网络的示例架构。

图3图示了计算表面小块度量和特定器官的公差阈值的示例。

图4图示了与放射治疗师相比的分割系统的定量性能的示例。

图5是用于训练和使用分割神经网络的示例过程的流程图。

在各个附图中,相似的附图标记和标号指示相似的元件。

具体实施方式

本说明书描述了一种分割系统,该分割系统可以处理医学图像(例如计算机断层扫描(CT)图像),该图像描述了患者体内的组织区域(例如,头部和颈部区域)以生成组织区域中的一个或多个器官的分割。更具体地,分割系统可以生成分割输出,该分割输出针对医学图像的每个体素指定该体素是否被包括在每个预定的器官集合中。如贯穿本说明书所使用的,“器官”可以是指人体中任何适当的解剖结构(例如大脑、眼睛或肿瘤),并且某些器官可以部分或全部包含在其他器官中,例如晶状体可能完全包含在眼睛内。

由分割系统生成的器官分割可以用于多种应用中的任何一种,例如,用于计划癌症患者的放射疗法(放射疗法)治疗。放射疗法治疗计划可能需要准确分割要照射的目标区域(例如,肿瘤和具有高肿瘤扩散风险的区域)以及目标区域附近的其他器官,以确定使由其他器官接收到的辐射剂量最小化的治疗计划。手动器官分割可能很耗时,例如,专家可能在一个病例上花费四个小时或更长时间,并且例如在专家之间甚至在同一位专家生成的手动分割中都不一致)。相反,本说明书中描述的分割系统可以在几秒钟或几分钟内生成自动器官分割,而在某些情况下,实现可与专家生成的手动分割相当的分割精度。因此,分割系统可以通过部分自动化放射疗法治疗计划的各个方面来减少放射疗法治疗的延迟。

这些功能和其他功能将在下面更详细地描述。

图1示出了示例性分割系统100。分割系统100是被实现为一个或多个位置处(在该位置中实现了以下所述的系统、组件和技术)的一个或多个计算机上的计算机程序的系统的示例。

分割系统100被配置为处理描绘患者104体内组织区域的医学图像102,以生成定义医学图像102中一个或多个器官的分割的分割输出106。可以由分割系统100分割的在头部和颈部区域中的示例器官集合将参考图4更详细地描述。

医学图像102可以由医学成像系统108使用任何适当的医学成像模态(例如,计算机断层摄影(CT)、磁共振(MR)或超声(US))来生成。在一些情况下,分割系统100可以被配置为处理患者的多个医学图像,例如,使用不同的医学成像模态(例如,CT图像和MR图像)或使用相同的医学成像模态,例如,在将造影剂施用于患者104之后快速连续捕获的多个MR图像。在这些情况下,多个图像可以在被分割系统100处理之前被配准(register)。配准两个图像是指将一个或多个变换(例如,平移、旋转、剪切或弹性变形操作)应用于图像之一以将其与其他图像对齐,以使两个图像中的匹配体素对应于患者104中组织的相同部分。

医学图像102可以由三维(3-D)体素阵列表示,其中每个体素与表征患者中组织的相应部分的特性的强度值相关联。例如,CT图像的强度值表征患者中组织的物理密度,例如以霍恩斯菲尔德单位。为了方便起见,在本说明书中可以将医学图像102的体素称为通过x、y和z坐标来索引,并且医学图像102中具有相同的z-值坐标的体素集合可以被称为医学图像102的“切片”。

分割系统100通过使用分割神经网络200处理医学图像102,即根据分割神经网络200的模型参数110集合的值来生成分割输出106。分割神经网络200是卷积神经网络,例如具有一个或多个3-D卷积神经网络层的3-D卷积神经网络。3-D卷积层是指例如使用3-D卷积滤波器,或通过在x-y维度中使用2-D卷积滤波器执行卷积,然后在z维度中使用1-D卷积滤波器执行3-D卷积操作的层。参照图2A-2D更详细地描述了分割神经网络的示例架构。

分割神经网络200可以被配置为接收预定大小的输入,例如具有医学图像102的预定数量的切片,例如21个切片。分割输出106可以例如由于在输入的z维度中执行的未填充的卷积操作而仅定义输入的适当子集,例如作为输入提供的仅医学图像102的21个切片的中央切片的输入的适当子集的分割。如果对操作的输入增加了默认值(例如,零),则可将卷积操作称为填充,否则可将其称为未填充。执行未填充的卷积运算可能导致卷积操作的输出的分辨率低于卷积操作的输入的分辨率。为了生成医学图像102的整体分割输出106,分割系统100可以使用分割神经网络200来处理医学图像102的相应子集,然后聚合相应的分割输出106。

分割输出106可以由分割“通道”的有序集合表示,其中每个分割通道定义医学图像102中相应器官的分割。每个分割通道可以由数值的有序集合(例如数值的3D阵列)表示,其中每个数值指定表征医疗图像102中的相应体素是否在与通道相对应的器官内部的分值。(在整个说明书中,器官的“内部”应理解为是指整个器官,例如包括器官的表面。)表征体素是否在器官内部的分值可能表征体素在器官内部的概率并且可能代表例如0到1之间的概率值概率。可选地,分割系统100可以例如通过将由每个通道指定的概率值舍入为对应二进制值(例如,0或1)来处理分割输出106,对应二进制值指示医学图像102中的对应体素是否在内部相应器官中的硬预测。

分割系统100可以使用训练引擎112在训练数据114集合上训练分割神经网络200的模型参数110。训练数据114可以由训练示例集合组成,其中每个训练示例指定:(i)训练医学图像,以及(ii)由分割神经网络200通过处理训练医学图像应生成的目标分割。目标分割可以由目标分割通道集合表示,即,其中每个目标分割通道定义相应器官的分割,并且可以由指定医疗图像的体素的目标分值的数值的3-D阵列表示。目标分值可以是二进制值,例如,值1指示器官内部包括体素,而值0指示其他。目标分割可以由例如放射治疗师或肿瘤医师的专家手动生成。

训练引擎112可以使用迭代训练过程(例如,随机梯度下降)来训练分割神经网络200的模型参数110。在多个训练迭代中的每一个处,训练引擎112可以从训练数据中选择(例如,采样)训练示例的“批次”(集合),并且使用分割神经网络200来处理由训练示例指定的训练医学图像以生成相应的分割输出106。训练引擎112可以确定批次中每个训练医学图像的分割损失,该分割损失表征了(i)根据用于训练医学图像的模型参数110的当前值生成的分割输出与(ii)相应的目标分割之间的误差。训练引擎112然后可以确定分割损失(即,相对于模型参数110)的梯度,并且使用该梯度来使用任何适当的梯度下降优化算法(例如,RMSprop或亚当)调整模型参数110的当前值。

训练引擎112可以以各种方式中的任何一种来确定训练医学图像的分割损失。例如,训练引擎112可以基于每个分割通道的最“困难”的体素,即在训练分割通道和目标分割通道之间具有最高误差,来确定分割损失。更具体地,对于每个训练分割通道,训练引擎112可以确定训练分割通道的每个体素与目标分割通道的相应体素之间的相应误差值。训练引擎112可以以任何适当的方式确定训练分割通道和目标分割通道的相应体素之间的误差值例如作为交叉熵误差。训练引擎112然后可以根据来自每个训练分割通道的最高误差值(例如,对应于来自每个训练分割通道的误差值的前5%、前10%或前15%)(例如,总和)确定总分割损失。通过使分割神经网络能够集中于训练医学图像中最困难(例如模棱两可)的体素,以这种方式确定分割损失可以加快训练。

训练引擎112可以使用数据增强技术来增加在训练分割神经网络中使用的训练示例的数量。特别地,训练引擎112可以通过将变换操作应用于由现有训练示例指定的训练医学图像(并且潜在地应用于由现有训练示例指定的目标分割)来从现有训练示例生成新训练示例。例如,这些变换可以包括平移、旋转、缩放、剪切、镜像、弹性变形或其组合,这些变换既应用于训练医学图像又应用于目标分割,或者向训练医学图像添加逐像素噪声(无需修改目标分割)。例如,通过减少过度拟合的概率并增加分割神经网络200对其输入的变化的鲁棒性,在增强的训练数据114集合上对分割神经网络200进行训练可以改善对分割神经网络200的训练。

响应于确定满足训练终止标准,训练引擎112可以停止训练分割神经网络200的模型参数110。例如,训练引擎112可以响应于确定在验证数据集合上评估的分割神经网络200的分割精度已经满足预定阈值而停止训练模型参数110。验证数据集合可以包括从分割神经网络200的训练“伸出”的训练示例,即,使得模型参数110不在来自验证数据的训练示例上训练。

训练引擎112可以以多种方式中的任何一种在验证数据上评估分割神经网络200的分割精度。例如,对于验证数据中的每个训练医学图像,训练引擎112可以将训练医学图像的每个器官的(即,由分割神经网络生成的)训练分割与对应的目标器官分割进行比较。训练引擎112可以通过计算两个分割之间的相似性度量来比较器官的两个分割,该相似性度量表征两个分割的表面之间而不是整个体积的一致性的度量。器官的训练分割的表面与目标分割的表面之间的一致性的量度可以表征训练分割的表面的分数,这将需要由专家手动校正,例如,以使分割能够用于放射治疗计划。

训练引擎112可以计算器官的两个分割的表面之间的一致性的量度,例如作为“表面小块量度”,其表征在另一个公差阈值内的两个表面的面积的分数。公差阈值(其可以表示为例如毫米的数值)可以表征训练分割的表面与对应的目标分割的表面之间的最大可接受偏差。图3A提供了表面小块度量的计算的图示。公差阈值可以是特定器官的值,该值被计算为例如由人类专家生成的器官的手动分割的表面之间的距离集合的百分位数(例如,第95个百分位数,或任何其他适当的百分位数)。两个分割的表面之间的“距离”可以是指一个表面上的点到另一表面上的任何点之间的最小距离。图3B提供了两个分割的表面之间的距离集合的图示。

训练引擎112可以以公差阈值τ>0计算两个表面S

其中

训练引擎112可以例如通过对相应表面上的体素进行计数来计算在等式(1)中引用的表面积。例如,为了计算

该方法还可以解决另一个问题,其使用“前景”体素表示表面低估了表面积,而使用“背景”体素高估了表面积。因此,可以将定义多边形网格的点放置在栅格上,该栅格在每个轴上偏移栅格间距的一半。在3D中,此栅格上的每个点都有八个相邻的体素,并且使用行进立方体算法定义了表示2

分割系统100可以例如,通过生成将器官分割覆盖在医学图像102上的可视化,将由分割神经网络200生成的分割输出106呈现给分割系统100的用户。分割系统100可以例如通过通过用户界面提供输入来使用户能够对分割输出106进行校正。用户可以将分割输出用作计划为患者104进行放射治疗的一部分。

图2A示出了分割神经网络200的示例架构。在该示例中,分割神经网络200具有编码器子网络202、链接块204和解码器子网络206。如贯穿本说明书所用的。“块”是指一组一个或多个神经网络层。通常,块的输入和输出可以表示为沿多个“空间”维度(例如,x-y维度或z-x-y维度)和“通道”维度索引的数值阵列。沿着维度的块输入/输出的“分辨率”是指沿着那个维度的索引值的数量。如果该块的第一层的中间输出(即,该块的输入)被添加到该块的下一层的中间输出(即,该块的输出),则该块可被称为“残留”块。

编码器子网络202包括多个编码器块的序列,例如,编码器块202-A-G,每个编码器块包括2-D卷积层、3-D卷积层或两者。每个编码器块被配置为处理编码器块输入以生成具有比编码器块输入低的空间分辨率的编码器块输出,即,使得编码器块输出的分辨率小于沿着至少一个空间维度的编码器块输入的分辨率。第一编码器块202-A可以被配置为处理医学图像102,而每个随后的编码器块202-B-G可以被配置为处理编码器子网络202中的先前编码器块的编码器块输出。参照图2B图示了示例编码器块架构。

链接块204被配置为处理链接块输入,该链接块输入包括编码器子网络202中的最终编码器块202-G的输出,以生成链接块输出,该链接块输出被提供为解码器子网络206的输入。参考图2C图示了示例链接块架构。

解码器子网络206包括多个解码器块的序列,例如,解码器块206-A-G,每个解码器块包括2-D卷积层、3-D卷积层或两者。每个解码器块被配置为处理解码器块输入以生成具有比解码器块输入高的空间分辨率的解码器块输出,即,使得解码器块输出的分辨率高于沿着至少一个空间维度的解码器块输入的分辨率。第一解码器块206-G可以被配置为处理输入,该输入包括:(i)链接块输出,和(ii)相应的编码器块202-G的中间输出。每个随后的解码器块206-A-F可以被配置为处理:(i)对应的编码器块的中间输出,以及(ii)解码器子网络中的先前解码器块的解码器块输出。例如,解码器块206-F可以被配置为处理:(i)相应的编码器块202-F的中间输出,以及(ii)解码器块206-G的输出。在本说明书中,编码器块的“中间输出”是指由编码器块的除了编码器块的输入层之外的任何层生成的输出。参考图2D图示出了示例解码器块架构。

分割神经网络200被配置为使用输出层208(“最终层”)处理最终解码器块206-A的输出,以生成分割输出106。输出层208可选地根据输出层权重集合(例如,定义一个或多个卷积操作)处理最终解码器块206-A的输出,然后分别将非线性“激活”函数(例如sigmoid激活函数)应用于分割输出106的每个分量。通过将激活函数分别应用于分割输出106的每个分量,分割神经网络可以将医学图像102的单个体素表征为可能属于多个器官。即,分割神经网络可以生成分割输出,该分割输出将“高”概率(例如接近1的概率)分配给不同分割通道的匹配分量,即与医学图像102中的相同体素相对应的分量。例如,分割神经网络可以生成分割输出,该分割输出将单个体素表征为极有可能同时属于“脊髓”和“椎管”。

将激活共同应用于分割输出106的分量组,即,不是分别应用于分割输出106的每个分量,可能导致分割输出无法将单个体素表征为属于多个重叠器官。例如,可以将soft-max激活函数联合应用于分割输出的分量组,其中组中的所有分量都对应于医学图像中的同一体素,每个组的分量的soft-max输出总和为1。要求将给定体素属于每个器官的概率总和为1,导致分割输出106无法将单个体素表征为极有可能属于多个器官。

图2B图示了分割神经网络的编码器子网络的编码器块210的示例架构。编码器块210被配置为处理块输入212以生成块输出214,即,具有比块输入212低的空间分辨率,以及中间输出216,如上所述。在图示中,“ReLU”是指整流线性单元激活函数,“1-D Conv”是指1-D卷积运算,“2-D Conv”是指2-D卷积运算,“3-D Conv”是指3-D卷积运算,“池”是指池化操作,“裁剪”是指在z维度中心对块输入进行裁剪,“加”是指加法操作。编码器块210的示例架构的各种示出的特征是可选的;例如,编码器块210可以排除2-D、3-D卷积操作或池化操作(或其组合)。在一个示例中,可以通过重复地应用1×3×3-维(在z-x-y坐标中)的卷积核,然后通过ReLU来实现2-D卷积运算,可以通过重复地应用1×3×3-维的卷积核,然后是3×1×1-维卷积核和ReLU来实现3-D卷积操作,并且池化操作可以实现为1×2×2维平均池化操作。

图2C图示了分割神经网络的链接块204的示例架构。链接块204被配置为处理(由最终编码器块生成的)块输入218以生成块输出220(其被提供给第一解码器块)。在图示中,“完全连接”是指由完全连接的神经网络层执行的操作,并且参照图2B定义“2-D Conv”和“ReLU”。在一个示例中,可以通过应用1×8×8维卷积核来实现2-D卷积操作。

图2D图示了分割神经网络的解码器子网络的解码器块222的示例架构。解码器块222被配置为处理解码器块输入以生成具有比该块输入高的空间分辨率的解码器块输出224,如上所述。通常,解码器块输入包括:(i)相应编码器块的中间输出226,以及(ii)先前解码器块228的输出或链接块的输出。为了方便起见,图2D图示了解码器块222接收先前解码器块输出228而不是链接块输出。在该图示中,“粗化”是指对输入进行操作以增加输入的空间分辨率的操作,“裁剪和堆叠”是指在z维度中裁剪编码器块中间输出226并将结果与粗化的先前解码器块输出228串联,并且参照图2B定义了“ReLU”、“1-D Conv”、“2-D Conv”和“加”。在一个示例中,可以通过应用1×3×3维卷积核来实现2-D卷积操作。

图3A图示了表面小块度量的计算的示例。为了方便起见,图3A图示了在2-D中计算表面小块度量的示例,但是更一般地,可以在3-D中计算表面小块度量以表征3-D器官分割之间的一致性的度量。在该示例中,实线302表示使用分割神经网络(参考图1描述)生成的预测器官分割的表面,并且虚线304表示例如由放射治疗师手动生成的目标器官分割的表面。箭头306表示公差阈值,即,最大可接受的偏差余量。暗线段302-A、302-B、304-A和304-B表示表面之间的距离超过公差阈值的表面的部分。表面小块度量表征了与总表面积相比在彼此的公差阈值内的表面的面积,如参考图1所描述的。

图3B图示了特定器官的公差阈值的确定。为了方便起见,图3B(与图3A一样)图示了2-D中的分割,但是更一般地,器官的分割可以是3-D中的。线308和310表示由不同专家手动生成的器官的两个分割的表面,并且线308和310之间的线段表示两个表面之间的距离。特定器官的公差可以定义为例如器官的手动分割的表面之间的距离的第95个百分位数。

图4图示了与放射治疗师相比的分割系统的定量性能的示例。对于多个器官中的每个器官(例如,大脑、脑干、耳蜗等),第一柱形图示出了由分割系统生成的器官分割与黄金标准分割相比的表面小块量度的平均值,并且第二柱形图示出了放射治疗师生成的器官分割与黄金标准分割相比的表面小块量度的平均值。在21个器官中的19个器官中,分割系统的性能与放射治疗师的性能之间没有实质性差异,即其中实质差异定义为5%或更高。

图5是用于训练和使用分割神经网络的示例过程500的流程图。为了方便起见,将过程500描述为由位于一个或多个位置的一个或多个计算机的系统执行。例如,分割系统,例如根据该说明书适当编程的图1的分割系统100可以执行过程500。

系统接收医学图像,其使用医学成像模态捕获并且描绘人体中的组织区域(502)。医学成像模态可以是例如计算机断层摄影(CT)模态。人体中的组织区域可以是例如头部和颈部区域。

系统使用分割神经网络处理医学图像以生成分割输出(504)。分割输出可以包括分割通道集合,其中每个分割通道对应于来自预定的器官集合中的相应器官并定义医学图像中器官的分割。对于医学图像中的多个体素中的每一个,医学图像中器官的分割指定表征该体素是否对应于器官内部的分值。预定器官集合可以包括接受放射疗法治疗的患者中处于危险中的一个或多个器官。分割输出可以用于放射治疗计划。

分割神经网络可以包括具有多个编码器块序列的编码器子网络,其中每个编码器块是残差神经网络块,其包括一个或多个二维卷积神经网络层、一个或多个三维卷积神经网络层,或两者。每个编码器块可以被配置为处理编码器块输入以生成具有比编码器块输入低的空间分辨率的编码器块输出。在第一编码器块之后的每个编码器块可以处理包括先前编码器块的输出的输入。编码器块中的三维卷积神经网络层可以包括填充的xy卷积和未填充的z卷积。

分割神经网络可以包括链接块,该链接块包括完全连接的神经网络层。链接块可以被配置为处理包括最终编码器块的输出的链接块输入以生成链接块输出。

分割神经网络可以包括具有多个解码器块序列的解码器子网络,其中每个解码器块是残差神经网络块,其包括一个或多个二维卷积神经网络层、一个或多个三维卷积神经网络层或两者。每个解码器块被配置为处理解码器块输入以生成具有比解码器块输入高的空间分辨率的解码器块输出。第一解码器块可以被配置为处理包括链接块输出的输入,并且每个后续解码器块可以被配置为处理包括以下的输入:(i)相应编码器块的中间输出;以及(ii)先前解码器块的输出。

分割神经网络可以包括最终层,其被配置为处理(例如,来自解码器子网络的)最终层输入以生成分割输出。最终层可以根据最终层权重集合的值来处理最终层输入,以生成变换后的最终层输入,然后使用sigmoid激活函数来处理变换后的最终层输入,以生成分割输出。

该系统可以计算(i)由分割输出的分割通道定义的医学图像中的器官的分割与(ii)医学图像中的器官的参考(目标)分割之间的表面小块度量。例如,系统可以确定在(i)分割的表面与(ii)参考分割的表面周围的公差区域的交点中的体素的第一数量。该系统可以确定在(i)参考分割的表面,和(ii)分割的表面周围的公差区域的交点中的体素的第二数量。系统可以将表面小块度量确定为(i)体素的第一数量和体素的第二数量之和与(ii)分割的表面和目标分割的表面中的体素的数量之和的比率。

在训练期间,系统调整分割神经网络权重的当前值(506)。特别地,该系统通过确定分割输出的每个通道的相应的误差值集合来确定医学图像的分割损失。分割通道的误差值集合中的每个误差值都对应于医学图像中的相应体素,并且基于(i)来自分割通道的表征了体素是否对应于与分割通道相对应的器官的内部的与(ii)定义体素是否对应于与分割通道相对应的器官内部的目标分值之间的误差。该系统可以计算该误差,例如,作为交叉熵误差。系统识别每个分割通道的相应最高误差值集合(例如,作为分割通道的总误差值集合的“适当子集”),并基于每个分割通道的最高误差值确定分割损失。例如,系统可以通过对每个分割通道的最高误差值求和来确定分割损失。然后,系统例如通过通过分割神经网络权重对分割损失的梯度进行反向传播,基于分割损失来调整分割神经网络权重的当前值。

本说明书结合系统和计算机程序组件使用术语“配置的”。对于一个或多个要配置为执行特定操作或动作的计算机的系统,意味着该系统已在其上安装了软件、固件、硬件或它们的组合,这些软件、固件、硬件或它们的组合在操作中导致系统执行这些操作或动作。对于将被配置为执行特定操作或动作的一个或多个计算机程序,意味着该一个或多个程序包括指令,该指令在由数据处理装置执行时使该装置执行该操作或动作。

本说明书中描述的主题的实施例和功能操作可以在数字电子电路中,在有形体现的计算机软件或固件中,在计算机硬件中实施,包括本说明书中公开的结构及其等同结构,或者其一种或多种的组合中。本说明书中描述的主题的实施例可以被实现为一个或多个计算机程序,即,在有形的非暂时性存储介质上编码的计算机程序指令的一个或多个模块,以便由数据处理装置执行或控制数据处理装置的操作。所述计算机存储介质可以是机器可读存储设备、机器可读存储基板、随机或串行访问存储设备或它们中的一个或多个的组合。替代地或附加地,程序指令可以被编码在人工产生的传播信号上,例如机器产生的电、光或电磁信号,其被生成以对信息进行编码以传输到合适的接收器装置以由数据处理装置执行。

术语“数据处理装置”是指数据处理硬件,并且包括用于处理数据的各种装置、设备和机器,例如包括可编程处理器、计算机或多个处理器或计算机。该装置还可以是或进一步包括专用逻辑电路,例如,FPGA(现场可编程门阵列)或ASIC(专用集成电路)。除硬件之外,该装置可以可选地包括为计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或其一种或多种的组合的代码。

计算机程序,也可以称为或描述为程序、软件、软件应用、应用程序、模块、软件模块、脚本或代码,可以用任何形式的编程语言编写,包括编译或解释性语言,或声明性或程序性语言;它可以以任何形式进行部署,包括作为独立程序或作为模块、组件、子例程或适用于计算环境的其他单元进行部署。程序可以但不必对应于文件系统中的文件。程序可以存储在保存其他程序或数据的文件的一部分中,例如存储在标记语言文档中的一个或多个脚本,专用于所讨论程序的单个文件中,或多个协调文件中,例如,存储一个或多个模块、子程序或部分代码的文件。可以将计算机程序部署为在一个计算机上执行,或者在位于一个站点上或分布在多个站点上并通过数据通信网络互连的多个计算机上执行。

在本说明书中,术语“引擎”广泛用于是指经过编程以执行一个或多个特定功能的基于软件的系统、子系统或过程。通常,引擎将被实现为安装在一个或多个位置的一个或多个计算机上的一个或多个软件模块或组件。在某些情况下,一个或多个计算机将专用于特定引擎;在其他情况下,可以在同一或多个计算机上安装并运行多个引擎。

可以通过一个或多个可编程计算机执行本说明书中描述的处理和逻辑流程,所述一个或多个可编程计算机执行一个或多个计算机程序以通过对输入数据进行操作并生成输出来执行功能。所述过程和逻辑流程还可以通过专用逻辑电路(例如,FPGA或ASIC)或者通过专用逻辑电路和一个或多个编程计算机的组合来执行。

适合于执行计算机程序的计算机可以基于通用或专用微处理器或两者,或者任何其他种类的中央处理单元。通常,中央处理单元将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于进行或执行指令的中央处理单元以及用于存储指令和数据的一个或多个存储设备。中央处理单元和存储器可以由专用逻辑电路补充或并入专用逻辑电路中。通常,计算机还将包括或可操作地耦合以从用于存储数据的一个或多个大容量存储设备(例如,磁、磁光盘或光盘)接收数据或将数据传输到一个或多个大容量存储设备或将数据传输到这两个或两个以上大容量存储设备。但是,计算机不必具有此类设备。此外,计算机可以嵌入到另一设备中,例如,移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏机、全球定位系统(GPS)接收器或便携式存储设备,例如通用串行总线(USB)闪存驱动器等。

适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储设备,包括例如半导体存储设备,例如EPROM、EEPROM和闪存设备;磁盘,例如内部硬盘或可移动磁盘;磁光盘;以及CD-ROM和DVD-ROM光盘。

为了提供与用户的交互,可以在具有显示设备(例如CRT(阴极射线管)或LCD(液晶显示器)监视器)的计算机上实现本说明书中描述的主题的实施例,以用于向用户显示信息以及键盘和指点设备(例如鼠标或轨迹球),用户可以通过它们向计算机提供输入。其他种类的设备也可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如视觉反馈、听觉反馈或触觉反馈;并且可以以任何形式接收来自用户的输入,包括声音、语音或触觉输入。另外,计算机可以通过向用户使用的设备发送文档和从用户使用的设备接收文档来与用户进行交互;例如,通过响应于从网络浏览器接收到的请求,将网页发送到用户设备上的网络浏览器。而且,计算机可以通过将文本消息或其他形式的消息发送到个人设备(例如,运行消息收发应用的智能手机),并然后从用户接收响应消息来与用户交互。

用于实现机器学习模型的数据处理设备还可以包括例如专用硬件加速器单元,用于处理机器学习训练或生产(即推论)工作负载的公共部分和计算密集型部分。

可以使用机器学习框架,例如TensorFlow框架、Microsoft Cognitive Toolkit框架、Apache Singa框架或Apache MXNet框架来实现和部署机器学习模型。

本说明书中描述的主题的实施例可以在包括后端组件(例如,作为数据服务器),或者包括中间件组件(例如,应用服务器),或者包括前端组件(例如具有图形用户界面的客户端计算机、网络浏览器或应用,用户可通过该应用与本说明书中描述的主题的实施方式进行交互),或一个或多个此类的后端、中间件或前端组件的任何组合的计算机系统中实现。系统的组件可以通过数字数据通信的任何形式或介质(例如,通信网络)互连。通信网络的示例包括局域网(LAN)和广域网(WAN),例如因特网。

计算系统可以包括客户端和服务器。客户端和服务器通常彼此远离,并且通常通过通信网络进行交互。客户端和服务器的关系是通过在各自计算机上运行并彼此具有客户端-服务器关系的计算机程序产生的。在一些实施例中,服务器例如向用户设备发送数据,例如HTML页面,以用于向与(充当客户端的)设备交互的用户显示数据并从该用户接收用户输入。可以在服务器处从设备接收在用户设备处生成的数据,例如,用户交互的结果。

尽管本说明书包含许多具体的实施细节,但是这些细节不应被解释为对任何发明的范围或所要求保护的范围的限制,而应视为对特定于特定发明的特定实施例的特征的描述。在单独的实施例的上下文中在本说明书中描述的某些特征也可以在单个实施例中组合地实现。相反,在单个实施例的上下文中描述的各种特征也可以分别在多个实施例中或以任何合适的子组合来实现。此外,尽管以上可能将特征描述为以某些组合形式起作用,甚至最初也这样要求保护,但是在某些情况下,可以从该组合中切除所要求保护的组合的一个或多个特征,并且所要求保护的组合可以针对子组合或子组合的变体。

类似地,虽然在附图中描绘了操作并且以特定顺序在权利要求中对其进行了叙述,但是这不应被理解为要求以所示的特定顺序或以连续的顺序执行这样的操作,或者所有图示的操作必须以特定的顺序执行,以获得理想的结果。在某些情况下,多任务和并行处理可能是有利的。此外,上述实施例中的各种系统模块和组件的分离不应被理解为在所有实施例中都需要这种分离,并且应当理解,所描述的程序组件和系统通常可以在单个软件产品中被集成在一起或打包成多个软件产品。

已经描述了主题的特定实施例。其他实施例在所附权利要求的范围内。例如,权利要求中记载的动作可以以不同的顺序执行并且仍然实现期望的结果。作为一个示例,附图中描绘的过程不一定需要所示的特定顺序或连续顺序来实现期望的结果。在某些情况下,多任务处理和并行处理可能是有利的。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号