CN102034476B - 语音帧错误检测的方法及装置 - Google Patents
语音帧错误检测的方法及装置 Download PDFInfo
- Publication number
- CN102034476B CN102034476B CN2009101745877A CN200910174587A CN102034476B CN 102034476 B CN102034476 B CN 102034476B CN 2009101745877 A CN2009101745877 A CN 2009101745877A CN 200910174587 A CN200910174587 A CN 200910174587A CN 102034476 B CN102034476 B CN 102034476B
- Authority
- CN
- China
- Prior art keywords
- frame
- parameter
- speech frame
- subframe
- described speech
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 127
- 238000001514 detection method Methods 0.000 claims abstract description 50
- 230000008439 repair process Effects 0.000 claims description 36
- 230000007704 transition Effects 0.000 claims description 11
- 230000007774 longterm Effects 0.000 claims description 9
- 238000012360 testing method Methods 0.000 claims description 8
- 238000003780 insertion Methods 0.000 claims description 7
- 230000037431 insertion Effects 0.000 claims description 7
- 230000005284 excitation Effects 0.000 claims 7
- 238000005284 basis set Methods 0.000 claims 1
- 238000004891 communication Methods 0.000 abstract description 9
- 238000010295 mobile communication Methods 0.000 abstract description 6
- 230000008569 process Effects 0.000 description 23
- 230000005540 biological transmission Effects 0.000 description 15
- 238000013213 extrapolation Methods 0.000 description 12
- 230000008859 change Effects 0.000 description 11
- 238000009499 grossing Methods 0.000 description 11
- 238000012937 correction Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 5
- 206010019133 Hangover Diseases 0.000 description 4
- 101001138022 Homo sapiens La-related protein 1 Proteins 0.000 description 4
- 102100020859 La-related protein 1 Human genes 0.000 description 4
- 101100408810 Schizosaccharomyces pombe (strain 972 / ATCC 24843) pof8 gene Proteins 0.000 description 4
- 238000005259 measurement Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 239000012141 concentrate Substances 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 241001672694 Citrus reticulata Species 0.000 description 1
- 101100070541 Podospora anserina (strain S / ATCC MYA-4624 / DSM 980 / FGSC 10383) het-S gene Proteins 0.000 description 1
- 206010038743 Restlessness Diseases 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000007621 cluster analysis Methods 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005562 fading Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000002715 modification method Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000001681 protective effect Effects 0.000 description 1
- 238000005086 pumping Methods 0.000 description 1
- 230000035807 sensation Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
本发明实施例提供一种语音帧错误检测及修复的方法及装置,涉及通信领域,能够利用语音信号的特点及编码参数的先验统计特性进行错误帧的检测和修复。检测方法为:在静音模式下,收到一个参数指示为正确的语音帧,则根据预先设置的检测规则对所述语音帧参数进行检测,当满足所述检测规则规定的条件时,确定所述语音帧是错误语音帧。以及,在语音模式下,收到一个参数指示为错误的语音帧,则根据所述语音帧的参数平均值对所述语音帧的静音***描述SID进行检测,当满足检测条件时,确定所述语音帧是SID帧。本发明实施例可用于GSM全速率语音编解码。
Description
技术领域
本发明涉及通信领域,尤其涉及一种语音帧错误检测的方法及装置。
背景技术
GSM(Global System for Mobile Communications,全球移动通信***)移动通信***是一种典型的基于TDMA(Time Division Multiple Access,时分多址)和FDMA(Frequency Division Multiple Access,频分多址)实现多用户通信的数字蜂窝移动通信***,其容量较模拟蜂窝移动通信***有了很大的提高。
语音通信是GSM移动通信中的一个重要应用。GSM***目前采用四种编解码方案,分别为:全速率、增强型全速率、自适应多速率及半速率语音。
GSM全速率语音采用RPE-LTP LPC(Regular Pulse Excited-Long TermPredition-Linear Predictive Coding,规则脉冲激励-长时预测-线性预测编码)方案。GSM全速率语音的编码参数如表1所示:
表1、GSM全速率语音的编码参数
在典型的双向通话过程中,每个传输信道的有效利用率平均为50%。为提高传输信道的利用效率,并达到减少耗电、减少无线接口总体干扰的目的,在无线语音通信中,采用非连续传输(Discontinuous Transmission,DTX)的模式,仅在有语音信号时进行传输,在语音中止时则切断无线传输。DTX机制要求有如下几项功能:
发送端的语音活动检测(Voice Activity Detection,VAD);
发送端的背景噪声估计和静寂描述符(Silence Insertion Descriptor,SID)帧生成,向接收端传输舒适噪声特征参数;
接收端的舒适噪音产生。
VAD模块用来检测和区别语音段和静音段。其输出结果为二元语音指示,0表示静音,1表示语音。当语音指示为1时,DTX将编码后的语音参数直接传递给无线子***(Radio Subsystem,RSS),进行正常的信号发送。当语音指示为0时,结合历史信息,DTX采取一定的拖尾(Hangover)措施,以避免在短暂的语音停顿时切断无线传输;当VAD=0的累积帧数超过拖尾时长(HangoverPeriod)时,DTX才切断无线传输。
若在DTX处理器切断无线传输时,接收端不输出任何信号而呈现完全的静寂,将令听者产生非常不适的感觉,从而降低整体语音通信感知质量。为解决此问题,接收端采用了“舒适噪音”功能,即利用SID帧提供的频谱参数产生类似发送端背景噪音的声音。在非语音段,每经过一段预定的时间间隔,发送一个包含一组参数的SID帧。发送SID帧的时间间隔比语音帧长很多,由此可以有效地减小传输速率,减少信道拥塞。
在接收端,天线始终保持开启状态。当没有信号发送时,天线接收到的是随机噪声。接收端信道解码过程中采用CRC(Cyclical Redundancy Check,循环冗余码校验)对接受比特流进行检测,通常能够将随机噪声比特流判断为错误帧。此时,接收端利用最后一个有效SID帧的参数进行替代,并输入语音解码器进行解码,此时解码器输出的为舒适噪声。
在无线语音通信中,信道噪声和信道衰落效应等造成的误码和丢帧现象比较常见。存在误码的语音参数帧通常包含被污染的语音参数,若直接进行解码,可能出现尖锐刺耳的噪声,降低语音通信质量;但若完全不输出信号,则造成语音信号出现空白和不连续,使听者感觉非常不舒服,严重影响语音通信的主观质量。因此,错误帧的检测和修复对于***的主观语音质量尤为重要。GSM的FR编解码算法在设计时已经做了相关的鲁棒性考虑。通常的做法为每当出现丢帧时,通过取前几帧的参数来做平滑,尽量恢复语音波形。
在实现上述GMS全速率语音帧错误检测及丢帧错误隐藏的过程中,发明人发现现有技术中至少存在如下问题:
CRC校验保护能力较弱,不能检测出所有的重要比特传输错误;且二元判断模式过于简单,不能灵活处理比特错误。
另外,现有丢帧错误隐藏方法会将错误帧内的有用信息完全丢弃,不能得到有效利用;且参数替代无法跟踪语音信号的动态变化。
发明内容
本发明的实施例提供一种语音帧错误检测的方法及装置,能够利用语音信号的特点,以及语音编码参数的先验统计特性进行错误帧的检测。
为达到上述目的,本发明的实施例采用如下技术方案:
一种错误帧检测方法,包括:
在静音模式下,收到一个参数指示为正确的语音帧,则根据预先设置的检测规则对所述语音帧参数进行检测,当满足所述检测规则规定的条件时,确定所述语音帧是错误语音帧。
一种错误帧检测装置,包括:
接收单元,用于在在静音模式下,接收语音帧。
检测单元,用于当接收到的语音帧为一个参数指示为正确的语音帧时,根据预先设置的检测规则对所述语音帧参数进行检测,当满足所述检测规则规定的条件时,确定所述语音帧是错误的语音帧。
本发明实施例提供的错误帧检测方法及装置,通过在静音模式下,收到一个参数指示为正确的语音帧,则根据预先设置的检测规则对语音帧参数进行检测,当满足检测规则规定的条件时,确定语音帧是错误语音帧。这样,能够消除由于CRC校验误判所导致的大量静音段噪声,进而大幅降低对解码语音质量的影响,提高用户体验。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1A为本发明实施例一提供的一种错误帧检测方法的流程框图;
图1B为本发明实施例一提供的另一种错误帧检测方法的流程框图;
图2为本发明实施例提供的DTX处理模型示意图;
图3为本发明实施例二提供的语音帧修复方法的流程框图;
图4为本发明实施例三提供的语音帧修复方法的流程框图;
图5为本发明实施例提供的错误帧检测装置的结构框图一;
图6为本发明实施例提供的错误帧检测装置的结构框图二;
图7为本发明实施例提供的错误帧检测装置的结构框图三;
图8为本发明实施例提供的错误帧检测装置的结构框图四;
图9为本发明实施例提供的语音帧修复装置的结构框图一;
图10为本发明实施例提供的语音帧修复装置的结构框图二;
图11本发明实施例提供的语音帧修复装置的结构框图三;
图12为本发明另一实施例提供的语音帧修复装置的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例一提供一种错误帧检测方法,如图1A所示,该方法包括:
S101、在静音模式下,收到一个参数指示为正确的语音帧,则根据预先设置的检测规则对语音帧参数进行检测,当满足检测规则规定的条件时,确定语音帧是错误语音帧。
在本实施例中,参数指示为正确的语音帧为BFI=0且SID=0的语音帧。
具体的,预先设置的检测规则可以为:在静音模式下,收到一个BFI=0,且SID=0的正确语音帧,若该语音帧后一帧的SID=2或BFI=1,则确定该语音帧是错误语音帧。进一步地,还可以将该语音帧的BFI重置为1。
此外,预先设置的检测规则还可以是:在静音模式下,收到一个BFI=0,且SID=0的正确语音帧,获取该语音帧的LAR参数,语音帧子帧的RPEMAX、LTPlag、LTPGain参数的先验概率,若其中任意一个参数的先验概率小于第一阈值,则确定该语音帧是错误语音帧;或者分别获取该语音帧前一帧、该语音帧以及该语音帧后一帧的LAR参数,和该语音帧前一帧子帧、该语音帧子帧以及该语音帧后一帧子帧的RPEMax参数的先验转移概率,若其中任意一个参数的先验转移概率小于第二阈值,则确定该语音帧是错误语音帧,并进一步地将该语音帧的BFI重置为1。可选的,本处理过程即可以在接收到正确帧后立即进行,也可以在不满足上一检测规则后进行。
这样,能够在静音模式下准确识别出实际错误的语音帧,提高语音帧检测的准确度,避免由于语音帧检测错误导致的错误的解码方式,从而提高语音质量。
进一步的,为了实现语音模式下对语音帧的准确检测,如图1B所示,本发明实施例一提供的方法,还可以进一步包括:
S102、在语音模式下,收到一个参数指示为错误的语音帧,则根据语音帧的参数平均值对该语音帧的SID进行检测,当满足检测条件时,确定该语音帧是SID帧。
在本实施例中,参数指示为错误的语音帧可以为BFI=1,且SID=0的语音帧。
具体的,本步骤中的检测条件可以为:获取该语音帧的4个子帧的LTPLag参数的平均值获取该语音帧前一帧的4个子帧的RPEMax参数的平均值以及该语音帧的4个子帧的RPEMax参数的平均值若小于第三阈值,且小于第四阈值,且小于第四阈值,则确定所述语音帧是SID帧。进一步地,还可以将该语音帧的SID重置为2。
这样,能够消除由于CRC校验误判所导致的大量静音段噪声,以及能够正确识别被干扰的SID帧,最大程度利用语音帧内的有效信息,大幅降低对解码语音质量的影响,提高用户体验。
下面,提供一个具体的实施例来说明实施例一中的错误帧检测方法的一个实现过程,实施例一的错误帧检测方法可直接实施到传统的GSM全速率语音接收端,嵌入到信道解码器之后,语音解码器之前,可视为语音解码预处理过程。本方法的输入为信道解码器得到的帧参数共76个、以及相应的错误帧指示(BFI)、静音***描述符指示(SID),共78个有效参数。本方法的输出为修复或平滑后的帧参数(共76个)、修正的错误帧指示(M_BFI)、修正的静音***描述符指示(M_SID),共78个有效参数。
该实施例采用一个DTX状态机以描述语音段和静音段之间的转换。DTX状态机的起始状态为静音状态,其状态跳转依赖于由图2左边所示的增强型错误检测模块输出的修正BFI(M_BFI)和修正SID(M_SID)指示。另一方面,增强型错误检测模块的操作也依赖于DTX状态。DTX状态机与增强型错误检测模块之间相辅相成、互相制约,使得DTX状态机的跳转更为稳健可靠。
具体的,当DTX状态机处于静音状态时,若接收到一个“正确语音帧”,即该语音帧中SID=0,且BFI=0,这里虽然参数指示为“正确的语音帧”,但指示可能是不正确的,该语音帧实际可能是错误的语音帧,本实施例中首先根据两条原则进行初步判断该语音帧是否错误的语音帧,这两条原则是:
(1)若该语音帧的后一帧为SID帧,则判断该语音帧是错误的语音帧,将该语音帧BFI指示重置为1;
(2)若该语音帧的后一帧的BFI指示为1,则判断该语音帧是错误的语音帧,将该语音帧BFI指示重置为1。
经过上述判断,若不能判断为该“正确语音帧”为错误帧,则启动起始语音帧参数检测模块401。当然,也可以不经过上述过程,直接启动起始语音帧参数检测模块401进行判断。
这里所指的起始语音帧,即是从静音模式切换到语音模式时所接收到的第一个语音帧,DTX状态机能够根据该语音帧将静音模式切换到语音模式。
语音起始段参数检测方法主要控制静音模式到语音模式的转换,该模块利用两方面的信息进行错误检测:
(1)获取各参数取值的先验概率,若当前语音帧的LAR参数,当前语音帧子帧的RPEMax参数、LTPlag参数、LTPGain参数中有一个参数取值的先验概率小于给定阈值(即第一阈值),即确定为错误帧,将当前语音帧BFI指示重置为1。
(2)获取当前语音帧前一帧、当前语音帧和当前语音帧后一帧的LAR参数,获取当前语音帧前一帧子帧、当前语音帧子帧和当前语音帧后一帧子帧的RPEMax参数的先验转移概率,若有一个参数取值的先验转移概率小于给定阈值(即第二阈值),即确定为错误帧,将当前帧BFI指示重置为1。
各参数的先验概率和先验转移概率在2700000多个语音帧上统计得到,这些语音帧包括普通话、美式英语、德语、法语、西班牙语和日语六个语种,部分语料中包含噪声和音乐。在本发明实施例中,先验概率阈值(第一、第二阈值)均取为0.0001,该值为不固定的经验值。利用这些知识和规则,起始语音帧参数检测能够纠正90%以上的静音段CRC检测错误,消除大部分的静音段杂音。
进一步地,针对语音模式到静音模式的跳转,本发明实施例采用SID帧检测模块402识别被干扰的SID帧。在某些情况下,当语音段将要结束时,若信道噪声较为严重,会使得SID帧也受到信道噪声的污染。若SID标志受到干扰,使得语音解码器不能正确识别该帧为SID帧,会将其作为语音帧处理,DTX状态机不能正确跳转到静音状态。这将引起一系列的后续问题。另外,语音起始段参数检测模块可能无法识别某些静音段的随机噪声帧。若出现这样的情况,能够正确识别被干扰的SID帧,并迅速将DTX状态机转移到静音状态,则能将对解码语音质量的影响降到最低。增强型DTX模块中的SID帧检测实现的就是这个功能。
当DTX状态机处于语音状态,且当前的信号幅度较小时,每接收到一个“错误语音帧”即SID=0,且BFI=1的语音帧,都对其进行SID帧模式检查。主要对两类参数进行检查:
对于长时预测延迟参数(LTPLag),计算当前帧的4个子帧的LTPLag参数平均值
对于子帧块幅度参数(RPEMax),计算前一帧的4个子帧和当前帧的4个子帧的RPEMax参数平均值
当且且时,认为当前帧为SID帧,将SID标志重置为2,即确定当前语音帧是SID帧,并将当前帧4个子帧的LTPLag参数和RPEMax参数均重置为0。在本方案中,阈值TL(即第三阈值)取为经验值10,阈值TP(即第四阈值)取为经验值4。
结合语音起始段参数检测和SID帧检测,根据修正后的M_BFI指示和M_SID指示,控制DTX状态机的状态跳转。如图2中右图所示,起始状态处于静音模式,当接收到M_BFI=1或M_SID=2,即错误帧或SID帧时,保持在静音模式下;当接收到M_BFI=0,即正确语音帧时,从静音模式切换到语音模式;在语音模式下,当接收到M_SID=0,即语音帧时,保持在语音模式下;当接收到M_SID=2,即SID帧时,从语音模式切换到静音模式。
本发明实施例一提供的方法采用更加严格的静音-语音状态跳转控制,利用实际语音信号的统计信息帮助进行起始语音帧的有效性检测,同时利用SID帧检测方法识别标识信息错误的SID帧,解决了现有技术中单纯依赖CRC检验,导致标识信息不可靠、解码信号中易出现大量静音段噪声的问题,能正确检测出CRC误判的静音段随机噪声帧,从而有效消除静音段噪声。
本发明实施例二提供一种语音帧修复方法,如图3所示,该方法包括:
S301、根据语音帧前后帧或前后帧子帧的参数,或者根据语音帧子帧的前后子帧的参数生成参考参数。
对于语音帧来讲,LAR参数为语音帧的参数,每个LAR参数有8个分量,RPEMax参数、LTPLag参数、LTPGain参数是该语音帧子帧的参数,其中,每个语音帧有4个子帧。
本步骤,具体可以分别为:
根据该当前语音帧前两帧的LAR参数、该当前语音帧前一帧的LAR参数和该当前语音帧后一帧的LAR参数,生成参考LAR参数。
或设该当前语音帧前一帧4个子帧的RPEMax参数为第一集合、设该当前语音帧后一帧4个子帧的RPEMax参数为第二集合、设该当前语音帧前一帧4个子帧和该当前语音帧后一帧4个子帧的8个RPEMax参数第三集合,以三个集合中各分量元素变化最小的集合作为参考RPEMax参数。
或采用最小聚类法对该当前语音帧4个子帧的LTPLag参数、该当前语音帧前一帧4个子帧的LTPLag参数、以及该当前语音帧后一帧4个子帧的LTPLag参数中的所有取值在40至120之间的LTPLag参数元素进行聚类,取元素个数大于1的各个类的平均值集合作为参考LTPLag参数。
或根据该当前语音帧子帧的LTPGain参数、该当前语音帧子帧前一子帧的LTPGain参数、以及该当前语音帧子帧后一子帧的LTPGain参数,利用先验条件概率得到参考LTPGain参数。
S302、确定该语音帧或子帧参数的待修复分量。
具体的,本步骤针对不同参数可以分别为:
若当前语音帧LAR参数的分量与参考LAR参数相应分量之间的距离大于第七阈值,则确定当前语音帧LAR参数的分量为待修复分量。
或若当前语音帧4个子帧的RPEMax参数的平均值与参考RPEMax参数的平均值的距离大于第十一阈值,则确定当前语音帧4个子帧的RPEMax参数中与参考RPEMax参数平均值距离最大的RPEMax参数作为待修复分量。
或将当前语音帧4个子帧的LTPLag参数中取值小于40或大于120,或者未被聚类的确定为当前语音帧子帧参数的待修复分量。
或当前语音帧任意一个子帧的LTPGain参数大于参考LTPGain参数,或者当前语音帧任意一个子帧的LTPGain参数小于参考LTPGain参数减1,则确定当前语音帧子帧LTPGain参数为待修复分量。
S303、采用比特掩码对待修复分量进行比特级修复,得到修复结果;和/或将参考参数替代修复分量,得到修复结果。
针对LAR参数、RPEMax参数、需要进行比特掩码的比特及修复,具体的的可以为:
对待修复分量的每一个比特位进行比特掩码,得到针对每一个比特位的修复分量;从修复分量中,选择与待修复分量相对应的参考LAR参数分量最接近的修复分量作为修复结果。
或对待修复分量的每一个比特位进行比特掩码,得到针对每一个比特位的修复分量;从修复分量中,选择与参考RPEMax参数平均值最接近的修复分量作为修复结果。
针对LTPLag参数,不仅要进行比特掩码修复,有可能还要以参考参数进行替代,具体的:对待修复分量的每一个比特位进行比特掩码,得到针对每一个比特位的修复分量;从修复分量中,选择与参考LTPLag参数中任一元素最接近的修复分量作为修复结果。如果该修复结果与最接近的参考LTPLag参数元素之间的距离小于第十四阈值时,则修复结果可用;若该距离大于第十四阈值时,将与该修复结果最接近的参考LTPLag参数元素作为最终修复结果。
针对LTPGain参数,进行的是替代操作,具体的,直接将参考LTPGain参数替代当前语音帧子帧LTPGain参数值,得到修复结果。
用修复结果更新当前语音帧或子帧的参数。在此过程后,还可以进一步判断修复后的参数是否满足确定待修复分量的条件,如果仍然满足则可以循环进行修复,直至修复到可用;或者循次数达到一定阈值,修复结果仍不可用,则修复失败,退出本修复过程。
这样,能够避免了现有技术中对错误帧的完全丢弃,而是对其进行最大程度的有效利用,修复随机比特错误,进一步降低对解码语音质量的影响,提高用户体验。需要说明的是:实施例二中的语音帧修复方法即可以基于CRC校验的结果进行修复,也可以基于上述实施例一提供的检测结果进行修复,如果基于上述实施例一的结果进行修复,修复结果会更加精确。
下面提供一个具体的实施例来说明实施例二中的语音帧修复方法的一个实现过程,与现有技术不同,本实施例采用基于参数的错误检测和修复方法,实现错误隐藏。本实施例对GSM全速率语音中的四类主要参数,即LAR、RPEMax、LTPlag和LTPGain分别采用特定的错误检测和错误修复策略,这是因为语音编码算法的目的是消除语音信号中固有的冗余性,以利用尽量少的比特数传递固定时长的语音信号,通常为一帧,即20ms。但是在实际应用中,由于复杂度、延时等方面的限制,语音编码算法输出的编码参数仍具有一定的冗余性。如表2所示三类GSM全速率语音编码参数存在较大的冗余性,其中,M表示每类参数的比特数,H(xn)、H(xn|xn-1)和H(xn|xn-1,xn+1)分别表示参数的熵、一阶和二阶条件熵。
表2、GSM全速率语音编码参数的比特数、熵和条件熵
从表中看出,LAR、LTPLag和RPEMax参数具有较大的冗余性。同时,在GSMFR语音编码相关标准中,Ia类比特,即对主观质量影响最大的50个比特主要集中在LAR、LTPLag和RPE Max参数中。基本上不具备冗余性的RPEGrid、RPEPulse参数比特主要分布在II类,对主观听觉感受的影响相对最小。而LTPGain参数本身的冗余性较小,其比特都为Ib类,即主观重要程度低于Ia类,高于II类,该参数对解码语音质量具有一定影响,但相对较小。
由此,应集中力量恢复或平滑对语音质量影响较大的主要参数,而对于主观重要程度较小的参数,可采取一定措施适当进行修复,但原则上可采取最小努力的策略,即只尝试恢复非常明显的错误。在本发明实施例中,主要对LAR参数、LTPLag参数和RPEMax参数进行修复或平滑;在可能存在较多的比特错误时,对LTPGain参数采取了一定的平滑措施。
一、对于LAR参数的错误检测和错误修复
用xi,i=1,…,8分别表示8个LAR参数。本实施例采用LAR差异测度(LARDeviation)
其中xPi表示前一帧的第i个LAR参数取值,xni表示后一帧的第i个LAR参数取值。
“错误语音帧”内LAR参数的错误检测和修复方法如下:
(1)利用接收到的前两帧(pprev,prev)和后一帧(next)内的LAR参数值(分别表示为XPP=(xPP1,xPP2,…,xPP8),XP=(xP1,xP2,…,xP8)和XN=(xN1,xN2,…,xN8)),对于每一个分量,根据下列规则内插生成参考LAR参数
①首先计算前一帧(prev)和后一帧(next)LAR参数值的距离:
di=|xNi-xPi|,i=1,…,8
②根据后一帧的BFI标志选用阈值(即第六阈值):若后一帧被标志为“错误帧”,则选用较强的阈值STdi;若后一帧被标志为“正确帧”,则选用较弱的阈值WTdi。本发明实施例中,STdi与WTdi的取值如表3,分别为:
参数 | LAR1 | LAR2 | LAR3 | LAR4 | LAR5 | LAR6 | LAR7 | LAR8 |
阈値STdi | 10 | 10 | 7 | 7 | 5 | 5 | 3 | 3 |
阈値WTdi | 16 | 16 | 12 | 12 | 8 | 8 | 4 | 4 |
表3、STdi与WTdi的取值
③若di小于等于第六阈值,则确定用xPi和xNi内插计算“参考LAR参数”若di大于阈值Td1i,则改用xPPi和xPi计算并计算xPPi和xPi的距离以替代di。为后面表示的方便,将选用的计算“参考LAR参数”的两个实际接收值表示为x1i和x2i。
④默认内插系数a1i和a1i分别为0.5。若di超过事先确定的阈值Td2i,则适当调整内插系数:首先,分别计算x1i、x2i与当前帧的实际接收值xCi间的距离d1i、d2i:
d1i=|x1i-xCi|,d2i=|x2i-xCi|
然后分别调整内插系数a1i和a1i为:
⑤计算内插“参考LAR参数”:
(3)若ddi大于阈值(即第七阈值)Td1i,则对实际接收值xCi进行初步的修正。
Td1i、Td2i为经验值,在本发明实施例中取值分别为表4:
参数 | LAR1 | LAR2 | LAR3 | LAR4 | LAR5 | LAR6 | LAR7 | LAR8 |
阈値Td1i | 10 | 10 | 7 | 7 | 5 | 5 | 3 | 3 |
阈値Td2i | 10 | 10 | 8 | 8 | 4 | 4 | 2 | 2 |
表4、Td1i、Td2i取值
修正方法为:采用比特掩码,逐个修改实际接收值xCi的有效比特位,得到一组可能的传输值。本实施例称此方法为比特修复方法。具体实施步骤如下:
设xCi=43为LAR参数第1个分量,根据编码标准,xCi有6个有效比特,其二进制表示为101011,其比特掩码初始值可以取为BM=100000(此为二进制表示),具体过程为:
①令y1=xCi∧BM,y1为第一个可能传输值,在本发明实施例中,y1的二进制表示为001011,十进制值为11;
②将BM右移一位,即令BM=BM>>1;
③令y2=xCi∧BM,y2为第二个可能传输值,在本发明实施例中,y2的二进制表示为111011,十进制值为59;
④如此反复,直至BM=0,共得到6个可能传输值y1=11,y2=59,y3=35,y4=47,y5=41,y6=44;
⑤令Y=(y1,y2,...,y6)为候选集;
之后,执行下列步骤(4)-(9)所描述的的参数错误检测和修复过程,此过程循环进行,直到正确修复所有参数错误,或者循环次数超过阈值(即第九阈值),本发明实施例中设为10。
(7)选择差异测度最大的分量作为待修复分量。
(8)采用(3)中描述的比特修正方法对待修复分量进行修复,选择候选集中与“参考LAR参数”最相近的值作为修正结果。
以上为对“错误帧”(BFI=1)的LAR参数进行错误检测和修复的全部过程。当LAR参数修复过程失败时,则在误帧平滑阶段进行进一步处理,具体过程在后面说明。
“正确语音帧”内LAR参数的错误检测和修复方法如下:
(1)已知当前帧LAR参数各分量xCi,i=1,...,8,前两帧相应分量xPPi、前一帧相应分量xPi、后一帧相应分量xNi。
(2)计算当前帧LAR参数分量与相邻帧LAR分量的距离dPPi、dPi、dNi。
(3)选出dPPi、dPi、dNi三者中的最小值,记为dmin。
(4)若该最小距离dmin大于阈值Ti(即第五阈值),则进入步骤(5)进行修正;若小于等于阈值T,则跳过该分量。各分量阈值Ti的取值如表5:
参数 | LAR1 | LAR2 | LAR3 | LAR4 | LAR5 | LAR6 | LAR7 | LAR8 |
阈値Ti | 20 | 20 | 15 | 15 | 8 | 8 | 5 | 5 |
表5、Ti的取值
(5)求取当前分量的“参考LAR参数”,求取方法与上述实施例中描述的步骤(1)相同。
(6)采用上述实施例中步骤(3)中描述的比特掩码修复方法对该分量进行修复,选取候选集中与“参考LAR参数”最接近的值作为修复结果。
(7)对LAR参数各分量的修复结果进行验证,验证方法与上述实施例中步骤(2)、(3)、(4)描述的方法相同。
(8)若未发现不可靠的分量,则将当前帧LAR参数标志为修复成功;若仍存在不可靠的分量,则将当前帧LAR参数标志为修复失败。在此,可靠的含义为:LAR的8个参数dmin都小于等于阈值,则认为LAR参数修复成功,为可靠;LAR的8个参数有一个大于阈值,都认为LAR参数修复失败,为不可靠。
若本阶段修复失败,则将修复结果送入参数平滑模块进行参数的平滑处理,具体过程在后面说明。
二、RPEMax参数的错误检测和修复
GSM全速率语音编码参数中的RPEMax参数具有极大的冗余性。其冗余性表现在RPEMax参数取值分布的不均匀、相邻子帧的RPEMax参数取值之间具有较大相关性。RPEMax参数代表的是LPC激励信号随机部分的幅度。根据语音的短期平稳性,在一帧至几帧的时间内,RPEMax参数的取值一般是稳定的。
在本发明实施例中,将语音信号的短时平稳性作为RPEMax参数错误检测和修复的重要准则。
“错误语音帧”的RPEMax参数错误检测和修复方法如下:
(1)设当前帧4个子帧的RPEMax参数为RC=(rC1,rC2,rC3,rC4),前一帧4个子帧的RPEMax参数为RP=(rP1,rP2,rP3,rP4),后一帧4个子帧的RPEMax参数为RN=(rN1,rN2,rN3,rN4)。
(2)令RP为集合1,RN为集合2,R=(rP1,rP2,rP3,rP4,rN1,rN2,rN3,rN4)为集合3。
(3)分别计算集合1、2、3的平均值,并根据各集合内元素的变化范围等确定该集合内元素值是否稳定。稳定的判断标准为集合内各元素的变化与该集合所有元素的和的比值。
具体的,设集合内各元素为xi,i=1,...,N,
①计算元素平均值
②计算元素抖动值
③若d(x)>0.25,(该0.25为第十阈值)认为该集合内元素不稳定。
(5)计算当前帧4个子帧的RPEMax接收值RC=(rC1,rC2,rC3,rC4)的平均值,根据(3)中所描述的步骤确定当前帧4个子帧RPEMax参数的稳定性;
之后,进行RPEMax参数的错误检测和修复。该过程循环进行,直到不再能检测出错误参数,或者循环次数超过阈值(即第十二阈值),本实施例设为10。
(6)若当前帧4个子帧RPEMax参数RC=(rC1,rC2,rC3,rC4)稳定,即小于等于第十阈值,且其平均值与“参考RPEMax参数”平均值间的距离小于等于给定阈值(即第十一阈值),则标记当前帧子帧RPEMax参数为可用,将其输出作为修复结果,退出过程;若高于阈值(即第十一阈值),则进入步骤(7)。
(7)若循环次数超过阈值(即第十二阈值),认为修复过程失败,退出过程;否则,进入(8)进行参数修正。
(8)选择与“参考RPEMax参数”平均值相距最远的RPEMax分量,对其采用前述实施例比特掩码所描述的比特修复方法进行修正,修正后选择与“参考RPEMax参数”平均值最近的候选值作为修复结果。
(9)更新当前帧子帧RPEMax参数值集,根据(3)中所描述的步骤确定当前帧子帧RPEMax参数的稳定性,并返回步骤(6)。
以上为对“错误帧”的RPEMax参数进行错误检测和修复的全部过程。若参数修复失败,则在将修复结果送入参数平滑模块进行处理,具体过程在后面说明。
“正确语音帧”的RPEMax参数错误检测和修复。
这里的“正确语音帧”指的是指示为正确的语音帧,实际上可能是不正确的语音帧。“正确语音帧”内的RPEMax参数错误检测和修复方法与上面介绍的方法基本一致,不同的是对当前帧参数进行错误检测的条件限制相对要宽松,即阈值相对变大,此处不再赘述。
三、LTPLag参数的错误检测和错误修复
本发明实施例采用基于聚类分析的LTPLag参数错误检测和修复方法。LTPLag参数的修复主要针对“错误帧”(BFI=1)进行,具体步骤如下:
(1)将当前语音帧前一帧4个子帧的LTPLag参数、当前帧4个子帧的LTPLag参数、后一帧4个子帧的LTPLag参数中所有有效的,即取值在40-120之间的LTPLag参数聚集到一个大的集合S中;
(2)采用最小距离聚类法对S中的元素进行聚类。在聚类过程中,规定每类元素间的最大距离必须小于10(该10为第十三阈值);
(3)将所有具有多于1个元素的类标记为有效类,取每个有效类均值的集合作为LTPLag参数错误检测和修复的“参考LTPLag参数”;
(4)若当前帧的某个或某几个子帧的LTPLag分量取值为无效值,即小于40或大于120,或者没有被聚类到一个有效类中,将其标记为待修复分量;若不存在待修复分量,则将该帧4个子帧的LTPLag参数标记为可用,并退出此过程;
(5)采用前述实施例中比特掩码修复中描述的比特修复方法对待修复LTPLag分量进行修正,选择最接近“参考LTPLag参数”中某个有效类均值的候选值作为修复结果;
(6)如果修复结果与最接近的参考LTPLag参数元素之间的距离小于阈值(即第十四阈值)时,该修复结果可用;如果该距离大于阈值(即第十四阈值)时,将与该修复结果最接近的参考LTPLag参数元素作为最终修复结果。
以上为对LTPLag参数进行错误检测和修复的全部过程。
四、LTPGain参数的错误检测和错误修复
本发明实施例采用基于先验条件概率的LTPGain参数错误检测和修复方法。只对“错误帧”(BFI=1)的LTPGain参数进行错误检测和修复,具体步骤如下:
(1)分别记当前语音帧子帧前一子帧的LTPGain参数为xP、当前语音帧任意一子帧的LTPGain参数为xC、当前语音帧子帧后一子帧的LTPGain参数为xN;
(2)查找先验条件概率p(xC|xP,xN),若该条件概率大于0.1(该0.1为第十五阈值),则接受当前子帧的LTPGain值xC;否则,进行步骤(3)-(4)的错误检测及修复;
(3)计算当前子帧的参考LTPGain参数,计算方法如下:
以上为对LTPGain参数进行错误检测和修复的全部过程。
以上为四类主要参数的错误检测和修复过程。若四类参数的修复过程均返回成功标识,则将当前帧的BFI标志改为0,并将修复参数返回,送入语音解码器进行解码。
这样,能够利用先验统计信息,根据当前语音帧的前后帧的参数,或者根据当前语音帧的前后帧子帧的参数得到估计值,再用估计值替代当前语音帧或子帧的参数值。避免了现有技术中相对简单的参数替代方法,更符合语音信号的特点,能够较好的保持语音信号的动态变化,降低对解码语音质量的影响,提高用户体验。
本发明实施例三提供另外一种语音帧修复方法,该方法可以是在实施例一和/或实施例二的基础上执行,如对采用实施例二提供的修复方法进行一次或多次修复仍然修复失败,再用本方法进行修复;当然,本方法也可以不在实施例一和/或实施例二的基础上执行,直接对语音帧进行修复。该方法可以采用参数平滑的方式对语音帧进行修复,与参数特定的错误检测和修复不同,参数平滑不对实际接收值进行比特级的修复,而是利用先验统计信息,根据相邻的参数取值计算合适的替代值。这里的先验统计信息即通过对大量语音帧进行统计后得到的条件概率。
如图4所示,步骤包括:
S401、利用先验统计信息,根据语音帧的前后帧的参数,或者根据语音帧的前后帧子帧的参数得到估计值。
在本实施例中,该先验统计信息为条件概率,这可以是在大量语音帧上统计得到。
具体的,对于LAR参数,本步骤可以为:获取当前语音帧后一帧的LAR参数和当前语音帧前一帧的LAR参数的条件概率,若该条件概率小于第十六阈值,则采用外推法得到LAR参数估计值;若该条件概率大于等于第十六阈值,则采用内插法得到LAR参数估计值。
对于RPEMax参数,本步骤可以为:获取当前语音帧后一帧子帧的RPEMax参数和当前语音帧前一帧子帧的RPEMax参数的条件概率,若条件概率小于第十六阈值,则采用外推法得到RPEMax参数估计值;若条件概率大于等于第十六阈值,则采用内插法得到RPEMax参数估计值。
S402、用估计值替代语音帧或子帧的参数值。
具体的,对于LAR参数,本步骤可以为:当确定当前语音帧的LAR参数与LAR参数估计值之间的距离大于等于第十七阈值时,用LAR参数估计值替代当前语音帧的LAR参数。
对于RPEMax参数,本步骤可以为:当前语音帧子帧的RPEMax参数与RPEMax参数估计值之间的距离大于等于第十七阈值时,用RPEMax参数估计值替代当前语音帧子帧的RPEMax参数。
这样,避免了现有技术中相对简单的参数替代方法,更符合语音信号的特点,能够较好的保持语音信号的动态变化,再进一步地降低对解码语音质量的影响,提高用户体验。
下面以一个具体的实施例来详细说明实施例三的语音帧修复方法的一种实现过程,本实施例提供基于内插的参数平滑。引入一帧(20ms)的延时,计算复杂度小,相对GSM全速率语音解码基线算法,性能稳定,解码语音质量好。
在进行参数平滑时,首先检测是否满足内插条件。具体的,已知前一帧或子帧的接收或修复参数值xP、当前帧或子帧的接收参数值xC、后一帧或子帧的接收参数值xN,首先查找条件概率P(xN|xP),若该概率值小于给定阈值(即第十六阈值),本发明实施例中设置为0.0001,则认为不能采用内插方法进行平滑,改为采用外推方法计算当前帧或子帧该参数的估计值若大于等于给定阈值(即第十六阈值),则采用内插方法。计算公式如下:
外推:
内插:
该模块的输入为参数特定的错误检测和修复模块输出的参数。在这些输入参数中,存在正确可靠的参数,也存在错误或不可靠的参数。参数平滑模块尽量只对错误或不可靠的参数进行平滑修复。在计算得到内插或外推平滑值之后,比较参数特定的错误检测和修复模块输出的修复值与估计值若两者的距离小于给定阈值T(即第十七阈值),则认为修复值可用,不用估计值进行替代;否则,将修复值替代为估计值各参数的阈值T取值如表6:
参数 | LAR1 | LAR2 | LAR3 | LAR4 | LAR5 | LAR6 | LAR7 | LAR8 | RPEMax |
阈值T | 6 | 6 | 4 | 4 | 3 | 3 | 2 | 2 | 4 |
表6、T取值
平滑结束后,将错误帧指示BFI重置为0,得到修正的错误帧指示。至此,语音帧参数的错误检测和修复过程完全结束。
本发明实施例克服了现有技术中“正确”和“错误”语音帧的二元判决模式过于简单、错误语音帧中的有效信息被完全丢弃、简单的参数替代方法无法跟踪语音的动态变化的缺点。首先,通过对LAR、LTPLag和RPEMax三类参数分别确立合理的错误准则,检测出可能包含错误的参数,而保留可靠的参数,在参数层面上进行错误的检测和修复,而不是对整帧信号进行“一刀切”式的判决;其次,对可能存在错误的参数,利用前后帧参数的相关性,采用比特级修复的方法进行修正,可消除偶发的比特错误,有效修复参数;最后,对修复失败的参数进行基于统计概率的外推或内插平滑,相对简单的参数替代,更符合语音信号的特点,在一定程度上保留语音信号的动态变化特征。
本实施例提供的语音帧修复的方法,采用参数平滑的方法对语音帧进行修复,参数平滑方法利用了语音参数的统计特征,相对于简单的参数替代方法,更符合语音信号的特点,能够较好的保持语音信号的动态变化。能够降低对解码语音质量的影响,提高用户体验。
需要说明的是,上述实施例一、二、三的提供的方法可以组合执行,也可以是在现有技术的基础上分别独立执行。组合执行时,可以是两两组合,也可以是三个部分组合,三个部分组合时,可以是按实施例一、二、三的顺序执行,即执行的方法包含三个部分:第一部分,针对静音段可能出现的CRC检验错误,采用增强的DTX处理算法,以完全消除静音段噪声;第二部分,对于语音帧,针对几类主要参数,进行参数特定的语音帧错误检测和修复;第三部分,对在第二部分修复失败的语音帧,进行基于内插的参数平滑;两两组合的情况包括实施例一、二;实施例一、三;实施例二、三。组合时每部分实施例的实现细节参见实施例一、二、三及对应具体实现流程的介绍,在此不再赘述。
本发明实施例提供的错误帧检测装置,如图5所示,包括:
接收单元501,用于在静音模式下,接收语音帧。
检测单元502,用于当接收到的语音帧为一个参数指示为正确的语音帧时,根据预先设置的检测规则对该语音帧参数进行检测,当满足检测规则规定的条件时,确定该语音帧是错误的语音帧。
进一步地,检测单元502,具体用于当接收到的语音帧为BFI=0,SID=0的语音帧时,若该语音帧后一帧的SID=2或BFI=1,则确定该语音帧是错误语音帧。
或者,检测单元502,具体用于若该语音帧的LAR参数,该语音帧子帧的RPEMAX、LTPlag、LTPGain参数中任意一个参数的先验概率小于第一阈值,则确定该语音帧是错误语音帧。
或者,检测单元502,具体用于若该语音帧前一帧、该语音帧以及该语音帧后一帧的LAR参数,和该语音帧前一帧子帧、该语音帧子帧以及该语音帧后一帧子帧的RPEMax参数中任意一个参数的先验转移概率小于第二阈值,则确定该语音帧是错误语音帧。
该装置还包括:重置单元503,用于将检测单元502检测出的错误语音帧的BFI重置为1。
此外,接收单元501,还用于在语音模式下接收语音帧。
检测单元502,还用于当接收到的语音帧为一个参数指示为错误的语音帧时,根据该语音帧的参数平均值对该语音帧的SID进行检测,当满足检测条件时,确定该语音帧是SID帧。
具体的,检测单元502,具体用于若该语音帧的4个子帧的LTPLag参数的平均值小于第三阈值,且该语音帧前一帧的4个子帧的RPEMax参数的平均值小于第四阈值,且该语音帧的4个子帧的RPEMax参数的平均值小于第四阈值,则确定该语音帧是SID帧。
重置单元503,用于将检测单元502检测出的错误语音帧的SID重置为2。
这样,在静音模式下,收到一个参数指示为正确的语音帧,则根据预先设置的检测规则对所述语音帧参数进行检测,当满足检测规则规定的条件时,确定该语音帧是错误语音帧,能够消除由于CRC校验误判所导致的大量静音段噪声。在语音模式下,收到一个参数指示为错误的语音帧,则根据该语音帧的参数平均值对该语音帧的SID进行检测,当满足检测条件时,确定该语音帧是SID帧,能够正确识别被干扰的SID帧。总之,能够最大程度利用语音帧内的有效信息,大幅降低对解码语音质量的影响,提高用户体验。
上述检测装置包括语音帧修复功能,以实现实施例二提供的方法,如图6该装置包括:
生成单元601,用于根据语音帧前后帧或前后帧子帧的参数,或者根据语音帧子帧的前后子帧的参数生成参考参数;
判断单元602,用于确定该语音帧或子帧参数的待修复分量;
修复单元603,用于采用比特掩码对该待修复分量进行比特级修复,得到修复结果;和/或将参考参数替代修复分量,得到修复结果。
进一步地,如图7所示,生成单元601,进一步可以包括:
LAR参数生成参数模块601A,用于根据语音帧前两帧的LAR参数、语音帧前一帧的LAR参数和语音帧后一帧的LAR参数,生成参考LAR参数;
用于设语音帧前一帧4个子帧的RPEMax参数为第一集合、设语音帧后一帧4个子帧的RPEMax参数为第二集合、设语音帧前一帧4个子帧和语音帧后一帧4个子帧的8个RPEMax参数第三集合,RPEMax参数生成参数模块601B,以三个集合中各分量元素变化最小的集合作为参考RPEMax参数;
LTPLag参数生成参数模块601C,用于采用最小聚类法对语音帧4个子帧的LTPLag参数、语音帧前一帧4个子帧的LTPLag参数、以及语音帧后一帧4个子帧的LTPLag参数中的所有取值在40至120之间的LTPLag参数元素进行聚类,取元素个数大于1的各个类的平均值集合作为参考LTPLag参数,其中,每个类中各元素间的距离小于第十三阈值;
LTPGain参数生成参数模块601D,用于根据语音帧子帧的LTPGain参数、语音帧子帧前一子帧的LTPGain参数、以及语音帧子帧后一子帧的LTPGain参数,利用先验条件概率得到参考LTPGain参数。
判断单元602,进一步可以包括:
LAR参数判断模块602A,用于若语音帧LAR参数的分量与参考LAR参数相应分量之间的距离大于第七阈值,则确定该语音帧LAR参数的该分量为待修复分量;
RPEMax参数判断模块602B,用于若语音帧4个子帧的RPEMax参数的平均值与参考RPEMax参数的平均值的距离大于第十一阈值,则确定该语音帧4个子帧的RPEMax参数中与参考RPEMax参数平均值距离最大的RPEMax参数作为待修复分量;
LTPLag参数判断模块602C,用于将语音帧4个子帧的LTPLag参数中取值小于40或大于120,或者未被聚类的确定为该语音帧子帧参数的待修复分量;
LTPGain参数判断模块602D,用于该语音帧任意一个子帧的LTPGain参数大于参考LTPGain参数,或者该语音帧任意一个子帧的LTPGain参数小于参考LTPGain参数减1,则确定该语音帧子帧LTPGain参数为待修复分量。
这样,能够避免了现有技术中对错误帧的完全丢弃,而是对其进行最大程度的有效利用,修复随机比特错误,进一步降低对解码语音质量的影响,提高用户体验。
如图8所示,上述错误帧检测装置还可以包括另一种语音帧修复的功能,即可执行实施例三所示的方法,上述装置还可以包括:
计算单元801,用于利用先验统计信息,根据当前语音帧的前后帧的参数,或者根据当前语音帧的前后帧子帧的参数得到估计值;
替换单元802,用于以估计值替代当前语音帧或子帧的参数值。
进一步地,计算单元801,用于当语音帧后一帧的LAR参数和语音帧前一帧的LAR参数的条件概小于第十六阈值时,采用外推法得到LAR参数估计值;若该条件概率大于等于第十六阈值时,采用内插法得到LAR参数估计值;
或者,计算单元801,用于当语音帧后一帧子帧的RPEMax参数和语音帧前一帧子帧的RPEMax参数的条件概率小于第十六阈值时,采用外推法得到RPEMax参数估计值;若该条件概率大于等于第十六阈值时,采用内插法得到RPEMax参数估计值。
这样,能够利用先验统计信息,根据当前语音帧的前后帧的参数,或者根据当前语音帧的前后帧子帧的参数得到估计值,再用估计值替代当前语音帧或子帧的参数值。避免了现有技术中相对简单的参数替代方法,更符合语音信号的特点,能够较好的保持语音信号的动态变化,降低对解码语音质量的影响,提高用户体验。
本发明实施例提供一种语音帧修复装置,如图9所示,包括:
生成单元601,用于根据语音帧前后帧或前后帧子帧的参数,或者根据语音帧子帧的前后子帧的参数生成参考参数;
判断单元602,用于确定该语音帧或子帧参数的待修复分量;
修复单元603,用于采用比特掩码对该待修复分量进行比特级修复,得到修复结果;和/或将参考参数替代修复分量,得到修复结果。
进一步地,如图10所示,生成单元601,进一步可以包括:
LAR参数生成参数模块601A,用于根据语音帧前两帧的LAR参数、语音帧前一帧的LAR参数和语音帧后一帧的LAR参数,生成参考LAR参数;
用于设语音帧前一帧4个子帧的RPEMax参数为第一集合、设语音帧后一帧4个子帧的RPEMax参数为第二集合、设语音帧前一帧4个子帧和语音帧后一帧4个子帧的8个RPEMax参数第三集合,RPEMax参数生成参数模块601B,以三个集合中各分量元素变化最小的集合作为参考RPEMax参数;
LTPLag参数生成参数模块601C,用于采用最小聚类法对语音帧4个子帧的LTPLag参数、语音帧前一帧4个子帧的LTPLag参数、以及语音帧后一帧4个子帧的LTPLag参数中的所有取值在40至120之间的LTPLag参数元素进行聚类,取元素个数大于1的各个类的平均值集合作为参考LTPLag参数,其中,每个类中各元素间的距离小于第十三阈值;
LTPGain参数生成参数模块601D,用于根据语音帧子帧的LTPGain参数、语音帧子帧前一子帧的LTPGain参数、以及语音帧子帧后一子帧的LTPGain参数,利用先验条件概率得到参考LTPGain参数。
判断单元602,进一步可以包括:
LAR参数判断模块602A,用于若语音帧LAR参数的分量与参考LAR参数相应分量之间的距离大于第七阈值,则确定该语音帧LAR参数的该分量为待修复分量;
RPEMax参数判断模块602B,用于若语音帧4个子帧的RPEMax参数的平均值与参考RPEMax参数的平均值的距离大于第十一阈值,则确定该语音帧4个子帧的RPEMax参数中与参考RPEMax参数平均值距离最大的RPEMax参数作为待修复分量;
LTPLag参数判断模块602C,用于将语音帧4个子帧的LTPLag参数中取值小于40或大于120,或者未被聚类的确定为该语音帧子帧参数的待修复分量;
LTPGain参数判断模块602D,用于该语音帧任意一个子帧的LTPGain参数大于参考LTPGain参数,或者该语音帧任意一个子帧的LTPGain参数小于参考LTPGain参数减1,则确定该语音帧子帧LTPGain参数为待修复分量。
这样,能够避免了现有技术中对错误帧的完全丢弃,而是对其进行最大程度的有效利用,修复随机比特错误,进一步降低对解码语音质量的影响,提高用户体验。
如图11所示,上述装置还包括另一修复功能,以实现实施例三提供的方法,该装置还包括:
计算单元801,用于利用先验统计信息,根据当前语音帧的前后帧的参数,或者根据当前语音帧的前后帧子帧的参数得到估计值;
替换单元802,用于以估计值替代当前语音帧或子帧的参数值。
进一步地,计算单元801,用于当语音帧后一帧的LAR参数和语音帧前一帧的LAR参数的条件概小于第十六阈值时,采用外推法得到LAR参数估计值;若该条件概率大于等于第十六阈值时,采用内插法得到LAR参数估计值;
或者,计算单元801,用于当语音帧后一帧子帧的RPEMax参数和语音帧前一帧子帧的RPEMax参数的条件概率小于第十六阈值时,采用外推法得到RPEMax参数估计值;若该条件概率大于等于第十六阈值时,采用内插法得到RPEMax参数估计值。
这样,能够利用先验统计信息,根据当前语音帧的前后帧的参数,或者根据当前语音帧的前后帧子帧的参数得到估计值,再用估计值替代当前语音帧或子帧的参数值。避免了现有技术中相对简单的参数替代方法,更符合语音信号的特点,能够较好的保持语音信号的动态变化,降低对解码语音质量的影响,提高用户体验。
本发明实施例提供的语音帧修复装置,如图12所示,包括:
计算单元801,用于利用先验统计信息,根据当前语音帧的前后帧的参数,或者根据当前语音帧的前后帧子帧的参数得到估计值;
替换单元802,用于以估计值替代当前语音帧或子帧的参数值。
进一步地,计算单元801,用于当语音帧后一帧的LAR参数和语音帧前一帧的LAR参数的条件概小于第十六阈值时,采用外推法得到LAR参数估计值;若该条件概率大于等于第十六阈值时,采用内插法得到LAR参数估计值;
或者,计算单元801,用于当语音帧后一帧子帧的RPEMax参数和语音帧前一帧子帧的RPEMax参数的条件概率小于第十六阈值时,采用外推法得到RPEMax参数估计值;若该条件概率大于等于第十六阈值时,采用内插法得到RPEMax参数估计值。
这样,能够利用先验统计信息,根据当前语音帧的前后帧的参数,或者根据当前语音帧的前后帧子帧的参数得到估计值,再用估计值替代当前语音帧或子帧的参数值。避免了现有技术中相对简单的参数替代方法,更符合语音信号的特点,能够较好的保持语音信号的动态变化,降低对解码语音质量的影响,提高用户体验。
上述装置实施例的具体实现细节请参见方法实施例中的对应部分的具体说明,其参考值,阈值取值也与方法实施例中相同,在此不再赘述。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (14)
1.一种错误帧检测方法,其特征在于,包括:
在静音模式下,收到一个参数指示为正确的语音帧,则根据预先设置的检测规则对所述语音帧参数进行检测,当满足所述检测规则规定的条件时,确定所述语音帧是错误语音帧;
其中,所述参数指示为正确的语音帧为坏帧指示BFI=0,且静音***描述SID=0的语音帧。
2.根据权利要求1所述的方法,其特征在于,所述当满足所述检测规则规定的条件时,确定所述语音帧是错误语音帧具体为:
若所述语音帧后一帧的SID=2或BFI=1,则确定所述语音帧是错误语音帧,所述方法还包括:将所述语音帧的BFI重置为1。
3.根据权利要求1所述的方法,其特征在于,所述参数指示为正确的语音帧为BFI=0,且SID=0的语音帧;所述根据预先设置的检测规则对所述语音帧参数进行检测,当满足所述检测规则规定的条件时,确定所述语音帧是错误语音帧具体为:
获取所述语音帧的LAR参数,所述语音帧子帧的规则脉冲激励最大值RPEMAX、长时预测延时LTPlag、长时预测增益LTPGain参数的先验概率,若其中任意一个参数的先验概率小于第一阈值,则确定所述语音帧是错误语音帧;或者分别获取所述语音帧前一帧、所述语音帧以及所述语音帧后一帧的LAR参数,和所述语音帧前一帧子帧、所述语音帧子帧以及所述语音帧后一帧子帧的RPEMAX参数的先验转移概率,若其中任意一个参数的先验转移概率小于第二阈值,则确定所述语音帧是错误语音帧;
所述方法还包括:将所述语音帧的BFI重置为1。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:当不满足所述语音帧后一帧的SID=2或BFI=1时,获取所述语音帧的LAR参数,所述语音帧子帧的规则脉冲激励最大值RPEMAX、长时预测延时LTPlag、长时预测增益LTPGain参数的先验概率,若其中任意一个参数的先验概率小于第一阈值,则确定所述语音帧是错误语音帧;或者分别获取所述语音帧前一帧、所述语音帧以及所述语音帧后一帧的LAR参数,和所述语音帧前一帧子帧、所述语音帧子帧以及所述语音帧后一帧子帧的RPEMAX参数的先验转移概率,若其中任意一个参数的先验转移概率小于第二阈值,则确定所述语音帧是错误语音帧;
所述方法还包括:将所述语音帧的BFI重置为1。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在语音模式下,收到一个参数指示为错误的语音帧,则根据所述语音帧的参数平均值对所述语音帧的静音***描述SID进行检测,当满足检测条件时,确定所述语音帧是SID帧;
其中,所述参数指示为错误的语音帧为BFI=1,且SID=0的语音帧。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述语音帧前后帧或前后帧子帧的参数,或者根据所述语音帧子帧的前后子帧的参数生成参考参数;
确定所述语音帧或子帧参数的待修复分量;
采用比特掩码对所述待修复分量进行比特级修复,得到修复结果;和/或将所述参考参数替代所述修复分量,得到修复结果;
用所述修复结果更新所述语音帧或子帧的参数。
8.根据权利要求1或7所述的方法,其特征在于,所述方法还包括:
利用先验统计信息,根据所述语音帧的前后帧的参数,或者根据所述语音帧的前后帧子帧的参数得到估计值;
用所述估计值替代所述语音帧或子帧的参数值。
9.一种错误帧检测装置,其特征在于,包括:
接收单元,用于在在静音模式下,接收语音帧。
检测单元,用于当接收到的语音帧为一个参数指示为正确的语音帧时,根据预先设置的检测规则对所述语音帧参数进行检测,当满足所述检测规则规定的条件时,确定所述语音帧是错误的语音帧;其中,所述参数指示为正确的语音帧为坏帧指示BFI=0,且静音***描述SID=0的语音帧。
10.根据权利要求9所述的错误帧检测装置,其特征在于,
所述检测单元,具体用于当接收到的语音帧为BFI=0,SID=0的语音帧时,若所述语音帧后一帧的SID=2或BFI=1,则确定所述语音帧是错误语音帧;
或者,所述检测单元,具体用于若所述语音帧的LAR参数,所述语音帧子帧的规则脉冲激励最大值RPEMAX、长时预测延时LTPlag、长时预测增益LTPGain参数中任意一个参数的先验概率小于第一阈值,则确定所述语音帧是错误语音帧;
或者,所述检测单元,具体用于若所述语音帧前一帧、所述语音帧以及所述语音帧后一帧的LAR参数,和所述语音帧前一帧子帧、所述语音帧子帧以及所述语音帧后一帧子帧的RPEMAX参数中任意一个参数的先验转移概率小于第二阈值,则确定所述语音帧是错误语音帧;
所述装置还包括:重置单元,用于将所述检测单元检测出的所述语音帧的BFI重置为1。
11.根据权利要求9所述的错误帧检测装置,其特征在于,
所述接收单元,还用于在语音模式下接收语音帧;
所述检测单元,还用于当接收到的语音帧为一个参数指示为错误的语音帧时,根据所述语音帧的参数平均值对所述语音帧的SID进行检测,当满足检测条件时,确定所述语音帧是SID帧;其中,所述参数指示为错误的语音帧为BFI=1,且SID=0的语音帧。
13.根据权利要求9所述的装置,其特征在于,所述装置还包括:
生成单元,用于根据语音帧前后帧或前后帧子帧的参数,或者根据语音帧子帧的前后子帧的参数生成参考参数;
判断单元,用于确定所述语音帧或子帧参数的待修复分量;
修复单元,用于采用比特掩码对所述待修复分量进行比特级修复,得到修复结果;和/或将所述参考参数替代所述修复分量,得到修复结果。
14.根据权利要求9所述的装置,其特征在于,所述装置还包括:
计算单元,用于利用先验统计信息,根据语音帧的前后帧的参数,或者根据语音帧的前后帧子帧的参数得到估计值;
替换单元,用于以所述估计值替代所述语音帧或子帧的参数值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101745877A CN102034476B (zh) | 2009-09-30 | 2009-09-30 | 语音帧错误检测的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101745877A CN102034476B (zh) | 2009-09-30 | 2009-09-30 | 语音帧错误检测的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102034476A CN102034476A (zh) | 2011-04-27 |
CN102034476B true CN102034476B (zh) | 2013-09-11 |
Family
ID=43887281
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009101745877A Active CN102034476B (zh) | 2009-09-30 | 2009-09-30 | 语音帧错误检测的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102034476B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102223605B (zh) * | 2011-06-14 | 2017-03-22 | 中兴通讯股份有限公司 | 信令帧下发控制方法及基站 |
CN102572929B (zh) * | 2011-12-21 | 2014-11-05 | 华为技术有限公司 | 语音检测方法和设备 |
WO2014075208A1 (zh) * | 2012-11-13 | 2014-05-22 | 华为技术有限公司 | 语音类问题检测方法及应用语音通信网络***的网元设备 |
EP2922055A1 (en) | 2014-03-19 | 2015-09-23 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus, method and corresponding computer program for generating an error concealment signal using individual replacement LPC representations for individual codebook information |
EP2922054A1 (en) | 2014-03-19 | 2015-09-23 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus, method and corresponding computer program for generating an error concealment signal using an adaptive noise estimation |
EP2922056A1 (en) | 2014-03-19 | 2015-09-23 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus, method and corresponding computer program for generating an error concealment signal using power compensation |
CN105374367B (zh) * | 2014-07-29 | 2019-04-05 | 华为技术有限公司 | 异常帧检测方法和装置 |
CN107005530A (zh) * | 2014-09-22 | 2017-08-01 | 诺基亚通信公司 | 通信网络***中的静音呼叫检测 |
CN105741843B (zh) * | 2014-12-10 | 2019-09-20 | 辰芯科技有限公司 | 一种基于延时抖动的丢包补偿方法及*** |
CN108074586B (zh) * | 2016-11-15 | 2021-02-12 | 电信科学技术研究院 | 一种语音问题的定位方法和装置 |
CN107564533A (zh) * | 2017-07-12 | 2018-01-09 | 同济大学 | 基于信源先验信息的语音帧修复方法和装置 |
CN110782906B (zh) * | 2018-07-30 | 2022-08-05 | 南京中感微电子有限公司 | 音频数据恢复方法、装置及蓝牙设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0768770A1 (fr) * | 1995-10-13 | 1997-04-16 | France Telecom | Procédé et dispositif de création d'un bruit de confort dans un système de transmission numérique de parole |
JP2002366197A (ja) * | 2001-06-08 | 2002-12-20 | Sharp Corp | 音楽再生装置 |
CN1697472A (zh) * | 2004-05-14 | 2005-11-16 | 华为技术有限公司 | 语音切换方法及其装置 |
CN101393742A (zh) * | 2007-09-20 | 2009-03-25 | 华为技术有限公司 | 噪声生成装置、及方法 |
-
2009
- 2009-09-30 CN CN2009101745877A patent/CN102034476B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0768770A1 (fr) * | 1995-10-13 | 1997-04-16 | France Telecom | Procédé et dispositif de création d'un bruit de confort dans un système de transmission numérique de parole |
JP2002366197A (ja) * | 2001-06-08 | 2002-12-20 | Sharp Corp | 音楽再生装置 |
CN1697472A (zh) * | 2004-05-14 | 2005-11-16 | 华为技术有限公司 | 语音切换方法及其装置 |
CN101393742A (zh) * | 2007-09-20 | 2009-03-25 | 华为技术有限公司 | 噪声生成装置、及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102034476A (zh) | 2011-04-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102034476B (zh) | 语音帧错误检测的方法及装置 | |
CN1291374C (zh) | 用于语音解码器中帧差错隐藏的改善的谱参数代替的方法和设备 | |
CN101542589B (zh) | 基音滞后估计的方法、设备和*** | |
US7778824B2 (en) | Device and method for frame lost concealment | |
US6393074B1 (en) | Decoding system for variable-rate convolutionally-coded data sequence | |
KR102012325B1 (ko) | 오디오 신호의 배경 잡음 추정 | |
JP2007166650A (ja) | Tdma無線システムにおけるソフト誤り補正 | |
US7028232B2 (en) | Error estimation method and apparatus | |
WO2007103399A2 (en) | Scrubber brush with sleeve and brush mandrel | |
US6567949B2 (en) | Method and configuration for error masking | |
CN104021796A (zh) | 语音增强处理方法和装置 | |
US6233708B1 (en) | Method and device for frame error detection | |
JP5133994B2 (ja) | 信頼度指標を用いたブロック符号語復号器 | |
US6480556B1 (en) | Rate detection apparatus and method for variable rate speech encoding | |
US20110320195A1 (en) | Method, apparatus and system for linear prediction coding analysis | |
CN111245562B (zh) | 一种窄带物联网NB-IoT的窄带广播信道增强合并方法 | |
CN101895373B (zh) | 信道译码方法、***及装置 | |
Tan et al. | A subvector-based error concealment algorithm for speech recognition over mobile networks | |
CN101790184B (zh) | 通信质量估计方法、装置和基站 | |
Bhatt et al. | Overall performance evaluation of adaptive multi rate 06.90 speech codec based on code excited linear prediction algorithm using MATLAB | |
CN101211561A (zh) | 音乐信号质量增强方法和装置 | |
EP2512052B1 (en) | Method and device for determining in-band signalling decoding mode | |
EP1192708B1 (en) | Method of determining an encoding rate in a communication system | |
CN101009097A (zh) | 1.2kb/s SELP低速率声码器抗信道误码保护方法 | |
US20020015454A1 (en) | Receiver, method, system and telephone for improving the detection of transmission errors |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |