/** * The level-set evolution. * * @param fAdvectionWeight The advection coefficient 'a' in the PDE that controls the evolution. * @param fPropagationWeight The propagation coefficient 'b' in the PDE that controls the * evolution. * @param fCurvatureWeight The curvature coefficient 'c' in the PDE that controls the evolution. * @param fLaplacianWeight The Laplacian coefficient 'd' in the PDE that controls the evolution. * @param fTimeStep The time step for the PDE solver. */ public void beginEvolution( float fAdvectionWeight, float fPropagationWeight, float fCurvatureWeight, float fLaplacianWeight, float fTimeStep) { super.beginEvolution( fAdvectionWeight, fPropagationWeight, fCurvatureWeight, fLaplacianWeight, fTimeStep); m_kLevelSetEvolver = new LseThreshold3( m_iXBound, m_iYBound, m_iZBound, m_fXSpacing, m_fYSpacing, m_fZSpacing, m_afSignedDistance, m_abSignedDistanceMask, m_fBorderValue, LsePdeFilter.PRESERVE_ZERO, m_afFeature, m_fLower, m_fUpper, fPropagationWeight, fCurvatureWeight); m_kLevelSetEvolver.setTimeStep(fTimeStep); }
/** * The region-growing fast march. When you call beginCoarse(), the current parameters are used * (DIterations, scale, alpha, beta, min, max). You can apply the fast marching algorithm multiple * times to the same image, each time starting with beginCoarse(); * * @param aiSeeds The initial region to grow. */ public void beginCoarse(int[] aiSeeds) { super.beginCoarse(aiSeeds); createFeatureImage(); m_kFastMarcher = new LseFastMarch3(m_iXBound, m_iYBound, m_iZBound, m_afFeature, aiSeeds); }