DFT, DHT, DCT, DST

Gonzalez R. C. and Woods R. E. Digital Image Processing (Forth Edition)

基本

酉变换

一维的变换:
t = A f , f = A H t , A H = A ∗ T , A H A = I . \mathbf{t} = \mathbf{A} \mathbf{f}, \\ \mathbf{f} = \mathbf{A}^{H} \mathbf{t}, \\ \mathbf{A}^H = {\mathbf{A}^*}^{T}, \mathbf{A}^H\mathbf{A} = \mathbf{I}. t=Af,f=AHt,AH=AT,AHA=I.
以及二维的变换:
T = A F B T , F = A H T B ∗ , A H A = I , B T B ∗ = I . \mathbf{T} = \mathbf{A} \mathbf{F} \mathbf{B}^T, \\ \mathbf{F} = \mathbf{A}^H \mathbf{T} \mathbf{B}^*, \\ \mathbf{A}^H\mathbf{A=I}, \mathbf{B}^{T}\mathbf{B}^* =\mathbf{I}. T=AFBT,F=AHTB,AHA=I,BTB=I.

以一维的为例, 实际上就是
t u = ∑ x = 0 N − 1 f x s ( x , u ) = f T s u , u = 0 , 1 , ⋯   , N − 1 , s u = [ s ( 0 , u ) , s ( 1 , u ) , ⋯   , s ( N − 1 , u ) ] T . t_u = \sum_{x = 0}^{N-1} f_x s(x, u) = \mathbf{f}^T \mathbf{s}_u, u=0,1,\cdots, N-1,\\ \mathbf{s}_u = [s(0, u), s(1, u), \cdots, s(N-1, u)]^T. tu=x=0N1fxs(x,u)=fTsu,u=0,1,,N1,su=[s(0,u),s(1,u),,s(N1,u)]T.

A = [ s 0 , ⋯   , s N − 1 ] T . \mathbf{A} = [\mathbf{s}_0, \cdots, \mathbf{s}_{N-1}]^{T}. A=[s0,,sN1]T.

others

∑ k = 0 n sin ⁡ ( k x ) = cos ⁡ ( 1 2 x ) − cos ⁡ ( 2 n + 1 2 x ) 2 sin ⁡ ( x 2 ) , x ∈ ( 2 K π , 2 ( K + 1 ) π ) \sum_{k=0}^n \sin (kx) = \frac{\cos(\frac{1}{2}x) - \cos (\frac{2n+1}{2}x)}{2 \sin (\frac{x}{2})}, \quad x \in (2K\pi, 2(K+1)\pi) k=0nsin(kx)=2sin(2x)cos(21x)cos(22n+1x),x(2Kπ,2(K+1)π)

proof:

2 sin ⁡ ( x 2 ) ∑ k = 0 n sin ⁡ ( k x ) = ∑ k = 0 n [ cos ⁡ ( 2 k − 1 2 x ) − cos ⁡ ( 2 k + 1 2 x ) ] = cos ⁡ ( 1 2 x ) − cos ⁡ ( 2 n + 1 2 x ) . \begin{array}{ll} 2\sin (\frac{x}{2}) \sum_{k=0}^n \sin (kx) &=\sum_{k=0}^n [\cos (\frac{2k-1}{2}x) -\cos (\frac{2k+1}{2}x) ]\\ &= \cos(\frac{1}{2}x) - \cos (\frac{2n+1}{2}x). \end{array} 2sin(2x)k=0nsin(kx)=k=0n[cos(22k1x)cos(22k+1x)]=cos(21x)cos(22n+1x).

类似地
∑ k = 0 n cos ⁡ ( k x ) = sin ⁡ ( 2 k + 1 2 x ) + sin ⁡ ( 1 2 x ) 2 sin ⁡ ( 1 2 x ) , x ∈ ( 2 K π , 2 ( K + 1 ) π ) \sum_{k=0}^n \cos (kx) = \frac{\sin(\frac{2k+1}{2}x) + \sin (\frac{1}{2}x)}{2 \sin (\frac{1}{2}x)}, \quad x \in (2K\pi, 2(K+1)\pi) k=0ncos(kx)=2sin(21x)sin(22k+1x)+sin(21x),x(2Kπ,2(K+1)π)

proof:

2 sin ⁡ ( x 2 ) ∑ k = 0 n cos ⁡ ( k x ) = ∑ k = 0 n [ sin ⁡ ( 2 k + 1 2 x ) − sin ⁡ ( 2 k − 1 2 x ) ] = sin ⁡ ( 2 k + 1 2 x ) + sin ⁡ ( 1 2 x ) . \begin{array}{ll} 2\sin (\frac{x}{2}) \sum_{k=0}^n \cos (kx) &=\sum_{k=0}^n [\sin (\frac{2k+1}{2}x) -\sin (\frac{2k-1}{2}x) ]\\ &= \sin(\frac{2k+1}{2}x) + \sin (\frac{1}{2}x). \end{array} 2sin(2x)k=0ncos(kx)=k=0n[sin(22k+1x)sin(22k1x)]=sin(22k+1x)+sin(21x).

