如何在没有 reading/loading 像素数据的情况下读取 DICOM 私有标签?

How to read DICOM private tags without reading/loading pixel data?

我想阅读 DICOM 私人标签。这些私有标签在十六进制标签 x7fe11001.
下 我知道其中一种 pydicom 配置读取到像素数据开始(因此内存未加载)。

pydicom.dcmread(raw, defer_size="2 MB", stop_before_pixels=True)

但我试图读取的私人标签是 像素数据之后。所以我结束了在内存中加载完整文件,这不是最佳的。还有哪些其他最佳阅读方式?
我知道上面的方法有一个配置参数,叫做 specific_tags。但是我找不到任何使用它的例子。

任何在不将像素数据加载到内存的情况下读取 DICOM 元数据的建议都很棒。

你说得对,specific_tags 是正确的做法:

ds = pydicom.dcmread(raw, specific_tags=[Tag(0x7fe1, 0x1001)]

在这种情况下,ds 应仅包含您的私人标签和 Specific Character Set 标签(始终被读取)。
由于DICOM是顺序格式,其他标签还是要一个一个跳过,但不会读取它们的值。
请注意,您可以将任意数量的标签放入 specific_tags 参数。