HI,欢迎来到起点商标网!
24小时服务QQ:2880605093

音频分离方法、装置、电子设备及计算机可读存储介质与流程

2021-01-28 17:01:10|320|起点商标网
音频分离方法、装置、电子设备及计算机可读存储介质与流程

本公开涉及音频处理技术领域,具体而言,本公开涉及一种音频分离方法、装置、电子设备及计算机可读存储介质。



背景技术:

音乐源分离(mss)是将音乐作品分离成单独的源(例如乐器和人声)的任务。

现有的mss方法可以分为基于频谱图的方法和时域方法。其中,基于频谱图的方法无法估计源的相位;而时域方法没有超越基于频谱图的mss方法。也就是说,基于频谱图的方法和时域方法的分离效果都不理想。

因此,亟需一种mss方法来解决基于频谱图的方法和时域方法的分离效果都不理想的问题。



技术实现要素:

提供该发明内容部分以便以简要的形式介绍构思,这些构思将在后面的具体实施方式部分被详细描述。该发明内容部分并不旨在标识要求保护的技术方案的关键特征或必要特征,也不旨在用于限制所要求的保护的技术方案的范围。

本公开提供了一种音频分离方法、装置、电子设备及计算机可读存储介质,用于解决基于频谱图的方法和时域方法的分离效果都不理想的技术问题。

第一方面,提供了一种音频分离方法,该方法包括:

获取待分离的音频;所述待分离的音频包含至少两种类型的音轨;

将所述音频输入训练后的音频分离模型,以使得所述分离模型中的第一分支基于频谱图对所述音频进行分离,得到第一分离结果,以及使得所述分离模型中的第二分支基于时域对所述音频进行分离,得到第二分离结果,并基于所述第一分离结果和所述第二分离结果得到分离后的目标音轨;所述目标音轨的类型为所述至少两种类型中的任一种,且与所述训练后的音频分离模型的分离类型相同;

输出所述目标音轨。

第二方面,提供了一种音频分离装置,该装置包括:

获取模块,用于获取待分离的音频;所述待分离的音频包含至少两种类型的音轨;

处理模块,用于将所述音频输入训练后的音频分离模型,以使得所述分离模型中的第一分支基于频谱图对所述音频进行分离,得到第一分离结果,以及使得所述分离模型中的第二分支基于时域对所述音频进行分离,得到第二分离结果,并基于所述第一分离结果和所述第二分离结果得到分离后的目标音轨;所述目标音轨的类型为所述至少两种类型中的任一种,且与所述训练后的音频分离模型的分离类型相同;

输出模块,用于输出所述目标音轨。

第三方面,提供了一种电子设备,该电子设备包括:

处理器、存储器和总线;

所述总线,用于连接所述处理器和所述存储器;

所述存储器,用于存储操作指令;

所述处理器,用于通过调用所述操作指令,可执行指令使处理器执行如本公开的第一方面所示的音频分离方法对应的操作。

第四方面,提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现本公开第一方面所示的音频分离方法。

本公开提供的技术方案带来的有益效果是:

在本公开实施例中,当获取到待分离的音频时,将所述音频输入训练后的音频分离模型;其中,所述待分离的音频包含至少两种类型的音轨;以使得所述分离模型中的第一分支基于频谱图对所述音频进行分离,得到第一分离结果,以及使得所述分离模型中的第二分支基于时域对所述音频进行分离,得到第二分离结果,并基于所述第一分离结果和所述第二分离结果得到分离后的目标音轨;所述目标音轨的类型为所述至少两种类型中的任一种,且与所述训练后的音频分离模型的分离类型相同;然后输出所述目标音轨即可。在本公开实施例中,音频分离模型由两个分支组成,一个分支是基于频谱图的第一系统,另一个分支是基于时域的第二系统。第一系统分支旨在学习音频的频率模式;第一系统分支旨在获取音频的波形并输出分离后的波形。应用于频谱图的第二系统对于在频域中音调变化具有鲁棒性。而且,第一系统分支是第二系统的补充,用于分离音频。第一系统通过使用一维卷积提供了更灵活,更易学的转换。此外,第一系统分支可以补偿第二系统中的相位重建问题。这样,音频分离模型结合了频谱图和基于时域的方法各自的优点,达到了mss的最新性能。

附图说明

结合附图并参考以下具体实施方式,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,原件和元素不一定按照比例绘制。

图1为本公开一个实施例提供的一种音频分离方法的流程示意图;

图2为本公开另一实施例提供的一种音频分离模型的训练方法的流程示意图;

图3为本公开中音频分离模型的逻辑结构示意图;

图4为本公开又一实施例提供的一种音频分离装置的结构示意图;

图5为本公开又一实施例提供的一种音频分离的电子设备的结构示意图。

具体实施方式

下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。

应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。

本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。

需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元一定为不同的装置、模块或单元,也并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。

需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。

本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。

本公开提供的音频分离方法、装置、电子设备和计算机可读存储介质,旨在解决现有技术的如上技术问题。

下面以具体地实施例对本公开的技术方案以及本公开的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本公开的实施例进行描述。

在一个实施例中提供了一种音频分离方法,如图1所示,该方法包括:

步骤s101,获取待分离的音频;待分离的音频包含至少两种类型的音轨;

具体而言,待分离的音频可以包含至少两种类型的音轨,比如纯人声的音轨、纯鼓声的音轨等等。也就是说,包含了至少两种类型的音轨的音频都可以作为待分离的音频。

其中,音轨就是用户在(音序器)软件中看到的一条一条的平行“轨道”。每条音轨分别定义了该条音轨的属性,如音轨的音色,音色库,通道数,输入/输出端口,音量等。

步骤s102,将音频输入训练后的音频分离模型,以使得分离模型中的第一分支基于频谱图对音频进行分离,得到第一分离结果,以及使得分离模型中的第二分支基于时域对音频进行分离,得到第二分离结果,并基于第一分离结果和第二分离结果得到分离后的目标音轨;目标音轨的类型为至少两种类型中的任一种,且与训练后的音频分离模型的分离类型相同;

在本公开实施例中,音频分离模型包括两个分支:基于频谱图对音频进行分离的第一分支,以及基于时域对音频进行分离的第二分支。将待分离的音频输入训练后的音频分离模型之后,通过第一分支对待分离的音频进行分离,得到第一分离结果,同时,通过第二分支对待分离的音频进行分离,得到第二分离结果,然后基于第一分离结果和第二分离结果得到目标音轨,也就是最终的分离结果。

需要说明的是,目标音轨的类型为待分离的音频包含的各种类型中的任一种,且与训练后的音频分离模型的分离类型相同。比如,待分离的音频包括人声、鼓声、贝斯声三种类型,训练后的音频分离模型的分离类型为人声,那么将该音频输入训练后的音频分离模型中后,最终得到的目标音轨就是人声。

也就是说,在本公开实施例中,训练后的音频分离模型并不需要将待分离的音频包含的所有类型的音轨都进行分离,训练后的音频分离模型具有哪种分离类型,就从待分离的音频中分离出相同类型的音轨即可。

进一步,本公开实施例中的音频分离模型是一个端到端的模型,即,输入的是音频的波形,输出的也是音频的波形。

在本公开一种优选实施例中,音频分离模型中的第一分支基于频谱图对音频进行分离,得到第一分离结果,包括:

对音频进行傅里叶变换,得到音频的频谱图;

计算得到频谱图的相位;

基于相位确定出待分离类型的第一音轨的频谱图;

对第一音轨的频谱图进行反傅里叶变换,得到第一音轨。

在实际应用中,一段音频通常包含多个音频帧。正常人听觉的频率范围大约在20hz~20khz之间。采样频率是指将模拟声音波形进行数字化时,每秒钟抽取声波幅度样本的次数。根据奈奎斯特采样理论,为了保证声音不失真,采样频率应该在40khz左右。常用的音频采样频率有8khz、11.025khz、22.05khz、16khz、37.8khz、44.1khz、48khz等,如果采用更高的采样频率,还可以达到dvd的音质。对采样率为44.1khz的aac音频进行解码时,一帧的解码时间须控制在23.22毫秒内。

应用于本公开实施例,待分离的音频记为x,x分为t帧,每帧包含n个汉明窗(hammingwindow)。那么对音频进行傅里叶变换,可以采用公式(1)得到音频的频谱图:

其中,将第t帧记为xt,将傅里叶变换记为xt,d是具有dkn元素的n*n复矩阵,

进一步,将复矩阵d分解为实部dr和虚部di,并将dr和di代入公式(1),得到公式(2):

