一种基于麦克风阵列的声源定位方法及装置与流程

文档序号:14302765阅读:559来源:国知局
一种基于麦克风阵列的声源定位方法及装置与流程

本发明涉及语音信号处理领域,特别是涉及一种基于麦克风阵列的声源定位方法及装置。



背景技术:

目前市场上很多产品具有声源定位功能,例如视频会议系统、智能家电等产品。这些产品在处理语音信号时,通过麦克风阵列接收语音信号,定位声源的方位,进而可以仅获得该方位的声源发出的语音操作指令,从而可以过滤掉其他方位的噪音信号,提高语音信息接收的准确性。其中,麦克风阵列由若干个麦克风组成,用于接收语音信号。显然,在语音信号的处理过程中,声源定位是非常重要的。

现有技术中一般采用时延估计方法进行声源定位。具体地,可以通过麦克风阵列接收语音信号,并利用每个麦克风接收的语音信号相对于参考点接收的语音信号的时延,进而通过时延与方位角的映射关系确定声源位置,完成对声源的定位。

然而,上述声源定位方法,由于通过时延预估语音信号的幅度,无法确定波束指向性,所以只有当麦克风阵列的尺寸较大,每个麦克风之间距离较远时,每个麦克风接收的语音信号相对于参考点接收的语音信号的时延才会比较明显,从而获得较高的声源定位精度。而当麦克风阵列的尺寸较小,每个麦克风之间距离较近时,每个麦克风接收的语音信号相对于参考点接收的语音信号的时延将相差很小,这将导致声源定位精度较低。

但是,在实际应用中,由于受到安装平台或设计要求的限制,往往只能采用小尺寸的微型麦克风阵列。而在微型麦克风阵列条件下,无法采用时延估计法等现有方法对声源进行定位,不能满足实际应用的要求。



技术实现要素:

本发明实施例公开了一种基于麦克风阵列的声源定位方法及装置,用以解决现有声源定位方法无法在微型麦克风阵列条件下对声源进行定位的问题。技术方案如下:

第一方面,本发明实施例提供了一种基于麦克风阵列的声源定位方法,所述方法包括:

获取经所述麦克风阵列传输的语音信号,对所述语音信号进行分帧处理,并确定目标语音信号;

确定所述目标语音信号中的目标频率点,并根据所述目标频率点,针对所述麦克风阵列中的预设位置,分别确定各预设位置的声压信号;

根据所述各预设位置的声压信号和预设方位角,计算各预设方位角对应的波束响应值,并基于所述各预设方位角对应的波束响应值,确定声源方位角。

可选的,所述确定所述目标语音信号中的目标频率点的步骤包括:

将所述目标语音信号转换为频域信号;

将所述频域信号中信噪比高于预设阈值的频率点确定为目标频率点。

可选的,当所述目标频率点为多个时,所述根据所述各预设位置的声压信号和预设方位角,计算各预设方位角对应的波束响应值,并基于所述各预设方位角对应的波束响应值,确定声源方位角的步骤包括:

根据每个频率点对应的各预设位置的声压信号和预设方位角,计算每个频率点对应每个预设方位角的波束响应值;

识别每个频率点对应的最大的波束响应值,并将所识别出的波束响应值对应的预设方位角确定为预估方位角;

对所述预估方位角进行概率分布统计,将出现概率最高的预估方位角确定为声源方位角。

可选的,所述预设位置包括:由所述麦克风阵列确定的坐标系中x轴、y轴上麦克风所在位置。

可选的,所述根据所述各预设位置的声压信号和预设方位角,计算各预设方位角对应的波束响应值的步骤包括:

针对各预设方位角,将x轴上各麦克风所在位置处的声压信号和y轴上各麦克风所在位置处的声压信号按照第一预设规则进行加权求和获得第一权值;

确定所述x轴上各麦克风所在位置处的声压信号的差值为第一差值;

确定所述y轴上各麦克风所在位置处的声压信号的差值为第二差值;

将所述第一差值与所述第二差值按照与该预设方位角对应的第二预设规则进行加权求和获得第二权值;

