首页> 中国专利> 双耳间距下基于频点选择的快速语音盲源分离方法

双耳间距下基于频点选择的快速语音盲源分离方法

摘要

本发明公开了双耳间距下基于频点选择的快速语音盲源分离方法,首先分析了将混合信号协方差矩阵行列式作为频点选择标准所存在的两个问题并提出了解决方案。提出初选方案选择一些频点进行频域ICA和排序,再通过频点筛选确定最终选择的频点和未选频点。选择频点上进一步解决幅值不确定性问题完成分离。未选频点利用选择频点上分离矩阵提取的相对混合参数构建分离矩阵完成分离。初选方案和频点筛选方案二次选择过程能够选出分离性能较好的频点。未选频点的分离算法具有不限制麦克风距离、提取相对混合参数的频点限制在不会发生空间混叠的频率范围内和相对衰减参数不受幅值不确定性问题的影响的特点。

著录项

  • 公开/公告号CN106057210A

    专利类型发明专利

  • 公开/公告日2016-10-26

    原文格式PDF

  • 申请/专利权人 山东大学;

    申请/专利号CN201610517794.8

  • 申请日2016-07-01

  • 分类号G10L21/0232(20130101);G10L21/0272(20130101);G10L21/0208(20130101);

  • 代理机构37221 济南圣达知识产权代理有限公司;

  • 代理人张勇

  • 地址 250061 山东省济南市历下区经十路17923号

  • 入库时间 2023-06-19 00:43:59

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-05-10

    授权

    授权

  • 2016-11-23

    实质审查的生效 IPC(主分类):G10L21/0232 申请日:20160701

    实质审查的生效

  • 2016-10-26

    公开

    公开

说明书

技术领域

本发明涉及一种双耳间距下基于频点选择的快速语音盲源分离方法。

背景技术

鸡尾酒会问题指的是在喧闹的宴会上,我们如何从许多正在说话的人中找到目标对象,即如何仅从由一些未知的声源线性混合得到的声音中分离出特定的某些声源或者所有声源。盲源分离(Blind source separation,BSS)是从混合声音中分离出原始声源信号的技术,被用来解决鸡尾酒会问题。这项技术从上世纪90年代开始受到关注,到现在已经有上千篇文献阐述了这方面的研究工作。BSS在很多领域中解决分离信号问题上得到了广泛应用,例如语音识别中的语音增强、通信领域、心电信号和脑电信号的分析。

BSS是一个非常有挑战性的任务,因为声源的特性未知,在实际环境中声源的混合过程可能一直在变化,接收信号的麦克风可能会对混合声音产生非线性作用以及噪声的存在,使问题变得非常复杂。为了简化问题,传统BSS对于信号的特性和混合过程做出了一些假设,最常用的假设是参与混合的未知声源是统计独立的,最多有一个声源概率分布是高斯分布,混合过程是线性、无噪声的以及混合过程变化很慢等。基于这些假设的很多BSS技术都获得了很好的分离效果,但是在实际环境中,这些假设中有一些是无法满足的,限制了BSS技术的应用。因此后续有很多研究都集中在放松传统BSS假设条件上。

虽然目前BSS的研究已经在基本假设方面有了一定的放松,例如噪声叠加、欠定BSS(声源数目大于接收麦克风的数目)等方向的研究在这些年都有了很大的发展,但是一些BSS算法的复杂度较高,会带来相对较高的功耗,在手持移动设备、助听器等低功耗的应用中受到限制。例如,在助听器中,BSS可用来进行双耳线索重建来帮助听损患者解决在多源场景下理解语音所出现的困难,另外在噪声环境下还可以用来进行语音增强。如果想将BSS应用到助听器中需要选择低复杂度的算法。

混响环境下分离卷积混合信号一种常用的算法是频域盲源分离算法(Frequency domain independent component analysis,FDICA)。该算法的复杂度较高,如果要应用到助听器中,需要降低复杂度。该算法首先将混合信号变换到频域,其次在每个频点上采用独立成分分析(Independent component analysis,ICA),ICA迭代更新通常需要几百次,再解决ICA固有的两种不确定问题,最后将频点上的分离信号逆变换到时域。在整个过程中,算法的复杂度集中在所有频点的迭代更新上。因此为了实现降低算法复杂度的目标,对于传统FDICA,在频域迭代方面做出改进是一个可行的方向,其中显而易见减小迭代的频点数目能够大大降低算法的复杂度,减少运行时间。

另一方面,声音能量集中分布在4kHz以下,4kHz以上包含极少的信息。多个声源同时活动的情况下,由于稀疏性,语音能量集中分布的范围会进一步缩小,主要集中在低频上。一些文章中分析了不同数目的声源混合后,语音的平均频谱能量分布和累积能量分布,指出语音信号的能量集中在有限的频点上,而通常在这些频点上的信噪比要比其他频点上高,能够预见获得更好的分离效果。以上两方面是频点选择FDICA算法的动机。

频点选择FDICA算法选取一定数目的频点进行ICA,利用选择频点上提取的参数完成未选频点的分离工作,具有低复杂度、快速的特点。目前的算法都是针对小间距麦克风,而在助听器中,两个麦克风间距通常为dmic=0.15m。当现有的算法用到这一间距的麦克风时,会产生以下问题:

(1)小间距麦克风条件下,声信号从同一声源到两个麦克风所经历的衰减和延迟近似是相同的,因此建立在这一模型上的频点选择标准和未选频点的分离算法都无法直接应用。

(2)麦克风间距增大时,高频率的频点上可能发生空间混叠,从这些频点的分离矩阵提取的延迟参数或者TDOA是不准确的,导致未选频点的分离算法不能正常工作。

发明内容

本发明为了解决上述问题,提出了一种双耳间距下基于频点选择的快速语音盲源分离方法,应用于无混响环境下。本发明提出的初选方案选择一些频点进行ICA和完成排序,再通过频点筛选将频点分为选择频点和未选频点。选择频点上进一步解决幅值不确定性问题完成分离。未选频点利用选择频点上分离矩阵提取的相对混合参数构建分离矩阵完成分离。初选方案和频点筛选方案二次选择过程能够选出分离性能比较好的频点。未选频点的分离算法具有不限制麦克风距离、提取相对混合参数的频点限制在不会发生空间混叠的频率范围内和相对衰减参数不受幅值不确定性问题影响的特点。

为了实现上述目的,本发明采用如下技术方案:

一种双耳间距下基于频点选择的快速语音盲源分离方法,包括以下步骤:

(1)对接收到的信号进行短时傅里叶变换,根据提出的频点初选方案将所有频点分为初选频点和未选频点;

(2)采用固定点算法(Fast Fixed Point,FastICA)和信息最大化算法(Information Maximization,Infomax)相结合的方法对初选频点进行分离,然后利用分离矩阵提取的到达时间差(Time difference of arrival,TDOA)解决次序不确定性问题;

(3)从初选频点的分离矩阵提取相对衰减和相对延迟参数,获得四个相对混合参数集合,分别去除四个集合中的离群点,并将对应的频点从初选频点集合中移入未选频点集合,剩下的频点构成最终的选择频点集合,选择频点继续解决幅值不确定性问题完成分离;

(4)未选频点上将估计的相对混合参数带入推导的公式获得分离矩阵,将所有频点上的分离信号进行逆傅里叶变换后重构获得分离信号。

所述步骤(1)中,频点初选方案将频点上混合信号协方差矩阵的行列式作为选择标准,在每个频点上计算标准值,标准值除以最大值进行归一化,定义归一化的标准值为r,将所有频点上的r从大到小排序,设定阈值ε,选择r大于等于ε的频点。

所述步骤(1)中,频点初选方案根据阈值选择频点时,同时需要判断频点是否发生空间混叠,计算不发生空间混叠的频率上限。如果选择的频点超出该频率上限,则舍弃该频点。最终所有的频点分成两个集合:初选频点集合Hpreliminary和未选频点集合Hunselected

所述步骤(1)中,阈值ε的确定需要考虑对初选频点数目和算法性能的影响。

所述步骤(2)中,固定点算法获得的分离矩阵作为信息最大化算法处理时的初值,利用信息最大化算法根据该初值迭代获得更准确的分离矩阵。其中Infomax算法采用改进的尺度infomax,该算法收敛速度快,迭代在100次以内收敛。

所述步骤(3)中,从初选频点的分离矩阵中提取相对混合参数,获得四个相对混合参数集合,然后对四个相对混合参数集合分别采用箱线图去除离群点。

所述步骤(4)中,未选频点获得的分离信号次序与选择频点相同。

所述步骤(4)中,未选频点上得到的分离矩阵已经解决幅值不确定性问题。

本发明的工作原理为:

(1)首先分析了基于混合信号协方差矩阵行列式的频点选择标准所存在的两个问题,一是选择的频点可能发生空间混叠,二是会选到分离性能不好的频点。对于第一个问题,在采样率固定的情况下,麦克风间距增加到一定值以后,在高频上会发生空间混叠。针对这个问题,在已知麦克风最大间距的前提下,本发明提出频点初选方案,选择频点时舍弃发生空间混叠的频点。所有频点分为两个集合:初选频点集合和未选频点集合。

(2)针对第二个问题,本发明提出频点筛选算法:在初选方案所选频点进行ICA和完成排序后,从分离矩阵中提取相对混合参数(相对衰减和相对延迟),获得四个相对混合参数集合。在每个集合中根据集合元素与集合均值的差异,采用大数据离群点检测算法检测出离群点并从集合中去除,然后将对应的频点从初选频点集合移入未选频点集合。初选频点集合剩下的频点构成最终选择频点集合。所有频点最终分为两个集合:选择频点和未选频点集合。未选频点包含:标准值小的频点,发生空间混叠的频点,筛除的频点。

(3)本发明提出了未选择频点的分离算法,推导了在任意未选频点上根据估计的相对混合参数求分离矩阵的公式。

本发明针对现有选择标准进行一次频点选择可能选到分离性能不好的频点问题,提出采用初选和频点筛选的两次选择过程,并且相应地提出了新的未选频点分离方法,具有以下有益效果:

(1)本发明提出的无混响环境下频点选择FDICA算法只选取了部分频点进行ICA,在未选频点上利用估计的相对混合参数完成分离,与传统FDICA算法相比,计算复杂度大幅度减少,相应地运算时间大大降低,同时性能有了较大的提升;

(2)本发明可以通过选择合适的阈值,调节运行时间和性能,满足实际应用的需求;

(3)本发明不需要已知声源方向,所需的麦克风间距容易获得,便于实际应用。

附图说明

图1为本发明中传统FDICA流程图;

图2为本发明中所有频点和现有选择方案所选频点提取的相对衰减参数散布对比图;

图3为本发明中所有频点和现有选择方案所选频点提取的相对延迟参数散布对比图;

图4为本发明中r在频率上的分布示意图;

图5为本发明中模拟室内设置图;

图6为本发明中初选频点的BSS算法流程图;

图7(a)、图7(b)为本发明从Hpreliminary频点上分离矩阵提取的声源1相对衰减参数直方图;

图8(a)、图8(b)为本发明从Hpreliminary频点上分离矩阵提取的声源1相对延迟参数直方图;

图9(a)、图9(b)为本发明中去除离群点前后相对混合参数的散布图。