可以得知,公式(2)可以通过矩阵乘法来进行短时傅里叶变换。为了在每个帧上并行的进行短时傅里叶变换,可以采用公式(3)对公式(2)进行一维卷积运算来实现并行短时傅里叶变换:

xr=convr(x);xi=convi(x)公式(3);

其中,convr和convi是分别具有dr和di参数的一维卷积。convr和convi的步幅设置相邻帧之间的帧移(hopsizes)。然后通过x=xr+ixi来计算x的短时傅里叶变换,再公式(3)中的实部和虚部代入公式(4)即可计算得频谱图:

其中,|x|就是计算得到的频谱图。

得到频谱图之后,再通过公式(5)计算得到该频谱图的相位的余弦值和正弦值:

再将cos∠x和sin∠x代入公式(6)计算出待分离类型的第一音轨的频谱图:

其中,为第一分支预测得到的待分离类型的音轨的频谱图。

然后在的帧上应用离散傅立叶逆变换来计算短时傅立叶逆变换,如公式(7):

其中,为时域离散傅立叶逆变换的帧;d-1是具有dkn元素的n*n复矩阵,的第t帧。

进一步,n是一帧中的汉明窗,并将d-1分解为实部和虚部,并采用公式(8)对公式(7)进行矩阵计算,以及,将分解为实部和虚部,得到公式(9):

结合公式(7)、(8)、(9),得到重建后的如公式(10):

再对公式(10)进行卷积计算,如公式(11):

其中,表示对t帧进行并行计算。

然后将t帧进行组合,得到完整的时域波形,从而得到第一音轨,如公式(12):

在本公开一种优选实施例中,音频分离模型中的第二分支基于时域对音频进行分离,得到第二分离结果,包括:

基于预设的时域回归函数对音频进行分离,得到待分离类型的第二音轨。

具体而言,音频分离模型中的第二分支可以采用预设的时域回归函数对音频进行分离,得到待分离类型的第二音轨,如公式(13):

其中,fwav是由一组可学习的参数建模的回归函数。公式(13)无需应用stft和istft即可获得分离的源。例如,我们可以使用awavunet为fwav建模。awavunet包含一个编码器和一个解码器。编码器由几个一维卷积层和池化层组成。解码器包含几个一维卷积层和转置的卷积层。与unet不同,在时域wavunet中应用的池大小大于在频谱图域unet中的池大小。最后,wavunet输出分离的源而无需任何后处理。

在本公开一种优选实施例中,基于第一分离结果和第二分离结果得到分离后的目标音轨,包括:

将第一音轨与第二音轨进行整合,得到目标音轨。

具体地,将第一分支与第二分支进行结合,目的是结合频谱图和基于时域的方法的优点。音频分离模型由两个分支组成。一个分支是基于频谱图的unet(第一系统),另一个分支是wavunet(第二系统)。wavunet分支旨在获取混合物的波形并输出源的分离波形。unet分支旨在学习声音的频率模式。应用于频谱图的unet对于在频域中音调变化具有鲁棒性。

另一方面,wavunet分支是unet的补充,用于分离音频。wavunet通过使用一维卷积提供了更灵活,更易学的转换。此外,wavunet分支可以补偿unet中的相位重建问题。

将第一音轨与第二音轨通过公式(14)进行整合,得到目标音轨:

其中,为unet分支的输出,为wavunet分支的输出。

步骤s103,输出目标音轨。

在得到目标音轨之后,输出目标音轨即可。

在实际应用中,基于musdb18对本公开实施例的音频分离模型进行mss测试,以及应用现有技术进行mss,各自的中值sdr的结果如表1所示:

表1

可以得知,时域系统wavunet在人声分离方面实现了3.05db的sdr,并通过demucs进行了改进,中位sdr为6.21db。基于频谱图的方法mmdensenet优于时域方法,中值sdr为6.57db。去噪自动编码器(dae)系统实现了5.74db的sdr。

表1中带后缀(ex)的项目是使用外部数据训练的。例如,对mmdensenet和mmdensenetlstm系统进行了804条额外记录的培训。分离器系统接受了24097条额外的记录。本公开实施例的音频分离模型无需额外的训练数据即可实现人声分离的中值sdr为8.04,优于其他系统。

不同损失函数的unet的中值结果如表2所示:

表2

其中,包括具有unet架构的频谱图mae,波形mae,波形mse和对数波形mae(公式(18))。本公开实施例选择unet与现有的基于频谱图的损失函数进行公平比较。表2显示,所有时域损失函数(波形mae,波形mse和对数波形mae)均优于基于频谱图的损失函数(频谱图mae)。例如,对数波形mae的人声和伴奏sdr为7.52db和12.76db,优于频谱图mae的6.86分贝和12.26分贝。本公开实施例使用对数波形mae作为损失函数。

音频分离模型的sdr平均值和中值如表3所示:

表3

基准系统(unetspmae)已经实现了人声和伴奏中值sdr分别为6.86和12.26db。wavunet的中值sdr分别为5.28和11.13db。wavegram系统略胜于wavunet。unet-wavunet和unet-wavegram是catnets的实例。unet-wavunet优于unet-wavegram系统。具有混合音频增强功能的unet-wavunet系统分别实现了8.04db和13.70db的最新人声和伴奏sdr。表3显示,具有数据增强功能的unet-wavunet比具有数据增强功能的unet更有效。wavunet的混合音频增强比unet更有效。总的来说,本公开实施例的音频分离模型(unet-wavunet)达到了mss的最新性能。

在本公开实施例中,当获取到待分离的音频时,将音频输入训练后的音频分离模型;其中,待分离的音频包含至少两种类型的音轨;以使得分离模型中的第一分支基于频谱图对音频进行分离,得到第一分离结果,以及使得分离模型中的第二分支基于时域对音频进行分离,得到第二分离结果,并基于第一分离结果和第二分离结果得到分离后的目标音轨;目标音轨的类型为至少两种类型中的任一种,且与训练后的音频分离模型的分离类型相同;然后输出目标音轨即可。在本公开实施例中,音频分离模型由两个分支组成,一个分支是基于频谱图的unet,另一个分支是wavunet。unet分支旨在学习音频的频率模式;wavunet分支旨在获取音频的波形并输出分离后的波形。应用于频谱图的unet对于在频域中音调变化具有鲁棒性。而且,wavunet分支是unet的补充,用于分离音频。wavunet通过使用一维卷积提供了更灵活,更易学的转换。此外,wavunet分支可以补偿unet中的相位重建问题。这样,音频分离模型结合了频谱图和基于时域的方法各自的优点,达到了mss的最新性能。

在另一个实施例中提供了音频分离模型的训练方法,如图2所示,通过该方法训练得到的音频分离模型可以应用于第一个实施例的音频分离方法,该训练方法包括:

步骤s201,基于预设的原始音频集生成新的目标音频集;目标音频集包含至少一个目标音频样本,每个目标音频样本包含至少两种类型的目标音轨样本;

其中,预设的原始音频集可以是musdb18,musdb18是150个全长度的音乐曲目的数据集,数据集中包含至少一个类型的音轨,每个类型的音轨包含至少一条原始音轨,比如,流派的独立的鼓、低音、人声和其它音轨的音轨文件。musdb18训练集通常用于音乐分轨等深度学习模型的训练。所有音乐均为立体声,采样率为44.1khz。

训练数据的数量对于训练音频分离模型很重要。公开可用的数据集(例如musdb18)在训练集中仅包含100个音频记录。所以需要对训练数据的数量进行扩充。

在本公开实施例中,可以基于各个独立的音轨文生成新的目标音频集,目标音频集包含至少一个目标音频样本,每个目标音频样本包含至少两种类型的目标音轨样本。比如,某个目标音频样本包含鼓和人声两种类型的音轨。

在本公开一种优选实施例中,基于预设的原始音频集生成新的目标音频集,包括:

从各个类型的各个原始音轨中各自随机提取出两段预设时长的音轨片段;

将两段音轨片段进行混合,得到具有预设时长的、混合后的各个第一音轨片段;

将不同类型的任意两个第一音轨片段进行混合,得到具有预设时长的、混合后的各个第二音轨片段,并将各个第二音轨片段作为各个目标音频样本。

具体而言,先从各个类型的原始音轨中各自随机提取出两段预设时长的音轨片段,然后将属于同一音轨的两段音轨片段进行混合,得到相同时长的混合后的各个第一音轨片段,如公式(15):

其中,smix为混合后的第一音轨片段;s代表音轨的类型;sj、j=1,...,j是来自同一音频的音频片段,j是混合音频增强的音频数。

再将不同类型的任意两个第一音轨片段进行混合,得到相同时长的混合后的各个第二音轨片段,并将各个第二音轨片段作为目标音频样本,如公式(16):

其中,xmix是作为输入的混合后的第二音轨片段,i是第二音轨片段的数量。

比如,针对三个类型的音轨a、b、c,先分别从a、b、c中随机提取出2段3秒的音轨片段,得到a1、a2、b1、b2、c1、c2,然后将a1与a2混合,得到3秒的a',同理得到3秒的b'和c',再将a'、b'和c'相互混合,得到a'+b'、a'+c'、b'+c'三个目标音频样本。

进一步,在表3中,aug表示训练数据,训练数据越多,sdr的平均值和中值就越精准。

步骤s202,将目标音频集中的任一目标音频样本输入预设的音频分离模型,以使得分离模型中的第一分支基于频谱图对音频样本进行分离,得到第三分离结果,以及使得分离模型中的第二分支基于时域对音频样本进行分离,得到第四分离结果,并基于第三分离结果和第四分离结果得到预测音轨;

在本公开实施例中,步骤s202与步骤s102相同,具体可参照步骤s102,在此就不赘述了。

需要说明的是,第三分离结果与第一分离结果、第四分离结果与第二分离结果仅仅是为了区分和方便理解方案,并不存在实质性区别。

进一步,针对目标音频样本,将xmix与smix进行分离可以采用公式(17):

更进一步,图3示出了本公开实施例中音频分离模型的逻辑结构,其中,输入波形表示为x,分离出的波形表示为

在本公开实施例中,为了构建unet系统,可以使用一维卷积层来提取频谱图(公式(3))。提取的频谱图的汉明窗大小为2048,跳数为441。频谱图的尺寸为301帧乘以1025个频点。批归一化(bn)应用于频谱图的每个频点,以归一化输入。应用具有六个编码和六个解码块的unet。每个编码器块由两个内核大小为3×3的卷积层和一个2×2平均池化层组成。每个卷积层由线性卷积、bn和relu非线性组成。每个解码器层由两个卷积层组成,这两个卷积层与编码器中的卷积层对称。然后,将每个编码器的输出与相同级别的编码器的输出连接在一起。然后,将级联特征图输入到步长为2×2的转置卷积层中,以对特征mpas的大小进行上采样。将三个附加的卷积层应用于编码器的输出以预测然后,可以通过公式(6)、(11)、(12)获得时域输出。

wavunet还包括六个与unet相似的编码器和六个解码器模块。所有层的内核大小为3。与unet不同,所有卷积层都是一维的。平均池化层的大小为4,转置卷积层的步幅为4。图3的右侧部分显示了wavunet的配置。音频分离模型结合了unet和wavunet的输出,如图3所示。

步骤s203,基于预测音轨与任一目标音频样本中相同类型的目标音轨样本计算得到损失函数,并基于损失函数对预设的音频分离模型的各个预设参数进行更新;

具体而言,针对任一目标音频样本,音频分离模型对其进行分离得到预测音轨后,将预测音轨与该任一目标音频样本采用公式(18)计算得到损失:

其中,损失函数可以是对数mae损失函数。

计算得到损失函数之后,可以基于损失函数对音频分离模型的各个参数进行更新、优化。

步骤s204,重复执行将目标音频集中的任一目标音频样本输入预设的音频分离模型,以使得分离模型中的第一分支基于频谱图对音频样本进行分离,得到第三分离结果,以及使得分离模型中的第二分支基于时域对音频样本进行分离,得到第四分离结果,并基于第三分离结果和第四分离结果得到预测音轨,以及,基于预测音轨与任一目标音频样本中相同类型的目标音轨样本计算得到损失函数,并基于损失函数对预设的音频分离模型的各个预设参数进行更新的步骤,直至损失函数最小值收敛,得到训练后的音频分离模型。

具体而言,基于损失函数对音频分离模型的各个参数进行更新、优化之后,可以重复执行步骤s202~步骤s203,直至损失函数最小值收敛,得到训练后的音频分离模型。训练后的音频分离模型可以应用于步骤s101~步骤s103。

在本公开实施例中,由于原始音频集中音频数量较少,所以本公开实施例可以通过混合的方式大大提高了训练样本的数量,训练样本的数量越多,训练后的音频分离模型的性能也就越高。

而且,通过对各种时域损失函数进行研究后得知,时域损失函数优于基于频谱图的损失函数,因此,本公开实施例采用对数波形mae作为损失函数,进一步提升了训练后的音频分离模型的性能。

图4为本公开又一实施例提供的一种音频分离装置的结构示意图,如图4所示,本实施例的装置可以包括:

获取模块401,用于获取待分离的音频;待分离的音频包含至少两种类型的音轨;

处理模块402,用于将音频输入训练后的音频分离模型,以使得分离模型中的第一分支基于频谱图对音频进行分离,得到第一分离结果,以及使得分离模型中的第二分支基于时域对音频进行分离,得到第二分离结果,并基于第一分离结果和第二分离结果得到分离后的目标音轨;目标音轨的类型为至少两种类型中的任一种,且与训练后的音频分离模型的分离类型相同;

输出模块403,用于输出目标音轨。

在本公开一种优选实施例中,装置还包括:

生成模块,用于基于预设的原始音频集生成新的目标音频集;目标音频集包含至少一个目标音频样本,每个目标音频样本包含至少两种类型的目标音轨样本;

处理模块,还用于将目标音频集中的任一目标音频样本输入预设的音频分离模型,以使得分离模型中的第一分支基于频谱图对音频样本进行分离,得到第三分离结果,以及使得分离模型中的第二分支基于时域对音频样本进行分离,得到第四分离结果,并基于第三分离结果和第四分离结果得到预测音轨;

计算模块,用于基于预测音轨与任一目标音频样本中相同类型的目标音轨样本计算得到损失函数,并基于损失函数对预设的音频分离模型的各个预设参数进行更新;

重复调用处理模块和计算模块,直至损失函数最小值收敛,得到训练后的音频分离模型。

在本公开一种优选实施例中,处理模块包括:

第一处理子模块,用于对音频进行傅里叶变换,得到音频的频谱图;

第二处理子模块,用于计算得到频谱图的相位;

第三处理子模块,用于基于相位确定出待分离类型的第一音轨的频谱图;

第四处理子模块,用于对第一音轨的频谱图进行反傅里叶变换,得到第一音轨。

在本公开一种优选实施例中,处理模块包括:

第五处理子模块,用于基于预设的时域回归函数对音频进行分离,得到待分离类型的第二音轨。

在本公开一种优选实施例中,处理模块包括:

第六处理子模块,用于将第一音轨与第二音轨进行整合,得到目标音轨。

在本公开一种优选实施例中,原始音频集包含至少一个类型的音轨,每个类型的音轨包含至少一条原始音轨;

生成模块包括:

提取子模块,用于从各个类型的各个原始音轨中各自随机提取出两段预设时长的音轨片段;

混合子模块,用于将两段音轨片段进行混合,得到具有预设时长的、混合后的各个第一音轨片段;

混合子模块,还用于将不同类型的任意两个第一音轨片段进行混合,得到具有预设时长的、混合后的各个第二音轨片段,并将各个第二音轨片段作为各个目标音频样本。

本实施例的音频分离装置可执行本公开第一个实施例的音频分离方法,以及第二个实施例所示的音频分离模型的训练方法,其实现原理相类似,此处不再赘述。

在本公开实施例中,当获取到待分离的音频时,将音频输入训练后的音频分离模型;其中,待分离的音频包含至少两种类型的音轨;以使得分离模型中的第一分支基于频谱图对音频进行分离,得到第一分离结果,以及使得分离模型中的第二分支基于时域对音频进行分离,得到第二分离结果,并基于第一分离结果和第二分离结果得到分离后的目标音轨;目标音轨的类型为至少两种类型中的任一种,且与训练后的音频分离模型的分离类型相同;然后输出目标音轨即可。在本公开实施例中,音频分离模型由两个分支组成,一个分支是基于频谱图的unet,另一个分支是wavunet。unet分支旨在学习音频的频率模式;wavunet分支旨在获取音频的波形并输出分离后的波形。应用于频谱图的unet对于在频域中音调变化具有鲁棒性。而且,wavunet分支是unet的补充,用于分离音频。wavunet通过使用一维卷积提供了更灵活,更易学的转换。此外,wavunet分支可以补偿unet中的相位重建问题。这样,音频分离模型结合了频谱图和基于时域的方法各自的优点,达到了mss的最新性能。

下面参考图5,其示出了适于用来实现本公开实施例的电子设备500的结构示意图。本公开实施例中的电子设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字tv、台式计算机等等的固定终端。图5示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。

