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

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

2021-09-04 06:50:00 来源:中国专利 TAG:语音 信号处理 装置 可读 分离


1.本申请涉及语音信号处理技术领域,尤其涉及一种语音分离方法、装置、设备及计算机可读存储介质。


背景技术:

2.随着信息技术的发展,语音信号处理技术不断融入到各个领域。其中,语音信号的盲源分离技术在日常生活中的应用非常广泛。语音信号的盲源分离技术指的是,从获取到的语音混合信号中,分离出各声源的原始语音信号。
3.目前,常见的盲源分离方法为频域独立成分分析(independent component analysis,简称ica)方法。频域ica需要对初始分离信号的每个频点均进行ica处理,也就是说,在语音分离的过程中需要使用与频点数相同数量的ica分离网络,并且在分离结束后,为了得到各声源完整的语音信号,需要确定每个频点的ica分离结果的分离次序,再根据该次序进行语音信号的重建处理。
4.但是,采用上述方法进行语音分离,由于频点数量通常非常多,很难准确确定出分离次序,也即,存在次序不确定性问题,从而导致语音分离的准确性不高。此外,由于ica分离网络的计算复杂度高,因此在处理过程中使用大量的ica分离网络,导致语音分离的效率不高。


技术实现要素:

5.本申请提供一种语音分离方法、装置、设备及计算机可读存储介质,用以解决语音分离的效果不佳的技术问题。
6.第一方面,本申请实施例提供一种语音分离方法,包括:
7.根据多个语音输入设备采集的语音信号,混合获得语音混合信号;其中,所述语音输入设备的数量与预设的各声源的数量一致;
8.基于频域独立成分分析算法,对所述语音混合信号进行计算,得到初始分离矩阵和初始分离信号;
9.采用回射投影法,将所述初始分离信号拆分为多个第一初始分离信号,并对每个第一初始分离信号进行均匀划分,获得多个子带,所述第一初始分离信号与所述各声源的数量相同;
10.将所述初始分离矩阵拆分获得多个解混矩阵,所述解混矩阵的个数为第一初始分离信号个数的平方;
11.根据所述多个子带和所述多个解混矩阵,基于独立成分分析求解方法,获得各子带的分离信号,每个子带的分离信号包括所述各声源的分离信号;
12.对每个声源在各子带中的分离信号进行重建处理,获得所述各声源的语音信号。
13.进一步地,如上所述的方法,将所述语音混合信号进行短时傅里叶变换转换为频域信号,并采用均值聚类算法,基于时频点对所述频域信号进行分类;
14.根据聚类后的类中心,计算获得所述各声源到所述各语音输入设备的时延参数和衰减参数;
15.针对每个语音输入设备,根据各声源到该语音输入设备的时延参数和衰减参数,计算获得混合矩阵中的各向量,以获得混合矩阵;
16.对所述混合矩阵进行求逆处理,获得所述初始分离矩阵;
17.根据所述频域信号和所述初始分离矩阵,基于频域独立成分分析求解方法,求解获得所述初始分离信号。
18.进一步地,如上所述的方法,所述采用均值聚类算法,基于时频点对所述频域信号进行分类之前,还包括:
19.对所述频域信号的所有时频点进行归一化处理。
20.进一步地,如上所述的方法,所述对每个第一初始分离信号进行均匀划分,获得多个子带,包括:
21.采用正交镜像滤波器组的分析滤波器组,对每个第一初始分离信号进行均匀划分,获得多个子带。
22.进一步地,如上所述的方法,所述对每个声源在各子带中的分离信号进行重建处理,获得所述各声源的语音信号,包括:
23.采用综合滤波器组,对每个声源在各子带中的分离信号进行重建处理,获得所述各声源的语音信号。
24.进一步地,如上所述的方法,所述对每个声源在各子带中的分离信号进行重建处理,获得所述各声源的语音信号之后,还包括:
25.从所述各声源的语音信号中,提取出目标声源的语音信号;
26.将所述目标声源的语音信号输出至对应的目标扬声器。
27.第二方面,本申请实施例提供一种语音分离装置,包括:
28.获取模块,用于根据多个语音输入设备采集的语音信号,混合获得语音混合信号;其中,所述语音输入设备的数量与预设的各声源的数量一致;
29.计算模块,用于基于频域独立成分分析算法,对所述语音混合信号进行计算,得到初始分离矩阵和初始分离信号;
30.拆分模块,用于采用回射投影法,将所述初始分离信号拆分为多个第一初始分离信号,并对每个第一初始分离信号进行均匀划分,获得多个子带,所述第一初始分离信号与所述各声源的数量相同;
31.所述拆分模块,还用于将所述初始分离矩阵拆分获得多个解混矩阵,所述解混矩阵的个数为第一初始分离信号个数的平方;
32.所述计算模块,还用于根据所述多个子带和所述多个解混矩阵,基于独立成分分析求解方法,获得各子带的分离信号,每个子带的分离信号包括所述各声源的分离信号;
33.重建模块,用于对每个声源在各子带中的分离信号进行重建处理,获得所述各声源的语音信号。
34.第三方面,本申请实施例提供一种电子设备,包括:存储器,处理器;
35.存储器:用于存储所述处理器可执行指令的存储器;
36.其中,所述处理器用于调用所述存储器中的程序指令执行如第一方面所述的语音
分离方法。
37.第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如第一方面所述的语音分离方法。
38.第五方面,本申请实施例提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的语音分离方法。
39.本申请提供一种语音分离方法、装置、设备及计算机可读存储介质,基于频域ica算法,对语音混合信号进行计算,得到初始分离矩阵和初始分离信号,再将初始分离信号拆分为多个第一初始分离信号,并对每个第一初始分离信号进行均匀划分,获得多个子带,同时将初始分离矩阵拆分获得多个解混矩阵,根据多个子带和多个解混矩阵,基于ica求解方法,获得各子带的分离信号,对每个声源在各子带中的分离信号进行重建处理,获得各声源的语音信号。也就是说,本申请将第一初始分离信号均匀划分为多个子带,只需对每个子带进行ica处理。故相比于针对每个频点做ica处理的方案,由于子带的数量相较于频点数量明显减少,因此能够准确确定各子带的分离信号的分离次序,也即改善了次序不确定性问题,进而有效提升了语音分离的准确性。此外,本申请在处理过程中仅需使用与子带数量相同的ica网络进行计算,从而大大减少了计算量,进而提升了语音分离的效率。
附图说明
40.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
41.图1为ica处理的原理示意图;
42.图2为本申请提供的一种应用场景的示意图;
43.图3为本申请提供的语音分离方法的流程图;
44.图4为本申请提供的基于子带的独立成分分析语音分离的示意图;
45.图5为本申请提供的语音分离方法的流程图;
46.图6为本申请提供的语音分离装置的结构示意图;
47.图7为本申请的电子设备的结构示意图。
48.通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
49.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
50.随着语音信号处理技术的发展,语音信号的分离技术广泛应用到各个领域。语音分离可以根据语音采集设备(比如麦克风)的数量分类,可分为单通道、多通道语音分离。其中,多通道语音分离应用广泛,包括例如新型助听器、电话会议、语音交互等。
51.结合银行柜台业务场景对多通道语音分离的应用场景进行举例介绍,该场景下通常针对柜员与客户间的语音交流,具体采用窗口双向对讲机设备。简单来说,该设备包括主机、分机、适配器三个部分。主机设置在服务窗口内,供银行职员使用,通常包括一个金属软管360
°
收音麦克风和一个扬声器,分机附着于窗口外部玻璃,供客户使用,通常包括一个外机收音麦克风和一个外机扬声器。对于窗口内语音输入,柜台人员对准主机的软管麦克风说话,声音信号经过信号处理后传输到外机扬声器扩出。对于窗口外语音输入,客户对准外机的收音麦克风说话,声音信号经过信号处理后传输到主机扬声器扩出。
52.但窗口双向对讲机设备实际上是一种简单的双向扩声设备组合,不具备语音降噪功能,仅能消除部分电磁噪声、解决回音啸叫问题,无法处理客户人数较多、环境噪声复杂的场景。例如,在银行柜台办理业务时,由于客户人数较多、环境噪声复杂,柜员与客户之间的业务交流受到了很大影响,因此,需要采用盲源分离技术对目标声源与噪声声源进行分离,从而提取出目标声源的语音信号,并通过扬声器扩声传送。
53.目前,常见的盲源分离方法为频域ica方法,其中,在信号的混合模型和源信号(或称为声源)信息无法获取的情况下,仅根据混合信号(或称为语音混合信号)估算出混合矩阵并分离出各源信号的过程称为盲源分离。通过该方法,对主机和分机两个麦克风对窗口内外语音信号进行收音,进行盲源分离处理后提取出目标声源(比如客户/银行职员)的声音信号,通过内/外扬声器进行扩声输出。
54.作为示例,图1为ica处理的原理示意图。通常,各声源之间满足线性混合情况,且声源之间是独立的。如图1所示,在对声源s和混合矩阵a未知的条件下,仅通过语音混合信号x,解出分离矩阵w,使得分离出的各信号(即y中各向量)无限逼近声源s。其中,声源s和语音混合信号x均为n维向量,a为n
×
n的混合矩阵。此外,分离矩阵的求解通常需要选取一个合适的初始分离矩阵,对它进行梯度寻优得到w。相应地,通过初始分离矩阵可以求解出一个初始分离信号。
55.频域ica需要对初始分离信号的每个频点均进行ica处理,也就是说,在语音分离的过程中需要使用与频点数相同数量的ica分离网络,并且在分离结束后,为了得到各声源完整的语音信号,需要确定每个频点的ica分离结果的分离次序,再根据该次序进行语音信号的重建处理。
56.但是,采用上述方法进行语音分离,由于频点数量通常非常多,很难准确确定出分离次序,也即,存在次序不确定性问题,从而导致语音分离的准确性不高。此外,由于ica分离网络的计算复杂度高,因此在处理过程中使用大量的ica分离网络,导致语音分离的效率不高。
57.本申请提供的语音分离方法、装置、设备及计算机可读存储介质,旨在解决现有技术的如上技术问题。
58.下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
59.图2为本申请提供的一种应用场景的示意图,如图2所示,该图2所示的应用场景具体可以包括语音输入设备1、服务器2以及扬声器3,其中服务器2中设置有语音分离装置。
60.其中,语音输入设备1为能够采集包含各声源的语音混合信号的装置,且该语音输
入设备的数量为多个,具体可以为多个麦克风,或是其他合适的装置,本申请对此不做限定。
61.语音分离装置可搭载于服务器2中,用于获取语音输入设备采集的,包含各声源的语音混合信号,并采用本申请提供的语音分离方法,对该混合信号进行分离处理,并将分离出的目标声源的语音信号输出至对应的扬声器3,通过扬声器3进行扩声传送。
62.实施例一
63.图3为本申请提供的语音分离方法的流程图,如图3所示,本实施例提供的语音分离方法包括以下步骤:
64.步骤101、根据多个语音输入设备采集的语音信号,混合获得语音混合信号;其中,所述语音输入设备的数量与预设的各声源的数量一致。
65.步骤102、基于频域独立成分分析算法,对所述语音混合信号进行计算,得到初始分离矩阵和初始分离信号。
66.步骤103、采用回射投影法,将所述初始分离信号拆分为多个第一初始分离信号,并对每个第一初始分离信号进行均匀划分,获得多个子带,所述第一初始分离信号与所述各声源的数量相同。
67.步骤104、将所述初始分离矩阵拆分获得多个解混矩阵,所述解混矩阵的个数为第一初始分离信号个数的平方。
68.步骤105、根据所述多个子带和所述多个解混矩阵,基于独立成分分析求解方法,获得各子带的分离信号,每个子带的分离信号包括所述各声源的分离信号。
69.步骤106、对每个声源在各子带中的分离信号进行重建处理,获得所述各声源的语音信号。
70.需要说明的是,本实施例提供的语音分离方法的执行主体可以为语音分离装置。在实际应用中,该语音分离装置可以通过计算机程序实现,例如应用软件,计算机程序等,也可以通过存储有相关计算机程序的介质,例如,u盘、光盘等实现;或者,还可以通过集成或安装有相关计算机程序的实体装置实现,例如,芯片等。
71.在本实施例中,将子带滤波技术应用于ica中来代替频域ica,实现语音分离处理。具体地,语音分离装置首先可以根据多个语音输入设备采集的语音信号,混合获得语音混合信号。其中,语音输入设备的数量与预设的各声源的数量一致。
72.其中,声源的类型包括但不限于希望提取出的目标声源以及环境噪声。所述的各声源可以根据同一时刻下发出声音的对象确定。比如,针对用户a和用户b两人进行语音对话的场景,若同一时刻下只有一个用户在说话,且没有环境噪声,则确定声源即为当前正在说话的用户的声音,此时无需进行语音分离。在另一种情况下,若同一时刻下只有一个用户在说话,但存在环境噪声,则确定各声源包括当前正在说话的用户的声音和环境噪声,相应的,需要设置两个语音采集设备。在又一种情况下,若同一时刻下用户a和用户b均在说话,且存在环境噪声,则确定各声源包括用户a说话的声音,用户b说话的声音和环境噪声,相应地,需要设置三个语音采集设备。
73.确定声源的个数后,设置相同数量的语音输入设备,后续基于语音输入设备采集的信号,执行本方案的语音分离处理技术,获得分离得到的各声源。
74.接下来,由于ica是通过迭代运算来寻找目标函数最优解,因此需要找到一个合适
的初始点,从而加快ica的收敛速度。因此,为了获得一个合适的初始分离矩阵,进而获得初始分离信号,语音分离装置可以基于频域ica算法,对语音混合信号进行计算,得到初始分离矩阵和初始分离信号,具体计算方法将在本申请其他实施例中进行详细说明,在此不做赘述。
75.然后,为了解决幅度不确定问题,语音分离装置可以采用回射投影法,将初始分离信号拆分为多个第一初始分离信号,第一初始分离信号与各声源的数量相同。
76.接下来,由于语音信号的能量分布较为集中,呈现出稀疏特性,因此有的初始分离矩阵不能对初始分离信号进行很好的分离,因此,为了提高语音分离效果,语音分离装置可以对每个第一初始分离信号进行均匀划分,获得多个子带。具体划分方法本实施例中不做限定。
77.相应地,再将初始分离矩阵拆分获得多个解混矩阵。其中,解混矩阵的个数为第一初始分离信号个数的平方。
78.然后,语音分离装置可以根据多个子带和多个解混矩阵,基于ica求解方法,获得各子带的分离信号,每个子带的分离信号包括各声源的分离信号,ica的求解公式为:
[0079][0080]
其中,s1(k;n)和s2(k;n)分别表示第k级子带分离的声源1的分离信号和声源2的分离信号,y1(k;n)和y2(k;n)分别表示每个第一初始分离信号中,第k级子带信号,w
11
(k)、w
12
(k)、w
21
(k)、w
22
(k)表示第k级子带的解混矩阵。
[0081]
最后,为了得到分离后的各声源的完整语音信号,语音分离装置可以对每个声源在各子带中的分离信号进行重建处理,具体处理方法本实施例中不做限定。
[0082]
在一个示例中,图4为本申请提供的基于子带的独立成分分析语音分离的示意图,如图4所示,y1(n)混合信号1和y2(n)混合信号2,为两个第一初始分离信号,h0(z)

h
l
‑1(z)和f0(z)

f
l
‑1(z)均为滤波器,m为滤波器进行的相应处理,如改变采样频率等,ica network w0(z)

ica network w
l
‑1(z)均为ica网络,每个ica网络均使用上述ica的求解公式进行迭代寻优运算,s1(n)估计源1和s2(n)估计源2,为分离后的两个声源的完整语音信号。
[0083]
具体处理流程为,将两个第一初始分离信号分别输入到两组h0(z)

h
l
‑1(z)滤波器中,从而可以将两个第一初始分离信号,分别均匀划分为8个子带。实际应用中,图4中的h0(z)

h
l
‑1(z)滤波器可为正交镜像滤波器组的分析滤波器组。
[0084]
接下来,将两个第一初始分离信号划分出的同级子带,输入同一个ica网络,采用相应的ica的求解公式进行迭代寻优运算,举例来说,将两个第一初始分离信号分别划分出的1级子带,共同输入ica network w0(z)网络进行迭代寻优运算,将两个第一初始分离信号分别划分出的2级子带,共同输入ica network w1(z)网络进行迭代寻优运算,以此类推,将两个第一初始分离信号分别划分出的8级子带,共同输入ica network w7(z)网络进行迭代寻优运算。
[0085]
最后,将各ica网络进行迭代寻优运算后获得的分离信号,分别输入两组f0(z)

