7. 量化误差
Q ( x ) = yi iff bi−1 < x ≤ bi
均方量化误差(Mean squared quantization error, MSQE )
∞
σ =∫ ( x − Q ( x )) f X dx
2 2
q
−∞
M bi 1
= ∑ ∫ ( x − yi ) f X dx
2
bi−1
i =1
量化误差亦称为
量化噪声
量化失真
8. 量化问题形式化描述 (2)
比特率 w /定长度码字
R = ⎡log2M⎤, M为量化器输出的数目
如:M = 8 R=3
量化器设计问题
给定:
输入pdf fX(x) 和 M
求:
决策边界 {bi}
重构水平{yi}
使得:
MSQE 最小
9. 量化问题形式化描述 (3)
比特率 w /变长码字
R 取决于决策边界
例:
R = ∑ i=1 li P( yi )
M
bi
P ( yi ) = ∫ f X ( x )dx
bi−1
bi
R = ∑ i=1 li ∫
M
f X ( x )dx
bi−1
14. 均匀分布的均匀量化
—以Midrise量化器为例
输入:均匀分布的信源Uniform [ − X max , X max ] : f X ( x) = 1 2 X max
输出:M个水平的均匀量化器(对Midrise量化,M为偶数)
步长: = 2X max M
Δ
2i − 1 ⎞ Δ2
2
⎛
M 2
iΔ 1
失真: q = 2 ∑
σ2
i =1
∫(i−1) Δ ⎜ x − 2 Δ ⎟ 2 X max dx = 12
⎝ ⎠
15. 均匀分布的均匀量化
x − Q ( x)
若考虑量化误差
q = x − Q ( x)
q ∈ [ − Δ 2, Δ 2]
量化误差也是均匀分布: f Q ( q ) = 1 Δ
σ q = Δ 2 12 σ s2 = ( 2 X max ) 12
2 2
所以q的方差为
则信噪比为 ⎛ ⎞
⎜
⎛ σ s22 ⎞ ⎛ ( 2 X max )22 12 ⎞ ( max 2 12 ⎟
2 X max )
2
SNR(dB) = 10log10 ⎜ 22 ⎟ = 10log10 ⎜
10 ⎜
s max
⎟ = 10log10 ⎜ ⎟
⎟ 10 ⎜ 2⎟ ⎜ 12 ⎛ 2 X ⎞ 2⎟
⎝ σ qq ⎠ Δ ⎠
2 10 2
⎝ 12 ⎜ ⎟ ⎟
max
⎜
max
⎝ ⎝ M ⎠ ⎠
= 10log10 (M 22) = 20log10 (2nn) = 6.02n dB
10 10
若 n → n + 1 ,则步长减为一半,噪声方差减为1/4,SNR增加6 dB
32. Jayant 量化器
思想:
如果输入落入外边的输出水平
增大量化步长
如果输入落入里边的输出水平
缩短量化步长
如果匹配,则增大和缩短的乘积应为1
乘子: k
M
如果 S n −1 输入落入第k个区间,则步长乘以 M k
Δ n = M k Δ n −1
内部: k < 1, 外部: k > 1
M M
前一个输出在编码器和解码器端的都可见,无需发送边信息
34. 例:Jayant量化器
M 0 = M 4 = 0.8, M 1 = M 5 = 0.9
M 2 = M 6 = 1.0, M 3 = M 7 = 1, 2, Δ 0 = 0.5
输入:0.1 -0.2 0.2 0.1 -0.3 0.1 0.2 0.5 0.9 1.5
当输入变化较慢时,量化器可与输入很好适应:语音、图像
35. 选择Jayant乘子
防止上溢/下溢: Δ min Δ max
乘子的选择对适应性影响大:乘子离1越远,越适应,但
太适应会导致不稳定
M
∏ M knk = 1
k =0
平稳性准则:
一旦量化器与输入匹配,
M
∏M
k =0
nk N
k =1 增大和缩短的乘积为1
M
∏M
k =0
k
pk
= 1, 其中pk = nk N
M k = γ lk , 其中γ lk > 1, lk = ⎢lk ⎥
⎣ ⎦ γ 越大,适应快;γ 较小,稳定性好
M M
∏γ
k =0
lk pk
=1 ⇒ ∑l
k =0
k pk =0
39. Lloyd-Max量化器
亦称为pdf-最佳量化器
M
( x − Q ( x ) ) f ( x ) dx = ∑ ∫ ( x − y ) f ( x ) dx
∞ bi
D =σ = ∫
2 2 2
q −∞ bi −1 i
i =1
给定M,最佳的 bi , yi 使得MSQE最小,满足
∂D ∂D
= 0, =0
∂yi ∂bi
bi
∂D
= 0 ⇒ yi =
∫bi −1
xf ( x)dx
∂yi bi
∫bi−1
f ( x)dx
即 yi 为区间 [bi −1 , bi ]的质心。
40. Lloyd-Max量化器
∂D yi + yi +1
= 0 ⇒ bi =
∂bi 2
即 bi 为 yi 和 yi +1的中点 最近邻量化器
Lloyd-Max条件总结:
bi
yi =
∫
bi −1
xf ( x)dx
, bi =
yi + yi +1
bi
∫
bi −1
f ( x)dx 2
41. 特定情况
与均匀量化器的关系:
当为均匀分布 f X ( x) = c 时, Lloyd-Max量化器变为均
匀量化器
bi bi 1 2 2
∫bi−1 xf ( x)dx = c ∫bi−1 xdx = 2 (bi − bi−1 ) = 1 (b + b )
yi = bi i −1
f ( x) dx c(bi − bi −1 ) (bi − bi −1 )
i
∫ bi −1
2
42. Lloyd-Max算法
最佳量化器的条件:
bi
yi =
∫
bi −1
xf ( x)dx
, bi =
yi + yi +1
bi
∫
bi −1
f ( x)dx 2
给定 bi ,可以计算对应的最佳 yi
给定 y,可以计算对应的最佳 bi
i
问题:如何同时计算最佳的 bi和 yi ?
答案:迭代
43. 迭代Lloyd-Max算法
1. 初始化所有的重构水平 yi , j = 1, D0 = ∞
yi + yi +1
2. 更新所有的决策边界: i =
b
2
3. 更新所有的 yi :
bi
yi =
∫
bi −1
xf ( x)dx
bi
∫
bi −1
f ( x)dx
M
4. 计算MSE: j = ∑ ∫b ( x − yk ) f ( x ) dx
bi 2
D
i −1
k =1
5. 如果( D j −1 − D j ) D j −1 < ε ,停止;否则 j = j + 1 ,
转第2步
44. 例:Lloyd-Max算法的应用(I)
X为0均值,1方差的高斯分布,即 X ~ N ( 0,1)
设计一个4个索引的量化器,使得期望失真 D* 最小
用Lloyd-Max算法得到最佳量化器
决策边界:-0.98, 0, 0.98
重构水平:–1.51, -0.45, 0.45, 1.51
D* = 0.12 = 9.30 dB f X ( x)
45. 例:Lloyd-Max算法的应用(I)
收敛 D = σ q = 0.12 = 9.30 dB
2
初始化A:决策边界为:–3, 0, 3 初始化A:决策边界为:–1/2, 0, 1/2
在两种情况下,经过6次迭代后, D − D* ( ) D* < 0.1
56. CQ等价于非均匀量化器
⎧
⎪ 2x −1 ≤ x ≤ 1
⎪
⎪ 2x 4
c ( x) = ⎨ + x >1
⎪3 3
⎪ 2x 4
⎪ 3 −3
⎩
x < −1
⎧ x
⎪ 2 −1 ≤ x ≤ 1
⎪
⎪ 3x
c −1 ( x ) = ⎨ − 2 x >1
⎪2
⎪ 3x
⎪ 2 +2 x < −1
⎩
x ∈ [−1,1],量化误差减小,其他区域量化增大
57. 非均匀量化器等价于CQ
如果信源输出为有限大小 xmax ,任何非均匀量化器都可以
用一个压扩量化器表示
先看看高码率(水平的数目很多)量化器的性质
定义 Δ k = bk − bk −1
若码率很高,则每个量化区间会很小,所以可以假设在每
个量化区间输入信源的pdf f X ( x ) 为常数,则
f X ( x ) = f X ( yk ) , if bk −1 ≤ x < bk
M
∑∫ (x − y ) f X ( x ) dx
bi 1
则 σ2 = 2
q i
bi −1
i =1
M
1 M
= ∑ fX ( x) ∫ ( x − yi ) dx = ∑ f X ( yi ) Δ i3
bi 1 2
i =1
bi −1 12 i =1
58. 非均匀量化器等价于CQ
回到压扩量化
令 c ( x ) 为对称量化器的压扩函数, ′ ( x )为压扩函数的导数
c
当码率很高时,在第k个区间内,压扩函数可用直线近似,
则
( k)
c b −c b
c ′ ( yk ) =
( k −1 )
Δk
而 c ( bk ) − c ( bk −1 ) 恰好是M个水平均匀量化器的步长,因此
2 xmax
c ( bk ) − c ( bk −1 ) =
xmax
M c ( bk )
c ( bk −1 )
代入上式,得到
2 xmax
Δk = Δk
Mc′ ( yk ) xmax
59. 非均匀量化器等价于CQ
2 xmax
Δk =
则高码率下量化误差为 Mc′ ( yk )
1 M
σ q = ∑ f X ( yi ) Δ i3
2
12 i =1
3
1 M ⎛ 2 xmax ⎞
= ∑ f X ( yi ) ⎜ ⎟
12 i =1 ⎝ Mc′ ( yi ) ⎠
xmax M f X ( yi ) 2 xmax
2
2 ∑
=
3M i =1 c′2 ( yi ) Mc′ ( yi )
xmax M f X ( yi )
2
2 ∑
= Δi
3M i =1 c′ ( yi )
2
60. 非均匀量化器等价于CQ
xmax M f X ( yi )
2
2 ∑
当 Δ ii 很小时, σq =2
Δi
3M i =1 c′ ( yi )
2
可以写成
xmax xmax f X ( x )
2
2 ∫− x
σq =2
dx
max c′ ( x )
2 Bennet积分
3M
量化失真取决于信源序列的pdf
但同时也告诉我们如何去除该相关
xmax
定义 c′ ( x ) = , α为常数
α x
则Bennet积分变为
xmax α 2 xmax 2
2
α2 2
σq = ∫− xmax x f X ( x )dx = 3M 2 σ x
2
2 2
3M xmax
64. Llyod-Max量化器输出的熵编码
Output entropies in bits per samples for minium mean squared error quantizes
Number of Gaussian Laplacian
Levels Uniform NonUniform Uniform NonUniform
4 1.904 1.911 1.751 1.728
6 2.409 2.442 2.127 2.207
8 2.759 2.824 2.394 2.479
16 3.602 3.765 3.063 3.473
32 4.449 4.730 3.779 4.427
低码率情况下,定长码与熵编码之间的差异并不大
高码率情况下,定长码与熵编码之间的差异增大
Laplacian分布的32水平均匀量化器,定长码需5比特,熵编码只需3.779比特
且定长码与均匀量化输出熵编码之间的差异大于定长码与非均匀量化输
出熵编码之间的差异
非均匀量化器在大概率区域步长小,在小概率区域步长大 使得每个区间
的概率相近 增大非均匀量化输出的熵
分布越接近均匀分布,上述差异越小
65. 熵约束量化器
(Entropy-constrained Scalar quantizer, ECSQ)
用量化器输出的熵作为码率的度量
对量化索引用熵编码技术编码
量化器输出的熵定义为
M
H ( Q ) = −∑ pi log pi , pi = ∫ f X ( x ) dx
bi
bi −1
i =1
所以重构水平的选择不影响码率
但决策边界既影响失真,也影响码率
P. A. Chou, T. Lookabaugh, R. M. Gray, “Entropy-constrained vector quantization,” IEEE
Trans. Signal Processing, vol. 37, no. 1, pp. 31-42, Jan 1989
67. 熵约束量化器
J (λ ) = σ q + λ H (Q )
2
在最小化 J ( λ )中 λ 的作用
较大的 λ H ( Q ) 的权重更大
只保留较小的熵
H ( Q ) 随着λ 的增加减小
可以用二分法求解最佳的 λ ,使得 H ( Q ) = R
H (Q )
68. ECSQ算法(二重循环)
1. 选择一个初始的 λ ≥ 0 (外层循环,控制码率)
2. 初始化所有的 yi , pi , 令 j = 1, D0 = ∞ (里层循环)
yi + yi +1 log pi log pi +1
3. 计算决策边界:bi = −λ
2 2( yi − yi +1 )
bi
4. 更新所有的 yi : i = by
∫bi−1 xf ( x)dx
∫bi−1 f ( x)dx
i
bi
5. 更新 pi : i = ∫ f ( x)dx
p
bi −1
6 . 计算MSE: M
D j = ∑ ∫ ( x − yi ) f ( x ) dx
bi 2
bi−1
i =1
7. 若( D j −1 − D j ) MD j −1 < ε ,转第8步;否则 j = j + 1 ,转第3步
8. 若 H ( Q ) = −∑ pi log pi ∉ [ R − τ , R] ,调整λ ,转第2步
i =1
69. 例: ECSQ算法的应用(I)
X为0均值,1方差的高斯分布,即 X ~ N ( 0,1)
设计一个 R ≅ 2的ECSQ,使得期望失真 D*
最小
11个区间([-6,6]内):几乎是均匀
D* = 0.09 = 10.53dB, R = 2.0035
定长编码:D* = 0.12 = 9.30 dB
f ( x)
73. H. Gish and J. N. Pierce, “Asymptotically. efficient quantizing,” IEEE Trans. Inform. Theory,. vol. IT-
14, pp. 676-683, Sept. 1968.
高码率下ECSQ的性能
对MSQE失真和高码率,均匀量化器(紧跟熵编码)是最
佳的[Gish, Pierce, 1968]
在高码率下, 每个量化区间内pdf近似为常数,量化器输
出的熵:
f X ( x ) dx = f X ( yi ) Δ i
bi
pi = ∫
bi −1
M M
H ( Q ) = −∑ pi log pi = −∑ f X ( yi ) Δ i log ( f X ( yi ) Δ i ) Δk =
2 xmax
i =1 i =1
Mc′ ( yk )
M M
= − ∑ f X ( yi ) log ⎡ f X ( yi ) ⎤ Δ i − ∑ f X ( yi ) log [ Δ i ]Δ i
⎣ ⎦
i =1 i =1
M M ⎡ 2 xmax M ⎤
= − ∑ f X ( yi ) log ⎣ f X ( yi ) ⎦ Δ i − ∑
⎡ ⎤ f X ( yi ) log ⎢ ⎥Δ i
i =1 i =1 ⎣ c′ ( yi ) ⎦
74. H. Gish and J. N. Pierce, “Asymptotically. efficient quantizing,” IEEE Trans. Inform. Theory,. vol. IT-
14, pp. 676-683, Sept. 1968.
高码率下ECSQ的性能
当 Δ i 较小时,
M M ⎡ 2 xmax M ⎤
H ( Q ) = − ∑ f X ( yi ) log ⎣ f X ( yi ) ⎦ Δ i − ∑
⎡ ⎤ f X ( yi ) log ⎢ ⎥Δ i
i =1 i =1 ⎣ c′ ( yi ) ⎦
⎡ 2 xmax M ⎤
= − ∫ f X ( x ) log f X ( x ) dx − ∫ f X ( x ) log ⎢ ⎥dx
h( X ) ⎣ c′ ( x ) ⎦
⎡ 2 xmax ⎤
= − ∫ f X ( x ) log f X ( x ) dx − log ⎢ ⎥ + ∫ f X ( x ) log c′ ( x )dx
⎣ M ⎦
75. 高码率下ECSQ的性能
⎡ 2 xmax ⎤
H ( Q ) = − ∫ f X ( x ) log f X ( x ) dx − log ⎢ ⎥ + ∫ f X ( x ) log c′ ( x )dx
⎣ M ⎦
令 g = c′ ( x ) ,
2
xmax fX ( x)
dx, J ( λ ) = σ q + λ H ( Q )
xmax
σq = ∫
2 2
3M 2 − xmax c′2 ( x )
则
∂J ( λ ) ⎡ 2 xmax −3
2
−1 ⎤
= ∫ f X ( x ) ⎢ −2 g + λ g ⎥ dx = 0
∂g ⎣ M 2
⎦
所以
⎡ 2 xmax −3
2
−1 ⎤ 2λ xmax
f X ( x ) ⎢ −2 2
g + λg ⎥ = 0 ⇒ g = =K
⎣ M ⎦ 3 M
76. 高码率下ECSQ的性能
g ( x ) = c′ ( x ) = K
所以
c ( x ) = Kx + α
如果使用边界条件 c ( 0 ) = 0, c ( xmax ) = xmax
得到 c ( x ) = x
即对应的压扩量化器为均匀量化器
即高码率下,最优量化器为均匀量化器
将该压扩函数代入
xmax xmax f X ( x )
2 2
xmax
2 ∫− x
σq =
2
dx =
max c′ ( x )
2
3M 3M 2
2 xmax
所以 J ( λ ) = h ( X ) − log
M
77. 高码率下ECSQ的性能
码率为 R ≈ H ( Q ) = − ∫ f X ( x ) log f X ( x ) dx − log
⎡ 2 xmax ⎤
⎢ M ⎥
⎣ ⎦
= h ( X ) − log Δ ⇒ Δ ≈ 2h( X )− R
失真-码率函数为 2
xmax 1 2 1 2 h( X ) −2 R
D ( R) ≅ σ q ( R) =
2
2
= Δ ≈ 2 2
3M 12 12
1 2 h( X ) −2 R π e
为Shannon下界 D ( R ) = 2 2 的 ,即
2π e 6
πe
10 log10 = 1.53 dB 高码率均匀量化器的SNR与Shannon下界
6
差1.53的dB(对任何平滑pdf)
78. Gaussian信源的量化器
1 2 h( X ) −2 R
D ( R) ≈ 2 2
12
相同码率R下,ECSQ的失真比Lloyd-Max量化器更小
79. 高码率下量化器的性能
1 2 h( X ) −2 R
D ( R) ≈ 2 2
高码率下的失真—码率函数: 12
D ( R ) ≅ ε 2σ X 2−2 R
2
缩放因子ε 2 ,对均匀分布、Laplacian分布和高斯分布,
分别为:
ε 2 = 1, 9 2, 3π 2 = 2.721