电子设备包括:存储器以及处理器,其中,这里的处理器可以称为下文所述的处理装置501,存储器可以包括下文中的只读存储器(rom)502、随机访问存储器(ram)503以及存储装置508中的至少一项,具体如下所示:如图5所示,电子设备500可以包括处理装置(例如中央处理器、图形处理器等)501,其可以根据存储在只读存储器(rom)502中的程序或者从存储装置508加载到随机访问存储器(ram)503中的程序而执行各种适当的动作和处理。在ram503中,还存储有电子设备500操作所需的各种程序和数据。处理装置501、rom502以及ram503通过总线504彼此相连。输入/输出(i/o)接口505也连接至总线504。

通常,以下装置可以连接至i/o接口505:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置506;包括例如液晶显示器(lcd)、扬声器、振动器等的输出装置507;包括例如磁带、硬盘等的存储装置508;以及通信装置509。通信装置509可以允许电子设备500与其他设备进行无线或有线通信以交换数据。虽然图5示出了具有各种装置的电子设备500,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。

特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置509从网络上被下载和安装,或者从存储装置508被安装,或者从rom502被安装。在该计算机程序被处理装置501执行时,执行本公开实施例的方法中限定的上述功能。

需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(射频)等等,或者上述的任意合适的组合。

在一些实施方式中,客户端、服务器可以利用诸如http(hypertexttransferprotocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“lan”),广域网(“wan”),网际网(例如,互联网)以及端对端网络(例如,adhoc端对端网络),以及任何当前已知或未来研发的网络。

上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。

上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:获取待分离的音频;所述待分离的音频包含至少两种类型的音轨;将所述音频输入训练后的音频分离模型,以使得所述分离模型中的第一分支基于频谱图对所述音频进行分离,得到第一分离结果,以及使得所述分离模型中的第二分支基于时域对所述音频进行分离,得到第二分离结果,并基于所述第一分离结果和所述第二分离结果得到分离后的目标音轨;所述目标音轨的类型为所述至少两种类型中的任一种,且与所述训练后的音频分离模型的分离类型相同;输出所述目标音轨。

可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本公开实施例中所涉及到的模块或单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块或单元的名称在某种情况下并不构成对该单元本身的限定。

本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、片上系统(soc)、复杂可编程逻辑设备(cpld)等等。

在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。

根据本公开的一个或多个实施例,【示例一】提供了一种音频分离方法,包括:

获取待分离的音频;所述待分离的音频包含至少两种类型的音轨;

将所述音频输入训练后的音频分离模型,以使得所述分离模型中的第一分支基于频谱图对所述音频进行分离,得到第一分离结果,以及使得所述分离模型中的第二分支基于时域对所述音频进行分离,得到第二分离结果,并基于所述第一分离结果和所述第二分离结果得到分离后的目标音轨;所述目标音轨的类型为所述至少两种类型中的任一种,且与所述训练后的音频分离模型的分离类型相同;

输出所述目标音轨。

在本公开一种优选实施例中,所述音频分离模型通过如下方式生成:

基于预设的原始音频集生成新的目标音频集;所述目标音频集包含至少一个目标音频样本,每个目标音频样本包含至少两种类型的目标音轨样本;

将所述目标音频集中的任一目标音频样本输入预设的音频分离模型,以使得所述分离模型中的第一分支基于频谱图对所述音频样本进行分离,得到第三分离结果,以及使得所述分离模型中的第二分支基于时域对所述音频样本进行分离,得到第四分离结果,并基于所述第三分离结果和所述第四分离结果得到预测音轨;

基于所述预测音轨与所述任一目标音频样本中相同类型的目标音轨样本计算得到损失函数,并基于所述损失函数对所述预设的音频分离模型的各个预设参数进行更新;

重复执行将所述目标音频集中的任一目标音频样本输入预设的音频分离模型,以使得所述分离模型中的第一分支基于频谱图对所述音频样本进行分离,得到第三分离结果,以及使得所述分离模型中的第二分支基于时域对所述音频样本进行分离,得到第四分离结果,并基于所述第三分离结果和所述第四分离结果得到预测音轨,以及,基于所述预测音轨与所述任一目标音频样本中相同类型的目标音轨样本计算得到损失函数,并基于所述损失函数对所述预设的音频分离模型的各个预设参数进行更新的步骤,直至所述损失函数最小值收敛,得到训练后的音频分离模型。

在本公开一种优选实施例中,所述音频分离模型中的第一分支基于频谱图对所述音频进行分离,得到第一分离结果,包括:

