





























本文简要总结之前傅里叶变换系列文章,梳理脉络,总结应用场景。
$$
\frac{a_{0}}{2}+\sum_{n=1}^{\infty}\left(a_{n} \cos \frac{n \pi x}{l}+b_{n} \sin \frac{n \pi x}{l}\right) , l>0, n=1,2, \cdots
$$
$\frac{a_{0}}{2}$ 直流分量,$n$ 为使用的正弦波的下标, $a_n,b_n$ 为幅度

$$
\frac{a_{0}}{2}+\sum_{n=1}^{\infty}\left(a_{n} \cos \frac{n \pi x}{l}+b_{n} \sin \frac{n \pi x}{l}\right) , l>0, n=1,2, \cdots
$$
$$ \begin{array}{l} \int_{-l}^{l} \cos \frac{n \pi x}{l} \cos \frac{m \pi x}{l} \mathrm{~d} x &=&\frac{1}{2} \int_{-l}^{l} \cos \frac{(n+m) \pi x}{l}+\cos \frac{(n-m) \pi x}{l} \mathrm{~d} x \\ &=&\left.\left(\frac{l}{2(n+m) \pi} \sin \frac{(n+m) \pi x}{l}+\frac{l}{2(n-m) \pi} \sin \frac{(n-m) \pi x}{l}\right)\right|_{-l} ^{l} \\&=&0 \end{array} $$

傅立叶变换是一种基于傅里叶级数的分析信号的方法, 用正弦波作为信号的成分。
当选择无限个不同频率不同振幅的正弦、余弦波的集合作为信号的基时, 信号就转换到了频域。
在频域中,基是 $ \left\{e^{j w x}\right\} $ ,而且这组基是正交基(基于傅里叶级数)

$$
F(w)=\int_{-\infty}^{+\infty} f(x) e^{-j w x} d x
$$
$ F(\omega) $ 叫做 $ {f}(\mathrm{t}) $ 的象函数, $ {f}({t}) $ 叫做$ {F}(\omega) $ 的象原函数。
$ F (\omega) $ 是 $ {f}(\mathrm{t}) $ 的象, $ \mathrm{f}({t}) $ 是$F(\omega)$原象。
一维傅里叶变换是将一个一维的信号分解成若干个复指数波 $ e^{j w x} $ 。而由于 $ e^{j w x}=\cos (w x)+i \sin (w x) $ ,所以可以将每一个复指数波 $ e^{j w x} $ 都视为是 $余弦波 +\mathrm{j} {\times} 正弦波$ 的组合。

$$
f(t)=\mathcal{F}^{-1}[F(\omega)]=\frac{1}{2 \pi} \int_{-\infty}^{\infty} F(\omega) e^{i w t} d \omega
$$
$$ \begin{array}{c} \int_{-\infty}^{\infty} F(\omega) e^{i w t} d \omega &=&\int_{-\infty}^{\infty}\left[\int_{-\infty}^{\infty} f(x) e^{-j w x} d x\right] e^{j w t} d w\\ &=& \int_{-\infty}^{\infty}\left[\int_{-\infty}^{\infty} e^{-j w(x-t)} d w\right] f(x) d x \\ &=& \int_{-\infty}^{\infty}[2 \pi \delta(x-t)] f(x) d x \\ &=& 2 \pi f(t) \end{array} $$

$$
X(k)=\operatorname{DFT}[x(n)]=\sum_{n=0}^{N-1} x(n) W_{N}^{k n} \quad k=0,1, \cdots, N-1
$$
$$
x(n)=\operatorname{IDFT}[X(k)]=\frac{1}{N} \sum_{k=0}^{N-1} X(k) W_{N}^{-k n} \quad n=0,1, \cdots, N-1
$$
式中, $W_{N}=\mathrm{e}^{-j\frac{2\pi}{N}}, N$ 称为 $\mathrm{DFT}$ 变换区间长度, $(N \geqslant M)$ 通常称上述两式为离散傅里叶变换对。


$$
F(u, v)=\int_{-\infty}^{+\infty} \int_{-\infty}^{+\infty} f(x, y) e^{-j 2 \pi(u x+v y)} d x d y
$$
令 $f(x, y)$表示一幅大小为 $M\times N$像素的数字图像,其中 $x=0,1,2,…,M-1,y=0,1,2,…,N-1$。
其二维离散傅里叶变换(DFT)为:
$$
F(u, v)=\sum_{x=0}^{M-1} \sum_{y=0}^{N-1} f(x, y) e^{-j 2 \pi(u x / M+v y / N)}
$$
$$
f(x, y)=\frac{1}{M N} \sum_{u=0}^{M-1} \sum_{v=0}^{N-1} F(u, v) e^{j 2 \pi(u x / M+v y / N)}
$$
频域是时域整体的表达,频域上信号的一个点,对应的是整个时域信号该对应频率的信息
因此,在频域中的乘法,自然就对应了时域整段所有不同频率信号乘法的叠加,这就相当于计算了时域卷积
频域乘法理论上可以代替空域卷积运算

