• 图像处理学习笔记-04-频率域滤波01-基本知识


    背景

    • 傅里叶指出:任何周期函数都可以表示为不同频率的正弦和/或余弦之和的形式,每个正弦项和/或余弦项乘以不同的系数(现在称该和为傅里叶级数);
    • 傅里叶变换:非周期函数(该曲线下的面积是有限的)也可以用正弦和/或余弦乘以加权函数的积分来表示;
    • 用傅里叶级数或变换表示的函数特征完全可以通过傅里叶反变换来重建,而不会丢失任何信息;

    基本概念

    复数

    R , I R,I R,I是实数, R R R表示复数的实部, I I I是复数的虚部, j j j是一个等于 − 1 -1 1的平方根的虚数, j = − 1 j = \sqrt{-1} j=1 ,复数 C C C定义如下:
    C = R + j I C = R + jI C=R+jI
    一个复数 C C C的共轭表示为 C ∗ C^* C
    C ∗ = R − j I C^* = R - jI C=RjI
    复数可以看做是复平面上的一个点,横坐标是实轴值为 R R R,纵坐标是虚轴值 I I I,在极坐标下表示复数:
    C = ∣ C ∣ ( cos ⁡ θ + j sin ⁡ θ ) C = |C|(\cos \theta + j\sin \theta) C=C(cosθ+jsinθ)
    其中 ∣ C ∣ = R 2 + I 2 , θ = arctan ⁡ ( I R ) , θ ∈ [ − π , π ] |C| = \sqrt{R^2 + I^2},\theta = \arctan(\frac{I}{R}),\theta \in [-\pi,\pi] C=R2+I2 ,θ=arctan(RI),θ[π,π],使用欧拉公式:
    e j θ = cos ⁡ θ + j sin ⁡ θ e^{j\theta} = \cos \theta + j\sin \theta ejθ=cosθ+jsinθ
    其中 e = 2.71828 ⋯ e = 2.71828\cdots e=2.71828,可得到复数表示:
    C = ∣ C ∣ e j θ C = |C|e^{j\theta} C=Cejθ

    傅里叶级数

    具有周期 T T T的连续变量 t t t的周期函数 f ( t ) f(t) f(t)可以被描述为乘以适当系数的正弦和余弦和,这个和就是傅里叶级数,具有如下形式:
    f ( t ) = ∑ n = − ∞ ∞ c n e j 2 π n T t f(t) = \sum_{n = -\infty}^{\infty}c_ne^{j\frac{2\pi n}{T}t} f(t)=n=cnejT2πnt
    其中:
    c n = 1 T ∫ − T 2 T 2 f ( t ) e − j 2 π n T t d t , n = 0 , ± 1 , ± 2 , ⋯ c_n = \frac{1}{T}\int_{-\frac{T}{2}}^{\frac{T}{2}}f(t)e^{-j\frac{2\pi n}{T}t}dt,n = 0,\pm 1,\pm 2,\cdots cn=T12T2Tf(t)ejT2πntdt,n=0,±1,±2,

    冲激及其取样特性

    连续变量 t t t t = 0 t = 0 t=0处的单位冲激表示为 δ ( t ) \delta(t) δ(t),定义为:
    δ ( t ) = { ∞ t = 0 0 t ≠ 0 \delta(t) = {t=00t0 δ(t)={0t=0t=0
    且满足等式:
    ∫ − ∞ ∞ δ ( t ) d t = 1 \int_{-\infty}^{\infty}\delta(t)dt = 1 δ(t)dt=1
    物理上,如果我们把 t t t解释为时间,那么一个冲激可看成是幅度无限,持续时间为0,具有单位面积的一个尖峰信号,一个冲激具有关于如下积分的所谓取样特性:
    ∫ − ∞ ∞ f ( t ) δ ( t ) d t = f ( 0 ) \int_{-\infty}^{\infty}f(t)\delta(t)dt = f(0) f(t)δ(t)dt=f(0)
    取样特性的更一般的说明涉及位于任意点 t 0 t_0 t0的冲激,表示为 δ ( t − t 0 ) \delta(t - t_0) δ(tt0),此时取样特性变为:
    ∫ − ∞ ∞ f ( t ) δ ( t − t 0 ) d t = f ( t 0 ) \int_{-\infty}^{\infty}f(t)\delta(t - t_0)dt = f(t_0) f(t)δ(tt0)dt=f(t0)
    x x x表示一个离散变量,单位离散冲激 δ ( x ) \delta(x) δ(x)在离散系统中的作用与处理连续变量时冲激 δ ( t ) \delta(t) δ(t)的作用相同,定义如下:
    δ ( x ) = { 1 x = 0 0 x ≠ 0 \delta(x) = {1x=00x0 δ(x)={10x=0x=0
    且满足等式:
    ∑ x = − ∞ ∞ δ ( x ) = 1 \sum_{x = -\infty}^{\infty}\delta(x) = 1 x=δ(x)=1
    离散变量的取样特性有如下形式:
    ∑ x = − ∞ ∞ f ( x ) δ ( x ) = f ( 0 ) \sum_{x = -\infty}^{\infty}f(x)\delta(x) = f(0) x=f(x)δ(x)=f(0)
    更一般的用 x = x 0 x = x_0 x=x0处的离散冲激:
    ∑ x = − ∞ ∞ f ( x ) δ ( x − x 0 ) = f ( x 0 ) \sum_{x = -\infty}^{\infty}f(x)\delta(x - x_0) = f(x_0) x=f(x)δ(xx0)=f(x0)
    冲激串 s Δ T ( t ) = ∑ n = − ∞ ∞ δ ( t − n Δ T ) s_{\Delta T}(t) = \sum_{n = -\infty}^{\infty}\delta(t - n\Delta T) sΔT(t)=n=δ(tnΔT)

    连续变量函数的傅里叶变换

    J { f ( t ) } \mathfrak{J}\{f(t)\} J{f(t)}表示连续变量 t t t的连续函数 f ( t ) f(t) f(t)的傅里叶变换由下式定义:
    J { f ( t ) } = ∫ − ∞ ∞ f ( t ) e − j 2 π μ t d t \mathfrak{J}\{f(t)\} = \int_{-\infty}^{\infty}f(t)e^{-j2\pi \mu t}dt J{f(t)}=f(t)ej2πμtdt
    其中 μ \mu μ也是一个连续变量,因为 t t t被积分过了,故 J { f ( t ) } \mathfrak{J}\{f(t)\} J{f(t)}仅是 μ \mu μ的函数,为了明确这一个事实,我们把傅里叶变换写成 J { f ( t ) } = F ( μ ) \mathfrak{J}\{f(t)\} = F(\mu) J{f(t)}=F(μ):
    F ( μ ) = ∫ − ∞ ∞ f ( t ) e − j 2 π μ t d t F(\mu) = \int_{-\infty}^{\infty}f(t)e^{-j2\pi \mu t}dt F(μ)=f(t)ej2πμtdt
    相反,给定 F ( μ ) F(\mu) F(μ),通过傅里叶反变换可以获得 f ( t ) f(t) f(t),即 f ( t ) = J − 1 { F ( μ ) } f(t) = \mathfrak{J}^{-1}\{F(\mu)\} f(t)=J1{F(μ)}
    f ( t ) = ∫ − ∞ ∞ F ( μ ) e j 2 π μ t d μ f(t) = \int_{-\infty}^{\infty}F(\mu)e^{j2\pi \mu t}d\mu f(t)=F(μ)ej2πμtdμ
    可以看到 μ \mu μ被积分过了,可以简单的写成 f ( t ) f(t) f(t),正变换和反变换合起来称作傅里叶变换对,如果使用欧拉公式:
    F ( μ ) = ∫ − ∞ ∞ f ( t ) [ cos ⁡ ( 2 π μ t ) − j sin ⁡ ( 2 π μ t ) ] d t F(\mu) = \int_{-\infty}^{\infty}f(t)[\cos(2\pi\mu t) - j\sin(2\pi\mu t)]dt F(μ)=f(t)[cos(2πμt)jsin(2πμt)]dt

    • 例1:三角学恒等式 sin ⁡ θ = ( e j θ − e − j θ ) / 2 j \sin \theta = (e^{j\theta} - e^{-j\theta})/2j sinθ=(ejθejθ)/2j,盒状函数的傅里叶变换: F ( μ ) , ∣ F ( μ ) ∣ F(\mu),|F(\mu)| F(μ),F(μ)的零值位置与盒状函数的宽度 W W W成反比
      F ( μ ) = ∫ − ∞ ∞ f ( t ) e − j 2 π μ t d t = ∫ − W 2 W 2 A e − j 2 π μ t d t = − A j 2 π μ [ e − j 2 π μ t ] − W 2 W 2 = − A j 2 π μ [ e − j π μ W − e j π μ W ] = A j 2 π μ [ e j π μ W − e − j π μ W ] = A W sin ⁡ ( π μ W ) π μ W
      F(μ)=f(t)ej2πμtdt=W2W2Aej2πμtdt=Aj2πμ[ej2πμt]W2W2=Aj2πμ[ejπμWejπμW]=Aj2πμ[ejπμWejπμW]=AWsin(πμW)πμW" role="presentation">F(μ)=f(t)ej2πμtdt=W2W2Aej2πμtdt=Aj2πμ[ej2πμt]W2W2=Aj2πμ[ejπμWejπμW]=Aj2πμ[ejπμWejπμW]=AWsin(πμW)πμW
      F(μ)=f(t)ej2πμtdt=2W2WAej2πμtdt=j2πμA[ej2πμt]2W2W=j2πμA[eμWeμW]=j2πμA[eμWeμW]=AWπμWsin(πμW)

      对于 s i n c sinc sinc函数,有 s i n c ( m ) = s i n ( π m ) π m sinc(m) = \frac{sin(\pi m)}{\pi m} sinc(m)=πmsin(πm),在 m = 0 m = 0 m=0时函数值为1,在 m m m为其他整数值的时候函数值为0;
      盒状函数的傅里叶变换
    • 例2:冲激和冲激串的傅里叶变换:一个位于空间域原点的傅里叶变换,在频率域是一个常数
      F ( μ ) = ∫ − ∞ ∞ δ ( t ) e − j 2 π μ t d t = ∫ − ∞ ∞ e − j 2 π μ t δ ( t ) d t = e − j 2 π μ 0 = e 0 = 1 F(\mu) = \int_{-\infty}^{\infty}\delta(t)e^{-j2\pi \mu t}dt = \int_{-\infty}^{\infty}e^{-j2\pi \mu t}\delta(t)dt = e^{-j2\pi \mu 0} = e^0 = 1 F(μ)=δ(t)ej2πμtdt=ej2πμtδ(t)dt=ej2πμ0=e0=1
      t = t 0 t = t_0 t=t0的一个冲激的傅里叶变换:
      F ( μ ) = ∫ − ∞ ∞ δ ( t − t 0 ) e − j 2 π μ t d t = ∫ − ∞ ∞ e − j 2 π μ t δ ( t − t 0 ) d t = e − j 2 π μ t 0 = cos ⁡ ( 2 π μ t 0 ) − j sin ⁡ ( 2 π μ t 0 ) F(\mu) = \int_{-\infty}^{\infty}\delta(t - t_0)e^{-j2\pi \mu t}dt = \int_{-\infty}^{\infty}e^{-j2\pi \mu t}\delta(t - t_0)dt = e^{-j2\pi \mu t_0} = \cos(2\pi \mu t_0) - j\sin(2\pi \mu t_0) F(μ)=δ(tt0)ej2πμtdt=ej2πμtδ(tt0)dt=ej2πμt0=cos(2πμt0)jsin(2πμt0)
      冲激串的傅里叶变换:冲激串 s Δ T ( t ) s_{\Delta T}(t) sΔT(t)是周期为 Δ T \Delta T ΔT的周期函数,所以可以表示为傅里叶级数:
      s Δ T ( t ) = ∑ n = − ∞ ∞ c n e j 2 π n Δ T t s_{\Delta T}(t) = \sum_{n = -\infty}^{\infty}c_ne^{j\frac{2\pi n}{\Delta T}t} sΔT(t)=n=cnejΔT2πnt
      其中:
      c n = 1 Δ T ∫ − Δ T 2 Δ T 2 s Δ T ( t ) e − j 2 π n Δ T t d t c_n = \frac{1}{\Delta T}\int_{-\frac{\Delta T}{2}}^{\frac{\Delta T}{2}}s_{\Delta T}(t)e^{-j\frac{2\pi n}{\Delta T}t}dt cn=ΔT12ΔT2ΔTsΔT(t)ejΔT2πntdt
      可以看到区间 [ − Δ T 2 , Δ T 2 ] [-\frac{\Delta T}{2},\frac{\Delta T}{2}] [2ΔT,2ΔT]范围内只包含位于原点的冲激,所以上式变为:
      c n = 1 Δ T ∫ − Δ T 2 Δ T 2 δ ( t ) e − j 2 π n Δ T t d t = 1 Δ T e 0 = 1 Δ T c_n = \frac{1}{\Delta T}\int_{-\frac{\Delta T}{2}}^{\frac{\Delta T}{2}}\delta(t)e^{-j\frac{2\pi n}{\Delta T}t}dt = \frac{1}{\Delta T}e^0 = \frac{1}{\Delta T} cn=ΔT12ΔT2ΔTδ(t)ejΔT2πntdt=ΔT1e0=ΔT1
      然后傅里叶级数展开为:
      s Δ T ( t ) = 1 Δ T ∑ n = − ∞ ∞ e j 2 π n Δ T t s_{\Delta T}(t) = \frac{1}{\Delta T}\sum_{n = -\infty}^{\infty}e^{j\frac{2\pi n}{\Delta T}t} sΔT(t)=ΔT1n=ejΔT2πnt
      目的是得到上式的傅里叶变换,因为求和是线性过程,得到和的傅里叶变换与求各个分量的傅里叶变换之和是相同的:
      J { e j 2 π n Δ T t } = δ ( μ − n Δ T ) \mathfrak{J}\left\{e^{j\frac{2\pi n}{\Delta T}t}\right\} = \delta\left(\mu - \frac{n}{\Delta T}\right) J{ejΔT2πnt}=δ(μΔTn)
      因此周期冲激串 s Δ T ( t ) s_{\Delta T}(t) sΔT(t)的傅里叶变换 S ( μ ) S(\mu) S(μ)为:
      S ( μ ) = J { s Δ T ( t ) } = J { 1 Δ T ∑ n = − ∞ ∞ e j 2 π n Δ T t } = 1 Δ T J { ∑ n = − ∞ ∞ e j 2 π n Δ T t } = 1 Δ T ∑ n = − ∞ ∞ δ ( μ − n Δ T )
      S(μ)=J{sΔT(t)}=J{1ΔTn=ej2πnΔTt}=1ΔTJ{n=ej2πnΔTt}=1ΔTn=δ(μnΔT)" role="presentation">S(μ)=J{sΔT(t)}=J{1ΔTn=ej2πnΔTt}=1ΔTJ{n=ej2πnΔTt}=1ΔTn=δ(μnΔT)
      S(μ)=J{sΔT(t)}=J{ΔT1n=ejΔT2πnt}=ΔT1J{n=ejΔT2πnt}=ΔT1n=δ(μΔTn)

      周期为 Δ T \Delta T ΔT的冲激串的傅里叶变换还是冲激串,其周期为 1 Δ T \frac{1}{\Delta T} ΔT1

    卷积

    具有连续变量 t t t的两个连续函数 f ( t ) , h ( t ) f(t),h(t) f(t),h(t)的卷积:
    f ( t ) ★ h ( t ) = ∫ − ∞ ∞ f ( τ ) h ( t − τ ) d τ f(t)★h(t) = \int_{-\infty}^{\infty}f(\tau)h(t - \tau)d\tau f(t)h(t)=f(τ)h(tτ)dτ
    上式的傅里叶变换:
    J { f ( t ) ★ h ( t ) } = ∫ − ∞ ∞ [ ∫ − ∞ ∞ f ( τ ) h ( t − τ ) d τ ] e − j 2 π μ t d t = ∫ − ∞ ∞ f ( τ ) [ ∫ − ∞ ∞ h ( t − τ ) e − j 2 π μ t d t ] d τ = ∫ − ∞ ∞ f ( τ ) [ H ( μ ) e − j 2 π μ τ ] d τ = H ( μ ) ∫ − ∞ ∞ f ( τ ) e − j 2 π μ τ d τ = H ( μ ) F ( μ ) J{f(t)h(t)}=[f(τ)h(tτ)dτ]ej2πμtdt=f(τ)[h(tτ)ej2πμtdt]dτ=f(τ)[H(μ)ej2πμτ]dτ=H(μ)f(τ)ej2πμτdτ=H(μ)F(μ) J{f(t)h(t)}=[f(τ)h(tτ)dτ]ej2πμtdt=f(τ)[h(tτ)ej2πμtdt]dτ=f(τ)[H(μ)ej2πμτ]dτ=H(μ)f(τ)ej2πμτdτ=H(μ)F(μ)
    H ( μ ) H(\mu) H(μ) h ( t ) h(t) h(t)的傅里叶变换,可以推得空间域中两个函数的卷积的傅里叶变换等于两个函数的傅里叶变换在频率域的乘积,也就是说假如有两个变换的乘积,那么进行傅里叶反变换就可以得到空间域的卷积

  • 相关阅读:
    OpenFeign使用案例
    AVProVideo☀️八、一起做《王者荣耀》的背景视频
    (三)使用 Vue 脚手架
    【毕业设计】深度学习验证码识别算法研究与实现 - python 机器视觉
    Java互联网+公立医院绩效考核源码
    AD脚本使用记录-暂不更新
    对1GHz脉冲多普勒雷达进行快速和慢速处理生成5个移动目标的距离多普勒图研究(Matlab代码实现)
    金蝶与电商集成如何调用奇门接口
    计算属性全选反选
    简述树状数组
  • 原文地址:https://blog.csdn.net/weixin_44994838/article/details/127021335