一种声源定位方法、装置及电子设备与流程

文档序号:11229117阅读:413来源:国知局
一种声源定位方法、装置及电子设备与流程

本发明涉及语音信号处理技术领域,特别是涉及一种声源定位方法、装置及电子设备。



背景技术:

目前,市场上有越来越多的产品具有语音交互功能,例如智能音箱、机器人等电子设备。这些电子设备在接收到唤醒指令时,会从睡眠状态转为工作状态,并开始通过麦克风阵列接收语音信号,进而可以对该语音信号进行识别和解析,从而响应该语音信号对应的交互指令。显然,在产品功能实现过程中,声源定位是非常重要的,只有准确地定位用户声源方位,才能准确地获取用户发出的语音信号,才能进行正确的响应行为。

上述具有语音交互功能的电子设备在接收到唤醒指令后,通过麦克风阵列接收周围环境中各声源发出的语音信号,将这些语音信号中音量最大者对应的声源方位识别为用户声源方位,声音最大的语音信号也即被视为用户发出的语音信号,进而响应该语音信号对应的交互指令。

这种声源定位方式在安静的环境中可以比较准确地定位用户声源方位,但是在嘈杂的环境下,存在多个声源,噪音声源发出的音量可能较大,电子设备则会误将噪音的声源方位识别为用户声源方位,将噪音识别为用户发出的语音信号,而进行错误的响应,用户声源定位的准确率很低,用户体验不佳。



技术实现要素:

本发明实施例公开了一种声源定位方法、装置及电子设备,用以提高用户声源定位的准确率,提升用户体验。技术方案如下:

第一方面,本发明实施例提供了一种声源定位方法,应用于具有语音交互功能的电子设备,所述方法包括:

在所述电子设备处于睡眠状态的情况下,持续接收语音信号;

分别判断所接收的每一语音信号对应的交互指令是否为唤醒指令;

若为否,定位并记录该语音信号的声源方位,作为第一类声源方位;

若为是,由睡眠状态切换至工作状态,定位并记录该语音信号的声源方位,作为第二类声源方位;

根据所述第一类声源方位和所述第二类声源方位定位用户声源方位。

可选的,所述分别判断所接收的每一语音信号对应的交互指令是否为唤醒指令的步骤,包括:

按照以下方式判断所接收的每一语音信号对应的交互指令是否为唤醒指令:

对目标语音信号进行过滤处理,滤除所述目标语音信号中频率属于预设频率段的语音信号,其中,所述目标语音信号为:所接收的一个语音信号;

判断过滤处理后的目标语音信号对应的交互指令是否为唤醒指令。

可选的,所述根据所述第一类声源方位和所述第二类声源方位定位用户声源方位的步骤,包括:

判断所述第二类声源方位中是否存在不属于所述第一类声源方位的声源方位;

若为是,将所述第二类声源方位中不属于所述第一类声源方位的声源方位定位为用户声源方位。

可选的,所述将所述第二类声源方位中不属于所述第一类声源方位的声源方位定位为用户声源方位的步骤,包括:

确定所述第二类声源方位中不属于所述第一类声源方位的声源方位的数量;

当所确定的数量大于1时,将不属于所述预设频率段的语音信号对应的声源方位,确定为所述用户声源方位。

可选的,所述将不属于所述预设频率段的语音信号对应的声源方位,确定为所述用户声源方位的步骤,包括:

确定不属于所述预设频率段的语音信号对应的声源方位的数量;

当所确定的数量大于1时,将所述不属于所述预设频率段的语音信号中,波形与预设波形的相似度大于第一预设值的语音信号对应的声源方位确定为所述用户声源方位。

可选的,在所述第二类声源方位均属于所述第一类声源方位的情况下,所述方法还包括:

判断处于同一声源方位的第一语音信号与第二语音信号的能量差值是否大于第二预设值,其中,所述第一语音信号为所述电子设备处于睡眠状态时接收到的语音信号,所述第二语音信号为所述电子设备处于工作状态时接收到的语音信号;

如果是,将该第二语音信号对应的第二类声源方位确定为所述用户声源方位。

可选的,在所述第二类声源方位均属于所述第一类声源方位的情况下,所述方法还包括:

将所述第二类声源方位中,波形与预设波形的相似度大于第一预设值的语音信号对应的声源方位确定为所述用户声源方位。

可选的,所述将所述第二类声源方位中不属于所述第一类声源方位的声源方位定位为用户声源方位的步骤,包括:

确定所述第二类声源方位中不属于所述第一类声源方位的声源方位为目标声源方位;

根据所述目标声源方位,确定目标范围[a,b],并将所述目标范围内的声源方位确定为所述用户声源方位,其中,a为所述目标声源方位与第一预设方位差值的差值,b为所述目标声源方位与第二预设方位差值的加和。

第二方面,本发明实施例还提供了一种声源定位装置,应用于具有语音交互功能的电子设备,所述装置包括:

语音信号接收模块,用于在所述电子设备处于睡眠状态的情况下,持续接收语音信号;

唤醒指令判断模块,用于分别判断所接收的每一语音信号对应的交互指令是否为唤醒指令;

第一定位模块,用于在所接收的每一语音信号对应的交互指令不为唤醒指令的情况下,定位并记录该语音信号的声源方位,作为第一类声源方位;

第二定位模块,用于在所接收的语音信号对应的交互指令为唤醒指令的情况下,由睡眠状态切换至工作状态,定位并记录该语音信号的声源方位,作为第二类声源方位;

用户声源方位确定模块,用于根据所述第一类声源方位和所述第二类声源方位定位用户声源方位。

可选的,所述唤醒指令判断模块,包括:信号过滤子模块和指令判断子模块;

所述唤醒指令判断模块,具体用于通过所述信号过滤子模块和指令判断子模块判断所接收的每一语音信号对应的交互指令是否为唤醒指令;

所述信号过滤子模块,用于对目标语音信号进行过滤处理,滤除所述目标语音信号中频率属于预设频率段的语音信号,其中,所述目标语音信号为:所接收的一个语音信号;

所述指令判断子模块,用于判断过滤处理后的目标语音信号对应的交互指令是否为唤醒指令。

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

判断子模块,用于判断所述第二类声源方位中是否存在不属于所述第一类声源方位的声源方位;

用户声源方位确定子模块,用于在所述第二类声源方位中存在不属于所述第一类声源方位的声源方位的情况下,将所述第二类声源方位中不属于所述第一类声源方位的声源方位定位为用户声源方位。

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

数量确定单元,用于确定所述第二类声源方位中不属于所述第一类声源方位的声源方位的数量;

第一方位确定单元,用于当所确定的数量大于1时,将不属于所述预设频率段的语音信号对应的声源方位,确定为所述用户声源方位。

可选的,所述第一方位确定单元包括:

数量确定子单元,用于确定不属于所述预设频率段的语音信号对应的声源方位的数量;

方位确定子单元,用于当所确定的数量大于1时,将所述不属于所述预设频率段的语音信号中,波形与预设波形的相似度大于第一预设值的语音信号对应的声源方位确定为所述用户声源方位。

可选的,所述装置还包括:

能量差值判断模块,用于在所述第二类声源方位均属于所述第一类声源方位的情况下,判断处于同一声源方位的第一语音信号与第二语音信号的能量差值是否大于第二预设值,其中,所述第一语音信号为所述电子设备处于睡眠状态时接收到的语音信号,所述第二语音信号为所述电子设备处于工作状态时接收到的语音信号;如果是,将该第二语音信号对应的第二类声源方位确定为所述用户声源方位。

可选的,所述装置还包括:

波形比较模块,用于将所述第二类声源方位中,波形与预设波形的相似度大于第一预设值的语音信号对应的声源方位确定为所述用户声源方位。

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

目标声源方位确定单元,用于确定所述第二类声源方位中不属于所述第一类声源方位的声源方位为目标声源方位;

第二方位确定单元,用于根据所述目标声源方位,确定目标范围[a,b],并将所述目标范围内的声源方位确定为所述用户声源方位,其中,a为所述目标声源方位与第一预设方位差值的差值,b为所述目标声源方位与第二预设方位差值的加和。

第三方面,本发明实施例还提供了一种电子设备,所述电子设备包括:壳体、处理器、存储器、电路板和电源电路,其中,电路板安置在壳体围成的空间内部,处理器和存储器设置在电路板上;电源电路,用于为电子设备的各个电路或器件供电;存储器用于存储可执行程序代码;处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于执行上述的声源定位方法。

本发明实施例所提供的方案中,具有语音交互功能的电子设备处于睡眠状态的情况下,持续接收语音信号,分别判断所接收的每一语音信号对应的交互指令是否为唤醒指令,若为否,定位并记录该语音信号的声源方位,作为第一类声源方位,若为是,由睡眠状态切换至工作状态,定位并记录该语音信号的声源方位,作为第二类声源方位,然后根据第一类声源方位和第二类声源方位定位用户声源方位。可见,电子设备并不是将工作状态时接收到的语音信号中音量最大者对应的声源方位作为用户声源方位,而是根据处于睡眠状态所接收到的语音信号的第一类声源方位,以及由睡眠状态转换为工作状态时所接收到的语音信号的第二类声源方位来定位用户声源方位,用户声源定位的定位准确率大大提高,用户体验更好。

附图说明

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

图1为本发明实施例所提供的一种声源定位方法的流程图;

图2为本发明实施例所提供的一种声源定位装置的结构示意图;

图3为本发明实施例所提供的一种电子设备的结构示意图。

具体实施方式

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

为了提高用户声源定位的准确率,提升用户体验,本发明实施例提供了一种声源定位方法、装置及电子设备。

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

首先需要说明的是,本发明实施例所提供的一种声源定位方法可以应用于具有语音交互功能的电子设备(以下简称电子设备),例如,智能音箱、机器人等。该电子设备一般具有麦克风阵列,或与麦克风阵列建立通信连接,该通信连接可以为有线连接或无线连接,其中,无线连接可以为wifi连接、蓝牙连接等。该麦克风阵列用于接收语音信号。

如图1所示,一种声源定位方法,应用于具有语音交互功能的电子设备,所述方法包括:

s101,在所述电子设备处于睡眠状态的情况下,持续接收语音信号;

从一定角度来讲,电子设备的状态可以划分为:睡眠状态和工作状态,当电子设备处于睡眠状态时,需通过接收唤醒指令唤醒电子设备,进而切换至工作状态。另外,当电子设备处于睡眠状态时,依然可以持续接收周围环境中的声源发出的语音信号,也就是,电子设备处于睡眠状态时,麦克风阵列依然工作。

可以理解的是,此时电子设备接收到的语音信号包括周围环境中的各声源发出的语音信号,例如,如果电子设备放置于家庭环境中,那么该电子设备可能接收到多个声源发出的语音信号,例如,电视机、电冰箱等家电设备发出的语音信号,或者窗外传来的语音信号等。

s102,分别判断所接收的每一语音信号对应的交互指令是否为唤醒指令,若为否,执行步骤s103,若为是,执行步骤s104;

为了降低电子设备的功耗,在用户不需要与电子设备进行交互时,电子设备可以关闭一些功能,进而切换至睡眠状态,但是这种情况下,电子设备的另外一些功能依然是处于运行状态的,其中,哪些功能依然处于运行状态可以是开发人员根据开发需求设定的,或者用户根据实际应用需求设定的等等,例如,本发明实施例中电子设备处于睡眠状态时,电子设备依然可以识别接收到的语音信号对应的交互指令是否为唤醒指令,以及依然能够对所接收的语音信号进行声源定位,确定出周围环境中声源的方位。

电子设备接收到一段语音信号后,即开始对接收到的这一段语音信号进行语音识别,判断所接收的这一段语音信号对应的交互指令是否为唤醒指令。具体的,如果这一段语音信号的语音识别结果中包括预设的唤醒词,那么该段语音信号对应的交互指令即为唤醒指令。也就是说,电子设备接收到语音信号后,可以对该语音信号进行语音识别,得到语音识别结果,进而便可以判断出该语音信号的语音识别结果中是否包括预设的唤醒词。

需要说明的是,电子设备接收到语音信号后,可以在本地进行语音信号的语音识别,得到语音识别结果,也可以将该语音信号发送至服务器,服务器接收到该语音信号后,便可以对该语音信号进行语音识别,得到语音识别结果,并将语音识别结果发送至电子设备,电子设备也就能获得该语音识别结果,进而,便可以判断该语音信号的语音识别结果中是否包括预设的唤醒词。

举例而言,如果预设的唤醒词为“小雅”,那么如果电子设备接收到的语音信号对应的语音识别结果中包括“小雅”两个字,那么该语音信号对应的交互指令即为唤醒指令;如果电子设备接收到的语音信号对应的语音识别结果中是不包括“小雅”两个字的其他语句,或者是不具有任何语义的语音信号,例如空调发出的语音信号,那么该语音信号对应的交互指令便不是唤醒指令。

s103,定位并记录该语音信号的声源方位,作为第一类声源方位;

当电子设备判断出所接收到的语音信号对应的交互指令不是唤醒指令时,电子设备便可以定位并记录该语音信号的声源方位,为了方便描述本发明实施例所提供的方案,将该语音信号的声源方位作为第一类声源方位。

由于此时电子设备处于睡眠状态,且所接收到的语音信号对应的交互指令不是唤醒指令,所以可以理解的是,此时电子设备接收到的语音信号是噪音声源发出的语音信号,并不是用户发出的语音信号,也就不会触发电子设备处理该语音信号,那么电子设备可以将这些语音信号的声源方位作为第一类声源方位记录下来,也就是作为噪音声源的方位记录下来,并返回步骤s101,继续接到语音信号,以便后续过程中更准确地定位用户声源方位。

需要说明的是,语音信号的声源方位的定位方式可以采用时延预估法等声源定位方式,也就是说,可以根据语音信号到达麦克风阵列中各麦克风处的时间来定位语音信号的声源方位,在此不做具体限定及说明。

s104,由睡眠状态切换至工作状态,定位并记录该语音信号的声源方位,作为第二类声源方位;

当电子设备判断出所接收到的语音信号对应的交互指令为唤醒指令时,说明此时用户发出了语音信号来唤醒电子设备,以使电子设备可以与用户进行语音交互,实现功能,电子设备便需要由睡眠状态切换至工作状态。

同时,为了准确定位用户发出语音信号的声源方位,即用户声源方位,进而更好地接收用户发出的语音信号,电子设备可以定位当前接收到的语音信号的声源方位,并将该声源方位作为第二类声源方位记录下来,以便后续准确确定用户声源方位。

需要说明的是,定位第二类声源方位的方式与定位上述第一类声源方位的方式相同,相关之处可以参见上述定位第一类声源方位的方式部分的说明,在此不再赘述。

s105,根据所述第一类声源方位和第二类声源方位定位用户声源方位。

电子设备记录了上述第一类声源方位和第二类声源方位后,便可以根据该第一类声源方位和该第二类声源方位定位用户声源方位。电子设备在睡眠状态下接收到的语音信号可能是变化的,也就是说,随着时间的推移,可能有一些声源不再发出语音信号,而又可能会有一些之前为发出语音信号的声源发出语音信号。

例如,电子设备在睡眠状态下时,可能有电视、空调在发出语音信号,过了一段时间,电视可能被关闭,那么电视所对应的第一类声源方位也就不存在了,又过了一段时间,电脑可能被开启,播放音乐,那么在第一类声源方位中便出现了电脑所对应的声源方位。又例如,电子设备在睡眠状态下时,可能在某一时刻,一个人在某处发出了语音信号,但是该语音信号对应的交互指令并不是唤醒指令,电子设备没有由睡眠状态切换至工作状态,那么电子设备在此时便会将该人所在的方位记录在第一类声源方位中,过了一段时间,该人不再发出语音信号,所以,第一类声源方位可能是随着时间而变化的。

由于电子设备由睡眠状态切换至工作状态的时刻之前较长时刻对应的第一类声源方位与第二类声源方位的差异性可能较大,那么为了更加简便且准确地定位用户声源方位,可以采用第二类声源方位和电子设备由睡眠状态切换至工作状态时刻之前预设时间段内的第一类声源方位,来确定用户目标声源方位。其中,该预设时间段可以由本领域技术人员根据电子设备的使用场景等实际因素确定,例如,可以为2秒、3秒或5秒等,在此不做具体限定。

在一种实施方式中,根据第一类声源方位和第二类声源方位定位用户声源方位的方式可以为:判断所述第二类声源方位中是否存在不属于所述第一类声源方位的声源方位;若为是,将第二类声源方位中不属于第一类声源方位的声源方位定位为用户声源方位。

可以理解的是,如果第二类声源方位中存在不属于第一类声源方位的声源方位,那么该第二类声源方位中不属于第一类声源方位的声源方位即为:在电子设备由睡眠状态切换至工作状态时所定位的,且不属于第一类声源方位的声源方位,那么便可以确定该声源方位为用户发出的对应的交互指令为唤醒指令的语音信号的声源方位,那么该声源方位即为用户声源方位。

举例而言,电子设备由睡眠状态切换至工作状态时刻之前预设时间段内的第一类声源方位为3个,分别为:0度、30度和90度方位,电子设备由睡眠状态切换至工作状态时,记录的第二声源方位为4个,分别为:0度、30度、60度和90度方位,显然,60度声源方位是在电子设备由睡眠状态切换至工作状态时新出现的一个声源方位,而此时电子设备刚好接收到了对应的交互指令为唤醒指令的语音信号,那么便可以确定该60度声源方位即为用户发出对应的交互指令为唤醒指令的语音信号的声源方位,也就是用户声源方位。

可见,本发明实施例所提供的方案中,具有语音交互功能的电子设备处于睡眠状态的情况下,持续接收语音信号,分别判断所接收的每一语音信号对应的交互指令是否为唤醒指令,若为否,定位并记录该语音信号的声源方位,作为第一类声源方位,若为是,由睡眠状态切换至工作状态,定位并记录该语音信号的声源方位,作为第二类声源方位,然后根据第一类声源方位和第二类声源方位定位用户声源方位。可见,电子设备并不是将工作状态时接收到的语音信号中音量最大者对应的声源方位作为用户声源方位,而是根据处于睡眠状态所接收到的语音信号的第一类声源方位,以及由睡眠状态转换为工作状态时所接收到的语音信号的第二类声源方位来定位用户声源方位,用户声源定位的定位准确率大大提高,用户体验更好。

由于电子设备判断所接收的每一语音信号对应的交互指令是否为唤醒指令的过程是一样的,所以,作为本发明的一种实施方式,所述分别判断所接收的每一语音信号对应的交互指令是否为唤醒指令的步骤,可以包括:

按照以下方式判断所接收的每一语音信号对应的交互指令是否为唤醒指令:

对目标语音信号进行过滤处理,滤除所述目标语音信号中频率属于预设频率段的语音信号,判断过滤处理后的目标语音信号对应的交互指令是否为唤醒指令,其中,所述目标语音信号为:所接收的一个语音信号。

人发出的声音的频率范围一般为100-20000hz,那么不属于该频率范围内的语音信号即不是人所发出的语音信号,那么也就不可能是用户发出的语音信号,所以,为了有效去除一些不属于用户所发出的语音信号频率范围内的语音信号对定位用户声源方位的不良影响,在判断所接收的语音信号对应的交互指令是否为唤醒指令之前,电子设备可以对目标语音信号进行过滤处理,滤除目标语音信号中频率属于预设频率段的语音信号,然后再判断过滤处理后的目标语音信号对应的交互指令是否为唤醒指令,其中,该目标语音信号指代的是电子设备在睡眠状态下所接收的一个语音信号。

上述预设频率段可以为不属于人发出的声音频率范围内的一个或多个频率段,可以为低频频率段,例如,可以为0-100hz;也可以为高频频率段,例如20000-40000hz等,当然也可以包括低频频率段及高频频率段,这都是合理的。

在电子设备的使用环境中往往存在一些频率属于预设频率段的语音信号,例如一些低音音响设备,其所发出的语音信号的频率一般为几十赫兹,明显不属于人发出的语音信号的频率范围,所以采用上述过滤处理方式即可滤除该类语音信号,减少后续定位第二类声源方位的工作量,同时使用户声源定位更加准确。

作为本发明实施例的一种实施方式,所述将所述第二类声源方位中不属于所述第一类声源方位的声源方位定位为用户声源方位的步骤,可以包括:

确定所述第二类声源方位中不属于第一类声源方位的声源方位的数量;当所确定的数量大于1时,将不属于所述预设频率段的语音信号对应的声源方位,确定为所述用户声源方位。

在一些情况下,电子设备在接收到对应的交互指令为唤醒指令的语音信号的同时,可能存在另一个或多个声源方位不属于第一类声源方位的其他声源,这些其他声源也发出了语音信号,那么电子设备也就会接收到这些语音信号。例如,在用户发出对应的交互指令为唤醒指令的语音信号的同时,低音音响设备被开启,发出语音信号,那么电子设备便会接收到用户发出的语音信号和低音音响设备发出的语音信号,显然,这两个语音信号的声源方位均不属于第一类声源方位,所以,第二类声源方位中不属于第一类声源方位的声源方位的数量在此时便为多个。

在这种情况下,为了准确地定位用户声源方位,电子设备首先可以确定第二类声源方位中不属于第一类声源方位的声源方位的数量,如果所确定的数量大于1,说明此时第二类声源方位中不属于第一类声源方位的声源方位的数量是多个,那么电子设备便可以将不属于预设频率段的语音信号对应的声源方位确定为用户声源方位。

举例而言,在用户发出对应的交互指令为唤醒指令的语音信号的同时,低音音响设备被开启,发出语音信号,那么电子设备便会接收到用户发出的语音信号和低音音响设备发出的语音信号,电子设备可以确定第二类声源方位中不属于第一类声源方位的声源方位的数量为2,显然是大于1的,那么电子设备便可以将不属于预设频率段的语音信号对应的声源方位,确定为用户声源方位,由于低音音响设备发出的语音信号的频率属于一个固定的低频频率范围,那么将预设频率段设定为该低频频率范围,便可以准确地将低音音响设备所在的声源方位排除,进而,电子设备便可以准确地确定出用户声源方位。

作为本发明实施例的一种实施方式,所述将不属于所述预设频率段的语音信号对应的声源方位,确定为所述用户声源方位的步骤,可以包括:

确定不属于所述预设频率段的语音信号对应的声源方位的数量;当所确定的数量大于1时,将所述不属于所述预设频率段的语音信号中,波形与预设波形的相似度大于第一预设值的语音信号对应的声源方位确定为所述用户声源方位。

由于在一些情况下,不属于上述预设频率段的语音信号对应的声源方位的数量也可能是大于1的,也就是说,可能存在多个不属于上述预设频率段的语音信号对应的声源方位,那么此时为了准确确定用户声源方位,电子设备可以进一步通过语音信号的波形比较来确定用户声源方位。

可以理解的是,用户声源方位即为用户发出唤醒指令所对应的声源方位,那么上述预设波形即可以为唤醒词对应的语音信号的波形,这样,与该预设波形的相似度大于第一预设值的波形显然是与唤醒词对应的语音信号的波形相似度很高的波形,那么也就说明该语音信号对应的交互指令很可能就是唤醒指令,那么该语音信号的声源方位也就是用户声源方位。其中,第一预设值可以由本领域技术人员根据电子设备的使用场景中存在的声源所发出语音信号的波形特点等因素进行设定,在此不做具体限定。

例如,在用户发出对应的交互指令为唤醒指令的语音信号的同时,还有其他人发出语音信号,那么电子设备便会接收到用户发出的语音信号和其他人发出的语音信号,其他人发出的语音信号的频率也不属于预设频率段,电子设备可以确定不属于上述预设频率段的语音信号对应的声源方位的数量为多个,显然是大于1的,那么,电子设备便可以将这多个语音信号的波形与预设的唤醒词对应的波形进行比较,相似度高于第一预设值的语音信号的声源方位,也就是用户声源方位。可见,通过该语音信号波形比较方式可以更加准确地确定用户声源方位。

需要说明的是,在确定出第二类声源方位中不属于第一类声源方位的声源方位的数量大于1时,也可以先通过上述语音信号波形比较方式,将与预设波形相似度较高的波形对应的语音信号的声源方位确定出来,如果所确定出的数量仍然大于1,那么便可以进一步将不属于上述预设频率段的语音信号对应的声源方位,确定为所述用户声源方位,这也是合理的。

作为本发明实施例的一种实施方式,在所述第二类声源方位均属于所述第一类声源方位的情况下,上述方法还可以包括:

判断处于同一声源方位的第一语音信号与第二语音信号的能量差值是否大于第二预设值;如果是,将该第二语音信号对应的第二类声源方位确定为所述用户声源方位,其中,所述第一语音信号为所述电子设备处于睡眠状态时接收到的语音信号,所述第二语音信号为所述电子设备处于工作状态时接收到的语音信号。

由于用户发出对应的交互指令为唤醒指令的语音信号时,可能正处于与第一类声源方位中某个声源方位相同的方位上,那么此时电子设备定位出的第二类声源方位就会出现均属于第一类声源方位的情况,在这种情况下,为了能够准确定出用户声源方位,电子设备可以判断处于同一声源方位的第一语音信号与第二语音信号的能量差值是否大于第二预设值。其中,语音信号的能量可以由音量、频率、波形特征等来表征,在此不做具体限定。

需要说明的是,为了方便描述,上述第一语音信号指代的是电子设备处于睡眠状态时所接收到的语音信号,其对应的声源方位也就是第一类声源方位,上述第二语音信号指代的是电子设备处于工作状态时所接收到的语音信号,其对应的声源方位也就是第二类声源方位。进一步需要说明的是,上述第二预设值可以由本领域技术人员根据电子设备的使用场景中存在的声源所发出的语音信号的能量等因素进行设定,在此不做具体限定。

如果处于同一声源方位的第一语音信号与第二语音信号的能量差值大于第二预设值,那么说明第一语音信号与第二语音信号很可能不是同一个声源发出的语音信号。举例来说,如果第一语音信号与第二语音信号都是冰箱所发出的语音信号,那么二者的能量差值是非常小的,也就不会大于第二预设值;如果第一语音信号是冰箱所发出的语音信号,第二语音信号是用户发出的语音信号,那么二者的能量差值一般是比较大的,也就会大于第二预设值。所以当处于同一声源方位的第一语音信号与第二语音信号的能量差值大于第二预设值时,电子设备便可以将该第二语音信号对应的第二类声源方位确定为用户声源方位。

作为本发明实施例的一种实施方式,在所述第二类声源方位均属于所述第一类声源方位的情况下,上述方法还可以包括:

将所述第二类声源方位中,波形与预设波形的相似度大于第一预设值的语音信号对应的声源方位确定为所述用户声源方位。

在第二类声源方位均属于第一类声源方位的情况下,电子设备也可以通过语音信号波形比较的方式确定用户声源方位,具体实现方式与上述波形比较方式类似,相关之处可以参见上述波形比较方式部分的说明,在此不再赘述。

需要说明的是,如果上述处于同一声源方位的第一语音信号与第二语音信号的能量差值大于第二预设值的第二语音信号为多个,那么也可以进一步通过比较该多个第二语音信号的波形与预设波形的相似度来确定用户声源方位,具体实施方式可以参见上述语音信号波形比较方式部分的说明,在此不再赘述。

作为本发明实施例的一种实施方式,所述将所述第二类声源方位中不属于所述第一类声源方位的声源方位定位为用户声源方位的步骤,可以包括:

确定所述第二类声源方位中不属于所述第一类声源方位的声源方位为目标声源方位;

根据所述目标声源方位,确定目标范围[a,b],并将所述目标范围内的声源方位确定为所述用户声源方位,其中,a为所述目标声源方位与第一预设方位差值的差值,b为所述目标声源方位与第二预设方位差值的加和。

可以理解的是,用户在发出语音信号的过程中,可能会在小范围内改变自己所处的位置,那么其发出的语音信号的声源方位也就会随之变化,为了可以在这种情况下也能准确地进行语音信号地接收,电子设备可以将第二类声源方位中不属于第一类声源方位的声源方位确定为目标声源方位,然后根据该目标声源方位,确定目标范围[a,b],并将该目标范围内的声源方位确定为用户声源方位。

其中,a可以为目标声源方位与第一预设方位差值的差值,b可以为目标声源方位与第二预设方位差值的加和。该第一预设方位差值及第二预设方位差值可以相等,也可以不相等,其具体取值可以由本领域技术人员根据电子设备的使用场景及用户的活动情况进行设定,例如,可以为10度、15度、30度等,在此不做具体限定。