对所述音频进行傅里叶变换,得到所述音频的频谱图;

计算得到所述频谱图的相位;

基于所述相位确定出待分离类型的第一音轨的频谱图;

对所述第一音轨的频谱图进行反傅里叶变换,得到第一音轨。

在本公开一种优选实施例中,所述音频分离模型中的第二分支基于时域对所述音频进行分离,得到第二分离结果,包括:

基于预设的时域回归函数对所述音频进行分离,得到待分离类型的第二音轨。

在本公开一种优选实施例中,基于所述第一分离结果和所述第二分离结果得到分离后的目标音轨,包括:

将第一音轨与第二音轨进行整合,得到目标音轨。

在本公开一种优选实施例中,所述原始音频集包含至少一个类型的音轨,每个类型的音轨包含至少一条原始音轨;

所述基于预设的原始音频集生成新的目标音频集,包括:

从各个类型的各个原始音轨中各自随机提取出两段预设时长的音轨片段;

将两段音轨片段进行混合,得到具有所述预设时长的、混合后的各个第一音轨片段;

将不同类型的任意两个第一音轨片段进行混合,得到具有所述预设时长的、混合后的各个第二音轨片段,并将各个第二音轨片段作为各个目标音频样本。

根据本公开的一个或多个实施例,【示例二】提供了示例一的装置,包括:

获取模块,用于获取待分离的音频;所述待分离的音频包含至少两种类型的音轨;

处理模块,用于将所述音频输入训练后的音频分离模型,以使得所述分离模型中的第一分支基于频谱图对所述音频进行分离,得到第一分离结果,以及使得所述分离模型中的第二分支基于时域对所述音频进行分离,得到第二分离结果,并基于所述第一分离结果和所述第二分离结果得到分离后的目标音轨;所述目标音轨的类型为所述至少两种类型中的任一种,且与所述训练后的音频分离模型的分离类型相同;

输出模块,用于输出所述目标音轨。

在本公开一种优选实施例中,所述装置还包括:

生成模块,用于基于预设的原始音频集生成新的目标音频集;所述目标音频集包含至少一个目标音频样本,每个目标音频样本包含至少两种类型的目标音轨样本;

所述处理模块,还用于将所述目标音频集中的任一目标音频样本输入预设的音频分离模型,以使得所述分离模型中的第一分支基于频谱图对所述音频样本进行分离,得到第三分离结果,以及使得所述分离模型中的第二分支基于时域对所述音频样本进行分离,得到第四分离结果,并基于所述第三分离结果和所述第四分离结果得到预测音轨;

计算模块,用于基于所述预测音轨与所述任一目标音频样本中相同类型的目标音轨样本计算得到损失函数,并基于所述损失函数对所述预设的音频分离模型的各个预设参数进行更新;

重复调用所述处理模块和所述计算模块,直至所述损失函数最小值收敛,得到训练后的音频分离模型。

在本公开一种优选实施例中,所述处理模块包括:

第一处理子模块,用于对所述音频进行傅里叶变换,得到所述音频的频谱图;

第二处理子模块,用于计算得到所述频谱图的相位;

第三处理子模块,用于基于所述相位确定出待分离类型的第一音轨的频谱图;

第四处理子模块,用于对所述第一音轨的频谱图进行反傅里叶变换,得到第一音轨。

在本公开一种优选实施例中,所述处理模块包括:

第五处理子模块,用于基于预设的时域回归函数对所述音频进行分离,得到待分离类型的第二音轨。

在本公开一种优选实施例中,所述处理模块包括:

第六处理子模块,用于将第一音轨与第二音轨进行整合,得到目标音轨。

在本公开一种优选实施例中,所述原始音频集包含至少一个类型的音轨,每个类型的音轨包含至少一条原始音轨;

所述生成模块包括:

提取子模块,用于从各个类型的各个原始音轨中各自随机提取出两段预设时长的音轨片段;

混合子模块,用于将两段音轨片段进行混合,得到具有所述预设时长的、混合后的各个第一音轨片段;

所述混合子模块,还用于将不同类型的任意两个第一音轨片段进行混合,得到具有所述预设时长的、混合后的各个第二音轨片段,并将各个第二音轨片段作为各个目标音频样本。

以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

此外,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。

尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。

起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。

此文章来源于网络,如有侵权,请联系删除

相关标签: 音频应用损失函数
tips