论文地址:基于隐马尔科夫模型的电话语音频带扩展

博客作者:凌逆战

博客地址:https://www.cnblogs.com/LXP-Never/p/12151866.html


摘要

  本文提出了一种从lowpass-bandlimited(低通带限)语音中恢复宽带语音的算法。窄带输入信号被分类为有限数量的语音,关于宽带频谱包络的信息取自预先训练的码本。在码本搜索算法中,采用了一种基于隐马尔可夫模型的统计方法,该方法考虑了带限语音的不同特征,使均方误差准则最小化。新算法只需要一个宽带码本,本质上保证了系统在基带的透明性。增强后的语音比输入语音的带宽大得多,而且没有引入令人讨厌的artifacts(伪影)。

1  引言

  在目前的公共电话系统中,传输语音的带宽被限制在300 Hz到3.4 kHz的频率范围内。这导致了典型的电话语音通常是单薄和低沉的。然而,近年来,我们发现人们对语音通信系统的质量要求越来越高,不仅要求高的可懂度,还要求高的主观质量,例如在免提电话或电话会议应用中。这种趋势反映在正在进行的宽带语音编解码器的标准化上。

  真正的宽带语音通信需要增强的语音编解码器和提高的比特率,因此需要修改传输链路。因此,出于经济原因,带宽限制在未来不太可能改变。另一种获得更高带宽的方法是仅利用带限语音来推断传输链路接收端语音信号中缺失的低频和高频成分。

  这种语音信号的带宽扩展只有基于语音产生过程的模型时才是可行的。宽带源模型的参数可以从带限语音中估计出来。这些参数可以与源模型结合使用来估计和添加缺失的频率。

  本文只讨论带宽向更高频率的扩展,即假设输入信号只包含低于3.4 kHz的频率(这个频段将在下文中定义为基带)。通过增加信号分量,它将扩展到频率高达7khz。

2  算法

  根据语音产生过程的自回归(AR)模型,将提出的带宽扩展算法分为两个任务,这两个任务在一定程度上是相互独立的:语音信号的频谱包络线的扩展和激励信号的扩展[1]。算法框图如图1所示。

图1  带宽扩展算法的块图和主信号流

  如果输入信号$s_{nb}(k')$采样频率为$f_{a'}=8kHz$,则算法的第一步是一个low-pass interpolation(低通插值滤波器)。算法其余部分以$f_a = 16khz$的采样率处理输入信号。然而,信号$s_{nb}(k)$仍然只包含3.4 kHz以下的信号分量。进一步的处理是以20 ms的帧大小逐帧进行的。在下面,帧索引将由变量$m$表示。

  使用窄带输入信号和预先训练的码本,计算当前语音帧的宽带谱包络的估计值(参见第3节)。然后从码本中提取描述该谱包络的AR滤波器系数$\hat{C}$,并将其用于FIR滤波器$H_1(z)$中以估计窄带激励信号$\hat{x}_{nb}$。由于对于无声帧,该激励信号的基带可以假定为近似白色,而对于有声帧,该激励信号的基带分别由振幅相等的谐波组成,因此其带宽可以非常简单地扩展(请参见第4节)。最终将扩展的激励信号$\hat{x}_{wb}(k)$馈入全极点合成滤波器$H_S(z)$,从而创建增强的输出信号$\hat{s}_{wb}(k)$。

  与以往的语音信号带宽扩展算法(如[1, 2, 3])不同,所提出的算法不需要几个窄码本和宽带码本的组合。它只利用一个单一的宽带码本。因此,用于分析滤波器和合成滤波器的AR系数是相同的,而且这两个滤波器的传递函数是互逆的

$$公式1:H_s(z)=\frac{1}{H_1(z)}$$

  由于这一特性,系统基带信号分量的透明性可以得到保证——这足以确保在残余信号扩展期间激励信号的基带不被修改。

3  频谱包络

  如前一节所述,语音信号的频谱包络的扩展基于宽带码本。在该码本中,存储了代表典型语音频谱包络的几组AR系数(在下文中,第$i$组AR系数将由$C_i$表示。 码本条目的总数为$I$)。使用足够大的宽语音语音训练数据集和常用的LBG算法[4]对码本进行训练,从而最大程度地减少Itakuro距离测度(请参见[l])。尽管使用宽带语音材料对码本进行训练可以确保在码本中包含正确的代表不同语音的声音,但是这也带来了挑战,即对于输入信号的分类,即对输入信号的分类只有带限信号可用。

  码本搜索方法的基础是语音生成过程的隐马尔可夫模型(HMM)。 HMM的恰好一个状态$S_i$被分配给码本的每个条目$C_i$。 进一步假设源的状态仅在输入信号的两个帧之间发生变化。 注意,如果宽带语音可用,则在模型意义上可以计算出真实状态序列。

  如果只知道窄带语音,则通过以下步骤执行分类:首先,从窄带语音中提取有限数量的特征。将这些提取的特征与语音产生过程的统计模型进行比较。然后将当前的语音帧划分为训练好的语音或直接估计AR系数。

3.1 特征

  对于每个信号帧,从bandlimited(带限)信号中提取一个$N$维特征向量$x(m)$。该向量由8个倒谱系数$c_1...c_8$,归一化帧能量$E_n$和[5]中定义的梯度指数$d_n$组成

$$公式2:
d_{n}=\frac{\sum_{k=2}^{K} \Delta \psi(k)\left|s_{n b}(k)-s_{n b}(k-1)\right|}{\sqrt{\frac{1}{K} \sum_{k=1}^{K} s_{n b}^{2}(k)}}
$$

式中$K$为每帧采样数,变量$\phi(k)$表示梯度$c_{nb}(k)-s_{nb}(k-1)$的标记,即$\psi (k)\in \{-1,1\}$,$\triangle \psi(k)=\frac{1}{2}|\psi(k)-\psi(k-1)|$。

  倒谱系数包含窄带信号的频谱包络的形状信息,而其他两个量取决于语音激励的性质。此外,以上十个主要特征随时间的导数都包含在特征向量中,使得该向量$x(m)$的维数为$N = 20$。

3.2 统计模型

  对于隐马尔可夫模型的每个可能状态$S_i$,语音产生过程产生的特征$x$表现出不同的统计特性。为了描述这些性质,我们使用了由以下三部分组成的统计模型。

3.2.1 观察概率$p(x|S_i)$

由于特征向量x的维度较高,这些概率密度函数(probability density function,pdf)$p(x|S_i)$由高斯混合模型(GMMS)建模:每个pdf被近似为$L$个高斯pdf的和。

$$公式3:
p\left(\boldsymbol{x} | S_{i}\right) \approx \sum_{l=1}^{L} P_{i l} \mathcal{N}\left(\boldsymbol{x} ; \mu_{i l}, \Sigma_{i l}\right)
$$

在这个方程中,$N(x;\mu_{il},\sum_{il})$表示具有平均矢量$\mu_{il}$和方差矩阵$\sum_{il}$的GMM的第$l$个N维高斯分布。每个高斯分布都由一个系数$P_{il}$加权,$\sum_{l=1}^LP_{il}=1$。

  GMMs的训练,即$P_{il}$、$\mu_{il}$和$\sum_{il}$,可以用期望最大化(EM)算法(例如[ 6 ])来进行。这里用LBG算法[4]对训练数据进行聚类来确定。

  对于隐马尔可夫模型的每个状态,必须使用完整训练材料的子集来训练一个不同的GMM,对于该GMM,其真实状态等于当前训练的状态。

3.2.2 初始状态概率$\pi_i=P(S_i)$

标量值$\pi_i$描述了HMM驻留在状态$S_i$中而不包含特征向量$x$或先后状态的概率。

  该概率可以通过计算训练材料的真实状态序列和评估状态$S_i$的出现次数与训练集中的语音帧总数之间的比率来估计。通过码本存储所得到的概率值,使得实际的带宽扩展算法以后可以通过表查找来访问这些先验状态概率。

