读取显示dcm医疗CT数据
import SimpleITK as sitk
import numpy as np
import pydicom
import matplotlib.pyplot as plt
import numpy as np
reader = sitk.ImageFileReader()
in_path = r'./datasets/data/dcm/tumor0.dcm'
reader.SetFileName(in_path)
reader.LoadPrivateTagsOn();
reader.ReadImageInformation();
len = 0
for k in reader.GetMetaDataKeys():
v = reader.GetMetaData(k)
len += 1
print(k, v)
print(len)
ds = pydicom.read_file(in_path) #读取.dcm文件
img = ds.pixel_array #提取图像信息
print("*************************************")
img = np.transpose(img, (2, 1, 0))
a, b, c = img.shape
figure = plt.figure(figsize=(10.8, 7.2))
plt.ion()
plt.tight_layout()
for i in range(a):
plt.imshow(img[i])
plt.pause(0.01)
plt.clf()
plt.show()
连续的单帧结果显示如下: