欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 教育 > 培训 > 01_Machine Vision_LSI及傅立叶变换

01_Machine Vision_LSI及傅立叶变换

2025/2/21 3:37:49 来源:https://blog.csdn.net/miaomiaomiao1996/article/details/145539303  浏览:    关键词:01_Machine Vision_LSI及傅立叶变换

outline

  • 图像分解和线性时不变系统
  • 二维傅立叶变换
  • 图像采样

图像分解和线性时不变系统

图像数学表达

图像由基本的像素点组成,如果将每一个像素点看作一个脉冲,则每个像素点的值可以看作是脉冲的幅值,这样图像就可以看作是由一系列脉冲组成的。

单个像素点的数学表达式:

f ( i , j ) = A δ ( x − i , y − j ) f(i,j) = A\delta(x-i,y-j) f(i,j)=Aδ(xi,yj)

其中,A是像素点的幅值, δ ( x − x 0 , y − y 0 ) \delta(x-x_0,y-y_0) δ(xx0,yy0)是二维脉冲函数,表示在 ( x 0 , y 0 ) (x_0,y_0) (x0,y0)处的脉冲。

则图像可表示为一些列脉冲的叠加,其数学表达式:

f ( x , y ) = ∑ i = 1 N ∑ j = 1 N f ( i , j ) δ ( x − i , y − i ) f(x,y) = \sum_{i=1}^{N} \sum_{j=1}^{N} f(i,j)\delta(x-i,y-i) f(x,y)=i=1Nj=1Nf(i,j)δ(xi,yi)

其中,N是图像中的像素点个数,A_i是第i个像素点的幅值, ( x i , y i ) (x_i,y_i) (xi,yi)是第i个像素点的坐标。

图像处理系统

f ( x , y ) → image processing T → g ( x , y ) \ f(x,y) \rightarrow \begin{array}{|c|} \hline \text{image processing T} \\ \hline \end{array} \rightarrow g(x,y)  f(x,y)image processing Tg(x,y)

其中,f(x,y)是输入图像,g(x,y)是输出图像, T是图像处理系统.
所以数学表达式为:

g ( x , y ) = T [ f ( x , y ) ] = T [ ∑ i = 1 N ∑ j = 1 N f ( i , j ) δ ( x − i , y − i ) ] g(x,y) = T[f(x,y)] = T\left[\sum_{i=1}^{N} \sum_{j=1}^{N} f(i,j)\delta(x-i,y-i)\right] g(x,y)=T[f(x,y)]=T[i=1Nj=1Nf(i,j)δ(xi,yi)]

如果T是线性的,则有:

g ( x , y ) = ∑ i = 1 N ∑ j = 1 N f ( i , j ) T [ δ ( x − i , y − i ) ] g(x,y) = \sum_{i=1}^{N} \sum_{j=1}^{N} f(i,j)T[\delta(x-i,y-i)] g(x,y)=i=1Nj=1Nf(i,j)T[δ(xi,yi)]

h ( x , y ) = T [ δ ( x , y ) ] h(x,y) = T[\delta(x,y)] h(x,y)=T[δ(x,y)],即为T的冲激响应。
如果T是时不变系统,则h(x,y)是固定的,不随输入的位置变化,可以在整个空间内平移。则有:

g ( x , y ) = ∑ i = 1 N ∑ j = 1 N f ( i , j ) h ( x − i , y − i ) = f ( x , y ) ∗ h ( x , y ) g(x,y) = \sum_{i=1}^{N} \sum_{j=1}^{N} f(i,j)h(x-i,y-i)=f(x,y)*h(x,y) g(x,y)=i=1Nj=1Nf(i,j)h(xi,yi)=f(x,y)h(x,y)

  • 只用时不变系统才能用卷积计算,时不变系统指的是输入信号发生平易,输出信号也发生平移,不会因位置的不同而产生额外的变化。

T { δ ( x − i , y − j ) } = h ( x − i , y − j ) T \{\delta(x-i,y-j)\} = h(x-i,y-j) T{δ(xi,yj)}=h(xi,yj)

  • h(x,y)也就是滤波器,是固定的,不随输入的位置变化,则其在空间内平移就可以计算图像输出,而不需要做额外的变化。
  • 如果h(x,y)是变化的,则在不同的位置输出不一样,不能用单一的h(x,y)来计算输出。

二维傅立叶变换

傅立叶变换为将信号从时域转化为频域。其核心思想是将一个信号分解为不同频率的正弦波叠加。其视觉呈现可参考3B1B的视频。
https://www.youtube.com/watch?v=spUNpyF58BY&t=441s

基础公式
  • 欧拉公式:
    e i θ = cos ⁡ θ + i sin ⁡ θ e^{i\theta} = \cos\theta + i\sin\theta eiθ=cosθ+isinθ
  • 连续傅立叶变换:
    F ( u , v ) = ∫ − ∞ ∞ ∫ − ∞ ∞ f ( x , y ) e − i 2 π ( u x + v y ) d x d y F(u,v) = \int_{-\infty}^{\infty}\int_{-\infty}^{\infty}f(x,y)e^{-i2\pi(ux+vy)}dxdy F(u,v)=f(x,y)ei2π(ux+vy)dxdy
  • 离散傅立叶变换:
    F ( u , v ) = ∑ x = 0 M − 1 ∑ y = 0 N − 1 f ( x , y ) e − i 2 π ( u x / M + v y / N ) F(u,v) = \sum_{x=0}^{M-1}\sum_{y=0}^{N-1}f(x,y)e^{-i2\pi(ux/M+vy/N)} F(u,v)=x=0M1y=0N1f(x,y)ei2π(ux/M+vy/N)
  • 逆傅立叶变换:
    f ( x , y ) = ∫ − ∞ ∞ ∫ − ∞ ∞ F ( u , v ) e i 2 π ( u x + v y ) d u d v f(x,y) = \int_{-\infty}^{\infty}\int_{-\infty}^{\infty}F(u,v)e^{i2\pi(ux+vy)}dudv f(x,y)=F(u,v)ei2π(ux+vy)dudv
  • 离散傅立叶变换的逆变换:
    f ( x , y ) = 1 M N ∑ u = 0 M − 1 ∑ v = 0 N − 1 F ( u , v ) e i 2 π ( u x / M + v y / N ) f(x,y) = \frac{1}{MN}\sum_{u=0}^{M-1}\sum_{v=0}^{N-1}F(u,v)e^{i2\pi(ux/M+vy/N)} f(x,y)=MN1u=0M1v=0N1F(u,v)ei2π(ux/M+vy/N)
  • 傅立叶变换具有可分离性,即:
    F ( u , v ) = ∫ − ∞ ∞ [ ∫ − ∞ ∞ f ( x , y ) e − i 2 π v y d y ] e − i 2 π u x d x = ∫ − ∞ ∞ F x ( u , y ) e − i 2 π u x d x F(u,v) = \int_{-\infty}^{\infty}\left[\int_{-\infty}^{\infty}f(x,y)e^{-i2\pi vy}dy\right]e^{-i2\pi ux}dx = \int_{-\infty}^{\infty}F_x(u,y)e^{-i2\pi ux}dx F(u,v)=[f(x,y)ei2πvydy]ei2πuxdx=Fx(u,y)ei2πuxdx
  • 离散傅立叶变换的可分离性:
    F ( u , v ) = 1 M N ∑ x = 0 M − 1 [ ∑ y = 0 N − 1 f ( x , y ) e − i 2 π v y / N ] e − i 2 π u x / M = 1 M ∑ x = 0 M − 1 F x ( u , y ) e − i 2 π u x / M F(u,v) = \frac{1}{MN}\sum_{x=0}^{M-1}\left[\sum_{y=0}^{N-1}f(x,y)e^{-i2\pi vy/N}\right]e^{-i2\pi ux/M} = \frac{1}{M}\sum_{x=0}^{M-1}F_x(u,y)e^{-i2\pi ux/M} F(u,v)=MN1x=0M1[y=0N1f(x,y)ei2πvy/N]ei2πux/M=M1x=0M1Fx(u,y)ei2πux/M
DFT 性质

傅立叶变换得到的频谱图像是复数,通常用幅度谱和相位谱来表示,幅度谱是复数的模,相位谱是复数的辐角。数学表达:

F ( u , v ) = R ( u , v ) + j I ( u , v ) = ∣ F ( u , v ) ∣ e i θ ( u , v ) F(u,v) = R(u,v) + jI(u,v)= |F(u,v)|e^{i\theta(u,v)} F(u,v)=R(u,v)+jI(u,v)=F(u,v)eiθ(u,v)

其中:

∣ F ( u , v ) ∣ = R 2 ( u , v ) + I 2 ( u , v ) |F(u,v)| = \sqrt{R^2(u,v) + I^2(u,v)} F(u,v)=R2(u,v)+I2(u,v)

θ ( u , v ) = arctan ⁡ ( I ( u , v ) R ( u , v ) ) \theta(u,v) = \arctan\left(\frac{I(u,v)}{R(u,v)}\right) θ(u,v)=arctan(R(u,v)I(u,v))

在图像应用中,通常用幅度谱来表示频谱图像,因为幅度谱包含了图像的主要信息,而相位谱则包含了图像的细节信息。

  • 周期性
    F ( u , v ) = F ( u + m , v ) = F ( u , v + n ) F(u,v) = F(u+m,v) = F(u,v+n) F(u,v)=F(u+m,v)=F(u,v+n)
  • 共轭对称性
    F ( u , v ) = F ∗ ( − u , − v ) F(u,v) = F^*(-u,-v) F(u,v)=F(u,v)
  • 线性性
    a F 1 ( u , v ) + b F 2 ( u , v ) = F ( a u , v ) + F ( b u , v ) aF_1(u,v) + bF_2(u,v) = F(au,v) + F(bu,v) aF1(u,v)+bF2(u,v)=F(au,v)+F(bu,v)
  • 卷积
    f ( x , y ) ∗ g ( x , y ) = ∫ − ∞ ∞ ∫ − ∞ ∞ f ( α , β ) g ( x − α , y − β ) d α d β f ( x , y ) ∗ g ( x , y ) ⟺ F ( u , v ) G ( u , v ) f ( x , y ) g ( x , y ) ⟺ F ( u , v ) ∗ G ( u , v ) f(x,y) * g(x,y) = \int_{-\infty}^{\infty} \int_{-\infty}^{\infty} f(\alpha, \beta) g(x - \alpha, y - \beta) d\alpha d\beta \\ f(x,y) * g(x,y) \iff F(u,v) G(u,v) \\ f(x,y) g(x,y) \iff F(u,v) * G(u,v) f(x,y)g(x,y)=f(α,β)g(xα,yβ)dαdβf(x,y)g(x,y)F(u,v)G(u,v)f(x,y)g(x,y)F(u,v)G(u,v)
  • 旋转

x = r cos ⁡ θ , y = r sin ⁡ θ , u = ω cos ⁡ φ , v = ω sin ⁡ φ f ( r , θ + θ 0 ) ⟺ F ( ω , φ + θ 0 ) x = r \cos \theta, \quad y = r \sin \theta, \quad u = \omega \cos \varphi, \quad v = \omega \sin \varphi \\ f(r, \theta + \theta_0) \iff F(\omega, \varphi + \theta_0) x=rcosθ,y=rsinθ,u=ωcosφ,v=ωsinφf(r,θ+θ0)F(ω,φ+θ0)

  • 旋转不变性

g ( u , v ) = 1 π ∫ 0 2 π ∫ 0 1 e − j ( 2 π u r 2 + v θ ) f ( r , θ ) d r d θ g(u,v) = \frac{1}{\pi} \int_0^{2\pi} \int_0^1 e^{-j(2\pi ur^2 + v\theta)} f(r, \theta) dr d\theta g(u,v)=π102π01ej(2πur2+vθ)f(r,θ)drdθ

zero padding

zero padding 主要是为了要解决周期性混叠以及循环卷积的问题。采样定理是解决信号混叠的问题,不能解决循环卷积以及周期性混叠的问题。

首先要了解周期延拓的概念:在DFT变换时,隐式的认为信号是无限重复的。

因为信号是无限周期重复的,所以在做卷积运算时,当计算至数据的末尾时,会将下一个周期的头部数据纳入计算,出现循环卷积的现象。

在这里插入图片描述正是因为这种计算方式,导致可能会将图片的左边和右边混在一起。所以需要在图片两边做zero padding.

  • zero padding 的尺寸
    • DFT 计算一维信号时,如果有2个信号分别为 N 和 M,那么需要做 zero padding 到 N+M-1 的尺寸
    • DFT 计算二维信号时,如果有2个信号分别为 NxM 和 PxQ,那么需要做 zero padding 到 (N+P-1)x(M+Q-1) 的尺寸
为什么滤波用DFT, 而图像压缩用DCT?
  • DFT 计算为复数,可以同时表示信号的幅度和相位信息,便于详细的滤波处理。
  • DCT 计算为实数,减少了存储和计算的复杂性。
  • DCT 变换后大多数的能量集中在低频信号,更符合人眼的视觉特性。

图像采样

连续信号 $ f_c(x,y)$ 转化为 f d ( x , y ) f_d(x,y) fd(x,y) 需要经过以下两步:

  • 采样 Sampling
    采样主要是将连续的 ( x , y ) (x,y) (x,y)转化为离散的 ( m , n ) (m,n) (m,n),决定图片的分辨率,决定了图片保留的信息。如果采样不足,会产生不可逆的信息丢失。
  • 量化 Quantization
    量化主要是针对 f d ( m , n ) f_d(m,n) fd(m,n)量化,将其映射到有限的灰度级上。主要决定了灰度的精度以及视觉效果。

综上:采样过程影响的更大。所以重点关注采样过程。

采样过程

真实世界的信号一般都是带限信号(band-limited)即:

F ( u , v ) = 0 , for ∣ u ∣ > U 0 or ∣ v ∣ > V 0 F(u,v) = 0, \quad \text{for} \quad |u| > U_0 \quad \text{or} \quad |v| > V_0 F(u,v)=0,foru>U0orv>V0

其中, U 0 U_0 U0 V 0 V_0 V0是带限信号的最大频率。

针对真实信号的采样函数为:

s ( x , y ) = ∑ k = − ∞ ∞ ∑ l = − ∞ ∞ δ ( x − m Δ x , n − Δ y ) s(x,y) = \sum_{k=-\infty}^{\infty} \sum_{l=-\infty}^{\infty} \delta(x-m \Delta x,n-\Delta y) s(x,y)=k=l=δ(xmΔx,nΔy)

其傅立叶变换为:

S ( u , v ) = 1 Δ x Δ y ∑ k = − ∞ ∞ ∑ l = − ∞ ∞ δ ( u − k Δ x , v − l Δ y ) S(u,v) = \frac{1}{\Delta x \Delta y} \sum_{k=-\infty}^{\infty} \sum_{l=-\infty}^{\infty} \delta(u-\frac{k}{\Delta x},v-\frac{l}{\Delta y}) S(u,v)=ΔxΔy1k=l=δ(uΔxk,vΔyl)

故连续信号 f ( x , y ) f(x,y) f(x,y) 转换为离散信号可以表示为:

f d ( x , y ) = f c ( x , y ) s ( x , y ) = ∑ m = − ∞ ∞ ∑ n = − ∞ ∞ f c ( m Δ x , n Δ y ) δ ( x − m Δ x , y − n Δ y ) \textcolor{red}{f_d(x, y)} = f_c(x,y) s(x,y) = \sum_{m=-\infty}^{\infty} \sum_{n=-\infty}^{\infty} \textcolor{blue}{f_c(m\Delta x, n\Delta y)} \delta(x - m\Delta x, y - n\Delta y) fd(x,y)=fc(x,y)s(x,y)=m=n=fc(mΔx,nΔy)δ(xmΔx,ynΔy)

其傅立叶变换为:

F d ( u , v ) = F c ( u , v ) ∗ S ( u , v ) = ∑ m = − ∞ ∞ ∑ n = − ∞ ∞ F c ( u − m Δ x , v − n Δ y ) = ∑ m = − ∞ ∞ ∑ n = − ∞ ∞ F c ( u − m f x s , v − n f y s ) \textcolor{red}{F_d(u, v)} = F_c(u,v) * S(u,v) = \sum_{m=-\infty}^{\infty} \sum_{n=-\infty}^{\infty} F_c(u-\frac{m}{\Delta x},v-\frac{n}{\Delta y}) = \sum_{m=-\infty}^{\infty} \sum_{n=-\infty}^{\infty} F_c(u - mf_{xs},v - nf_{ys}) Fd(u,v)=Fc(u,v)S(u,v)=m=n=Fc(uΔxm,vΔyn)=m=n=Fc(umfxs,vnfys)

