DICOM图像转出为bmp格式图像方法(matlab程序实现)

时间:2024-01-13 16:31:02

在matlab中用dicomread读取dicom文件后,生成一个MxN矩阵(对应图像像素个数),每个像素灰度数据是int16格式

但是bmp图像灰度是int8格式的(灰度范围0~255),所以若想把dicom图像存储为bmp图像做后续处理,需要将16位的dicom灰度数据映射为8位的灰度数据。

采用的方法即医学图像处理中常见的加窗处理。

实例代码如下:

      img=imadjust(img_raw,[0.5;0.55],[;]); %调整灰度范围
img=double(img); %将灰度级映射到0~
low=min(min(img));
high=max(max(img));
maxgray=high-low;        %计算窗宽
rate=/maxgray;        
img=dcm(i).img*rate;
img=img+abs(min(min(img))); %加窗
img=uint8(img); %转化为8位的位图数据格式

参考文献:

马晓宇 and 顾晓晖, et al. (2009). "LIDC数据库中CT上肺结节轮廓的可视化." 中国医疗设备(02): 16-18.