Class DualScale<T>
Object
org.anchoranalysis.image.inference.segment.DualScale<T>
- Type Parameters:
T- element-type to store.
public class DualScale<T> extends Object
Stores two versions of the same object, representing two different scales.
This is a monad that provides a framework for applying a chain of operations on both scales.
- Author:
- Owen Feehan
-
Constructor Summary
-
Method Summary
Modifier and Type Method Description <R> Rapply(BiFunction<T,T,R> function)Apply aBiFunctionto both elements.TatInputScale()The element scaled to match the size of the input-image.TatModelScale()The element scaled to match the size of the input for model inference.<S, U> DualScale<S>combine(DualScale<U> other, BiFunction<T,U,S> combineFunction)Create a derivedDualScaleby combining the respective elements of this instance with another.<S> DualScale<S>map(Function<T,S> mappingFunction)Create a derivedDualScaleby applying an identical mapping to each element.
-
Constructor Details
-
Method Details
-
atInputScale
The element scaled to match the size of the input-image.- Returns:
- the element, at the requested scale.
-
atModelScale
The element scaled to match the size of the input for model inference.- Returns:
- the element, at the requested scale.
-
map
Create a derivedDualScaleby applying an identical mapping to each element.- Type Parameters:
S- the target element-type after the mapping.- Parameters:
mappingFunction- maps an instance of typeTto typeS.- Returns:
- a newly created
DualScalecontaining the mapped instances.
-
combine
Create a derivedDualScaleby combining the respective elements of this instance with another.- Type Parameters:
S- the target element-type after combining.U- the element-type ofother.- Parameters:
other- the otherDualScaleto combine with.combineFunction- combines the respective elements from the twoDualScales to form an element in the derived instance.- Returns:
- a newly created
DualScalecontaining the respectiuve outputs fromcombineFunction.
-
apply
Apply aBiFunctionto both elements.- Type Parameters:
R- the return type of theBiFunction.- Parameters:
function- the function to apply, to the input-scale and model-scale elements, respectively.- Returns:
- the result of applying the
functionto the respective elements.
-