将所述第一权值与所述第二权值按照第三预设规则进行加权求和获得该预设方位角对应的波束响应值。

可选的,当所述目标语音信号为一帧时,所述基于所述各预设方位角对应的波束响应值,确定声源方位角的步骤包括:

识别最大的波束响应值,并将所识别出的波束响应值对应的预设方位角确定为声源方位角。

可选的,当所述目标语音信号为多帧时,所述基于所述各预设方位角对应的波束响应值,确定声源方位角的步骤包括:

识别每一帧语音信号对应的最大的波束响应值;

将所识别出的波束响应值对应的预设方位角确定为预估方位角;

对所述预估方位角进行概率分布统计,将出现概率最高的预估方位角确定为声源方位角。

第二方面,本发明实施例还提供了一种基于麦克风阵列的声源定位装置,所述装置包括:

目标语音信号确定模块,用于获取经所述麦克风阵列传输的语音信号,对所述语音信号进行分帧处理,并确定目标语音信号;

声压信号确定模块,用于确定所述目标语音信号中的目标频率点,并根据所述目标频率点,针对所述麦克风阵列中的预设位置,分别确定各预设位置的声压信号;

声源方位角确定模块,用于根据所述各预设位置的声压信号和预设方位角,计算各预设方位角对应的波束响应值,并基于所述各预设方位角对应的波束响应值,确定声源方位角。

可选的,所述声压信号确定模块包括:

转换单元,用于将所述目标语音信号转换为频域信号;

目标频率点确定单元,用于将所述频域信号中信噪比高于预设阈值的频率点确定为目标频率点。

可选的,所述声源方位角确定模块包括:

第一波束响应值确定单元,用于当所述目标频率点为多个时,根据每个频率点对应的各预设位置的声压信号和预设方位角,计算每个频率点对应每个预设方位角的波束响应值;

第一预估方位角确定单元,用于识别每个频率点对应的最大的波束响应值,并将所识别出的波束响应值对应的预设方位角确定为预估方位角;

第一声源方位角确定单元,用于对所述预估方位角进行概率分布统计,将出现概率最高的预估方位角确定为声源方位角。

可选的,所述预设位置包括:由所述麦克风阵列确定的坐标系中x轴、y轴上麦克风所在位置。

可选的,所述声源方位角确定模块包括:

第一权值计算单元,用于针对各预设方位角,将x轴上各麦克风所在位置处的声压信号和y轴上各麦克风所在位置处的声压信号按照第一预设规则进行加权求和获得第一权值;

第一差值计算单元,用于确定所述x轴上各麦克风所在位置处的声压信号的差值为第一差值;

第二差值计算单元,用于确定所述y轴上各麦克风所在位置处的声压信号的差值为第二差值;

第二权值计算单元,用于将所述第一差值与所述第二差值按照与该预设方位角对应的第二预设规则进行加权求和获得第二权值;

第二波束响应值确定单元,用于将所述第一权值与所述第二权值按照第三预设规则进行加权求和获得该预设方位角对应的波束响应值。

可选的,所述声源方位角确定模块包括:

第一波束响应值识别单元,用于当所述目标语音信号为一帧时,识别最大的波束响应值,并将所识别出的波束响应值对应的预设方位角确定为声源方位角。

可选的,所述声源方位角确定模块包括:

第二波束响应值识别单元,用于当所述目标语音信号为多帧时,识别每一帧语音信号对应的最大的波束响应值;

第二预估方位角确定单元,用于将所识别出的波束响应值对应的预设方位角确定为预估方位角;

第二声源方位角确定单元,用于对所述预估方位角进行概率分布统计,将出现概率最高的预估方位角确定为声源方位角。

本方案中,首先获取经麦克风阵列传输的语音信号,对语音信号进行分帧处理,并确定目标语音信号,然后确定目标语音信号中的目标频率点,并根据目标频率点,针对麦克风阵列中的预设位置,分别确定各预设位置的声压信号,再根据各预设位置的声压信号和预设方位角,计算各预设方位角对应的波束响应值,并基于各预设方位角对应的波束响应值,确定声源方位角。由于声压信号具有一定的指向性,因此采用预设位置的声压信号计算波束响应值,进而确定声源的方位角,可以在麦克风阵列尺寸较小的微型阵列条件下准确地定位声源的方位。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例所提供的一种基于麦克风阵列的声源定位方法的流程图;

图2为本发明实施例所提供的一种微型麦克风阵列示意图;

图3为本发明实施例所提供的一种归一化处理后的波束响应值示意图;

图4为本发明实施例所提供的一种基于麦克风阵列的声源定位装置的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

为了在麦克风阵列尺寸较小的微型阵列条件下准确地定位声源的方位,本发明实施例提供了一种基于麦克风阵列的声源定位方法及装置。

下面首先对本发明实施例所提供的一种基于麦克风阵列的声源定位方法进行介绍。

如图1所示,一种基于麦克风阵列的声源定位方法,包括以下步骤:

s101,获取经所述麦克风阵列传输的语音信号,对所述语音信号进行分帧处理,并确定目标语音信号;

本发明实施例提供的方法可以应用于处理器。其中,该处理器可以安装在具有声源定位功能的电子设备上,例如视频会议系统、智能家电等。当然也可以安装在电子设备外,处理器可以与电子设备进行有线或无线连接,进而进行数据的传输。其中,无线连接可以为wifi连接或蓝牙连接等方式。

在本发明实施例中,麦克风阵列为尺寸较小的微型麦克风阵列,例如可以为直径1-5厘米的圆形麦克风阵列等,当然并不局限于此。

由于语音信号具有短时平稳特性,同时为了对语音信号进行实时处理,处理器获取经上述麦克风阵列传输的语音信号后,可以按照预设时长将该语音信号进行分帧处理,将接收的一段语音信号分为若干帧语音信号。

需要说明的是,上述预设时长可以由本领域技术人员根据语音信号实际长度及应用场景等因素确定,在此不做具体限定。例如,对实时性要求比较高时,可以将该预设时长适当设置的短一些。当需要精度较高的计算结果时,便可以将该预设时长设置的长一些。上述分帧处理为本领域常见处理方法,本领域技术人员可以根据实际情况进行分帧处理操作,在此不做具体说明。

处理器对语音信号进行分帧处理后,可以从中选择一帧语音信号,将其确定为目标语音信号,也可以从中选择多帧语音信号作为目标语音信号,这都是合理的。

为了保证声源定位的准确度,处理器对经上述麦克风阵列传输的语音信号进行分帧处理后,还可以对分帧处理后的语音信号进行语音活动性检测,以去除静音帧,避免在处理过程中受到静音帧的干扰。需要说明的是,语音活动性检测为本领域常见处理方法,本领域技术人员可以根据实际情况进行语音活动性检测操作,在此不做具体说明。

s102,确定所述目标语音信号中的目标频率点,并根据所述目标频率点,针对所述麦克风阵列中的预设位置,分别确定各预设位置的声压信号;

处理器确定了目标语音信号后,可以将该目标语音信号转换为频域信号,进而从该频域信号的频率点中确定目标频率点。

由于对于语音信号,其低频信号和高频信号容易受到噪声的干扰,所以为了尽量避免受到噪声的干扰,处理器将上述目标语音信号转换为频域信号后,可以将该频域信号中信噪比高于预设阈值的频率点确定为目标频率点。

举例而言,处理器可以将上述目标语音信号中的中频信号包括的频率点的信噪比与低频、高频信号包括的频率点的信噪比进行比较,如果中频信号包括的频率点的信噪比大于低、高频信号包括的频率点的信噪比,且二者的差值大于预设阈值,那么就可以确定该中频部分频率点为目标频率点。其中,该预设阈值可以由本领域技术人员根据语音信号和噪声环境的实际情况等因素确定,在此不做具体限定,例如可以为15db或者30db等。

需要说明的是,如果上述目标语音信号为多帧,那么处理器便可以将多帧目标语音信号均转化为频域信号,并确定每一帧目标语音信号对应的目标频率点。进一步需要说明的是,将语音信号转换为频域信号是本领域常用的语音信号处理方法,本领域技术人员可以根据语音信号的实际情况进行相应操作,在此不做具体说明。