$$
S(i, j)=(I * K)(i, j)=\sum \sum I(m, n) K(i-m, j-n)
$$
也就是说 $K$ 的二维信号是左右、上下翻转后再平移求向量点积的,与神经网络中表示的卷积概念有一点出入,只是在不同场合的说法不同。
$$
S(i, j)=(K * I)(i, j)=\sum \sum I(i-m, j-n) K(m, n)
$$
$$
S(i, j)=(I * K)(i, j)=\sum_{m} \sum_{n} I(i+m, j+n) K(m, n)
$$
$$
f(t) * g(t)=\int_{-\infty}^{\infty} f(\tau) * g(t-\tau) d \tau
$$
$$ \begin{array}{c} F[f(t) * g(t)]&=&\int_{-\infty}^{\infty}\left[\int_{-\infty}^{\infty} f(\tau) g(t-\tau) d \tau\right] e^{-j w t} d t \\ &=&\int_{-\infty}^{\infty} f(\tau)\left[\int_{-\infty}^{\infty} g(t-\tau) e^{-j w t} d t\right] d \tau \\ &=& \int_{-\infty}^{\infty} f(\tau) e^{-j u \tau} d \tau\left[\int_{-\infty}^{\infty} g(t-\tau) e^{-j w(t-\tau)} d(t-\tau)\right] \\ &=&F[f(\tau)] F[g(t-\tau)] \\ &=&F(w) G(w) \end{array} $$
$$
f(t) * g(t)=F^{-1}(F[f(t) * g(t)])=F^{-1}(F(w) G(w))
$$
事实上也有空域乘法相当于频域卷积的结论
$$
f(t) \otimes g(t)=\int_{-\infty}^{\infty} f(\tau) * g(t+\tau) d \tau
$$
$$ \begin{array}{c} F[f(t) \otimes g(t)]&=&\int_{-\infty}^{\infty}\left[\int_{-\infty}^{\infty} f(\tau) g(t+\tau) d \tau\right] e^{-j w t} d t \\ &=&\int_{-\infty}^{\infty} f(\tau)\left[\int_{-\infty}^{\infty} g(t+\tau) e^{-j w t} d t\right] d \tau \\ &=& \int_{-\infty}^{\infty} f(\tau) e^{j u \tau} d \tau\left[\int_{-\infty}^{\infty} g(t+\tau) e^{-j w(t+\tau)} d(t+\tau)\right] \\ &=&F^*[f(\tau)] F[g(t-\tau)] \\ &=&F^*(w) G(w) \end{array} $$
$$ f(t) \otimes g(t)=F^{-1}(F[f(t) \otimes g(t)])=F^{-1}(F^*(w) G(w)) $$
卷积结果的傅里叶变换为信号傅里叶变换乘积 这一结论为空域卷积快速计算提供了可能。
$$
g_{b}(x) \stackrel{\text { def }}{=} g_{a}((x-\Delta x) \bmod M)
$$
$$ \mathbf{G}_{b}(u)=\mathbf{G}_{a}(u) e^{-2 \pi i\left(\frac{u \Delta x}{M}\right)} $$
$$ \begin{aligned} R(u) &=\frac{\mathbf{G}_{a} \mathbf{G}_{b}^{*}}{\left|\mathbf{G}_{a} \mathbf{G}_{b}^{*}\right|} \\ &=\frac{\mathbf{G}_{a} \mathbf{G}_{a}^{*} e^{2 \pi i\left(\frac{u \Delta x}{M}\right)}}{\left|\mathbf{G}_{a} \mathbf{G}_{a}^{*} e^{2 \pi i\left(\frac{u \Delta x}{M}\right)}\right|} \\ &=\frac{\mathbf{G}_{a} \mathbf{G}_{a}^{*} e^{2 \pi i\left(\frac{u \Delta x}{M}\right)}}{\left|\mathbf{G}_{a} \mathbf{G}_{a}^{*}\right|} \\ &=e^{2 \pi i\left(\frac{u \Delta x}{M}\right)} \end{aligned} $$
可以应用在一维周期信号的特征提取
给出一幅图像,我们求出图像中圆形的周期和相位



其中能量最大的就是信号的频率 12,与实际相符
Halcon 实例:
determine grid rotation fft







$$ S=IFFT(FFT(I)*FFT^*(T)) $$

维基百科上说:
This result could have been obtained by calculating the cross correlation directly. The advantage of this method is that the discrete Fourier transform and its inverse can be performed using the fast Fourier transform, which is much faster than correlation for large images.
但是事实上相位相关和互相关在时域的表现差异很大,而且二者都可以通过 FFT 加速:

https://www.zywvvd.com/notes/study/math/fourier-transform/fourier-transform/
https://www.zywvvd.com/notes/study/math/fourier-transform/fourier-conv/fourier-conv/
https://www.zywvvd.com/notes/study/math/fourier-transform/2d-dft-corr/2d-dft/
https://www.zywvvd.com/notes/study/math/fourier-transform/2d-dft-corr/2d-dft-corr/
文章链接:
https://www.zywvvd.com/notes/study/math/fourier-transform/fourier-summary/fourier-summary/
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。