噪声生成装置、及方法

文档序号:2837439阅读:414来源:国知局

专利名称::噪声生成装置、及方法
技术领域
:本发明涉及通信
技术领域
,尤其涉及一种噪声生成装置、及方法。
背景技术
:在传输语音的过程中,通常会使用语音编码技术对语音信息进行压缩,以增加通信系统的容量。由于在进行语音通信时,只有大约40%的时间是包含语音的,其它时间都是静音或背景噪声,而通常进行语音通信的人们关心的都是语音的内容,对只有静音或背景噪声的时间并不关心,因此在对语音信息进行压缩时,会针对语音、静音或背景噪声按照不同的方法进行编码和传输,以进一步提高通信系统的容量。非连续传输系统/舒适噪声生成(DTX/CNG,DiscontinuousTransmissionSystem/ComfortableNoiseGeneration)就是这样一种用于进一步提高通信系统容量的技术。DTX/CNG技术对背景噪声进行编码获得的帧通常称为静音插入描述(SID,SilenceInsertionDescriptor)帧,在普通的语音帧中会包含谱参数、信号能量增益参数、固定码本、及自适应码本相关的参数,解码端在收到语音帧后根据这些信息就可以恢复出原来的语音数据,而SID帧中一般只包含谱参数和信号能量增益参数,解码端只根据谱参数和信号能量增益参数进行背景噪音的恢复。这是因为用户通常并不关心背景噪音中包含了什么信息,因此SID帧可以只传递很少量的参考信息,也即谱参数和信号能量增益参数,解码端根据这些参考信息进行背景噪音的恢复,使用户可以大致听出对方处于什么环境,并且不会明显影响用户的听觉质量即可。在进行语音传输时,相隔若干帧才发送一次SID帧,编码参数未发送或者根本未进行编码的帧通常称为无音(NO_DATA)帧。近年来在各大组织和机构制定的语音编码标准中,都存在DTX/CNG技术的具体应用。在第三代伙伴组织计划(3GPP,ThirdGenerationPartnershipProjects)的语音编码标准——自适应多速率声码器(AMR,AdaptiveMulti-Rate)中采用的DTX/CNG技术,即为按照固定间隔每8帧发送一次SID帧,利用接收到的连续两帧SID帧解码出的参数,也即信号能量增益参数和谱参数,进行线性插值,以估算出噪声合成所需要的参数,用公式表达为其中Pn+k表示第n个SID帧之后的第k帧的CNG参数的估算值,Psid(n-1)表示解码端接收到的第n-1个SID帧的参数,Psid(n)表示解码端接收到的第n个SID帧的参数。当n=0时,Psid(-1)为拖尾阶段8帧语音帧谱参数和信号能量增益参数的平均值。在国际电信联盟(ITU,InternationalTelecommunicationUnion)的语音编码标准——共轭结构代数码本激励线性预测声码器定义的静音压缩方案中,采用的DTX/CNG技术,即为在编码端根据噪声参数的变化情况,自适应地确定是否发送SID,前后两帧SID的间隔最小为20毫秒,最大则不限。在解码端采用的CNG算法则用公式可表示为对信号能量增益参数的重建对谱参数的重建LSFt,sub_2=LSFsid_new其中表示解码端接收到的最新SID帧解码出的信号能量增益参数,LSFsid_last表示解码端上一次接收到的SID解码出的谱参数,LSFsid_new表示解码端最新接收到的SID解码出的谱参数。在对现有技术的研究和实践过程中,发明人发现现有技术存在以下问题3GPP的语音编码标准——AMR中采用的DTX/CNG技术,只针对编码端按照固定间隔发送SID帧的情况,在编码端使用的是自适应间隔发送SID帧时,将无法正常工作。ITU的语音编码标准——共轭结构代数码本激励线性预测声码器定义的静音压缩方案中采用的DTX/CNG技术,在当前帧为SID时,使用解码出的谱参数与上一个SID帧平均出当前帧的第一子帧的谱参数,第二子帧的谱参数则直接使用解码出的谱参数;在下一个SID帧到来之间的无音帧,则直接使用最近的SID帧解码出的谱参数重建噪声,当下一个SID帧到来且解码出的谱参数和前一帧SID帧的谱参数有较大差别时,就会出现不连续性,且由于谱参数是一个处于不断变化中的量,因此前后两个谱参数通常是有差别的,因此重建的舒适噪声的谱,很容易出现不连续性,进而影响到听觉质量,在前后两个谱参数差别较大时尤其明显。
发明内容本发明实施例要解决的技术问题是提供一种噪声生成装置、及方法,可以适用多种标准,且生成的噪声使用户感觉较为舒适。为解决上述技术问题,本发明一方面,提供了一种噪声生成方法,所述方法包括根据从帧中获取的噪声参数,获取重建参数初始值、目标变化增量;根据当前帧与最新接收到的静音插入描述帧的距离获得变化曲线平滑的预测系数;以所述预测系数与所述目标变化增量的乘积,加上所述重建参数初始值,作为重建的噪声参数;根据所述重建的噪声参数生成噪声。另一方面,提供了一种噪声生成装置,所述装置包括初始值单元,用于根据从帧中获取的噪声参数,获取重建参数初始值;增量单元,用于根据从静音插入描述帧中获取的噪声参数,获取目标变化增量;系数单元,用于根据当前帧与最新接收到的静音插入描述帧的距离获得变化曲线平滑的预测系数;重建单元,用于以所述预测系数与所述目标变化增量的乘积,加上所述重建参数初始值,作为重建的噪声参数;合成单元,用于根据所述重建单元重建的噪声参数生成噪声。以上技术方案可以看出,本发明实施例对编码端使用的协议标准没有限制,无论编码端按照固定间隔发送SID帧,还是自适应间隔发送SID帧,都可以正常工作。且由于在收到第一个SID帧之后,再次收到新的SID帧时,都会采用前一帧重建的噪声参数,作为重建参数初始值,并参考最新收到的SID帧的噪声参数,使用变化曲线平滑的预测系数重建噪声参数,根据该重建的噪声参数生成的噪声变化曲线平滑,且和新收到SID帧的前一帧的过渡会比较自然,用户会有较好的听觉体验。图1、本发明实施例提供的噪声生成方法实施例一的流程图;图2、本发明实施例提供的噪声生成方法实施例二的流程图;图3、本发明实施例提供的噪声生成方法实施例二中预测系数的曲线图;图4、本发明实施例提供的噪声生成方法实施例三的流程图;图5、本发明实施例提供的噪声生成方法实施例四的流程图;图6、本发明实施例提供的噪声生成方法实施例五的流程图;图7、本发明实施例提供的噪声生成装置实施例的结构图。具体实施例方式本发明实施例提供了一种噪声生成装置、及方法,可以适应多种标准协议,使解码端恢复出使用户感觉较舒适的噪音。本发明实施例提供的噪声生成方法实施例,在解码端通过少量的SID帧中的噪声参数,重建变化曲线平滑的噪声参数,以恢复出使用户感觉较舒适的噪音。本发明实施例提供的噪声生成方法实施例一,为使用固定曲线函数重建噪声的实施例,其流程如图1所示,包括步骤101、获取SID帧中携带的噪声参数。开始语音通信后,解码端从接收到的语音数据流中译码出帧信息,然后对该帧的格式进行判断,若该帧为语音帧,则进入语音帧处理流程;若为非语音帧,如SID帧或者无音帧,则进入本实施例提供的噪声生成方法实施例流程。在处理非语音帧时,由于无音帧中不包含任何语音数据,通常直接进入步骤102;在收到SID帧时,就要获取该SID帧中携带的噪声参数,即信号能量增益参数和谱参数。步骤102、为当前帧重建变化曲线平滑的噪声参数,包括重建信号能量增益参数和谱参数,当前帧为非语音帧,包括SID帧及无音帧。在收到一个非语音帧时,首先确定好重建参数初始值Pref、目标变化增量ΔP、及预测系数,然后在重建参数初始值的基础上,参考目标变化增量、及预测系数f(length,k),重建出噪声参数,以Pk表示当前重建出的噪声参数,Pk=Pref+f(length,k)ΔP(k=1,2,…);其中k表示当前帧与最新接收到的SID帧的距离,length为预测的最新收到的SID帧与下一个SID帧之间的间隔长度,可以被称为预测间隔长度,即假设经过时间length可以收到下一帧SID帧,随着k的变化,f(length,k)也随之变化。通常在收到第一个SID帧时,以预定值或设定的发送SID帧间隔作为预测间隔长度length;在收到第一个SID帧之后,再次收到SID帧时,以最新收到的SID帧和前次收到的SID帧之间间隔长度作为预测间隔长度length。Pk受预测系数f(length,k)的影响,以Pref为初始值,以Pref+ΔP为目标进行平滑过渡,预测系数f(length,k)可以通过任何一种取值大于“0”,变化曲线平滑趋向于1的函数获得,例如或,指数函数或,余弦函数等等。解码端在语音帧之后接收到第一帧SID帧时,获得重建参数初始值Pref的方式有很多种,本实施例列出了其中的两种第一种、利用缓存区中存储的过去几帧的噪声参数,包括信号能量增益参数和谱参数,估算出过去平均噪声参数,包括平均信号能量增益参数和平均谱参数,以该平均噪声参数作为重建参数初始值Pref。估算的方式可以是采用前几帧噪声参数的平均值作为重建参数初始值Pref,也可以是采用前几帧噪声参数的加权平均值作为重建参数初始值Pref;第二种、直接采用最新收到的SID帧携带的噪声参数,包括信号能量增益参数和谱参数,作为重建参数初始值Pref。重建参数初始值Pref包括重建信号能量增益参数初始值、重建谱参数初始值。若不是语音帧之后接收到的第一帧SID帧,则用在该SID帧前一帧重建的信号能量增益参数和谱参数作为重建参数初始值Pref,前一帧可以是无音帧也可以是SID帧。在为无音帧重建噪声时,重建参数初始值Pref与前一帧相同。目标变化增量ΔP表达了重建噪声参数Pk相对于重建参数初始值Pref的变化方向,也即决定重建噪声参数Pk相对于重建参数初始值Pref是变大还是变小,同时也表达了重建噪声参数Pk相对于重建参数初始值Pref的变化范围,即重建噪声参数Pk在预测系数f(length,k)的影响下,将向Pref+ΔP进行平滑过渡。获得目标变化增量ΔP的方式有很多种,本实施例列出了其中的三种第一种、以最新收到的SID帧携带的噪声参数与重建参数初始值的差值作为目标变化增量ΔP,以最新收到的SID帧为第n帧为例,目标变化增量ΔP用公式可以表述为ΔP=Psid(n)-Pref第二种、以最新收到的SID帧携带的噪声参数与前一帧SID帧携带的噪声参数的差值作为目标变化增量ΔP,以最新收到的SID帧为第n帧为例,目标变化增量ΔP用公式可以表述为ΔP=Psid(n)-Psid(n-1)第三种、以最新收到的SID帧携带的噪声参数与前一帧SID帧携带的噪声参数的比值减去“1”的结果,与最新收到的SID帧携带的噪声参数的乘积作为目标变化增量ΔP,以最新收到的SID帧为第n帧为例,目标变化增量ΔP用公式可以表述为ΔP=Psid(n)×(Psid(n)/Psid(n-1)-1)若在语音段后收到的第一帧不是SID帧,而是无音帧、或标记噪音段开始的帧(SID_FIRST),则直接使用最近接受到的噪声参数作为重建噪声参数,或使用缓存区中存储的过去几帧噪声参数的平均值作为重建噪声参数,直到收到SID帧为止。根据该重建噪声参数生成的噪声与语音段相差极小,变化平滑,且由于语音段后很快就会收到SID帧,这段时间非常短暂,人类的听觉系统很难分辨,不会给用户带来不好的听觉体验。步骤103、利用重建的噪声参数生成噪声。解码端利用随机序列发生器合成激励信号,该激励信号在重建噪声时,相当于SID帧相比普通语音帧缺少的内容,如固定码本、及自适应码本相关的参数等,解码端根据噪音的共性,利用随机序列发生器合成激励信号,用以重建噪声。利用激励信号及重建的噪声参数生成噪声的方法有两种第一种、解码端将重建的噪声参数中的谱参数,转换为合成滤波器系数,对激励信号进行合成滤波,获得噪声信号,然后对合成的噪声信号用重建的噪声参数中的信号能量增益参数进行时域整形,进行后处理,即可输出为最终的重建噪声。第二种、解码端利用重建的噪声参数中的信号能量增益参数及随机序列发生器合成激励信号,然后将重建的噪声参数中的谱参数,转换为合成滤波器系数,对激励信号进行合成滤波,获得噪声信号。在本实施例中,对编码端使用的协议标准没有限制,无论编码端按照固定间隔发送SID帧,还是自适应间隔发送SID帧,都可以正常工作。且由于在收到第一个SID帧之后,再次收到新的SID帧时,都会采用前一帧重建的噪声参数,作为重建参数初始值,并参考最新收到的SID帧的噪声参数,根据该重建的噪声参数生成的噪声可以反映实际的背景环境,且和新收到SID帧的前一帧的过渡会比较自然,用户会有较好的听觉体验。进一步由于采用变化曲线平滑的曲线函数作为预测系数重建噪声参数,使得重建出的相邻噪声参数变化较为平滑,因此生成的噪声每帧之间的过渡也比较自然,会给用户带来较好的听觉体验。再者,由于本实施例采用的技术方案是基于过去的信息,例如前一帧的噪声参数、最新接收到的SID帧与其前一个SID帧之间的间隔长度等等,对当前帧噪声参数进行预测重建,在实际通信系统中,即使出现由于信道恶劣导致SID帧丢失的情况,解码端仍然可以重建出平滑变化的舒适噪声,对信道而言具有良好的鲁棒性。本发明实施例提供的噪声生成方法实施例二,编码端采用自适应间隔发送SID帧,其流程如图2所示,包括步骤201、接收SID帧,获取其中携带的噪声参数。开始语音通信后,解码端从接收到的语音数据流中译码出帧信息,然后对该帧的格式进行判断,若该帧为语音帧,则进入语音帧处理流程;若为非语音帧,如SID帧或者无音帧,则进入本实施例提供的噪声生成方法实施例流程。在处理非语音帧时,由于无音帧中不包含任何语音数据,通常直接进入步骤202;在收到SID帧时,就要获取其中携带的噪声参数,即信号能量增益参数Gsid和谱参数lsfsid。步骤202、获得重建参数初始值。解码端在检测到帧类型从语音帧切换为非语音帧时,即接收到第一帧SID帧时,采用上述的第一种方法获得重建参数初始值,以前几帧的平均值作为重建参数初始值。通过缓冲区中存储的过去Np帧的信号能量增益参数和谱参数,计算出平均的信号能量增益参数Gref和谱参数lsfref作为重建参数初始值,此处Np取值为大于0的整数,例如Np=5,过去的帧可以是语音帧,也可以是SID帧。重建信号能量增益参数初始值Gref和重建谱参数初始值lsfref可用公式表达如下若接收到的SID帧不是第一帧SID帧,则用在该SID帧前一帧重建的信号能量增益参数和谱参数作为重建参数初始值。步骤203、重建噪声参数。在从语音段转入噪音段时,也即接收到语音帧后第一帧SID帧时,将length初始值置为Np,之后再次收到SID帧时,则取最新SID帧与其前一个SID帧之间的间隔长度。为了保证DTX的效率,一般来说会对SID帧的发送间隔进行限制,即length必须大于等于一个自然数,使LEN_MIN为设定的发送静音插入描述帧的最小间隔,则length≥LEN_MIN,例如在G.729B版本的协议中规定LEN_MIN=2,则length必须大于等于2。对于某个SID帧后第k帧,其预测系数f(length,k)的取值通常由length、LEN_MIN、k共同决定,预测系数f(length,k)用公式可以表述为从最近的SID帧中解码得到的信号能量增益参数为Gsid(n)、谱参数为lsfsid(n),则使用上述的获得目标变化增量的第一种方法时,信号能量增益参数目标变化增量ΔG、及谱参数目标变化增量Δlsf用公式可以表述为ΔG=Gsid(n)-GrefΔlsf=lsfsid(n)-lsfref当前帧的重建噪声参数,重建信号能量增益参数Gk、重建谱参数lsfk用公式可以表述为Gk=Gref+f(length,k)ΔG(k=1,2,…)lsfk=lsfref+f(length,k)Δlsf(k=1,2,…)如果接收到新的SID帧,则使用下面算法对相关变量进行更新length=k-1;Gref=Gk-1;lsfref=lssfk-1;最后使k=1;如果收到的是无音帧,则使k=k+1,继续重建出该帧的噪声参数,直到收到新的SID帧。步骤204、利用重建的噪声参数生成噪声。采用随机序列生成白噪声激励信号e(n);用重建的谱参数lsfk构造合成滤波器ak(z);将生成的激励信号用合成滤波器合成滤波yk(n)=e(n)*ak(n)然后将合成的噪声yk(n)使用重建的信号能量增益参数Gk进行时域整形其中N为帧长,即可在解码端恢复出舒适噪声。本实施例步骤204采用的利用重建的噪声参数生成噪声的方法,即为上文提到的利用激励信号及重建的噪声参数生成噪声的方法一。本实施例中采用了曲线函数来获取预测系数f(length,k),采用该曲线函数获得的变化曲线如图3所示,是一个随着k值的增加,缓慢上升一段时间后,加速上升,上升到一定程度又开始缓慢上升并趋向于“1”的曲线,根据该预测系数f(length,k)重建的噪声参数生成的噪声的变化曲线也基本相同,在实际使用,这种噪声会给用户带来比较舒适的听觉体验。在本实施例中,对编码端使用的协议标准没有限制,无论编码端按照固定间隔发送SID帧,还是自适应间隔发送SID帧,都可以重建出变化比较平滑的噪声参数,包括信号能量增益参数、谱参数等,进而生成比较自然的舒适噪声。由于在从语音段转向噪音段时,采用最后语音段的平均信号能量增益参数和谱参数作为初始值,并参考最新收到的SID帧的噪声参数,重建噪声参数,这就保证了从语音段到噪音段切换时,生成的噪声与语音段的过渡比较自然,用户会有较好的听觉体验;每次收到新的SID帧都会采用前一帧重建的噪声参数作为初始值,并参考最新收到的SID帧的噪声参数,重建噪声参数,根据重建的噪声参数生成的噪声也可反映到实际噪声的变化方向,且和前一帧的过渡会比较自然,用户会有较好的听觉体验;进一步由于采用变化曲线平滑的曲线函数作为预测系数重建噪声参数,使得重建出的相邻噪声参数变化较为平滑,因此生成的噪声每帧之间的过渡也比较自然,会给用户带来较好的听觉体验。再者,由于本实施例采用的技术方案是基于过去的信息,例如前一帧的噪声参数、最新接收到的SID帧与其前一个SID帧之间的间隔长度等等,对当前帧噪声参数进行预测重建,在实际通信系统中,即使出现由于信道恶劣导致SID帧丢失的情况,解码端仍然可以重建出平滑变化的舒适噪声,对信道而言具有良好的鲁棒性。本发明实施例提供的噪声生成方法实施例三,编码端采用固定间隔发送SID帧,其流程如图4所示,包括步骤401、接收SID帧,获取其中携带的噪声参数。开始语音通信后,解码端从接收到的语音数据流中译码出帧信息,然后对该帧的格式进行判断,若该帧为语音帧,则进入语音帧处理流程;若为非语音帧,如SID帧或者无音帧,则进入本实施例提供的噪声生成方法实施例流程。在处理非语音帧时,由于无音帧中不包含任何语音数据,通常直接进入步骤402;在收到SID帧时,就要获取其中携带的噪声参数,即信号能量增益参数Gsid、谱参数lsfsid。步骤402、获得重建参数初始值。编码端采用固定的SID帧间隔发送SID帧,这里假定SID帧间隔为length,length取值为大于0的自然数。解码端在检测到帧类型从语音帧切换为非语音帧时,即接收到第一帧SID帧时,采用上述的第二种方法获得重建参数初始值。将接收到的SID帧中的噪声参数用作未来length帧的重建噪声参数,并用作重建噪声信号能量增益参数Gref和谱参数lsfref的初始值,重建信号能量增益参数初始值Gref和重建谱参数初始值lsfref用公式表达如下lsfref=lsfsid(1)Gref=Gsid(1)步骤403、重建噪声参数。重建噪声参数从收到第二个SID帧之后开始,对于某个SID帧后第k帧,其预测系数f(length,k)通过余弦函数计算,用公式可以表述为从最近的SID帧中解码得到的信号能量增益参数为Gsid、谱参数为lsfsid,则在使用上述的获得目标变化增量的第一种方法时,信号能量增益参数目标变化增量ΔG、及谱参数目标变化增量Δlsf用公式可以表述为ΔG=Gsid(n)-GrefΔlsf=lsfsid(n)-lsfref当前帧的重建噪声参数,重建信号能量增益参数Gk、重建谱参数lsfk用公式可以表述为Gk=Gref+f(length,k)ΔG(k=1,2,…)lsfk=lsfref+f(length,k)Δlsf(k=1,2,…)如果接收到新的SID帧时,则用下面算法对变量进行更新Gref=Gk-1lsfref=lsfk-1;最后使k=1;如果收到的是无音帧,则使k=k+1,继续重建出该帧的噪声参数,直到收到新的SID帧。步骤404、利用重建的噪声参数生成噪声。使用随机序列发生器以及重建的能量增益参数Gk合成白噪声激励信号e(n);用重建的谱参数lsfk构造合成滤波器ak(z);将生成的激励信号用合成滤波器合成滤波yk(n)=e(n)*ak(n)再经过后滤波处理,即可在解码端恢复出舒适噪声。本实施例步骤404采用的利用重建的噪声参数生成噪声的方法,即为上文提到的利用激励信号及重建的噪声参数生成噪声的方法二。本实施例中采用了余弦函数来获取预测系数f(length,k),获得的变化曲线,是一个随着k值的增加,渐渐趋向于“1”的曲线,根据该预测系数f(length,k)重建的噪声参数生成的噪声的变化曲线也基本相同,在实际使用,这种噪声会给用户带来比较舒适的听觉体验。在本实施例中,对编码端使用的协议标准没有限制,无论编码端按照固定间隔发送SID帧,还是自适应间隔发送SID帧,都可以重建出变化比较平滑的噪声参数,包括信号能量增益参数、谱参数等,进而生成比较自然的舒适噪声。由于在从语音段转入噪音段时,采用最新收到的SID帧的噪声参数生成第一帧SID帧到下一个SID帧之间的噪声,每次收到新的SID帧都会采用前一帧重建的噪声参数作为初始值,并参考最新收到的SID帧的噪声参数,重建噪声参数,生成噪声,由于语音段转入噪音段时,发送来的SID帧离语音短非常近,所以直接使用最新收到的SID帧的噪声参数生成第一帧SID帧到下一个SID帧之间的噪声,语音段转入噪音段的过渡会比较自然,且两帧SID帧的间隔很短,在短暂的时间内噪音没有变化,是普通人的听觉无法发现的,用户会有较好的听觉体验,且根据重建的噪声参数生成的噪声可反映到实际噪声的变化方向,和前一帧的过渡会比较自然;进一步由于采用变化曲线平滑的曲线函数作为预测系数重建噪声参数,使得重建出的相邻噪声参数变化较为平滑,因此生成的噪声每帧之间的过渡也比较自然,会给用户带来较好的听觉体验。再者,由于本实施例采用的技术方案是基于过去的信息,例如前一帧的噪声参数、最新接收到的SID帧与其前一个SID帧之间的间隔长度等等,对当前帧噪声参数进行预测重建,在实际通信系统中,即使出现由于信道恶劣导致SID帧丢失的情况,解码端仍然可以重建出平滑变化的舒适噪声,对信道而言具有良好的鲁棒性。本发明实施例提供的噪声生成方法实施例四,编码端采用自适应间隔发送SID帧,其流程如图5所示,包括步骤501、接收SID帧,获取其中携带的噪声参数。开始语音通信后,解码端从接收到的语音数据流中译码出帧信息,然后对该帧的格式进行判断,若该帧为语音帧,则进入语音帧处理流程;若为非语音帧,如SID帧或者无音帧,则进入本实施例提供的噪声生成方法实施例流程。在处理非语音帧时,由于无音帧中不包含任何语音数据,通常直接进入步骤502;在收到SID帧时,就要获取其中携带的噪声参数,即信号能量增益参数Gsid、谱参数lsfsid。步骤502、获得重建参数初始值。解码端在检测到帧类型从语音帧切换为非语音帧时,即接收到第一帧SID帧时,采用上述的第二种方法获得重建参数初始值。解码端在检测到帧类型从语音帧切换为非语音帧时,即接收到第一帧SID帧时,以缓冲区中存储的过去Np帧的信号能量增益参数和谱参数的加权平均值作为Gsid(0)和lsfsid(0),Gsid(0)、lsfsid(0)可用公式表达如下其中wi为权值,满足关系则重建信号能量增益参数初始值Gref和重建谱参数初始值lsfref可用公式表达为Gref=Gsid(0)lsfref=lsfsid(0)若接收到的SID帧不是第一帧SID帧,则用在该SID帧前一帧重建的信号能量增益参数和谱参数作为重建参数初始值。步骤503、重建噪声参数。在从语音段转入噪音段时,也即接收到语音帧后第一帧SID帧时,将length初始值置为Np,之后再次收到SID帧时,则取最新SID帧与其前一个SID帧之间的间隔长度。为了保证DTX的效率,一般来说会对SID帧的发送间隔进行限制,即length必须大于等于一个自然数,使LEN_MIN为设定的发送静音插入描述帧的最小间隔,则length≥LEN_MIN,例如在G.729B版本的协议中规定LEN_MIN=2,则length必须大于等于2。对于某个SID帧后第k帧,若使用指数函数获得预测系数f(length,k),预测系数f(length,k)用公式可以表述为从最近的SID帧中解码得到的信号能量增益参数为Gsid(n)、谱参数为lsfsid(n),则使用上述的获得目标变化增量的第二种方法时,信号能量增益参数目标变化增量ΔG、及谱参数目标变化增量Δlsf用公式可以表述为ΔG=Gsid(n)-Gsid(n-1)(n=1,2,…)Δlsf=lsfsid(n)-lsfsid(n-1)(n=1,2,…)解码端在检测到帧类型从语音帧切换为非语音帧时,即接收到第一帧SID帧时,以缓冲区中存储的过去Np帧的信号能量增益参数和谱参数的加权平均值作为Gsid(0)和lsfsid(0)。过去的帧可以是语音帧,也可以是SID帧。Gsid(0)、lsfsid(0)可用公式表达如下其中wi为权值,满足关系当前帧的重建噪声参数,重建信号能量增益参数Gk、重建谱参数lsfk用公式可以表述为Gk=Gref+f(length,k)ΔG(k=1,2,…)lsfk=lsfref+f(length,k)Δlsf(k=1,2,…)如果接收到新的SID帧时,则用下面算法对变量进行更新length=k-1;n=n+1;Gref=Gk-1lsfref=lsfk-1最后使k=1;如果收到的是无音帧,则使k=k+1,继续重建出该帧的噪声参数,直到收到新的SID帧。步骤504、利用重建的噪声参数生成噪声。采用随机序列生成白噪声激励信号e(n);用重建的谱参数lsfk构造合成滤波器ak(z);将生成的激励信号用合成滤波器合成滤波yk(n)=e(n)*ak(n)然后将合成的噪声yk(n)使用重建的信号能量增益参数Gk进行时域整形其中N为帧长,即可在解码端恢复出舒适噪声。本实施例步骤504采用的利用重建的噪声参数生成噪声的方法,即为上文提到的利用激励信号及重建的噪声参数生成噪声的方法一。本实施例中采用了指数函数来获取预测系数f(length,k),获得的变化曲线,是一个随着k值的增加,渐渐趋向于“1”的曲线,根据该预测系数f(length,k)重建的噪声参数生成的噪声的变化曲线也基本相同,在实际使用,这种噪声会给用户带来比较舒适的听觉体验。在本实施例中,对编码端使用的协议标准没有限制,无论编码端按照固定间隔发送SID帧,还是自适应间隔发送SID帧,都可以重建出变化比较平滑的噪声参数,包括信号能量增益参数、谱参数等,进而生成比较自然的舒适噪声。由于在从语音段转向噪音段时,采用最后语音段的加权平均噪声参数作为初始值,并参考最后语音段的加权平均噪声参数及最新收到的SID帧的噪声参数的差值,重建噪声参数,这就就保证了从语音段到噪音段切换时,生成的噪声与语音段的过渡比较自然,用户会有较好的听觉体验;每次收到新的SID帧都会采用前一帧重建的噪声参数作为初始值,并参考最新收到的SID帧的噪声参数与前一帧重建的噪声参数的差值,重建噪声参数,根据重建的噪声参数生成的噪声可反映到实际噪声的变化方向,且和前一帧的过渡会比较自然,用户会有较好的听觉体验;进一步由于采用变化曲线平滑的曲线函数作为预测系数重建噪声参数,使得重建出的相邻噪声参数变化较为平滑,因此生成的噪声每帧之间的过渡也比较自然,会给用户带来较好的听觉体验。再者,由于本实施例采用的技术方案是基于过去的信息,例如前一帧的噪声参数、最新接收到的SID帧与其前一个SID帧之间的间隔长度等等,对当前帧噪声参数进行预测重建,在实际通信系统中,即使出现由于信道恶劣导致SID帧丢失的情况,解码端仍然可以重建出平滑变化的舒适噪声,对信道而言具有良好的鲁棒性。本发明实施例提供的噪声生成方法实施例五,编码端采用固定间隔发送SID帧,其流程如图6所示,包括步骤601、接收SID帧,获取其中携带的噪声参数。开始语音通信后,解码端从接收到的语音数据流中译码出帧信息,然后对该帧的格式进行判断,若该帧为语音帧,则进入语音帧处理流程;若为非语音帧,如SID帧或者无音帧,则进入本实施例提供的噪声生成方法实施例流程。在处理非语音帧时,由于无音帧中不包含任何语音数据,通常直接进入步骤602;在收到SID帧时,就要获取其中携带的噪声参数,即信号能量增益参数Gsid、谱参数lsfsid。步骤602、获得重建参数初始值。解码端在检测到帧类型从语音帧切换为非语音帧时,即接收到第一帧SID帧时,采用上述的第二种方法获得重建参数初始值。假设此时从该帧中获得的信号能量增益参数为Gsid(1)、谱参数为lsfsid(1),则重建信号能量增益参数初始值Gref和重建谱参数初始值lsfref可用公式表达为Gref=Gsid(1)lsfref=lsfsid(1)若接收到的SID帧不是第一帧SID帧,则用在该SID帧前一帧重建的信号能量增益参数和谱参数作为重建参数初始值。步骤603、重建噪声参数。编码端采用固定的SID帧间隔发送SID帧,这里假定SID帧间隔为length,length取值为大于0的自然数。对于某个SID帧后第k帧,若采用了曲线函数来获得预测系数f(length,k),此时设定的发送静音插入描述帧的最小间隔LEN_MIN的取值与length相等,预测系数f(length,k)用公式可以表述为从最近的SID帧中解码得到的信号能量增益参数为Gsid(n)、谱参数为lsfsid(n),则使用上述的获得目标变化增量的第三种方法时,信号能量增益参数目标变化增量ΔG、及谱参数目标变化增量Δlsf用公式可以表述为ΔG=Gsid(n)×(Gsid(n)/Gsid(n-1)-1)(n=1,2,…)Δlsf=lsfsid(n)×(lsfsid(n)/lsfsid(n-1)-1)(n=1,2,…)解码端在检测到帧类型从语音帧切换为非语音帧时,即接收到第一帧SID帧时,以缓冲区中存储的过去Np帧的信号能量增益参数和谱参数的加权平均值作为Gsid(0)和lsfsid(0)。过去的帧可以是语音帧,也可以是SID帧。Gsid(0)、lsfsid(0)可用公式表达如下其中wi为权值,满足关系当前帧的重建噪声参数,重建信号能量增益参数Gk、重建谱参数lsfk用公式可以表述为Gk=Gref+f(length,k)ΔG(k=1,2,…)lsfk=lsfref+f(length,k)Δlsf(k=1,2,…)如果接收到新的SID帧时,则用下面算法对变量进行更新length=k-1;n=n+1;Gref=Gk-1;lsfref=lsfk-1最后使k=1;如果收到的是无音帧,则使k=k+1,继续重建出该帧的噪声参数,直到收到新的SID帧。步骤604、利用重建的噪声参数生成噪声。使用随机序列发生器以及重建的能量增益参数Gk合成白噪声激励信号e(n);用重建的谱参数lsfk构造合成滤波器ak(z);将生成的激励信号用合成滤波器合成滤波yk(n)=e(n)*ak(n)再经过后滤波处理,即可在解码端恢复出舒适噪声。本实施例步骤604采用的利用重建的噪声参数生成噪声的方法,即为上文提到的利用激励信号及重建的噪声参数生成噪声的方法二。本实施例中采用了曲线函数来获取预测系数f(length,k),采用该曲线函数获得的变化曲线如图3所示,是一个随着k值的增加,缓慢上升一段时间后,加速上升,上升到一定程度又开始缓慢上升并趋向于“1”的曲线,根据该预测系数f(length,k)重建的噪声参数生成的噪声的变化曲线也基本相同,在实际使用,这种噪声会给用户带来比较舒适的听觉体验。在本实施例中,对编码端使用的协议标准没有限制,无论编码端按照固定间隔发送SID帧,还是自适应间隔发送SID帧,都可以重建出变化比较平滑的噪声参数,包括信号能量增益参数、谱参数等,进而生成比较自然的舒适噪声。由于在从语音段转向噪音段时,采用最新收到的SID帧的噪声参数作为初始值,并参考最后语音段的加权平均噪声参数及最新收到的SID帧的噪声参数的比值,重建噪声参数,由于语音段转入噪音段时,发送来的SID帧离语音短非常近,所以直接使用最新收到的SID帧的噪声参数作为初始值,就保证了从语音段到噪音段切换时,生成的噪声与语音段的过渡比较自然,用户会有较好的听觉体验;每次收到新的SID帧都会采用前一帧重建的噪声参数作为初始值,并参考最新收到的SID帧的噪声参数与前一帧重建的噪声参数的比值,重建噪声参数,根据重建的噪声参数生成的噪声可反映到实际噪声的变化方向,且和前一帧的过渡会比较自然,用户会有较好的听觉体验;进一步由于采用变化曲线平滑的曲线函数作为预测系数重建噪声参数,使得重建出的相邻噪声参数变化较为平滑,因此生成的噪声每帧之间的过渡也比较自然,会给用户带来较好的听觉体验。再者,由于本实施例采用的技术方案是基于过去的信息,例如前一帧的噪声参数、最新接收到的SID帧与其前一个SID帧之间的间隔长度等等,对当前帧噪声参数进行预测重建,在实际通信系统中,即使出现由于信道恶劣导致SID帧丢失的情况,解码端仍然可以重建出平滑变化的舒适噪声,对信道而言具有良好的鲁棒性。本发明实施例提供的噪声生成装置实施例结构如图7所示,包括初始值单元720,用于根据从静音插入描述帧中获取的噪声参数,获取重建参数初始值;增量单元730,用于根据从静音插入描述帧中获取的噪声参数,获取目标变化增量;系数单元710,用于根据当前帧与最新接收到的静音插入描述帧的距离获得预测系数;重建单元740,用于以所述预测系数与所述目标变化增量的乘积,加上所述重建参数初始值,作为重建的噪声参数;合成单元750,用于根据所述重建单元重建的噪声参数生成噪声。其中系数单元710包括第一系数单元711,用于根据系统规定的发送静音插入描述帧的最小间隔、间隔长度、当前帧与最新接收到的静音插入描述帧的距离,获得预测系数;或第二系数单元712,用于根据间隔长度、当前帧与最新接收到的静音插入描述帧的距离,获得预测系数。初始值单元720包括第一初始值单元721,用于在收到第一个静音插入描述帧时,取所述第一个静音插入描述帧之前预定数目个帧的噪声参数的平均值作为所述重建参数初始值;或第二初始值单元722,用于在收到第一个静音插入描述帧时,以所述第一个静音插入描述帧的噪声参数作为所述重建参数初始值。第三初始值单元723,用于在收到第一个静音插入描述帧之后,再次收到静音插入描述帧时,取最新收到的静音插入描述帧的噪声参数作为所述重建参数初始值。增量单元730包括第一增量单元731,用于以最新收到的静音插入描述帧的噪声参数与所述重建参数初始值的差值作为目标变化增量;或第二增量单元732,用于以最新收到的静音插入描述帧的噪声参数与前一帧静音插入描述帧的噪声参数的差值作为目标变化增量;或第三增量单元733,用于以最新收到的静音插入描述帧的噪声参数与前一帧静音插入描述帧的噪声参数的比值减去“1”的结果,与所述最新收到的静音插入描述帧的噪声参数的乘积作为目标变化增量。本发明实施例提供的噪声生成装置实施例的具体工作方式可参考上文对本发明实施例提供的噪声生成方法的描述。且由于在收到第一个SID帧之后,再次收到新的SID帧时,都会采用前一帧重建的噪声参数,作为重建参数初始值,并参考最新收到的SID帧的噪声参数,使用变化曲线平滑的预测系数重建噪声参数,根据该重建的噪声参数生成的噪声变化曲线平滑,且和新收到SID帧的前一帧的过渡会比较自然,用户会有较好的听觉体验。进一步由于采用变化曲线平滑的曲线函数作为预测系数重建噪声参数,使得重建出的相邻噪声参数变化较为平滑,因此生成的噪声每帧之间的过渡也比较自然,会给用户带来较好的听觉体验。再者,由于本实施例采用的技术方案是基于过去的信息,例如前一帧的噪声参数、最新接收到的SID帧与其前一个SID帧之间的间隔长度等等,对当前帧噪声参数进行预测重建,在实际通信系统中,即使出现由于信道恶劣导致SID帧丢失的情况,解码端仍然可以重建出平滑变化的舒适噪声,对信道而言具有良好的鲁棒性。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。以上对本发明所提供的一种噪声生成装置、及方法进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。权利要求1、一种噪声生成方法,其特征在于,所述方法包括根据从帧中获取的噪声参数,获取重建参数初始值、目标变化增量;根据当前帧与最新接收到的静音插入描述帧的距离获得变化曲线平滑的预测系数;以所述预测系数与所述目标变化增量的乘积,加上所述重建参数初始值,作为重建的噪声参数;根据所述重建的噪声参数生成噪声。2、如权利要求1所述的噪声生成方法,其特征在于,所述预测系数为或或其中LEN_MIN为设定的发送静音插入描述帧的最小间隔,length为预测间隔长度,k为当前帧与最新接收到的静音插入描述帧的距离。3、如权利要求2所述的噪声生成方法,其特征在于,在收到第一个静音插入描述帧时,所述预测间隔长度为预定值或设定的发送静音插入描述帧间隔;在收到第一个静音插入描述帧之后,再次收到静音插入描述帧时,所述预测间隔长度为最新收到的静音插入描述帧和前次收到的静音插入描述帧之间间隔长度。4、如权利要求1所述的噪声生成方法,其特征在于,在收到第一个静音插入描述帧时,获取所述重建参数初始值包括取所述第一个静音插入描述帧之前预定数目个帧的噪声参数的平均值作为所述重建参数初始值;或以所述第一个静音插入描述帧的噪声参数作为所述重建参数初始值。5、如权利要求1所述的噪声生成方法,其特征在于,在收到第一个静音插入描述帧之后,再次收到静音插入描述帧时,获取所述重建参数初始值包括取在最新收到的静音插入描述帧的前一帧重建的噪声参数作为所述重建参数初始值。6、如权利要求1、2、3、4或5所述的噪声生成方法,其特征在于,所述目标变化增量为最新收到的静音插入描述帧的噪声参数与所述重建参数初始值的差值;或最新收到的静音插入描述帧的噪声参数与前一帧静音插入描述帧的噪声参数的差值;或最新收到的静音插入描述帧的噪声参数与前一帧静音插入描述帧的噪声参数的比值减去“1”的结果,与所述最新收到的静音插入描述帧的噪声参数的乘积。7、如权利要求1、2、3、4或5所述的噪声生成方法,其特征在于,所述噪声参数包括信号能量增益参数、和/或谱参数。8、一种噪声生成装置,其特征在于,所述装置包括初始值单元,用于根据从帧中获取的噪声参数,获取重建参数初始值;增量单元,用于根据从静音插入描述帧中获取的噪声参数,获取目标变化增量;系数单元,用于根据当前帧与最新接收到的静音插入描述帧的距离获得变化曲线平滑的预测系数;重建单元,用于以所述预测系数与所述目标变化增量的乘积,加上所述重建参数初始值,作为重建的噪声参数;合成单元,用于根据所述重建单元重建的噪声参数生成噪声。9、如权利要求8所述的噪声生成装置,其特征在于,所述系数单元包括第一系数单元,用于根据设定的发送静音插入描述帧的最小间隔、预测间隔长度、当前帧与最新接收到的静音插入描述帧的距离,获得预测系数;或第二系数单元,用于根据间隔长度、当前帧与最新接收到的静音插入描述帧的距离,获得预测系数。10、如权利要求8所述的噪声生成装置,其特征在于,所述初始值单元包括第一初始值单元,用于在收到第一个静音插入描述帧时,取所述第一个静音插入描述帧之前预定数目个帧的噪声参数的平均值作为所述重建参数初始值;或第二初始值单元,用于在收到第一个静音插入描述帧时,以所述第一个静音插入描述帧的噪声参数作为所述重建参数初始值。11、如权利要求8所述的噪声生成装置,其特征在于,所述初始值单元包括第三初始值单元,用于在收到第一个静音插入描述帧之后,再次收到静音插入描述帧时,取在最新收到的静音插入描述帧的前一帧重建的噪声参数作为所述重建参数初始值。12、如权利要求8、9、10或11所述的噪声生成装置,其特征在于,所述增量单元包括第一增量单元,用于以最新收到的静音插入描述帧的噪声参数与所述重建参数初始值的差值作为目标变化增量;或第二增量单元,用于以最新收到的静音插入描述帧的噪声参数与前一帧静音插入描述帧的噪声参数的差值作为目标变化增量;或第三增量单元,用于以最新收到的静音插入描述帧的噪声参数与前一帧静音插入描述帧的噪声参数的比值减去“1”的结果,与所述最新收到的静音插入描述帧的噪声参数的乘积作为目标变化增量。全文摘要本发明公开了一种噪声生成方法,包括根据从帧中获取的噪声参数,获取重建参数初始值、目标变化增量;根据当前帧与最新接收到的SID帧的距离获得变化曲线平滑的预测系数;以所述预测系数与所述目标变化增量的乘积,加上所述重建参数初始值,作为重建的噪声参数;根据所述重建的噪声参数生成噪声。本发明还公开了一种噪声生成装置,包括初始值单元,用于获取重建参数初始值;增量单元,用于获取目标变化增量;系数单元,用于获得变化曲线平滑的预测系数;重建单元,用于重建噪声参数;合成单元,用于根据所述重建单元重建的噪声参数生成噪声。本发明可以适用多种标准,且生成的噪声使用户感觉较为舒适。文档编号G10L19/00GK101393742SQ20071015464公开日2009年3月25日申请日期2007年9月20日优先权日2007年9月20日发明者代金良,张德明申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1