Interface DiscreteFourierTransform<I extends ImageBase<I>,T extends ImageBase>
- All Known Implementing Classes:
GeneralFft_to_DiscreteFourierTransform_F32
,GeneralFft_to_DiscreteFourierTransform_F64
High level interface for applying the forward and inverse Discrete Fourier Transform to an image. Images of any size can be processed by this interface. Images can typically be processed must faster when their size is a power of two, see Fast Fourier Transform. The size of the input image can also be changed between called.
The Fourier transform of an image contains both real an imaginary components. These are stored in the output image in an interleaved format. As a result the output image will have twice the width and height as the input image. This format is shown below:
a[i*2*width+2*j] = Re[i][j], a[i*2*width+2*j+1] = Im[i][j], 0≤i<height, 0≤j<width
INPUT MODIFICATION: By default none of the inputs are modified. However, in some implementations, memory can be
saved by allowing inputs to be modified. To allow the class to modify its inputs use the following function,
setModifyInputs(boolean)
.
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Applies forward transform to the input image.void
Applies the inverse transform to a fourier transformed image to recover the original imageboolean
Returns state of forward modification flagvoid
setModifyInputs
(boolean modify) This function can toggle the internal implementations ability to modify the input image or input transform.
-
Method Details
-
forward
Applies forward transform to the input image.- Parameters:
image
- (Input) Input image. Default: Not modified.transform
- (Output) Fourier transform, twice width and same height of input. Modified.
-
inverse
Applies the inverse transform to a fourier transformed image to recover the original image- Parameters:
transform
- (Input) Fourier transform. twice width and same height of output. Default: Not modified.image
- (Output) reconstructed image. Modified.
-
setModifyInputs
void setModifyInputs(boolean modify) This function can toggle the internal implementations ability to modify the input image or input transform.- Parameters:
modify
- true for the input can be modified and false for it will not be modified.
-
isModifyInputs
boolean isModifyInputs()Returns state of forward modification flag- Returns:
- true for the input can be modified and false for it will not be modified.
-