医学图像笔记(一)dicom数据格式
1、dicom数据格式
DICOM表示“医学数字成像和通讯”。DICOM是由“美国国家电气制造商协会”(NEMA)发布的标准,这一标准规范了医学成像的管理、储存、打印和信息传输,这些都是扫描仪或医院“医疗影像储传系统”(PACS)中的文件格式。 DICOM包括了一个文件格式和一个网络通讯协议,其中的网络通讯协议是医疗实体间使用TCP/IP进行沟通的一个规范和准则。 一个DICOM文件由一个数据头和图像数据组成的。数据头的大小取决于数据信息的多少。数据头中的内容包括病人编号、病人姓名等等。同时,它还决定了图像帧数以及分辨率。这是图片查看器用于显示图像的。即使是一个单一的图像获取,都会有很多DICOM文件。
2、读取一张dicom数据可以获取那些信息:
# -*- coding : UTF-8 -*-
# @file : read_dcm.py
# @Time : 2021-09-14 16:24
# @Author : wmz
import pydicom
import pylab
if __name__ == "__main__":
# ds=dicom.read_file("test/test.dcm")
ds = pydicom.read_file("img/U0000010")
##查看有哪些属性
print(ds.dir("pat"))
##原始影像二进制文件
# pixel_bytes = ds.PixelData
# print(pixel_bytes)
##.dcm 中的影像矩阵
pix = ds.pixel_array
##读取显示图片
pylab.imshow(ds.pixel_array, cmap=pylab.cm.bone)
pylab.show()
对于研究图像处理需要了解的信息主要包括:
图像尺寸 | COlums,Rows | 512 ,512 |
---|---|---|
数据类型 | BitsStored | 16 |
原CT中的第几帧 | InstanceNumber | 10 |
方向信息 | ImageOrientationPatient | 1,0,0,0,1,0 |
像素物理间隔 | PixelSpacing | 0.7,0.7 |
全部信息:
3、DICOM格式的细节
CT扫描测量的单元是“胡斯菲尔德单元”(HU),这个单元测量的是放射性密度。为了得到精确的测量结果,CT扫描仪经过了严格的校准。下面是关于CT扫描测量的细节内容:
每个像素都会被分配一个数值(CT数),这个数值是相应的voxel内所有衰减值的平均值。这个数字是与水的衰减值相比较得出的,而且是以任意单元的规模显示的,这个任意单元叫做“胡斯菲尔德单元”(HU),是以Godfrey Hounsfield先生的名字命名的。
这个任意单元的规模将水的衰减值定为零。CT数字的范围是2000HU,尽管有一些现代扫描仪的HU范围达到了4000。每个数值都代表了一种灰色阴影,在光谱两端有+1000白色和-1000黑色。
胡斯菲尔德规模(图片来自《CT的介绍》)