使用Pydicom修改RTPLAN私有标签报错,求解决方法
解决Pydicom修改RTPLAN私有标签的TypeError问题
你遇到的错误是因为Pydicom的Dataset要求所有元素必须是DataElement实例,直接赋值字符串不符合要求。针对私有标签的修改,分两种情况处理:
情况1:目标私有标签已存在于Dataset中
直接修改该标签的value属性即可:
ds[0x4001, 0x1012].value = 'test'
情况2:目标私有标签不存在,需要新增
首先要确认该私有标签对应的VR(值表示法,比如从原DICOM文件的元数据或相关文档中获取,假设此处为LO类型),然后创建DataElement实例并添加到Dataset:
from pydicom.dataelement import DataElement # 创建DataElement,参数依次为标签元组、VR、目标值 new_elem = DataElement((0x4001, 0x1012), 'LO', 'test') ds.add(new_elem)
注意:私有标签的VR需要和原文件或DICOM规范中定义的一致,否则可能导致DICOM文件无法正常解析。
内容的提问来源于stack exchange,提问作者Romain
相关产品推荐
相关产品推荐

