【问题标题】:How can I save the metadata only of a dicom image, without the PixelArray?如何在没有 PixelArray 的情况下仅保存 dicom 图像的元数据?
【发布时间】:2020-04-27 15:02:20
【问题描述】:
  • 我有一张 Dicom 图片,我确实使用 pydicom.dcmread('1.dcm') 阅读过它。
  • 没有pixel_array,我怎样才能只写元数据?可以是字典,也可以是 dicom 格式。
  • 我尝试使用以下代码来实现,但没有成功!
import os
import pydicom
path='dataset'
dico = pydicom.dcmread('1.dcm')
dico.pixel_array = None
dico.save_as(os.path.join(path,'Metadata.dcm'))

【问题讨论】:

    标签: pydicom


    【解决方案1】:

    如果你根本不需要像素数据,你可以使用:

    dico = pydicom.dcmread('1.dcm', stop_before_pixels=True)
    

    在这种情况下,只有像素数据之前的标签,例如读取标头数据(请注意,在极少数情况下,一些私有数据可能存在于像素数据之后,但这通常可以忽略)。

    如果要在读取后删除像素数据,则必须删除PixelData标签:

     dico = pydicom.dcmread('1.dcm')
     del dico.PixelData
     dico.save_as(os.path.join(path,'Metadata.dcm'))
    

    请注意,pixel_data 是根据需要从 PixelData 标记创建的 - 而 PixelData 是原始格式(取决于字节序和可能的压缩),pixel_data 是一个 NumPy 数组,格式可以使用用于图像处理。删除它不会删除原始像素数据。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-09-04
      • 1970-01-01
      • 1970-01-01
      • 2021-09-24
      • 1970-01-01
      • 2016-12-08
      • 2012-12-16
      • 1970-01-01
      相关资源
      最近更新 更多