IPSDK 4.1.0.2
IPSDK : Image Processing Software Development Kit
Backward Discrete Fourier Transform 2d
imagebackwardDiscreteFourierTransform2dImg (inDFTImg1,inDFTImg2)
imagebackwardDiscreteFourierTransform2dImg (inDFTImg1,inDFTImg2,inOptDFTConfig)

Detailed Description

Backward Discrete Fourier Transform for an input 2d image.

This algorithm allows to compute the real part of Backward Discrete Fourier Transformation of an input complex 2d image reprensented by its two components $ InDFTImg1 $ and $ InDFTImg2 $.

In two dimensions, the real part of Backward Discrete Fourier Transformation (BDFT) of input images $ InDFTImg1 $ and $ InDFTImg2 $ with $ S_y $ rows and $ S_x $ columns is defined as the following real image:

\[ bdft(x, y) = Re \left\{ \sum_{k=0}^{S_y}{\sum_{l=0}^{S_x}{InDFTImg(l, k)\exp^{+2\pi i \left (\frac{xl}{S_x}+\frac{yk}{S_y} \right )}}} \right\} \]

This transformation allows to retrieve forward domain and can be usefull for example in case of filtering of Fourier Frequencies. The following image is an illustration of Backward Discrete Fourier Transformation results:

backwardDiscreteFourierTransform2dImg.png

As in case of Forward Discrete Fourier Transform (see Forward Discrete Fourier Transform 2d), $InDFTConfig$ parameter allows to setup:

See also
https://en.wikipedia.org/wiki/Discrete_Fourier_transform

Example of Python code :

Example imports

import PyIPSDK
import PyIPSDK.IPSDKIPLIntensityTransform as itrans

Code Example

# opening of input images
inImg1 = PyIPSDK.loadTiffImageFile(inputImgPath1)
inImg2 = PyIPSDK.loadTiffImageFile(inputImgPath2)
# Backward Discrete Fourier Transform of input images
outImg = itrans.backwardDiscreteFourierTransform2dImg(inImg1, inImg2)

Example of C++ code :

Example informations

Header file

#include <IPSDKIPL/IPSDKIPLIntensityTransform/Processor/BackwardDiscreteFourierTransform2dImg/BackwardDiscreteFourierTransform2dImg.h>

Code Example

// opening of input images
ImagePtr pInImg1 = loadTiffImageFile(inputImgPath1);
ImagePtr pInImg2 = loadTiffImageFile(inputImgPath2);
// Backward Discrete Fourier Transform of input images
ImagePtr pOutImg = backwardDiscreteFourierTransform2dImg(pInImg1, pInImg2);