用于识别宠物的癌症的系统和方法与流程

未命名 08-07 阅读:72 评论:0

用于识别宠物的癌症的系统和方法
权益要求
1.本技术根据35 u.s.c.第119条,要求2021年8月16日提交的临时申请63/233,674、2021年2月24日提交的临时申请63/153,308和2020年12月15日提交的临时申请63/125,926的权益,其全部内容通过引用并入本文,如同在本文完全阐述以用于所有目的。
技术领域
2.本公开大体涉及用于从动物组织的数字图像中识别癌症的机器学习系统。


背景技术:

3.一种量化动物或宠物中癌症的侵袭性的方法是计算在特定时间内在身体特定区域中进行有丝分裂的细胞数量。有丝分裂计数可以在传统的分级方案中发挥作用,例如犬肥大细胞瘤、犬软组织肉瘤、犬黑色素细胞肿瘤、犬和猫乳腺肿瘤等。身体特定区域的有丝分裂细胞的密度增加可以指示癌症或影响动物的其他疾病,例如,其可以指示检测到的赘生物是良性还是恶性,或为医生提供有价值的预后信息。然而,当前用于确定有丝分裂细胞密度增加的过程涉及查看动物或宠物的特定区域的医学图像,并手动识别任何关注的区域。这个查看过程可能是乏味的、耗时的,并且受到各种不准确或观察者间差异的影响。观察有丝分裂细胞的密度可能很困难,至少部分原因是关注的区域可能比正在查看的整体图像小得多。此外,图像中特定的有丝分裂区域的分辨率较差,可能会带来额外的复杂性。不同的观察者,即使是那些接受过类似方法训练的观察者,在查看同一幅图像时也会得出不同的结论,从而导致不同观察者之间的应用不一致和差异。这些观察的主观性会导致错误,并降低有丝分裂计数的整体效率。
4.因此,需要提供更一致、高效和客观的有丝分裂计数,并使分析各种分辨率和大小的医学图像的过程自动化,以产生临床上可靠的有丝分裂细胞的测定。


技术实现要素:

5.某些非限制性实施例提供了用于使用机器学习系统识别癌症的系统、方法、介质及其组合。例如,数字活检图像,例如医学扫描设备经常使用的平铺svs格式图像,或任何其他医学数字成像和通信(dicom)图像,使用一种或多种机器学习模型或工具进行处理。机器学习模型或工具,例如可以是k-近邻(knn)、朴素贝叶斯(nb)、决策树或随机森林、支持向量机(svm)、深度学习模型,如卷积神经网络(cnn)、基于区域的cnn(rcnn)、一维(1-d)cnn、递归神经网络(rnn),或任何其他机器学习模型或技术。机器学习模型或工具可以被训练,以识别相关图像或切片,并识别切片中显示的有丝分裂细胞。
6.某些非限制性实施例可以针对一种方法。该方法可以包括以下一项或多项:在计算设备处接收活检切片的图像;执行第一编程指令,以将活检切片的图像输入到编程为癌症分类器的第一经训练的机器学习模型,从而输出活检切片的图像的分类;基于该分类,确定活检切片的图像需要被进一步处理;对活检切片的图像执行组织检测算法,从而输出第
一组坐标;执行第二编程指令,以将活检切片的图像和第一组坐标输入到为图像分割而编程的第二经训练的机器学习模型,从而输出二进制像素掩码;执行第三编程指令,以使用二进制像素掩码生成增强像素掩码;以及,在计算机存储器中以数字方式存储由增强像素掩码指示的第二组坐标。
7.一个实施例包括执行第四编程指令,实现基于kd树的算法,以基于增强的像素掩码输出具有最多有丝分裂图的视野;并在计算机存储器中将该视野和该第二组坐标以数字方式存储在文件中。
8.在一个实施例中,该视野包括10个高倍镜视野。
9.一个实施例包括在设备显示器上显示该视野。
10.在一个实施例中,组织检测算法包括对活检切片的图像的低分辨率视图执行粗略的组织分割。
11.在一个实施例中,第三编程指令被编程为:使得对于二进制像素掩码中指示有丝分裂图的每一组相连的坐标,确定对应的旋转矩形,每个旋转矩形具有包围有丝分裂图的近似轮廓的最小面积;以及使得生成增强像素掩码,以仅包括与相应宽度大于阈值宽度的旋转矩形相关联的坐标,所述阈值宽度以数字方式存储在计算机存储器中。
12.在一个实施例中,第三编程指令被进一步编程,以使得对二进制像素掩码进行膨胀,重复膨胀的迭代次数与存储在计算机存储器中的内核大小和有丝分裂细胞极间的距离成比例。
13.在一个实施例中,第二经训练的机器学习模型包括具有跳跃连接的卷积神经网络,其被训练以最小化平衡交叉熵(bce)软dice损失(soft-dice-loss)函数或软dice损失(soft-dice-loss)函数中的至少一个。
14.在一个实施例中,第二经训练的机器学习模型还包括用imagenet预训练的u-net模型。
15.在一个实施例中,活检切片的图像包括动物或宠物中的至少一者的活检图像,并且其中活检图像是使用医学成像设备生成的。
16.在一个实施例中,活检切片的图像包括全视野切片图像(wsi)。
17.一个实施例包括显示输出图像,该输出图像包括活检切片图像的表示和分类。
18.一个实施例包括以编程方式对活检切片的图像进行预处理,其中预处理包括确定活检切片的图像足够清晰以用于进一步处理。
19.在一个实施例中,活检切片的图像包括全视野切片图像,并且预处理包括以下至少一种:确定活检切片的图像的分辨率超过存储在计算机存储器中的阈值分辨率,或确定全视野切片图像所包含的切片图像数量超过计算机存储器中存储的阈值数量。
20.一个实施例包括:使用第二组坐标以编程方式计算有丝分裂图的计数;以及,以数字方式将有丝分裂图的计数存储在计算机存储器中。
21.在一个实施例中,计算设备包括服务器计算机,并且活检切片的图像是从客户端计算设备接收的。
22.在一个实施例中,该文件包括可扩展标记语言(xml)文件。
23.一个实施例包括从服务器计算机向客户端计算设备传送关于活检切片的图像的信息,作为从可扩展标记语言(xml)文件呈现的注释。
24.一个实施例包括使用包括可伸缩块的分布式的、去中心化的和异步的架构来执行一种方法,该可伸缩块包括管理程序,并且管理程序使用docker容器来实现。
25.某些非限制性实施例可以涉及计算机可读非暂时性存储介质,其包括当由一个或多个处理器执行时可操作的指令,以使系统执行本文描述的任何方法或技术。
26.某些非限制性实施例可以涉及一种系统,该系统可以包括一个或多个处理器、耦合到一个或多个处理器的一个或多个计算机可读非暂时性存储介质,并且包括指令,当指令由一个或多个处理器执行时可操作,以使系统执行本文所述的任何方法或技术。
27.某些非限制性实施例可以涉及用于在临床环境中使用所公开的系统和方法的系统架构。例如,在特定实施例中,可以利用一个或多个预处理步骤和/或后处理步骤来提高资源效率。这些步骤可以由利用基于拉取的异步架构的系统架构执行,该架构可以在指定时间段内,随着新的扫描结果的出现,将其添加到处理队列中。
28.本文公开的实施例仅是示例,并且本公开的范围不限于此。某些非限制性实施例可以包括本文公开的实施例的所有、部分或不包括的组件、元件、特征、功能、操作或步骤。根据本发明的实施例特别在所附的涉及方法、存储介质、系统和计算机程序产品的权利要求中公开,其中在一个权利要求类别(例如方法)中提及的任何特征,也可以在另一个权利要求类别(例如系统)中要求主张。所附权利要求中的从属项或引用只是出于形式原因而选择的。但是,任何由于有意引用任何在先权利要求(特别是多重引用)而产生的主题内容也可以被要求主张,因此无论所附的权利要求中选择的引用关系如何,权利要求和其特征的任何组合都被公开并且可以被要求主张。可以被要求主张的主题内容不仅包括所附权利要求中所列的特征的组合,还包括权利要求中的任何其他特征组合,其中,权利要求中提及的每个特征可以与权利要求中的任何其他特征或其他特征的组合相结合。此外,本文中描述或示出的任何实施例和特征可以在单独的权利要求中被要求主张,和/或与本文描述或示出的任何实施例或特征、或与所附权利要求的任何特征的任何组合相结合而被要求主张。
附图说明
29.为了更完整地理解本公开及其特征和优点,现在参考以下描述并结合附图来理解。在附图中:
30.图1示出了评估有丝分裂图以识别癌症的七步框架的示例。
31.图2示出了根据某些实施例的示例机器学习模型。
32.图3示出了活检切片的分类数据和类别的一组示例。
33.图4示出了根据某些实施例的机器学习模型的示例组件。
34.图5示出了使用机器学习系统识别癌症的示例方法。
35.图6示出了根据某些非限制性实施例的用于使用机器学习工具促进癌症诊断的示例计算机系统或设备。
36.图7示出了根据某些非限制性实施例的示例性活检切片分类。
37.图8示出了根据某些非限制性实施例的已部署分布架构的示例。
38.图9示出了根据某些非限制性实施例的泊松回归分析的条件λi。
39.图10示出了在没有人工智能的情况下、在人工智能的协助下,以及在仅利用人工智能的情况下执行的示例有丝分裂计数的结果。
具体实施例
40.本说明书中使用的术语在本公开的上下文中、以及在使用每个术语的特定上下文中通常具有它们在本领域中的普通含义。下文或说明书中的其他地方讨论了某些术语,以便在描述本公开的组合物和方法、以及如何制造和使用它们时提供额外的指导。
41.如在说明书和所附权利要求中使用的,除非上下文另有明确规定,否则单数形式“一”、“一个”和“所述”包括复数指代。
42.如本文所使用的,术语“包括”、“包含”或它们的任何其他变体旨在覆盖非排他性包括,使得包括一系列元素的过程、方法、制品、系统或装置不仅包括那些元素,还可以包括未明确列出的其他元素或这样的过程、方法、制品或设备固有的其他元素。
43.如本文中所用,根据本公开使用的术语“动物”或“宠物”指家养动物,包括但不限于家犬、家猫、马、牛、雪貂、兔、猪、大鼠、小鼠、沙鼠(gerbils)、仓鼠、山羊等。家犬和家猫是宠物的特定非限制性例子。在适当的情况下,根据本公开使用的术语“动物”或“宠物”还可以指代野生动物,包括但不限于野牛、麋鹿、鹿、野鹿、鸭、飞禽、鱼等。
44.如本文所用,图像或切片的“特征”可以基于图像或切片的一个或多个可测量特性来确定。例如,特征可以是在活检图像中检测到的组织致密区域。
45.在本文的详细描述中,对“实施例”、“一种实施例”、“一个实施例”、“在各种实施例中”、“某些实施例”、“一些实施例”、“其他实施例”、“某些其他实施例”等的引用指示所描述的一个或多个实施例可以包括特定特征、结构或特性,但是每个实施例可能不必包括特定特征、结构或特性。此外,这样的短语不一定指代相同的实施例。此外,当结合一个实施例描述特定特征、结构或特性时,无论是否有明确描述,皆认为结合其他实施例来实现这样的特征、结构或特性在本领域普通技术人员的知识范围内。在阅读了说明书之后,本领域普通技术人员将容易想到如何在替代实施例中实现本公开。
46.如本文所用,术语“设备”是指计算系统或移动设备。例如,术语“设备”可以包括智能手机、平板电脑或笔记本电脑。具体而言,计算系统可以包括用于确定其位置、方向或方位的功能,例如gps接收器、指南针、陀螺仪或加速度计。客户端设备还可以包括用于无线通信的功能,例如蓝牙通信、近场通信(nfc)或红外(ir)通信或与无线局域网(wlan)或蜂窝电话网络的通信。这样的设备还可以包括一个或多个摄像头、扫描器、触摸屏、麦克风或扬声器。客户端设备还可以执行软件应用程序,例如游戏、网络浏览器或社交网络应用程序。例如,客户端设备可以包括用户设备、智能手机、平板电脑、笔记本电脑、台式电脑或智能手表。
47.可以由计算系统或客户端设备通过移动应用程序和关联的图形用户界面(“ux”或“gui”)进行或执行示例过程和实施例。在某些非限制性实施例中,计算系统或客户端设备可以是例如移动计算系统——例如智能手机、平板电脑或笔记本电脑。该移动计算系统可以包括用于确定其位置、方向或方位的功能,例如gps接收器、指南针、陀螺仪或加速度计。这样的设备还可以包括用于无线通信的功能,例如蓝牙通信、近场通信(nfc)或红外(ir)通信或与无线局域网(wlan)、3g、4g、lte、lte-a、5g、物联网或蜂窝电话网络的通信。这样的设备还可以包括一个或多个摄像头、扫描器、触摸屏、麦克风或扬声器。移动计算系统还可以执行软件应用程序,例如游戏、网络浏览器或社交网络应用程序。通过社交网络应用程序,用户可以与社交网络中的其他用户联系、交流和共享信息。
48.一般而言,有丝分裂图的计数涉及在肿瘤(或类似体)的多个切片切面中确定具有有丝分裂活动最高的位点。由于病理样本的大小(包括,在某些示例性实施例中,每个肿瘤多达20个切片),位点选择可能是一个耗时的过程。选择位点后,还需要进一步的时间和精力来定量评估有丝分裂图的计数,特别是在有丝分裂活动高的区域。在这两个步骤中,由观察者间的差异和主观判断引起的效率低下,降低了所获得的有丝分裂图的计数的准确性,并浪费了宝贵的诊断和治疗时间。
49.组织病理学分析工具的自动化为基于实践的效率提供了可能,因为其可以客观地确定有丝分裂图的计数,而不会出现因个别观察者的主观判断而导致的错误。
50.图1示出了用于评估有丝分裂图以识别癌症的七步流程框架示例。该识别可以包括确定或诊断。特别是,图1中示出的过程包括七个步骤,其用于在特定图像中识别有丝分裂细胞或包含有丝分裂细胞的区域。虽然图1中所示的过程使用七个步骤,但其他实施例可以使用图1中标识的一个或多个步骤,并且这些步骤可以按照列出的顺序或任何其他顺序,以及本领域技术人员已知的任何其他步骤来完成。在一个实施例中,所有七个步骤都是使用一个或多个存储的指令程序、方法、功能或其他软件元素由计算机实现的,如本文其他部分中进一步描述的。
51.在第一步骤110,计算机系统(其可以包括如图6所示的计算机组件以及可以充分接收和处理图像的其他组件)接收已经被数字化方式存储的活检图像。在一些实施例中,每个活检图像是全视野切片图像(“wsi”),其是从活检收集的组织和数字成像、扫描或摄影中获得的。活检图像可以包括来自医学成像设备的一个或多个切片图像。切片图像可以具有各种分辨率,例如200,000
×
200,000像素或更小。在其他非限制性实施例中,第一步骤110可以涉及接收一个或多个任何其他医学数字成像和通信(dicom)图像。可以从服务器(例如云服务器)或从网络上的任何其他计算或客户端设备接收图像,使用对图像存储的数据库查询、对api的编程调用、接收包含图像的文件夹或目录的网络路径名后迭代打开文件,或其他编程技术。该图像可以由任何已知的医学成像设备拍摄。
52.在第二步骤120,编程该方法以对活检图像内的每张切片进行分类。步骤120的分类可以,例如,基于切片是否具有癌细胞或足够清晰以进行有丝分裂图分析,来确定切片是否应该被视为分析的一部分。通过步骤120的分类,不包含癌细胞的切片可以在初步步骤中被过滤掉不予分析,并防止被进一步分析。因此,在一个实施例中,步骤120包括基于切片的分类,确定切片有很高的可能性包含癌症,并且基于该确定,发送该切片以供进一步处理。此外,步骤120的分类可以通过移除或消除那些不需要继续执行步骤130、140、150、160、170的切片来帮助减少系统的工作量。在其他非限制性实施例中,在第二步骤120中,可以评估切片的任何其他特性,包括切片的分辨率和/或包含在特定的wsi内的切片图像的数量。不符合基本阈值标准的切片可以被拒绝;标准的值可以以数字方式存储在配置文件中,通过用户输入接收,或硬编码为声明的常量或固定值。在某些实施例中,分类模型可以使用cnn进行训练。例如,可以使用预训练(如imagenet)残差神经网络(resnet)架构对数字活检图像进行特征提取,然后使用全连接层和softmax激活函数来判断切片包含癌细胞的概率。在某些实施例中,可以使用18层深度的resnet-18架构。
53.在第三步骤130,编程该方法以计算wsi中的滑动窗口坐标。由于活检图像的尺寸较大、和/或实施图1过程框架的系统的潜在存储器限制,使用滑动窗口的数据,一次只能检
查与每张切片相关的所有数据的一部分。滑动窗口的数据可以是完整切片的数据子集,被编程为具有系统在特定时间段可以在主存储器中观察和处理的大小。在一些非限制性实施例中,滑动窗口可以通过最初识别位于切片图像内的组织来确定。例如,可以通过检测图像中组织和一般背景之间的对比度来识别组织;对比度检测可以区分,例如,由背光玻璃产生的亮白色背景。组织的识别和/或与一般背景的分离可被称为组织分割。以这种方式检测对比度,通过将该方法快速收敛到可能产生有用的实质性结果而不是代表噪声的数据窗口,可以提高效率。
54.在第四步骤140,编程该方法以评估每个识别的滑动窗口中的数据。一旦该方法评估了每个滑动窗口,该方法就被编程为识别特定窗口内的潜在有丝分裂细胞。所识别的有丝分裂细胞可以在图像副本中突出显示和/或发送到步骤150,该图像使用用户计算设备的显示设备向用户显示。在某些非限制性实施例中,可以使用深度学习网络来执行步骤140的数据评估。例如,可以利用包括u-net和/或跳跃连接在内的架构和技术来构建cnn。u-net可以与其他技术一起使用,包括但不限于batchnorm、dice损失(diceloss)、tversky损失(tversky loss)、混合(mixup)、架构更改(architecture changes)、图像修补(image patching)、gan训练(gan-training)、双线性上采样(bilinear upsampling)和/或残差convblock(residual convblocks)。其他机器学习模型、技术或架构可以结合硬负样本挖掘(hard negative mining)、积极增广(aggressive augmentation)、混合损失(mixing losses)、集成(ensembling)、掩码(masking)、调整尺寸(re-sizing)和/或分割(segmentation)中的一项或多项。该系统使用一种或多种此类技术来识别潜在的有丝分裂图。
55.在某些非限制性实施例中,深度学习网络可以包括遵循u-net结构的cnn。例如,深度学习网络可以被训练为最小化以下损失函数:其中表示损失函数,α表示超参数,范围为∈[0,1],d
150
表示150
×
150像素的图像像素化,并且d
600
表示600
×
600像素的图像像素化。在一些非限制性示例中,可以设置为最小化平衡交叉熵软dice损失(bce-soft-dice-loss),其在50个周期(epochs)上进行训练,和/或软dice损失(soft dice loss),其在100个周期(epochs)上进行训练。在某些非限制性实施例中,被设置为用最小化平衡交叉熵软dice损失(bce-soft-dice-loss)训练多个周期,然后在其他周期上使用软dice损失(soft dice loss)来训练模型。
[0056]
在第五步骤150,编程该方法以执行后处理阶段,其中可以从初始输出数据中去除假阳性(false positives)。假阳性可以使用用一个或多个已标记的训练数据集训练的机器学习模型来确定。这些已标记的训练数据集可以是多个活检切片的图像和多个分别关联的基准真相(ground truth)标签或注释。训练数据集中表示的一个示例关系可以是致密组织表示有丝分裂细胞。这种关系可以在包含一组指定的数字图像的训练数据集中表示出来,这些数字图像已被手动标记或使用单独训练的机器学习模型进行标记。本文对模型训练进行了更具体地解释。在某些非限制性实施例中,掩码形式的负训练数据可用于该方法,以识别一个或多个有丝分裂细胞的潜在聚集何时被错误识别或被两次计数。
[0057]
在第六步骤160,编程该方法以确定表示有丝分裂图的像素的所有坐标、并对有丝
分裂图进行计数。有丝分裂图可以按照如本文所解释的更具体的方式进行计数。有丝分裂图像的所有像素的坐标都可以数字化存储。此外,可以确定具有最多有丝分裂图的区域,例如10个高倍镜视野子区域,并以数字方式存储。
[0058]
在第七步骤170,可以将结果发送给病理学家或其他人,以供进一步分析或解释。然后,该结果可以显示在网络上的计算设备上和/或由病理学家或者任何其他感兴趣的人查看。还可以包括有关分析和解释的其他信息。
[0059]
图2示出了机器学习模型的非限制性实施例,其可用于比较具有不同形状、尺寸和/或方向的解剖结构的图像或图像数据的滑动窗口。用于训练机器学习模型的训练数据集可以包括多个具有不同形状、尺寸和/或方向的图像,以训练机器学习模型翻转、旋转和重塑图像,以便进行适当的评估和比较。在图2的示例中,机器学习模型使用u-net架构200。u-net架构200包括使用层的特定编码器-解码器方案。编码器减少空间维度并增加通道。解码器增加空间维度并减少通道。最后,空间维度可以被恢复,以对输入图像中的每个像素进行预测。
[0060]
图2示出的示例u-net 200遵循对称的架构。编码器(左侧)由重复的3
×
3卷积块201组成。每个卷积可以后接relu和批量归一化。3
×
3卷积块201可以后接2
×
2最大池化块203,以减少空间维度。解码器(右侧)包括上采样和2
×
2转置卷积块204,其将特征通道的数量减半。这些上采样块204中的每一个可以后接重复的3
×
3卷积块201(每个后接relu)。在最后一层,可以使用1
×
1卷积块205将通道映射到期望的类别数量。值得注意的是,所示出的u-net 200还包括“复制和裁剪”块202,由于在每个卷积中都会损失边界像素,所以这可能是必要的。
[0061]
在特定实施例中,u-net 200可以与其他技术一起使用,包括但不限于batchnorm、dice损失(diceloss)、tversky损失(tversky loss)、混合(mixup)、架构更改(architecture changes)、图像修补(image patching)、gan训练(gan-training)、双线性上采样(bilinear upsampling)和/或残差convblock(residual convblocks)。
[0062]
在一些非限制性实施例中,机器学习框架可以包括卷积神经网络(cnn)组件,该组件根据从多个图像和相应的特性和分类值收集的训练数据进行训练。所收集的训练数据,例如,可以是客户端设备拍摄的一幅或多幅图像。cnn是一种人工神经网络,包括具有一个或多个节点的一个或多个卷积层和子采样层。一个或多个层,包括一个或多个隐藏层,可以被堆叠以形成cnn架构。在实施例中,cnn被配置为通过接触大量的已标记的训练数据,来学习确定输入图像的图像参数和后续的分类和特性。虽然在某些示例中,神经网络可以为每个输入-输出对训练一个学习权重,但cnn也可以沿着其输入将可训练的固定长度的内核或过滤器进行卷积,以学习识别小的、原始的特征,并以复杂的方式组合它们。图2的cnn在特定的已标记图像的合成数据集上训练时,能够允许准确地进行目标分割和图像特征分类,以及预测真实图像中可能的特征。cnn可以是有监督的或无监督的。
[0063]
在某些非限制性实施例中,可以使用池化、填充(padding)和/或跨步(striding)来减少图2的cnn的输出在执行卷积时的维度上的大小,从而降低计算成本和/或减少过度训练可能。跨步可以描述过滤器窗口滑动的大小或步数,而填充可以包括用零填充数据的某些区域,以在跨步之前或之后对数据进行缓冲。例如,池化可以包括简化由卷积层或任何其他层收集的信息,并创建这些层内所含的信息的压缩版本。
[0064]
在一些示例中,可以使用基于区域的cnn(rcnn)或一维(1-d)cnn。rcnn包括使用选择性搜索来识别图像中的一个或多个感兴趣区域,并从每个感兴趣区域中独立提取特征以进行分类。在一个或多个实施例中采用的rcnn类型可以包括fast rcnn、faster rcnn或mask rcnn。在其他示例中,一维cnn可以处理使用滑动窗口产生的固定长度的时间序列片段。这样的一维(1-d)cnn可以以多对一配置运行,该配置利用池化和跨步来拼接最后一个cnn层的输出。然后,可以使用全连接层在一个或多个时间步长上产生类别预测。
[0065]
与沿输入信号对固定长度的内核进行卷积的一维cnn不同,递归神经网络(rnn)按顺序处理每个时间步长,使得rnn层的最终输出是每个先前时间步长的函数。在某些实施例中,可以使用称为长短期记忆(lstm)模型的rnn变体。lstm可以包括存储单元和/或一个或多个控制门,以对长序列中的时间依赖性进行建模。在某些示例中,lstm模型可以是单向的,这意味着该模型按照记录或接收的顺序处理时间序列。在另一个示例中,如果整个输入序列是可用的,则可以在相反的方向上(包括时间上的向前和向后)评估两个并行的lstm模型。两个并行的lstm模型的结果可以拼接起来,形成一个双向lstm(bi-lstm),其可以对两个方向的时间依赖性进行建模。
[0066]
在一些实施例中,可以将一个或多个cnn模型和一个或多个lstm模型组合起来。这种组合模型可以包括四个无跨步cnn层的堆栈,其后可以是两个lstm层和一个softmax分类器。softmax分类器可以归一化概率分布,该概率分布包括与输入的指数成比例的多个概率。例如,cnn的输入信号没有被填充,因此即使各层是无跨步的,每个cnn层也会将时间序列缩短几个样本。lstm层是单向的,因此在训练和评估时,以及在从滑动窗口段重组输出时间序列时,都可以使用最终lstm输出的softmax分类。这种组合模型可以以多对一的配置运行。
[0067]
在一些实施例中,可以利用基于转换器的模型来识别图像片段中的相关特征。这些还可以与其他网络(例如cnn)相结合。
[0068]
在一些实施例中,图2的机器学习模型可以通过多个阶段使用多个先前验证的数据来进行训练。训练可以分两个阶段进行,这两个阶段使用两种类型的训练数据。在第一阶段,可以收集切片分类数据,并且机器学习模型可以被训练为分类是否应该将切片计为有丝分裂图。在第二阶段,可以自动收集或通过使用经委员会认证的解剖病理学家和其他专家收集有丝分裂图数据。
[0069]
图3示出了一组示例的活检切片分类数据和类别。在某些示例性实施例中,可以手动或通过计算机收集和分析多个wsi,以确定是否应该将切片图像包括在有丝分裂图的计数过程中。每个收集的切片可以被归类为计数切片310或非计数切片320,其中计数切片310可进一步分析以检测或计数有丝分裂图,而非计数切片320将不会被进一步分析以计数有丝分裂图。除了被归类为非计数切片320之外,切片还可以被进一步分类以包括其被归类为非计数的原因,例如包括(全部或部分)“脂肪瘤”、“非肿瘤性病变”、“皮肤穿刺活检”和/或“皮肤和皮下组织”。所分析的切片可以进一步被分为两组,训练组和验证组,其中选择训练组图像来训练机器学习模型,而验证组用于验证(即测试)机器学习模型,或者替代地,验证训练组图像的类别分配。
[0070]
除了切片的分类外,还可以收集有关有丝分裂图标记的数据,以用于训练。与切片分类一样,有丝分裂图标记可以手动进行,或者替代地,也可以由计算机自动进行。此外,这
些标记的图像可用于训练机器学习模型和/或测试先前训练的模型。在某些示例性实施例中,可以在一个或多个wsi上和/或跨一个或多个wsi标记第一批有丝分裂图。在一项实验中,在11个wsi中标记了54个有丝分裂图。然后这些已识别的有丝分裂图可以被提取为多个图像块,每个图像块包含大约150
×
150像素,以各自块的有丝分裂图为中心。然后这些提取的图像块中的每一个可以用于训练第一机器学习模型,该模型然后可以在多个wsi上或跨多个wsi识别第二批有丝分裂图。在一个实施例中,跨74个wsi识别了第二批有丝分裂图。从该第二批有丝分裂图中,可以采样(手动或通过使用机器学习算法)子集,并准备第二批图像块。这个过程可以重复迭代,直到机器学习模型得到满意的训练。此外,可以使用不同大小的图像块,例如150
×
150像素、600
×
600像素和/或1200
×
1200像素。这些块不需要是正方形的,也不需要每个块中都以有丝分裂图为中心。
[0071]
对应于有丝分裂的不同阶段,可以识别有丝分裂细胞的特定特征,其可以用适当的标签来进行标识。这些阶段可以包括:前期(包括染色质和棒状物的圆形簇);中期(包括在包括线性的平面、带状和/或环状的赤道板处排列的染色体、以及从表面突出的棒状物);以及后期(包括两个以不等间距分离的染色体群,它们通常是线性的带有刺状突起)。此外,可以使用形态过滤器检测末期(包括位于细胞两端的两个分离的染色体群,以及位于它们之间的分裂沟)。作为训练机器学习算法的一部分,模型可以被训练以识别这些不同的特征,并对应于每个单独的切片帧,适当地标记输入图像特征。经过训练的机器学习算法在经由先前标记的图像进行训练后(根据上述),也可以执行此分析。除了通过经过训练的(或正在训练的)机器学习算法自动识别和标记之外,有丝分裂图也可以由合格的观察者识别和标记,例如经过认证的解剖病理学家。这些手动标记的图像和特征也可用于训练机器学习算法,或者替代地,用于检查先前训练的算法的准确性。
[0072]
可以通过展示已被标注的图像来开发额外的训练数据,这些图像已经被模型(经过训练的或正在训练的)标注以指示其中识别出的有丝分裂图。注释者(其可以是研究人员,例如解剖病理学家,也可以是经过全面训练的模型)然后可以检查已被标注的图并应用适当的标签。例如,如果识别出的有丝分裂图都是正确的,则可以在图像上添加“正确”的标签。如果识别出的有丝分裂图都是错误的,则可以在图像中添加“错误”的标签。如果已被识别的有丝分裂图是正确和错误的混合,则这些图可以在这个阶段被注释为包含有丝分裂图的图像的部分。然后可以对这些被标注的图像应用掩码,如本文中结合图4所述。当所有图像都经过审查并适当标注后,就可以收集数据并将其添加到训练集中。
[0073]
图4示出了根据某些实施例的机器学习模型的示例组件。特别地,图4示出了使用生成对抗网络(“gan”)增强训练数据的示例方法。在该示例方法中,可以将具有特定形状和大小的一个或多个真实掩码特征410与输入图像420进行比较。换句话说,在某些实施例中,机器学习工具可以将输入图像420转换为掩码特征410,然后可以将其与存储在数据库中的具有相似大小和/或形状的其他图像进行比较。在某些其他非限制性实施例中,也可以将单个掩码特征430与其他图像440进行比较,即使图像440包括不同方向、大小和形状的致密组织区域。相应地,由机器学习工具输入的图像可以被调整或处理,以便可以将图像与具有不同大小、形状和/或方向的图像440进行比较。作为另一种替代,掩码特征310、330可用于生成合成数据,用于训练或测试。基于其中一个掩码的转换,可以将该掩码应用于输入图像,以生成具有有丝分裂图的图像。如上所述,掩码特征也可以由病理学家手动应用(例如
450),或者替代地,可以将样本注释图像(例如460)呈现给病理学家,以进行进一步评估和/或验证。
[0074]
图5示出了使用机器学习系统来识别癌症的示例方法500。该方法可以从第一步骤510开始,其中系统从医学成像设备接收宠物的图像,该图像包括一个或多个特征。在第二步骤520,系统可以基于图像,确定一个或多个特征中的每一个的相应分类,其中该分类由机器学习模型生成,其中该分类与一个或多个特征相关联。在第三步骤530,系统可以基于所确定的分类,确定宠物的图像中的有丝分裂细胞。根据所公开的主题,该方法可以在适当时重复图5的方法中的一个或多个步骤。尽管本公开描述并示出了图5的方法的特定步骤是以特定顺序发生的,但本公开设想了图5的方法的任何合适的步骤以任何合适的顺序出现。此外,尽管本公开描述和示出了识别癌症的示例方法,包括图5的方法的特定步骤,但本公开设想了用于识别癌症的任何合适的方法,包括任何合适的步骤,其可以在适当时包括图5的方法的所有步骤、一些步骤或不包括其中的任何步骤。此外,尽管本公开描述并示出了执行图4的方法的特定步骤的特定组件、设备或系统,但本公开设想了执行图5的方法的任何合适的步骤的任何合适的组件、设备或系统的任何合适的组合。
[0075]
图6示出了根据一些非限制性实施例的示例计算机系统600,其用于使用机器学习工具促进有丝分裂细胞识别。在某些非限制性实施例中,一个或多个计算机系统600执行本文描述或说明的一种或多种方法的一个或多个步骤。在某些其他非限制性实施例中,一个或多个计算机系统600提供本文描述或示出的功能。在某些实施例中,在一个或多个计算机系统600上运行的软件执行本文描述或说明的一种或多种方法的一个或多个步骤,或提供本文描述或说明的功能。一些非限制性实施例包括一个或多个计算机系统600的一个或多个部分。此处,在适当的情况下,对计算机系统的引用可以包含计算设备,反之亦然。此外,在适当的情况下,对计算机系统的引用可以包含一个或多个计算机系统。
[0076]
本公开设想了任何合适数量的计算机系统600。本公开设想了计算机系统600采用任何合适的物理形式。作为示例而非限制,计算机系统600可以是嵌入式计算机系统、片上系统(soc)、单板计算机系统(sbc)(例如,计算机模块(com)或系统级模块(som))、台式计算机系统、笔记本计算机或笔记本计算机系统、交互式信息亭、大型机、计算机系统网、移动电话、个人数字助理(pda)、服务器、平板电脑系统、增强/虚拟现实设备、或其中两个或多个的组合。在适当的情况下,计算机系统600可以包括单一的或分布式的、跨多个地点、跨多台机器、跨多个数据中心、或存在于云端(其中云端可以包括一个或多个网络中的一个或多个云组件)的一个或多个计算机系统600。在适当的情况下,一个或多个计算机系统600可以在没有实质空间或时间限制的情况下,执行本文描述或示出的一种或多种方法的一个或多个步骤。作为示例而非限制,一个或多个计算机系统600可以实时地或以批处理模式执行本文描述或示出的一种或多种方法的一个或多个步骤。在适当的情况下,一个或多个计算机系统600可以在不同时间或在不同位置执行本文描述或示出的一种或多种方法的一个或多个步骤。
[0077]
在特定实施例中,计算机系统600包括处理器602、存储器604、存储606、输入/输出(i/o)接口608、通信接口610和总线612。尽管本公开描述和示出了特定计算机系统,其以特定布置具有特定数量的特定组件,但是本公开设想了以任何合适布置具有任何合适数量的任何合适组件的任何合适计算机系统。
[0078]
在一些非限制性实施例中,处理器602包括用于执行指令的硬件,例如构成计算机程序的指令。作为示例而非限制,为了执行指令,处理器602可以从内部寄存器、内部高速缓存、存储器604或存储606检索(或获取)指令;解码并执行指令;然后将一个或多个结果写入内部寄存器、内部高速缓存、存储器604或存储606。在某些非限制性实施例中,处理器602可以包括用于数据、指令或地址的一个或多个内部高速缓存。本公开设想了,在适当的情况下,处理器602包括任何合适数量的任何合适的内部高速缓存。作为示例而非限制,处理器602可以包括一个或多个指令高速缓存、一个或多个数据高速缓存、以及一个或多个转译后备缓冲器(tlb)。指令高速缓存中的指令可以是存储器604或存储606中的指令的副本,并且指令高速缓存可以加快处理器602对那些指令的检索。数据高速缓存中的数据可以是:存储器604或存储606中的数据的副本,以供在处理器602处执行的指令对其进行操作;在处理器602处执行的先前指令的结果,以供在处理器602处执行的后续指令访问或写入存储器604或存储606;或者其他合适的数据。数据高速缓存可以加快处理器602的读取操作或写入操作。tlb可以加快处理器602的虚拟地址转译。在一些非限制性实施例中,处理器602可以包括一个或多个用于数据、指令或地址的内部寄存器。本公开设想了,在适当的情况下,处理器602包括任何合适数量的任何合适的内部寄存器。在适当的情况下,处理器602可以包括一个或多个算术逻辑单元(alu);处理器602可以是一个多核处理器;或者处理器602可以包括一个或多个处理器602。尽管本公开描述并示出了特定处理器,但是本公开设想了任何合适的处理器。
[0079]
在某些非限制性实施例中,存储器604包括用于存储供处理器602执行的指令或供处理器602操作的数据的主存储器。作为示例而非限制,计算机系统600可以将指令从存储606或另一个源(例如,另一个计算机系统600)加载到存储器604。然后,处理器602可以将指令从存储器604加载到内部寄存器或内部高速缓存。为了执行指令,处理器602可以从内部寄存器或内部高速缓存中检索指令并对它们进行解码。在执行指令期间或之后,处理器602可将一个或多个结果(其可为中间结果或最终结果)写入内部寄存器或内部高速缓存。然后,处理器602可以将这些结果中的一个或多个写入存储器604。在一些非限制性实施例中,处理器602仅执行一个或多个内部寄存器或内部缓存或存储器604(不同于存储606或其他地方)中的指令,并且仅对一个或多个内部寄存器或内部缓存或存储器604(不同于存储606或其他地方)中的数据进行操作。一条或多条存储器总线(其每条可包括地址总线和数据总线)可将处理器602耦合到存储器604。如下所述,总线612可以包括一个或多个存储器总线。在某些非限制性实施例中,一个或多个存储器管理单元(mmu)存在于处理器602和存储器604之间,并且促进由处理器602请求的对存储器604的访问。在某些非限制性实施例中,存储器604包括随机存取存储器(ram)。在适当的情况下,该ram可以是易失性存储器。在适当的情况下,该ram可以是动态ram(dram)或静态ram(sram)。此外,在适当的情况下,该ram可以是单端口ram或多端口ram。本公开设想了任何合适的ram。在适当的情况下,存储器604可以包括一个或多个存储器604。尽管本公开描述并示出了特定存储器组件,但本公开设想了任何合适的存储器。
[0080]
在一些非限制性实施例中,存储606包括用于数据或指令的大容量存储。作为示例而非限制,存储606可以包括硬盘驱动器(hdd)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(usb)驱动器,或其中的两个或多个的组合。在适当的情况下,存储606可以包括
可移动或不可移动(或固定)媒体。在适当的情况下,存储606可以在计算机系统600的内部或外部。在某些非限制性实施例中,存储606是非易失性固态存储器。在某些非限制性实施例中,存储606包括只读存储器(rom)。在适当的情况下,该rom可以是掩码编程rom、可编程rom(prom)、可擦除prom(eprom)、电可擦除prom(eeprom)、电可变rom(earom)或闪存,或其中的两种或多种的组合。本公开设想了大容量存储606采用任何合适的物理形式。在适当的情况下,存储606可以包括一个或多个存储控制单元,以促进处理器602和存储606之间的通信。在适当的情况下,存储606可以包括一个或多个存储606。尽管本公开描述并示出了特定的存储器,但是本公开设想了任何合适的存储器。
[0081]
在特定实施例中,i/o接口608包括硬件、软件或两者,为计算机系统600与一个或多个i/o设备之间的通信提供一个或多个接口。在适当的情况下,计算机系统600可以包括这些i/o设备中的一个或多个。这些i/o设备中的一个或多个可以实现人与计算机系统600之间的通信。作为示例而非限制,i/o设备可以包括键盘、小键盘、麦克风、监视器、鼠标、打印机、扫描仪、扬声器、静态相机、手写笔、平板电脑、触摸屏、轨迹球、摄像机、其他合适的i/o设备,或其中两个或多个的组合。i/o设备可以包括一个或多个传感器。本公开设想了任何合适的i/o设备和用于它们的任何合适的i/o接口608。在适当的情况下,i/o接口608可以包括一个或多个设备或软件驱动程序,使处理器602能够驱动这些i/o设备中的一个或多个。在适当的情况下,i/o接口608可以包括一个或多个i/o接口608。尽管本公开描述并示出了特定的i/o接口,但是本公开设想了任何合适的i/o接口。
[0082]
在一些特定实施例中,通信接口610包括硬件、软件或两者,为计算机系统600和一个或多个其他计算机系统600或一个或多个网络之间的通信(例如,基于分组的通信)提供一个或多个接口。作为示例而非限制,通信接口610可以包括无线nic(wnic)或无线适配器,以用于与以太网或其他有线网络通信的网络接口控制器(nic)或网络适配器,或者用于与无线网络(例如wi-fi网络)进行通信。本公开设想了任何合适的网络和用于它的任何合适的通信接口610。作为示例而非限制,计算机系统600可以与自组织网络、个域网(pan)、局域网(lan)、广域网(wan)、城域网(man),或互联网的一个或多个部分,或其中的两个或多个的组合进行通信。这些网络中的一个或多个网络的一个或多个部分可以是有线的或无线的。作为示例,计算机系统600可以与无线pan(wpan)(例如,蓝牙wpan)、wi-fi网络、wi-max网络、蜂窝电话网络(例如,全球移动通信系统(gsm)网络)或其他合适的无线网络或其中两个或多个的组合进行通信。在适当的情况下,计算机系统600可以包括用于任何这些网络的任何合适的通信接口610。在适当的情况下,通信接口610可以包括一个或多个通信接口610。尽管本公开描述并示出了特定的通信接口,但是本公开设想了任何合适的通信接口。
[0083]
在特定非限制性实施例中,总线612包括将计算机系统600的组件彼此耦合的硬件、软件或两者。作为示例而非限制,总线612可以包括加速图形端口(agp)或其他图形总线、增强型工业标准架构(eisa)总线、前端总线(fsb)、hypertransport(ht)互连、行业标准架构(isa)总线、infiniband互连、低引脚数(lpc)总线、存储器总线、微通道架构(mca)总线、外围组件互连(pci)总线、pci-express(pcie)总线、串行高级技术附件(sata)总线、视频电子标准协会本地(vlb)总线或其他合适的总线或其中两种或更多种的组合。在适当的情况下,总线612可以包括一个或多个总线612。尽管本公开描述并示出了特定的总线,但是本公开设想了任何合适的总线或互连。
[0084]
某些非限制性实施例涉及用于在临床环境中使用所公开的系统和方法的系统架构。在此类非限制性实施例中,一个或多个深度学习或模型或机器学习模型可用于对实时上传的一个或多个扫描进行操作。当系统架构中的资源可用时,则可以将一个或多个wsi下载到设备中。例如,wsi可以包括224
×
224像素的缩略图。在一些非限制性实施例中,可以执行活检切片分类。如果分类器返回“非计数”,则可以停止该过程。如果分类器返回“计数”,则可以执行下一步。下一步可以包括执行组织检测算法。组织检测算法可以检测前景并为(基于模型的)有丝分裂图检测器计算一个或多个坐标。该算法,例如,可以是非基于模型的算法。有丝分裂图检测器模型可以在所有计算出的坐标上执行。然后可以预测像素掩码。可以应用阈值和/或形态过滤器中的至少一个,以增强预测性能。通过选择不包括适当大小、颜色或形状的掩码的图像,这些过滤器可以删除任何不包含有丝分裂过滤器的标记像素。
[0085]
在一些非限制性实施例中,可以使用第二非基于模型的算法,以从增强的像素掩码计算有丝分裂图的坐标。k维树(kd-tree),其可以是一种空间划分的高效二叉树数据结构,该结构用于在k维空间中组织点,可用于查找wsi中具有已识别的有丝分裂细胞坐标的子区域,例如10个高倍镜视野子区域。该子区域代表wsi中有丝分裂细胞的最高密集度。在某些实施例中,二维搜索空间内的kd树可以以o(n log n)构建数据结构,并且可以以处理范围报告查询,其中n可以表示点的总数量,并且k可以表示报告点的数量,每个点指的是wsi二维平面上唯一的有丝分裂细胞中心坐标。一个或多个有丝分裂图形和10个高倍镜视野的坐标可以写入可扩展标记语言(xml)文件,或任何其他数据文件,并将结果写入数据库。本文所述的这个特定的第二非基于模型的算法推广到多个搜索子区域的形状和大小,且不受限于正方形;其可以找到最高密集度的任何子区域,其形状由l^p空间的球限定,其中l^p空间是具有定义了给定两点之间的距离概念的向量空间(例如,p=2是欧式范向量空间)。该算法可用于识别包含在其他形状,例如,方形[p等于无穷大]、菱形[p等于1],以及圆形[p等于2]等中的最高有丝分裂密集度的子区域。所述的算法也推广到任何大小的最高有丝分裂密集度子区域(即,多个高倍镜视野区域,例如10个、20个或50个,并且受可用存储器限制)。
[0086]
本文描述的模型可以集成到查看者的工作流程中。例如,查看者可以是病理学家和/或任何医学专业人士。例如,病理学家可以从一个或多个模型接收作为从xml文件呈现的注释的信息。xml文件可以使用任何已知的wsi查看器来查看。在收到后,查看者可以提供额外的注释。例如,注释可以注释假阳性和/或假阴性。查看者所作的注释可以存储在数据库中,并可用于微调或训练检测模型。微调或检测模型可以基于反馈或注释的数量来执行。
[0087]
在某些非限制性实施例中,可在不同阶段使用非基于模型的算法,以支持有丝分裂图的计数。例如,组织检测可以通过在wsi的低分辨率视图上进行粗略的组织分割来执行。可以调整低分辨率图像的大小,以匹配有丝分裂图检测器的滑动窗口大小和/或高分辨率图像大小中的至少一个。例如,有丝分裂图检测器的滑动窗口可以是高分辨率图像宽度的整数倍。然后,低分辨率图像可以被转换为lab色彩空间图像。可以通过阈值检测技术,例如otsu阈值技术,将二进制图像阈值应用于图像l通道。然后,可以对该转换后的图像执行生成的二进制图像的膨胀、腐蚀和模糊处理,以去除噪声并细化组织边界。
[0088]
如上所述,可以使用非基于模型的算法来执行像素掩码预测。例如,可以执行几何和/或形态学流程,以改进推断结果、减少假阳性、和/或改善10倍率视野区域的定位的预
测。在一些非限制性实施例中,可以通过计算特定的二进制掩码的连接分量、并用唯一的整数标签标记连接像素来执行有丝分裂图的实例分割。通过这种方式,属于特定候选有丝分裂图的实例的像素可以得到唯一的整数编号。在某些非限制性实施例中,可以排除异常小尺寸的有丝分裂图。沿着有丝分裂图的宽度的最小的可接受尺寸可以是大约3微米的尺寸。为了利用该最小的可接受尺寸,算法可以确定最小面积的旋转矩形,该矩形包围有丝分裂图掩码的近似轮廓。然后,该宽度可以测量为旋转矩形的max(高度,宽度)。然后可以排除适当的有丝分裂图。然后可以对有丝分裂的后期的有丝分裂图进行计数。有丝分裂后期的有丝分裂图可能会被重复计数,例如,由于在有丝分裂过程中它们之间的距离很小。为了减少这种重复计数,可以执行一种算法,使得对二进制像素掩码进行膨胀,重复膨胀的迭代次数与内核大小和有丝分裂细胞极间的距离成比例,从而,给定极间距离内的有丝分裂图实例可以作为一个实例来计数。然后,可以为相连的组件分配唯一的有丝分裂图标识。
[0089]
在某些非限制性实施例中,可以使用基于kd树的算法(或其他机器学习算法)来寻找具有最高有丝分裂图的计数的10个高倍镜视野。10个高倍镜视野(10-high power field,10hpf),其可以是报告有丝分裂计数的方形区域,可以使用wsi svs格式(或其他医学成像文件类型)转换为像素大小。例如,方形区域可以是2.37mm2的方形区域。为了找到具有最大有丝分裂图的计数的10个高倍镜视野,例如特定的有丝分裂图的中心的坐标,可以在范围搜索内执行算法,并且在某些示例中,该范围可以是二维的。该算法可以被配置为在中心位于mfi的10个高倍镜视野的范围内查找并计算所有的有丝分裂图,其中s可以是在r2中的一组n个点,r可以是r2中的一系列的范围,尽管其他范围也在设想的范围之内。中心可以使用mfi表示,i∈[1,n],其中n是检测到的有丝分裂图的总数。例如,该算法可以包括为一组n个二维的点(即所有检测到的有丝分裂图的中心)建立一个kd树,其距离度量为范数(也被称为切比雪夫距离),这样,二维空间中的2个点p1和p2之间的距离被定义为d
chebyshev
(p1,p2)=max(|x
p1-x
p2
|,|x
p1-y
p2
|)。在以欧几里得为度量的空间中被半径为r的圆包围的区域,然后,可以变成在切比雪夫距离下的边长为2*r的正方形所包围的区域。然后,算法可以对一组n个的二维的点中的每一个查询树,以查询半径r=(hpf
side
)/2内的邻居,其中hpf
side
表示方形10个高倍镜视野(10hpf)区域的一条边的长度。所有可能的10hpf区域的角落的集合可以是从mf中心的x坐标和y坐标之间的组合推导的集合,或者作为mf中心的x坐标和y坐标之间的笛卡尔乘积。为了查询kd树搜索的点,所有可能的10hpf区域的角落可以通过增加10hpf半径而转换为其中心。对于每个建议的10hpf的中心,可以查询在步骤1中构建的kd树,以查找10hpf半径范围内的所有邻居。然后,该算法可以报告具有最大邻居计数的点。
[0090]
图7示出了示例性活检切片的分类结果。“计数”切片710可以指示,根据在执行活检切片分类算法期间检测到的图像特征,该切片具有包含癌症的高可能性。“非计数”切片720可以指示,在执行活检切片分类算法期间,没有检测到癌症。此外,该图显示了示例切片,这些切片已被归类为“计数”切片710,并且已被编辑为被完全注释的切片730,以指示有丝分裂图740。该注释可以手动进行,如上所述,或通过机器学习(或人工智能)算法自动执行。从被完全注释的切片730的放大部分中可以看出,显示了一个示例性的已识别的有丝分裂图740。
[0091]
图8示出了用于实现某些非限制性实施例的部署的分布式架构的示例。去中心化
的、异步的结构可以包括各种可伸缩块。这些可伸缩块可以包括管理程序,例如python队列管理程序。在进一步的实施例中,管理程序可以包括python“工作者”(“worker”)程序,例如下载工作者(download worker)860、推断工作者(interference worker)870,以及后处理工作者(post-processing worker)880。下载工作者860可以从下载队列840下载多个切片,下载队列840从切片的网络池810接收切片。下载工作者860可以从推断队列830创建本地切片缓冲区,该缓冲区可以由推断工作者870访问。推断工作者870可以接收切片并处理它们,以提取有丝分裂图。可以基于各种因素,包括例如图形处理单元(gpu)的可用性,将这样的动作分配给多个推断工作者870。后处理工作者880然后可以从后处理队列820接收切片并运行后处理步骤,如上所述,并向病理学家查看者850提供最终结果。每种类型的工作者860、870、880都可以有自己的队列820、830、840。每个工作者可以包含一个或多个docker容器,每个docker容器包含特定于其功能的一组单独的软件、库和配置文件。
[0092]
根据某些非限制性实施例,通过使用经过训练的人工智能,图8所示的架构可以产生比没有经过训练的人工智能执行的有丝分裂计数更加准确的有丝分裂计数。如下表1所示,有丝分裂图的计数的等级(即评级)可以通过使用人工智能得到改进,超过不使用任何人工智能的观察者(即病理学家)可以实现的结果。甚至是有人工智能辅助的病理学家,也能比没有人工智能辅助的病理学家取得更好的结果。表1
[0093]
对于每种方法i(人工智能辅助、仅人工智能和非人工智能辅助)以及每种癌症类型j(见下表4),有丝分裂计数y
ij
可以使用泊松回归进行建模:
βj~student_t(3,0,2.5)
ꢀꢀ
(3)其中λi的控制用于查找有丝分裂计数的方法,以及βj的调整用于癌症类型之间的差异。表2中的系数表示在控制癌症类型后的相对有丝分裂计数:表2表2
[0094]
如图9所示,为了便于阅读,三个主效应的完整后验值以对数标度显示。结果表明,这种系统可以在高通量多站点的兽医诊断病理学服务的工作流程和时间限制内部署,并且有丝分裂图的计数的自动化不仅显著提高了实验室效率,而且还提高了有丝分裂计数的准确性。在测试阶段,平均每天对3,323张全视野切片图像进行推断,所提出的系统的可扩展性表明,工作量的增长与系统的能力相匹配。
[0095]
图10示出了图表,显示了通过使用和/或辅助经过训练的人工智能模型(例如本文所述的模型),可以实现犬科(c)肿瘤和猫科(f)肿瘤的有丝分裂计数的准确性的示例改进。可以看出,在大多数示例研究中,仅人工智能的计数比人工智能辅助的计数和非人工智能辅助(即由人工完成的)的计数检测到更多的有丝分裂图。这些计数的完整结果显示在下表3中,该表说明了多个示例测试的结果,显示了某些实施例中的改进,这取决于许多因素,包括但不限于肿瘤类型。“向上”和“向下”箭头表示与病理学家的非人工智能辅助的有丝分裂计数相比,人工智能辅助的有丝分裂计数的平均值是增加还是减少。表3
[0096]
根据本示例实施例的系统和方法提供了对以前的方法的改进。例如,如下表4所示,根据某些实施例的kd树方法显示出比其他蛮力技术在效率上的提高(即通过节省时间)。无论图像中的有丝分裂图的数量如何,这些优势都是存在的,从而使有丝分裂图的计数得到改善。表4
[0097]
在本文中,计算机可读非暂时性存储介质可以包括一个或多个基于半导体的或其他集成电路(ic)(例如,现场可编程门阵列(fpga)或专用集成电路(asic))、硬盘驱动器(hdd)、混合硬盘驱动器(hhd)、光盘、光盘驱动器(odd)、磁光盘、磁光驱动器、软盘、软盘驱动器(fdd)、磁带、固态驱动器(ssd)、ram驱动器、secure digital卡或驱动器、任何其他合适的计算机可读非暂时性存储介质,或在适当的情况下,其中两种或多种的任何合适组合。
计算机可读非暂时性存储介质可以是易失性的、或者非易失性的,或者在适当的情况下是易失性和非易失性的组合。
[0098]
文中,“或”是包含性的而不是排他性的,除非另有明确说明或上下文另有说明。因此,文中,除非另有明确说明或上下文另有表示,否则“a或b”表示“a、b或两者”。此外,除非另有明确说明或上下文另有说明,否则“和”既是共同的,也可以是个别的。因此,在本文中,除非另有明确说明或上下文另有说明,否则“a和b”是指“a和b,共同的或个别的”。
[0099]
本公开的范围涵盖本领域普通技术人员将理解的对本文描述或说明的示例实施例的所有改变、替换、变化、改变和修改。本公开的范围不限于本文描述或说明的示例实施例。此外,尽管本公开在本文中描述和说明了各个实施例,包括特定的组件、元件、特征、功能、操作或步骤,但这些实施例中的任何一个都可以包括本领域普通技术人员将理解的、本文任何地方描述或说明的任何组件、元件、特征、功能、操作或步骤的任何组合或排列。此外,在所附权利要求中提及的装置或系统或装置或系统的组件被适配、布置、能够、配置、启用、可操作或操作以执行特定功能,包括该装置,系统、组件,无论它或那个特定功能是否被激活、打开或解锁,只要该装置、系统或组件如此适应、安排、能够、配置、启用、可操作或可操作。此外,虽然本公开将一些非限制性实施例描述或图示为提供特定优点,但某些非限制性实施例可以不提供这些优点、提供一些优点或所有这些优点。
[0100]
此外,本公开中作为流程图呈现和描述的方法的实施例以示例的方式提供,以便提供对技术的更完整的理解。所公开的方法不限于本文呈现的操作和逻辑流程。可以设想到替代实施例,其中各种操作的顺序被改变,并且其中被描述为较大操作的一部分的子操作被独立地执行。
[0101]
尽管已经出于本公开的目的描述了各种实施例,但是这样的实施例不应被认为将本公开的教导限制于这些实施例。可以对上述元素和操作进行各种改变和修改,以获得保持处于在本公开中所述的系统和过程的范围内的结果。
[0102]
本文公开的实施例仅是示例,并且本公开的范围不限于此。某些非限制性实施例可以包括以上公开的实施例的所有、部分或没有的组件、元件、特征、功能、操作或步骤。实施例具体公开在所附的针对方法、存储介质、系统和计算机程序产品的权利要求中,其中在一个权利要求类别(例如方法)中提及的任何特征,也可以在另一个权利要求类别(例如系统)中要求主张。所附权利要求中的从属关系或引用关系只是出于形式原因而选择的。然而,也可以要求主张任何因有意引用到任何先前的权利要求(特别是多重从属关系)而产生的任何主题,因此,无论所附的权利要求中选择何种从属关系,都可以公开并要求主张权利要求的任何组合及其特征。可以被要求主张的主题内容不仅包括所附权利要求中所列的特征的组合,还包括权利要求中的任何其他特征组合,其中,权利要求中提及的各个特征可以与权利要求中的任何其他特征或其他特征的组合相结合。此外,本文中描述或描绘的任何实施例和特征可以在单独的权利要求中被要求主张,和/或与本文描述或描绘的任何实施例或特征或与所附权利要求的任何特征的任何组合中被要求主张。
[0103]
如上文结合某些实施例所描述的,某些组件,例如计算机系统500,可以包括单个计算机或多个计算机、处理器、网络、移动设备、集群、服务器或其他硬件,以执行各种功能。此外,所公开的主题的某些元素可以体现在计算机可读代码中,该代码可以存储在计算机可读介质上,并且在执行时可以使处理器执行本文描述的某些功能。在这些实施例中,计算
机和/或其他硬件在允许用于显示医学图像记录的系统和方法方面发挥重要作用。例如,计算机、处理器、存储器、存储和网络硬件的存在提供了以更有效的方式显示医学图像记录的能力。此外,存储和保存数字记录无法用笔或纸来完成,因为此类信息是通过网络以电子形式接收的。
[0104]
本说明书中描述的主题和操作可以在数字电子电路或计算机软件、固件或硬件中实现,包括本说明书中公开的结构及其结构等价物,或其中一个或多个的组合。本说明书中描述的主题的实施例可以实现为一个或多个计算机程序,即,一个或多个计算机编程指令模块,编码在计算机存储介质上,以供数据处理设备执行或控制数据处理设备的操作。
[0105]
计算机存储介质可以是或可以包括在计算机可读存储设备、计算机可读存储基质、随机或串行存取存储器阵列或设备、或其中的一个或多个的组合中。此外,虽然计算机存储介质不是传播信号,但计算机存储介质可以是编码在人工生成的传播信号中的计算机编程指令的来源或目的地。计算机存储介质也可以是或可以包含在一个或多个单独的物理组件或介质(例如,多个cd、磁盘或其他存储设备)中。
[0106]
术语“处理器”涵盖用于处理数据的所有种类的装置、设备和机器,包括例如可编程处理器、计算机、片上系统、或前述的多个或组合。装置可以包括专用逻辑电路(例如、fpga或asic)。除了硬件之外,装置还可以包括为所讨论的计算机程序创建执行环境的代码,例如构成处理器固件、协议栈、数据库管理系统、操作系统、跨平台运行时间代码环境、虚拟机或其中一个或多个的组合的代码。该装置和执行环境可以实现各种不同的计算模型基础设施,例如网络服务、分布式计算和网格计算基础设施。
[0107]
计算机程序(也称为程序、软件、软件应用程序、脚本或代码)可以用任何形式的编程语言编写,包括编译语言或解释语言、声明性语言或过程性语言,并且其可以以任何形式部署,包括作为独立的程序或作为模块、组件、子例程、对象或其他适合在计算环境中使用的单元。计算机程序可以但不一定对应于文件系统中的文件。程序可以被存储在包含其他程序或数据的文件的一部分中(例如,存储在标记语言文档中的一个或多个脚本)、存储在专用于相关程序的单个文件中、或存储在多个协调文件(例如,存储有一个或多个模块、子程序或部分代码的文件)中。可以部署计算机程序以在一台计算机、或位于一个站点或分布在多个站点并通过通信网络互连的多台计算机上执行。
[0108]
本说明书中描述的过程和逻辑流程可以由一个或多个可编程处理器执行一个或多个计算机程序以通过对输入数据进行操作并生成输出来执行动作。该过程和逻辑流程也可以由专用逻辑电路执行,并且装置也可以实现为专用逻辑电路,例如fpga或asic。
[0109]
作为示例而非限制,适用于执行计算机程序的处理器可以包括通用和专用微处理器。适用于存储计算机编程指令和数据的设备可以包括所有形式的非易失性存储器、介质和存储设备,例如但不限于半导体存储设备,例如eprom、eeprom和闪存设备;磁盘,例如内部硬盘或可移动磁盘;磁光盘;以及cd-rom和dvd-rom磁盘。处理器和存储器可以由专用逻辑电路补充或合并到专用逻辑电路中。
[0110]
此外,如上文结合某些实施例所述,某些组件可以与某些其他组件通信,例如经由网络(例如局域网或因特网)。在上文未明确说明的范围内,所披露的主题旨在涵盖每笔业务的双方,包括传输和接收。本领域的普通技术人员将容易理解,关于上述特征,如果一个组件传送、发送或以其他方式使另一组件可用,则另一组件将接收或获取,无论是否明确说
明。
[0111]
除了下面要求主张的具体实施例之外,所公开的主题还针对具有下面要求主张的从属特征和上面公开的那些的任何其他可能组合的其他实施例。因此,在从属权利要求中呈现的特征和上面公开的特定特征可以以其他可能的组合彼此组合。已经出于说明和描述的目的提供了对所公开主题的特定实施方式的前述描述。这不旨在穷举或将所公开的主题限制为所公开的那些实施方式。
[0112]
对于本领域技术人员显而易见的是,在不脱离本公开主题的精神和范围的情况下,可以对本公开主题的系统和方法进行各种修改和变化。因此,所公开的主题旨在包括在所附权利要求及其等效物的范围内的修改和变化。

