【问题标题】:How to access all tags from a DICOM group number?如何从 DICOM 组号访问所有标签?
【发布时间】:2022-01-27 15:10:58
【问题描述】:

我想从 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 方法可以做到吗?

【问题讨论】:

  • 你可以使用print(ds[0x00100000:0x00110000])
  • print(ds.group_dataset(0x10))

标签: python dicom pydicom


【解决方案1】:

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

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))

这两种方法都将返回一个包含元素的新 Dataset 实例。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-25
    • 2017-02-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-21
    相关资源
    最近更新 更多