图10(a)-(d)为本发明中去除离群点前后相对混合参数估计的RMSE图;

图11为本发明中提出的频点选择FDICA算法流程图;

图12为本发明中初选频点数目随ε变化曲线图;

图13(a)-(d)为本发明中提出算法的性能和运行时间随ε变化曲线图;

图14(a)-(d)为与传统FDICA相比,本发明提出算法的性能提升和关键步骤对性能的影响;

图15为传统FDICA和本发明提出算法在频点上SIR比较图;

图16为传统FDICA和本发明提出算法的排序结果对比图;

具体实施方式:

下面结合附图与实施例对本发明作进一步说明。

盲源分离模型

在实际环境下,麦克风接收的信号除了直接路径达到的衰减信号还有多径反射过来的信号。信号从声源到麦克风传输的路径通常用有限长的混合滤波器来描述。定义si(n)是声源i发出的信号(1≤i≤M,M为声源数目),xj(n)是麦克风j接收到的信号(1≤j≤N,N为麦克风数目),aji(n)是从声源i到麦克风j的室内冲激响应,L为室内冲激响应的长度,xj(n)表示为:

xj(n)=Σi=1MΣl=1Laji(l)si(n-l)---(1)

在卷积混合的条件下,混合滤波器可能有几千节长,采用时域盲源分离方法,需要估计相应长度的解混合滤波器,算法会变得非常复杂。因此采用一定的变换,将信号变换到其他域以降低算法复杂度是卷积盲源分离常用的策略,采用的变换有短时傅里叶变换(Short Time Fourier Transform,STFT),小波变换等。

通常将信号变换到时频域,最常使用的变换是STFT,需要选择合适的帧长,在维持声源独立性的假设和包含全部混响时间中取得折衷。定义k代表频点,m代表帧,s(k,m)是声源信号向量,x(k,m)是接收到的信号向量。其中x(k,m)=[x1(k,m),…,xM(k,m)]T,s(k,m)=[s1(k,m),...,sM(k,m)]T。A(k)是频点k上的混合矩阵,假设声源和麦克风都是静止的,混合矩阵只与频率有关。STFT变换后混合过程用矩阵形式表示为:

x(k,m)=A(k)s(k,m) (2)

从式(2)可以看出频域每个频点上实际是一个瞬时混合的过程,因此在每个频点上可以采用瞬时混合常用的ICA算法。定义y(k,m)=[y1(k,m),...,yN(k,m)]T为分离信号向量,y(k,m)可以通过下式获得:

y(k,m)=W(k)x(k,m) (3)

其中W(k)是频点k上的分离矩阵,频域ICA目的是找到一个分离矩阵W(k),使分离信号尽可能独立。常用的ICA算法有FastICA、Infomax,需要将这些算法扩展到复数域后在频域中使用。本发明中传统FDCIA中频点ICA采用FastICA和Infomax相结合的算法,将FastICA获得的分离矩阵W作为Infomax算法迭代中分离矩阵的初值,该算法比单独使用Infomax缩短了迭代时间,因为FastICA起了给定合适的初值作用。与FastICA相比,虽然算法时间有少量增加,但是性能有所提升。

不确定性问题

虽然ICA能够分离出独立的声源成分,但是分离得到的信号与原始声源信号相比存在幅值和次序的变化。频域ICA得到的分离矩阵满足下式:

W(k)A(k)=Π(k)Γ(k) (4)

其中∏(k)代表置换矩阵,Γ(k)代表对角阵。由于每个频点上Π(k)、Γ(k)两个矩阵不一定相同,因此导致了频域ICA两个固有的问题:次序不确定性和幅值不确定性。次序不确定性指的是每个频点上分离得到的同一通道信号成分可能不属于同一声源。幅值不确定性指的是每个频点上分离得到的同一声源信号成分的缩放程度可能不一样,相当于在时域上对声源进行了滤波。

次序不确定性

传统FDICA和提出的频点选择FDICA采用相同的排序算法,考虑到选择的频点可能不连续,不能使用相邻频率相关性的方法,因此两者均采用基于TDOA的排序算法。传统FDICA采用对估计的混合矩阵列向量聚类并结合衰减参数模型估计的排序算法。

幅值不确定性

假设已经解决置换问题,第i个通道输出第i个声源成分,根据最小失真原则(Minimal distortion principle,MDP)解决幅值不确定性问题,需要对W(k)做以下变换:

Wscaled(k)=diag(W-1(k))W(k)>

其中(·)-1是对矩阵求逆或者伪逆,diag(·)是只保留矩阵的主对角元素。

以上介绍了传统FDICA算法的整个过程,图1为算法的流程示意图。下面从三个方面详细介绍本发明提出算法:提出的频点初选方案,初选频点的BSS,未选频点的BSS。

提出的频点初选方案

由于现有的频点选择方案是针对小间距麦克风的,当该方案用于无混响下间距为dmic的麦克风时,需要确认是否能够选到目标频点。

现有的频点选择方案在麦克风间距为dmic下的可行性分析

在小间距麦克风的场景下现有的频点选择方案将混合信号协方差矩阵的行列式作为选择标准,然后将标准值从大到小排序,选择一定数目的排在前面的频点。将混合信号协方差矩阵的行列式作为选择标准是因为它能够反映活动声源的数目和声源信号的功率情况。在不限定麦克风间距的情况下,首先分析该选择标准是否仍然能够反映这些信息。本发明假设有两个声源和两个麦克风。定义k为频点下标,频点k上混合信号的协方差矩阵Rx(k)为:

Rx(k)=Em{x(k,m)xH(k,m)}>

Rx(k)的行列式为:

detRx(k)=det{x(k,m)xH(k,m)}

=det{A(k)s(k,m)s(k,m)HAH(k)}

