一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

丢包恢复方法及装置、电子设备和计算机可读存储介质与流程

2021-06-04 09:59:00 来源:中国专利 TAG:

(n-i)为所述输出信号前的第i个在前输出信号,a(i)为所述第i 个在前输出信号的线性预测系数,l为指定预测阶数,所述为所述第n个语音帧的基音周期预测信号,g为基音周期预测系数;根据所述lp合成滤波器的输出信号和所述基音周期预测信号,计算所述丢失包内每个语音帧的预测信号,所述预测信号的计算公式为:
[0011][0012]
其中,x(n)表示所述丢失包中第n个语音帧的预测信号,x1(n)表示所述 lp合成滤波器对所述丢失包中第n个语音帧的输出信号,α为所述输出信号的加权,为所述第n个语音帧的基音周期预测信号,β为所述基音周期预测信号的加权。
[0013]
在本发明上述实施例中,可选地,在所述根据所述lp合成滤波器的输出信号和所述基音周期预测信号,计算所述丢失包的步骤之前,还包括:为所述丢失包的每个语音帧选择对应的衰减系数;将所述基音周期预测信号与所述衰减系数的乘积设置为所述衰减系数对应的语音帧的实际基音周期预测信号;在计算所述衰减系数对应的语音帧的预测信号之前,通过所述实际基音周期预测信号覆盖所述基音周期预测信号。
[0014]
在本发明上述实施例中,可选地,所述通过所述目标差值范围对应的丢包恢复方式,对所述两个已接收语音帧之间产生的丢失包进行恢复的步骤,包括:在所述序号差值处于第三预定差值范围内时,按照所述丢失包内的语音帧时间顺序,依次将所述丢失包内在前的第一语音帧作为rbf神经网络模型的输入训练,得到所述第一语音帧后的第二语音帧。
[0015]
在本发明上述实施例中,可选地,在所述通过所述目标差值范围对应的丢包恢复方式,对所述两个已接收语音帧之间产生的丢失包进行恢复的步骤之前,还包括:获取已正确接收的多个样本语音帧;将所述多个样本语音帧中的末位样本语音帧作为输出,将所述多个样本语音帧中中所述末位样本语音帧的所有在前样本语音帧作为输入,训练所述rbf神经网络模型。
[0016]
在本发明上述实施例中,可选地,所述第一预定差值范围为所述序号差值等于第一预定差值;所述第二预定差值范围为所述序号差值大于所述第一预定差值且小于第二预定差值;所述第三预定差值范围为所述序号差值大于或等于所述第二预定差值;其中,所述第一预定差值小于所述第二预定差值,所述第二预定差值小于所述第三预定差值。
[0017]
第二方面,本发明实施例提供了一种丢包恢复装置,包括:序号获取单元,用于获取相邻的两个已接收语音帧的序号;序号差值计算单元,用于计算所述两个已接收语音帧的序号差值;差值范围确定单元,用于在所述序号差值大于预定数值的情况下,在多个预定差值范围中确定所述序号差值所属的目标差值范围;丢包恢复单元,用于通过所述目标差值范围对应的丢包恢复方式,对所述两个已接收语音帧之间产生的丢失包进行恢复。
[0018]
在本发明上述实施例中,可选地,所述丢包恢复单元包括:基音周期判断单元,用于在所述序号差值处于第一预定差值范围内时,判断所述两个已接收语音帧中的在前语音帧是否具有基音周期;第一执行单元,用于响应于所述在前语音帧具有所述基音周期,复制所述在前语音帧作为所述丢失包;第二执行单元,用于响应于所述在前语音帧不具有所述基音周期,将白噪声填充至所述丢失包的位置。
[0019]
在本发明上述实施例中,可选地,所述丢包恢复单元包括:基音周期预测单元,用于在所述序号差值处于第二预定差值范围内时,通过基音检测方式确定基音周期预测信
号;lp输出信号计算单元,用于根据所述基音周期预测信号和所述两个已接收语音帧中的在前语音帧,计算lp合成滤波器的输出信号,所述lp合成滤波器的输出信号的计算公式为:
[0020][0021]
其中,x1(n)表示所述lp合成滤波器对所述丢失包中第n个语音帧的输出信号,x1(n-i)为所述输出信号前的第i个在前输出信号,a(i)为所述第i 个在前输出信号的线性预测系数,l为指定预测阶数,所述为所述第n个语音帧的基音周期预测信号,g为基音周期预测系数;预测信号计算单元,用于根据所述lp合成滤波器的输出信号和所述基音周期预测信号,计算所述丢失包内每个语音帧的预测信号,所述预测信号的计算公式为:
[0022][0023]
其中,x(n)表示所述丢失包中第n个语音帧的预测信号,x1(n)表示所述 lp合成滤波器对所述丢失包中第n个语音帧的输出信号,α为所述输出信号的加权,为所述第n个语音帧的基音周期预测信号,β为所述基音周期预测信号的加权。
[0024]
在本发明上述实施例中,可选地,还包括:衰减系数确定单元,用于在所述丢包恢复单元计算所述丢失包之前,为所述丢失包的每个语音帧选择对应的衰减系数;基音周期设置单元,用于将所述基音周期预测信号与所述衰减系数的乘积设置为所述衰减系数对应的语音帧的实际基音周期预测信号;基音周期更新单元,用于在计算所述衰减系数对应的语音帧的预测信号之前,通过所述实际基音周期预测信号覆盖所述基音周期预测信号。
[0025]
在本发明上述实施例中,可选地,所述丢包恢复单元包括:神经网络计算单元,用于在所述序号差值处于第三预定差值范围内时,按照所述丢失包内的语音帧时间顺序,依次将所述丢失包内在前的第一语音帧作为rbf神经网络模型的输入训练,得到所述第一语音帧后的第二语音帧。
[0026]
在本发明上述实施例中,可选地,还包括:样本语音帧获取单元,用于在所述丢包恢复单元计算所述丢失包之前,获取已正确接收的多个样本语音帧;模型训练单元,用于将所述多个样本语音帧中的末位样本语音帧作为输出,将所述多个样本语音帧中中所述末位样本语音帧的所有在前样本语音帧作为输入,训练所述rbf神经网络模型。
[0027]
在本发明上述实施例中,可选地,所述第一预定差值范围为所述序号差值等于第一预定差值;所述第二预定差值范围为所述序号差值大于所述第一预定差值且小于第二预定差值;所述第三预定差值范围为所述序号差值大于或等于所述第二预定差值;其中,所述第一预定差值小于所述第二预定差值,所述第二预定差值小于所述第三预定差值。
[0028]
第三方面,本发明实施例提供了一种电子设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被设置为用于执行上述第一方面中任一项所述的方法。
[0029]
第四方面,本发明实施例提供了一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行上述第一方面中任一项所述的方法流程。
[0030]
通过以上技术方案,针对相关技术中的丢包恢复方式的负面影响较多的技术问题,提供了一种全新的丢包恢复方法。
[0031]
具体来说,可获取相邻的两个已接收语音帧的序号,若两者之间没有丢包,则序号是连续的,序号差值为1,若两个已接收语音帧间产生丢包,则两者序号不连续,序号差值大于1,因此,可将1设置为预定数值。判断两个已接收语音帧的序号差值是否大于1,若序号差值未大于1,说明未发生丢包,若序号差值大于1,则进一步选择合适的丢包恢复方式。其中,在对语音信息的精确度要求较低的情况下,预定数值也可设置为大于1的任何其他值,比如2,也就是说,可在相邻的两个已接收语音帧中间仅丢失1个帧的情况下不启动丢包恢复,以减少资源占用。
[0032]
在选择丢包恢复方式时,可进一步确定序号差值所属的目标差值范围。由于丢失包中语音帧数量越多,其恢复难度越大,故采用单一的丢包恢复方式不能适用所有丢包情况,因此,可将两个已接收语音帧的序号差值,也就相当于丢失包中语音帧数量,作为选择合适丢包恢复方式的依据。
[0033]
具体来说,可设置第一预定差值范围、第二预定差值范围和第三预定差值范围,其中,所述第一预定差值范围为所述序号差值等于第一预定差值;所述第二预定差值范围为所述序号差值大于所述第一预定差值且小于第二预定差值;所述第三预定差值范围为所述序号差值大于或等于所述第二预定差值;其中,所述第一预定差值小于所述第二预定差值,所述第二预定差值小于所述第三预定差值。
[0034]
而第一预定差值范围、第二预定差值范围和第三预定差值范围对应的丢包恢复方式分别为插值法恢复方式、线性预测恢复方式和神经网络模型恢复方式。其中,插值法恢复方式是将在前语音帧复制至丢包位置,适合丢失的语音帧极少的情况,线性预测恢复方式能够采用在前语音采样的线性组合来逼近实际丢失的语音帧,但由于连续丢失大量语音帧时会产生信号衰减,因此,线性预测恢复方式不能用于丢失语音帧过多的情况,那么,在丢失语音帧的数量大到一定程度时,可采用神经网络模型恢复方式,神经网络模型恢复方式。将成功接收的大量语音帧作为输入样本,将该大量语音帧后邻的一个语音帧作为输出样本训练模型,该模型为成功接收的语音帧的规律的具象化,则将每个丢失帧的在前语音帧输入该模型,即可输出对应的丢失帧。
[0035]
可选地,第一预定差值、第二预定差值分别可选为2和7,则第一预定差值范围、第二预定差值范围和第三预定差值范围分别对应的是丢失包中语音帧数量为1、丢失包中语音帧数量大于1小于6、丢失包中语音帧数量大于或等于6。当然,第一预定差值、第二预定差值还可为符合实际语音质量需求的其他值。
[0036]
以上技术方案,能够针对丢失包中语音帧数量的不同,选择合适的丢包恢复方式,从而能够最大限度地保证丢包的恢复程度,保证语音信息的质量,提升用户体验。
【附图说明】
[0037]
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
[0038]
图1示出了根据本发明的一个实施例的丢包恢复方法的流程图;
[0039]
图2示出了根据本发明的另一个实施例的丢包恢复方法的流程图;
[0040]
图3示出了根据本发明的再一个实施例的丢包恢复方法的流程图;
[0041]
图4示出了图3实施例中的线性预测过程的示意图;
[0042]
图5示出了根据本发明的又一个实施例的丢包恢复方法的流程图;
[0043]
图6示出了图5实施例中的通过神经网络模型进行循环训练的示意图;
[0044]
图7示出了根据本发明的一个实施例的丢包恢复装置的框图;
[0045]
图8示出了根据本发明的一个实施例的电子设备的框图。
【具体实施方式】
[0046]
为了更好的理解本发明的技术方案,下面结合附图对本发明实施例进行详细描述。
[0047]
应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0048]
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
[0049]
图1示出了根据本发明的一个实施例的丢包恢复方法的流程图。
[0050]
如图1所示,根据本发明的一个实施例的丢包恢复方法的流程包括:
[0051]
步骤102,获取相邻的两个已接收语音帧的序号。
[0052]
步骤104,计算所述两个已接收语音帧的序号差值。
[0053]
可获取相邻的两个已接收语音帧的序号,若两者之间没有丢包,则序号是连续的,序号差值为1,若两个已接收语音帧间产生丢包,则两者序号不连续,序号差值大于1,因此,可将1设置为预定数值。
[0054]
其中,在对语音信息的精确度要求较低的情况下,预定数值也可设置为大于1的任何其他值,比如2,也就是说,可在相邻的两个已接收语音帧中间仅丢失1个帧的情况下不启动丢包恢复,以减少资源占用。
[0055]
步骤106,在所述序号差值大于预定数值的情况下,在多个预定差值范围中确定所述序号差值所属的目标差值范围。
[0056]
判断两个已接收语音帧的序号差值是否大于1,若序号差值未大于1,说明未发生丢包,若序号差值大于1,则进一步选择合适的丢包恢复方式。
[0057]
步骤108,通过所述目标差值范围对应的丢包恢复方式,对所述两个已接收语音帧之间产生的丢失包进行恢复。
[0058]
在选择丢包恢复方式时,可进一步确定序号差值所属的目标差值范围。由于丢失包中语音帧数量越多,其恢复难度越大,故采用单一的丢包恢复方式不能适用所有丢包情况,因此,可将两个已接收语音帧的序号差值,也就相当于丢失包中语音帧数量,作为选择合适丢包恢复方式的依据。
[0059]
具体来说,可设置第一预定差值范围、第二预定差值范围和第三预定差值范围,其中,所述第一预定差值范围为所述序号差值等于第一预定差值;所述第二预定差值范围为所述序号差值大于所述第一预定差值且小于第二预定差值;所述第三预定差值范围为所述序号差值大于或等于所述第二预定差值;其中,所述第一预定差值小于所述第二预定差值,
所述第二预定差值小于所述第三预定差值。
[0060]
而第一预定差值范围、第二预定差值范围和第三预定差值范围对应的丢包恢复方式分别为插值法恢复方式、线性预测恢复方式和神经网络模型恢复方式。其中,插值法恢复方式是将在前语音帧复制至丢包位置,适合丢失的语音帧极少的情况,线性预测恢复方式能够采用在前语音采样的线性组合来逼近实际丢失的语音帧,但由于连续丢失大量语音帧时会产生信号衰减,因此,插值法恢复方式不能用于丢失语音帧过多的情况,那么,在丢失语音帧的数量大到一定程度时,可采用神经网络模型恢复方式,神经网络模型恢复方式。将成功接收的大量语音帧作为输入样本,将该大量语音帧后邻的一个语音帧作为输出样本训练模型,该模型为成功接收的语音帧的规律的具象化,则将每个丢失帧的在前语音帧输入该模型,即可输出对应的丢失帧。
[0061]
可选地,第一预定差值、第二预定差值分别可选为1和6,则第一预定差值范围、第二预定差值范围和第三预定差值范围分别对应的是丢失包中语音帧数量为1、丢失包中语音帧数量大于1小于6、丢失包中语音帧数量大于或等于6。当然,第一预定差值、第二预定差值还可为符合实际语音质量需求的其他值。
[0062]
以上技术方案,能够针对丢失包中语音帧数量的不同,选择合适的丢包恢复方式,从而能够最大限度地保证丢包的恢复程度,保证语音信息的质量,提升用户体验。
[0063]
下面结合图2至图5对上述插值法恢复方式、线性预测恢复方式和神经网络模型恢复方式进行展开描述。
[0064]
图2示出了根据本发明的另一个实施例的丢包恢复方法的流程图。
[0065]
如图2所示,根据本发明的另一个实施例的丢包恢复方法的流程包括:
[0066]
步骤202,获取相邻的两个已接收语音帧的序号。
[0067]
步骤204,计算所述两个已接收语音帧的序号差值。
[0068]
可获取相邻的两个已接收语音帧的序号,若两者之间没有丢包,则序号是连续的,序号差值为1,若两个已接收语音帧间产生丢包,则两者序号不连续,序号差值大于1,因此,可将1设置为预定数值。
[0069]
其中,在对语音信息的精确度要求较低的情况下,预定数值也可设置为大于1的任何其他值,比如2,也就是说,可在相邻的两个已接收语音帧中间仅丢失1个帧的情况下不启动丢包恢复,以减少资源占用。
[0070]
步骤206,在所述序号差值大于预定数值的情况下,在多个预定差值范围中确定所述序号差值所属的目标差值范围。
[0071]
判断两个已接收语音帧的序号差值是否大于1,若序号差值未大于1,说明未发生丢包,若序号差值大于1,则进一步选择合适的丢包恢复方式。
[0072]
步骤208,在所述序号差值处于第一预定差值范围内时,判断所述两个已接收语音帧中的在前语音帧是否具有基音周期。
[0073]
第一预定差值范围为序号差值等于第一预定差值,第一预定差值包括但不限于1。下面以第一预定差值为1的情况进行举例说明。
[0074]
第一预定差值为2,说明两个已接收语音帧的序号中间少了一个序号,即丢失包中语音帧数量为1。这种丢失的语音帧极少的情况,可直接通过插值法将在前语音帧复制至丢包位置,恢复过程简单便捷。
[0075]
步骤210,响应于所述在前语音帧具有所述基音周期,复制所述在前语音帧作为所述丢失包。
[0076]
步骤212,响应于所述在前语音帧不具有所述基音周期,将白噪声填充至所述丢失包的位置。
[0077]
语音信号在浊音段具有很强的准周期性,其准周期性对应的周期就是基音周期,而在清音段,语音信号的波形则类似于白噪声。因此,可根据清浊音特征的不同,对丢失的语音帧进行回复。具体地,可判断前一帧语音信号是否具有稳定的基音周期,若具有,则说明语音信号处于浊音段,可复制所述在前语音帧作为丢失帧,若前一帧语音信号不具有稳定的基音周期,则说明语音信号处于清音段采用白噪声来填补丢失包的这一丢失帧。
[0078]
插值法恢复方式复杂度低,实现相对简单,对于丢失的语音帧极少的情况来说,为最佳恢复方式。
[0079]
图3示出了根据本发明的再一个实施例的丢包恢复方法的流程图。
[0080]
如图3所示,根据本发明的再一个实施例的丢包恢复方法的流程包括:
[0081]
步骤302,获取相邻的两个已接收语音帧的序号。
[0082]
步骤304,计算所述两个已接收语音帧的序号差值。
[0083]
可获取相邻的两个已接收语音帧的序号,若两者之间没有丢包,则序号是连续的,序号差值为1,若两个已接收语音帧间产生丢包,则两者序号不连续,序号差值大于1,因此,可将1设置为预定数值。
[0084]
其中,在对语音信息的精确度要求较低的情况下,预定数值也可设置为大于1的任何其他值,比如2,也就是说,可在相邻的两个已接收语音帧中间仅丢失1个帧的情况下不启动丢包恢复,以减少资源占用。
[0085]
步骤306,在所述序号差值大于预定数值的情况下,在多个预定差值范围中确定所述序号差值所属的目标差值范围。
[0086]
判断两个已接收语音帧的序号差值是否大于1,若序号差值未大于1,说明未发生丢包,若序号差值大于1,则进一步选择合适的丢包恢复方式。
[0087]
步骤308,在所述序号差值处于第二预定差值范围内时,通过基音检测方式确定基音周期预测信号。
[0088]
第二预定差值范围为序号差值大于所述第一预定差值且小于第二预定差值,在本发明的一种实现方式中,第一预定差值、第二预定差值分别可选为2 和7,也就是说,第二预定差值范围对应丢失包中语音帧数量大于1小于6的情况。
[0089]
步骤310,根据所述基音周期预测信号和所述两个已接收语音帧中的在前语音帧,计算lp合成滤波器的输出信号,所述lp合成滤波器的输出信号的计算公式为:
[0090][0091]
其中,x1(n)表示所述lp合成滤波器对所述丢失包中第n个语音帧的输出信号,x1(n-1)为所述输出信号前的第i个在前输出信号,a(i)为所述第i 个在前输出信号的线性预测系数,l为指定预测阶数,所述为所述第n个语音帧的基音周期预测信号,g为基音周期预测系数。
[0092]
步骤312,根据所述lp合成滤波器的输出信号和所述基音周期预测信号,计算所述丢失包内每个语音帧的预测信号,所述预测信号的计算公式为:
[0093][0094]
其中,x(n)表示所述丢失包中第n个语音帧的预测信号,x1(n)表示所述 lp合成滤波器对所述丢失包中第n个语音帧的输出信号,α为所述输出信号的加权,为所述第n个语音帧的基音周期预测信号,β为所述基音周期预测信号的加权。
[0095]
下面结合步骤308至步骤312,以第一预定差值和第二预定差值分别可选为2和7的实现方式为例对线性预测恢复方式进行展开描述。
[0096]
初始线性预测模型定义为:
[0097][0098]
其中,x(n)为第n个语音帧,l为指定预测阶数,a(i)为线性预测系数,e(n 为线性预测的误差。基于初始线性预测模型的丢包恢复算法通过提取已接收到的语音片段信息来估计丢失语音帧的线性预测系数a(i)和残差激励信号e(n),然后通过上述公式估计出丢失帧的采样值并重构出丢失语音帧。
[0099]
语音信号x(n)分为两个部分,第一部分是lpc(linear predictive coding,线性预测编码)系数和过去语音帧的一组样本点线性组合而成,第二部分是预测误差信号e(n)。因为预测误差值不容易确定,因此可以使用基音周期预测信号很小的百分比来作为线性预测系统的激励信号,线性预测模型可以转换为:
[0100][0101]
其中为基音周期预测信号,g为基音周期预测系数,一般地,g取 0.01时可以达到很好的效果。则lp合成滤波器的输出信号x1(n)为:
[0102][0103]
其中,x1(n)表示所述lp合成滤波器对所述丢失包中第n个语音帧的输出信号,x1(n-i)为所述输出信号前的第i个在前输出信号,a(i)为所述第i 个在前输出信号的线性预测系数,l为指定预测阶数,所述为所述第n个语音帧的基音周期预测信号,g为基音周期预测系数;
[0104]
丢失帧的补偿信号是lp合成滤波器的输出信号和短时激励信号的加权和,因此最终补偿算法的输出形式为:
[0105][0106]
其中,x(n)表示所述丢失包中第n个语音帧的预测信号,x1(n)表示所述 lp合成滤
波器对所述丢失包中第n个语音帧的输出信号,α为所述输出信号的加权,为所述第n个语音帧的基音周期预测信号,β为所述基音周期预测信号的加权。
[0107]
综上,在语音帧正常接收时,基站侧pdcp(packet data convergence protocol,分组数据汇聚协议)层将接收到的语音帧按照编号排序和加密。当检测到有缺失的语音帧时,将缺失的前一帧数据复制并保存到缓存区中,根据缓存区中的数据计算自相关函数、基音周期和lp系数。提取基音信息和提供过去样本点x(n-i)。
[0108]
结合图4示出的线性预测过程,具体来说,在发生丢包时,基音检测单元在自相关的各个峰值之间进行搜索,估计出当前的基音周期。采样点就是根据这种基音预测的方法来确定的。同时,计算出语音信号的最后 20ms(160个采样点)的前50个自相关系数,这50个自相关系数作为lp合成滤波器的输入,用来合成语音信号。
[0109]
lp系数是在线性预测分析模块中根据莱文逊

杜宾算法计算得到的。将乘以增益g,这个重新调节的信号被用来作为语音产生模型中的短期激励信号。同样对信号进行加权,权值为β,加上lp合成滤波器的输出信号 x1(n)加权α的值,即是预测信号x(n)。
[0110]
另外,还需要为所述丢失包的每个语音帧选择对应的衰减系数,将所述基音周期预测信号与所述衰减系数的乘积设置为所述衰减系数对应的语音帧的实际基音周期预测信号,在计算所述衰减系数对应的语音帧的预测信号之前,通过所述实际基音周期预测信号覆盖所述基音周期预测信号。
[0111]
具体来说,当发生连续丢包时,即包丢失的时间超过了20ms,其中自相关系数、基音周期估计和lp系数等使用第一个语音包丢失时计算出的这些参数的值,基音周期的预测信号的值为其与一个衰减系数相乘,第一个包丢失时,衰减系数为1,每丢一个包衰减系数下降0.2。这个衰减可以使连续包丢失时的包与包之间平滑过渡。当连续丢包达到6个时,基音周期的预测信号和输入残差信号都会变为0,lp合成器就没有输入信号,这时会导致语音包不能补偿且语音质量的严重失真。因此这种线性预测的方法只适应于丢失的包数小于6个情况,当丢包数超过6个时就需要使用下面的神经网络模型恢复方式。
[0112]
图5示出了根据本发明的又一个实施例的丢包恢复方法的流程图。
[0113]
如图5所示,根据本发明的又一个实施例的丢包恢复方法的流程包括:
[0114]
步骤502,获取相邻的两个已接收语音帧的序号。
[0115]
步骤504,计算所述两个已接收语音帧的序号差值。
[0116]
可获取相邻的两个已接收语音帧的序号,若两者之间没有丢包,则序号是连续的,序号差值为1,若两个已接收语音帧间产生丢包,则两者序号不连续,序号差值大于1,因此,可将1设置为预定数值。
[0117]
其中,在对语音信息的精确度要求较低的情况下,预定数值也可设置为大于1的任何其他值,比如2,也就是说,可在相邻的两个已接收语音帧中间仅丢失1个帧的情况下不启动丢包恢复,以减少资源占用。
[0118]
步骤506,在所述序号差值大于预定数值的情况下,在多个预定差值范围中确定所述序号差值所属的目标差值范围。
[0119]
判断两个已接收语音帧的序号差值是否大于1,若序号差值未大于1,说明未发生
丢包,若序号差值大于1,则进一步选择合适的丢包恢复方式。
[0120]
步骤508,在所述序号差值处于第三预定差值范围内时,按照所述丢失包内的语音帧时间顺序,依次将所述丢失包内在前的第一语音帧作为rbf神经网络模型的输入训练,得到所述第一语音帧后的第二语音帧。
[0121]
其中,rbf(radial basis function,径向基函数)神经网络模型的建立方式为:获取已正确接收的多个样本语音帧,将所述多个样本语音帧中的末位样本语音帧作为输出,将所述多个样本语音帧中中所述末位样本语音帧的所有在前样本语音帧作为输入,训练所述rbf神经网络模型。
[0122]
rbf神经网络模型的拓扑结构是一种三层静态前向神经网络,第一层是输入层,由信号源节点构成,仅起到传递数据信息的作用,对输入的信号不进行任何的变换;第二层是隐含层,要根据需要选取节点个数,隐含层神经元的作用函数是一个径向基函数,径向基函数都是非线性的,所以,从输入层到隐含层空间的变换是非线性的,通常径向基函数选用高斯函数,对输入信息进行空间映射变换;第三层为输出层,它对输入模式做出响应,输出层的神经元的作用函数是线性函数,对隐含层神经元输出的信号进行线性加权后输出,即是整个神经网络的输出结果。
[0123]
首先根据已经正确接收到的部分样本点,进行相空间重构,得到语音信号在重构相空间中的状态矢量,分别取前n-1个状态矢量作为rbf神经网络模型的输入,第n个状态矢量作为神经网络的输出,以此来训练神经网络,确定径向基函数的参数,构建一个rbf神经网络模型,当发生丢包时,直接调用这个构建好的神经网络模型来预测出丢失包的语音样本点。
[0124]
如图6示出的循环训练过程,根据基站侧pdcp层接收到语音包的序列 packet_seq,判断语音包是否丢失。如果发生丢包,从缓存区中读取丢包前部分数据x(n-(m-1)τ),x(n-(m-1)τ τ),

,x(n),作为rbf神经网络预测模型的输入,就可以输出得到丢失样本点的预测值x(n 1)。假定采样率为8khz,帧长为20ms,所以每帧有160个采样点,而rbf神经网络每次可以输出一个语音样本点,因此需要循环执行160次来预测整个语音包的信号。在完成整个包信号的补偿之后,将这160个样本点保存到缓存区中,同时语音包的序列packet_seq加一,重复上述操作,直至所有丢失包都恢复补偿完成。
[0125]
由此,在丢失语音帧的数量大到一定程度时,可采用神经网络模型恢复方式,神经网络模型恢复方式。将成功接收的大量语音帧作为输入样本,将该大量语音帧后邻的一个语音帧作为输出样本训练模型,该模型为成功接收的语音帧的规律的具象化,则将每个丢失帧的在前语音帧输入该模型,即可输出对应的丢失帧。由于神经网络模型评训练出的每个丢失的语音帧的精确程度都很高,则可继续循环,以训练得到的丢失的语音帧去训练下一个丢失的语音帧。
[0126]
通过此丢包恢复方式,可将大量丢包准确快速地进行恢复,最大限度地提升了丢包过多的语音信箱的质量,提升了用户体验。
[0127]
图7示出了根据本发明的一个实施例的丢包恢复装置的框图。
[0128]
如图7所示,根据本发明的一个实施例的丢包恢复装置700包括:序号获取单元702,用于获取相邻的两个已接收语音帧的序号;序号差值计算单元 704,用于计算所述两个已接收语音帧的序号差值;差值范围确定单元706,用于在所述序号差值大于预定数值的
情况下,在多个预定差值范围中确定所述序号差值所属的目标差值范围;丢包恢复单元708,用于通过所述目标差值范围对应的丢包恢复方式,对所述两个已接收语音帧之间产生的丢失包进行恢复。
[0129]
该丢包恢复装置700使用图1至图6示出的实施例中任一项所述的方案,因此,具有上述所有技术效果,在此不再赘述。丢包恢复装置700还具有以下技术特征:
[0130]
在本发明上述实施例中,可选地,所述丢包恢复单元708包括:基音周期判断单元,用于在所述序号差值处于第一预定差值范围内时,判断所述两个已接收语音帧中的在前语音帧是否具有基音周期;第一执行单元,用于响应于所述在前语音帧具有所述基音周期,复制所述在前语音帧作为所述丢失包;第二执行单元,用于响应于所述在前语音帧不具有所述基音周期,将白噪声填充至所述丢失包的位置。
[0131]
在本发明上述实施例中,可选地,所述丢包恢复单元708包括:基音周期预测单元,用于在所述序号差值处于第二预定差值范围内时,通过基音检测方式确定基音周期预测信号;lp输出信号计算单元,用于根据所述基音周期预测信号和所述两个已接收语音帧中的在前语音帧,计算lp合成滤波器的输出信号,所述lp合成滤波器的输出信号的计算公式为:
[0132][0133]
其中,x1(n)表示所述lp合成滤波器对所述丢失包中第n个语音帧的输出信号,x1(n-i)为所述输出信号前的第i个在前输出信号,a(i)为所述第i 个在前输出信号的线性预测系数,l为指定预测阶数,所述为所述第n个语音帧的基音周期预测信号,g为基音周期预测系数;预测信号计算单元,用于根据所述lp合成滤波器的输出信号和所述基音周期预测信号,计算所述丢失包内每个语音帧的预测信号,所述预测信号的计算公式为:
[0134][0135]
其中,x(n)表示所述丢失包中第n个语音帧的预测信号,x1(n)表示所述 lp合成滤波器对所述丢失包中第n个语音帧的输出信号,α为所述输出信号的加权,为所述第n个语音帧的基音周期预测信号,β为所述基音周期预测信号的加权。
[0136]
在本发明上述实施例中,可选地,还包括:衰减系数确定单元,用于在所述丢包恢复单元708计算所述丢失包之前,为所述丢失包的每个语音帧选择对应的衰减系数;基音周期设置单元,用于将所述基音周期预测信号与所述衰减系数的乘积设置为所述衰减系数对应的语音帧的实际基音周期预测信号;基音周期更新单元,用于在计算所述衰减系数对应的语音帧的预测信号之前,通过所述实际基音周期预测信号覆盖所述基音周期预测信号。
[0137]
在本发明上述实施例中,可选地,所述丢包恢复单元708包括:神经网络计算单元,用于在所述序号差值处于第三预定差值范围内时,按照所述丢失包内的语音帧时间顺序,依次将所述丢失包内在前的第一语音帧作为rbf 神经网络模型的输入训练,得到所述第一语音帧后的第二语音帧。
[0138]
在本发明上述实施例中,可选地,还包括:样本语音帧获取单元,用于在所述丢包恢复单元计算所述丢失包之前,获取已正确接收的多个样本语音帧;模型训练单元,用于将所述多个样本语音帧中的末位样本语音帧作为输出,将所述多个样本语音帧中中所述末位
样本语音帧的所有在前样本语音帧作为输入,训练所述rbf神经网络模型。
[0139]
在本发明上述实施例中,可选地,所述第一预定差值范围为所述序号差值等于第一预定差值;所述第二预定差值范围为所述序号差值大于所述第一预定差值且小于第二预定差值;所述第三预定差值范围为所述序号差值大于或等于所述第二预定差值;其中,所述第一预定差值小于所述第二预定差值,所述第二预定差值小于所述第三预定差值。
[0140]
图8示出了根据本发明的一个实施例的电子设备的框图。
[0141]
如图8所示,本发明的一个实施例的电子设备800,包括至少一个存储器 802;以及,与所述至少一个存储器802通信连接的处理器804;其中,所述存储器存储有可被所述至少一个处理器804执行的指令,所述指令被设置为用于执行上述图1至图6实施例中任一项所述的方案。因此,该电子设备800具有和图1至图6实施例中任一项相同的技术效果,在此不再赘述。
[0142]
本发明实施例的电子设备以多种形式存在,包括但不限于:
[0143]
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iphone)、多媒体手机、功能性手机,以及低端手机等。
[0144]
(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:pda、mid和umpc设备等,例如ipad。
[0145]
(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括: 音频、视频播放器(例如ipod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
[0146]
(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
[0147]
(5)其他具有数据交互功能的电子装置。
[0148]
另外,本发明实施例提供了一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行上述图1至图6实施例中任一项所述的方法流程。
[0149]
以上结合附图详细说明了本发明的技术方案,通过本发明的技术方案,能够针对丢失包中语音帧数量的不同,选择合适的丢包恢复方式,从而能够最大限度地保证丢包的恢复程度,保证语音信息的质量,提升用户体验。
[0150]
应当理解,尽管在本发明实施例中可能采用术语第一、第二等来描述预定差值范围,但这些预定差值范围不应限于这些术语。这些术语仅用来将预定差值范围彼此区分开。例如,在不脱离本发明实施例范围的情况下,第一预定差值范围也可以被称为第二预定差值范围,类似地,第二预定差值范围也可以被称为第一预定差值范围。
[0151]
取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
[0152]
在本发明所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如,多个单元或组
件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0153]
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
[0154]
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0155]
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文章

  • 日榜
  • 周榜
  • 月榜