3.2.3 转移概率$a_{ij}=P(S_i(m+1)|S_j(m))$

  变量$a_{ij}$描述了从状态$S_j$转换到状态$S_i$的概率。作为初始状态概率$\pi_i$,可以将转移概率存储在现在为二维的表中。在训练过程中,在了解了真实状态序列的情况下,将该表中的每个条目估计为从$S_j$到$S_i$的特定转换的发生次数与$S_j$状态的总发生次数之间的比率。

3.3 估计宽带AR系数

  码本搜索算法的目标是计算宽带AR系数的估计值$\hat{C}$,使到真实系数C的距离最小。

  对于估计规则的推导,将辅助变量$\alpha_i(m)$定义为部分观测序列$X(m)=\{x(0),x(1),...,x(m)\}$和状态$S_i(m)$在m帧时刻

$$公式4:\alpha_i(m)=P(S_i(m),X(m))$$

该辅助变量可以用联合概率$\alpha_i(m-1)$在m-1时刻的递归形式表示,观察概率$p(x(m)|S_i(m))$为

$$公式5:\alpha_i(m)=(\sum_{j=1}^I\alpha_j(m-1)a_{ij})p(x(m)|S_i(m))$$

由于前一个观测向量在第一帧是未知的,所以$\alpha_i(0)$的初始值必须由初始状态概率$\pi_i$计算

$$公式6:\alpha_i(0)\pi_ip(x(0)|S_i)$$

MMSE准则的目标是最小化估计AR系数$\hat{C}$与真实系数$C$之间的均方误差,从而使以下代价函数最小化

$$公式7:
\mathcal{R}_{\mathrm{MSE}}(\hat{\boldsymbol{C}} | \boldsymbol{X})=\iint(\hat{\boldsymbol{C}}-\boldsymbol{C})^{T}(\hat{\boldsymbol{C}}-\boldsymbol{C}) p(\boldsymbol{C} | \boldsymbol{X}) d \boldsymbol{C}
$$

通过对损失函数的导数求根,可以找到这个优化问题的一个解

$$公式8:
\hat{C}_{\text {natst }}=\iint \boldsymbol{C} p(\boldsymbol{C} | \boldsymbol{X}) d \boldsymbol{C}
$$

由于我们没有条件概率$p(C|X)$的显式模型,这个量必须以状态概率的形式间接表示

$$公式9:
\hat{C}_{\text {hass }}=\iint \boldsymbol{C}\left[\sum_{i=1}^{I} p\left(\boldsymbol{C} | S_{i}\right) P\left(S_{i} | \boldsymbol{X}\right)\right] d \boldsymbol{C}
$$

$$公式10:
=\sum_{i=1}^{I} P\left(S_{i} | \boldsymbol{X}\right) \underbrace{\iint \boldsymbol{C} p\left(\boldsymbol{C} | S_{i}\right) d \boldsymbol{C}}_{\mathcal{E}\left\{\boldsymbol{C} | S_{i}\right\}=\boldsymbol{C}_{i}}
$$

如图所示,在状态$S_i$出现的情况下,方程10右侧的积分得到C的期望值,即对应的码本向量$C_i$。应用贝叶斯规则,代入辅助变量$\alpha_i$,得到如下估计

$$公式11:
\hat{C}_{\text {mats } E}=\frac{\sum_{i=1}^{I} C_{i} \alpha_{i}(m)}{\sum_{i=1}^{I} \alpha_{i}(m)}
$$

  由于$p(C|X)$是通过状态概率间接建模的,因此该估计器不能利用条件概率$p(C|S_i)$。可以通过直接建模和利用$p(C|X)$来设计一个更好的MMSE估计器,但这不是一项简单的任务。另外,可以在码本向量$C_i$的训练过程中考虑$p(C|S_i)$的知识。

