<html><head><style type="text/css"><!-- DIV {margin:0px;} --></style></head><body><div style="font-family:times new roman, new york, times, serif;font-size:12pt"><DIV>Dear All:</DIV>
<DIV>&nbsp;</DIV>
<DIV>I just figure out the problem. I need to use itk::GaussianMixtureModelComponent-&gt;Evaluate to make decision. The result is ok.</DIV>
<DIV>&nbsp;</DIV>
<DIV>but i am still not clear what happened if I used itk::GaussianDensityFunction-&gt;Evaluate() to get decision. Maybe I did not use it properly. Still interested to know what happened.</DIV>
<DIV>&nbsp;</DIV>
<DIV>Can somebody tell me whether my code is wrong or I did not used itk::GaussianDensityFunction-&gt;Evaluate() properly?</DIV>
<DIV>&nbsp;</DIV>
<DIV>Thanks</DIV>
<DIV>&nbsp;</DIV>
<DIV>Baoyun<BR></DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif"><BR>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif"><FONT face=Tahoma size=2>
<HR SIZE=1>
<B><SPAN style="FONT-WEIGHT: bold">From:</SPAN></B> Baoyun Li &lt;baoyun_li123@yahoo.com&gt;<BR><B><SPAN style="FONT-WEIGHT: bold">To:</SPAN></B> Luis Ibanez &lt;luis.ibanez@kitware.com&gt;<BR><B><SPAN style="FONT-WEIGHT: bold">Cc:</SPAN></B> insight-users@itk.org<BR><B><SPAN style="FONT-WEIGHT: bold">Sent:</SPAN></B> Tuesday, March 17, 2009 12:24:04 PM<BR><B><SPAN style="FONT-WEIGHT: bold">Subject:</SPAN></B> cannot get proper classification using itk:GaussianDensityFunction after EM clustering<BR></FONT><BR>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif">
<DIV>Dear ALL:</DIV>
<DIV>&nbsp;</DIV>
<DIV>I am using EM gassian mixutrue estimator to estimate the mean and covariance of&nbsp;vector image. I first adapt the image to sample, and the EM works well.</DIV>
<DIV>It produced mean value for Gray matter , whithe matter and CSF, the mean value looks ok to me.</DIV>
<DIV>&nbsp;</DIV>
<DIV>But when I try to assign the label to the image, I cannot get the proper labled image. I got the estimated all the voxle to the one class. And the pdf of GassianDensityFunction always have the biggest value for CSF, that should not happend.</DIV>
<DIV>&nbsp;</DIV>
<DIV>Below is part of my code.</DIV>
<DIV>&nbsp;</DIV>
<DIV>1, I first get the pararameter of each component by : finalparameters=(components[i])-&gt;GetFullParameters();<BR>2, Then I decompose the parameters to estimatedmean and estimatedcovariance</DIV>
<DIV>3,&nbsp; set the mean for GaussianDensityFunction by :&nbsp; membershipFunctions[i]-&gt;SetMean(&amp;estimatedmean );<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; membershipFunctions[i]-&gt;SetCovariance( &amp;estimatedcovariance);</DIV>
<DIV>&nbsp;</DIV>
<DIV>4, In the lableing program, I used&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; eveluateresult[i]=(membershipFunctions[i]-&gt;Evaluate(mv)) to get pdf for each class, mv is the measurement vector obtained of images by itk iterator</DIV>
<DIV>5, then I find the class with biggest pdf, assign the label&nbsp;.</DIV>
<DIV>&nbsp;</DIV>
<DIV>The code is listed below, can some body help me to find what is wrong.</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>Thanks</DIV>
<DIV>&nbsp;</DIV>
<DIV>Baoyun</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>///////give the mean value and covariance to GaussianDensityFunction&nbsp;&nbsp; </DIV>
<DIV>&nbsp;&nbsp; typedef itk::Statistics::GaussianDensityFunction&lt;ComponentType::MeasurementVectorType &gt; MembershipFunctionType;<BR>&nbsp;&nbsp; std::vector&lt; MembershipFunctionType::Pointer &gt; membershipFunctions(numberOfClasses);<BR>&nbsp;&nbsp; unsigned int paramIndex;<BR>&nbsp;&nbsp; ParametersType finalparameters((NumberOfComponents+1)*NumberOfComponents);</DIV>
<DIV>&nbsp;&nbsp; typedef MembershipFunctionType::MeanType MeanType;<BR>&nbsp;&nbsp; typedef MembershipFunctionType::CovarianceType CovarianceType;<BR>&nbsp;&nbsp; MeanType estimatedmean(NumberOfComponents);<BR>&nbsp;&nbsp; CovarianceType estimatedcovariance;</DIV>
<DIV>&nbsp;&nbsp; typedef ComponentType::MeasurementVectorSizeType MeasurementVectorSizeType;<BR>&nbsp;&nbsp; MeasurementVectorSizeType measurementVectorSize=NumberOfComponents;<BR>&nbsp;&nbsp; estimatedcovariance.SetSize( measurementVectorSize, measurementVectorSize );<BR>&nbsp;&nbsp; //estimatedmean.SetSize( measurementVectorSize, 1);<BR>&nbsp; // estimatedmean.Fill(0.0) ;<BR>&nbsp;&nbsp;&nbsp; for ( unsigned int i = 0 ; i &lt; numberOfClasses ; i++ )<BR>&nbsp;&nbsp;&nbsp;&nbsp; {</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // membershipFunctions.push_back(MembershipFunctionType::New());<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; membershipFunctions[i]=MembershipFunctionType::New();<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; std::cout &lt;&lt; "&nbsp;&nbsp;&nbsp; Size of Gaussian : ";<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; std::cout &lt;&lt; "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; " &lt;&lt; (membershipFunctions[i])-&gt;GetMeasurementVectorSize() &lt;&lt; std::endl;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; finalparameters=(components[i])-&gt;GetFullParameters();<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; paramIndex=0;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for (unsigned int i1 = 0 ; i1 &lt; measurementVectorSize ;
 i1++)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; estimatedmean[i1] = finalparameters[paramIndex] ;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ++paramIndex ;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for (unsigned int i1 = 0 ; i1 &lt; measurementVectorSize ; i1++ )<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for (unsigned int j1 = 0 ; j1 &lt; measurementVectorSize; j1++ )<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; estimatedcovariance.GetVnlMatrix().put(i1, j1, finalparameters[paramIndex]) ;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ++paramIndex ;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp; // finalProportions[i]=(*estimator-&gt;GetProportions())[i];<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; std::cout &lt;&lt; "********************************" &lt;&lt; std::endl;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; std::cout &lt;&lt; "class[" &lt;&lt; i &lt;&lt; "]" &lt;&lt; std::endl;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; std::cout &lt;&lt; "&nbsp;&nbsp; Estimated Mean:" &lt;&lt; std::endl;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; std::cout &lt;&lt; "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "
 &lt;&lt; estimatedmean <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;&lt; std::endl;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; std::cout &lt;&lt; "&nbsp;&nbsp; Estimated Covariance ";<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; std::cout &lt;&lt; "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; " &lt;&lt; estimatedcovariance &lt;&lt; std::endl;<BR>&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; membershipFunctions[i]-&gt;SetMean(&amp;estimatedmean );<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; membershipFunctions[i]-&gt;SetCovariance( &amp;estimatedcovariance);</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; std::cout &lt;&lt; "***************************" &lt;&lt; std::endl;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; std::cout &lt;&lt; "class[" &lt;&lt; i &lt;&lt; "]" &lt;&lt; std::endl;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; std::cout &lt;&lt; "&nbsp;&nbsp; Gaussain Mean:" &lt;&lt; std::endl;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; std::cout &lt;&lt; "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; " &lt;&lt;*(membershipFunctions[i]-&gt;GetMean()+0)&lt;&lt; std::endl;<BR>&nbsp;&nbsp;&nbsp;&nbsp; // std::cout &lt;&lt; "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; " &lt;&lt;*(membershipFunctions[i]-&gt;GetMean()+1)&lt;&lt; std::endl;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; std::cout &lt;&lt; "&nbsp;&nbsp; Gaussian Covariance ";<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; std::cout &lt;&lt; "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; " &lt;&lt; *(membershipFunctions[i]-&gt;GetCovariance()+0) &lt;&lt;
 std::endl;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // std::cout &lt;&lt; "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; " &lt;&lt; *(membershipFunctions[i]-&gt;GetCovariance()+1) &lt;&lt; std::endl;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // std::cout &lt;&lt; "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; " &lt;&lt; *(membershipFunctions[i]-&gt;GetCovariance()+3) &lt;&lt; std::endl;</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</DIV>