确定了上述目标频率点后,处理器可以根据该目标频率点,针对麦克风阵列中的预设位置,分别确定各预设位置的声压信号,以便于后续声源方位角的确定。

对于该预设位置的设置,一般可以为由麦克风阵列确定的坐标系中x轴、y轴上麦克风所在位置。如图2所示,以由四个麦克风组成的圆形麦克风阵列为例,图中m1、m2、m3及m4表示四个麦克风,其中,麦克风m1和麦克风m3确定的坐标轴为x轴,麦克风m2和麦克风m4确定的坐标轴为y轴。那么处理器便可以确定麦克风m1、m2、m3及m4所在位置为预设位置,进而确定麦克风m1、m2、m3及m4所在位置的声压信号。其中,该声压信号即为麦克风接收到的语音信号的幅度值。

需要说明的是,如果上述目标频率点为多个,那么处理器便可以确定每一个目标频率点对应的各预设位置的声压信号。同理的,若上述目标语音信号为多帧,那么处理器便可以针对每一帧目标语音信号对应的目标频率点,确定该目标频率点对应的各预设位置的声压信号。

s103,根据所述各预设位置的声压信号和预设方位角,计算各预设方位角对应的波束响应值,并基于所述各预设方位角对应的波束响应值,确定声源方位角。

为了准确确定声源方位角,同时避免计算量过大,可以在声源方位角可能指向的范围内设定若干个预设方位角。处理器确定了上述各预设位置的声压信号后,便可以根据各预设位置的声压信号和各预设方位角计算各预设方位角对应的波束响应值。需要说明的是,如图2所示,声源方位角一般可以为声源所在方向与麦克风阵列所确定的坐标系中x轴方向的夹角,图2中以表示,范围为[-180°,180°]。

波束响应值越大说明波束指向性越大,所以处理器确定了各预设方位角对应的波束响应值后,可以从各预设方位角对应的波束响应值中识别出最大的波束响应值。如果目标语音信号为一帧,该目标语音信号对应的目标频率点为一个时,那么该最大的波束响应值对应的预设方位角即为声源方位角。

例如,如果目标频率点为f=2000hz,预设方位角为从-180°到180°以1°为间隔设定的,那么对于该目标频率点,每个预设方位角都有一个对应的波束响应值。若计算得到:预设方位角为-180°时,波束响应值为1;预设方位角为-179°时,波束响应值为5;预设方位角为179°时,波束响应值为1等结果。如果其中最大的波束响应值是预设方位角-179°对应的5,那么-179°即为声源方位角。

需要说明的是,为了确保声源方位角计算结果的准确,一般目标频率点的数量为多个。那么在目标频率点为多个时,声源方位角的确定方式可以包括:

根据每个频率点对应的各预设位置的声压信号和预设方位角,计算每个频率点对应每个预设方位角的波束响应值;

识别每个频率点对应的最大的波束响应值,并将所识别出的波束响应值对应的预设方位角确定为预估方位角;

对所述预估方位角进行概率分布统计,将出现概率最高的预估方位角确定为声源方位角。

举例而言,如果目标频率点为20个,处理器可以将该20个目标频率点对应的预估方位角进行概率分布统计,如果其中10个目标频率点对应的预估方位角在同一角度附近,大于其他预估方位角出现的概率,那么便可以将该10个目标频率点对应的预估方位角确定为声源方位角。例如,该10个目标频率点对应的预估方位角均为30°左右,那么便可以确定声源方位角为30°。

可见,本实施例所提供的方案中,首先获取经麦克风阵列传输的语音信号,对语音信号进行分帧处理,并确定目标语音信号,然后确定目标语音信号中的目标频率点,并根据目标频率点,针对麦克风阵列中的预设位置,分别确定各预设位置的声压信号,再根据各预设位置的声压信号和预设方位角,计算各预设方位角对应的波束响应值,并基于各预设方位角对应的波束响应值,确定声源方位角。由于声压信号具有一定指向性,因此采用预设位置的声压信号计算波束响应值,进而确定声源的方位角,可以在麦克风阵列尺寸较小的微型阵列条件下准确地定位声源的方位。

作为本发明实施例的一种实施方式,对于某一目标频率点,根据各预设位置的声压信号和预设方位角,计算各预设方位角对应的波束响应值的方式可以包括:

针对各预设方位角,将x轴上各麦克风所在位置处的声压信号和y轴上各麦克风所在位置处的声压信号按照第一预设规则进行加权求和获得第一权值;

确定所述x轴上各麦克风所在位置处的声压信号的差值为第一差值;

确定所述y轴上各麦克风所在位置处的声压信号的差值为第二差值;

将所述第一差值与所述第二差值按照与该预设方位角对应的第二预设规则进行加权求和获得第二权值;

将所述第一权值与所述第二权值按照第三预设规则进行加权求和获得该预设方位角对应的波束响应值。

由于声源方位角可能为任意方向,所以为了保证声源方位角计算结果的准确,需要波束响应值对应的指向性可以指向任意方向,一般可以采用三个特征波束来计算波束响应值。该三个特征波束可以为一个单极子和两个正交的偶极子,其中,两个正交的偶极子一般一个具有余弦指向性,另一个具有正弦指向性,这样将单极子和两个正交的偶极子按照一定规则进行加权求和得到的波束响应值,便可以使波束响应值在声源方位角对应的方位形成最大指向,即波束响应值最大。

其中,上述单极子可通过上述麦克风阵列所确定的坐标系的原点位置的声压信号表示。而原点位置的声压信号可利用x轴、y轴上的各麦克风所在位置的声压信号按照第一预设规则加权求合所获得的第一权值来表示。

对于麦克风一致性较好的麦克风阵列,原点处声压信号一般可以由各个麦克风所在位置的声压信号的平均值近似求得,也就是说,此时上述第一预设规则中,每个麦克风所在位置的声压信号的权重为1/n,其中,n为上述麦克风阵列中麦克风的数量。而对于麦克风一致性较差的麦克风阵列,可根据麦克风的增益大小适当地调节每个麦克风所在位置的声压信号的权重,使每个麦克风所在位置的声压信号的权重加和为1即可。

处理器可以根据一段时间内麦克风接收的声压信号的能量进行估计,一般一段时间内接收声压信号的能量越大,对应的权重就越小。例如,如图2所示的麦克风阵列,如果麦克风m2在一段时间内接收声压信号的能量很大,那么便可以将麦克风m2所在位置的声压信号的权重调节为较小值,如0.2或0.3等;如果麦克风m3在一段时间内接收声压信号的能量很小,那么便可以将麦克风m3所在位置的声压信号的权重调节为较大值,如0.7或0.6等。

对于上述偶极子,由于两个正交偶极子分别具有余弦指向性和正弦指向性,因此可以分别由x轴、y轴方向上的振速表示。理想流体媒质中的小振幅声波的运动方程为:

其中,ρ为媒质密度,v(t)为振速,为梯度算符。通过(1)式可以推导出任意r方向上的振速分量vr(t)可以由r方向上距离为δr的两点r1和r2处的声压信号近似求得,即:

通过(2)式可知,δr越小,r1和r2两点处的声压信号的差值就与r方向上的振速分量越接近。因此,在δr较小的情况下,x轴方向上的振速可以利用x轴上麦克风所在位置之间的声压信号差值估计,同样,y轴方向上的振速可以利用y轴上麦克风所在位置之间的声压信号差值近似求得,且距离越小,结果越准确。也就是说,在尺寸较小的微型麦克风阵列中,两个正交的偶极子可以分别由x轴上麦克风所在位置之间的声压信号差值和y轴上麦克风所在位置之间的声压信号差值表示。采用这种声压信号差值计算偶极子的方式还可以增强抗噪性能,进一步增加计算结果的准确度。

