0001 function save_avw_hdr(img,fname,vtype,vsize)
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019 check=length(size(fname));
0020 if(check~=2)
0021 tmp=img;
0022 img=fname;
0023 fname=tmp;
0024 end
0025
0026
0027 fname2=strcat(fname,'.hdr');
0028 tmpstr1=sprintf('!touch %s', fname2);
0029 tmpstr2=sprintf('!rm %s', fname2);
0030
0031 eval(tmpstr1);
0032 eval(tmpstr2);
0033
0034
0035 imgmax=ceil(max(max(max(max(img)))));
0036 imgmin=floor(min(min(min(min(img)))));
0037
0038
0039 dims = [size(img) 1 1];
0040
0041 if(nargin==2)
0042 vtype='s';
0043 vsize=[1 1 1 3];
0044 elseif(nargin==3)
0045 tmp=size(vtype);
0046 if(tmp(2)==1)
0047 vsize=[1 1 1 3];
0048 else
0049 vsize=vtype;
0050 if size(vsize,2)==3
0051 vsize=[vsize 3];
0052 end;
0053 vtype='s';
0054 end
0055 else
0056 tmp=size(vtype);
0057 if(tmp(2)==3)
0058 tmp2=vtype;
0059 vtype=vsize;
0060 vsize=tmp2;
0061 end
0062 end
0063
0064 if (length(vsize)<3),
0065 vsize(3)=1;
0066 end
0067 if (length(vsize)<4),
0068 vsize(4)=3;
0069 end
0070
0071 dtype=0;
0072 if (vtype=='b'),
0073 dtype=2;
0074 end
0075 if (vtype=='s'),
0076 dtype=4;
0077 end
0078 if (vtype=='i'),
0079 dtype=8;
0080 end
0081 if (vtype=='f'),
0082 dtype=16;
0083 end
0084 if (vtype=='d'),
0085 dtype=64;
0086 end
0087
0088
0089
0090
0091 tmp=sprintf('! $FSLDIR/etc/matlab/saveTOanalyze %d %d %d %d %6.4f %6.4f %6.4f %6.4f 0 0 0 %d %s \n',dims(1),dims(2),dims(3),dims(4),vsize(1),vsize(2),vsize(3),vsize(4),dtype,fname);
0092 eval(tmp);
0093 disp(' ');
0094