深度学习

理解和使用深度学习网络

在医学成像应用中处理超大图像

本文来自Oge Marques,博士工程与计算机科学教授。Oge是一个书的作者,美国科学促进会莱什纳研究员.他也是一个MATLAB爱好者,在他的课堂上使用MATLAB已经超过20年了。你可以关注他的推特(@ProfessorOge).
计算病理学(CPATH)领域包括使用算法分析通过扫描细胞和组织的幻灯片获得的数字图像。近年来,深度学习算法已经被开发出来,用于一些分类、回归和分割任务,如肿瘤检测和分级,其性能与训练有素的病理学家相当。
应用深度学习(DL)技术来分析组织病理组织切片将像任何其他深度学习应用程序一样开始(确保采用原则)工作流并运行了大量的实验以结构化的方式),但将有一个重要的额外复杂因素:需要获取、标记、存储、显示和处理十亿像素大小的图像。
在这篇博客文章中,我们将概述CPATH深度学习的最新发展,并向您展示如何使用MATLAB处理非常大的图像。

计算病理学中的深度学习概述

图1:计算病理学中的深度学习工作流程。
图1提供了计算组织病理学中深度学习工作流程的概述。本质上,深度神经网络是用补丁必须从十亿像素大小的全幻灯片图像(WSI)中提取。的选择体系结构(卷积神经网络(cnn),全卷积网络(FCNs),循环神经网络(RNNs),自编码器,或生成对抗网络(GANs))和学习模式(有监督,弱监督,完全无监督,迁移学习)取决于图像是否标签组织病理学图像分析任务手边:cnn和fcn是(弱)监督学习任务中使用最广泛的架构,而自编码器和gan是无监督学习范式下的流行选择。
  • 监督式学习CPATH中的方法已用于:分类任务,例如,预测一个贴片是否应该被标记为健康或癌变;回归例如,在组织病理学图像中检测或定位细胞;而且分割从组织学图像的结构。
  • 弱监督学习技术利用粗粒度(图像级)注释(例如,癌症)自动推断细粒度(像素/补丁级)信息,从而减轻病理学家的注释负担。这一类别中最流行的范例是多实例学习(MIL),其中训练集由, wsi被标记为正面或负面;每个袋子里都有很多实例,其标签将被预测或未知的图像补丁。主要目标是训练一个分类器来预测袋级和实例级标签,而训练集中只给出袋级标签。
  • 无人管理的(最近被重新命名为“自我监督”)学习在深度学习中,这仍然是一个年轻的领域,CPATH的应用才刚刚开始出现在文献中。
  • 转移学习方法是组织病理学中最广泛采用的,通常使用预先训练(使用ImageNet图像)的模型,如VGGNet《盗梦空间》ResNetMobileNet,DenseNet.这些预先训练的模型已广泛应用于多种癌症分级和预后任务,包括公共挑战在野外,如巴赫CAMELYON

获取和处理整个幻灯片图像的挑战

无论架构、学习方案或应用程序如何,数字病理解决方案通常需要获取和处理大量非常大(十亿像素大小)的整个幻灯片图像(WSIs),其内容通常基于较小的补丁(或块)进行分析。万博 尤文图斯
挑战在于收购WSIs包括:
  • 数据可用性:该领域的公开数据集相对较少(例如:CAMELYONHER2巴赫),许多已发表的研究都采用了专有的WSI数据集。数字病理学协会(DPA)维护一个网站一个图像存储库列表。
  • 图像格式:不同扫描仪输出的图像使用不同的专有文件格式(pff),为数据交换、归档和在线发布带来额外的困难。缺乏通用的图像格式给大型数据集的管理带来了额外的成本和潜在的延迟。已经有过广泛的讨论采用单一的开源文件格式的可能性采用DICOM标准用于整张幻灯片图像编码。
  • 图像大小:一旦你成功地获得足够的组织病理学图像,并将其转换为有用的格式(例如,TIFF格式),你必须为以下事实做好准备每个图像文件通常为几GB,并计划相关的影响(如存储空间和网络上传/下载速度)。
挑战在于处理WSIs包括:
  • 内存:即使是单个WSI也可能太大,无法完全装入内存。
  • 显示:理想情况下,你应该能够显示WSI的内容与缩放/平移/滚动功能的显示器,其分辨率是图像像素数的一个部分。万博 尤文图斯
  • 块/补丁:应该有一种优雅的方式来表示图像中的各个块(补丁)-并在需要时将它们视为“子图像”。
  • 工件:由于幻灯片准备工作流程(例如,染色过程中的颜色可变性)或扫描仪设置(例如,不同的照明和分辨率设置),WSIs中可能会出现不同的工件。

CPATH的深度学习工作流程

图2:用于计算病理学的简化深度学习工作流。
图2显示了CPATH的简化深度学习工作流。它遵循经典机器学习(ML) /深度学习工作流的基本步骤,但有一些值得注意的例外和特点:
  • 数据采集过程包括收集组织标本,切片,提取每个组织切片,并将其数字化,生成整个切片图像(WSI)。如果得到的图像没有通过质量检查,(部分)采集过程可能不得不重复。
  • 预处理步骤包括从十亿像素大小的wsi中提取少量补丁。这种降低wsi高维的方法可以被视为“人为引导的特征选择”。图像补丁通常是方形区域,其大小从32 × 32像素到10,000 × 10,000像素不等(256 × 256像素是典型的补丁大小)。此外,此步骤可能包括处理组织和工件检测以及颜色管理的规定(参见下面的示例)。
  • 建模Block包括在选定的学习范式(例如,监督、弱监督、自监督、迁移学习)下训练选定的深度学习模型。
  • 后处理块可能包括用于提高像素级预测质量的形态学操作,修复小错误,例如,通过填充空白。
  • 最后,预测Step检查模型是否运行良好。如果它没有(正如向后箭头所示),你可能想:(1)调整模型的超参数,并执行大多数机器学习(ML)和深度学习(DL)任务中常见的其他类似步骤;或者(2)重新审视预处理步骤,提高用于训练模型的输入图像的质量。毕竟,由于ML/DL模型从数据中学习,我们在细化解决方案以更好地满足成功的目标度量时必须牢记这一微妙的平衡。

一个例子

这是一个例子如何使用MATLAB:(1)处理非常大的图像,如wsi;(2)病变前后组织学图像。

在MATLAB中处理WSIs

本例的第一部分展示了如何在MATLAB中读取、显示、探索和组织wsi(及其补丁)。感谢最近的介绍blockedImage对象,现在可以处理非常大的图像而不会耗尽内存。blockedImage是一种由离散块(补丁)组成的图像,可以使用类来组织和管理blockedImageDatastore对象,并使用bigimageshow

在MATLAB中对WSIs进行有用的预处理和后处理操作

由于在CPATH中使用深度学习技术的目标是产生临床可翻译的解决方案,即能够在大型患者群体中工作,因此建议预先处理一些最可能的WSI伪影,从而提高万博 尤文图斯结果模型对其他测试集中发现的图像伪影进行泛化的能力。
本示例的第二部分展示了预处理操作的示例,以处理组织病理学图像中常见的伪影,以及用于提高像素级结果质量的后处理形态学操作。从本质上讲,这个示例应该帮助医学图像分析社区为wsi创建一个图像分析管道(并且,作为奖励,能够重新生成文档中描述的代码和示例)最近的一篇论文在这个主题)使用MATLAB。
它强调了MATLAB(和图像处理工具箱)函数的有用性,如:
  • 图像阈值和滤波:imbinarizebwareafilt,imlincomb
  • 形态学图像处理操作:imcloseimopenimdilateimerodeimfill,strel
  • 特征提取:bwlabel而且regionprops
  • 可视化:蒙太奇imoverlay情节而且矩形
图3和图4显示了结果示例。
图3:预处理示例:(左)初始图像;(中)组织像素与玻璃像素分离的阈值操作结果;(右)应用船体填充的结果,以捕捉组织的完整形状和大小,并从管道的进一步分析中去除幻灯片背景。
图4:后处理示例:(上)在肾移植活检WSI上存在感兴趣区域(绿色部分)的假设预测叠加;(中)用形态学算法填充小孔和去除伪像元的结果;(下)后处理结果(按补丁)。

关键的外卖

用于计算组织病理学的深度学习万博 尤文图斯解决方案需要处理整个幻灯片图像的能力,除了通常比图像分析和计算机视觉其他领域使用的图像大得多之外,可能会受到影响整体解决方案质量的伪影的影响。在这篇博文中,我们使用MATLAB展示了如何在CPATH深度学习工作流的背景下处理和处理十亿像素大小的WSIs。
CPATH是一个活跃的研究领域,在不久的将来,深度学习在这一领域的新发展和应用可能会出现。如果您有兴趣了解更多关于CPATH和相关问题的信息,我建议您查看以下资源:使用blockedimage和深度学习对大型多分辨率图像进行分类
|
  • 打印
  • 发送电子邮件

评论

如欲留言,请点击在这里登录您的MathWorks帐户或创建一个新帐户。