在一种实施方式中,第一预设方位差值与第二预设方位差值可以相等,例如,用户声源方位为60度方位,第一预设方位差值及第二预设方位差值均为30度,那么电子设备便可以将(60-30=30)度到(60+30=90)度范围内的声源方位确定为最终的用户声源方位。当然,在另一种实施方式中,第一预设方位差值与第二预设方位差值可以不相等,例如,用户声源方位为60度方位,第一预设方位差值为10度,第二预设方位差值为15度,那么电子设备便可以将(60-10=50)度到(60+15=75)度范围内的声源方位确定为最终的用户声源方位,这都是合理的。

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

如图2所示,一种声源定位装置,应用于具有语音交互功能的电子设备,所述装置包括:

语音信号接收模块210,用于在所述电子设备处于睡眠状态的情况下,持续接收语音信号;

唤醒指令判断模块220,用于分别判断所接收的每一语音信号对应的交互指令是否为唤醒指令;

第一定位模块230,用于在所接收的每一语音信号对应的交互指令不为唤醒指令的情况下,定位并记录该语音信号的声源方位,作为第一类声源方位;

第二定位模块240,用于在所接收的语音信号对应的交互指令为唤醒指令的情况下,由睡眠状态切换至工作状态,定位并记录该语音信号的声源方位,作为第二类声源方位;

用户声源方位确定模块250,用于根据所述第一类声源方位和所述第二类声源方位定位用户声源方位。

可见,本发明实施例所提供的方案中,具有语音交互功能的电子设备处于睡眠状态的情况下,持续接收语音信号,分别判断所接收的每一语音信号对应的交互指令是否为唤醒指令,若为否,定位并记录该语音信号的声源方位,作为第一类声源方位,若为是,由睡眠状态切换至工作状态,定位并记录该语音信号的声源方位,作为第二类声源方位,然后根据第一类声源方位和第二类声源方位定位用户声源方位。可见,电子设备并不是将工作状态时接收到的语音信号中音量最大者对应的声源方位作为用户声源方位,而是根据处于睡眠状态所接收到的语音信号的第一类声源方位,以及由睡眠状态转换为工作状态时所接收到的语音信号的第二类声源方位来定位用户声源方位,用户声源定位的定位准确率大大提高,用户体验更好。

作为本发明实施例的一种实施方式,所述唤醒指令判断模块220可以包括:

信号过滤子模块(图2中未示出)和指令判断子模块(图2中未示出);

所述唤醒指令判断模块220,具体用于通过所述信号过滤子模块和指令判断子模块判断所接收的每一语音信号对应的交互指令是否为唤醒指令;

所述信号过滤子模块,用于对目标语音信号进行过滤处理,滤除所述目标语音信号中频率属于预设频率段的语音信号,其中,所述目标语音信号为:所接收的一个语音信号;

所述指令判断子模块,用于判断过滤处理后的目标语音信号对应的交互指令是否为唤醒指令。

在电子设备的使用环境中往往存在一些频率属于预设频率段的语音信号,例如一些低音音响设备,其所发出的语音信号的频率一般为几十赫兹,明显不属于人发出的语音信号的频率范围,所以采用上述过滤处理方式即可滤除该类语音信号,减少后续定位第二类声源方位的工作量,同时使用户声源定位更加准确。

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

判断子模块(图2中未示出),用于判断所述第二类声源方位中是否存在不属于所述第一类声源方位的声源方位;

用户声源方位确定子模块(图2中未示出),用于在所述第二类声源方位中存在不属于所述第一类声源方位的声源方位的情况下,将所述第二类声源方位中不属于所述第一类声源方位的声源方位定位为用户声源方位。

由于第二类声源方位中不属于第一类声源方位的声源方位即为:在电子设备由睡眠状态切换至工作状态时所定位的,且不属于第一类声源方位的声源方位,那么便可以确定该声源方位为用户发出的对应的交互指令为唤醒指令的语音信号的声源方位,那么该声源方位即为用户声源方位。

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

数量确定单元(图2中未示出),用于确定所述第二类声源方位中不属于第一类声源方位的声源方位的数量;

第一方位确定单元(图2中未示出),用于当所确定的数量大于1时,将不属于所述预设频率段的语音信号对应的声源方位,确定为所述用户声源方位。

由于低音音响等噪声声源发出的语音信号的频率一般属于一个固定的频率范围,那么将预设频率段设定为该固定频率范围,电子设备可以将不属于预设频率段的语音信号对应的声源方位,确定为用户声源方位,这样可以准确地将属于预设频率段的语音信号的声源方位排除,进而,电子设备便可以准确地确定出用户声源方位。

作为本发明实施例的一种实施方式,所述第一方位确定单元可以包括:

数量确定子单元(图2中未示出),用于确定不属于所述预设频率段的语音信号对应的声源方位的数量;

方位确定子单元(图2中未示出),用于当所确定的数量大于1时,将所述不属于所述预设频率段的语音信号中,波形与预设波形的相似度大于第一预设值的语音信号对应的声源方位确定为所述用户声源方位。

