之前在网上找了一些dicom转mhd文件的代码,但是跑模型效果不好,我就在ITK-SNAP上可视化了一下结果。发现转mhd后,所有小于0的像素都被置为0了。
所以修改代码,放到下面。
import numpy as np
import SimpleITK as sitk
import matplotlib.pyplot as plt
filesPath = r"E:\dataset\dcm\chenxiaodan"#放dcm文件
reader = sitk.ImageSeriesReader()
dicomFiles = reader.GetGDCMSeriesFileNames(filesPath)
reader.SetFileNames(dicomFiles)
dicom = reader.Execute()
#image = sitk.GetArrayFromImage(dicom) # z,y,x
SimpleITK.WriteImage(dicom,'mhd/1.mhd')#转好的文件保存到1.mhd中