如何访问 DICOM 组号中的所有标签?

How to access all tags from a DICOM group number?

我想从 DICOM 中提取所有具有相同组号的 dicom 标签。例如,我想提取属于组 0010 的所有标签。我试过了,当然报错了:

import pydicom
ds=pydicom.dcmread('dicomfile.dcm')

print(ds[0x0008,0x0020]) # print the tag corresponding to group number 0008, and element number 0020

print(ds[0x0010,:]) # ERROR, does not print a list of all tags belonging to group 0008.

有pydicom的方法吗?

正如@mrbean-bremen 和@darcymason 所说,有两种方法可以通过标签值获取一系列元素。您可以使用切片 return 任意范围的元素:

import pydicom

ds = pydicom.dcmread("path/to/file")
# Must use the full group + element tag
print(ds[0x00100000:0x00110000])

或者如果您只需要一个特定的组,那么您可以使用 Dataset.group_dataset():

import pydicom

ds = pydicom.dcmread("path/to/file")
# Just need the element group number
print(ds.group_dataset(0x0010))

这两种方法都会 return 一个包含元素的新 Dataset 实例。