Python 如何使用numpy计算RTDose(3D阵列)的平均剂量和最大剂量?
我有一个用于RTDose的3D阵列。一个用于预测,一个用于地面真相。还有,我有3D的桨面具阵列。如何计算每个OAR的平均剂量和最大剂量?考虑使用两种结构的RTS,一种是PTV,另一种是GTV。以下代码用于计算PTV和GTV的平均和最大剂量。加载rtss nifti文件时。。。PTV轮廓包含值=1,GTV包含值=2。因此,在获取这些轮廓的剂量时也使用相同的方法Python 如何使用numpy计算RTDose(3D阵列)的平均剂量和最大剂量?,python,numpy,deep-learning,metrics,Python,Numpy,Deep Learning,Metrics,我有一个用于RTDose的3D阵列。一个用于预测,一个用于地面真相。还有,我有3D的桨面具阵列。如何计算每个OAR的平均剂量和最大剂量?考虑使用两种结构的RTS,一种是PTV,另一种是GTV。以下代码用于计算PTV和GTV的平均和最大剂量。加载rtss nifti文件时。。。PTV轮廓包含值=1,GTV包含值=2。因此,在获取这些轮廓的剂量时也使用相同的方法 import nibabel as nib import numpy as np rtss_fname="rtss0.nii.gz" rt
import nibabel as nib
import numpy as np
rtss_fname="rtss0.nii.gz"
rtdose_fname="rtdose0.nii.gz"
rtss_img = nib.load(rtss_fname)
rtss_array=rtss_img.get_data()
rtdose_img = nib.load(rtdose_fname)
rtdose_array=rtdose_img.get_data()
dose_at_label1=rtdose_array[rtss_array==1]
dose_at_label2=rtdose_array[rtss_array==2]
print("PTV max dose ",dose_at_label1.max())
print("GTV max dose ",dose_at_label2.max())
print("PTV mean dose ",dose_at_label1.mean())
print("GTV mean dose ",dose_at_label2.mean())