4  剩余信号

  由于窄带激励信号$\hat{x}_{nb}(k)$在base-band(基频)上近似为白色,因此计算宽频带激励信号的公式为

$$公式12:
\hat{x}_{w b}(k)=\left\{\begin{array}{ll}
{2 \hat{x}_{n b}(k)} & {; k=0, \pm 2, \pm 4 \ldots} \\
{0} & {; \text { else }}
\end{array}\right.
$$

这种操作导致了功率谱的折叠。因此,在$\hat{x}_{wb}(k)$中存在3.4到4.6 kHz的频谱间隙。另外,高频区域的谐波结构与低频分量不匹配。然而,在合成滤波器$H_S(z)$后,这些影响几乎听不见。

5  评估

  为了评估所提出的算法,训练了几个不同尺寸的码本。在聆听算法的最佳输出时,即在已知true state sequence(真实状态序列)的情况下,发现对于大于I = 64的码本,增强信号与原始宽带语音几乎无法区分。即使是非常小的I = 3条目的codebook,也可以获得可接受的结果。

  训练数据由截止频率为3.4 kHz的低通滤波器对宽带语音进行滤波得到。它由几位男女演讲者讲了大约10分钟的语音平衡的干净的话术组成。

  在许多非正式的和比较的听力测试中,所描述的算法产生了良好的结果——显著地扩展了带宽。偶尔会出现声音伪影,,主要出现在[s]或[f]等清音摩擦音中,这是由码本搜索算法错误分类造成的。然而,算法中先验知识的使用越多,此类伪影的出现频率就越低。

6  总结

  该方法能够将低通带限语音的带宽扩展到最高7kHz的频率范围。结果证明,在低频区域有足够的信息可以成功地估计高频成分的缺失,但是,对于这种估计,除了频谱包络之外,还应该利用窄带语音的更多特征。为此目的,提出的统计模型,是一个适当的工具。

7 参考文献

[1] H. Carl, “Untersuchung verschiedener Methoden der Sprachcodierung und eine Anwendung zur BandbreitenvegroBerung von Schmalband-Sprachsignalen”. Dissertation.Ruhr-Universitat Bochum, 1994
[2] J. Epps, W. H. Holmes, “A New Technique for Wideband Enhancement of Coded Narrowband Speech”. IEEE Workshop on Speech Coding. Porvoo, Finland, 1999
[3] N. Enbom, W. B. Kleijn, “Bandwidth Expansion of Speech Based on Vector Quantization of the Me1 Frequency Cepstral Coefficients”. IEEE Workshop on Speech Coding, Porvoo,Finland, 1999
[4] Y. Linde, A. Buzo, R. M. Gray, “An Algorithm for Vector Quantizer Design”. IEEE Trans. on Communications, January 1980
[5] J. Paulus, “Codierung breitbandiger Sprachsignale bei niedriger Datenrate”. Dissertation, RWTH Aachen, 1997
[6] S. V. Vaseghi, “Advanced Signal Processing and Digital Noise Reduction”. Wiley, Teubner, 1996

2000_wideband extension of telephone speech using a hidden Markov model相关推荐

  1. 论文翻译:2000_wideband extension of telephone speech using a hidden Markov model

    论文地址:基于隐马尔科夫模型的电话语音频带扩展 博客作者:凌逆战 博客地址:https://www.cnblogs.com/LXP-Never/p/12151866.html 摘要 本文提出了一种从l ...

  2. 隐马尔可夫模型(Hidden Markov Model,HMM)是什么?隐马尔可夫模型(Hidden Markov Model,HMM)的三个基本问题又是什么?

    隐马尔可夫模型(Hidden Markov Model,HMM)是什么?隐马尔可夫模型(Hidden Markov Model,HMM)的三个基本问题又是什么? 隐马尔可夫模型 (Hidden Mar ...

  3. HMM:Hidden Markov Model 代码讲解

    HMM:Hidden Markov Model,是用来描述隐含未知参数的统计模型,由显状态(可观测序列).隐状态.发射概率(隐状态产生显状态的概率).转移概率(显状态之间的转换).初始概率(通常指隐状 ...

  4. [转] 爱情的隐式马尔可夫模型(Love in the Hidden Markov Model)

    首先感谢原英文作者Tom Yeh的精彩描述,生动地讲述了HMM模型的原理,在此我斗胆用我自己的语言用中文修改描述一次. 感兴趣的可以点击这里下载latex生成的pdf 版本. 男生和女生分别是来自不同 ...

  5. 语音识别学习日志 2019-7-14 语音识别基础知识准备3 {Kmean算法分析与HMM(Hidden Markov Model)模型}

    Kmean算法 聚类算法 对于"监督学习"(supervised learning),其训练样本是带有标记信息的,并且监督学习的目的是:对带有标记的数据集进行模型学习,从而便于对新 ...

  6. Hidden Markov Model

    #HMM隐马尔科夫模型 ###①通俗的理解 首先举一个例子,扔骰子,有三种骰子,第一个是比较常见的6个面,每一个面的概率都是1/6.第二个只有4个面,,每一个面的概率是1/4.第三个有8个面,,每一个 ...

  7. 概率图模型笔记(二) 隐马尔科夫模型(Hidden Markov Model)

    写在前面 隐马尔科夫模型(Hidden Markov Model,以下简称HMM)是比较经典的机器学习模型了,它在语言识别,自然语言处理,模式识别等领域得到广泛的应用.最近入坑NLP,看到好多算法都涉 ...

  8. HMM(Hidden Markov Model)

    目录 HMM定义 HMM的确定 从⽣成式的观点考虑隐马尔科夫模型,我们可以更好地理解隐马尔科夫模型. HMM的参数 统一定义: HMM举例 HMM的3个基本问题 概率计算问题 定义:前向概率-后向概率 ...

  9. 机器学习中隐马尔可夫模型(Hidden Markov Model, HMM)理论

    隐马尔可夫模型(Hidden Markov Model, HMM) 前言 :内容从实际案例到模型提取.建立.求解以及应用,侧重于该模型在机器学习中的研究和应用. 参考书: <统计学习方法> ...

最新文章

  1. bzoj1791: [Ioi2008]Island 岛屿 单调队列优化dp
  2. 案例 | 新零售如何精细化运营?百联全渠道经验谈
  3. buildroot output子目录
  4. vector源码剖析
  5. [html] 如何优化大数据列表(10万+)的性能?说说你的方案
  6. Android系统性能优化(44)---全面详细的内存优化指南
  7. Java多线程归纳总结
  8. 集合类接口和类层次关系图
  9. odoo-OPENERP仓库各类知识详解
  10. 分布式数据库设计——分布式数据库的基础概念
  11. lbj学习日记 01 选择结构(c++,if,switch)
  12. 支持全球科研抗疫,艾柏森成功研发Omicron变异株重组蛋白
  13. WPF动画——故事板(Storyboard)
  14. 使用win32API获取打印机是否处于脱机状态
  15. android大图、高清图片处理
  16. 应用程序无法启动,因为应用程序的并行配置不正确,有关详细信息,请参阅应用程序事件日志,或使用命令行sxstrace.exe工具
  17. 物联网毕设选题 机器视觉人脸识别系统 - 单片机 stm32 嵌入式
  18. 转载GIS数据下载网站大全
  19. C语言基础教学(文件操作)
  20. 2009年10月最新剑侠世界(金山)CDKey :72099025

热门文章

  1. 972. 相等的有理数
  2. 数据库SQL笔试题目
  3. Qt 打印机打印条形码,二维码
  4. Ubuntu永久修改USB设备操作权限
  5. 多元时间序列预测之LSTM的实现
  6. springfox接口文档如何关闭
  7. day12函数进阶作业
  8. gcc-4.8.5 优化选项
  9. sql注入新手入门 从实战讲解SQL注入(手动注入+MySQL+靶场源码)
  10. Flutter 适配android/iOS设备的单位换算