MatLab读写dicom 像素操作
使用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);