【问题标题】:How to determine if single frame DICOM is actually slice of MRI?如何确定单帧 DICOM 是否实际上是 MRI 切片?
【发布时间】:2020-01-15 20:54:20
【问题描述】:

我正在编写一个计算医疗记录的应用程序。该应用程序将计算页数并将其除以 20,以确定为客户打印记录所需的胶片数量。我有一个壁橱案例,当 MRI 被扫描时(特别是如果它们显示为 SC),它只会是一帧,但电影已经是 20 帧 MRI。

如何确定单个 DICOM 是否实际上是多帧 MRI?

如果我尝试对文件进行帧计数,我会得到1。这是其中一个文件的 DICOM 转储:

(0005,0005) CS Private Creator 'NovaRad 6.0'
(0005,0006) SS Private Creator '1'
(0005,000b) CS Private Creator 'DOCTOR BOB'
(0005,0059) PN Private Creator 'PATIENT'
(0008,0000) UL Group Length '296'
(0008,0005) CS Specific Character Set 'ISO_IR 100'
(0008,0016) UI SOP Class UID '1.2.840.10008.5.1.4.1.1.7'
(0008,0018) UI SOP Instance UID '1.2.392.12345.030815.2015.8.4.10.38.18.63'
(0008,0020) DA Study Date '20131229'
(0008,0030) TM Study Time '102725'
(0008,0050) SH Accession Number ''
(0008,0060) CS Modality 'SC'
(0008,0064) CS Conversion Type 'DF'
(0008,0070) LO Manufacturer 'Radlink'
(0008,0080) LO Institution Name ''
(0008,0090) PN Referring Physician's Name 'DOCTOR BOB'
(0008,1010) SH Station Name ''
(0008,1030) LO Study Description 'L/SPINE MRI'
(0008,103e) LO Series Description ''
(0008,1090) LO Manufacturer's Model Name 'Radlink LaserPro16'
(0010,0000) UL Group Length '78'
(0010,0010) PN Patient's Name 'PATIENT'
(0010,0020) LO Patient ID ''
(0010,0030) DA Patient's Birth Date ''
(0010,0040) CS Patient's Sex 'M'
(0010,1000) LO Other Patient IDs ''
(0010,21b0) LT Additional Patient History ''
(0018,0000) UL Group Length '38'
(0018,0015) CS Body Part Examined ''
(0018,1012) DA Date of Secondary Capture '20141229'
(0018,1014) TM Time of Secondary Capture '102725'
(0020,0000) UL Group Length '132'
(0020,000d) UI Study Instance UID ''
(0020,000e) UI Series Instance UID ''
(0020,0010) SH Study ID '1'
(0020,0011) IS Series Number '1'
(0020,0013) IS Instance Number '2'
(0028,0000) UL Group Length '152'
(0028,0002) US Samples per Pixel '1'
(0028,0004) CS Photometric Interpretation 'MONOCHROME2'
(0028,0010) US Rows '2500'
(0028,0011) US Columns '2040'
(0028,0030) DS Pixel Spacing '0.1736328125'
(0028,0100) US Bits Allocated '16'
(0028,0101) US Bits Stored '16'
(0028,0102) US High Bit '15'
(0028,0103) US Pixel Representation '0'
(0028,1050) DS Window Center '42343'
(0028,1051) DS Window Width '29336'
(0028,2110) CS Lossy Image Compression '01'
(0028,2112) DS Lossy Image Compression Ratio '7.512827'
(0032,0000) UL Group Length '26'
(0032,000a) CS Study Status ID ''
(0032,000c) CS Study Priority ID '0'
(0032,1030) LO Reason for Study ''
(0040,0000) UL Group Length '8'
(0040,0241) AE Performed Station AE Title ''
(0040,1003) SH Requested Procedure Priority 'ROUTINE'
(0050,0065) CS Unknown 'DOCTOR BOB'
(7fe0,0000) UL Group Length '10200012'
(7fe0,0010) OW Pixel Data ''

以下是帧数、高度和宽度的代码:

DicomImage image = new DicomImage(ctFile.Dataset);
Console.WriteLine(image.NumberOfFrames);
Console.WriteLine(image.Width);
Console.WriteLine(image.Height);

