Fourier transform properties
For any complex numbers $a \in \mathbb{C}$ and $b \in \mathbb{C}$,
$h(x) = af(x) + bg(x)$
$\xleftrightarrow{\mathcal{F}~(\textrm{Fourier transform})}$
$\hat{h}(\xi) = a \cdot \hat{f}(\xi) + b \cdot \hat{g}(\xi)$
$ python demo_fourier_properties_1_linearity.py
For any real number $x_0 \in \mathbb{R}$,
$h(x) = f(x-x_0)$
$\xleftrightarrow{\mathcal{F}~(\textrm{Fourier transform})}$
$\hat{h}(\xi) = e^{-2 \pi i x_0 \xi}\hat{f}(\xi)$
$ python demo_fourier_properties_2_shift_in_spatial_domain.py
For any real number $\xi_0 \in \mathbb{R}$,
$h(x) = e^{2 \pi i x \xi_0}f(x)$
$\xleftrightarrow{\mathcal{F}~(\textrm{Fourier transform})}$
$\hat{h}(\xi) = \hat{f}(\xi - \xi_0)$
$ python demo_fourier_properties_3_shift_in_Fourier_domain.py
$h(x) = (f*g)(x) = \int_{-\infty}^{\infty}{f(y)g(x-y)dy}$
$\xleftrightarrow{\mathcal{F}~(\textrm{Fourier transform})}$
$\hat{h}(\xi) = \hat{f}(\xi) \cdot \hat{g}(\xi)$
where, * is convolution operator and $\cdot$ is element-wise multiplication.
$ python demo_fourier_properties_4_1d_convolution_vs_multiplication.py
$ python demo_fourier_properties_5_2d_convolution_vs_multiplication.py
(a) 1D example
(b) 2D example