Hi everyone:<div><br></div><div>I briefly summarize my questions.</div><div>What is the best way to subsample or rescale a volume? And do we need low-pass filter to smooth the original volume?</div><div>If so, how to set sigma of RecursiveGaussianImageFilter ? Thanks.</div>
<div><br></div><div>I have tried these approaches by ITK.</div><div><br></div><div>1) Examples/Filtering/ResampleImageFilter1.cxx.</div><div><br></div><div> only use ResampleImageFilter and not involve low-pass filter. </div>
<div><br></div><div>2) Examples/Filtering/SubsampleVolume.cxx.</div><div><br></div><div> Before use ResampleImageFilter, a recursive RecursiveGaussianImageFilter is used to smooth the original volume.</div><div> And the parameters of guassian filter are set by:</div>
<div><br></div><div><div> const double sigmaX = inputSpacing[0] * factorX;</div><div> const double sigmaY = inputSpacing[1] * factorY;</div><div> const double sigmaZ = inputSpacing[2] * factorZ;</div><div> smootherX->SetSigma( sigmaX );</div>
<div> smootherY->SetSigma( sigmaY );</div><div> smootherZ->SetSigma( sigmaZ );</div></div><div><br></div><div>Which one is the appropriated way to subsample or rescale a volume. </div><div>I tried one volume by these methods. The result one the first one is much clear than the second one which involved with low-pass filter.</div>
<div>The result of the second one is fuzzy in some degree.</div><div><br></div><div>I doubt the reason is the parameter simga
RecursiveGaussianImageFilter affect the result. </div><div>There is a solution provided from</div><div> <a href="http://gerardus.googlecode.com/svn-history/r211/trunk/cpp/src/Resize3DImage.cxx">http://gerardus.googlecode.com/svn-history/r211/trunk/cpp/src/Resize3DImage.cxx</a></div>
<div><br></div><div>In there method, the parameters are set to: </div><div> const double sigmaX = inputSpacing[0] * factorX * 0.61;</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>const double sigmaY = inputSpacing[1] * factorY * 0.61;</div>
<div><span class="Apple-tab-span" style="white-space:pre">        </span>const double sigmaZ = inputSpacing[2] * factorZ * 0.61;</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>smootherX->SetSigma( sigmaX );</div>
<div><span class="Apple-tab-span" style="white-space:pre">        </span>smootherY->SetSigma( sigmaY );</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>smootherZ->SetSigma( sigmaZ );</div><div><br></div>
<div>If we need smooth the volume and how to set the parameter of RecursiveGaussianImageFilter? Thanks.</div>