f
l
‑1(z)滤波器,举例来说,将ica network w0(z)获得的两个分离信号,分别输入两组滤波器中的f0(z)滤波器,以此类推,将ica network w7(z)获得的两个分离信号,分别输入两组滤波器中的f7(z)滤波器,经各滤波器共同进行信号的重建处理后,即可得到分离后的两个
声源的完整语音信号。实际应用中,图4中的f0(z)

f
l
‑1(z)滤波器可为综合滤波器组。
[0086]
在上述实施例一的基础上,步骤103中,所述对每个第一初始分离信号进行均匀划分,获得多个子带,具体包括:采用正交镜像滤波器组的分析滤波器组,对每个第一初始分离信号进行均匀划分,获得多个子带。步骤106,具体包括:采用综合滤波器组,对每个声源在各子带中的分离信号进行重建处理,获得所述各声源的语音信号。
[0087]
由于正交镜像滤波器组和综合滤波器组能够很好地实现无混叠失真,包括无幅度失真、无相位失真,因此有效避免了最终获得的各声源的语音信号的失真问题。
[0088]
在上述实施例一的基础上,步骤106之后,还包括:从所述各声源的语音信号中,提取出目标声源的语音信号;将所述目标声源的语音信号输出至对应的目标扬声器。
[0089]
在本实施例中,在得到分离后的各声源的完整语音信号后,语音分离装置可以从各声源的完整语音信号中,提取出目标声源的语音信号,具体提取方式本实施例中不做限定。然后,将目标声源的语音信号输出至对应的目标扬声器,进行扩声传送。
[0090]
举例来说,在银行柜台办理业务的场景中,若提取出的目标声源的语音信号为柜员的语音信号,则将该语音信号输出至柜台窗口外面的外机扬声器,以使外机扬声器对柜员的声音进行扩音传送。相应地,若提取出的目标声源的语音信号为客户的语音信号,则将该语音信号输出至柜台窗口里面的主机扬声器,以使主机扬声器对客户的声音进行扩音传送。
[0091]
通过上述方式,可以将提取出的没有噪声干扰的目标声源,通过扬声器扩声传送,提高了用户体验。
[0092]
本实施例提供的语音分离方法,基于频域ica算法,对语音混合信号进行计算,得到初始分离矩阵和初始分离信号,再将初始分离信号拆分为多个第一初始分离信号,并对每个第一初始分离信号进行均匀划分,获得多个子带,同时将初始分离矩阵拆分获得多个解混矩阵,根据多个子带和多个解混矩阵,基于ica求解方法,获得各子带的分离信号,对每个声源在各子带中的分离信号进行重建处理,获得各声源的语音信号。也就是说,在本申请实施例中,将第一初始分离信号均匀划分为多个子带,只需对每个子带进行ica处理。故相比于针对每个频点做ica处理的方案,由于子带的数量相较于频点数量明显减少,因此能够准确确定各子带的分离信号的分离次序,也即改善了次序不确定性问题,进而有效提升了语音分离的准确性。此外,本申请在处理过程中仅需使用与子带数量相同的ica网络进行计算,从而大大减少了计算量,进而提升了语音分离的效率。
[0093]
实施例二
[0094]
图5为本申请提供的语音分离方法的流程图,如图5所示,本实施例提供的语音分离方法,在上述实施例一的基础上,步骤102,具体包括以下步骤:
[0095]
步骤201、将所述语音混合信号进行短时傅里叶变换转换为频域信号,并采用均值聚类算法,基于时频点对所述频域信号进行分类。
[0096]
步骤202、根据聚类后的类中心,计算获得所述各声源到所述各语音输入设备的时延参数和衰减参数。
[0097]
步骤203、针对每个语音输入设备,根据各声源到该语音输入设备的时延参数和衰减参数,计算获得混合矩阵中的各向量,以获得混合矩阵。
[0098]
步骤204、对所述混合矩阵进行求逆处理,获得所述初始分离矩阵。
[0099]
步骤205、根据所述频域信号和所述初始分离矩阵,基于频域独立成分分析求解方法,求解获得所述初始分离信号。
[0100]
在本实施例中,为了得到初始分离矩阵和初始分离信号,可以基于频域独立成分分析算法,对语音混合信号进行计算。具体地,语音分离装置首先可以将语音混合信号进行短时傅里叶变换转换为频域信号,并采用均值聚类算法,基于时频点对频域信号进行分类。
[0101]
在一个示例中,声源和语音输入设备的个数均为两个。由于频域ica的基本原理为将时域上的卷积转化到频域上的乘积,将卷积混合问题转换成瞬时混合问题求解。因此,可以将语音混合信号进行短时傅里叶变换转换为频域信号。
[0102]
接下来,根据语音信号的稀疏特性,信号的能量分布集中在较少的时频点上,对于不同的声源信号而言,能量分布集中的点在时频域上重合的几率极小。基于这种假设,可以认为在每一个时频点上只存在一个声源信号。由于语音混合信号经过短时傅里叶变换处理之后的所有时频点为一个总体,假设没有混响干扰,则两个语音输入设备采集到的语音混合信号的比值,近似等于这个时频点上的声源到两个语音输入设备的衰减参数的比值。因此,为了便于后续处理,可将所有时频点分为两类,每一类中语音输入设备采集到的信号向量来自同一个声源。
[0103]
接下来,由于初始分离矩阵需要根据时延参数和衰减参数获得,因此语音分离装置可以根据聚类后的类中心,计算获得各声源到各语音输入设备的时延参数和衰减参数,针对每个语音输入设备,语音分离装置可以根据各声源到该语音输入设备的时延参数和衰减参数,计算获得混合矩阵中各个频带的无回声模型向量,以获得混合矩阵。
[0104]
然后,由于初始分离矩阵为混合矩阵的逆矩阵,因此语音分离装置可以对混合矩阵进行求逆处理,获得初始分离矩阵。相应地,语音分离装置可以根据频域信号和初始分离矩阵,基于频域独立成分分析求解方法,求解获得初始分离信号。
[0105]
本实施例提供的语音分离方法,将语音混合信号转换为频域信号,并基于时频点进行分类,根据聚类后的类中心,计算获得时延参数和衰减参数,从而计算获得混合矩阵,对混合矩阵进行求逆处理,获得初始分离矩阵,进而根据频域信号和初始分离矩阵,基于ica求解获得初始分离信号,从而为后续基于子带的ica进行语音信号分离奠定基础。
[0106]
在上述实施例二的基础上,步骤201中,所述采用均值聚类算法,基于时频点对所述频域信号进行分类之前,还包括:对所述频域信号的所有时频点进行归一化处理。
[0107]
在实际应用中,为了消除幅度以及相位失真,在基于时频点对频域信号进行分类之前,需要对频域信号的所有时频点进行归一化处理,从而可以更好地进行语音信号分离。
[0108]
实施例三
[0109]
在上述实施例一的基础上,为了进一步说明本申请的语音分离方法,现结合具体公式进行详细说明:
[0110]
在一个示例中,声源和麦克风(语音输入设备)的个数均为两个,两个声源相互独立,经过各自传播途径后被两个麦克风接收,那么第j个麦克风接收到的信号可表示为:
[0111][0112]
其中,x
j
(t)为第j个麦克风接收到的信号,p为时延参数,d为幅度参数,t为第j个
麦克风接收到当前信号的时刻,a
ji
为第j个麦克风接收到第i个声源信号处的混合矩阵,s
i
为第i个声源。p取1时为瞬间混合模型,p取大于1的常数时为卷积混合模型。
[0113]
由于频域ica的基本原理为时域上的卷积转化到频域上的乘积,将卷积混合问题转换成瞬时混合问题求解,因此,可以根据语音信号的短时平稳性,将麦克风接收到的信号进行l点短时傅里叶变换。相应地,可以将上式转化为频域表达式:
[0114]
x(f,τ)=a(f)s(f,τ)
[0115][0116]
其中,x(f,τ)为麦克风接收到的频域信号,a(f)表示频带f处的混合矩阵,a中各元素均为复数值,a
11
(f)、a
12
(f)、a
21
(f)、a
22
(f)为混合矩阵中各元素,s(f,τ)为声源频域信号,f为频带,τ为帧。
[0117]
由于频域ica对每个频带进行盲信号分离处理,每个频带处理之后的分离信号的幅度及次序具有不确定性,会对重建的整体时域分离信号产生影响。因此,需要采用回射投影法解决幅度不确定性问题,再结合子带滤波器组来解决次序不确定性问题,方法如下:
[0118]
将上述频域表达式写成求和形式:
[0119][0120]
其中,x(f,τ)为麦克风接收到的频域信号,s
k
(f,τ)为第k个声源的频域信号,a
k
(f)为第k个声源到麦克风的频率响应,估计出该频率响应即可得出分离信号,也即声源,但是,该频率响应在没有声源位置等先验条件的情况下很难被估计出来。此处估计的目的是估计初始分离矩阵,所以假设没有回声的影响,即只考虑传输时延与衰减的情况。在这一假设下,上述混合矩阵a(f)中各元素可以用近似替代,公式如下:
[0121]
c
jk
(f)=λ
jk
·
exp(

i2πfτ
jk
)
[0122][0123]
其中,τ
jk
和λ
jk
均为正数,分别表示第k个声源到第j个语音输入设备的传输时延参数和衰减参数,c
jk
(f)为各频带的无回声模型向量,也即混合矩阵a(f)中各元素a
11
(f)、a
12
(f)、a
21
(f)、a
22
(f),λ1k为第k个声源到第1个语音输入设备的传输衰减参数,λ
2k
为第k个声源到第2个语音输入设备的传输衰减参数,τ
1k
为第k个声源到第1个语音输入设备的传输时延参数,τ
2k
为第k个声源到第2个语音输入设备的传输时延参数。
[0124]
根据语音信号的稀疏特性,信号的能量分布集中在较少的时频点上,对于不同的声源信号而言,能量分布集中的点在时频域上重合的几率极小。基于这种假设,可以认为在每一个时频点上只存在一个声源信号。由于麦克风接收到的信号经过短时傅里叶变换处理之后的所有时频点为一个总体,假设没有混响干扰,则两个麦克风接收到的信号的比值,近似等于这个时频点上的声源到两个麦克风的衰减参数的比值。因此,为了便于后续处理,可将所有时频点分为两类,每一类中麦克风接收到的信号向量来自同一个声源。
[0125]
此外,为了消除幅度以及相位失真,在基于时频点对频域信号进行分类之前,需要对频域信号的所有时频点进行归一化处理,公式如下:
[0126][0127]
再进行频率归一化以消除相位影响:
[0128][0129]
再对上述无回声模型向量也进行归一化处理:
[0130][0131]
其中,麦克风接收到的信号经过相位归一化后的第一个向量相位是0。β为常量,取值由实验确定,通过合理取值来调节相位和幅度衰减在聚类中的相对重要程度。麦克风接收信号的所有时频点都经过上述两步归一化处理之后,可以采用均值聚类算法进行分类,公式如下:
[0132][0133][0134]
其中,argmin为求使目标函数取最小值时的变量值的函数,c(f,τ)为聚类后的类中心,为全称量化符号,x(f,τ)为麦克风接收到的频域信号,为归一化处理后的无回声模型向量,n
k
为第k个声源的时频点个数,与频率无关,k为声源的个数,f为频带,τ为帧。
[0135]
由此可以计算出第k个声源到第j个语音输入设备的传输时延参数和衰减参数,公式如下:
[0136][0137]
其中,τ
jk
为第k个声源到第j个语音输入设备的传输时延参数,λ
jk
为第k个声源到第j个语音输入设备的传输衰减参数,k为声源的个数,j为语音输入设备的个数,c
jk
为聚类后的类中心,β为常量,arg为求参数的函数。
[0138]
然后,将该时延参数和衰减参数代入上述混合矩阵a(f)的无回声模型向量的计算公式中,得到各频带的无回声模型向量,也即混合矩阵a(f)中的各元素,从而获得混合矩阵a(f),再对混合矩阵a(f)求逆,获得初始分离矩阵,公式如下:
[0139]
w
_initial
(f)=a
‑1=[c1(f),c2(f)]
‑1[0140]
其中,w
_initial
(f)为初始分离矩阵,a为混合矩阵,c1(f)和c2(f)为混合矩阵中的各元素。
[0141]
最后,根据麦克风接收到的频域信号和初始分离矩阵,采用频域ica求解公式,求解获得初始分离信号,公式如下:
[0142]
y(f,τ)=w(f)x(f,τ)
[0143]
其中,y(f,τ)为初始分离信号,w(f)为初始分离矩阵,x(f,τ)为麦克风接收到的频域信号。
[0144]
初始分离矩阵的得出为ica迭代找到了一个合适的初始点,可以加快ica的收敛速
度。应用聚类算法把麦克风接收到的信号的时频点按声源的不同进行分类,可以解决输出分离信号的次序不确定性问题。但此时仍有幅度不确定问题,因此可以采用回射投影法将初始分离信号拆成两部分,回射投影法的具体公式为:
[0145][0146]
其中,为投影后的第一初始分离信号向量,m表示第m个声源传输到两个麦克风的信号成分,f为频带,τ为帧,为初始分离矩阵的逆矩阵,u
m
(f,τ)为第一初始分离信号。
[0147]
获得的第一初始分离信号具体为:
[0148]
u1(f,τ)=[y1(f,τ),0]
t
[0149]
u2(f,τ)=[0,y2(f,τ)]
t
[0150]
其中,u1(f,τ)和u2(f,τ)为第一初始分离信号,y1(f,τ)和y2(f,τ)为第一初始分离信号向量,f为频带,τ为帧,[]
t
为转置矩阵。
[0151]
以上算法得到了每个频带的初始分离矩阵,有的初始分离矩阵不能对频带信号进行很好的分离,一方面,是因为无回声模型的假设,没有考虑反射、回声的影响。另一方面,语音信号的能量分布较为集中,呈现出稀疏特性,这就决定了有的频带ica处理的效果不会很理想,由此接下来会对第一初始分离信号进行划分。
[0152]
利用正交镜像滤波器组的分析滤波器组将第一初始分离信号均匀划分为8个子带。在每个子带内,利用基于稀疏分析的频域ica算法得到各子带的分离信号,再将各子带的分离信号通过一组综合滤波器组处理,重建出完整的时域分离信号,这就是子带ica的基本原理。ica的求解公式为:
[0153][0154]
其中,s1(k;n)和s2(k;n)分别表示第k级子带分离的声源1的分离信号和声源2的分离信号,y1(k;n)和y2(k;n)分别表示每个第一初始分离信号中,第k级子带信号,w
11
(k)、w
12
(k)、w
21
(k)、w
22
(k)表示第k级子带的解混矩阵,该解混矩阵由初始分离矩阵拆分获得。
[0155]
由于语音信号的能量分布相对集中,由此合理地把第一初始分离信号划分为8个子带信号,只需对每个子带进行ica处理。故相比于针对每个频点做ica处理的方案,由于子带的数量相较于频点数量明显减少,因此能够准确确定各子带的分离信号的分离次序,也即改善了次序不确定性问题,进而有效提升了语音分离的准确性。此外,本申请在处理过程中仅需使用与子带数量相同的ica网络进行计算,从而大大减少了计算量,进而提升了语音分离的效率。
[0156]
实施例四
[0157]
图6为本申请提供的语音分离装置的结构示意图,如图6所示,本实施例提供的语音分离装置包括:获取模块41、计算模块42、拆分模块43以及重建模块44。其中,获取模块41,用于根据多个语音输入设备采集的语音信号,混合获得语音混合信号;其中,所述语音输入设备的数量与预设的各声源的数量一致。计算模块42,用于基于频域独立成分分析算法,对所述语音混合信号进行计算,得到初始分离矩阵和初始分离信号。拆分模块43,用于采用回射投影法,将所述初始分离信号拆分为多个第一初始分离信号,并对每个第一初始
分离信号进行均匀划分,获得多个子带,所述第一初始分离信号与所述各声源的数量相同。所述拆分模块43,还用于将所述初始分离矩阵拆分获得多个解混矩阵,所述解混矩阵的个数为第一初始分离信号个数的平方。所述计算模块42,还用于根据所述多个子带和所述多个解混矩阵,基于独立成分分析求解方法,获得各子带的分离信号,每个子带的分离信号包括所述各声源的分离信号。重建模块44,用于对每个声源在各子带中的分离信号进行重建处理,获得所述各声源的语音信号。
[0158]
本实施例提供的语音分离装置,基于频域ica算法,对语音混合信号进行计算,得到初始分离矩阵和初始分离信号,再将初始分离信号拆分为多个第一初始分离信号,并对每个第一初始分离信号进行均匀划分,获得多个子带,同时将初始分离矩阵拆分获得多个解混矩阵,根据多个子带和多个解混矩阵,基于ica求解方法,获得各子带的分离信号,对每个声源在各子带中的分离信号进行重建处理,获得各声源的语音信号。也就是说,在本申请实施例中,将第一初始分离信号均匀划分为多个子带,只需对每个子带进行ica处理。故相比于针对每个频点做ica处理的方案,由于子带的数量相较于频点数量明显减少,因此能够准确确定各子带的分离信号的分离次序,也即改善了次序不确定性问题,进而有效提升了语音分离的准确性。此外,本申请在处理过程中仅需使用与子带数量相同的ica网络进行计算,从而大大减少了计算量,进而提升了语音分离的效率。
[0159]
可选实施方式中,所述计算模块42,还用于将所述语音混合信号进行短时傅里叶变换转换为频域信号,并采用均值聚类算法,基于时频点对所述频域信号进行分类。根据聚类后的类中心,计算获得所述各声源到所述各语音输入设备的时延参数和衰减参数。针对每个语音输入设备,根据各声源到该语音输入设备的时延参数和衰减参数,计算获得混合矩阵中的各向量,以获得混合矩阵。对所述混合矩阵进行求逆处理,获得所述初始分离矩阵。根据所述频域信号和所述初始分离矩阵,基于频域独立成分分析求解方法,求解获得所述初始分离信号。
[0160]
可选实施方式中,所述语音分离装置,还包括:处理模块45,用于对所述频域信号的所有时频点进行归一化处理。
[0161]
可选实施方式中,所述拆分模块43,还用于采用正交镜像滤波器组的分析滤波器组,对每个第一初始分离信号进行均匀划分,获得多个子带。
[0162]
可选实施方式中,所述重建模块44,还用于采用综合滤波器组,对每个声源在各子带中的分离信号进行重建处理,获得所述各声源的语音信号。
[0163]
可选实施方式中,所述语音分离装置,还包括:提取模块46以及输出模块47。其中,提取模块46,用于从所述各声源的语音信号中,提取出目标声源的语音信号。输出模块47,用于将所述目标声源的语音信号输出至对应的目标扬声器。
[0164]
需要说明的是,本实施例提供的语音分离装置执行的技术方案和效果可以参见前述方法实施例的相关内容,在此不再赘述。
[0165]
实施例五
[0166]
图7为本申请的电子设备的结构示意图,如图7所示,本申请还提供了一种电子设备500,包括:存储器501和处理器502。
[0167]
存储器501,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机执行指令。存储器501可能包含高速ram存储器,也可能还包括非易失性存储器(non

volatile memory),例如至少一个磁盘存储器。
[0168]
处理器502,用于执行存储器501存放的程序。
[0169]
其中,计算机程序存储在存储器501中,并被配置为由处理器502执行以实现本申请任意一个实施例提供的语音分离方法。相关说明可以对应参见附图中的步骤所对应的相关描述和效果进行理解,此处不做过多赘述。
[0170]
其中,本实施例中,存储器501和处理器502通过总线连接。所述总线可以是工业标准体系结构(industry standard architecture,简称为isa)总线、外部设备互连(peripheral component,简称为pci)总线或扩展工业标准体系结构(extended industry standard architecture,简称为eisa)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0171]
实施例六
[0172]
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行以实现本申请任意一个实施例提供的语音分离方法。
[0173]
实施例七
[0174]
本申请实施例还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现本申请任意一个实施例提供语音分离方法。
[0175]
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0176]
作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
[0177]
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
[0178]
用于实施本申请的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程语音分离装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
[0179]
在本申请的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计
算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd

rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
[0180]
此外,虽然采用特定次序描绘了各操作,但是这应当理解为要求这样操作以所示出的特定次序或以顺序次序执行,或者要求所有图示的操作应被执行以取得期望的结果。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本申请的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实现中。相反地,在单个实现的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实现中。
[0181]
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求书指出。
[0182]
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求书来限制。
再多了解一些

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

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

相关文章

  • 日榜
  • 周榜
  • 月榜