Class AlgorithmSequentialScanningWatershed

  • All Implemented Interfaces:
    java.awt.event.ActionListener, java.awt.event.WindowListener, java.lang.Runnable, java.util.EventListener

    public class AlgorithmSequentialScanningWatershed
    extends AlgorithmBase
    Author:
    ilb Reference: 1.) The Watershed Transform: Definitions, Algorithms, and Parallelization Strategies by Jos B.T.M. Roerdink and Arnold Meijster, Fundamentals Informaticae 41 (2001), pp. 187-228. Algorithm 4.4 Watershed transform w.r.t. topographical distance by sequential scanning based on image integration 2.) Automated Sulcal Segmentation Using Watersheds on the Cortical Surface by Maryam E. Rettmann, Xiao Han, Chenyang Xu, and Jerry L. Prince, NeuroImage 15, 2002, Section Merging of Catchment Basins, p.338.
    • Field Detail

      • numNeighbor

        private int numNeighbor
      • limitBins

        private boolean limitBins
      • binNumber

        private int binNumber
      • stable

        private boolean stable
      • xDim

        private int xDim
      • yDim

        private int yDim
      • imgBuffer

        private int[] imgBuffer
      • labelBuffer

        private int[] labelBuffer
      • distBuffer

        private double[] distBuffer
      • sqrt2

        private final double sqrt2
      • merge

        private boolean merge
      • mergeThreshold

        private double mergeThreshold
    • Constructor Detail

      • AlgorithmSequentialScanningWatershed

        public AlgorithmSequentialScanningWatershed​(ModelImage destImage,
                                                    ModelImage srcImage,
                                                    int numNeighbor,
                                                    boolean limitBins,
                                                    int binNumber,
                                                    boolean merge,
                                                    double mergeThreshold)
    • Method Detail

      • runAlgorithm

        public void runAlgorithm()
        Description copied from class: AlgorithmBase
        Actually runs the algorithm. Implemented by inheriting algorithms.
        Specified by:
        runAlgorithm in class AlgorithmBase
      • propagate

        private void propagate​(int u,
                               boolean forward)
      • cost

        private double cost​(int p,
                            int q)
      • LS

        private double LS​(int p)