用非均匀 A 律 PCM对零均值、单位方差的高斯源进行量化,这个量化器在区间[一10,10]内均匀量化。假定量化电平设在各量化区域的中间点,求出并画出量化电平数为 N=3,4,5,6,7,8,9 和10时,量化产生的均方失真作为量化电平数 N的函数图。
时间: 2023-10-27 21:06:26 浏览: 91
pcm.rar_PCM matlab_non uniform matlab_pcm_图 量化_非均匀量化
首先,我们需要确定非均匀 A 律 PCM 的量化规律。对于给定的区间 [一10,10],我们可以将其分成 N 个等间距的量化区域,每个区域的宽度为:
$$
\Delta = \frac{20}{N}
$$
在 A 律 PCM 中,量化电平的计算公式为:
$$
Q(x) = \begin{cases} \frac{\operatorname{sgn}(x)|x|^\alpha}{A}, \quad |x| \leq \frac{B}{\alpha} \\ \frac{\operatorname{sgn}(x)(1+\alpha\ln\frac{|x|}{B})}{1+\alpha\ln\frac{B}{A}}, \quad |x| > \frac{B}{\alpha} \end{cases}
$$
其中,$\operatorname{sgn}(x)$ 表示 x 的符号,$\alpha$ 为压缩因子,$A$ 和 $B$ 分别为量化器的最小和最大电平。对于本题,我们有 $A=1$,$B=10$,$\alpha=87.6$。因为高斯源是零均值、单位方差的,所以我们可以不考虑偏移和缩放,直接使用上述公式进行量化。
然后,我们需要计算每个量化电平对应的量化区域的中心点。设第 $i$ 个量化区域的中心点为 $q_i$,则有:
$$
q_i = -10 + (i - \frac{1}{2})\Delta, \quad i = 1,2,\cdots,N
$$
接下来,我们可以利用上述公式和公式计算每个量化电平对应的量化值,并计算出量化产生的均方失真。设原始信号为 $x$,量化后的信号为 $\hat{x}$,则均方失真为:
$$
D = \frac{1}{N}\sum_{i=1}^N(q_i - x_i)^2
$$
其中,$x_i$ 表示原始信号在第 $i$ 个量化区域中的平均值,计算公式为:
$$
x_i = \frac{1}{\sqrt{2\pi}}\int_{(i-\frac{1}{2})\Delta}^{(i+\frac{1}{2})\Delta} x e^{-\frac{x^2}{2}}\mathrm{d}x
$$
最后,我们可以编写 Matlab 代码来实现上述计算和绘图。下面是一个示例代码:
阅读全文