T - - Defines the Type in which the actual computation is
performedpublic abstract class AbstractGauss<T extends net.imglib2.type.numeric.NumericType<T>> extends Object
| Constructor and Description |
|---|
AbstractGauss(double[] sigma,
net.imglib2.RandomAccessible<T> input,
net.imglib2.Interval inputInterval,
net.imglib2.RandomAccessible<T> output,
net.imglib2.Localizable outputOffset,
net.imglib2.img.ImgFactory<T> factory,
T type) |
| Modifier and Type | Method and Description |
|---|---|
void |
call() |
protected void |
computeKernel()
Compute the Gaussian Kernel for all dimensions
|
protected SamplingLineIterator<T> |
createInputLineSampler(int dim,
net.imglib2.Interval range)
An
Iterator that samples a one dimensional line of input data for
the current dimension. |
protected WritableLineIterator<T> |
createOutputLineWriter(int dim,
net.imglib2.Interval range,
SamplingLineIterator<T> inputLineSampler)
An
Iterator that samples a one dimensional line of output data
for the current dimension. |
net.imglib2.img.ImgFactory<T> |
getFactory() |
net.imglib2.RandomAccessible<T> |
getInput() |
net.imglib2.Interval |
getInputInterval() |
double[][] |
getKernel() |
int |
getNumThreads() |
net.imglib2.RandomAccessible<T> |
getOutput() |
net.imglib2.Localizable |
getOutputOffset() |
protected abstract net.imglib2.img.Img<T> |
getProcessingLine(long size) |
protected T |
getProcessingType() |
protected net.imglib2.Interval |
getRange(int dim)
The area for the output/temp that needs to be convolved, always relative
to the input of the next convolution operation.
|
net.imglib2.RandomAccessible<T> |
getResult() |
double[] |
getSigma() |
protected net.imglib2.Interval |
getTemporaryImgSize() |
net.imglib2.img.Img<T> |
getTmp1() |
net.imglib2.img.Img<T> |
getTmp2() |
int |
numDimensions() |
protected void |
processLine(SamplingLineIterator<T> input,
double[] kernel)
Compute the current line.
|
void |
setNumThreads(int numThreads) |
T |
type() |
protected void |
updateInputLineSampler(SamplingLineIterator<T> a,
net.imglib2.Interval range,
long[] offset,
net.imglib2.Localizable originalLocation)
Updates the current
SamplingLineIterator to the location of the
new line that is processed and clears the processing line (set all values
to zero) |
protected void |
updateOutputLineWriter(WritableLineIterator<T> a,
net.imglib2.Interval range,
long[] offset,
net.imglib2.Localizable originalLocation)
Updates the current
WritableLineIterator to the location of the
new line that is processed. |
protected void |
writeLine(WritableLineIterator<T> a,
SamplingLineIterator<T> inputLineSampler)
Writes the computed line back into the output/temp image.
|
public AbstractGauss(double[] sigma,
net.imglib2.RandomAccessible<T> input,
net.imglib2.Interval inputInterval,
net.imglib2.RandomAccessible<T> output,
net.imglib2.Localizable outputOffset,
net.imglib2.img.ImgFactory<T> factory,
T type)
public double[] getSigma()
public double[][] getKernel()
public int numDimensions()
public net.imglib2.RandomAccessible<T> getInput()
public net.imglib2.RandomAccessible<T> getOutput()
public net.imglib2.img.ImgFactory<T> getFactory()
public net.imglib2.Interval getInputInterval()
public net.imglib2.Localizable getOutputOffset()
public T type()
public net.imglib2.img.Img<T> getTmp1()
public net.imglib2.img.Img<T> getTmp2()
protected T getProcessingType()
protected abstract net.imglib2.img.Img<T> getProcessingLine(long size)
public net.imglib2.RandomAccessible<T> getResult()
protected net.imglib2.Interval getRange(int dim)
dim - - The dimension that is currently processedInterval defining the output size for the current
dimension that is processedprotected SamplingLineIterator<T> createInputLineSampler(int dim, net.imglib2.Interval range)
Iterator that samples a one dimensional line of input data for
the current dimension.dim - - The current dimensionrange - - the size of the output/temp imageSamplingLineIterator which provides the inputprotected WritableLineIterator<T> createOutputLineWriter(int dim, net.imglib2.Interval range, SamplingLineIterator<T> inputLineSampler)
Iterator that samples a one dimensional line of output data
for the current dimension.dim - - The current dimensionrange - - the size of the output/temp imageinputLineSampler - - the input line sampler which knows all the stuff alreadySamplingLineIterator which provides the outputprotected void processLine(SamplingLineIterator<T> input, double[] kernel)
Iterator) as it is potentially an expensive operation (e.g. a
Converter might be involved or we are computing on a rendered
input)input - - the Iterator/Sampler over the current input
line.protected void writeLine(WritableLineIterator<T> a, SamplingLineIterator<T> inputLineSampler)
Iterator)
as it is potentially an expensive operation (e.g. a Converter
might be involved)a - - the Iterator/Sampler over the current output
line.protected void updateInputLineSampler(SamplingLineIterator<T> a, net.imglib2.Interval range, long[] offset, net.imglib2.Localizable originalLocation)
SamplingLineIterator to the location of the
new line that is processed and clears the processing line (set all values
to zero)a - - the SamplingLineIteratorrange - - the size of the output/temp imageoffset - - the new positionoriginalLocation - - the location where is was put initially, all movements are
relative to thatprotected void updateOutputLineWriter(WritableLineIterator<T> a, net.imglib2.Interval range, long[] offset, net.imglib2.Localizable originalLocation)
WritableLineIterator to the location of the
new line that is processed.a - - the WritableLineIteratorrange - - the size of the output/temp imageoffset - - the new positionoriginalLocation - - the location where is was put initially, all movements are
relative to thatprotected void computeKernel()
protected net.imglib2.Interval getTemporaryImgSize()
public int getNumThreads()
public void setNumThreads(int numThreads)
public void call()
Copyright © 2009–2025 ImgLib2. All rights reserved.