⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 read_ana_header.m

📁 mri_toolbox是一个工具用来MRI. 来自于SourceForge, 我上传这个软件,希望能结识对医疗软件感兴趣的兄弟.
💻 M
字号:
function [ana,formato]=Read_Ana_Header(filename)
% [ana,formato]=Read_Ana_Header(filename)
% Reads the header of analize file filename.hdr
% Note that filename can contain float (4 bytes real) data that are not allowed 
% in MatLab.
% References:  anz_hdr_struct.pro (IDL program from Ivan Zimini) and
% www.mayo.edu/bir/analyze/analyze_ov.html

% rgpm 19-7-2000

format=detect_format(filename), % detectando formato

if nargout==2, formato=format; end

[fid,message] = fopen(filename,'r',format);

if fid==-1, myerror(message), end

%            header_key

nada= fread(fid,1,'uint32');   
header_key.sizeof_hdr =nada;

nada= fread(fid,[1,10],'uchar');   
header_key.data_type=char(nada);

nada= fread(fid,[1,18],'uchar');   
header_key.db_name=char(nada);

nada= fread(fid,1,'uint32');   
header_key.extents=nada;

nada= fread(fid,1,'uint16');   
header_key.session_error=nada;

nada= fread(fid,1,'uchar');   
header_key.regular=char(nada);

nada= fread(fid,1,'uchar');   
header_key.hkey_un0=char(nada);

%               image_dimensions

nada= fread(fid,[1,8],'uint16');   
image_dimensions.dim=nada;

nada= fread(fid,[1,4],'uchar');   
image_dimensions.vox_units=char(nada);

nada= fread(fid,[1,8],'uchar');   
image_dimensions.cal_units=char(nada);

nada= fread(fid,1,'uint16');   
image_dimensions.unused1=nada;

nada= fread(fid,1,'uint16');   
image_dimensions.datatype=nada;

nada= fread(fid,1,'uint16');   
image_dimensions.bitpix=nada;

nada= fread(fid,1,'uint16');   
image_dimensions.dim_un0=nada;

nada= fread(fid,[1,8],'float32');   
image_dimensions.pixdim=nada; % in disk it is a float !!!!!!

nada= fread(fid,1,'float32');   
image_dimensions.vox_offset=nada; % in disk it is a float !!!!!!

nada= fread(fid,1,'float32');   
image_dimensions.funused1=nada;  % in disk it is a float !!!!!!

nada= fread(fid,1,'float32');   
image_dimensions.funused2=nada; % in disk it is a float !!!!!!

nada= fread(fid,1,'float32');   
image_dimensions.funused3=nada; % in disk it is a float !!!!!!

nada= fread(fid,1,'float32');   
image_dimensions.cal_max=nada; % in disk it is a float !!!!!!

nada= fread(fid,1,'float32');   
image_dimensions.cal_min=nada; % in disk it is a float !!!!!!

nada= fread(fid,1,'uint32');   
image_dimensions.compressed=nada;

nada= fread(fid,1,'uint32');   
image_dimensions.verified=nada;

nada= fread(fid,1,'uint32');   
image_dimensions.glmax=nada;

nada= fread(fid,1,'uint32');   
image_dimensions.glmin=nada;

%                          data_history

nada= fread(fid,[1,80],'uchar');   
data_history.descrip=char(nada);

nada= fread(fid,[1,24],'uchar');   
data_history.aux_file=char(nada);

nada= fread(fid,1,'uchar'); % segun SPM   
data_history.orient=nada;

nada= fread(fid,[1,5],'int16');  % segun SPM 
data_history.originator=nada;

nada= fread(fid,[1,10],'uchar');   
data_history.generated=char(nada);

nada= fread(fid,[1,10],'uchar');   
data_history.scannum=char(nada);

nada= fread(fid,[1,10],'uchar');   
data_history.patient_id=char(nada);

nada= fread(fid,[1,10],'uchar');   
data_history.exp_date=char(nada);

nada= fread(fid,[1,10],'uchar');   
data_history.exp_time=char(nada);

nada= fread(fid,[1,3],'uchar');   
data_history.hist_un0=char(nada);

nada= fread(fid,1,'uint32');   
data_history.views=nada;

nada= fread(fid,1,'uint32');   
data_history.vols_added=nada;

nada= fread(fid,1,'uint32');   
data_history.start_field=nada;

nada= fread(fid,1,'uint32');   
data_history.field_skip=nada;

nada= fread(fid,1,'uint32');   
data_history.omax=nada;

nada= fread(fid,1,'uint32');   
data_history.omin=nada;

nada= fread(fid,1,'uint32');   
data_history.smax=nada;

nada= fread(fid,1,'uint32');   
data_history.smin=nada;

fclose(fid);

ana.hk = header_key;
ana.dime = image_dimensions;
ana.hist = data_history;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -