Ch7 小波变换&其他图像变换
文章目录
- [Ch7 小波变换&其他图像变换](#Ch7 小波变换&其他图像变换)
-
- 背景知识(bk)
-
- [图像金字塔(Image Pyramid)](#图像金字塔(Image Pyramid))
- [子带编码(Sub-band Coding)](#子带编码(Sub-band Coding))
-
- [Z - 变换(线性变换)](#Z - 变换(线性变换))
- [完美重建滤波器组(PCFB, Perfect Construction Filter Banks)](#完美重建滤波器组(PCFB, Perfect Construction Filter Banks))
- [哈尔变换(Haar Transform)](#哈尔变换(Haar Transform))
绿色:考、红色:不考、黄色:可看。
个人博客!无广告观看,因为这节内容太多了,有点放不下
Q: 为什么我们需要小波变换?
A: 那当然是因为傅里叶变换有缺陷。时域(空域)上的函数经过傅里叶变换之后,得到频域上对应的函数。当然二者是等价的,但是频域上的函数只含有频域信息、时域上的函数也只含有时域信息。
这就导致了一个问题:我们没法根据 F ( u , v ) F(u,v) F(u,v)还原出原始的具有时间信息的时域函数(就是在一段时间内:存在固定频率的波形、经过不同顺序的排列:显然它们的时域函数不同、但是得到的频域函数确实完全一致的)。这说明傅里叶变换的时候丢失了时间的信息。
这也和测量不准性一致(海森堡定理):时域和频域就像跷跷板的两端,我们没法都做到最好、要么取极端、要么取中庸。
在量子力学中,海森堡不确定性原理指出,我们不能同时精确地测量粒子的位置和动量,类似地,在傅里叶分析中,我们不能同时在时域和频域中获得完全精确的信息。
Q: 小波变换的优势?
A: 1. 弥补傅里叶变换丢失时域信息
2. 具有多分辨率分析的能力,能够在不同尺度下对信号进行分析(可以在不同分辨率下提取特征).
背景知识(bk)
图像金字塔(Image Pyramid)
一幅图像的金字塔是一系列以金字塔形状排列的分辨率逐步降低的图像集合。
下图是拉普拉斯金字塔的构建:
- 图(a)建立了一个简单的图像金字塔系统。 j − 1 j-1 j−1级的近似输出用来建立近似值金字塔,包括原始图像的一个or多个近似值。
- 图(b)表明:近似值和预测残差金字塔都是以一种迭代的方式进行计算的。 2 ↑ 2\uparrow 2↑:上采样(插值)、 2 ↓ 2\downarrow 2↓:下采样。
下图中:上图表示高斯金字塔、下图表示拉普拉斯金字塔。分辨率:512\256\128\64
若要生成拉普拉斯金字塔,必须先生成高斯金字塔。拉普拉斯金字塔首先从 64 × 64 64\times 64 64×64大小的近似图像开始,预测( 插值or滤波实现 ) 128 × 128 128\times 128 128×128的高斯图像。对应的拉普拉斯金字塔图像=原始图像-上采样预测图像( 得到的插值 )。
子带编码(Sub-band Coding)
子带编码:一副图像被分解为一系列带限分量的集合,称为子带,它们可以重组在一起无失真地重建原始图像。每个子带可以通过带通滤波得到;因为得到的子带带宽比原始图像带宽小,因此子带可以无损地下采样( 奈奎斯特定理 )。原始图像的重建可以通过插值、滤波、叠加单个子带来完成。
Q: 得到的经过上下采样后的 g 0 ( n ) g_0(n) g0(n)与原始信号 h 0 ( n ) h_0(n) h0(n)一致吗?
A:通常来是不等的。上采样:插0.
Z - 变换(线性变换)
傅里叶变换是Z - 变换的一个特例。当 z z z取复平面上单位圆上的一个点 e j w e^{jw} ejw的时候,就是离散傅里叶变换的形式。
X ( z ) = ∑ n = − ∞ ∞ x ( n ) z − n X ( k ) = ∑ n = − ∞ ∞ x ( n ) e − j w n = ∑ n = − ∞ ∞ x ( n ) e − j 2 π N k n , k = 0 , 1 , ... , N − 1 X(z)=\sum_{n =-\infty}^{\infty}x(n)z^{-n}\\ X(k)=\sum_{n =-\infty}^{\infty}x(n)e^{-jwn}=\sum_{n =-\infty}^{\infty}x(n)e^{-j\frac{2\pi}{N}kn},\ k=0,1,\dots,N-1 X(z)=n=−∞∑∞x(n)z−nX(k)=n=−∞∑∞x(n)e−jwn=n=−∞∑∞x(n)e−jN2πkn, k=0,1,...,N−1
其中: x ( n ) x(n) x(n)是时域信号, z z z是复变量。
e.g. x ( n ) = ( 1 3 5 7 ) x(n)=\begin{pmatrix}1&3&5&7\end{pmatrix} x(n)=(1357),角标是 [ − 1 , 0 , 1 , 2 ] [-1,0,1,2] [−1,0,1,2]
那么 x ( z ) = 1 ⋅ z + 3 + 5 ⋅ z − 1 + 7 ⋅ z − 2 x(z)=1·z+3+5·z^{-1}+7·z^{-2} x(z)=1⋅z+3+5⋅z−1+7⋅z−2,可见Z-变换是将时域信号转换为一个多项式函数。
-
信号下采样Z-变换:
x d o w n ( n ) = x ( 2 n ) X d o w n ( z ) = 1 2 [ X ( z 1 2 ) + X ( − z 1 2 ) ] \begin{align} x_{down}(n)&=x(2n)\\ X_{down}(z)&=\frac{1}{2}[X(z^{\frac{1}{2}})+X(-z^{\frac{1}{2}})] \end{align} xdown(n)Xdown(z)=x(2n)=21[X(z21)+X(−z21)] -
信号上采样Z-变换:(上采样中间填充0)
x u p ( n ) = { x ( n / 2 ) , n = 0 , 2 , 4 , ⋯ 0 , otherwise X u p ( z ) = X ( z 2 ) \begin{align} x_{up}(n)&=\begin{cases}x(n/2),&n = 0,2,4,\cdots\\0,&\text{otherwise}\end{cases}\\ X_{up}(z)&=X(z^{2}) \end{align} xup(n)Xup(z)={x(n/2),0,n=0,2,4,⋯otherwise=X(z2)
结合下采样和上采样,得到:
X ^ ( z ) = 1 2 [ X ( z ) + X ( − z ) ] s . t . { x ^ ( n ) = Z − 1 [ X ^ ( z ) ] Z − 1 [ X ^ ( − z ) ] = ( − 1 ) n x ^ ( n ) \hat{X}(z)=\frac{1}{2}[X(z)+X(-z)]\\\\ s.t.\begin{cases} \hat{x}(n)=Z^{-1}[\hat{X}(z)]\\ Z^{-1}[\hat{X}(-z)]=(-1)^{n}\hat{x}(n) \end{cases} X^(z)=21[X(z)+X(−z)]s.t.{x^(n)=Z−1[X^(z)]Z−1[X^(−z)]=(−1)nx^(n)
一个双子带编码和解码系统可表示为:
X ^ ( z ) = 1 2 G 0 ( z ) [ H 0 ( z ) X ( z ) + H 0 ( − z ) X ( − z ) ] + 1 2 G 1 ( z ) [ H 1 ( z ) X ( z ) + H 1 ( − z ) X ( − z ) ] \hat{X}(z)=\frac{1}{2}G_{0}(z)[H_{0}(z)X(z)+H_{0}(-z)X(-z)]+\\ \frac{1}{2}G_{1}(z)[H_{1}(z)X(z)+H_{1}(-z)X(-z)] X^(z)=21G0(z)[H0(z)X(z)+H0(−z)X(−z)]+21G1(z)[H1(z)X(z)+H1(−z)X(−z)]
其中滤波器 h 0 ( n ) h_{0}(n) h0(n)的输出由变换对定义:
h 0 ( n ) ∗ x ( n ) = ∑ k h 0 ( n − k ) x ( k ) ⇔ H 0 ( z ) X ( z ) h_{0}(n)*x(n)=\sum_{k}h_{0}(n - k)x(k)\Leftrightarrow H_{0}(z)X(z) h0(n)∗x(n)=k∑h0(n−k)x(k)⇔H0(z)X(z)
因为Z-变换是线性变换。重新排列上述方程中的项,得到 :
X ^ ( z ) = 1 2 [ H 0 ( z ) G 0 ( z ) + H 1 ( z ) G 1 ( z ) ] X ( z ) + 1 2 [ H 0 ( − z ) G 0 ( z ) + H 1 ( − z ) G 1 ( z ) ] X ( − z ) \hat{X}(z)=\frac{1}{2}[H_{0}(z)G_{0}(z)+H_{1}(z)G_{1}(z)]X(z)\\+\frac{1}{2}[H_{0}(-z)G_{0}(z)+H_{1}(-z)G_{1}(z)]X(-z) X^(z)=21[H0(z)G0(z)+H1(z)G1(z)]X(z)+21[H0(−z)G0(z)+H1(−z)G1(z)]X(−z)
我最终想要的结果是 X ^ ( z ) = X ( z ) \hat X(z)=X(z) X^(z)=X(z), 为了无误差地重建输入,施加以下条件:
H 0 ( z ) G 0 ( z ) + H 1 ( z ) G 1 ( z ) = 2 H 0 ( − z ) G 0 ( z ) + H 1 ( − z ) G 1 ( z ) = 0 H_{0}(z)G_{0}(z)+H_{1}(z)G_{1}(z)=2\\ H_{0}(-z)G_{0}(z)+H_{1}(-z)G_{1}(z)=0 H0(z)G0(z)+H1(z)G1(z)=2H0(−z)G0(z)+H1(−z)G1(z)=0
它们可以合并为单个矩阵表达式:
[ G 0 ( z ) G 1 ( z ) ] H m ( z ) = [ 2 0 ] H m ( z ) = [ H 0 ( z ) H 0 ( − z ) H 1 ( z ) H 1 ( − z ) ] [G_{0}(z)\quad G_{1}(z)]H_{m}(z)=[2\quad0]\\ H_{m}(z)=\begin{bmatrix}H_{0}(z)&H_{0}(-z)\\H_{1}(z)&H_{1}(-z)\end{bmatrix} [G0(z)G1(z)]Hm(z)=[20]Hm(z)=[H0(z)H1(z)H0(−z)H1(−z)]
其中 H m ( z ) H_m(z) Hm(z)是分析调制矩阵。
假设 H m ( z ) H_{m}(z) Hm(z)是非奇异(可逆),我们可以得到(此处就是非常普通的求解方程 A T x = b A^Tx=b ATx=b):
[ G 0 ( z ) G 1 ( z ) ] = 2 det ( H m ( z ) ) [ H 1 ( − z ) − H 0 ( − z ) ] \begin{bmatrix}G_{0}(z)\\G_{1}(z)\end{bmatrix}=\frac{2}{\text{det}(H_{m}(z))}\begin{bmatrix}H_{1}(-z)\\-H_{0}(-z)\end{bmatrix} [G0(z)G1(z)]=det(Hm(z))2[H1(−z)−H0(−z)]
上述方程表明 G 0 ( z ) G_{0}(z) G0(z)是 H 1 ( − z ) H_{1}(-z) H1(−z)的函数, G 1 ( z ) G_{1}(z) G1(z)是 H 0 ( − z ) H_{0}(-z) H0(−z)的函数。所以分析和合成滤波器是交叉调制的。
完美重建滤波器组(PCFB, Perfect Construction Filter Banks)
有限脉冲响应(FIR)滤波器
Q: 有限脉冲响应(FIR)滤波器?
A: 一种能够按照设计好的规则处理信号,并且它对脉冲信号的响应在一段时间后会结束的工具。
- 脉冲响应:当你给一个滤波器一个很特殊的输入,就像用小锤子敲一下(在信号里叫脉冲信号),滤波器会输出一个信号,这个输出信号就叫脉冲响应。
- 有限:对于 FIR 滤波器,它的脉冲响应在一段时间后就会变成零。通俗来讲,就像是你敲了一下小锤子,滤波器 "响" 了一会儿,然后就安静下来了,这个 "响" 的时间是有限的。
Q: 纯延迟?
A: 当一个信号通过这个系统时,其输出信号在时间轴上会向后移动一定的时间单位。如果把信号看作是一系列随时间变化的数值,那么经过这个系统后,每个数值出现的时间会推迟,而数值本身的大小等其他特性不变。
例子:例如,你对着山谷呼喊,声音传播到山谷对面再反射回来,你听到回声的过程就类似于一个延迟。声音本身除了延迟出现之外,没有其他变化。
对于有限脉冲响应(FIR)滤波器,分析调制矩阵 H m ( z ) H_{m}(z) Hm(z)的行列式是纯延迟:
det ( H m ( z ) ) = α z − ( 2 k + 1 ) \text{det}(H_{m}(z))=\alpha z^{-(2k + 1)} det(Hm(z))=αz−(2k+1)
z − ( 2 k + 1 ) z^{-(2k+1)} z−(2k+1)项可以被认为是任意的,因为它只是改变了滤波器的整体延迟。忽略延迟,令 α = 2 \alpha = 2 α=2并取逆 Z Z Z变换,得到:
g 0 ( n ) = ( − 1 ) n h 1 ( n ) g 1 ( n ) = ( − 1 ) n + 1 h 0 ( n ) \begin{align} &g_{0}(n)=(-1)^{n}h_{1}(n)\\ &g_{1}(n)=(-1)^{n + 1}h_{0}(n) \end{align} g0(n)=(−1)nh1(n)g1(n)=(−1)n+1h0(n)
如果 α = − 2 \alpha=-2 α=−2,得到的表达式符号反转,即:
g 0 ( n ) = ( − 1 ) n + 1 h 1 ( n ) g 1 ( n ) = ( − 1 ) n h 0 ( n ) \begin{align} &g_{0}(n)=(-1)^{n+1}h_{1}(n)\\ &g_{1}(n)=(-1)^{n}h_{0}(n) \end{align} g0(n)=(−1)n+1h1(n)g1(n)=(−1)nh0(n)
因此,FIR合成滤波器是分析滤波器的交叉调制版本,有且只有一个与分析滤波器方向相反。
双正交性(biorthogonality)
现在展示分析和合成滤波器的另一个重要特性:双正交性。
令 P ( z ) P(z) P(z)为低通分析和合成滤波器传递函数的乘积,得到:
P ( z ) = G 0 ( z ) H 0 ( z ) = 2 det ( H m ( z ) ) H 0 ( z ) H 1 ( − z ) P(z)=G_{0}(z)H_{0}(z)=\frac{2}{\text{det}(H_{m}(z))}H_{0}(z)H_{1}(-z) P(z)=G0(z)H0(z)=det(Hm(z))2H0(z)H1(−z)
由于 det ( H m ( z ) ) = − det ( H m ( − z ) ) \text{det}(H_{m}(z))=-\text{det}(H_{m}(-z)) det(Hm(z))=−det(Hm(−z)),乘积 G 1 ( z ) H 1 ( z ) G_{1}(z)H_{1}(z) G1(z)H1(z)可类似地定义为:
G 1 ( z ) H 1 ( z ) = − 2 det ( H m ( z ) ) H 0 ( − z ) H 1 ( z ) = P ( − z ) ∴ G 1 ( z ) H 1 ( z ) = P ( − z ) = G 0 ( − z ) H 0 ( − z ) G_{1}(z)H_{1}(z)=\frac{-2}{\text{det}(H_{m}(z))}H_{0}(-z)H_{1}(z)=P(-z)\\ \therefore G_{1}(z)H_{1}(z)=P(-z)=G_{0}(-z)H_{0}(-z) G1(z)H1(z)=det(Hm(z))−2H0(−z)H1(z)=P(−z)∴G1(z)H1(z)=P(−z)=G0(−z)H0(−z)
将其代入完美构建方程的约束条件,得到:
∵ H 0 ( z ) G 0 ( z ) + H 1 ( z ) G 1 ( z ) = 2 ∴ G 0 ( z ) H 0 ( z ) + G 0 ( − z ) H 0 ( − z ) = 2 \begin{align} &\because H_{0}(z)G_{0}(z)+H_{1}(z)G_{1}(z)=2\\ &\therefore G_{0}(z)H_{0}(z)+G_{0}(-z)H_{0}(-z)=2 \end{align} ∵H0(z)G0(z)+H1(z)G1(z)=2∴G0(z)H0(z)+G0(−z)H0(−z)=2
对 G 0 ( z ) H 0 ( z ) + G 0 ( − z ) H 0 ( − z ) = 2 G_{0}(z)H_{0}(z)+G_{0}(-z)H_{0}(-z)=2 G0(z)H0(z)+G0(−z)H0(−z)=2两边取逆 Z Z Z变换 { x ^ ( n ) = Z − 1 [ X ^ ( z ) ] Z − 1 [ X ^ ( − z ) ] = ( − 1 ) n x ^ ( n ) \begin{cases}\hat{x}(n)=Z^{-1}[\hat{X}(z)]\\ Z^{-1}[\hat{X}(-z)]=(-1)^{n}\hat{x}(n)\end{cases} {x^(n)=Z−1[X^(z)]Z−1[X^(−z)]=(−1)nx^(n),得:
∑ k g 0 ( k ) h 0 ( n − k ) + ( − 1 ) n ∑ k g 0 ( k ) h 0 ( n − k ) = 2 δ ( n ) δ ( n ) = { 1 , n = 0 0 , n ≠ 0 \sum_{k}g_{0}(k)h_{0}(n - k)+(-1)^{n}\sum_{k}g_{0}(k)h_{0}(n - k)=2\delta(n)\\ \delta{(n)}=\begin{cases}1 ,&n=0\\0, &n\neq 0\end{cases} k∑g0(k)h0(n−k)+(−1)nk∑g0(k)h0(n−k)=2δ(n)δ(n)={1,0,n=0n=0
δ ( n ) \delta(n) δ(n)是单位脉冲序列,由于奇数索引项抵消 , 偶数项有两倍,抵消 2 δ ( n ) 2\delta(n) 2δ(n)中的2倍,进一步简化得到:
∑ k g 0 ( k ) h 0 ( 2 n − k ) = ⟨ g 0 ( k ) , h 0 ( 2 n − k ) ⟩ = δ ( n ) \sum_{k}g_{0}(k)h_{0}(2n - k)=\langle g_{0}(k),h_{0}(2n - k)\rangle=\delta(n) k∑g0(k)h0(2n−k)=⟨g0(k),h0(2n−k)⟩=δ(n)
类似地,可以证明:
⟨ g 1 ( k ) , h 1 ( 2 n − k ) ⟩ = δ ( n ) ⟨ g 0 ( k ) , h 1 ( 2 n − k ) ⟩ = 0 ⟨ g 1 ( k ) , h 0 ( 2 n − k ) ⟩ = 0 \begin{align} &\langle g_{1}(k),h_{1}(2n - k)\rangle=\delta(n)\\ &\langle g_{0}(k),h_{1}(2n - k)\rangle = 0\\ &\langle g_{1}(k),h_{0}(2n - k)\rangle = 0 \end{align} ⟨g1(k),h1(2n−k)⟩=δ(n)⟨g0(k),h1(2n−k)⟩=0⟨g1(k),h0(2n−k)⟩=0
可以建立更一般的表达式 :
⟨ h i ( 2 n − k ) , g j ( k ) ⟩ = δ ( i − j ) δ ( n ) i , j ∈ { 0 , 1 } \langle h_{i}(2n - k),g_{j}(k)\rangle=\delta(i - j)\delta(n)\quad i,j\in\{0,1\} ⟨hi(2n−k),gj(k)⟩=δ(i−j)δ(n)i,j∈{0,1}
滤波器组满足此条件,即双正交性。 (每一行:自己和自己内积=1,不同行内积=0,i与j )
结论:所有两频段实系数的完美构建滤波器组的分析和合成滤波器脉冲响应都受双正交性约束。
通解
- QMF(Quadrature Mirror Filter,正交镜像滤波器):是一种在数字信号处理中用于子带编码的滤波器。它的特点是低通滤波器和高通滤波器的频率响应是彼此的镜像关系,且满足一定的正交性条件。
- CQF(Conjugate Quadrature Filter,共轭正交滤波器):也是一种用于数字信号处理的滤波器。
- Orthonormal, 正交滤波器
- 被用于后续的快速小波变换的开发。
重要特性
- 双正交性(Biorthogonality) - 每种滤波器类型都满足双正交性要求,但它们的生成方式不同,从而定义了不同类别的完美重构滤波器。
- 原型滤波器(Prototype Filter) - 对于每一类,都有一个"原型"滤波器是按照特定规格设计的,其余的滤波器则是从这个原型滤波器计算得出的。
除了双正交性,完美重构滤波器组的正交性还定义为:
⟨ g i ( n ) , g j ( n + 2 m ) ⟩ = δ ( i − j ) δ ( m ) , i , j = { 0 , 1 } \langle g_i(n), g_j(n + 2m) \rangle=\delta(i - j)\delta(m),\ i, j = \{0, 1\} ⟨gi(n),gj(n+2m)⟩=δ(i−j)δ(m), i,j={0,1}
可以看到, G 1 G_1 G1与低通合成滤波器 G 0 G_0 G0通过调制、时域反转和奇数平移相关。此外, H 1 H_1 H1和 H 0 H_0 H0分别是对应合成滤波器 G 1 G_1 G1和 G 0 G_0 G0的时域反转。
Z-变化其他两个重要性质:
x ( − n ) ⟺ X ( z − 1 ) x ( n − k ) ⟺ z − k X ( z ) x(-n)\iff X(z^{-1})\\ x(n-k)\iff z^{-k}X(z) x(−n)⟺X(z−1)x(n−k)⟺z−kX(z)
正交滤波器的逆Z变换
Filter | Orthonormal |
---|---|
H 0 ( z ) H_0(z) H0(z) | G 0 ( z − 1 ) G_0(z^{-1}) G0(z−1) |
H 1 ( z ) H_1(z) H1(z) | G 1 ( z − 1 ) G_1(z^{-1}) G1(z−1) |
G 0 ( z ) G_0(z) G0(z) | G 0 ( z ) G 0 ( z − 1 ) + G 0 ( − z ) G 0 ( − z − 1 ) = 2 G_0(z)G_0(z^{-1})+G_0(-z)G_0(-z^{-1})=2 G0(z)G0(z−1)+G0(−z)G0(−z−1)=2 |
G 1 ( z ) G_1(z) G1(z) | − z − 2 K + 1 G 0 ( − z − 1 ) -z^{-2K+1}G_0(-z^{-1}) −z−2K+1G0(−z−1) |
对表格正交滤波器的适当项取逆Z变换,可以得到:
h 0 ( n ) = g 0 ( − n ) , h 1 ( n ) = g 1 ( − n ) h i ( n ) = g i ( 2 K − 1 − n ) , i = { 0 , 1 } g 1 ( n ) = ( − 1 ) n g 0 ( 2 K − 1 − n ) h_0(n)=g_0(-n),h_1(n)=g_1(-n)\\ h_i(n)=g_i(2K - 1 - n), i = \{0, 1\}\\\\ g_1(n)=(-1)^n g_0(2K - 1 - n)\\ h0(n)=g0(−n),h1(n)=g1(−n)hi(n)=gi(2K−1−n),i={0,1}g1(n)=(−1)ng0(2K−1−n)
这里 h 0 h_0 h0、 h 1 h_1 h1、 g 0 g_0 g0、 g 1 g_1 g1是定义的正交滤波器的脉冲响应。
可以看到式(1)与式(2)差了一个 2 K − 1 2K-1 2K−1,也就是说将 g i g_i gi推迟了 2 K − 1 2K-1 2K−1个时刻发生。这个对应前面的"有限脉冲响应(FIR)滤波器,分析调制矩阵 H m ( z ) H_{m}(z) Hm(z)的行列式是纯延迟"。
**加上2K-1的目的:**延迟操作可以用来控制信号在时间轴上的位置,确保滤波器的不同部分(如分析滤波器和合成滤波器)在时间上正确对齐。
哈尔变换(Haar Transform)
Haar变换(Haar [1910])的基函数是最古老且最简单的已知正交小波 。Haar变换本身既是可分离的又是对称的,并且可以表示为矩阵形式:
T = H F H T T = HFH^{T} T=HFHT
其中 F F F是一个 N × N N\times N N×N矩阵, H H H是一个 N × N N\times N N×N变换矩阵, T T T是一个结果 N × N N\times N N×N变换。
变换矩阵 H H H包含在区间 z ∈ [ 0 , 1 ] z\in[0,1] z∈[0,1]上定义的Haar基函数 h k ( z ) h_{k}(z) hk(z),对于 k = 0 , ⋯ , N − 1 k = 0,\cdots,N - 1 k=0,⋯,N−1,其中 N = 2 n N = 2^{n} N=2n。
为了生成 H H H,我们定义整数 k k k, k = 2 p + q − 1 k = 2^{p}+q - 1 k=2p+q−1,其中 0 ≤ p ≤ n − 1 0\leq p\leq n - 1 0≤p≤n−1.
- 对于 p = 0 p = 0 p=0: q = 0 / 1 q = 0/1 q=0/1
- 对于 p ≠ 0 p\neq0 p=0: 1 ≤ q ≤ 2 p 1\leq q\leq 2^{p} 1≤q≤2p
举例说明:
k/10进制 k/2进制 p q 11 1011 3 4 21 10101 4 6 0 0 0 0 1 1 0 1
Haar基函数是( z ∈ [ 0 , 1 ] z\in[0,1] z∈[0,1]):
h 0 ( z ) = h 00 ( z ) = 1 N h k ( z ) = h p q ( z ) = 1 N { 2 p / 2 , ( q − 1 ) / 2 p ≤ z ≤ ( q − 0.5 ) / 2 p − 2 p / 2 , ( q − 0.5 ) / 2 p ≤ z ≤ q / 2 p 0 , otherwise h_{0}(z)=h_{00}(z)=\frac{1}{\sqrt{N}}\\ h_{k}(z)=h_{pq}(z)=\frac{1}{\sqrt{N}}\begin{cases}2^{p/2},&(q - 1)/2^{p}\leq z\leq (q - 0.5)/2^{p}\\-2^{p/2},&(q - 0.5)/2^{p}\leq z\leq q/2^{p}\\0,&\text{otherwise} \end{cases} h0(z)=h00(z)=N 1hk(z)=hpq(z)=N 1⎩ ⎨ ⎧2p/2,−2p/2,0,(q−1)/2p≤z≤(q−0.5)/2p(q−0.5)/2p≤z≤q/2potherwise
q决定正脉冲起始位置、p决定脉冲宽窄。
当 N = 8 N = 8 N=8时,对应的 k k k、 q q q、 p p p值,给出了一个表格:
k k k | 0 0 0 | 1 1 1 | 2 2 2 | 3 3 3 | 4 4 4 | 5 5 5 | 6 6 6 | 7 7 7 |
---|---|---|---|---|---|---|---|---|
p p p | 0 0 0 | 0 0 0 | 1 1 1 | 1 1 1 | 2 2 2 | 2 2 2 | 2 2 2 | 2 2 2 |
q q q | 0 0 0 | 1 1 1 | 1 1 1 | 2 2 2 | 1 1 1 | 2 2 2 | 3 3 3 | 4 4 4 |
H 8 H_{8} H8矩阵 :当 N = 8 N = 8 N=8时, H 8 H_{8} H8矩阵为:
H 8 = 1 8 [ 1 1 1 1 1 1 1 1 1 1 1 1 − 1 − 1 − 1 − 1 2 2 − 2 − 2 0 0 0 0 0 0 0 0 2 2 − 2 − 2 2 − 2 0 0 0 0 0 0 0 0 2 − 2 0 0 0 0 0 0 0 0 2 − 2 0 0 0 0 0 0 0 0 2 − 2 ] H_{8}=\frac{1}{\sqrt{8}}\begin{bmatrix} 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 \\ 1 & 1 & 1 & 1 & -1 & -1 & -1 & -1 \\ \sqrt{2} &\sqrt{2} & -\sqrt{2}& -\sqrt{2} & 0 & 0 & 0 & 0\\ 0 & 0 &0 & 0 & \sqrt{2} &\sqrt{2} & -\sqrt{2}& -\sqrt{2}\\ 2 & -2 & 0 & 0 &0&0&0&0\\ 0 & 0 & 2 & -2 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 2 & -2 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 2 & -2 \\ \end{bmatrix} H8=8 1 112 02000112 0−200011−2 0020011−2 00−2001−102 00201−102 00−201−10−2 00021−10−2 000−2
哈尔矩阵:第一行永远是1,第二行永远一半1一半-1.
反正算就完事了。