opencv图像分析与处理(4)- 频率域滤波的基础概念
本节为opencv数字图像处理(4):频率域滤波的第一小节,频率域滤波的基础概念,主要包括:复数定义的回顾、傅里叶级数的形式、冲激及其取样特性以及连续函数的傅里叶变换。
本节为opencv数字图像处理(4):频率域滤波的第一小节,频率域滤波的基础概念,主要包括:复数定义的回顾、傅里叶级数的形式、冲激及其取样特性以及连续函数的傅里叶变换。
1. 基本概念
1.1 复数
复数C的定义如下: C = R + j I C=R+jI C=R+jI,其共轭表示为 C ∗ = R − j I C^*=R-jI C∗=R−jI。其中R和 I I I是实数, j = − 1 j=\sqrt{-1} j=−1。
复数从几何的角度可以被看做复平面上一个点,横坐标是实轴(R的值),纵坐标是虚轴( I I I的值),也就是说复数 R + j I R+jI R+jI是复平面直角坐标系统中的点 ( R , I ) (R,I) (R,I)。
极坐标下表示复数: C = ∣ C ∣ ( cos θ + j sin θ ) C=|C|(\cos\theta+j\sin\theta) C=∣C∣(cosθ+jsinθ),其中 ∣ C ∣ = R 2 + I 2 |C|=\sqrt{R^2+I^2} ∣C∣=R2+I2是复平面的原点到点 ( R , I ) (R,I) (R,I)的向量的长度, θ \theta θ是该向量与实轴的夹角。
使用欧拉公式: e j θ = cos θ + j sin θ e^{j\theta}=\cos\theta+j\sin\theta ejθ=cosθ+jsinθ,则可以给出极坐标下的复数表示: C = ∣ C ∣ e j θ C=|C|e^{j\theta} C=∣C∣ejθ。
1.2 傅里叶级数
具有周期T的连续变量t的周期函数f(t)可以被描述为乘以适当系数的正弦和余弦和,这个和就是傅里叶级数:
f ( t ) = Σ n = − ∞ ∞ c n e j 2 π n T t f(t)=\Sigma^{\infty}_{n=-\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=\frac1T\int_{-T/2}^{T/2}f(t)e^{-j\frac{2\pi n}{T}t}dt,n=0,\pm1,\pm2,... cn=T1∫−T/2T/2f(t)e−jT2πntdt,n=0,±1,±2,...
1.3 冲激及其取样特性
连续变量t在t=0处的单位冲激表示为 δ ( t ) \delta(t) δ(t),定义为:
δ ( t ) = { ∞ , t = 0 0 , t ≠ 0 \delta(t)=\begin{cases}\infty,t=0\\0,\ \ t\neq0\end{cases} δ(t)={∞,t=00, t=0
它还被限制满足等式 ∫ − ∞ ∞ δ ( t ) d t = 1 \int_{-\infty}^{\infty}\delta(t)dt=1 ∫−∞∞δ(t)dt=1,物理上,如果把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) δ(t−t0),这样取样特性变为:
∫ − ∞ ∞ 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)δ(t−t0)dt=f(t0)
它在冲激位置 t 0 t_0 t0处得到一个函数值,例如如果 f ( t ) = cos ( t ) f(t)=\cos(t) f(t)=cos(t),使用冲激 δ ( t − π ) \delta(t-\pi) δ(t−π)得到结果 f ( π ) = c o s ( π ) = − 1 f(\pi)=cos(\pi)=-1 f(π)=cos(π)=−1。
对于离散变量,也有类似的定义,只不过积分号变为累加号而已。
接着,我们定义冲激串 s Δ T ( t ) s_{\Delta T}(t) sΔT(t),定义为无限多个分离的周期冲激单元 Δ T \Delta T ΔT之和:
如下图所示的一个冲激串的例子:
1.4 连续变量函数的傅立叶变换
由 ζ { f ( t ) } \zeta\{f(t)\} ζ{f(t)}表示连续变量t的连续函数f(t)的傅立叶变换如下:
ζ { f ( t ) } = ∫ − ∞ ∞ f ( t ) e − j 2 π μ t d t \zeta\{f(t)\}=\int_{-\infty}^{\infty}f(t)e^{-j2\pi\mu t}dt ζ{f(t)}=∫−∞∞f(t)e−j2πμtdt
因为t被积分过了,所以 ζ { f ( t ) } \zeta\{f(t)\} ζ{f(t)}仅是 μ \mu μ的函数,这样f(t)的傅立叶变换可写为:
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)e−j2πμtdt
给定F(u),通过傅里叶反变换可以获得f(t),即 f ( t ) = ζ − 1 { F ( μ ) } f(t)=\zeta^{-1}\{F(\mu)\} f(t)=ζ−1{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μ
利用欧拉公式,我们可以将傅里叶变换表示为:
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
可以看到,如果f(t)是实数,那么变换通常为复数。举个例子,下图所示的简单函数的傅立叶变换:
变换如下:
其中最后一部运算利用了 sin θ = ( e j θ − e − j θ ) / 2 j \sin\theta=(e^{j\theta}-e^{}-j\theta)/2j sinθ=(ejθ−e−jθ)/2j,这样傅立叶变换的复数项精细地合并为一个实正弦函数,最后一步正是sinc函数 s i n c ( m ) = sin ( π m ) π m sinc(m)=\frac{\sin(\pi m)}{\pi m} sinc(m)=πmsin(πm),下面给出上述傅立叶变换后 F ( μ ) F(\mu) F(μ)的曲线:
取 F ( μ ) F(\mu) F(μ)的绝对值称为幅值,该幅值也称为傅里叶谱或频谱,曲线如下所示:
位于原点的单位冲激的傅立叶变换:
类似地在 t = t 0 t=t_0 t=t0的一个冲激的傅立叶变换是:
冲激串 s Δ T ( t ) s_{\Delta T}(t) sΔT(t)是一个周期为 Δ T \Delta T ΔT的周期函数,可以表示为一个傅里叶级数:
其中:
因为积分区间上的积分仅包含位于原点的冲激 s Δ T ( t ) s_{\Delta T}(t) sΔT(t),上面的公式可以表示为:
傅里叶级数可展开为:
因为求和是线性过程所以和的傅立叶变换和分量傅立叶变换之和相等,这些分量是指数形式,而且之前我们得到:
因此周期冲激串 s Δ T ( t ) s_{\Delta T}(t) sΔT(t)的傅立叶变换表示为:
可知,冲激串的傅立叶变换仍是冲激串,只不过周期变为原来的倒数。
1.5 卷积
两个函数的卷积涉及一个函数旋转180°并滑过另一个函数,滑动过程中每一个位移处执行计算,下面考虑连续变量t的两个连续函数f(t)和h(t)的卷积,因此用积分代替求和,卷积定义如下:
其中,符号是翻转,t是一个函数滑过另一个函数的唯一, τ \tau τ是积分假变量。
上式的傅立叶变换可以写为:
因为:
其中H(u)是h(t)的傅立叶变换,则有:
将t所在的域称为空间域,u所在的域称为频率域。上式说明,空间域中两个函数的卷积的傅立叶变换等于两个函数的傅立叶变换在频率域的乘积,也就是说,如果有两个变换的乘积,那么可以通过傅里叶反变换得到空间域的卷积,也就是说f(t)★h(t)和H(u)F(u)是傅立叶变换对,这一结果就是卷积定理的一半:记为 f ( t ) ★ h ( t ) ⇔ H ( μ ) F ( μ ) f(t)★h(t)\Leftrightarrow H(\mu)F(\mu) f(t)★h(t)⇔H(μ)F(μ),卷积定理的另一半自然是: f ( t ) h ( t ) ⇔ H ( μ ) ★ F ( μ ) f(t)h(t)\Leftrightarrow H(\mu)★F(\mu) f(t)h(t)⇔H(μ)★F(μ)
卷积定理是频率与滤波的基础。
欢迎扫描二维码关注微信公众号 深度学习与数学 [每天获取免费的大数据、AI等相关的学习资源、经典和最新的深度学习相关的论文研读,算法和其他互联网技能的学习,概率论、线性代数等高等数学知识的回顾]
更多推荐
所有评论(0)