在matlab中用dicomread讀取dicom文件后,生成一個MxN矩陣(對應圖像像素個數),每個像素灰度數據是int16格式
但是bmp圖像灰度是int8格式的(灰度范圍0~255),所以若想把dicom圖像存儲為bmp圖像做后續處理,需要將16位的dicom灰度數據映射為8位的灰度數據。
采用的方法即醫學圖像處理中常見的加窗處理。
實例代碼如下:
1 img=imadjust(img_raw,[0.5;0.55],[0;1]); %調整灰度范圍 2 img=double(img); %將灰度級映射到0~255 3 low=min(min(img)); 4 high=max(max(img)); 5 maxgray=high-low; %計算窗寬 6 rate=256/maxgray; 7 img=dcm(i).img*rate; 8 img=img+abs(min(min(img))); %加窗 9 img=uint8(img); %轉化為8位的位圖數據格式
參考文獻:
馬曉宇 and 顧曉暉, et al. (2009). "LIDC數據庫中CT上肺結節輪廓的可視化."
中國醫療設備
(02): 16-18.