通过将不属于预设频率段的语音信号中,波形与预设波形的相似度的判断,可以在不属于预设频率段的语音信号为多个时,准确定位用户声源方位。

作为本发明实施例的一种实施方式,所述装置还可以包括:

能量差值判断模块(图2中未示出),用于在所述第二类声源方位均属于所述第一类声源方位的情况下,判断处于同一声源方位的第一语音信号与第二语音信号的能量差值是否大于第二预设值,其中,所述第一语音信号为所述电子设备处于睡眠状态时接收到的语音信号,所述第二语音信号为所述电子设备处于工作状态时接收到的语音信号;如果是,将该第二语音信号对应的第二类声源方位确定为所述用户声源方位。由于用户发出对应的交互指令为唤醒指令的语音信号时,可能正处于与第一类声源方位中某个声源方位相同的方位上,那么此时电子设备定位出的第二类声源方位就会出现均属于第一类声源方位的情况,在这种情况下,如果处于同一声源方位的第一语音信号与第二语音信号的能量差值大于第二预设值,那么说明第一语音信号与第二语音信号很可能不是同一个声源发出的语音信号。所以当处于同一声源方位的第一语音信号与第二语音信号的能量差值大于第二预设值时,电子设备便可以将该第二语音信号对应的第二类声源方位确定为用户声源方位。

作为本发明实施例的一种实施方式,所述装置还可以包括:

波形比较模块,用于将所述第二类声源方位中,波形与预设波形的相似度大于第一预设值的语音信号对应的声源方位确定为所述用户声源方位。

通过将第二类声源方位对应的语音信号的波形与预设波形的相似度的判断,可以在第二类声源方位均属于第一类声源方位的情况下,准确定位用户声源方位。

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

目标声源方位确定单元(图2中未示出),用于确定所述第二类声源方位中不属于所述第一类声源方位的声源方位为目标声源方位;

第二方位确定单元(图2中未示出),用于根据所述目标声源方位,确定目标范围[a,b],并将所述目标范围内的声源方位确定为所述用户声源方位,其中,a为所述目标声源方位与第一预设方位差值的差值,b为所述目标声源方位与第二预设方位差值的加和。

用户在发出语音信号的过程中,可能会在小范围内改变自己所处的位置,那么其发出的语音信号的声源方位也就会随之变化,采用上述用户声源方位确定方式,电子设备可以在这种情况下准确地进行语音信号地接收,进而进行准确地响应行为。

本发明实施例还提供了一种电子设备,下面对本发明实施例所提供的电子设备进行介绍。

如图3所示,一种电子设备,所述电子设备包括:

壳体301、处理器302、存储器303、电路板304和电源电路305,其中,电路板304安置在壳体301围成的空间内部,处理器302和存储器303设置在电路板304上;电源电路305,用于为电子设备的各个电路或器件供电;存储器303用于存储可执行程序代码;处理器302通过读取存储器303中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于执行上述方法实施例中所述的声源定位方法。

一种实现方式中,上述声源定位方法可以包括:

在所述电子设备处于睡眠状态的情况下,持续接收语音信号;

分别判断所接收的每一语音信号对应的交互指令是否为唤醒指令;

若为否,定位并记录该语音信号的声源方位,作为第一类声源方位;

若为是,由睡眠状态切换至工作状态,定位并记录该语音信号的声源方位,作为第二类声源方位;

根据所述第一类声源方位和所述第二类声源方位定位用户声源方位。

上述声源定位方法的其他实现方式参见前述方法实施例部分的说明,这里不再赘述。

处理器302对上述步骤及上述声源定位方法的其他实现方式的具体执行过程以及处理器302通过运行可执行程序代码来进一步执行的过程,可以参见本发明实施例中图1及图2所示实施例的描述,在此不再赘述。

需要说明的是,该电子设备以多种形式存在,包括但不限于:

(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iphone)、多媒体手机、功能性手机,以及低端手机等。

(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:pda、mid和umpc设备等,例如ipad。

(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如ipod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。

(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。

(5)其他具有数据交互功能的电子装置。

可见,本发明实施例所提供的方案中,电子设备的处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,可以在电子设备处于睡眠状态的情况下,持续接收语音信号,分别判断所接收的每一语音信号对应的交互指令是否为唤醒指令,若为否,定位并记录该语音信号的声源方位,作为第一类声源方位,若为是,由睡眠状态切换至工作状态,定位并记录该语音信号的声源方位,作为第二类声源方位,然后根据第一类声源方位和第二类声源方位定位用户声源方位。可见,电子设备并不是将工作状态时接收到的语音信号中音量最大者对应的声源方位作为用户声源方位,而是根据处于睡眠状态所接收到的语音信号的第一类声源方位,以及由睡眠状态转换为工作状态时所接收到的语音信号的第二类声源方位来定位用户声源方位,用户声源定位的定位准确率大大提高,用户体验更好。

对于电子设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

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

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

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

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