使用Matlab讀寫Dicom比較簡單。
一、讀DICOM圖像
主要涉及到兩個函數:dicominfo和dicomread
(1)metadata = dicominfo(filename)
主要用於讀取dicom的頭文件
獲取某個tag直接使用metadata.方法即可,例如metadata.SeriesInstanceUID。
需要修改tag也簡單,例如:metadata.SeriesInstanceUID = '1.3.12.2.1107.5.1.4.73336.3000002109301112409880041433001';
(2)img= dicomread(filename)
用於讀取dicom像素信息,img直接為二維矩陣,使用imshow可以直接顯示圖像
二、寫DICOM圖像
主要涉及到的函數為:dicomwrite
dicomwrite(img,newfilename,metadata);
如果需要修改dicom圖像的像素信息,只需要修改img中的值即可,img(i,j) = 0;
filename=fullfile('E:\\***\\IMG-0001-00484.dcm'); info = dicominfo(filename); img = dicomread(filename); info.SeriesInstanceUID = '1.3.12.2.1107.5.1.4.73336.3000002109301112409880041433001'; for i = 1:512 for j = 1:512 if(i>240 && i < 320) z = 1; else img(i,j) = 0; end end end newfilename = 'E:\\***\\IMG-0001-00161.dcm' dicomwrite(img,newfilename,info);