需要说明的是,由于当麦克风阵列尺寸过小时,会造成麦克风之间存在较大的干扰,反而会削弱麦克风阵列的性能,降低声源方位角计算的准确度,所以对于麦克风阵列的尺寸,优选直径为2-4厘米左右,该尺寸的微型麦克风阵列相对其他尺寸的微型麦克风阵列具有更高的声源定位精度。另外,当波数尺寸积远远小于1时,利用上述方式求得的偶极子更加准确,即kd<<1,其中f表示频率,c表示空气中的声速。

为了计算方便,处理器确定了x轴上各麦克风所在位置处的声压信号的差值后,可以将其确定为第一差值,将y轴上各麦克风所在位置处的声压信号的差值的确定为第二差值,进而将第一差值与第二差值按照与预设方位角对应的第二预设规则进行加权求和,便可以获得第二权值。

可以通过公式(3)求得第二权值,其中公式(3)具体如下:

其中,表示预设方位角,表示第一差值,表示第二差值,β值可以根据麦克风增益大小进行调节。

对于麦克风一致性较好的麦克风阵列,β值可以为0.5,而对于麦克风一致性较差的麦克风阵列,处理器可以通过改变第一差值和第二差值的权重使计算得到的第二权值更加准确,第一差值和第二差值的权重则可以根据麦克风增益大小进行调节,一般第一差值和第二差值的权重的加和为1。

处理器确定了上述第一权值和第二权值后,便可以按照第三预设规则将该第一权值和第二权值进行加权求和,获得预设方位角对应的波束响应值。具体可以通过以下公式求得:

其中,0≤α≤1,表示预设方位角对应的波束响应值,表示第一权值,表示第二权值。

需要说明的是,α的值可以根据实际语音信号的情况以及麦克风增益的大小进行适当调节,使获得的声源方位角更加准确。

举例而言,目标频率点对应的频率为1000hz,声源方位角30°,信噪比为10db,混响为400ms,对于-180°到180°方向,以1°为间隔确定一个预设方位角。根据(4)式可以计算得到每一个预设方位角对应的波束响应值,将计算得到的波束响应值进行归一化处理,得到如图3所示的波束响应值计算结果。其中,实线310形成的心形状的曲线为α=0.5时计算得到的各预设方位角对应的波束响应值归一化处理后的结果,可以看出,在30°方位上波束响应值是最大,形成最大指向性。虚线320形成的是超心形状的曲线为α=0.25时计算得到的各预设方位角对应的波束响应值归一化处理后的结果,可以看出,在30°方位上波束响应值是最大,形成最大指向性。可见,采用上述方法确定的声源方位角与实际声源方位角向吻合,准确度很高。

作为本发明实施例的一种实施方式,为了保证声源方位角确定的准确度,处理器在对经上述麦克风阵列传输的语音信号进行分帧处理后,可以将其中多帧语音信号确定为目标语音信号。那么,当上述目标语音信号为多帧时,基于各预设方位角对应的波束响应值,确定声源方位角的方式可以包括:

识别每一帧语音信号对应的最大的波束响应值;

将所识别出的波束响应值对应的预设方位角确定为预估方位角;

对所述预估方位角进行概率分布统计,将出现概率最高的方位角确定为声源方位角。

当每一帧目标语音信号对应的目标频率点为一个时,各目标频率点对应的最大的波束响应值对应的预设方位角即为各目标语音信号对应的预估方位角,进而处理器可以对各预估方位角进行概率分布统计,将出现概率最高的预估方位角确定为声源方位角。

当每一帧目标语音信号对应的目标频率点为多个时,处理器可以针对每一帧目标语音信号,将每个目标频率点对应的最大的波束响应值对应的预设方位角进行概率分布统计,将出现概率最高的预设方位角确定为该帧目标语音信号对应的预估方位角,然后处理器可以对各目标语音信号对应的预估方位角再做一次概率分布统计,将出现概率最高的预估方位角确定为声源方位角。

相应于上述方法实施例,本发明实施例还提供了一种基于麦克风阵列的声源定位装置,下面对本发明实施例所提供的一种基于麦克风阵列的声源定位装置进行介绍。

如图4所示,一种基于麦克风阵列的声源定位装置,包括:

