使用 Pydicom 和 Matplotlib 查看 DICOM 图像
先决条件: Matplotlib
DICOM 代表医学数字成像和通信。引入 DICOM 文件是为了保持不同类型的医学图像模式之间的一致性。它是查看、存储、共享和检索医学图像的标准格式。
Python提供了一个强大的模块pydicom来处理 DICOM 文件,例如医学图像、报告和放射治疗对象。 pydicom在 DICOM 文件中读取修改和写入数据。
安装
在命令提示符中运行以下命令:
pip install dicom
pip install matplotlib
pydicom 使我们能够处理 DICOM 文件,在本文中,我们将讨论使用 pydicom 和 matplotlib 查看 DICOM 文件的机制。为了读取 DICOM 文件,我们使用 pydicom 包并使用 matplotlib 查看结果。
方法
- 导入模块
- 使用pydicom.data.data_manager.get_files()方法读取 DICOM 文件
Syntax :
pydicom.data.data_manager.get_files(base,pass_dicom)[0]
Parameter:
- Base : is base directory to recursively search as a string.
- Pattern : By default it is “*”. It is a string pattern which is used to filter the files.
- 提供 2 个参数:base 和 pattern
- 将数据显示为图像,即在 2D 规则栅格上。
- 显示图像
注意:在变量名的基础中输入不包括文件名的 dcm 文件的位置,并在 pass_dicom 变量中输入文件名。在这种情况下,文件存储在名为 dicom_image 的目录中,如下所示:
从这里下载 dcm 文件并将其重命名为:1-12.dcm
程序:
Python3
import matplotlib.pyplot as plt
import pydicom
import pydicom.data
# Full path of the DICOM file is passed in base
base = r"C:\Users\Ajit Gupta\Documents\dicom image"
pass_dicom = "1-12.dcm" # file name is 1-12.dcm
# enter DICOM image name for pattern
# result is a list of 1 element
filename = pydicom.data.data_manager.get_files(base, pass_dicom)[0]
ds = pydicom.dcmread(filename)
plt.imshow(ds.pixel_array, cmap=plt.cm.bone) # set the color map to bone
plt.show()
输出: