语音信号采集与回放系统设计(FPGA)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数字化语音存储与回放系统 实验指导
一、 数字语音处理
1、 语音信号的采样
(1)采样频率
人耳可听到20Hz ~20KHz 的声音,但实际上人说话的声音带宽主要集中在300Hz ~3400Hz ,如电话线的带宽一般约为3KHz 。
根据采样定理,语音信号的采样频率应为语音带宽的2倍以上,对于300Hz ~3400Hz 的语音带宽,取采样频率为fs=8KHz 。
(2)平顶采样
实际系统中的语音采样脉冲有一定的持续时间,即属于平顶采样。如下图:(Ts 为采样间隔,τ为采样保持时间)
平顶采样可以看成是理想采样后,再经过一个冲激响应是矩形的网络来形成的:
s
t
x(t)
δ(t)
不难进行下述推导: xs(t)= x(t)δ(t)= x(t)
∑∞
−∞
=−n nTs t )(δ xsf(t)= xs(t)*h(t)=
=
τττd t h xs )()(−∫
∞
∞
−∑∞
−∞
=−n nTs t h nTs x )()(
xsf(t)的频谱为: Xsf(ω)= Xs(ω)H(ω)=
∑∞
−∞
=−n Ts H s n X /)()(ωωω 矩形脉冲的H(ω)= A τ
2
/)
2/sin(ωτωτ
Xsf(ω)= Ts
A τ
∑
∞
−∞
=−n s n X 2
/)
2/sin()
(ωτωτωω
由此可以看出,平顶采样时,加权项
2
/)
2/sin(ωτωτ使信号频谱发生了变化,造成语音信
号高频分量有部分损失,语音回放时失真。
实际PCM 系统中,均采用采样保持电路来提高输出信号的强度,为得到最大输出信号,通常取τ=Ts 。
Xsf(ω)= A
∑
∞
−∞
=−n Ts Ts s n X 2
/)
2/sin()
(ωωωω
加权项为:
fs
f fs f /)
/sin(ππ
分析该加权项:对fs=8KHz
f=0时 ~ 0dB ; f=300Hz 时 ~ -0.02dB ; f=3400Hz 时 ~ -2.75dB 为了抵消平顶采样所产生的这种孔径失真,语音回放端需采用响应为
)
/sin()
/(fs f fs f ππ的滤
波网络进行频谱补偿。
可以设计这样一个频谱补偿网络,其频域在300Hz ~3400Hz 范围内,增益随频率f 升高按)
/sin()
/(fs f fs f ππ规律进行放大;当f >4000Hz 时,增益又迅速下降。频响如下图:
2、语音信号的量化
语音信号的量化在很大程度上决定了编码比特率和编码总失真。语音信号量化有标量量化和矢量量化,该实验使用幅度标量量化。
(1)均匀量化
均匀量化是指在整个量化范围内,量化间隔都相等。
如下图:模拟语音信号X ,经采样量化后形成输出信号Y k ,k=1,2,···,L ,称为第k 个量化电平,L 为量化电平数。
每个样点量化所用的比特数为:R=log L
2假设量化器的量化范围为(-V ,V ),则量化间隔为:Δ=2V/L=2V/2
R
量化误差q 为: -Δ/2≤q ≤Δ/2
若L 足够大,Δ将足够小,可认为q 在(-Δ/2,Δ/2)范围内均匀分布,其概率分布密度为1/Δ
均方差为:σ=Δdq=Δ/12=2
q /1/22/2
∫−ΔΔq 2
3122L V =3
1V 2 2R
2−可以看出,均匀量化的量化噪声只与L 和V 有关,量化信号噪声比SNR 为: SNR=
σ=3×2
2x
/σ2
q
R
222
V
x
σ SNR (dB )=6.02R+4.77+20log (σ/V )
x 上述表明:量化比特数R 每增加一个比特,SNR 提高约6dB ;同时,SNR 与语音信号X 的均方差值
σ有关,
当X 最大幅度达到量化器最大容许值V 的时候,这时称量化器满载,SNR 达到最大值。X 幅度每降低一半,SNR 下降约6dB 。
2
x 但在实际应用中,语音信号是非平稳的随机信号,由于说话人的音量不同、情绪影响等因素,使得语音信号的短时均方差值的变化(语音的动态范围)超过40dB 以上。若使X 的最大幅度不超过V ,则语音信号有效值x σ将很小,SNR 将减小;若使x σ增大,将又会产生过载噪声,SNR 也将减小;(x σ很大时,SNR (dB )x V σ/1.6≈)这是一对矛盾!实际中常取x σ/V=0.2。对于高质量话音,要求语音信号在40dB 变动范围内,SNR 均要大于25dB ,因此必须采用12位的均匀量化器,这样在fs=8KHz 时,量化器输出信息速率为96Kbps 。为了压缩信息速率,人们又提出了非均匀量化方法。
(2)非均匀量化
非均匀量化是指在整个量化范围内,量化间隔不相等。 语音信号处理中常采用的非均匀量化是对数量化,如下图:
x z
对数压缩 指数扩张
由于在均匀量化中为了避免过载噪声,语音信号的x σ就不能过大,使得语音信号密度集中在小信号区域,因此量化噪声很大。非均匀对数量化相当于对输入语音小信号放大倍数大,而对大信号放大倍数小,从而压缩了信号的动态范围,使量化信噪比在整个动态范围内保持平稳。即在大信号时,SNR 相对均匀量化时低一点;小信号时,SNR 则明显提高。
实现非均匀对数量化有两种方案:一是使用对数放大器将输入语音信号x 先进行对数压缩,再进行均匀量化(8位),接收端进行指数扩张恢复原始信号,从而提高SNR 到多位均匀量化(13位)程度,但这种方法的对数压缩和扩张器件特性的不匹配,会造成新的噪声,实际中已不采用;另一种方法是将对数压缩和扩张用数字化来实现,把对数压缩和编码结合起来,即对输入语音信号x 先进行多位均匀量化(13位),再按对数压缩算法对数据进行非线性压缩编码(8位),这样既可保证SNR 达到多位均匀量化(13位)程度,又降低了信息速率。
CCITT G .712建议给出了国际上两种通用的对数压缩特性,即A 律和μ律:
A 律 y=⎪⎪⎩⎪⎪⎨⎧≤<−−−−++≤≤−−−−−+11ln 1ln 110ln 1x A A
Ax A x A Ax
A=87.6,x 、y 均为归一化;
μ律 y=
)
1ln()
1ln(μμ++x 01≤≤x μ=255,x 、y 均为归一化。
我国采用A 律,理想的A 律很难实现,在数字化处理中,CCITT 规定采用13折线法
来逼近A 律,具体方法见参考书。