=detRs(k)det{AH(k)A(k)}>

其中Rs(k)是声源信号的协方差矩阵,如下式:

Rs(k)=σ1(k)ββ*σ2(k)---(8)

其中σi(k)是声源i的功率,β是声源之间的协方差,反映了声源的相关性,通常比较小。A(k)是混合矩阵:

A(k)=a11e-jw(k)τ11a12e-jw(k)τ12a21e-jw(k)τ21a22e-jw(k)τ22---(9)

其中aji是信源i发出的信号到麦克风j所经历的衰减,τji是对应的延迟(i,j=1,2)。将公式(8)和(9)带入(7)可得到:

det>Rx(k)=[a112a222+a122a122-2a12a11a22a21cos>w(k)(τ12-τ22+τ21-τ11)](σ1(k)σ2(k)-|β|2)=[(a11a22-a12a21)2+2a12a11a22a21(1-cos>w(k)(τ12-τ22+τ21-τ11))](σ1(k)σ2(k)-|β|2)---(10)

其中ω(k)是频点k对应的角频率。在同一次实验中,式(10)中只有σ1(k)σ2(k)-|β|2和1-cosω(k)(τ12222111)这两项随频点k变化,即说明这两项在频点选择中发挥了作用。σ1(k)σ2(k)-|β|2这一项中σ1(k)σ2(k)相对|β|大很多,这一项更多地反映了声源功率信息,在只有一个声源活动的情况下,detRx(k)近似为0。1-cosω(k)(τ12222111)这一项,视作权重因子,起到了限制选择频点范围的作用。现有选择方案选择标准值大的频点,即倾向于选择两个信源功率乘积比较大的频点,这与能量大的频点预期有较好的分离性能是一致的,因此是合理的。

其他实验条件相同在麦克风间距发生变化的情况下,频点k上σ1(k)σ2(k)-|β|2保持不变,因此频点k上选择标准包含的声源功率信息是不变的。但是aji、τji的值发生变化。与aji有关的两项,(a11a22-a12a21)2、a11a22a12a21的取值虽然发生变化,但是在同一次实验中这两项在所有频点上的取值都是相同的,因此aji的变化不影响频点的选择。与τji有关的1-cosω(k)(τ12222111)这一项,由于出现ω(k),在同一次实验中该项取值随频点k变化。随麦克风间距的变化,τ12222111产生的变化使权重因子随k变化的曲线发生改变,因此τji的变化影响频点的选择。以上分析了其他实验条件相同,随着麦克风间距的变化,选择标准包含的声源功率信息没有发生变化,权重因子的变化对频点选择产生了影响。

在同一次实验中可以看到权重因子随k变化的规律是一条正弦曲线。假设抽样频率固定,在小间距麦克风的条件下,在一半抽样频率之内,曲线可能不到一个周期。随着麦克风间距增大,曲线可能出现多个周期。因此权重因子限定的频点范围发生了变化。

通过上面的分析,在不限制麦克风间距的条件下,虽然权重因子限定的频点范围有所变化,选择标准仍能描述活动声源的数目和声源功率情况,并且选择标准值大的频点是合理的。因此现有选择方案可以用于麦克风间距为dmic的情况。

现有选择方案所选频点的分离性能及存在的问题

下面通过实验分析现有选择方案所选频点的分离性能,分离性能采用频点上提取的相对混合参数与实际值的差异来反映。相对混合参数的提取过程如下,假设在频点k,已获得分离矩阵W(k),对分离矩阵求逆(如果W(k)不是方阵,则求广义逆),获得估计的混合矩阵:

A~(k)=inv(W(k))=a~11e-jω(k)τ~11a~12e-jω(k)τ~12a~21e-jω(k)τ~21a~22e-jω(k)τ~22

a~i(k)=a~2i/a~1i

τ~i(k)=τ~2i-τ~1i---(11)

其中是估计的混合矩阵,是估计的声源i发出的信号到麦克风j所经历的衰减,是估计的相应延迟。为频点k上估计的声源i到麦克风的两条路径上的相对衰减参数,为相对应的延迟参数。由于相对混合参数是从频点上估计的混合矩阵中提取,因此这些参数与实际值的差异能够反映ICA算法的性能。

图2是实验的模拟室内设置。音响旁边的数字代表不同的声源位置。为了标注,图中将麦克风的间距画大了。实验中用到的所有语音信号都是从VoxForge语音库中获得。该语音库是一个开放语音库,允许公众读取指定的句子并上传。室内冲激响应通过无混响模型产生。将纯净的语音信号和室内冲激响应卷积可以获得混合信号。频域采用FastICA和Infomax结合的ICA算法,通过实验对比所有频点和现有选择方案所选频点的分离性能,选择频点的数目为64。表1给出了实验配置参数表。

表1实验配置参数表

图3(a)、(b)显示了一次实验中所有频点和选择频点提取的相对混合参数散布图。要注意所有频点包含初选频点。从图中可以看到全部频点上提取的相对混合参数是比较分散的。图3(a)、(b)两幅图中,大部分选择频点提取的相对混合参数是集中分布在实际混合参数周围的,说明从大部分选择频点的分离矩阵中提取的相对混合参数是比较准确的,这些频点上分离性能较好,验证了现有选择方案用于麦克风间距为dmic条件下的可行性。但是其中有部分选择频点提取的参数出现了与实际参数偏差较大的情况。并且图3(b)中与实际参数距离较大的一些点呈现出带状分布。接下来会针对以上两个现象,进行原因分析。

现有选择方案存在问题的原因分析

