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

📄 saveavw.html

📁 mri_toolbox是一个工具用来MRI. 来自于SourceForge, 我上传这个软件,希望能结识对医疗软件感兴趣的兄弟.
💻 HTML
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"                "http://www.w3.org/TR/REC-html40/loose.dtd"><html><head>  <title>Description of SaveAVW</title>  <meta name="keywords" content="SaveAVW">  <meta name="description" content="SaveAVW ( Filename, avw )">  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">  <meta name="generator" content="m2html &copy; 2003 Guillaume Flandin">  <meta name="robots" content="index, follow">  <link type="text/css" rel="stylesheet" href="../m2html.css"></head><body><a name="_top"></a><div><a href="../index.html">Home</a> &gt;  <a href="index.html">mri_toolbox</a> &gt; SaveAVW.m</div><!--<table width="100%"><tr><td align="left"><a href="../index.html"><img alt="<" border="0" src="../left.png">&nbsp;Master index</a></td><td align="right"><a href="index.html">Index for mri_toolbox&nbsp;<img alt=">" border="0" src="../right.png"></a></td></tr></table>--><h1>SaveAVW</h1><h2><a name="_name"></a>PURPOSE <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2><div class="box"><strong>SaveAVW ( Filename, avw )</strong></div><h2><a name="_synopsis"></a>SYNOPSIS <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2><div class="box"><strong>function SaveAVW ( Filename, avw ) </strong></div><h2><a name="_description"></a>DESCRIPTION <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2><div class="fragment"><pre class="comment"> SaveAVW ( Filename, avw )
 Save an AVW file from the given avw structure</pre></div><!-- crossreference --><h2><a name="_cross"></a>CROSS-REFERENCE INFORMATION <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2>This function calls:<ul style="list-style-image:url(../matlabicon.gif)"></ul>This function is called by:<ul style="list-style-image:url(../matlabicon.gif)"></ul><!-- crossreference --><h2><a name="_subfunctions"></a>SUBFUNCTIONS <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2><ul style="list-style-image:url(../matlabicon.gif)"><li><a href="#_sub1" class="code">function Header = FormatValues ( avw, Names, Quote )</a></li><li><a href="#_sub2" class="code">function n = GetNonHeaderNames ( avw, HeaderNames )</a></li></ul><h2><a name="_source"></a>SOURCE CODE <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2><div class="fragment"><pre>0001 <a name="_sub0" href="#_subfunctions" class="code">function SaveAVW ( Filename, avw )</a>0002 <span class="comment">% SaveAVW ( Filename, avw )</span>0003 <span class="comment">% Save an AVW file from the given avw structure</span>0004   0005   <span class="comment">% Order is picky!</span>0006   HeaderNames = { <span class="string">'DataType'</span>, <span class="string">'Width'</span>, <span class="string">'Height'</span>, <span class="string">'Depth'</span>, <span class="string">'NumVols'</span>, <span class="string">'Endian'</span>, <span class="string">'ColormapSize'</span> };0007   avw.MinimumDataValue = floor ( min ( avw.Image(:)) );0008   avw.MaximumDataValue = floor ( max ( avw.Image(:)) );0009   0010   NonHeaderNames = <a href="#_sub2" class="code" title="subfunction n = GetNonHeaderNames ( avw, HeaderNames )">GetNonHeaderNames</a> ( avw, HeaderNames );0011   0012   HeaderInfo = <a href="#_sub1" class="code" title="subfunction Header = FormatValues ( avw, Names, Quote )">FormatValues</a> ( avw, HeaderNames, 0 );0013   Info = <a href="#_sub1" class="code" title="subfunction Header = FormatValues ( avw, Names, Quote )">FormatValues</a> ( avw, NonHeaderNames, 1 );0014   0015   Header = HeaderInfo;0016   Header = [Header sprintf(<span class="string">'BeginInformation\n'</span>) Info sprintf(<span class="string">'EndInformation\n'</span>) sprintf(<span class="string">'MoreInformation=-1\n'</span>)];0017   Header = [Header sprintf(<span class="string">'Vol Slc  Offset    Length       Cmp Format\n'</span>)];0018   Header = [Header sprintf(<span class="string">'.CONTIG\n'</span>)];0019   Header = [Header sprintf(<span class="string">'EndSliceTable\n'</span>)];0020 0021   HeaderSize = 4096 * ceil ( (100+length(Header)) / 4096 );0022   0023   Header = [sprintf(<span class="string">'AVW_ImageFile   1.00     %d\n'</span>,HeaderSize) Header];0024   l = length ( Header );0025   b = strrep ( blanks ( HeaderSize - l ), <span class="string">' '</span>, <span class="string">'#'</span> );0026   Header = [Header b];0027   0028   Endian = <span class="string">'b'</span>;0029   <span class="keyword">if</span> strcmp ( avw.Endian, <span class="string">'Little'</span> )0030     Endian = <span class="string">'l'</span>;0031   <span class="keyword">end</span>0032   fid = fopen ( Filename, <span class="string">'w'</span>, Endian );0033   <span class="comment">% Watch out, if we don't use %s, escape sequences get mucked up</span>0034   fprintf ( fid, <span class="string">'%s'</span>, Header );0035   <span class="keyword">switch</span> upper(avw.DataType)0036    <span class="keyword">case</span> <span class="string">'AVW_UNSIGNED_SHORT'</span>0037     DataType = <span class="string">'uint16'</span>;0038    <span class="keyword">case</span> <span class="string">'AVW_SIGNED_SHORT'</span>0039     DataType = <span class="string">'int16'</span>;0040    <span class="keyword">case</span> <span class="string">'AVW_UNSIGNED_CHAR'</span>0041     DataType = <span class="string">'uchar'</span>;0042    <span class="keyword">case</span> <span class="string">'AVW_SIGNED_CHAR'</span>0043     DataType = <span class="string">'schar'</span>;0044    <span class="keyword">case</span> <span class="string">'AVW_FLOAT'</span>0045     DataType = <span class="string">'float'</span>;0046    <span class="keyword">otherwise</span>0047      error ( sprintf ( <span class="string">'Unknown datatype: %s'</span>, avw.DataType ) );0048   <span class="keyword">end</span>0049   0050   <span class="comment">% Need to undo the flip flop</span>0051   yy = size(avw.Image,1):-1:1;0052   <span class="keyword">for</span> vol = 1:avw.NumVols0053     <span class="keyword">for</span> dd = 1:size(avw.Image,3)0054       t = squeeze(avw.Image(:,:,dd,vol))';0055       t = t(:,yy);0056       fwrite ( fid, t(:), DataType );0057     <span class="keyword">end</span>0058   <span class="keyword">end</span>0059   fclose ( fid );0060   0061   0062 <a name="_sub1" href="#_subfunctions" class="code">function Header = FormatValues ( avw, Names, Quote )</a>0063   Header = <span class="string">''</span>;0064   <span class="keyword">for</span> hidx = 1:length(Names)0065     Name = Names{hidx};0066     Value = getfield ( avw, Name );0067     0068     <span class="keyword">if</span> ~isempty ( findstr ( Name, <span class="string">'DICOMTag_'</span> ) )0069       idx = strfind ( Name, <span class="string">'_'</span> );0070       idx = idx + 1;0071       Name = [Name(idx(1):idx(1)+3) <span class="string">'|'</span> Name(idx(2):idx(2)+3)];0072     <span class="keyword">end</span>0073     0074     <span class="keyword">if</span> isstr ( Value ) &amp; Quote0075       Value = sprintf ( <span class="string">'&quot;%s&quot;'</span>, Value );0076     <span class="keyword">end</span>0077     <span class="keyword">if</span> isnumeric ( Value )0078       Value = num2str ( Value );0079     <span class="keyword">end</span>0080     <span class="keyword">if</span> Quote0081       t = sprintf ( <span class="string">'  %s=%s\n'</span>, Name, Value );0082     <span class="keyword">else</span>0083       t = sprintf ( <span class="string">' %s=%s\n'</span>, Name, Value );0084     <span class="keyword">end</span>      0085     Header = [Header t];0086   <span class="keyword">end</span>0087   0088   0089 <a name="_sub2" href="#_subfunctions" class="code">function n = GetNonHeaderNames ( avw, HeaderNames )</a>0090   names = fieldnames ( avw );0091   n = {};0092   <span class="keyword">for</span> nn = 1:length(names)0093     <span class="keyword">if</span> strcmp ( names{nn}, <span class="string">'Image'</span> )0094       <span class="keyword">continue</span>0095     <span class="keyword">end</span>0096     0097     IsHeader = 0;0098     <span class="keyword">for</span> hidx = 1:length(HeaderNames)0099       <span class="keyword">if</span> strcmp ( names{nn}, HeaderNames{hidx} )0100     IsHeader = 1;0101       <span class="keyword">end</span>0102     <span class="keyword">end</span>0103     0104     <span class="keyword">if</span> ~IsHeader0105       n{length(n)+1} = names{nn};0106     <span class="keyword">end</span>0107   <span class="keyword">end</span>0108   0109       0110</pre></div><hr><address>Generated on Fri 21-May-2004 12:38:21 by <strong><a href="http://www.artefact.tk/software/matlab/m2html/">m2html</a></strong> &copy; 2003</address></body></html>

⌨️ 快捷键说明

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