Class MergeToIncreaseObjectFeature
Object
AnchorBean<ObjectCollectionProvider>
InitializableBean<ObjectCollectionProvider, ImageInitialization>
ImageBean<ObjectCollectionProvider>
ObjectCollectionProvider
ObjectCollectionProviderUnary
WithContainerBase
MergeBase
MergeWithOptionalDistanceConstraint
MergeWithFeature
MergeToIncreaseObjectFeature
- All Implemented Interfaces:
Provider<ObjectCollection>
Merges neighboring objects if it results in an increase in the average feature-value calculated
on each single object.
A merge occurs if feature(merged) >= avg( feature(object1), feature(object2).
These merges occur in order of the maximum increase offered, and the algorithm recursively merge until all possible merges are complete.
The feature-value is calculated for each object that is a vertex of the graph (including all prospective merges of neighbors).
- Author:
- Owen Feehan
-
Nested Class Summary
Nested classes/interfaces inherited from class org.anchoranalysis.plugin.image.bean.object.provider.merge.MergeBase
MergeBase.MergeObjects -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected PayloadCalculatorDetermines the payload for any given or potential vertex.protected AssignPriorityDetermines the priority (and selection criteria) used to allow merges between neighbors.FeatureEvaluator<FeatureInputSingleObject> protected booleanChecks if the payload is considered in making decisions.voidsetFeatureEvaluator(FeatureEvaluator<FeatureInputSingleObject> featureEvaluator) Methods inherited from class org.anchoranalysis.plugin.image.bean.object.provider.merge.MergeWithFeature
createFromObjects, isRequireBBoxNeighbors, isRequireTouching, setRequireBBoxNeighbors, setRequireTouchingMethods inherited from class org.anchoranalysis.plugin.image.bean.object.provider.merge.MergeWithOptionalDistanceConstraint
getMaxDistance, isSuppressZ, maybeDistanceCondition, setMaxDistance, setSuppressZMethods inherited from class org.anchoranalysis.plugin.image.bean.object.provider.merge.MergeBase
getDimensions, mergeMultiplex, resolutionRequired, setDimensions, unitConvertOptionalMethods inherited from class org.anchoranalysis.plugin.image.bean.object.provider.WithContainerBase
containerOptional, containerRequired, getObjectsContainer, setObjectsContainerMethods inherited from class org.anchoranalysis.image.bean.provider.ObjectCollectionProviderUnary
get, getObjects, setObjectsMethods inherited from class org.anchoranalysis.bean.initializable.InitializableBean
getInitialization, getLogger, getPropertyInitializer, initialize, initializeRecursive, initRecursiveWithInitializer, isInitialized, onInitializationMethods inherited from class org.anchoranalysis.bean.AnchorBean
checkMisconfigured, describeBean, describeChildren, duplicateBean, fields, findFieldsOfClass, getBeanName, getLocalPath, localise, toString
-
Constructor Details
-
MergeToIncreaseObjectFeature
public MergeToIncreaseObjectFeature()
-
-
Method Details
-
createPayloadCalculator
Description copied from class:MergeWithFeatureDetermines the payload for any given or potential vertex.- Specified by:
createPayloadCalculatorin classMergeWithFeature- Returns:
- a
PayloadCalculatorfor determining vertex payloads - Throws:
OperationFailedException- if the payload calculator cannot be created
-
createPrioritizer
Description copied from class:MergeWithFeatureDetermines the priority (and selection criteria) used to allow merges between neighbors.- Specified by:
createPrioritizerin classMergeWithFeature- Returns:
- an
AssignPriorityfor determining merge priorities - Throws:
OperationFailedException- if the prioritizer cannot be created
-
isPlayloadUsed
protected boolean isPlayloadUsed()Description copied from class:MergeWithFeatureChecks if the payload is considered in making decisions.- Specified by:
isPlayloadUsedin classMergeWithFeature- Returns:
- true if the payload is used, false if the payload of nodes is irrelevant
-
getFeatureEvaluator
public FeatureEvaluator<FeatureInputSingleObject> getFeatureEvaluator() -
setFeatureEvaluator
public void setFeatureEvaluator(FeatureEvaluator<FeatureInputSingleObject> featureEvaluator)
-