<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 Luis and All:</DIV>
<DIV>&nbsp;</DIV>
<DIV>I am woring on EM and MRF for image segmentation. I made the EM clustering working, and then using the segmenation result to perfrom MRF for refinment.</DIV>
<DIV>&nbsp;</DIV>
<DIV>I followed the styles in ITK example <U><FONT color=#800080>ScalarImageMarkovRandomField1.cxx&nbsp;</FONT></U><A name=29634>&nbsp;</A>.</DIV>
<DIV>&nbsp;</DIV>
<DIV>If I use the DistancCentroid as membershim function of the classifier, I can get the segmetation improved after MRF filter.</DIV>
<DIV>&nbsp;</DIV>
<DIV>Since I using EM GaussianMixture model to intial segmentation, I think using itkGaussianDensityFunction as membership function of classifier may give better result.</DIV>
<DIV>&nbsp;</DIV>
<DIV>When I changed the membership function, the result is totally wrong, then I checked the code for itkMRFImageFilter..cxx, I figure out why.</DIV>
<DIV>&nbsp;</DIV>
<DIV>//////////////////////////////////////////////////////////////////////////////////</DIV>
<DIV>&nbsp;</DIV>
<DIV>00625&nbsp;&nbsp; <SPAN class=keyword>const</SPAN> std::vector&lt;double&gt; &amp; pixelMembershipValue = <BR><A name=l00626></A>00626&nbsp;&nbsp;&nbsp;&nbsp; m_ClassifierPtr-&gt;GetPixelMembershipValue( *inputPixelVec );<BR></DIV>
<DIV>00648&nbsp;&nbsp; <SPAN class=comment>//Add the prior probability to the pixel probability</SPAN><BR><A name=l00649></A>00649&nbsp;&nbsp; <SPAN class=keywordflow>for</SPAN>( index = 0; index &lt; m_NumberOfClasses; index++ )<BR><A name=l00650></A>00650&nbsp;&nbsp;&nbsp;&nbsp; {<BR><A name=l00651></A>00651&nbsp;&nbsp;&nbsp;&nbsp; m_MahalanobisDistance[index] = m_NeighborInfluence[index] - <BR><A name=l00652></A>00652&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pixelMembershipValue[index] ;<BR><A name=l00653></A>00653&nbsp;&nbsp;&nbsp;&nbsp; }<BR></DIV>
<DIV>////////////////////////////////////////////////////////////////////////////////</DIV>
<DIV>&nbsp;</DIV>
<DIV>In line 651, when calculating the MahaanoistDistance,&nbsp; m_MahalanobisDistance[index] = m_NeighborInfluence[index] -&nbsp; pixelMembershipValue[index] ;</DIV>
<DIV>assuming my weight are all zeros, then class with maximum pdf will give the lowest Distance. As a result, the segmentation is fully wrong.</DIV>
<DIV>&nbsp;</DIV>
<DIV>My question is why the filter was designed in the way,&nbsp;is MRFImageFilter not designed to&nbsp;apply GassianDensityFuncion as membershipfunction.</DIV>
<DIV>&nbsp;</DIV>
<DIV>Can I still use GaussianDensityFunction in this case?&nbsp;Would if work if I &nbsp;change the sign of code 651 to +?</DIV>
<DIV>&nbsp;</DIV>
<DIV>Please give me some guide.</DIV>
<DIV>&nbsp;</DIV>
<DIV>Baoyun<BR></DIV></div><br>

      </body></html>