“FileDataset”对象没有属性“DoseGrid”

2024-10-04 01:23:40 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直在尝试使用DICOMPILER核心将来自两个不同剂量DICOM的两个剂量网格组合在一起

import pydicom
import numpy as np
import os
import glob
from dicompylercore import dicomparser, dvh, dvhcalc
from dicompylercore import dose

我在尝试导入剂量时一直收到此错误

ImportError                               Traceback (most recent call last)
<ipython-input-120-6605335fa321> in <module>
      5 import glob
      6 from dicompylercore import dicomparser, dvh, dvhcalc
----> 7 from dicompylercore import dose

ImportError: cannot import name 'dose' from 'dicompylercore'

由于这个导入错误,我认为这就是为什么在尝试将两个剂量网格添加到一起时找不到属性的原因

dose1 = dicomparser.DicomParser("RD.CW.dcm")
dose2 = dicomparser.DicomParser("RD.CCW.dcm")

grid_1 = dose.DoseGrid()
grid_2 = dose.DoseGrid()
grid_sum = grid_1 + grid_2
grid_sum.save_dcm("grid_sum.dcm")  

它给了我这个错误

~\Anaconda3\lib\site-packages\pydicom\dataset.py in __getattr__(self, name)
    550         if tag is None:  # `name` isn't a DICOM element keyword
    551             # Try the base class attribute getter (fix for issue 332)
--> 552             return super(Dataset, self).__getattribute__(name)
    553         tag = Tag(tag)
    554         if tag not in self._dict:  # DICOM DataElement not in the Dataset

AttributeError: 'FileDataset' object has no attribute 'DoseGrid'

我不熟悉使用dicom文件和dicompylercore。我不确定这是否与我正在处理的dicom文件有关,或者dicomplyercore包本身是否存在问题。有没有关于我能做些什么来解决这个问题的建议


Tags: nameinfromimporttag错误griddicom