当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]孤立词语音识别系统的DSP实现


0 引 言
    在孤立词语音识别中,最为简单有效的方法是采用动态时间规整(Dynamic Time Warping,DTW)算法,该算法解决了发音长短不一的模板匹配问题,是语音识别中出现最早、较为经典的一种算法。用于孤立词识别,该算法较现在比较流行的HMM算法在相同的环境条件下,识别效果相差不大,但HMM算法要复杂的多,这主要体现在HMM算法在训练阶段需要提供大量的语音数据,通过反复计算才能得到模型参数,而DTW算法的训练中几乎不需要额外的计算。所以在孤立词语音识别中,DTW算法仍得到广泛的应用。本系统就采用了该算法。


1 系统概述
    语音识别系统的典型实现方案如图1所示。输入的模拟语音信号首先要进行预处理,包括预滤波、采样和量化、加窗、断点检测、预加重等。语音信号经过预处理后,接下来重要的一环就是特征参数提取,其目的是从语音波形中提取出随时间变化的语音特征序列。然后建立声学模型,在识别的时候将输入的语音特征同声学模型进行比较,得到最佳的识别结果。

2 硬件构成
2.1 系统构成
    这里采用DSP芯片为核心(图2),系统包括直接双访问快速SRAM、一路ADC/一路DAC及相应的模拟信号放大器和抗混叠滤波器。外部只需扩展FLASH存储器、电源模块等少量电路即可构成完整系统应用。

[!--empirenews.page--]

2.2 系统主要功能模块构成
    语音处理模块采用TI TMS320VC5402,其主要特点包括:采用改进的哈佛结构,一条程序总线(PB),三条数据总线(CB,DB,EB)和四条地址总线(PAB,CAB,DAB,EAB),带有专用硬件逻辑CPU(40位算术逻辑单元(ALU),包括1个40位桶形移位器和二个40位累加器;一个17×17乘法器和一个40位专用加法器,允许16位带或不带符号的乘法),片内存储器(八个辅助寄存器及一个软件栈),片内外专用的指令集,允许使用业界最先进的定点DSP C语言编译器。TMS320VC5402含4 KB的片内ROM和16 KB的双存取RAM,一个HPI(HostPortInterface)接口,二个多通道缓冲单口MCBSP(Multi-Channel Buffered SerialPort),单周期指令执行时间10 ns,带有符合IEEE1149.1标准的JTAG边界扫描仿真逻辑。语音输入、输出的模拟前端采用TI公司的TLC320ADSOC,它是一款集成ADC和DAC于一体的模拟接口电路,并且与DSP接口简单,性能高、功耗低,已成为当前语音处理的主流产品。16位数据结构,音频采样频率为2~22.05 kHz,内含抗混叠滤波器和重构滤波器的模拟接口芯片,还有一个能与许多DSP芯片相连的同步串行通信接口。TLC320AD50C片内还包括一个定时器(调整采样率和帧同步延时)和控制器(调整编程放大增益、锁相环PLL、主从模式)。TLC320AD50C与TMS320VC5402的硬件连接,如图3所示。

3 语音识别算法实现
3.1 语音信号的端点检测
    语音的端点检测是语音识别中最基本的模块,在嵌入式语音识别系统中更是占有非常重要的地位:一方面端点检测的结果不准确,系统的识别性能就得不到保证;另一方面如果端点检测的结果过于放松,虽然语音部分被很好地包含在处理的信号中,但是增加过多的静音则会增加系统的运算量,同时对识别性能也有负面影响。因此为能量和过零率两个参数分别设定两个门限,一个是比较低的门限,数值比较小,对信号的变化比较敏感,很容易就被超过。另一个是比较高的门限,数值比较大,信号必须达到一定的强度,该门限才可能被超过。低门限被超过未必就是语音的开始,有可能是时间很短的噪声引起的。高门限被超过,则基本确信是由于语音信号引起的。
    整个语音信号的端点检测可以分为四段:静音、过渡段、语音段、结束。程序中使用一个变量status来表示当前所处的状态。在静音段,如果能量或过零率超越了低门限,就应该开始标记起始点,进入过渡段。在过渡段中,由于参数的数值比较小,不能确信是否处于真正的语音段,因此只要两个参数的数值都回落到低门限以下,就将当前状态恢复到静音状态。而如果在过渡段中两个参数中任意一个超过了高门限,就可以确信进入语音段了。一些突发性的噪声可以引发短时能量或过零率的数值很高,但是往往不能维持足够长的时间,这些可以通过设定最短时间门限来判别。当前状态处于语音段时,如果两个参数的数值降低到低门限以下,而且总的计时长度小于最短时间门限,则认为这是一段噪音,继续扫描以后的语音数据。否则就标记好结束端点,并返回。
3.2 语音特征参数的提取
    近年来,一种能够比较充分利用人耳这种特殊的感知特新的参数得到了广泛的应用,这就是Mel尺度倒谱参数(Mel-scaled Cepstrum Coefficients,MFCC)。它和线性频率的转换关系是:
    fMel=2 596log10(1+f/700)
    MFCC参数是按帧计算的。首先要通过FFT得到该帧信号的功率谱,转换为Mel频率下的功率谱。这需要在计算之前先在语音的频谱范围内设置若干个带通滤波器Hm(n)。MFCC参数的计算流程为:
    (1)确定每一帧语音采样序列的点数,本系统采取N=256点。对每帧序列s(n)进行预加重处理后再经过离散FFT变换,取模的平方得到离散功率谱s(n)。
    (2)计算s(n)通过M个Hm(n)后所得的功率值,即计算s(n)和Hm(n)在各个离散频率点上乘积之和,得到M个参数Pm,m=0,1,…,M-1。
    (3)计算Pm的自然对数,得到Lm,m=0,1,…,M-1。
    (4)对L0,L1,…,LM-1计算其离散余弦变换,得到Dm,m=0,1,…,M-1。
    (5)舍去代表直流成分的D0,取D1,D2,…,DK作为MFCC参数。此处K=12。
3.3 特定人语音识别算法
    在孤立词语音识别中,最为简单有效的方法是采用DTW动态时间规整算法,设参考模板特征矢量序列为A={a1,a2,…,aj),输入语音特征矢量序列为B={b1,b2,…,bk),j≠k。DTW算法就是要寻找一个最佳的时间规整函数,使得语音输入B的时间轴k映射到参考模板A的时间轴j上总的累计失真最小。
    将己经存入模板库的各个词条称为参考模板,一个参考模板可以表示为{R(1),R(2),…,R(M)},m为训练语音帧的时序标号,m=1为起点语音帧,m=M为终点语音帧,因此M为该模式包含的语音帧总数,R(m)为第m帧语音的特征矢量。所要识别的一个输入词条语音称为参考模板,可表示为{T(1),T(2),…,T(N)),n为测试语音帧标号,模板中共包含N帧音,T(n)为第n帧音的特征矢量。[!--empirenews.page--]
    为了比较它们的相似度,可以计算,它们之间的失真D[T,R],失真越小相似度越高。为了计算这一失真,应从T和R中各个对应帧之间的失真算起。将各个对应帧之间的失真累计起来就可以得到两模式间的总失真。很容易想到的办法是当两模式长度相等时,直接以相等的帧号相匹配后累加计算总失真,而当两个模式长度不等时则利用线性扩张或线性压缩的方法使两模式具有相等长度,随后进行匹配计算失真度。但由于人类发音具有随机的非线性变化,这种方法效果不可能是最佳的。为了达到最佳效果,可以采用动态时间规整的方法。如图4所示,横坐标对应“1”这个字音的一次较短的发音,经过分帧和特征矢量计算后共得到一个长度为43帧的语音序列,而纵坐标对应“1”这个字音的一次较长的发音,该语音特征序列共有56帧。为了找到两个序列的最佳匹配路径,现把测试模式的各个帧号n=1~N(图4中N=43)在一个二维直角坐标系中的横轴上标出,把参考模式的各帧号m=1~M(图4中M=56)在纵轴上标出。

    通过这些表示帧号的整数坐标画一些纵横线即可形成一个网格,网格中何一个节点(n,m)表示测试模式中的某一帧和参考模式中的某一帧的交汇点。动态时间规整算法可以归结为寻找一条通过此网格中若干交叉点的路径,路径通过的交叉点即为参考模式和测试模式中进行失真计算的帧号。路径不是随意选择的,首先任何一种语音的发音快慢可能有变化,但是各部分的先后顺序不可能改变,因此所选的路径必定从左下角出发,在右上角结束。其次为了防止漫无目的的搜索,可以删去那些向n轴方向或者m轴方向过分倾斜的路径(例如,过分向n轴倾斜意味着R(m)压缩很大而T(n)扩张很大,而实际语音中这种压、扩总是有限的)。为了引入这个限制,可以对路径中各通过点的路径平均斜率的最大值和最小值予以限制。通常最大斜率定为2,最小平均斜率定为1/2。路径的出发点可以选择(n,m)=(1,1)点,也可以选择(n,m)=(1,2)或(1,3)或(2,1)或(3,1)…点出发。前者称为固定起点,后者称为松弛起点。同样,路径可在(n,m)=(N,M)点结束,也可以在(n,m)=(N,M-1)或(N,M-2)或(N-1,M)或(N-2,M)…点结束。前者称为固定终点,后者称为松弛终点。
    使用DTW算法为核心直接构造识别系统十分简单,首先通过训练得到词汇表中各参考语音的特征序列,直接将这些序列存储为模板。在进行识别时,将待识语音的特征序列依次与各参考语音特征序列进行DTW匹配,最后得到的总失真度最小且小于识别阈值的就认为是识别结果。该方法最显著的优点是识别率极高,大大超过目前多数的HMM语音识别系统和VQ语音识别系统。但其最明显的缺点是由于需要对大量路径及这些路径中的所有节点进行匹配计算,导致计算量极大,随着词汇量的增大其识别过程甚至将达到难以接受的程度,因此无法直接应用于大、中词汇量识别系统。


4 结 语
    以本系统为基础开发了一种语音拨号系统,经过大量实验表明,该系统电路运行稳定,且识别率可以达到90%。系统成本低,稍加改进就可把该语音识别模块移植应用到各种系统设备中。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

欧洲药品管理局人用药品管理委员会 (CHMP) 的积极建议是基于 EFFISAYIL® 1 研究结果,该研究是针对泛发性脓疱型银屑病 (GPP) 发作患者的最大的临床研究[1] 与斑块状银屑病不同,GP...

关键字: HM BSP GP FOR

(全球TMT2022年9月22日讯)建筑项目管理软件领域企业InEight Inc.宣布了最新的软件创新,包括范围、设计和资源管理方面的新流程标准化,以及新的进展跟踪功能和创建基准验证型进程预估和时间表的能力。该更新还...

关键字: 软件 进程 应用程序 模板

(全球TMT2022年7月28日讯)创客贴正式推出公益版会员项目,皆在通过创意内容智能解决方案,提升公益组织的内容生产能力,降低公益组织设计成本。目前,已签约使用的公益组织达500余家,好公益平台、南都公益基金会、北京...

关键字: 创客 模板 美的 数字资产

北京2022年7月28日 /美通社/ -- 在数字化经济、新媒体时代背景下,创意视觉设计对公益组织的重要性愈发凸显。一张精美的视觉海报,可以迅速吸引大众眼球并唤起心中的感知,易于将公益信息加速传播。 因此想要提升公益事...

关键字: 创客 大众 模板 美的

美国医学会(AMA)的统计数据显示,在医生的职业生涯中,35%~40%的时间都用来书写病历。医生看电脑的时间比看病人还多,这也是患者抱怨最多的地方之一。如果采用人工智能(AI)技术加持的语音识别系统,医生录入效率至少可以...

关键字: 智慧医疗 语音识别系统 智能诊疗

Mixpanel将创业计划提供给更多公司,推出免费公司KPI仪表板模板,帮助初创公司衡量重要指标  旧金山2022年7月20日 /美通社/ -- Mix...

关键字: PANEL MIX 仪表 模板

北京2022年7月20日 /美通社/ -- 今天下午,菲仕兰全球公布了2022年上半年成绩单,总营收达到66亿欧元,同比上涨19.4%。其中,专业营养品业务集团收入同比上涨18.6%至6.12亿欧元。菲仕兰中国业绩稳步增...

关键字: 数字化 终端 HM 可持续发展

北京2022年6月23日 /美通社/ -- 6月22日,荷兰皇家菲仕兰中国区总裁陈戈应邀出席2022国际食品安全与健康大会,并分享菲仕兰通过技术创新和原料创新保障婴幼儿食品安全,助力宝宝健康成长。 菲仕兰中国区总裁陈戈...

关键字: 手机 区块链技术 HM

助力品牌快速布局AR虚拟试妆及AI肌肤检测服务 为更多品牌及消费者打造个性化、专属化的淘宝电商购物之旅 上海2022年6月13日 /美通社/ -- 一年一度的淘宝618正如火如荼的进行中。对于部分品牌来说...

关键字: 模板 移动 小程序 AI技术

Sumo Logic欢迎销售、渠道和运营业务领导者,以帮助公司抓住巨大的市场机会并进一步实现增长和规模

关键字: LOGIC OS HM Cisco

嵌入式教程

6897 篇文章

关注

发布文章

编辑精选

技术子站

关闭