Package org.itk.simple
Class InverseDeconvolutionImageFilter
java.lang.Object
org.itk.simple.ProcessObject
org.itk.simple.ImageFilter
org.itk.simple.InverseDeconvolutionImageFilter
The direct linear inverse deconvolution filter.
The inverse filter is the most straightforward deconvolution method.
Considering that convolution of two images in the spatial domain is
equivalent to multiplying the Fourier transform of the two images, the
inverse filter consists of inverting the multiplication. In other
words, this filter computes the following: \\[ hat{F}(\\omega) = \\begin{cases} G(\\omega) / H(\\omega)
& \\text{if \\f$|H(\\omega)| \\geq \\epsilon\\f$}
\\\\ 0 & \\text{otherwise} \\end{cases} \\] where $\\hat{F}(\\omega)$ is the Fourier transform of the estimate produced by this filter, $G(\\omega)$ is the Fourier transform of the input blurred image, $H(\\omega)$ is the Fourier transform of the blurring kernel, and $\\epsilon$ is a constant real non-negative threshold (called
KernelZeroMagnitudeThreshold in this filter) that determines when the
magnitude of a complex number is considered zero.
Gaetan Lehmann, Biologie du Developpement et de la Reproduction, INRA
de Jouy-en-Josas, France
Cory Quammen, The University of North Carolina at Chapel Hill
See:
itk::simple::InverseDeconvolution for the procedural interface
itk::InverseDeconvolutionImageFilter for the Doxygen on the original ITK class.
C++ includes: sitkInverseDeconvolutionImageFilter.h
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final class
static final class
-
Field Summary
Fields inherited from class org.itk.simple.ProcessObject
swigCMemOwn
-
Constructor Summary
ConstructorsModifierConstructorDescriptionitk::simple::InverseDeconvolutionImageFilter::InverseDeconvolutionImageFilter() Default Constructor that takes no arguments and initializes default parametersprotected
InverseDeconvolutionImageFilter
(long cPtr, boolean cMemoryOwn) -
Method Summary
Modifier and TypeMethodDescriptionvoid
delete()
virtual itk::simple::InverseDeconvolutionImageFilter::~InverseDeconvolutionImageFilter() DestructorImage itk::simple::InverseDeconvolutionImageFilter::Execute(const Image &image1, const Image &image2) Execute the filter on the input imagesprotected void
finalize()
BoundaryConditionType itk::simple::InverseDeconvolutionImageFilter::GetBoundaryCondition() constprotected static long
double
double itk::simple::InverseDeconvolutionImageFilter::GetKernelZeroMagnitudeThreshold() const Set/get the threshold value used to determine whether a frequency of the Fourier transform of the blurring kernel is considered to be zero.getName()
std::string itk::simple::InverseDeconvolutionImageFilter::GetName() const Name of this classboolean
bool itk::simple::InverseDeconvolutionImageFilter::GetNormalize() constOutputRegionModeType itk::simple::InverseDeconvolutionImageFilter::GetOutputRegionMode() constvoid
Self& itk::simple::InverseDeconvolutionImageFilter::NormalizeOff()void
Self& itk::simple::InverseDeconvolutionImageFilter::NormalizeOn() Set the value of Normalize to true or false respectfully.void
setBoundaryCondition
(InverseDeconvolutionImageFilter.BoundaryConditionType BoundaryCondition) Self& itk::simple::InverseDeconvolutionImageFilter::SetBoundaryCondition(BoundaryConditionType BoundaryCondition)void
setKernelZeroMagnitudeThreshold
(double KernelZeroMagnitudeThreshold) Self& itk::simple::InverseDeconvolutionImageFilter::SetKernelZeroMagnitudeThreshold(double KernelZeroMagnitudeThreshold) Set/get the threshold value used to determine whether a frequency of the Fourier transform of the blurring kernel is considered to be zero.void
setNormalize
(boolean Normalize) Self& itk::simple::InverseDeconvolutionImageFilter::SetNormalize(bool Normalize) Normalize the output image by the sum of the kernel componentsvoid
setOutputRegionMode
(InverseDeconvolutionImageFilter.OutputRegionModeType OutputRegionMode) Self& itk::simple::InverseDeconvolutionImageFilter::SetOutputRegionMode(OutputRegionModeType OutputRegionMode)protected static long
toString()
std::string itk::simple::InverseDeconvolutionImageFilter::ToString() const Print ourselves outMethods inherited from class org.itk.simple.ImageFilter
getCPtr, swigRelease
Methods inherited from class org.itk.simple.ProcessObject
abort, addCommand, debugOff, debugOn, getCPtr, getDebug, getGlobalDefaultCoordinateTolerance, getGlobalDefaultDebug, getGlobalDefaultDirectionTolerance, getGlobalDefaultNumberOfThreads, getGlobalDefaultThreader, getGlobalWarningDisplay, getNumberOfThreads, getNumberOfWorkUnits, getProgress, globalDefaultDebugOff, globalDefaultDebugOn, globalWarningDisplayOff, globalWarningDisplayOn, hasCommand, removeAllCommands, setDebug, setGlobalDefaultCoordinateTolerance, setGlobalDefaultDebug, setGlobalDefaultDirectionTolerance, setGlobalDefaultNumberOfThreads, setGlobalDefaultThreader, setGlobalWarningDisplay, setNumberOfThreads, setNumberOfWorkUnits, swigRelease
-
Constructor Details
-
InverseDeconvolutionImageFilter
protected InverseDeconvolutionImageFilter(long cPtr, boolean cMemoryOwn) -
InverseDeconvolutionImageFilter
public InverseDeconvolutionImageFilter()itk::simple::InverseDeconvolutionImageFilter::InverseDeconvolutionImageFilter() Default Constructor that takes no arguments and initializes default parameters
-
-
Method Details
-
getCPtr
-
swigRelease
-
finalize
protected void finalize()- Overrides:
finalize
in classImageFilter
-
delete
public void delete()virtual itk::simple::InverseDeconvolutionImageFilter::~InverseDeconvolutionImageFilter() Destructor- Overrides:
delete
in classImageFilter
-
setKernelZeroMagnitudeThreshold
public void setKernelZeroMagnitudeThreshold(double KernelZeroMagnitudeThreshold) Self& itk::simple::InverseDeconvolutionImageFilter::SetKernelZeroMagnitudeThreshold(double KernelZeroMagnitudeThreshold) Set/get the threshold value used to determine whether a frequency of the Fourier transform of the blurring kernel is considered to be zero. Default value is 1.0e-4. -
getKernelZeroMagnitudeThreshold
public double getKernelZeroMagnitudeThreshold()double itk::simple::InverseDeconvolutionImageFilter::GetKernelZeroMagnitudeThreshold() const Set/get the threshold value used to determine whether a frequency of the Fourier transform of the blurring kernel is considered to be zero. Default value is 1.0e-4. -
setNormalize
public void setNormalize(boolean Normalize) Self& itk::simple::InverseDeconvolutionImageFilter::SetNormalize(bool Normalize) Normalize the output image by the sum of the kernel components -
normalizeOn
public void normalizeOn()Self& itk::simple::InverseDeconvolutionImageFilter::NormalizeOn() Set the value of Normalize to true or false respectfully. -
normalizeOff
public void normalizeOff()Self& itk::simple::InverseDeconvolutionImageFilter::NormalizeOff() -
getNormalize
public boolean getNormalize()bool itk::simple::InverseDeconvolutionImageFilter::GetNormalize() const -
setBoundaryCondition
public void setBoundaryCondition(InverseDeconvolutionImageFilter.BoundaryConditionType BoundaryCondition) Self& itk::simple::InverseDeconvolutionImageFilter::SetBoundaryCondition(BoundaryConditionType BoundaryCondition) -
getBoundaryCondition
BoundaryConditionType itk::simple::InverseDeconvolutionImageFilter::GetBoundaryCondition() const -
setOutputRegionMode
public void setOutputRegionMode(InverseDeconvolutionImageFilter.OutputRegionModeType OutputRegionMode) Self& itk::simple::InverseDeconvolutionImageFilter::SetOutputRegionMode(OutputRegionModeType OutputRegionMode) -
getOutputRegionMode
OutputRegionModeType itk::simple::InverseDeconvolutionImageFilter::GetOutputRegionMode() const -
getName
std::string itk::simple::InverseDeconvolutionImageFilter::GetName() const Name of this class- Overrides:
getName
in classProcessObject
-
toString
std::string itk::simple::InverseDeconvolutionImageFilter::ToString() const Print ourselves out- Overrides:
toString
in classProcessObject
-
execute
Image itk::simple::InverseDeconvolutionImageFilter::Execute(const Image &image1, const Image &image2) Execute the filter on the input images
-