AaronSpark 发表于 2006-3-27 02:59

[分享]语音识别研究的最新进展


<P>语音识别是机器通过识别和理解过程把语音信号转变为相应的文本文件或命令的高技术。作为专门的研究领域,语音识别又是一门交叉学科,它与声学、语音学、语言学、数字信号处理理论、信息论、计算机科学等众多学科紧密相连。语音识别经过四十多年的发展,已经显示出巨大的应用前景。
<P><B>语音识别研究的方法和内容 </B>
<P>实现非特定人、大词汇表的连续语音识别有两条主要途径,一条是知识工程或称为专家系统的途径,另一条则是统计方法的途径。前者已经不是现代语音识别研究的主流。所谓语音识别的概率统计方法,就是从底层到顶层,将全部语音的统计知识容纳在一个统一的隐含马尔可夫模型(HMM)框架内的研究方法。非特定人大词汇表连续语音识别系统的研究主要集中在声学模型、语言模型和训练识别算法等方面。
<P>1. 声学模型。声学模型是识别系统的底层模型,是语音识别系统中最关键的部分。声学模型的目标是计算语音特征矢量序列和每个发音模板之间的距离。声学模型的设计就是找到最小的识别单元,并为之建立HMM模型,它与语言的发音特点密切相关。识别单元的大小对语音训练数据量的大小、识别率和灵活*有较大影响。识别单元可以是词、字、半音节或音素。汉语识别单元的最新研究集中在半音节、二音子、三音子和五音子上。
<P>选取语音的识别特征参数也是语音识别研究中非常重要的一个方面。比较有效的识别参数为Mel频率倒谱系数(MFCC)、线*预测倒谱系数(LPCC)和感觉加权的线*预测倒谱系数(PLPCC)。
<P>2. 语言模型。语言模型是指语言中的一些规则或语法结构,也可以是表现字或词上下文之间的统计模型。由于语音信号的复杂*,不同发音之间存在叠接现象,有些单音如果前后没有联想即使人来分辨也很困难,借助于语言模型则可以提高声学模型的区分度。目前比较成熟的模型是统计语言模型,它通过对大量文本文件的统计提取不同字、词之间的统计关系。语音识别中常用的语言模型为N元文法语言模型,其根据已知前(N-1)个词预测当前第N个词的发生概率。这些常规语言模型的主要缺点是不能做到与任务无关。例如从新闻语料中训练出来的语言模型不能用于识别文学方面的有关内容。更先进的语言模型还有语义模型和词*模型。
<P>3. 语音识别系统的训练算法和识别算法。在确定了声学模型和语言模型后,语音识别系统余下的重要问题还要研究有效的训练算法和识别算法。语音识别系统的训练包括声学模型和语言模型的训练。声学模型的训练采用多步训练方法;语言模型的训练通过对大量的语料进行统计而建立。系统的识别算法要根据语言的特点、模型的整体结构进行设计。语音识别的搜索算法可以分为两类,一类为深度优先(depth-first),一类为宽度优先(breadth-first)。深度优先算法通常用堆栈解码器、A*解码算法;深度优先算法使用维特比解码算法。
<P><B>语音识别的发展方向和研究热点 </B>
<P>由于语音信号的多样*和复杂*,目前的语音识别系统只能在一定的限制条件下获得满意的*能,或者说只能应用于某些特定的场合。语音识别系统的*能大致取决于以下4类因素:1. 识别词汇表的大小和语音的复杂*;2. 语音信号的质量;3. 单个说话人还是多说话人;4. 硬件平台。
<P>语音作为当前通讯系统中最自然的通信媒介,随着计算机和语音处理技术的发展,不同语种之间的语音-语音翻译将成为语音研究的热点。目前做语种识别的主要机构有:美国OGI(Oregon Graduate Institute)的口语理解研究中心、MIT的口语语言系统研究小组和林肯实验室。语音识别目前研究的热点包括:自然语音数据库的设计;语音特征的提取;利用音语料库进行声学模型训练的研究;不依说话人和适应说话人声学模型的研究;语音识别算法的研究;语言翻译;语音合成和对话处理的研究等。
<P>语音识别研究的另一个发展方向是人体语言与口语相结合的多媒体人机交互。心理学研究显示,人类交际信息的全部表达=7%语调+38%声音+55%表情,这意味着在进行人类语音识别时,若加入说话人人体语言的信息,有助于对该语言的识别和理解,提高识别率。人体语言信息是视觉信息,可由摄像机摄入得到图象,对图像处理后可以得到有助于识别的人体语言信息。目前这种采用声觉、视觉两种信息融合进行识别的研究在全球范围内已经展开,将成为语音识别研究的重要发展方向和研究热点。
<P><B>语音识别技术产品介绍 </B>
<P>最早的语音识别系统Andry System诞生于1952年。60年代末70年代初,语音识别最重要的发展是语音信号线*预测编码(LPC)技术和动态时间规整(DTW)技术的发展。80年代语音识别的研究从模板匹配技术转向基于统计模型的技术,隐含马尔可夫模型的采用具有重要意义,同时统计语言模型也开始取代规则的模型。进入90年代后,语音识别技术进一步成熟,在研究上当前的识别系统已经达到了相当高的识别*能,在应用上已经有相当的商用语音识别软件投放市场。以下是目前业界主要应用和产品的简介:
<P>1. 听写机应用。IBM公司于1997年开发出汉语ViaVoice语音识别系统,次年又开发出可以识别上海话、广东话和四川话等地方口音的语音识别系统ViaVoice'98。它带有一个32,000词的基本词汇表,可以扩展到65,000词,还包括办公常用词条,具有“纠错机制”,其平均识别率可以达到95%。该系统对新闻语音识别具有较高的精度,是目前具有代表*的汉语连续语音识别系统。此外,比较著名的商用英语连续语音识别系统有:Dragon Naturally Speaking Preferred 4.0、Free Speech 2000、L&amp;H Voice Xpress Professional Version 4.0和ViaVoice Pro Millennium Edition等。
<P>2. 电话查询与交易应用。SpeechWorks公司是世界领先的电话自动语音识别系统(ASR )解决方案的提供者,代表产品为SpeechWorks 6。利用该产品,用户可以通过电话用自然语言与系统进行交互,进行旅游预约、股票交易、银行服务、订票服务、宾馆服务和寻呼服务等,由于系统是自动的,无需服务人员的介入。
<P>3. 基于掌上电脑和DSP的应用。通过简化识别算法,语音识别软件可以运行在如掌上电脑和DSP的平台上,实现语音导航、拨号和对家用电器的语音控制等功能。目前市场上出现了语音识别电话、语音识别记事本等产品,如美国VPTC公司的Voice Organizer和法国的Parrot等。此外,市场上还出现了语音识别专用芯片,如美国DSP Communication公司的DVC306和D6101、日本OKI半导体公司的MSM6679和美国Sensory Circuits公司的RSC164等。
<P><B>参考文献: </B>
<P>1. 刘加,汉语大词汇量连续语音识别系统的研究进展,电子学报,第1期,2000年1月。
<P>2. 江铭虎,朱小燕,袁保宗,语音识别与理解的研究进展,电路与系统学报,第4卷第2期,1999年6月。
<P>3. 邓勇钢,徐波,黄泰翼,Palm PC语音识别算法及实现。
<P>4. Lawrence Rabiner, Biing-Hwang Juang, Fundamental of Speech Recognition。</P>

