Class FeatureCostAssigner

Object
AnchorBean<AnnotationComparisonAssigner<OverlappingObjects>>
AnnotationComparisonAssigner<OverlappingObjects>
FeatureCostAssigner

public class FeatureCostAssigner extends AnnotationComparisonAssigner<OverlappingObjects>
Assigns an objects from one set of objects to another based upon a cost (degree of overlap).

This is a form of bipartite matching.

The following outputs are produced:

Output NameDefault?Description
"costMatrix"noa CSV file showing a matrix of costs calculated for the objects.
Author:
Owen Feehan
  • Constructor Details

    • FeatureCostAssigner

      public FeatureCostAssigner()
  • Method Details

    • createAssignment

      public OverlappingObjects createAssignment(ObjectsToCompare objectsToCompare, Dimensions dimensions, boolean useMIP, InputOutputContext context) throws CreateException
      Description copied from class: AnnotationComparisonAssigner
      Creates an assignment based on the objects to compare.
      Specified by:
      createAssignment in class AnnotationComparisonAssigner<OverlappingObjects>
      Parameters:
      objectsToCompare - the objects to compare.
      dimensions - the dimensions of the image.
      useMIP - whether to use Maximum Intensity Projection.
      context - the input-output context.
      Returns:
      the created assignment.
      Throws:
      CreateException - if the assignment cannot be created.
    • groupForKey

      public ImageCounterWithStatistics<OverlappingObjects> groupForKey(String key)
      Description copied from class: AnnotationComparisonAssigner
      Gets the ImageCounterWithStatistics for a specific key.
      Specified by:
      groupForKey in class AnnotationComparisonAssigner<OverlappingObjects>
      Parameters:
      key - the key to get the group for.
      Returns:
      the ImageCounterWithStatistics for the given key.
    • moreThanOneObject

      public boolean moreThanOneObject()
      Description copied from class: AnnotationComparisonAssigner
      Checks if more than one object can exist in the assignment.
      Specified by:
      moreThanOneObject in class AnnotationComparisonAssigner<OverlappingObjects>
      Returns:
      true if more than one object can exist, false otherwise.
    • addDefaultOutputs

      public void addDefaultOutputs(OutputEnabledMutable outputs)
      Description copied from class: AnnotationComparisonAssigner
      Adds any default outputs that should occur from the assigner.
      Specified by:
      addDefaultOutputs in class AnnotationComparisonAssigner<OverlappingObjects>
      Parameters:
      outputs - the OutputEnabledMutable to add the default outputs to.
    • getFeatureEvaluator

      public FeatureEvaluator<FeatureInputPairObjects> getFeatureEvaluator()
    • setFeatureEvaluator

      public void setFeatureEvaluator(FeatureEvaluator<FeatureInputPairObjects> featureEvaluator)
    • getMaxCost

      public double getMaxCost()
    • setMaxCost

      public void setMaxCost(double maxCost)
    • getNumberDecimalPlaces

      public int getNumberDecimalPlaces()
    • setNumberDecimalPlaces

      public void setNumberDecimalPlaces(int numberDecimalPlaces)
    • isRemoveTouchingBorderXY

      public boolean isRemoveTouchingBorderXY()
    • setRemoveTouchingBorderXY

      public void setRemoveTouchingBorderXY(boolean removeTouchingBorderXY)