Fourier-related Transforms

DFT

s ( x , u ) = 1 N e − j 2 π x u N s(x, u) = \frac{1}{\sqrt{N}} e^{\frac{-j2\pi xu}{N}} s(x,u)=N 1eNj2πxu

s u H s u = 1 \mathbf{s}_u^H \mathbf{s}_u = 1 suHsu=1是显然的, 又注意到
s u H s u ′ = 1 N ∑ x = 0 N − 1 e − j 2 π x ( u − u ′ ) N , \mathbf{s}_u^H \mathbf{s}_{u'} = \frac{1}{N}\sum_{x=0}^{N-1} e^{\frac{-j2\pi x(u-u')}{N}}, suHsu=N1x=0N1eNj2πx(uu),

∑ n = 0 N − 1 a n = 1 − a N 1 − a , \sum_{n=0}^{N-1} a^n = \frac{1-a^N}{1-a}, n=0N1an=1a1aN,
由于
e − j 2 π x ( u − u ′ ) = 1 , ∀ u ≠ u ′ . e^{-j2\pi x (u - u')} = 1, \forall u \not = u'. ej2πx(uu)=1,u=u.

DHT

DISCRETE HARTLEY TRANSFORM

s ( x , u ) = 1 N c a s ( 2 π x u N ) = 1 N [ cos ⁡ ( 2 π u x N ) + sin ⁡ ( 2 π u x N ) ] . s(x, u) = \frac{1}{\sqrt{N}}\mathrm{cas}(\frac{2\pi xu}{N}) = \frac{1}{\sqrt{N}}[\cos (\frac{2\pi ux}{N}) + \sin (\frac{2\pi ux}{N})]. s(x,u)=N 1cas(N2πxu)=N 1[cos(N2πux)+sin(N2πux)].

2 cos ⁡ ( 2 π u x N ) cos ⁡ ( 2 π u ′ x N ) = cos ⁡ ( 2 π ( u − u ′ ) x N ) + cos ⁡ ( 2 π ( u + u ′ ) x N ) 2 sin ⁡ ( 2 π u x N ) sin ⁡ ( 2 π u ′ x N ) = cos ⁡ ( 2 π ( u − u ′ ) x N ) − cos ⁡ ( 2 π ( u + u ′ ) x N ) 2 sin ⁡ ( 2 π u x N ) cos ⁡ ( 2 π u ′ x N ) = sin ⁡ ( 2 π ( u + u ′ ) x N ) − sin ⁡ ( 2 π ( u − u ′ ) x N ) 2\cos (\frac{2\pi ux}{N}) \cos (\frac{2\pi u'x}{N}) =\cos (\frac{2\pi (u-u')x}{N}) +\cos (\frac{2\pi (u+u')x}{N}) \\ 2\sin (\frac{2\pi ux}{N}) \sin (\frac{2\pi u'x}{N}) =\cos (\frac{2\pi (u-u')x}{N}) -\cos (\frac{2\pi (u+u')x}{N}) \\ 2\sin (\frac{2\pi ux}{N}) \cos (\frac{2\pi u'x}{N}) =\sin (\frac{2\pi (u+u')x}{N}) -\sin (\frac{2\pi (u-u')x}{N}) \\ 2cos(N2πux)cos(N2πux)=cos(N2π(uu)x)+cos(N2π(u+u)x)2sin(N2πux)sin(N2πux)=cos(N2π(uu)x)cos(N2π(u+u)x)2sin(N2πux)cos(N2πux)=sin(N2π(u+u)x)sin(N2π(uu)x)

故想要证明其为标准正交基, 只需注意到:
∑ x = 0 N − 1 sin ⁡ ( 2 π k x N ) = cos ⁡ ( k π N ) − cos ⁡ ( ( 2 N − 1 ) k π N ) . . . , \sum_{x=0}^{N-1} \sin (\frac{2\pi k x}{N}) =\frac{\cos(\frac{k\pi}{N}) - \cos (\frac{(2N-1)k\pi}{N})}{...}, x=0N1sin(N2πkx)=...cos(Nkπ)cos(N(2N1)kπ),
k ≠ 0 k\not=0 k=0的时候, 有
cos ⁡ ( ( 2 N − 1 ) k π N ) = cos ⁡ ( k π N ) , \cos (\frac{(2N-1)k\pi}{N}) = \cos (\frac{k\pi}{N}), cos(N(2N1)kπ)=cos(Nkπ),

∑ x = 0 N − 1 sin ⁡ ( 2 π k x N ) = 0 , k ≠ 0. \sum_{x=0}^{N-1}\sin (\frac{2\pi kx}{N}) =0, k\not=0. x=0N1sin(N2πkx)=0,k=0.
类似可得:

∑ x = 0 N − 1 cos ⁡ ( 2 π k x N ) = 0 , k ≠ 0. \sum_{x=0}^{N-1}\cos (\frac{2\pi kx}{N}) =0, k\not=0. x=0N1cos(N2πkx)=0,k=0.

正交性如此是易证明的, 实际上标准性是显然的.

DCT

DISCRETE COSINE TRANSFORM

s ( x , u ) = α ( u ) cos ⁡ ( ( 2 x + 1 ) u π 2 N ) , α ( u ) = { 1 N , u = 0 , 2 N , u = 1 , 2 , ⋯   , N − 1. s(x, u) = \alpha (u) \cos (\frac{(2x + 1)u\pi}{2N}), \\ \alpha (u) = \left \{ \begin{array}{ll} \sqrt{\frac{1}{N}}, & u=0, \\ \sqrt{\frac{2}{N}}, & u=1,2,\cdots, N-1. \\ \end{array} \right . s(x,u)=α(u)cos(2N(2x+1)uπ),α(u)=N1 ,N2 ,u=0,u=1,2,,N1.

其标准正交的思路和DHT是如出一辙的.

与DFT的联系
  1. 定义

g ( x ) = { f ( x ) , x = 0 , 1 , ⋯   , N − 1 , f ( 2 N − x − 1 ) , u = N , N + 1 , ⋯   , 2 N − 1. g(x) = \left \{ \begin{array}{ll} f(x), & x = 0, 1, \cdots, N-1, \\ f(2N-x-1), & u=N, N+1, \cdots, 2N-1. \\ \end{array} \right . g(x)={f(x),f(2Nx1),x=0,1,,N1,u=N,N+1,,2N1.

此时 g ( x ) = g ( 2 N − 1 − x ) g(x) = g(2N-1-x) g(x)=g(2N1x);

  1. 计算DFT

t F = A F g = [ t 1 t 2 ] . \mathbf{t}_F = \mathbf{A}_F \mathbf{g} = \left [ \begin{array}{c} \mathbf{t}_1 \\ \mathbf{t}_2 \\ \end{array} \right ]. tF=AFg=[t1t2].

  1. 定义

h ( u ) = e − j π u / 2 N , u = 0 , 1 , ⋯   , N − 1 , s = [ 1 / 2 , 1 , 1 , ⋯   , 1 ] T . h(u) = e^{-j\pi u / 2N}, u=0,1,\cdots, N-1, \\ \mathbf{s} = [1 / \sqrt{2}, 1, 1, \cdots, 1]^T. h(u)=ejπu/2N,u=0,1,,N1,s=[1/2 ,1,1,,1]T.

t C = R e { s ∘ h ∘ t 1 } . \mathbf{t}_C = \mathrm{Re}\{\mathbf{s\circ h \circ t_1}\}. tC=Re{sht1}.

其中 R e \mathrm{Re} Re表示实部, ∘ \circ 表示逐项乘法.

证明是平凡的.

DST

DISCRETE SINE TRANSFORM

s ( x , u ) = 2 N + 1 sin ⁡ ( ( x + 1 ) ( u + 1 ) π N + 1 ) . s(x, u) = \sqrt{\frac{2}{N+1}} \sin (\frac{(x+1)(u+1)\pi}{N+1}). s(x,u)=N+12 sin(N+1(x+1)(u+1)π).

与DFT的联系
  1. 定义

g ( x ) = { 0 , x = 0 , f ( x − 1 ) , x = 1 , ⋯   , N , 0 , x = N + 1 , − f ( 2 N − x + 1 ) , u = N + 1 , ⋯   , 2 N + 1. g(x) = \left \{ \begin{array}{ll} 0, & x = 0, \\ f(x-1), & x = 1, \cdots, N, \\ 0, & x = N + 1, \\ -f(2N-x+1), & u=N+1, \cdots, 2N+1. \\ \end{array} \right . g(x)=0,f(x1),0,f(2Nx+1),x=0,x=1,,N,x=N+1,u=N+1,,2N+1.

此时 g ( x ) = − g ( 2 N + 2 − x ) g(x) = -g(2N + 2 - x) g(x)=g(2N+2x).

  1. DFT

t F = A F g = [ 0 t 1 0 t 2 ] . \mathbf{t}_F = \mathbf{A}_F \mathbf{g} = \left [ \begin{array}{c} 0 \\ \mathbf{t}_1 \\ 0 \\ \mathbf{t}_2 \\ \end{array} \right ]. tF=AFg=0t10t2.

t S = − I m a g { t 1 } . \mathbf{t}_S = -\mathrm{Imag}\{\mathbf{t}_1\}. tS=Imag{t1}.

其中 I m a g \mathrm{Imag} Imag表虚部.

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值