<DIV>&nbsp;/////to&nbsp;lable&nbsp;the image&nbsp;&nbsp; </DIV>
<DIV>&nbsp;&nbsp;&nbsp; typedef unsigned char OutputPixelType;<BR>&nbsp;&nbsp;&nbsp; typedef itk::Image&lt; OutputPixelType, 3 &gt; OutputImageType;<BR>&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp; OutputImageType::Pointer outputPtr=reader1-&gt;GetOutput();<BR>&nbsp;&nbsp;&nbsp; typedef itk::ImageRegionIterator&lt; OutputImageType &gt;&nbsp; ImageIterator;</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp; typedef VectorImageType::RegionType RegionType;<BR>&nbsp;&nbsp;&nbsp;&nbsp; RegionType region = outputPtr-&gt;GetBufferedRegion();<BR>// <BR>//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp; ImageIterator pixel( outputPtr, region );</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp; typedef itk::Vector&lt; double, numberOfClasses &gt; EvaluationVectorType;<BR>&nbsp;&nbsp;&nbsp;&nbsp; EvaluationVectorType eveluateresult;<BR>&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp; </DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp; //pixel.GoToBegin();</DIV>
<DIV>//&nbsp;&nbsp; itk::Array&lt; double &gt; finalProportions(numberOfClasses);<BR>&nbsp;&nbsp;&nbsp; for(unsigned char i=0;i&lt;numberOfClasses;i++)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; finalProportions[i]=(*estimator-&gt;GetProportions())[i];<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp; <BR>&nbsp;&nbsp;&nbsp; double maxvalue;<BR>&nbsp;&nbsp;&nbsp; OutputPixelType classlabel;<BR>&nbsp;&nbsp;&nbsp; for ( pixel.GoToBegin(),constIterator.GoToBegin(); !pixel.IsAtEnd(); ++pixel,++constIterator )<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mv=constIterator.Get();<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; accumulate1=0;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 maxvalue=0;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for( unsigned int i=0;i&lt;NumberOfComponents;i++)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; accumulate1=accumulate1+mv[i];<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(accumulate1&gt;20)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for(unsigned char i=0;i&lt;numberOfClasses;i++)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; eveluateresult[i]=(membershipFunctions[i]-&gt;Evaluate(mv))*finalProportions[i];<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for(unsigned char i=0;i&lt;numberOfClasses;i++)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(eveluateresult[i]&gt;=maxvalue)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; maxvalue=eveluateresult[i];<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; classlabel=i+1;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(mv[0]==94&amp;&amp;mv[1]==77)<BR>//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<BR>//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; std::cout &lt;&lt; "evaluation result" &lt;&lt; eveluateresult &lt;&lt; "]" &lt;&lt; std::endl;<BR>//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pixel.Set(classlabel);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pixel.Set(0);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp; }<BR></DIV></DIV><BR></DIV></DIV></div><br>

      </body></html>