Module org.scijava.ops.image
Package org.scijava.ops.image.deconvolve
Class PadAndRichardsonLucy<I extends RealType<I> & NativeType<I>,O extends RealType<O> & NativeType<O>,K extends RealType<K> & NativeType<K>,C extends ComplexType<C> & NativeType<C>>
- java.lang.Object
-
- org.scijava.ops.image.deconvolve.PadAndRichardsonLucy<I,O,K,C>
-
- Type Parameters:
I-O-K-C-
- All Implemented Interfaces:
Functions.Arity9<RandomAccessibleInterval<I>,RandomAccessibleInterval<K>,O,C,Integer,Boolean,Boolean,long[],OutOfBoundsFactory<I,RandomAccessibleInterval<I>>,RandomAccessibleInterval<O>>
public class PadAndRichardsonLucy<I extends RealType<I> & NativeType<I>,O extends RealType<O> & NativeType<O>,K extends RealType<K> & NativeType<K>,C extends ComplexType<C> & NativeType<C>> extends Object implements Functions.Arity9<RandomAccessibleInterval<I>,RandomAccessibleInterval<K>,O,C,Integer,Boolean,Boolean,long[],OutOfBoundsFactory<I,RandomAccessibleInterval<I>>,RandomAccessibleInterval<O>>
Richardson Lucy function op that operates on (@link RandomAccessibleInterval) (Lucy, L. B. (1974). "An iterative technique for the rectification of observed distributions".)- Author:
- Brian Northan
- Implementation Note:
- op names='deconvolve.richardsonLucy', priority='100.'
-
-
Constructor Summary
Constructors Constructor Description PadAndRichardsonLucy()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description RandomAccessibleInterval<O>apply(RandomAccessibleInterval<I> input, RandomAccessibleInterval<K> kernel, O outType, C complexType, Integer maxIterations, Boolean nonCirculant, Boolean accelerate, long[] borderSize, OutOfBoundsFactory<I,RandomAccessibleInterval<I>> obfInput)TODOprotected Computers.Arity1<RandomAccessibleInterval<O>,RandomAccessibleInterval<O>>getComputeEstimateOp()set up and return the compute estimate op.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.scijava.function.Functions.Arity9
andThen
-
-
-
-
Method Detail
-
apply
public RandomAccessibleInterval<O> apply(RandomAccessibleInterval<I> input, RandomAccessibleInterval<K> kernel, O outType, C complexType, Integer maxIterations, Boolean nonCirculant, Boolean accelerate, long[] borderSize, OutOfBoundsFactory<I,RandomAccessibleInterval<I>> obfInput)
TODO- Specified by:
applyin interfaceFunctions.Arity9<RandomAccessibleInterval<I extends RealType<I> & NativeType<I>>,RandomAccessibleInterval<K extends RealType<K> & NativeType<K>>,O extends RealType<O> & NativeType<O>,C extends ComplexType<C> & NativeType<C>,Integer,Boolean,Boolean,long[],OutOfBoundsFactory<I extends RealType<I> & NativeType<I>,RandomAccessibleInterval<I extends RealType<I> & NativeType<I>>>,RandomAccessibleInterval<O extends RealType<O> & NativeType<O>>>- Parameters:
input-kernel-outType-complexType-maxIterations- max number of iterationsnonCirculant- indicates whether to use non-circulant edge handlingaccelerate- indicates whether or not to use accelerationborderSize-obfInput-- Returns:
- the output
-
getComputeEstimateOp
protected Computers.Arity1<RandomAccessibleInterval<O>,RandomAccessibleInterval<O>> getComputeEstimateOp()
set up and return the compute estimate op. This function can be over-ridden to implement different types of richardson lucy (like total variation richardson lucy)- Returns:
- compute estimate op
-
-