赞
踩
1. 用SimpleITK读取dicom序列:import SimpleITK as sitkimport numpy as npimg_path='F:\\dataset\\pancreas\\Output\\thick\\original\\1'mask_path='F:\\dataset\\pancreas\\Output\\thick\\groundtruth\\1'reader = sitk.ImageSeriesReader()img_names = reader.GetGDCMSeriesFileNames(img_path)reader.SetFileNames(img_names)image = reader.Execute()image_array = sitk.GetArrayFromImage(image) # z, y, xreader = sitk.ImageSeriesReader()mask_names = reader.GetGDCMSeriesFileNames(mask_path)reader.SetFileNames(mask_names)mask = reader.Execute()mask_array = sitk.GetArrayFromImage(mask) # z, y, x
2. 用dicom读取单张dicom图像并显示:import dicomimport pylabds=dicom.read_file("F:\\dataset\\pancreas\\Output\\thick\\groundtruth\\1\\FILE0001_seg.dcm")pixel_bytes = ds.PixelData##CT值组成了一个矩阵 pix = ds.pixel_array##读取显示图片 pylab.imshow(ds.pixel_array, cmap=pylab.cm.bone)pylab.show()
如果要对dicom图像中的像素值进行修改,继续执行以下代码:##修改图片中的元素,不能直接使用data_array,需要转换成PixelData for n,val in enumerate(ds.pixel_array.flat): # example: zero anything
3. 此外,用pydicom也可读取dicom图像
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。