目标语音信号确定模块410,用于获取经所述麦克风阵列传输的语音信号,对所述语音信号进行分帧处理,并确定目标语音信号;

声压信号确定模块420,用于确定所述目标语音信号中的目标频率点,并根据所述目标频率点,针对所述麦克风阵列中的预设位置,分别确定各预设位置的声压信号;

声源方位角确定模块430,用于根据所述各预设位置的声压信号和预设方位角,计算各预设方位角对应的波束响应值,并基于所述各预设方位角对应的波束响应值,确定声源方位角。

可见,本实施例所提供的方案中,首先获取经麦克风阵列传输的语音信号,对语音信号进行分帧处理,并确定目标语音信号,然后确定目标语音信号中的目标频率点,并根据目标频率点,针对麦克风阵列中的预设位置,分别确定各预设位置的声压信号,再根据各预设位置的声压信号和预设方位角,计算各预设方位角对应的波束响应值,并基于各预设方位角对应的波束响应值,确定声源方位角。由于声压信号具有一定指向性,因此采用预设位置的声压信号计算波束响应值,进而确定声源的方位角,可以在麦克风阵列尺寸较小的微型阵列条件下准确地定位声源的方位。

作为本发明实施例的一种实施方式,所述声压信号确定模块420可以包括:

转换单元(图中未示出),用于将所述目标语音信号转换为频域信号;

目标频率点确定单元(图中未示出),用于将所述频域信号信噪比高于预设阈值的频率点确定为目标频率点。

作为本发明实施例的一种实施方式,所述声源方位角确定模块430可以包括:

第一波束响应值确定单元(图中未示出),用于当所述目标频率点为多个时,根据每个频率点对应的各预设位置的声压信号和预设方位角,计算每个频率点对应每个预设方位角的波束响应值;

第一预估方位角确定单元(图中未示出),用于识别每个频率点对应的最大的波束响应值,并将所识别出的波束响应值对应的预设方位角确定为预估方位角;

第一声源方位角确定单元(图中未示出),用于对所述预估方位角进行概率分布统计,将出现概率最高的预估方位角确定为声源方位角。

作为本发明实施例的一种实施方式,所述预设位置可以包括:由所述麦克风阵列确定的坐标系中x轴、y轴上麦克风所在位置。

作为本发明实施例的一种实施方式,所述声源方位角确定模块430可以包括:

第一权值计算单元(图中未示出),用于针对各预设方位角,将x轴上各麦克风所在位置处的声压信号和y轴上各麦克风所在位置处的声压信号按照第一预设规则进行加权求和获得第一权值;

第一差值计算单元(图中未示出),用于确定所述x轴上各麦克风所在位置处的声压信号的差值为第一差值;

第二差值计算单元(图中未示出),用于确定所述y轴上各麦克风所在位置处的声压信号的差值为第二差值;

第二权值计算单元(图中未示出),用于将所述第一差值与所述第二差值按照与该预设方位角对应的第二预设规则进行加权求和获得第二权值;

第二波束响应值确定单元(图中未示出),用于将所述第一权值与所述第二权值按照第三预设规则进行加权求和获得该预设方位角对应的波束响应值。

作为本发明实施例的一种实施方式,所述声源方位角确定模块430可以包括:

第一波束响应值识别单元(图中未示出),用于当所述目标语音信号为一帧时,识别最大的波束响应值,并将所识别出的波束响应值对应的预设方位角确定为声源方位角。

作为本发明实施例的一种实施方式,所述声源方位角确定模块430可以包括:

第二波束响应值识别单元(图中未示出),用于当所述目标语音信号为多帧时,识别每一帧语音信号对应的最大的波束响应值;

第二预估方位角确定单元(图中未示出),用于将所识别出的波束响应值对应的预设方位角确定为预估方位角;

第二声源方位角确定单元(图中未示出),用于对所述预估方位角进行概率分布统计,将出现概率最高的预估方位角确定为声源方位角。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本领域普通技术人员可以理解实现上述方法实施方式中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读取存储介质中,这里所称得的存储介质,如:rom/ram、磁碟、光盘等。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1