图3(a)、(b)中部分参数点与实际参数距离较远,对应的频点分离性能较差。通过上面的分析可以看到,选择标准虽然包含了信源功率的信息,而影响ICA算法的其他因素如声源之间的独立性,未能在标准中得到很好的体现。选择标准项σ1(k)σ2(k)-|β|2虽然包含了一定的相关性,但是由于通常σ1(k)σ2(k)相对|β|来说大得多,相关性信息的大小变化很可能被功率变化掩盖掉。

从声源独立性方面进行分析,虽然ICA的基本假设是声源独立性,但是由于不合适的样本点存在,声源之间还是存在一定的相关性。ICA算法是朝着使声源之间尽可能独立的方向进行迭代的。因此如果在一些频点上声源相关性比较大,会降低ICA算法的性能,甚至导致ICA不能正常工作。下面的实验分析了频点上声源之间的相关性对于ICA性能的影响。由于在频域相关系数为复数,需要对相关系数取绝对值。实验采用表1的实验配置和图2的室内布置。为了能够直观地显示出每个频点上的分离效果,采用信干比(Signal to interference ratio,SIR)来衡量算法性能。信干比来是衡量算法分离性能的常用指标,指的是某一通道输出信号中目标信号成分和干扰信号成分的能量比。假设已经完成了置换,定义G(k)=W(k)A(k),频点k上输出通道i的输出信号信干比SIRi(k)定义如下:

SIRi(k)=10log10<|gii(k)si(k,m)|2>m<Σli|gil(k)sl(k,m)|2>m---(12)

其中gii(k)是G(k)对角线上的元素,gil(k)是矩阵G(k)第i行第l列的元素。式(12)分母是通道i分离信号中来自声源i的频率成分能量,分子是通道i分离信号中来自除声源i以外声源的频率成分能量。考虑到频点数目较多,为了更加清楚直观,只选取了此次实验中选择标准值比较大的1-100频点区域显示。这样做是合理的,因为选择方案选择取值大的频点。另外由于相关系数与SIR值相差较大,因此将SIR和选择标准值都除以最大值进行了归一化。

从图4可以看到原始声源之间的相关系数和分离信号之间相关系数相差大的频点,SIR相对周围频点都比较低。图中频点16、31、44、46就是这种情况。从选择标准来看,这四个点有可能会被选到。通过以上分析可知,根据现有选择方案所选的频点,由于某些频点上声源之间的相关性较大,有可能出现分离性能不好的情况,导致从分离矩阵提取的相对混合参数不准确,出现图3(a)、(b)中估计的相对混合参数与实际值相差较大的情况。这里还需要说明,有可能存在其他的原因导致选到分离性能不好的频点,这里只从独立性角度做简单分析。

除此之外,图3(b)中,一些偏离实际参数较远的参数点呈现带状,这是因为高频率处两个麦克风接收到来自同一声源的信号之间相位差会超过π,出现相位缠绕导致的。相位缠绕是由空间混叠引起的。类似于时域奈奎斯特频率,同样存在最小的空间采样率。线性阵列要求阵元间距小于研究波长范围内最小波长的一半,以避免在方向图中出现栅瓣。如果间距超过这个值,就会发生空间混叠。

提出的频点初选方案

现有选择方案虽然是合理的,但选择频点数目是固定的,没有考虑选择标准值分布情况。不同的实验设置下,选择标准值的分布会发生变化,固定的频点数目无法体现这种变化。因此提出的选择方案在现有选择方案上做出了一些更改,选择频点的数目是可变的,并解决了空间混叠的问题。由于可能选到分离性能不好的频点这一问题留在后续解决,因此选择方案为初选方案。

选择标准值的分布

首先通过实验分析所有频点上选择标准值detRx(k)的分布情况。采用表1的实验配置和图2的模拟室内设置,每种声源位置组合下进行200次实验,共进行800次实验。根据式(6)计算每个频点上的r。由于不同的语音组合声源能量不同,标准值会相差比较大,所以除以最大值进行归一化便于比较。定义r为归一化后的选择标准值。表2给出了综合所有实验结果后r大于等于某一值的平均频点数目占总数的百分比。表3给出了r大于等于0.01的频点在各频率区间分布的百分比(该频率区间r大于等于0.01的频点数目除以r大于等于0.01的频点总数)。图5显示了一次实验中r在频点上的分布情况。

表2r大于等于特定值的平均频点个数占总数的百分比表

表3r>=0.01的频点在各频率区间分布的百分比表

(2,3)(2,4)(2,5)(1,5)0-1kHz97.19%96.64%92.75%81.06%1kHz-2kHz2.61%3.02%7.10%17.39%2kHz-3kHz0.12%0.18%0.09%1.47%3kHz-4kHz0.08%0.07%0.06%0.04%4kHz以上0.00%0.09%0.00%0.04%

由表2可知大于等于0.01的r不足10%。由表3可以看出较大的r(r>0.01),大部分分布在1kHz以下,这与通常声信号的能量集中分布在低频的特性是一致的。图5显示其中一次实验,r在1kHz外出现了一些小的峰值,反映了声信号在低频(低于1kHz)外可能有较大的能量。综上,可以看到较大的r,集中分布在1kHz以下的频点,在其他频率区域r通常较小。考虑r的分布,本发明初选方案为:设定阈值ε,r大于等于ε的频点被选中。该种选择方法能够选择r较大的频点,同时选择频点的数目随r的分布情况变化。

空间混叠

本发明后续需要用到从混合矩阵提取的相对混合参数,需要考虑图3(b)所显示的选择频点可能发生的空间混叠问题。首先确定不会发生空间混叠的频率上限fv,dmax是麦克风阵列中任意两个麦克风最大的间距,c是声速,fv按照下式求取:

fv=c2dmax---(13)

麦克风间距为dmic条件下,fv=1143.3Hz,对应的频点为k=73。由表3可以看到,超出fv的频率范围r通常较小,即根据提出的选择方案,选择频点中频率超出fv的频点数目会很少。因此当选到频率大于fv的频点时,舍弃这些频点是可行的。

频点初选方案

由于只解决了空间混叠问题,本发明的频点选择方案为初选方案,后续还会解决选到分离性能不好频点的问题。频点初选方案如下:

1.在每个频点上计算混合信号协方差矩阵的行列式,归一化之后按照从大到小排序,得到排序后的r序列。

2.根据ε值,选择r大于等于ε的频点,若频点的频率大于fv则舍弃该频点,得到初选频点集合Hpreliminary和未选频点集合Hunselected

ε的取值影响选择频点的数目,进一步影响到算法复杂度降低的效果和整体的性能。ε的取值会在实验部分介绍。

初选频点的BSS算法

图6是初选频点的BSS算法流程图。在这些频点上采用与传统FDICA相同的ICA和排序算法。为了解决选到分离性能不好的频点问题,本发明提出频点筛选算法,检测出分离性能不好的频点并从Hpreliminary去除,获得最终选择的频点集合Hselected。Hselected中的频点进一步解决幅值不确定性问题完成分离工作。舍弃的频点则并入Hunselected中,采用未选频点的分离算法重新进行分离。下面首先介绍频点筛选算法。

频点筛选算法

本发明提出频点筛选算法检测Hpreliminary中分离性能不好的频点。从图3(a)、(b)中可以看到,从图中可以看到大部分参数点分布集中,少数参数点偏离集中区域较远。离群点定义为:离群点是一个观测值,它与其他观测值的差别如此之大,以至于怀疑它是由不同的机制产生的。可以将这些偏离较远的参数点视作离群点,通过离群点检测算法检测出来并从集合中去除,然后从Hpreliminary去除对应的频点。以上是频点筛选算法的思想。

考虑混合参数分布情况是未知的以及低复杂度的要求,本发明选择了非参数方法中基于箱线图的离群点检测算法。以提取的声源1的相对混合参数为例,图7(a)、(b)画出了一次实验中从Hpreliminary中频点提取的相对混合参数直方图。从图中看到,Hpreliminary中频点提取的相对混合参数分布集中,属于单峰分布的数据,采用箱线图是合适的。

箱线图的原理如下:定义样本中位数为Q2,第一个四分位数和第三个四分位数分别为Q1,Q3,四分位距IQR=Q3-Q1。在区间[Q1-1.5×IQR,Q1+1.5×IQR]外的数据为适度离群点,在区间[Q1-3×IQR,Q1+3×IQR]外的数据为极端离群点。图8显示了对应于图7中相对混合参数的箱线图。从图8(a)、图8(b)中可以看到箱线图用一个箱子标出了Q1到Q3的范围,从箱子边缘到两条黑色线段之间的点为适度离群点,黑色线段以外的点是极端离群点,用+标出来。图7(a)、图7(b)和图8(a)、图8(b)结合起来可以看出,箱线图把距离集中分布区域以外的参数点检测出来了,即离群点。

本发明提出的基于箱线图的频点筛选算法如下:首先根据(11)式,从Hpreliminary中频点分离矩阵中提取四个相对混合参数,构成四个相对混合参数集合。对于这四个集合分别采用箱线图,检测出离群点后,将这些参数点从相应集合中去除,同时找到这些参数点对应的频点,将这些频点移入集合Hunselected。四个集合检测完成后Hpreliminary中余下的频点构成最终选择的频点集合Hselected。四个混合参数分开检测是因为从分离性能好的频点提取的四个混合参数应该都较准确。图9显示了一次实验中去除离群点前后相对混合参数的散布图,需要指出Hpreliminary包含Hselected

未选频点的BSS算法

本发明对未选频点的分离算法借鉴了一些文献中利用选择频点上提取的信息分离未选频点的思想。本发明利用分离矩阵提取的相对混合参数完成未选频点的分离,首先获得准确估计的相对混合参数,然后推导在任意未选频点根据估计的相对混合参数构建分离矩阵的公式,将估计的相对混合参数代入公式可获得未选频点的分离矩阵。该算法有三个特点:一是不限制麦克风距离,二是提取混合参数的频点限制在不会发生空间混叠的频率范围内,三是相对衰减参数不受幅值不确定性问题的影响。

混合参数估计的越准确,未选频点分离得越准确,由于未选择频点占了频点的大多数,因此为了保证整体算法的性能,应当设法提高相对混合参数估计的准确性。本发明将相对混合参数集合的均值作为相应参数的估计值。首先观察估计的混合参数与实际参数值的差异。图10(a)-(d)是参照表1和表2的实验条件,不同声源位置组合下各200次实验获得的频点筛选前后相对混合参数估计的均方根误差(Root mean square error,RMSE)。从图10(a)-(d)可知频点筛选后相对混合参数的估计值与实际参数值的均方根误差减小了很多,说明了频点筛选算法在筛选出分离性能不好的频点的同时,使相对混合参数的估计值向实际参数值靠近。

未选择频点的分离矩阵公式推导

采用估计的相对混合参数构建未选频点的分离矩阵完成分离工作,公式推导如下:

选择频点排序算法完成后第i个通道输出第i个信源成分,未选频点上的分离矩阵W(k)具有相同的置换顺序。假设A(k)可逆,A(k)的表达式参照式(9)。在未选频点上假设ICA收敛,W(k)可以表示为:

W(k)=Γ(k)A-1(k)=λ1(k)a22e-jω(k)(τ22-τ21)a11a22e-jω(k)(τ22-τ21+τ11)-a21a12e-jω(k)τ12-λ1(k)a12e-jω(k)(τ12-τ11)a11a22e-jω(k)τ22-a21a12e-jω(k)(τ12+τ21-τ11)-λ2(k)a21a11a22e-jω(k)(τ22-τ21+τ11)-a21a12e-jω(k)τ12λ2(k)a11a11a22e-jω(k)τ22-a21a12e-jω(k)(τ12+τ21-τ11)---(14)

其中λi(k)是对角阵Γ(k)第i行第i列元素。假设W(k)可逆,对W(k)取逆:

W-1(k)=A(k)Γ-1(k)=a11e-jω(k)τ11a12e-jω(k)τ12a21e-jω(k)τ21a22e-jω(k)τ221/λ1(k)001/λ2(k)=a11e-jω(k)τ11λ1(k)a12e-jω(k)τ12λ2(k)a21e-jω(k)τ21λ1(k)a22e-jω(k)τ22λ2(k)---(15)

将(14)、(15)带入(5)式,可得:

Wscaled(k)=11-a21a11a12a22e-jω(k)(τ12-τ22+τ21-τ11)-e-jω(k)(τ12-τ22)a22a12-a21a11e-jω(k)(τ12-τ22+τ21-τ11)-e-jω(k)(τ21-τ11)a11a21-a12a22e-jω(k)(τ12-τ22+τ21-τ11)11-a21a11a12a22e-jω(k)(τ12-τ22+τ21-τ11)---(16)

从上式可以看出,分离矩阵可以用相对混合参数表示。在选择频点上获得相对混合参数的估计值,带入(16)式可得未选频点上估计的分离矩阵:

W~scaled(k)=11-a1~a2~e-jω(k)(τ~1-τ~2)-ejω(k)τ~2a1~-a2~e-jω(k)(τ~1-τ~2)-e-jω(k)τ~11a1~-1a2~e-jω(k)(τ~1-τ~2)11-a1~a2~e-jω(k)(τ~1-τ~2)---(17)

如果选择频点排序算法完成后第i个通道输出第j(i≠j)个信源成分时,相应地从分离矩阵第i列提取的混合参数对应于信源j。在这种情况下未选频点上估计的分离矩阵:

W~scaled(k)=11-a1~a1~e-jω(k)(τ~2-τ~1)-ejω(k)τ~1a2~-a1~e-jω(k)(τ~2-τ~1)-e-jω(k)τ~21a2~-1a1~e-jω(k)(τ~2-τ~1)11-a2~a1~e-jω(k)(τ~2-τ~1)---(18)

式(18)可以转化为式(17),此时估计的相对混合参数的下标,不再对应于信源i,而是表示从估计的混合矩阵第i列提取的混合参数。该种条件下Wscaled(k)可以统一用式(17)进行表示。未选频点利用Wscaled(k)获得的分离信号次序与选择频点是相同的。

该公式对于麦克风的间距没有限制,对于选择频点连续或者不连续的情况都适用。另外估计的分离矩阵已经解决了幅值不确定性问题。图11为提出的频点选择FDICA算法整体流程图,虚框内是本发明改进的地方。

实验设置

所有的仿真是在CPU为Intel(R)Core(TM)i7-4770@3.40GHz,内存为16.0GHz的电脑上完成,软件平台是Matlab R2015b。

模拟室内设置如图2,在不同的声源位置组合下进行大量的实验。对语音库中获得的语音进行如下处理:用软件截取语音保证所有的语音长度为3s,去均值并且使一次实验中的两个语音具有相同的方差。将语音与室内冲激响应函数卷积,来模拟无混响环境下的混合过程。实验条件参考表1和表2。采用盲源分离算法性能评价工具箱,通过信号干扰比(Signal-to-interference ratio,SIR)、信号失真比(Signal-to-distortion ratio,SDR)来衡量算法的性能。定义starget,einterf,enoise,eartif为分离信号中的目标信号成分、来自其他声源的干扰成分、噪声、人工因素带来的误差。SIR为分离信号中目标声源和干扰成分能量比:

SIR=10log10||starget||2||einterf||2---(19)

SDR为目标信号与失真成分能量比:

SDR=10log10||starget||2||einterf+enoise+eartif||2---(20)

此外采用感知语音质量评价(Perceptual evaluation of speech quality,PESQ)来评价分离得到的语音质量,PESQ是专门用来模拟通信中主观语音质量测试的客观语音质量标准,考虑了人耳的听觉特性,使用感知模型来模拟人耳听觉的过程。采用PESQ是因为PESQ能较好地预测语音的总体质量和信号失真。PESQ值可以映射为平均意见得分(Mean opinion score,MOS)。

频点筛选阈值ε的选择

ε值对算法性能有重要的影响。ε值的选择要综合考虑复杂度降低的效果、r的分布情况以及整体算法的性能,选择频点的数目不能太多,算法复杂度降低的效果就会下降,后续去除性能不好的频点工作就会增加。同时选择频点的数目不能过小,过小的话对相对混合参数的估计可能不准确。

首先通过实验观察ε的取值对选择频点数目的影响,在不同声源位置组合下各200次实验,共进行800次实验。图12显示了在不同的ε值下,平均的初选频点数目占总数的百分比。图中ε从0.1减小到1e-5的过程中,初选频点数目变化相对较大。随着ε值减小到1e-11后,由于不发生空间混叠频率范围内的频点已经全部选中,ε值再减小,初选频点的数目不会再增加。此时初选频点数目占总数的14.23%。由于初选频点数目与复杂度降低的效果有直接的关系,可以预见到提出算法的复杂度会大大降低,运行时间大幅度减少。

ε的取值还需要考虑对分离性能的影响。通过实验分析不同ε值下的分离效果并确定ε的合适值。参考图12根据ε值变动时初选频点数目的变化来设定不同ε值。ε的范围限定在[1e-11,1e-1]之间,从该区间取得不同ε值。由于在[1e-11,1e-6]之间,ε变化导致的初选频点数目变化不超过1,在这个区间内ε取值个数不需要太多,在区间[1e-(m),1e-(m+1)](m=6,7,8,9,10)均取两个值。而在[1e-6,1e-1]之间ε的变化导致初选频点数目变化较多,在该区间ε取值需要是密集的,[1e-(m),1e-(m+1)]区间(m=1,2,3,4,5)ε取值个数与该区间ε变化导致的初选频点变化数目成正比,这里设定为4倍的关系。ε在所有区间段都是均匀取值。

dSIR、dSDR、dPESQ分别表示本发明提出算法与传统FDICA相比,在性能指标SIR、SDR、PESQ上的差异,算法复杂度降低的效果用运行时间下降的百分比来反映。图13(a)-(d)显示了算法的分离性能和运行时间随ε值的变化。从图中可以看到算法的分离性能随ε减小而增大,即选择的频点越多,算法的性能总体上越好,但是算法的运行时间也随之增加。从运行时间曲线可以观察到,ε取值较小的区间,运行时间变化的相对来说较大,这是因为r在这些区间里分布得比较密集。从兼顾运行时间和分离性能两方面来说,本发明中将ε设为0.01,运行时间为0.6s。在应用本发明时可以根据运行时间和性能的要求,设定合适的ε。

本发明提出的算法性能以及关键步骤对性能的影响

实验条件下ε=0.01时在四种声源位置组合下分别进行1000次实验下,比较传统FDICA和提出算法的性能、运行时间。同时实验还比较了提出算法中两个关键步骤频点筛选和筛除频点移入Hunselected对性能的影响。

图14(a)-(d)可以看出,与传统FDICA相比,提出的算法减小了运行时间,同时性能指标SDR、SIR、PESQ有了较大的提升。图中筛除频点不移入Hunselected,即意味着只对参数集合去除离群点,筛除频点继续保留在Hpreliminary中,集合Hpreliminary就是Hselected。图中显示了两个关键步骤对整体性能有重要的影响。虽然这两步处理增加了运行时间,但是可以看到增加的时间相对于总运行时间是相当小的。表5为4000次实验的平均结果。

表5实验结果比较表

不做筛选筛除频点不移入Hunselected本发明提出的算法dSIR(dB)1.033.027.08dSDR(dB)2.704.289.26dPESQ-0.11-0.0010.07时间(s)0.6050.6080.607运行时间下降百分比88.60%88.55%88.57%

算法性能提升的原因

实验结果表明本发明提出的算法在大幅降低算法运行时间的同时又提升了分离性能。以下从频域ICA和排序算法两个角度来分析性能提升的原因。

根据公式(12)计算频点上信号干扰比作为频点分离性能的衡量标准。图15为一次实验中传统FDICA和本发明提出的算法在频点上的SIR。由于前面指出4.7kHz的分离工作对分离算法的贡献很小,因此图中只显示了4.7kHz以下的频点,即频点下标为1-289。

可以看到SIR相同的频点是Hselected中的频点,SIR变化的频点是Hunselected中的频点。本发明在信源能量较大的频点上,提出算法的SIR与传统FDICA相比,保持相当的性能或者更好。这些频点上的分离工作对于整体性能的贡献很大。在信源能量比较低的频点上,虽然其中少数频点上提出算法的SIR比传统FDICA低,但是这部分频点的分离工作对于整体性能的贡献相对较小。因此,本发明提出的算法能够通过提升能量较大的频点上SIR来提升算法整体性能。

在排序算法上,虽然传统FDICA和本发明提出算法虽然使用相同的排序算法,但是排序效果是不同的。假设G(k)=W(k)A(k),k为频点下标,频点上通道i的排序结果对应于第i行最大值对应的下标j(i,j=1,2),用公式可以表示为:

permi=argmaxj|Gij(k)|---(21)

图16为传统FDICA和本发明提出算法根据(21)计算的频点上排序结果。从图中可以看到,传统FDICA因为一些频点的分离性能不好,这些频点上提取的TDOA不准确出现排序错误。本发明提出算法的排序结果没有出现错误,这是因为选择频点的分离性能较好,排序算法错误率低,而未选频点的次序与选择频点的排序结果是一致的,因此能够保证非常低的错误率。

综上所述,首先分析了基于混合信号协方差矩阵行列式的频点选择标准用于双耳麦克风间距下所存在的两个问题,一是选择的频点可能会发生空间混叠,二是会选到分离性能不好的频点。在采样率固定的情况下,麦克风间距增加到一定值以后,在某些频点上会发生空间混叠。对于这个问题,在已知麦克风最大间距的前提下,本发明提出频点初选方案,选择频点时舍弃发生空间混叠的频点,所有频点分成两个集合:初选频点集合和未选频点集合。

针对第二个问题,本发明提出频点筛选算法:在初选方案所选频点进行ICA和完成排序后,从分离矩阵中提取相对混合参数(相对衰减和相对延迟),构成四个相对混合参数集合。在每个集合中根据集合元素与集合均值的差异,采用大数据离群点检测算法检测出离群点并从集合中去除,然后将对应的频点从初选频点集合移入未选频点集合。所有频点最终分成两个集合:选择频点集合和未选频点集合。未选频点集合包含:标准值小的频点,空间混叠的频点,筛除的频点。

本发明然后提出了未选择频点的分离算法,推导了在任意未选频点上根据估计的相对混合参数构建分离矩阵的公式。

通过大量实验证明,本发明提出的快速算法与传统FDICA相比,在减少了约90%运行时间的情况下,SIR、SDR分别提升了7.08dB和9.26dB,即算法在减少运行时间的同时提升了分离性能。

上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号