dddd 发表于 2006-5-4 20:51

十万火急!MEL是这样求得吗?输入是一个语音数字信号,已经端点检测和加重,我得

<P>function C1=small_mfcc(data)<BR>N=256;<BR>shift=80;<BR>nfft=256;    <BR>numoverlap=N-shift;<BR>fs=8000;<BR>%帧间移动</P>
<P>fft_window=specgram(data,nfft,fs,hamming(N),numoverlap);<BR>%每列代表每帧的fft变换<BR>fft_frequency=abs(fft_window);<BR>SM=[];<BR>=size(fft_frequency);<BR>%应该加循环对每个列进行滤波,每个列代表一个窗<BR> for fft_colums=1:frame_sum_colums      <BR>   evf=fft_frequency(:,fft_colums);   <BR>   for filter_S=1:24<BR>         c=100; %定义滤波器阶数97阶<BR>         fc1=;%下限截止频率<BR>         fc2=;%上限截止频率<BR>         %参数转换,将模拟滤波器的技术指标转换为数字滤波器的技术指标<BR>         w1=2*pi*fc1(filter_S)/fs;<BR>         w2=2*pi*fc2(filter_S)/fs;<BR>         %使用三角窗函数<BR>         window=triang(c+1); <BR>         %使用标准响应的加窗设计函数fir1<BR>         h=fir1(c,,window); <BR>         %第frame帧滤波结果<BR>         S(:,filter_S)=filter(h,1,evf);<BR>    end<BR>    SM=cat(2,SM,S);%得到一个Mel频谱<BR>    S(:)=[];<BR>   <BR>end%得到一个数字Mel频谱      <BR>    %滤波器组输出的对数能量为CM<BR>    %206帧,每个帧经过个滤波器,最后得到206*13个对数能量输出<BR>    colums_sum=length(SM);<BR>    for colums_s=1:colums_sum %每一列进行对数能量处理<BR>             colums_s<BR>      for log_s=1:129%行循环<BR>            A=((abs(SM(log_s,colums_s)).^2)*hamming(log_s)); <BR>      end<BR>      <BR>    end<BR>    %得到余弦变换系数 <BR>    C=dct(log(A));<BR> <BR>    C1=dct(A,16)<BR>    <BR>    clear frame_sum_colums;<BR>    return </P>
页: [1]
查看完整版本: [分享]语音识别研究的最新进展