可以得到其以 ( 1 Δ x , 1 Δ y ) (\frac{1}{\Delta x}, \frac{1}{\Delta y}) (Δx1,Δy1)为周期的周期延拓. 故若不想出现频率混叠,且已知 U 0 U_0 U0 V 0 V_0 V0是带限信号的最大频率,则有:

f x s = 1 Δ x ≥ 2 U 0 , f y s = 1 Δ y ≥ 2 V 0 f_{xs} =\frac{1}{\Delta x}\geq 2U_0, f_{ys} = \frac{1}{\Delta y}\geq 2V_0 fxs=Δx12U0,fys=Δy12V0

其中$ \frac{1}{2U_0} 和 和 \frac{1}{2V_0}$分别为Nyquist间隔。上述不等式即描述采样定理。若满足上述不等式,即可不丢失信息的情况下对信号进行采样。

恢复原始信号

可以应用理想低通滤波器恢复原始信号:

H ( u , v ) = { Δ x Δ y , ( u , v ) ∈ ( − U 0 , U 0 ) × ( − V 0 , V 0 ) 0 , others H(u,v)=\left\{ \begin{array}{ll} \Delta x\Delta y, & (u,v) \in (-U_0, U_0) \times (-V_0, V_0)\\ 0, & \text{others} \end{array} \right. H(u,v)={ΔxΔy,0,(u,v)(U0,U0)×(V0,V0)others

其恢复的信号为:

f c ( x , y ) = h ( x , y ) ∗ f d ( x , y ) = h ( x , y ) ∗ ∑ m = − ∞ ∞ ∑ n = − ∞ ∞ f c ( m Δ x , n Δ y ) δ ( x − m Δ x , y − n Δ y ) = ∑ m = − ∞ ∞ ∑ n = − ∞ ∞ f c ( m Δ x , n Δ y ) h ( x , y ) ∗ δ ( x − m Δ x , y − n Δ y ) = ∑ m = − ∞ ∞ ∑ n = − ∞ ∞ f c ( m Δ x , n Δ y ) h ( x − m Δ x , y − n Δ y ) = ∑ m = − ∞ ∞ ∑ n = − ∞ ∞ f d ( m , n ) h ( x − m Δ x , y − n Δ y ) \begin{aligned} f_c(x,y) &= h(x,y) * \textcolor{red}{f_d(x,y)} \\ &= h(x,y) * \sum_{m=-\infty}^{\infty} \sum_{n=-\infty}^{\infty} \textcolor{blue}{f_c(m\Delta x, n\Delta y)} \delta(x - m\Delta x, y - n\Delta y) \\ &= \sum_{m=-\infty}^{\infty} \sum_{n=-\infty}^{\infty} \textcolor{blue}{f_c(m\Delta x, n\Delta y)} h(x,y) * \delta(x - m\Delta x, y - n\Delta y) \\ &= \sum_{m=-\infty}^{\infty} \sum_{n=-\infty}^{\infty} \textcolor{blue}{f_c(m\Delta x, n\Delta y)} h(x - m\Delta x, y - n\Delta y) \\ &= \sum_{m=-\infty}^{\infty} \sum_{n=-\infty}^{\infty} \textcolor{green}{f_d(m,n)} h(x - m\Delta x, y - n\Delta y) \end{aligned} fc(x,y)=h(x,y)fd(x,y)=h(x,y)m=n=fc(mΔx,nΔy)δ(xmΔx,ynΔy)=m=n=fc(mΔx,nΔy)h(x,y)δ(xmΔx,ynΔy)=m=n=fc(mΔx,nΔy)h(xmΔx,ynΔy)=m=n=fd(m,n)h(xmΔx,ynΔy)

综上:若想避免混叠,可以在采样前先对原始图像 f c ( x , y ) f_c(x,y) fc(x,y)进行低通滤波,使其带宽小于采样频率,避免混叠。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词