Class SplitContourAtSaddlePoints

All Implemented Interfaces:
Provider<ObjectCollection>

public class SplitContourAtSaddlePoints extends ObjectCollectionProviderUnary
Splits a 2D contour represented by an object-mask into several contours, splitting at "turn" points.

Specifically, smoothing spline interpolation is performed along the contour and splits occur at saddle points.

Each contour is represented by an input object.

Author:
Owen Feehan
  • Constructor Details

    • SplitContourAtSaddlePoints

      public SplitContourAtSaddlePoints()
  • Method Details

    • createFromObjects

      public ObjectCollection createFromObjects(ObjectCollection objects) throws ProvisionFailedException
      Description copied from class: ObjectCollectionProviderUnary
      Creates a ObjectCollection given the entity provided by the delegate.
      Specified by:
      createFromObjects in class ObjectCollectionProviderUnary
      Parameters:
      objects - the entity provided by the delegate.
      Returns:
      the created ObjectCollection that is returned by the provider.
      Throws:
      ProvisionFailedException - if the provider cannot complete successfully.
    • getSmoothingFactor

      public double getSmoothingFactor()
    • setSmoothingFactor

      public void setSmoothingFactor(double smoothingFactor)
    • getNumberLoopPoints

      public int getNumberLoopPoints()
    • setNumberLoopPoints

      public void setNumberLoopPoints(int numberLoopPoints)
    • getMinNumberPoints

      public int getMinNumberPoints()
      If a contour has less than this number of points, we don't split it, and return it as-is
    • setMinNumberPoints

      public void setMinNumberPoints(int minNumberPoints)
      If a contour has less than this number of points, we don't split it, and return it as-is