使用MATLAB的dicominfo()函数读取dicom文件:
%对于GE的机器,一个dicom文件对应一个slice,读取出来的信息中有Trigger Time一项,根据每个slice对应的Trigger Time来确定(dicom文件的命名是按照位置的増序,即从负到正,来排列的,并不是扫描的时间序列!!)
dicominfo('IM0')
dicominfo('IM1')
dicominfo('IM2')
dicominfo('IM36')
%如果相同时查看一个volumn的每个slice的location和扫描时间,可以用下面的代码,这里volumn的层数是36
clear TT SL;
for i=0:35
img = dicominfo(['IM',num2str(i)]);
TT(i+1,1) = img.TriggerTime;
SL(i+1,1) = img.SliceLocation;
end
%对于西门子的机器,一个dicom文件对应一个完整的volume,读取出来的信息中有Private_*_*一项,它的维度是n*1(n为一个volume的总层数),在里面存储着每一层的扫描时间
dicominfo('93699259')