CN202217495U - 嵌入式语音识别系统 - Google Patents
嵌入式语音识别系统 Download PDFInfo
- Publication number
- CN202217495U CN202217495U CN2011203781955U CN201120378195U CN202217495U CN 202217495 U CN202217495 U CN 202217495U CN 2011203781955 U CN2011203781955 U CN 2011203781955U CN 201120378195 U CN201120378195 U CN 201120378195U CN 202217495 U CN202217495 U CN 202217495U
- Authority
- CN
- China
- Prior art keywords
- voice
- processing module
- module
- recognition system
- speech processing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Machine Translation (AREA)
Abstract
嵌入式语音识别系统,由语音采集模块,语音处理模块、PC机组成;所述语音处理模块通过RS-232总线连接PC机的控制接口模块;所述语音采集模块为语音采集PCB板,所述语音采集PCB板为一四阶的带通滤波器,所述语音采集PCB板将采集到的数据转换成PCM码后,通过SPI接口输入至语音处理模块;所述语音处理模块采用FPGA开发板,语音处理模块对PCM码进行预处理、端点检测、特征提取后得到语音的特征矢量序列。本实用新型系统嵌入式语音识别系统,性能满足玩具、游戏等消费娱乐电子设备对识别率和实时性的性能要求。
Description
技术领域
本实用新型涉及一种嵌入式语音识别系统。
背景技术
语音识别是语音处理领域内比较活跃的研究课题,目前已经提出了许多成熟的识别算法,其中动态时间规整(Dynamic Time Warping,DTW)算法是效果最好的一种非线性时间对准模板匹配算法。由于DTW算法既简单又有效,特别是在小词汇量非连续语音识别系统时,其性能比较好。由于该算法数据处理量比较大,目前常采用多DSP进行串行计算,但是识别速度依然较低,成为性能瓶颈,所以并不适用于一些实时大容量的说话人识别系统。
发明内容
本实用新型所要解决的技术问题是提供一种嵌入式语音识别系统,系统主要分为预处理、端点检测、LPCC特征提取和DTW动态规整匹配部分组成。整体调度采用中断方式实现。系统性能满足玩具、游戏等消费娱乐电子设备对识别率和实时性的性能要求。
为解决上述技术问题,本实用新型采取的技术方案是:嵌入式语音识别系统,由语音采集模块,语音处理模块、PC机组成;
所述语音处理模块通过RS-232总线连接PC机的控制接口模块;
所述语音采集模块为语音采集PCB板,所述语音采集PCB板为一四阶的带通滤波器,所述语音采集PCB板将采集到的数据转换成PCM码后,通过SPI接口输入至语音处理模块;
所述语音处理模块采用FPGA开发板,语音处理模块对PCM码进行预处理、端点检测、特征提取后得到语音的特征矢量序列。
PC机的控制接口模块包括串口接收部分、命令提取翻译部分、控制执行部分。
语音处理模块内部分别设有参考模块管理单元、测试模板管理单元、累积距离数据管理单元、局部距离数据管理单元、总控制单元。
本实用新型嵌入式语音识别系统,基于FPGA开发板,面向特定人、孤立词的嵌入式语音识别控制系统的设计与实现。本系统采用自行设计的语音采集板进行语音采集,用LPCC算法进行特征提取,DTW算法进行匹配识别,在具体实现过程中采用中断实现整体调度,对LPCC算法进行了定点化,极大地提高了系统的识别率和识别速度,满足消费娱乐电子产品对语音识别系统实时性和识别率的要求。
附图说明
下面结合附图和实施例对本实用新型作进一步说明:
图1为本实用新型系统连接图;
图2为本实用新型语音采集模块工作原理图;
图3为本实用新型滤波电路图。
具体实施方式
如图1、图2所示,本嵌入式语音识别系统由三部分组成:语音采集模块、语音处理模块、PC机及其控制接口模块组成。语音采集模块由语音采集PCB板实现,为一四阶的带通滤波器,是整个系统的人机接口,主要功能是将通过麦克风采集到的语音数据进行采样、量化、模数转换得到PCM码,然后将PCM码通过SPI接口传输给语音处理模块的FPGA开发板。语音处理模块对PCM码进行预处理、端点检测、特征提取得到语音的特征矢量序列。若是训练阶段则将参考模板存储到FLASH中;若是识别阶段则进行模式匹配得到语音识别结果,并通过RS-232串口将其传输到PC机上的控制接口模块,在PC机上进行识别比对。
如图3所示,滤波电路带通滤波器通频带为100HZ到20KHZ,采用四介带通滤波器,将信号放大滤波。
本实用新型嵌入式语音识别系统硬件部分:
1)、语音采集板使用DXP2004画制,带通滤波器通频带为100HZ到20KHZ,采样频率为20khz,采样精度为16bit。
2)、语音处理模块硬件平台采用原美国周立功公司生产的Fusion Startkit开发板来实现整个语音训练、识别过程。开发板上的核心芯片是美国ACTER公司生产的Fusion600芯片,开发板上RS-232串口用于传输识别结果;JTAG调试口用于调试程序;一块CPLD芯片和一块4M大小、SPI兼容的FLASH芯片存储可执行的系统文件;128M的SDRAM可用来存放系统运行时的中间数据。
本实用新型嵌入式语音识别系统软件部分:
1)、系统调度
本系统语音处理模块上接收PCM数据的SPI接口的缓冲区FIFO很小,只有8个字节,所以为了保证实时性,提高系统的运行速度。本系统采用定时中断来控制系统运行,当主程序使能SPI接口、打开定时中断以后,程序执行预处理、端点检测和LPCC特征提取算法,当定时器记到一定数值时,产生中断信号,此时系统中断预处理、端点检测和LPCC特征提取程序的运行,进入中断子程序。中断子程序的功能是实现将SPI的FIFO中的语音数据取出,转存到SDRAM存储器中,待FIFO为空时,中断返回,系统继续预处理、端点检测和LPCC特征提取程序的运行,直到一个语音命令被检测出来以后,系统关闭SPI接口和中断。此时,如果是训练阶段,则将得到的参考模板矢量序列存入到FLASH中;如果是识别阶段,则将参考模板从FLASH调入到SDRAM中,参考模板与测试模板进行DTW模式匹配,给出识别结果。随后,程序再次使能SPI、打开定时中断,循环执行上述过程,直到训练结束或者识别结束为止。
2)、预处理
本系统预处理部分主要对语音信号的PCM码进行了分帧、预加重、加汉明窗处理。语音信号只有在一短段时间间隔内才保持相对稳定一致的特征,因此对语音信号的分析和处理必须建立在“短时”的基础上。本系统的采样率为20kHz,取每帧30ms,240点为一帧。为了保证语音帧的连续性,采用帧重叠分析技术,帧长为10ms,即80个点.预加重按公式(1)计算(式中A取0.93)。
data(n)=S(n)-A*S(n-1) (1)
加汉明窗采用的窗函数如公式(2)所示(其中N为帧长,即一帧的采样点数)。
W(n)=0.54-0.46cos(2*n*pi/(N-1)) n=1,2,3……N-1 (2)
3)、端点检测
端点检测的作用是找出一段语音信号中语音命令的起点和终点的位置。本系统采用对短时平均幅度和短时平均过零率双门限的方法进行端点检测,精确地检测到语音的起点和终点,从而保证了系统的高识别率。
短时平均幅度的计算公式如(3)所示(N为帧长):
E=∑|d ata(n)| (3)
短时平均过零率加1,如果相邻两点的语音同时满足(4)、(5)两个条件(其中,n=0…N-2,delta=0.02):
sgn(d ata(n)*d ata(n+1))=-1 (4)
|d ata(n)-d ata(n+1)|>d elta (5)
具体实现时,为了避免将多个字的一条语音命令误检为多条语音命令造成误识,本系统将允许的最大静音长度延长至15帧,同时在此段语音结束的结尾减去相应的静音,以达到准确检测语音终点的目的。另外,为了避免短时噪音,本系统在端点检测时设定语音的最小长度,只有当语音超过此长度时才被判断为有效的语音命令,否则作为噪音放弃。
4)、特征提取
特征提取要从语音波形中提取出重要的反映语音特征的相关信息,去掉相对无关的信息.为适应嵌入式系统CPU主频低、存储资源有限的特点,需要尽可能的减少计算量、保证实时性。本系统特征提取采用LPCC算法,主要步骤为:
(1)计算自相关系数;
(2)利用德宾算法解矩阵方程计算10阶LPC系数;
(3)利用倒谱系数与LPC系数之间的递推关系计算16阶LPCC系数。
5)、模式匹配
本系统模式匹配部分采用DTW算法。参考模板表示为R={R1,R2,…,Rm,…,RM},测试模板表示为T={T1,T2,…,Tn,…,TN}。其中,Rm和Tn分别为第m帧参考语音和第n帧测试语音的特征参数。二者都是L=16维的矢量.用直角坐标系的横轴表示测试模板的各帧T1,…,TN,纵轴表示参考模板的各帧R1,…,RM.坐标系中每一个交叉点(n,m)表示测试模板中的某一帧与参考模板中的某一帧的交汇点。用DTW算法寻找一条通过此坐标系某些交叉点的最优路径,通过计算最优化的局部距离得到整体的最小累积距离。采用欧几里德公式计算局部距离,见公式(6),d(n,m)表示Tn和Rm这两帧特征矢量之间的失真。
d(n,m)=∑(Tn(l)-Rm(l))^2 (6)
数据点(Tn,Rm)的累积距离用D(n,m)表示,见公式(7)。
D(n-1,m-2)+2d(n,m-1)+d(m,n)
D(m,n)=min D(n-1,m-1)+2d(m,n) (7)
D(n-2,m-1)+2d(n-1,m)+d(m,n)
计算过程中,为了减少计算量,:采取了如下方法:
(1)全局路径约束,即只计算四条直线:y=0.5x,y=2x,y=0.5x+(M 20.5N),y=2x+(M 22N)所围的平行四边形内部的点。
(2)端点约束为固定起点、终点,即从左下角点开始计算,到右上角(TN,RM)点截止。
(3)对进行模式匹配的两条语音命令的长度N和M进行了约束,如果两者之间相差太大则直接放弃该参考模板,不进行DTW运算。
6)、控制接口
控制接口部分的软件是在PC机上利用VC++6.0开发的VoGame实现的,它在功能上分为三部分:
(1)串口接收部分,负责接收FPGA开发板发送的语音识别结果;
(2)命令提取翻译部分,将从串口接收的数据转换成被控对象能够识别的命令方式;
(3)控制执行部分,将命令发送给被控对象控制其动作执行。
LPCC算法定点化:
本系统的预处理、端点检测、特征提取部分是采用VHDL语言软件实现的。通常LPCC算法进行的是浮点运算,本嵌入式系统硬件平台中没有浮点运算单元,其浮点运算是用软件实现的,速度较慢。为了提高系统进行特征提取的速度,本系统对浮点运算进行了定点化处理。定点化采用的基本原理是:将浮点数映射到一个32位的整数域上,即用一个32位整型数表示一个浮点数,定标为Q(小数点的位置),浮点数和定点数的关系表示为:
浮点数(xf)转换为定点数(xd),xd=(int)xf×2^Q;
定点数(xd)转换为浮点数(xf),xf=(float)xd×2^Q。
预处理与端点检测阶段采用定标值Q=0。预处理阶段不进行归一化处理,预加重公式(1)中的A用如下公式计算:A=0.93。汉明窗不采用公式(2)直接计算,而是将各点的窗函数的值用查表的方式得到。端点检测计算短时平均过零率时delta=380,短时平均幅度和短时平均过零率的门限值设置也进行了相应定点化处理。LPCC特征提取阶段采用定标值Q=16。本系统根据定点化的原理,重新定义了数据的表示结构,重写了加减乘除四则运算函数,并对溢出问题进行了有效的处理。
DTW算法IP核化:
本系统中的DTW算法模块用FPGA硬件实现,采用硬件描述语言VHDL,使用ACTER公司提供的IDE与ModelSim工具协同工作,完成了基于FPGA的硬件设计、编译、仿真、综合、实现及验证;最后采用IDE工具制作好的DTW模块加到FPGA的总线上实现系统集成。本模块采用包含若干个处理单元的队列实现并行运算。模块内部有参考模板管理单元、测试模板管理单元、累积距离数据管理单元、局部距离数据管理单元、总控制单元六大模块组成。
系统识别性能:
对本系统进行测试,记录了10个不同的特定人(5名男性,5名女性)分别采用单模板进行系统训练后对10个语音命令进行识别时的平均识别率和单个命令的平均识别时间。该系统对单个特定人单模板的平均识别率达到88.0%,测试人说一个语音命令和进行语音采集、预处理、端点检测、LPCC特征提取的时间总和平均是0.886s,单个命令采用DTW算法进行匹配识别的时间平均是0.506s;对单个特定人双模板的平均识别率达到90.3%,测试人说一个语音命令和进行语音采集、预处理、端点检测、LPCC特征提取的时间总和平均是1.094s,单个命令采用DTW算法进行匹配识别的时间平均是0.614s。
因此对于单个特定人,采用双模板在平均识别率为90.3%的情况下,从用户说完语音命令后开始计时直到得到语音识别结果,所用时间在0.3s以下,满足语音控制玩具、游戏等消费娱乐电子设备对识别率和实时性的性能要求。
Claims (3)
1.嵌入式语音识别系统,其特征在于:由语音采集模块,语音处理模块、PC机组成;
所述语音处理模块通过RS-232总线连接PC机的控制接口模块;
所述语音采集模块为语音采集PCB板,所述语音采集PCB板为一四阶的带通滤波器,所述语音采集PCB板将采集到的数据转换成PCM码后,通过SPI接口输入至语音处理模块;
所述语音处理模块采用FPGA开发板,语音处理模块对PCM码进行预处理、端点检测、特征提取后得到语音的特征矢量序列。
2.根据权利要求1所述嵌入式语音识别系统,其特征在于:所述PC机的控制接口模块包括串口接收部分、命令提取翻译部分、控制执行部分。
3.根据权利要求1所述嵌入式语音识别系统,其特征在于:所述语音处理模块内部分别设有参考模块管理单元、测试模板管理单元、累积距离数据管理单元、局部距离数据管理单元、总控制单元。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011203781955U CN202217495U (zh) | 2011-10-09 | 2011-10-09 | 嵌入式语音识别系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011203781955U CN202217495U (zh) | 2011-10-09 | 2011-10-09 | 嵌入式语音识别系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN202217495U true CN202217495U (zh) | 2012-05-09 |
Family
ID=46016738
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011203781955U Expired - Fee Related CN202217495U (zh) | 2011-10-09 | 2011-10-09 | 嵌入式语音识别系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN202217495U (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102217495A (zh) * | 2011-05-11 | 2011-10-19 | 扬州维邦园林机械有限公司 | 一种绿篱剪 |
CN106297784A (zh) * | 2016-08-05 | 2017-01-04 | 王 | 智能终端游戏快速响应语音识别的方法和系统 |
CN108922519A (zh) * | 2018-09-04 | 2018-11-30 | 江苏清投视讯科技有限公司 | 具有语音控制功能的图像处理系统 |
CN109471758A (zh) * | 2018-11-22 | 2019-03-15 | 北京同有飞骥科技股份有限公司 | 存储数据掉电保护方法及系统 |
CN109979459A (zh) * | 2019-02-28 | 2019-07-05 | 西安爱生技术集团公司 | 一种基于非特定人语音识别的四旋翼飞行器控制系统 |
CN112034853A (zh) * | 2020-09-04 | 2020-12-04 | 南京凌华微电子科技有限公司 | 一种家庭监护机器人的工作方法 |
-
2011
- 2011-10-09 CN CN2011203781955U patent/CN202217495U/zh not_active Expired - Fee Related
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102217495A (zh) * | 2011-05-11 | 2011-10-19 | 扬州维邦园林机械有限公司 | 一种绿篱剪 |
CN106297784A (zh) * | 2016-08-05 | 2017-01-04 | 王 | 智能终端游戏快速响应语音识别的方法和系统 |
CN108922519A (zh) * | 2018-09-04 | 2018-11-30 | 江苏清投视讯科技有限公司 | 具有语音控制功能的图像处理系统 |
CN109471758A (zh) * | 2018-11-22 | 2019-03-15 | 北京同有飞骥科技股份有限公司 | 存储数据掉电保护方法及系统 |
CN109979459A (zh) * | 2019-02-28 | 2019-07-05 | 西安爱生技术集团公司 | 一种基于非特定人语音识别的四旋翼飞行器控制系统 |
CN112034853A (zh) * | 2020-09-04 | 2020-12-04 | 南京凌华微电子科技有限公司 | 一种家庭监护机器人的工作方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN202217495U (zh) | 嵌入式语音识别系统 | |
CN106448663B (zh) | 语音唤醒方法及语音交互装置 | |
CN107331384A (zh) | 语音识别方法、装置、计算机设备及存储介质 | |
US7177810B2 (en) | Method and apparatus for performing prosody-based endpointing of a speech signal | |
CN109147774B (zh) | 一种改进的延时神经网络声学模型 | |
CN103117067A (zh) | 一种低信噪比下语音端点检测方法 | |
Vargas et al. | A FPGA-based Viterbi algorithm implementation for speech recognition systems | |
CN112017648A (zh) | 加权有限状态转换器构建方法、语音识别方法及装置 | |
CN111667834B (zh) | 一种助听设备及助听方法 | |
EP4379712A1 (en) | Wake-on-voice method and apparatus, device, storage medium, and program product | |
CN106504756B (zh) | 嵌入式语音识别系统及方法 | |
Sharma et al. | Automatic speech recognition systems: challenges and recent implementation trends | |
WO2007017993A1 (ja) | 発音期間を特定する音信号処理装置および音信号処理方法 | |
Jing et al. | Speech recognition system based improved DTW algorithm | |
CN108074588B (zh) | 一种音高计算方法及装置 | |
CN1983388A (zh) | 一种基于dsp的语音识别及优化方法 | |
CN113793581A (zh) | 一种基于运动检测辅助识别的打击乐智能教育系统 | |
CN107437414A (zh) | 基于嵌入式gpu系统的并行化游客识别方法 | |
Ke et al. | A HMM speech recognition system based on FPGA | |
Chit et al. | Myanmar continuous speech recognition system using fuzzy logic classification in speech segmentation | |
Gu et al. | A set of dsp system to detect baby crying | |
Liu | Voice control system based on Zynq FPGA | |
JP2012155301A (ja) | 状況認知型音声認識方法 | |
CN110265014A (zh) | 一种语音控制的方法、装置及翻译机 | |
CN113643692B (zh) | 基于机器学习的plc语音识别方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120509 Termination date: 20121009 |