Class FeatureListProviderAggregatePair

Object
org.anchoranalysis.bean.AnchorBean<B>
org.anchoranalysis.bean.initializable.InitializableBean<T,​org.anchoranalysis.feature.initialization.FeatureRelatedInitialization>
org.anchoranalysis.feature.bean.FeatureRelatedBean<B>
org.anchoranalysis.feature.bean.provider.FeatureProviderBean<org.anchoranalysis.feature.bean.list.FeatureListProvider<T>,​org.anchoranalysis.feature.bean.list.FeatureList<T>>
org.anchoranalysis.feature.bean.list.FeatureListProvider<org.anchoranalysis.image.feature.input.FeatureInputPairObjects>
org.anchoranalysis.plugin.image.feature.bean.list.pair.FeatureListProviderAggregatePair
All Implemented Interfaces:
org.anchoranalysis.bean.Provider<org.anchoranalysis.feature.bean.list.FeatureList<org.anchoranalysis.image.feature.input.FeatureInputPairObjects>>
Direct Known Subclasses:
ReduceFirstAndSecond, ReduceRatioFirstAndSecond, SubtractReducedFromMerged

public abstract class FeatureListProviderAggregatePair
extends org.anchoranalysis.feature.bean.list.FeatureListProvider<org.anchoranalysis.image.feature.input.FeatureInputPairObjects>
Calculates features on each part of a pair (first, second, merged etc.) and then reduces the calculation to a single number.

Specifically, each feature is calculated for the first, second, merged parts of the pair, then "reduced" into a single feature-value.

Author:
Owen Feehan
  • Constructor Summary

    Constructors 
    Constructor Description
    FeatureListProviderAggregatePair()  
  • Method Summary

    Modifier and Type Method Description
    protected abstract org.anchoranalysis.feature.bean.Feature<org.anchoranalysis.image.feature.input.FeatureInputPairObjects> createAggregateFeature​(org.anchoranalysis.feature.bean.Feature<org.anchoranalysis.image.feature.input.FeatureInputPairObjects> first, org.anchoranalysis.feature.bean.Feature<org.anchoranalysis.image.feature.input.FeatureInputPairObjects> second, org.anchoranalysis.feature.bean.Feature<org.anchoranalysis.image.feature.input.FeatureInputPairObjects> merged)
    Creates an aggregate feature from individual features for first, second, and merged objects.
    protected org.anchoranalysis.feature.bean.operator.FeatureFromList<org.anchoranalysis.image.feature.input.FeatureInputPairObjects> createReducedFeature​(org.anchoranalysis.feature.bean.Feature<org.anchoranalysis.image.feature.input.FeatureInputPairObjects> first, org.anchoranalysis.feature.bean.Feature<org.anchoranalysis.image.feature.input.FeatureInputPairObjects> second)
    Creates a reduced feature from features for the first and second objects.
    org.anchoranalysis.feature.bean.list.FeatureList<org.anchoranalysis.image.feature.input.FeatureInputPairObjects> get()  
    org.anchoranalysis.feature.bean.list.FeatureListProvider<org.anchoranalysis.image.feature.input.FeatureInputSingleObject> getItem()
    For each feature in the list, a corresponding aggregate feature is created in the output list.
    String getPrefix()
    The string to prepend.
    org.anchoranalysis.feature.bean.operator.FeatureFromList<org.anchoranalysis.image.feature.input.FeatureInputPairObjects> getReduce()
    Method for reducing all pairs into a single value e.g.
    void setItem​(org.anchoranalysis.feature.bean.list.FeatureListProvider<org.anchoranalysis.image.feature.input.FeatureInputSingleObject> item)
    For each feature in the list, a corresponding aggregate feature is created in the output list.
    void setPrefix​(String prefix)
    The string to prepend.
    void setReduce​(org.anchoranalysis.feature.bean.operator.FeatureFromList<org.anchoranalysis.image.feature.input.FeatureInputPairObjects> reduce)
    Method for reducing all pairs into a single value e.g.

    Methods inherited from class org.anchoranalysis.bean.initializable.InitializableBean

    getInitialization, getLogger, getPropertyInitializer, initialize, initializeRecursive, initRecursiveWithInitializer, isInitialized, onInitialization

    Methods inherited from class org.anchoranalysis.bean.AnchorBean

    checkMisconfigured, describeBean, describeChildren, duplicateBean, fields, findFieldsOfClass, getBeanName, getLocalPath, localise, toString

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

  • Method Details

    • get

      public org.anchoranalysis.feature.bean.list.FeatureList<org.anchoranalysis.image.feature.input.FeatureInputPairObjects> get() throws org.anchoranalysis.bean.xml.exception.ProvisionFailedException
      Throws:
      org.anchoranalysis.bean.xml.exception.ProvisionFailedException
    • createAggregateFeature

      protected abstract org.anchoranalysis.feature.bean.Feature<org.anchoranalysis.image.feature.input.FeatureInputPairObjects> createAggregateFeature​(org.anchoranalysis.feature.bean.Feature<org.anchoranalysis.image.feature.input.FeatureInputPairObjects> first, org.anchoranalysis.feature.bean.Feature<org.anchoranalysis.image.feature.input.FeatureInputPairObjects> second, org.anchoranalysis.feature.bean.Feature<org.anchoranalysis.image.feature.input.FeatureInputPairObjects> merged)
      Creates an aggregate feature from individual features for first, second, and merged objects.
      Parameters:
      first - feature for the first object
      second - feature for the second object
      merged - feature for the merged object
      Returns:
      an aggregate feature combining the three input features
    • createReducedFeature

      protected org.anchoranalysis.feature.bean.operator.FeatureFromList<org.anchoranalysis.image.feature.input.FeatureInputPairObjects> createReducedFeature​(org.anchoranalysis.feature.bean.Feature<org.anchoranalysis.image.feature.input.FeatureInputPairObjects> first, org.anchoranalysis.feature.bean.Feature<org.anchoranalysis.image.feature.input.FeatureInputPairObjects> second)
      Creates a reduced feature from features for the first and second objects.
      Parameters:
      first - feature for the first object
      second - feature for the second object
      Returns:
      a FeatureFromList that reduces the two input features
    • getItem

      public org.anchoranalysis.feature.bean.list.FeatureListProvider<org.anchoranalysis.image.feature.input.FeatureInputSingleObject> getItem()
      For each feature in the list, a corresponding aggregate feature is created in the output list.
    • setItem

      public void setItem​(org.anchoranalysis.feature.bean.list.FeatureListProvider<org.anchoranalysis.image.feature.input.FeatureInputSingleObject> item)
      For each feature in the list, a corresponding aggregate feature is created in the output list.
    • getPrefix

      public String getPrefix()
      The string to prepend.
    • setPrefix

      public void setPrefix​(String prefix)
      The string to prepend.
    • getReduce

      public org.anchoranalysis.feature.bean.operator.FeatureFromList<org.anchoranalysis.image.feature.input.FeatureInputPairObjects> getReduce()
      Method for reducing all pairs into a single value e.g. Mean, Max, Min etc.
    • setReduce

      public void setReduce​(org.anchoranalysis.feature.bean.operator.FeatureFromList<org.anchoranalysis.image.feature.input.FeatureInputPairObjects> reduce)
      Method for reducing all pairs into a single value e.g. Mean, Max, Min etc.