给我:

NumFrames:1

宽度:2040

身高:2500

【问题讨论】:

  • 研究的所有帧都存储在哪里?它们放在一个文件夹中吗?如果文件夹包含多个帧没有意义,那么根据文件夹中的文件计数还有额外的帧?
  • @jdweng 从我所看到的看起来只是一帧。我认为这是从 MRI 扫描的所有帧的单个 jpeg。我承认自己不是 DICOM 专家。非常感谢任何帮助。
  • 我也不是专家。我读过一次规范,但不记得所有细节。文件夹中有多少个 jpeg 文件?文件的大小是多少?尺寸会很大。我现在有我上次身体扫描得到的磁盘。如果明天有机会,我会看看磁盘。

标签: c# dicom fo-dicom


【解决方案1】:

我有一个壁橱案例,当扫描 MRI(特别是如果它们显示为 SC)镜头时,它只会是一帧,但电影已经是 20 帧的 MRI。如何确定单个 dicom 是否实际上是多帧 MRI。

我认为在这种特殊情况下您不能这样做。
请注意,[SOP Class UID (0008,0016)] 的值为 '1.2.840.10008.5.1.4.1.1.7' 而 [Modality (0008,0060)] 的值为 'SC'。还要注意许多重要属性([Study Instance UID (0020,000d)]、[Series Instance UID (0020,000e)])的值是空的。您甚至不能说这个实例(图像)是针对该患者的任何特定研究的一部分。

许多医疗设备/应用程序通过处理原始数据集生成这种类型的数据集。我们可以说这是原始实例的元数据或附加数据。它可能正在生成 3D 或存储/保存 DICOM 电影布局以供进一步使用,或者某些 AI 用于自动诊断/报告生成或其他。

阅读您的问题后,该数据集似乎已保存为 DICOM Film 以供进一步使用。如果是这种情况,您可能会在计算中忽略此特定数据集;但我不能确定这一点,因为我不太了解您的应用程序的域。

现在关于“切片”:

我不确定您在这里所说的“切片”到底是什么意思。切片作为多帧的一部分?或切片作为系列的一部分?不然呢?

无论如何,正如我上面所说,您无法在这种特殊情况下确定它。

如果它是多帧的一部分,@kritzel_sw 的other answer 会解释它。数据集中没有 [Number Of Frames (0028,0008)] 属性。

如果是系列的一部分,则数据集中没有系列UID;你不能。

我认为这个数据集无论如何都不是“切片”。这更像是独立的数据集。同样,如上所述,您可能会在计算中忽略这一点。

【讨论】:

  • 出于 HIPA 问题,我删除了系列和研究 ID。感谢您提供更多信息。
  • 这非常符合我因缺少标签而得出的结论。因此,即使 DICOM 本身将 20 张单独的幻灯片视为 20 张单独的幻灯片,也没有办法编写成像算法来分析实际 JPEG 的单独帧数?
【解决方案2】:

如果我的问题是正确的,您想确定 MR 图像是否是多帧图像。但请注意,只有一帧的多帧图像仍然是有效的多帧图像。

关于 MRI,DICOM 中有 2 个不同的 SOP 类:

  • 1.2.840.10008.5.1.4.1.1.4(“传统”MRI)
  • 1.2.840.10008.5.1.4.1.1.4.1(增强型 MR)

传统 MRI 的模块表引用了 Image Pixel Module,其中不包括属性 Number Of Frames (0028,0008)。所以传统的 MRI 总是单帧的

增强型 MR 的模块表还包括 Multi-Frame-Functional Groups 模块,其中包括属性 Number Of Frames。

长话短说,它取决于 SOP 类 UID 属性 Number Of Frames 是否可能存在于 MRI 对象中。

【讨论】:

  • Multi-Frame Image with only one frame is still a valid Multi-Frame Image 那么哪个属性会识别数据集是否是多帧的呢?在这种情况下,Number Of Frames (0028,0008) 将为 1。您是否建议检查像素数据是否存储在片段中?或者你建议看SOP Class?不然呢?
  • 只需检查SOP Class UID和属性值就足够了
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-11-10
  • 2011-11-10
  • 1970-01-01
  • 2013-04-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多