技术特征:
1.一种计算机实现的方法,包括:在计算设备处接收活检切片的图像;执行第一编程指令,以将活检切片的图像输入到编程为癌症分类器的第一经训练的机器学习模型,从而输出活检切片的图像的分类;基于所述分类,确定所述活检切片的图像需要被进一步处理;对所述活检切片的图像执行组织检测算法,从而输出第一组坐标;执行第二编程指令,以将所述活检切片的图像和所述第一组坐标输入到为图像分割而编程的第二经训练的机器学习模型,从而输出二进制像素掩码;执行第三编程指令,以使用所述二进制像素掩码生成增强像素掩码;以及在计算机存储器中以数字方式存储由所述增强像素掩码指示的第二组坐标。2.如权利要求1所述的计算机实现的方法,还包括:执行第四编程指令,实现基于kd树的算法,以基于所述增强像素掩码输出具有最多有丝分裂图的视野;以及在所述计算机存储器中将所述视野和所述第二组坐标以数字方式存储在文件中。3.如权利要求2所述的计算机实现的方法,其中,所述视野包括10个高倍镜视野。4.如权利要求2所述的计算机实现的方法,还包括在设备显示器上显示所述视野。5.如权利要求1所述的计算机实现的方法,其中,所述组织检测算法包括对所述活检切片的图像的低分辨率视图执行粗略的组织分割。6.如权利要求1的计算机实现的方法,所述第三编程指令被编程为:使得对于所述二进制像素掩码中指示有丝分裂图的每一组相连的坐标,确定对应的旋转矩形,每个旋转矩形具有包围所述有丝分裂图的近似轮廓的最小面积;以及使得生成所述增强像素掩码,以仅包括与相应宽度大于阈值宽度的旋转矩形相关联的坐标,所述阈值宽度以数字方式存储在所述计算机存储器中。7.如权利要求6所述的计算机实现的方法,所述第三编程指令被进一步编程,以使得对所述二进制像素掩码进行膨胀,重复膨胀的迭代次数与存储在所述计算机存储器中的内核大小和有丝分裂细胞极间的距离成比例。8.如权利要求1所述的计算机实现的方法,其中,所述第二经训练的机器学习模型包括具有跳跃连接的卷积神经网络,所述第二经训练的机器学习模型被训练以最小化平衡交叉熵(bce)软dice损失(soft-dice-loss)函数或软dice损失(soft-dice-loss)函数中的至少一个。9.如权利要求8所述的计算机实现的方法,其中,所述第二经训练的机器学习模型还包括用imagenet预训练的u-net模型。10.如权利要求1所述的计算机实现的方法,其中所述活检切片的图像包括动物或宠物中的至少一者的活检切片的图像,并且其中所述活检切片的图像是使用医学成像设备生成的。11.如权利要求1所述的计算机实现的方法,其中所述活检切片的图像包括全视野切片图像(wsi)。12.如权利要求1所述的计算机实现的方法,还包括显示输出图像,所述输出图像包括所述活检切片的图像的表示和分类。
13.如权利要求1所述的计算机实现的方法,还包括以编程方式对所述活检切片的图像进行预处理,其中所述预处理包括确定所述活检切片的图像足够清晰以用于进一步处理。14.如权利要求13所述的计算机实现的方法,其中所述活检切片的图像包括全视野切片图像,并且其中所述预处理包括以下至少一种:确定所述活检切片的图像的分辨率超过存储在计算机存储器中的阈值分辨率,或确定所述全视野切片图像所包含的切片图像的数量超过存储在计算机存储器中的阈值数量。15.如权利要求1所述的计算机实现的方法,还包括:使用所述第二组坐标以编程方式计算有丝分裂图的计数;以及以数字方式将有丝分裂图的计数存储在所述计算机存储器中。16.如权利要求1所述的计算机实现的方法,其中所述计算设备包括服务器计算机,并且其中所述活检切片的图像是从客户端计算设备接收的。17.如权利要求16所述的计算机实现的方法,还包括:执行第四编程指令,实现基于kd树的算法,以基于所述增强像素掩码输出具有最多有丝分裂图的视野;以及在所述计算机存储器中将所述视野和所述第二组坐标以数字方式存储在文件中。18.如权利要求17所述的计算机实现的方法,其中,所述文件包括可扩展标记语言(xml)文件。19.如权利要求18所述的计算机实现的方法,还包括从所述服务器计算机向所述客户端计算设备传送关于所述活检切片的图像的信息,作为从可扩展标记语言(xml)文件呈现的注释。20.如权利要求1所述的计算机实现的方法,还包括使用包括可伸缩块的分布式的、去中心化的和异步的架构来执行所述方法,所述可伸缩块包括管理程序,并且所述管理程序使用docker容器来实现。21.一种系统,包括:一个或多个处理器;以及一个或多个计算机可读非暂时性存储介质,其耦合到所述一个或多个处理器,并且包括指令,所述指令当由所述一个或多个处理器执行时可操作,以使所述系统执行包括以下的操作:接收活检切片的图像;执行第一编程指令,以将活检切片的图像输入到编程为癌症分类器的第一经训练的机器学习模型,从而输出活检切片的图像的分类;基于所述分类,确定所述活检切片的图像需要被进一步处理;对所述活检切片的图像执行组织检测算法,从而输出第一组坐标;执行第二编程指令,以将所述活检切片的图像和所述第一组坐标输入到为图像分割而编程的第二经训练的机器学习模型,从而输出二进制像素掩码;执行第三编程指令,以使用所述二进制像素掩码生成增强像素掩码;以及在计算机存储器中以数字方式存储由所述增强像素掩码指示的第二组坐标。22.如权利要求21所述的系统,所述指令在被执行时进一步可操作以引起:执行第四编程指令,实现基于kd树的算法,以基于所述增强像素掩码输出具有最多有
丝分裂图的视野;以及在所述计算机存储器中将所述视野和所述第二组坐标以数字方式存储在文件中。23.如权利要求22所述的系统,其中所述视野包括10个高倍镜视野。24.如权利要求22所述的系统,所述指令在被执行时进一步可操作以引起在设备显示器上显示所述视野。25.如权利要求21所述的系统,其中,所述组织检测算法包括对所述活检切片的图像的低分辨率视图执行粗略的组织分割。26.如权利要求21所述的系统,所述第三编程指令被编程为:使得对于所述二进制像素掩码中指示有丝分裂图的每一组相连的坐标,确定对应的旋转矩形,每个旋转矩形具有包围所述有丝分裂图的近似轮廓的最小面积;以及使得生成所述增强像素掩码,以仅包括与相应宽度大于阈值宽度的旋转矩形相关联的坐标,所述阈值宽度以数字方式存储在所述计算机存储器中。27.如权利要求26所述的系统,所述第三编程指令被进一步编程,以使得对所述二进制像素掩码进行膨胀,重复膨胀的迭代次数与存储在所述计算机存储器中的内核大小和有丝分裂细胞极间的距离成比例。28.如权利要求21所述的系统,其中第二经训练的机器学习模型包括具有跳跃连接的卷积神经网络,所述第二经训练的机器学习模型被训练以最小化平衡交叉熵(bce)软dice损失函数(soft-dice-loss)或软dice损失(soft-dice-loss)函数中的至少一个。29.如权利要求28所述的系统,其特征在于,所述第二经训练的机器学习模型还包括用imagenet预训练的u-net模型。30.如权利要求21所述的系统,其中所述活检切片的图像包括动物或宠物中的至少一者的活检切片的图像,并且其中所述活检切片的图像是使用医学成像设备生成的。31.如权利要求21所述的系统,其中所述活检切片的图像包括全视野切片图像(wsi)。32.如权利要求21所述的系统,还包括显示输出图像,所述输出图像包括所述活检切片的图像的表示和分类。33.如权利要求21所述的系统,所述指令在被执行时进一步可操作以引起以编程方式对所述活检切片的图像进行预处理,其中所述预处理包括确定所述活检切片的图像足够清晰以用于进一步处理。34.如权利要求33所述的系统,其中所述活检切片的图像包括全视野切片图像,并且其中所述预处理包括以下至少一种:确定所述活检切片的图像的分辨率超过存储在计算机存储器中的阈值分辨率,或确定所述全视野切片图像所包含的切片图像的数量超过存储在计算机存储器中的阈值数量。35.如权利要求21所述的系统,所述指令在被执行时进一步可操作以引起:使用所述第二组坐标以编程方式计算有丝分裂图的计数;以及以数字方式将有丝分裂图的计数存储在所述计算机存储器中。36.如权利要求21所述的系统,其中所述活检切片的图像是从客户端计算设备接收的。37.如权利要求36所述的系统,所述指令在被执行时进一步可操作以引起:执行第四编程指令,实现基于kd树的算法,以基于所述增强像素掩码输出具有最多有丝分裂图的视野;以及
在所述计算机存储器中将所述视野和所述第二组坐标以数字方式存储在文件中。38.如权利要求37所述的系统,其中,所述文件包括可扩展标记语言(xml)文件。39.如权利要求38所述的系统,所述指令在被执行时进一步可操作以引起执行向所述客户端计算设备传送关于所述活检切片的图像的信息,作为从可扩展标记语言(xml)文件呈现的注释。40.如权利要求21所述的系统,还包括使用包括可伸缩块的分布式的、去中心化的和异步的架构来执行所述方法,所述可伸缩块包括管理程序,并且所述管理程序使用docker容器来实现。

技术总结
在一个实施例中,本公开提供了一种方法,包括:接收活检切片的图像;执行第一编程指令以将该图像输入到编程为癌症分类器的第一经训练的机器学习模型,从而输出分类;基于该分类,确定该图像需要被进一步处理;对该活检切片的图像执行组织检测算法,从而输出第一组坐标;执行第二编程指令以将该活检切片的图像和第一组坐标输入到为图像分割而编程的第二经训练的机器学习模型,从而输出二进制像素掩码;执行第三编程指令以使用二进制像素掩码生成增强像素掩码;以及在计算机存储器中以数字方式存储由增强像素掩码指示的第二组坐标。在一个实施例中,可以生成10个高倍镜视野并以数字方式存储。字方式存储。字方式存储。


技术研发人员:M
受保护的技术使用者:马斯公司
技术研发日:2021.12.15
技术公布日:2023/8/5
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