此内容目前正在更新。
医疗保健数据解决方案中的 DICOM 数据转换功能允许您引入、存储和分析来自各种来源的医学数字成像和通信 (DICOM) 数据。 若要了解有关该功能的详细信息并了解如何部署和配置它,请参阅:
DICOM 数据转换概述
DICOM 元数据转换
部署和配置 DICOM 数据转换
DICOM 数据转换是 Microsoft Fabric 中医疗保健数据解决方案的一项可选功能。
在运行 DICOM 数据转换管道之前,请确保完成
部署和配置 DICOM 数据转换
中所述的先决条件、部署流程和配置步骤。
数据引入选项
本文提供有关如何使用 DICOM 引入功能引入、转换和统一 DICOM 成像数据集的分步指南。 该功能支持以下两个执行选项:
选项 1:
DICOM 文件的端到端引入
。 采用本机 (DCM) 或压缩 (ZIP) 格式的 DICOM 文件将引入到湖屋中。 此选项称为
引入
选项。
选项 2:
与 DICOM 服务的端到端集成
。 通过与 Azure Health Data Services 中 DICOM 服务的本机集成来促进引入。 在此选项中,DCM 文件首先从 Azure Health Data Services DICOM 服务转移到 Data Lake Storage Gen2。 然后,管道将执行
自带存储
。 此选项称为
Azure Health Data Services (AHDS)
选项。
在此选项中,我们使用预生成的数据管道将 DICOM 文件中的成像数据引入到医疗保健数据解决方案湖屋中。 您可以使用同时具有 ZIP 和本机 DCM 文件的成像示例数据集。 端到端执行由以下连续步骤组成:
将 DICOM 文件引入到 OneLake 中
在 OneLake 中组织 DICOM 文件
将 DICOM 元数据提取到铜牌湖屋中
将 DICOM 元数据转换为 FHIR(快速医疗保健互操作性资源)格式
将数据引入到铜牌湖屋的
ImagingStudy
增量表中
将数据平展并引入到银牌湖屋的
ImagingStudy
增量表中
将数据转换并引入到金牌湖屋的
Image_Occurrence
表中(可选)
铜牌湖屋中的
Ingest
文件夹表示放置(队列)文件夹。 您可以将 DICOM 文件放置在此文件夹中。 然后,这些文件将移动到铜牌湖屋中井然有序的文件夹结构中。
导航到铜牌湖屋中的
Ingest\Imaging\DICOM\DICOM-HDS
文件夹。
选择
...
(省略号)>
上传
>
上传文件
。
从
SampleData
文件夹中选择并上传成像数据集。
部署示例数据
步骤应自动将示例数据部署到此文件夹。
对 DCM 文件的数量或已引入 ZIP 文件中子文件夹的数量、深度和嵌套没有限制。 有关文件大小限制的信息,请参阅
引入文件大小
。
将示例数据移动到铜牌湖屋文件夹后,管道将组织文件以进行处理。 它使用医疗保健数据解决方案库中的
ImagingRawDataMovementService
模块,将成像文件移动到优化的文件夹结构以进行进一步处理:
将
Ingest
文件夹中的文件转移到铜牌湖屋中新的优化文件夹结构
Files\Process\Imaging\DICOM\yyyy\mm\dd
。 此可缩放、数据湖友好的文件夹结构遵循
Azure Data Lake Storage 目录结构的最佳做法
。 对于具有多个 DCM 文件的 ZIP 格式的源文件,笔记本会提取每个 DCM 文件并将其移动到优化的文件夹结构,而不考虑源 ZIP 文件中的原始文件夹层次结构。
在文件名中添加 Unix 时间戳前缀。 时间戳以毫秒级别生成,以确保文件名的唯一性。 对于具有多个图像存储与传输系统 (PACS) 和供应商中立归档 (VNA) 系统的环境,此功能非常有用,其中文件名的唯一性无法得到保证。
如果日期移动失败,失败的文件(带有 Unix 时间戳前缀)将保存在以下优化的文件夹结构中的
Failed
文件夹下:
Files\Failed\Imaging\DICOM\DICOM-HDS\yyyy\mm\dd\
。
此步骤使用
healthcare#_msft_imaging_dicom_extract_bronze_ingestion
笔记本,使用
Spark 中的结构化流式处理
跟踪和处理
Process
文件夹中新移动的文件。 该笔记本使用医疗保健数据解决方案库中的
MetadataExtractionOrchestrator
模块执行以下操作:
提取
Process
文件夹 DCM 文件中可用的 DICOM 标记(DICOM 数据元素),并将其引入到铜牌湖屋的
dicomimagingmetastore
增量表中。 有关此转换流程的详细信息,请转到
DICOM 元数据到铜牌增量表的转换映射
。
如果数据提取失败,笔记本会将带有 Unix 时间戳前缀的失败文件保存在铜牌湖屋中以下优化的文件夹结构
Files\Failed\Imaging\DICOM\DICOM-HDS\yyyy\mm\dd\
中的
Failed
文件夹下。
数据提取可能由于以下几个原因而失败:
由于未知或意外错误,文件分析失败。
DCM 文件包含不符合 DICOM 标准格式的无效内容。
引入文件并使用 DICOM 标记填充
dicomimagingmetastore
增量表后,下一步是将 DICOM 元数据转换为 FHIR 格式。
healthcare#_msft_imaging_dicom_fhir_conversion
笔记本使用
Spark 中的结构化流式处理
,跟踪和处理铜牌湖屋中最近修改的增量表,包括
dicomimagingmetastore
。 它使用医疗保健数据解决方案库中的
MetadataToFhirConvertor
模块转换
dicomimagingmetastore
铜牌增量表中的 DICOM 元数据。 转换流程涉及将元数据从
dicomimagingmetastore
表转换为
FHIR 资源 R4.3
格式的 FHIR
ImagingStudy
中,并将输出另存为 NDJSON 文件。 有关转换的详细信息,请转到
DICOM 元数据到铜牌增量表的转换映射
。
笔记本将 DICOM 元数据转换为 FHIR
ImagingStudy
,并将 NDJSON 文件写入铜牌湖屋中 FHIR 文件的另一个优化的文件夹结构中。 文件夹结构为
Files\Process\Clinical\FHIR NDJSON\yyyy\mm\dd\ImagingStudy
。 针对在单个笔记本执行中处理的所有 DICOM 元数据,笔记本仅生成一个 NDJSON 文件。 如果找不到新文件夹,请
刷新 Fabric UI 和 OneLake 文件资源管理器
。
将数据引入到铜牌湖屋 ImagingStudy 增量表中
在引入 DICOM 数据并将其转换为 FHIR 格式后,管道将运行简单的 FHIR 数据引入管道,类似于引入任何其他 FHIR 资源。 此步骤将 FHIR
ImagingStudy
NDJSON 文件中的数据转换为铜牌湖屋中的
ImagingStudy
增量表。 此增量表维护数据源的原始状态。
该执行将同一研究的实例级别数据分组到一个 DICOM 研究记录中。 有关此分组模式的详细信息,请参阅
铜牌湖屋中的分组模式
。
将数据引入到银牌湖屋 ImagingStudy 增量表中
在此步骤中,数据管道将运行
healthcare#_msft_bronze_silver_flatten
笔记本,以跟踪和处理铜牌湖屋中新添加的记录。 根据
FHIR 资源 (R4.3)
格式,该笔记本将铜牌湖屋的
ImagingStudy
增量表中的数据平展并转换到银牌湖屋中的
ImagingStudy
增量表。
笔记本将
ImagingStudy
记录从铜牌更新插入到银牌湖屋。 若要了解有关更新插入模式的详细信息,请转到
银牌湖屋中的更新插入模式
。
铜牌到银牌增量表的转换映射
详细介绍了此转换流程。
在笔记本完成执行后,您可以在银牌湖屋的
ImagingStudy
增量表中看到 9 条记录。
将数据转换并引入到金牌湖屋中
仅当您已部署并配置医疗保健数据解决方案中的
OMOP 转换功能
时,才执行此可选执行步骤。 否则,您可以跳过此步骤。
在最后一步中,按照此指南将数据转换并引入到金牌湖屋的
Image_Occurrence
增量表中:
在您的医疗保健数据解决方案中,转到
healthcare#_msft_omop_silver_gold_transformation
笔记本并将其打开。
此笔记本使用医疗保健数据解决方案 OMOP API 将银牌湖屋中的资源转换到金牌湖屋的 OMOP Common Data Model 增量表中。 默认情况下,无需对笔记本配置进行任何更改。
选择
全部运行
以运行笔记本。
该笔记本实施
OMOP 跟踪方法
,以跟踪和处理银牌湖屋的
ImagingStudy
增量表中新插入或更新的记录。 它将银牌湖屋的 FHIR 增量表(包括
ImagingStudy
表)中的数据转换到金牌湖屋的相应 OMOP 增量表(包括
Image_Occurrence
表)。 有关此转换的详细信息,请转到
银牌到金牌增量表的转换映射
。
有关所有受支持 OMOP 表的映射详细信息,请参考
FHIR 到 OMOP 映射
。
在笔记本基于成像示例数据集完成执行后,您可以在金牌湖屋的
Image_Occurrence
增量表中查询并找到 24 条记录。 每条记录都表示 DICOM 层次结构中的系列对象。
仅当您使用 Azure Health Data Services DICOM 服务并部署了 DICOM API 时,才遵循此执行管道。 否则,您可以跳过此选项。
查看并完成
在 Azure Health Data Services 中部署 DICOM API
中的部署过程。
部署 Azure DICOM 服务后,通过
存储 (STOW-RS)
API 引入 DCM 文件。
根据您的首选语言,使用以下选项之一上传示例数据文件:
将 DICOMweb 标准 API 与 C# 结合使用
将 DICOMweb 标准 API 与 cURL 结合使用
将 DICOMweb 标准 API 与 Python 结合使用
如果使用的是 Python,您可以:
创建
.PY
文件。
按照
将 DICOMweb 标准 API 与 Python 结合使用
中的说明和代码片段操作。
将本地计算机位置中的 DCM 文件上传到 DICOM 服务器。
使用
检索 (WADO-RS)
API 验证文件上传操作是否成功。
您还可以使用以下步骤验证文件上传是否成功:
在
Azure 门户
上,选择链接到 DICOM 服务的 Azure 存储帐户。
导航到
容器
并遵循路径
[ContainerName]/AHDS/[AzureHealthDataServicesWorkspaceName]/dicom/[DICOMServiceName]
。
验证您是否可以在此处看到上传的 DCM 文件。