一种用于频带扩展算法的数据生成方法、系统及存储介质与流程
本发明涉及无线通信技术领域,尤其是涉及一种用于频带扩展算法的数据生成方法、系统及存储介质。
背景技术:
在目前的公共交换电话网(publicswitchedtelephonenetworks)和无线通信系统中,由于受到通信网络中信道带宽、编码方式以及成本等多方面因素的影响,语音信号在通信过程中仅仅能够保留低频(0.3khz-3.4khz)部分进行传输,这一普遍存在的问题严重影响了传输语音的质量。
为了提高传输语音的质量同时避免因占用信道带宽而提高通信成本,传统的做法是盲源扩展。所谓盲源扩展就是利用现有窄带信息与宽带高频信息之间联系进行映射,从而实现窄带到宽带的频带扩展,而频带扩展方法主要通过源线性滤波模型实现,但是这些模型远远不能达到让人满意的效果。
随着近几年深度学习技术的兴起,技术人员发现可以通过大量的数据来学习高频信息的分布特性,从而根据高频信息的分布特性实现窄带到宽带的频带扩展,效果也更为显著。但是基于深度学习的方法十分依赖数据,特别是数据的多样性,直接影响着频带扩展在各个场景和平台的效果,因此,如何提供基于深度学习的频带扩展所需的海量数据成为当前亟需解决的问题。
技术实现要素:
针对上述技术问题,本发明提供了一种用于频带扩展算法的数据生成方法、系统及存储介质,能够依据少量现有数据集快速生成海量的训练数据。所述技术方案如下:
第一方面,本发明实施例提供了一种用于频带扩展算法的数据生成方法,步骤包括:
采集语音数据,所述语音数据包括宽带语音数据、混响数据及噪声数据;
在所述宽带语音数据的基础上,按照设定概率添加所述混响数据和所述噪声数据,以生成宽带语音训练数据;
对所述宽带语音训练数据进行下采样处理以生成对应的窄带语音训练数据,并输出所述宽带语音训练数据和所述窄带语音训练数据。
在本发明第一方面的第一种可能的实现方式中,在所述宽带语音数据的基础上,按照设定概率添加所述混响数据和所述噪声数据,以生成宽带语音训练数据,包括:
所述噪声数据的添加方式如下所示:
speechnoise(i)=gaina×speech(i)+gainb×noise(i)
其中,speechnoise(i)表示添加噪声后生成的数据;gaina代表宽带语音信号的幅度系数本;gainb代表噪声信号的幅度系数;speech(i)表示宽带语音数据;noise(i)表示噪声数据。
在本发明第一方面的第二种可能的实现方式中,所述噪声数据可由多种噪声数据随机叠加而成,具体的叠加方式如下:
noise=noise1+noise2+…+noisen
其中,noise表示叠加合成后的噪声数据,noise1+noise2+…+noisen分别表示不同的噪声种类,n可取1,2,3,4等。
在本发明第一方面的第三种可能的实现方式中,在所述宽带语音数据的基础上,按照设定概率添加所述混响数据和所述噪声数据,以生成宽带语音训练数据,包括:
所述混响数据的添加方式如下所示:
其中,speechnoise-rev(i)表示混响语音数据,hj表示混响数据,
在本发明第一方面的第四种可能的实现方式中,在采集到语音数据后,还包括步骤:
对所述语音数据进行重采样处理;其中,若所述语音数据的采样频率高于指定频率则进行下采样处理,或者所述语音数据的采样频率低于指定频率则进行上采样处理。
在本发明第一方面的第五种可能的实现方式中,在采集到语音数据后,还包括步骤:
将所述语音数据的双通道数据转化为单通道数据,具体通过以下算式执行:
mono(x)=mean(d0(x)+d1(x))
其中,mono(x)表示单通道数据,x为输入的语音数据,d0和d1分别表示音频两个通道的数据,mean表示d0和d1的平均值。
在本发明第一方面的第六种可能的实现方式中,在生成宽带语音训练数据后,还包括:
利用随机参数滤波方法处理所述宽带语音训练数据,以模拟不同编解码情况的输出信号。
在本发明第一方面的第七种可能的实现方式中,所述随机参数滤波方法具体为:
其中,y(n)表示滤波后的信号,x(n)表示滤波前的信号,bi和ai分别表示分子系数和分母系数,i为整数;n为滤波前的信号的样本数,m为滤波后的信号的样本数。
第二方面,本发明实施例提供了一种用于频带扩展算法的数据生成系统,至少包括:
声音采集器,用于采集语音数据,所述语音数据包括宽带语音数据、混响数据及噪声数据;
处理器,用于在所述宽带语音数据的基础上,按照设定概率添加所述混响数据和所述噪声数据,以生成宽带语音训练数据;
所述处理器,还用于对所述宽带语音训练数据进行下采样处理以生成对应的窄带语音训练数据,并输出所述宽带语音训练数据和所述窄带语音训练数据。
第三方面,本发明实施例提供了一种用于频带扩展算法的数据生成方法的存储介质,所述用于频带扩展算法的数据生成方法的存储介质用于存储一个或多个计算机程序,所述一个或多个计算机程序包括程序代码,当所述计算机程序在计算机上运行时,所述程序代码用于执行上述用于频带扩展算法的数据生成方法。
相比于现有技术,本发明实施例具有如下有益效果:
本发明提供了一种用于频带扩展算法的数据生成方法、系统及存储介质,本方案通过采集宽带语音数据、混响数据及噪声数据,并在所述宽带语音数据的基础上,按照设定概率添加所述混响数据和所述噪声数据,以生成宽带语音训练数据;由于噪声和混响的添加是随机组合的方式,最后与宽带语音混合,即可生成多种所需的不同的宽带语音训练数据;最后对所述宽带语音训练数据进行下采样处理以生成对应的窄带语音训练数据,即可生成相应的宽带语音数据和窄带语音数据,并用于深度学习系统进行训练,从而实现依据少量现有数据集快速生成海量的训练数据,解决如何提供基于深度学习的频带扩展所需的海量数据的问题。
附图说明
图1是本发明实施例中的一种用于频带扩展算法的数据生成方法的步骤流程图;
图2是本发明实施例中的一种用于频带扩展算法的数据生成系统的架构模块图。
其中,100、采集单元;200、计算单元;300、传输单元;400、存储单元。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1,本发明提供一种示例性实施例,一种用于频带扩展算法的数据生成方法,步骤包括:
s101、采集语音数据,所述语音数据包括宽带语音数据、混响数据及噪声数据;
s102、在所述宽带语音数据的基础上,按照设定概率添加所述混响数据和所述噪声数据,以生成宽带语音训练数据;其中,所述设定概率可由正态分布等数学方法生成;
s103、对所述宽带语音训练数据进行下采样处理以生成对应的窄带语音训练数据,并输出所述宽带语音训练数据和所述窄带语音训练数据。
在本实施例中,所述采集语音数据,采集所述宽带语音数据、所述混响数据及所述噪声数据主要通过实地采集和网络下载收集得到,为了生成的数据的多样性,需要尽可能多的采集不同场景下的噪声、混响数据,比如办公室、街道和商场等场景进行采集,其中混响数据储存为rir信号的形式。
在本实施例中,在所述宽带语音数据的基础上,按照设定概率添加所述混响数据和所述噪声数据,以生成宽带语音训练数据,包括:
所述噪声数据的添加方式如下所示:
speechnoise(i)=gaina×speech(i)+gainb×noise(i)
其中,speechnoise(i)表示添加噪声后生成的数据;gaina代表宽带语音信号的幅度系数本,在[0.2,1]范围内随机取值;gainb代表噪声信号的幅度系数,在[0,0.5]随机取值;speech(i)表示宽带语音数据;noise(i)表示噪声数据。
本实施例还提供一种优选实施方式,所述噪声数据可由多种噪声数据随机叠加而成,具体的叠加方式如下:
noise=noise1+noise2+…+noisen
其中,noise表示叠加合成后的噪声数据,noise1+noise2+…+noisen分别表示不同的噪声种类,n可取1,2,3,4等。
在本实施例中,在所述宽带语音数据的基础上,按照设定概率添加所述混响数据和所述噪声数据,以生成宽带语音训练数据,包括:
所述混响数据的添加方式如下所示:
其中,speechnoise-rev(i)表示混响语音数据,hj表示混响数据,
在本实施例中,噪声数据、混响数据也可从网上收集,种类多样化。
因为噪声和混响的添加是随机组合的方式,可以由1种噪声,2种噪声,3种噪声……互相叠加组合,同时随机伴有混响,最后与语音混合,所述可生成大量训练数据;
比如说,有4种噪声,根据组合方式可有4*3*2*1种方法叠加方式,每一种方式都能生成一条样本;而实际可以收集到的噪声种类有数十种甚至上百种,完全可以满足生成海量数据的需求。
本方案还提供一种优选实施例,所述用于频带扩展算法的数据生成方法,在采集到语音数据后,还包括步骤:
对所述语音数据进行重采样处理;其中,若所述语音数据的采样频率高于指定频率则进行下采样处理,或者所述语音数据的采样频率低于指定频率则进行上采样处理。
本方案还提供一种优选实施例,所述用于频带扩展算法的数据生成方法,在采集到语音数据后,还包括步骤:
将所述语音数据的双通道数据转化为单通道数据,具体通过以下算式执行:
mono(x)=mean(d0(x)+d1(x))
其中,mono(x)表示单通道数据,x为输入的语音数据,d0和d1分别表示音频两个通道的数据,mean表示d0和d1的平均值。
可以理解的是,由于大多录音设备为双通道44.1khz的采样格式,而实际中并不一定需要如此高规格的采样,因此需要将数据进行单通道转化和重采样处理。
本方案还提供一种优选实施例,所述用于频带扩展算法的数据生成方法,在生成宽带语音训练数据后,还包括:
利用随机参数滤波方法处理所述宽带语音训练数据,以模拟不同编解码情况的输出信号。
本实施例能够模拟各种编解码后的信号数据以满足数据多样性的需求。
在本实施例中,所述利用随机参数滤波方法具体为:
其中,y(n)表示滤波后的信号,x(n)表示滤波前的信号,bi和ai分别表示分子系数和分母系数,i为整数;n为滤波前的信号的样本数,m为滤波后的信号的样本数。
其中,分子系数b在[-1,1]内随机取值,分母系数a在[-1,1]内随机取值;
本实施例的随机参数滤波方法采用一阶iir滤波器进行处理,但不限于一阶iir滤波器和iir滤波器。
本发明提供一种示例性实施例,一种用于频带扩展算法的数据生成系统,至少包括:
声音采集器,用于采集语音数据,所述语音数据包括宽带语音数据、混响数据及噪声数据;
处理器,用于在所述宽带语音数据的基础上,按照设定概率添加所述混响数据和所述噪声数据,以生成宽带语音训练数据;其中,所述设定概率可由正态分布等数学方法生成;
所述处理器,还用于对所述宽带语音训练数据进行下采样处理以生成对应的窄带语音训练数据,并输出所述宽带语音训练数据和所述窄带语音训练数据。
可以理解的是,所述用于频带扩展算法的数据生成系统还包括:
信号转换器,用于将环境中的声学信号转换成数字信号;所述声音采集器与信号转换器电连接,且信号转换器与所述处理器电连接;
本实施例中的声音采集器麦克风,信号转换器为adc硬件芯片。
在本实施例中,在所述宽带语音数据的基础上,按照设定概率添加所述混响数据和所述噪声数据,以生成宽带语音训练数据,包括:
所述噪声数据的添加方式如下所示:
speechnoise(i)=gaina×speech(i)+gainb×noise(i)
其中,speechnoise(i)表示添加噪声后生成的数据;gaina代表宽带语音信号的幅度系数本,在[0.2,1]范围内随机取值;gainb代表噪声信号的幅度系数,在[0,0.5]随机取值;speech(i)表示宽带语音数据;noise(i)表示噪声数据。
本实施例还提供一种优选实施方式,所述噪声数据可由多种噪声数据随机叠加而成,具体的叠加方式如下:
noise=noise1+noise2+…+noisen
其中,noise表示叠加合成后的噪声数据,noise1+noise2+…+noisen分别表示不同的噪声种类,n可取1,2,3,4等。
在本实施例中,在所述宽带语音数据的基础上,按照设定概率添加所述混响数据和所述噪声数据,以生成宽带语音训练数据,包括:
所述混响数据的添加方式如下所示:
其中,speechnoise-rev(i)表示混响语音数据,hj表示混响数据,
在本实施例中,噪声数据、混响数据也可从网上收集,种类多样化。
因为噪声和混响的添加是随机组合的方式,可以由1种噪声,2种噪声,3种噪声……互相叠加组合,同时随机伴有混响,最后与语音混合,所述可生成大量训练数据;
比如说,有4种噪声,根据组合方式可有4*3*2*1种方法叠加方式,每一种方式都能生成一条样本;而实际可以收集到的噪声种类有数十种甚至上百种,完全可以满足生成海量数据的需求。
本方案还提供一种优选实施例,在所述用于频带扩展算法的数据生成系统中,所述处理器包括重采样处理模块;
所述重采样处理模块,用于对所述语音数据进行重采样处理;其中,若所述语音数据的采样频率高于指定频率则进行下采样处理,或者所述语音数据的采样频率低于指定频率则进行上采样处理。
本方案还提供一种优选实施例,在所述用于频带扩展算法的数据生成系统中,所述处理器包括单通道数据转化模块;
所述单通道数据转化模块,用于将所述语音数据的双通道数据转化为单通道数据,具体通过以下算式执行数据转化处理:
mono(x)=mean(d0(x)+d1(x))
其中,mono(x)表示单通道数据,x为输入的语音数据,d0和d1分别表示音频两个通道的数据,mean表示d0和d1的平均值。
本方案还提供一种优选实施例,所述用于频带扩展算法的数据生成系统还包括滤波器;
所述滤波器,用于利用随机参数滤波方法处理所述宽带语音训练数据,以模拟不同编解码情况的输出信号。
本实施例能够模拟各种编解码后的信号数据以满足数据多样性的需求。
在本实施例中,所述随机参数滤波方法具体为:
其中,y(n)表示滤波后的信号,x(n)表示滤波前的信号,bi和ai分别表示分子系数和分母系数,i为整数;n为滤波前的信号的样本数,m为滤波后的信号的样本数。
其中,分子系数b在[-1,1]内随机取值,分母系数a在[-1,1]内随机取值;
本实施例的随机参数滤波方法采用一阶iir滤波器进行处理,但不限于一阶iir滤波器和iir滤波器。
请参见图2,本方案还提供一种具体的实施例以说明所述用于频带扩展算法的数据生成系统。所述用于频带扩展算法的数据生成系统包括:
采集单元100、计算单元200和存储单元400,采集单元100与计算单元200电连接,计算单元200通过传输单元300与存储单元400连接;计算单元200用于生成数据,计算单元200将计算的数据通过传输单元300传输至存储单元400。
具体地,采集单元100包括声音采集器和信号转换器,声音采集器与信号转换器电连接,信号转换器与计算单元200电连接。其中,声音采集器用于采集语音,信号转换器用于将环境中的声学信号转换成数字信号,本实施例中的声音采集器麦克风,信号转换器为adc硬件芯片;计算单元200包括处理器和存储器,存储器内存有程序,该程序用于实现上述的一种用于频带扩展算法的数据生成方法,处理器用于执行程序生成语音数据。本实施例的计算单元200为计算机;数据传输单元300用于传输数据,本实施例中传输单元300为传输数据的网络系统;存储单元400用于存储计算的语音数据,本实施例的存储单元400通过传输单元300与计算单元200网络连接,可以快速的传输存储生成的用于频带扩展算法的语音数据。
本发明的一种用于频带扩展算法的数据生成系统,通过采集较小的语音、噪声和混响数据集可以批量生成相应语音数据,进一步可以应用于深度学习音频领域,满足深度学习多样性的数据需求,从而可以提高算法的效果和稳定性。
需要说明的是,上述实施例所述的rir,即为roomimpulseresponse,房间脉冲响应。
本发明提供一种示例性实施例,一种用于频带扩展算法的数据生成方法的存储介质,所述用于频带扩展算法的数据生成方法的存储介质用于存储一个或多个计算机程序,所述一个或多个计算机程序包括程序代码,当所述计算机程序在计算机上运行时,所述程序代码用于执行所述的用于频带扩展算法的数据生成方法。
本申请实施例的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质的更具体的示例至少(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式只读存储器(cdrom)。另外,计算机可读存储介质甚至可以是可在其上打印程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得程序,然后将其存储在计算机存储器中。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
本发明实施例提供了一种用于频带扩展算法的数据生成方法、系统及存储介质,本方案通过采集宽带语音数据、混响数据及噪声数据,并在所述宽带语音数据的基础上,按照设定概率添加所述混响数据和所述噪声数据,以生成宽带语音训练数据;由于噪声和混响的添加是随机组合的方式,最后与宽带语音混合,即可生成多种所需的不同的宽带语音训练数据;最后对所述宽带语音训练数据进行下采样处理以生成对应的窄带语音训练数据,即可生成相应的宽带语音数据和窄带语音数据,并用于深度学习系统进行训练,从而实现依据少量现有数据集快速生成海量的训练数据,解决如何提供基于深度学习的频带扩展所需的海量数据的问题。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。
此文章来源于网络,如有侵权,请联系删除