声源朝向检测方法及装置
文献发布时间:2024-04-18 19:58:30
技术领域
本发明涉及人工智能技术领域,尤其是涉及一种声源朝向检测方法及装置。
背景技术
随着社会经济的迅猛发展和技术智能化水平的不断提升,各种智能家居电器已经普及到千家万户。对于智慧家庭的理解已经超越了简单的语音交互,人们希望语音设备能够像人一样感知交互对象的方位,并提供更全面的交互体验。为了实现这一目标,麦克风阵列定位技术被引入,它是一种利用声学处理技术来估计说话人方位的方法。这种技术基于远场平面波假设,并利用声波到达麦克风阵列中不同基元的时延随入射方向变化而变化的原理,从而测量说话人相对于麦克风阵列的方向。
目前,智能设备的语音交互功能主要通过两种方式实现:一种是通过外部设备进行级联控制,例如通过智能音箱控制多个设备;另一种是通过特定关键词唤醒(例如说出"Hi Siri")进行交互。然而,在实际应用中,级联控制方式需要不同厂商的设备之间相互通讯,而这在市场竞争中往往难以实现;而关键词唤醒技术在使用时存在一些不便,特别是当空间中存在多个相同设备时,使用关键词唤醒容易导致误触发。
因此,对于智能设备来说,如果能够识别说话人的朝向,并使响应命令的设备与说话人朝向一致,将极大提高智能设备的语音交互能力,并减少使用关键词唤醒技术时的误触发。
发明内容
有鉴于此,本发明的目的在于提供一种声源朝向检测方法及装置,以实现声源朝向的准确检测,从而更好的实现多个智能设备的语音交互。
第一方面,本发明实施例提供了一种声源朝向检测方法,所述方法包括:通过麦克风阵列采集得到不同采集时刻环境中的初始语音信号;将麦克风阵列在每个采集时刻采集到的初始语音信号预处理成相应的多个语音信号帧;其中,所述预处理包括依次进行的滤波和加窗分帧;获取每个语音信号帧的短时能量,并基于全部语音信号帧的短时能量建立至少一个待检测组;其中,每个待检测组包括采集时刻相邻的三个待检测样本;通过预先训练好的深度学习模型对每个待检测组进行声源朝向检测,得到每个待检测组的声源朝向。
第二方面,本发明实施例还提供一种声源朝向检测装置,所述装置包括:采集模块,用于通过麦克风阵列采集得到不同采集时刻环境中的初始语音信号;预处理模块,用于将麦克风阵列在每个采集时刻采集到的初始语音信号预处理成相应的多个语音信号帧;其中,所述预处理包括依次进行的滤波和加窗分帧;建立模块,用于获取每个语音信号帧的短时能量,并基于全部语音信号帧的短时能量建立至少一个待检测组;其中,每个待检测组包括采集时刻相邻的三个待检测样本;检测模块,用于通过预先训练好的深度学习模型对每个待检测组进行声源朝向检测,得到每个待检测组的声源朝向。
本发明实施例提供的一种声源朝向检测方法及装置,先通过麦克风阵列采集得到不同采集时刻环境中的初始语音信号,再将麦克风阵列在每个采集时刻采集到的初始语音信号预处理成相应的多个语音信号帧,之后获取每个语音信号帧的短时能量并基于全部语音信号帧的短时能量建立至少一个待检测组,最终通过预先训练好的深度学习模型对每个待检测组进行声源朝向检测以得到相应的声源朝向。采用上述技术,通过将麦克风阵列技术与深度学习技术相结合的方式实现了声源朝向的准确检测,从而利于更好的实现多个智能设备的语音交互。
本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中一种声源朝向检测方法的流程示意图;
图2为本发明实施例中声源朝向检测方法的示例图;
图3为本发明实施例中声源朝向估计的示例图;
图4为本发明实施例中一种声源朝向检测装置的结构示例图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合实施例对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前,智能设备的语音交互功能主要通过两种方式实现:一种是通过外部设备进行级联控制,例如通过智能音箱控制多个设备;另一种是通过特定关键词唤醒(例如说出"Hi Siri")进行交互。然而,在实际应用中,级联控制方式需要不同厂商的设备之间相互通讯,而这在市场竞争中往往难以实现;而关键词唤醒技术在使用时存在一些不便,特别是当空间中存在多个相同设备时,使用关键词唤醒容易导致误触发。
基于此,本发明实施提供的一种声源朝向检测方法及装置,可以实现声源朝向的准确检测,从而更好的实现多个智能设备的语音交互。
为便于对本实施例进行理解,首先对本发明实施例所公开的一种声源朝向检测方法进行详细介绍,参见图1所示的一种声源朝向检测方法的流程示意图,该方法可以包括以下步骤:
步骤S102,通过麦克风阵列采集得到不同采集时刻环境中的初始语音信号。
步骤S104,将麦克风阵列在每个采集时刻采集到的初始语音信号预处理成相应的多个语音信号帧。
其中,上述预处理可以包括依次进行的滤波和加窗分帧。
步骤S106,获取每个语音信号帧的短时能量,并基于全部语音信号帧的短时能量建立至少一个待检测组。
其中,每个待检测组可以包括采集时刻相邻的三个待检测样本。
步骤S108,通过预先训练好的深度学习模型对每个待检测组进行声源朝向检测,得到每个待检测组的声源朝向。
本发明实施例提供的一种声源朝向检测方法,先通过麦克风阵列采集得到不同采集时刻环境中的初始语音信号,再将麦克风阵列在每个采集时刻采集到的初始语音信号预处理成相应的多个语音信号帧,之后获取每个语音信号帧的短时能量并基于全部语音信号帧的短时能量建立至少一个待检测组,最终通过预先训练好的深度学习模型对每个待检测组进行声源朝向检测以得到相应的声源朝向。采用上述技术,通过将麦克风阵列技术与深度学习技术相结合的方式实现了声源朝向的准确检测,从而利于更好的实现多个智能设备的语音交互。
作为一种可能的实施方式,上述步骤S104(即将麦克风阵列在每个采集时刻采集到的初始语音信号预处理成相应的多个语音信号帧)可以包括:
(1)通过滤波器对每个采集时刻的初始语音信号进行滤波,得到每个采集时刻的滤波后语音信号。
示例性地,对于某个采集时刻的初始语音信号,可使用FIR滤波器对该采集时刻的初始语音信号进行降噪滤波以过滤掉频率在300Hz~3400Hz之外的语音信号,从而提高语音信号的质量。
(2)通过预设窗长参数的汉明窗对每个采集时刻的滤波后语音信号进行加窗分帧,得到每个采集时刻的多个语音信号帧。
示例性地,对于某个采集时刻的滤波后语音信号,假设该采集时刻的滤波后语音信号中n+m时刻的语音信号为x(n+m),假设经过加窗分帧处理后得到的第n帧语音信号(即第n个语音信号帧)中m时刻的语音信号为x
x
其中,0≤m≤N-1,w(m)表示汉明窗函数,n=0,T,2T…且T为帧移长度,N为帧长,为第n帧语音信号时刻。
由于语音信号具有非平稳、时变的特点,因此上述采用汉明窗对语音信号进行加窗分帧的操作方式可以获取到短时平稳的信号。
作为一种可能的实施方式,上述步骤S106中获取每个语音信号帧的短时能量可以包括:
按照以下公式计算得到每个语音信号帧的短时能量:
其中,x
作为一种可能的实施方式,上述步骤S106中基于全部语音信号帧的短时能量建立至少一个待检测组可以包括:从全部语音信号帧中筛选出每个采集时刻所对应的语音信号帧集合,并将每个采集时刻所对应语音信号帧集合中全部语音信号帧的短时能量组成相应的一个待检测样本;采集时刻相邻的每三个待检测样本便组成一个待检测组,得到至少一个待检测组。
示例性地,对于某个采集时刻,可将该采集时刻所对应的全部语音信号帧按照时间正序进行排序以组成一个时间序列作为待检测样本,并将与该采集时刻前、后相邻的两个时刻各自所对应的全部语音信号帧也按照时间正序进行排序以组成相应的时间序列作为待检测样本,之后将得到的这三个待检测样本组成一个待检测组。
作为一种可能的实施方式,上述深度学习模型可以包括依次连接的LSTM(LongShort Term Memory,长短期记忆)层、注意力层和全连接层;上述步骤S108(即通过预先训练好的深度学习模型对每个待检测组进行声源朝向检测,得到每个待检测组的声源朝向)可以包括:
步骤1,通过LSTM层分别按照时间正序和时间逆序对每个待检测组进行特征提取,得到每个待检测组的隐藏状态。
在LSTM层可使用双向LSTM网络结构;基于此,上述步骤1的操作方式可以包括:
步骤11,可将每个待检测组中的三个待检测样本分别按照时间正序和时间逆序依次输入LSTM层,以通过LSTM层获取每个待检测组的前向隐藏状态和后向隐藏状态;其中,前向隐藏状态与时间正序对应,后向隐藏状态与时间逆序对应。
步骤12,通过LSTM层将每个待检测组的前向隐藏状态和后向隐藏状态组成相应的隐藏状态。
例如,对于由t-2时刻、t-1时刻和t时刻采集到的语音信号各自所对应的待检测样本x
步骤2,通过注意力层对每个待检测组的隐藏状态进行注意力计算,得到每个待检测组的高级特征。
注意力机制本质上就是去学习声音特征中与声源朝向有关的特征的权重,进而从中提取出与声源朝向判别最为相关的特征。基于此,上述步骤2的操作方式可以包括:
对于每个待检测组,将该待检测组的隐藏状态输入注意力层,以通过注意力层按照以下公式计算得到该待检测组的高级特征:
e
其中,h
步骤3,通过全连接层对每个待检测组的高级特征进行分类计算,得到每个待检测组的声源朝向。
在全连接层中,主要实现了声音信息的高级特征与声源朝向之间的映射;基于此,上述步骤2的操作方式可以包括:
对于每个待检测组,将该待检测组的高级特征输入全连接层,以通过全连接层按照以下公式计算得到该待检测组的声源朝向:
out=softmax(WC+b)
其中,out为该待检测组的声源朝向。
为了便于理解,在此以某一具体应用为例对上述声源朝向检测方法进行示例性描述如下。参见图2所示,上述声源朝向检测方法可按照如下操作方式进行:
步骤一,麦克风阵列获得环境的音频信息。
上述步骤一中,可截取麦克风阵列所采集到的t-1时刻到t时刻的音频信息,即完成t时刻对应的语音信号采集。
步骤二,使用滤波器对音频信息进行降噪滤波。
上述步骤二中,降噪滤波过程所使用的滤波器为FIR带通滤波器,过滤掉原始语音信号中300Hz~3400Hz之外的频率信号,从而提高语音信号的质量。
步骤三,采用汉明窗对语音信号进行加窗分帧,以获取短时平稳的信号(即语音信号帧)。
步骤四,计算得到每个语音信号帧的短时能量作为相应的声源朝向特征序列。
上述步骤四中,可将t-1时刻至t时刻的语音信号帧的短时能量作为时刻t的声源朝向特征序列。
步骤五,将t-2时刻、t-1时刻和t时刻各自的声源朝向特征序列输入到预先训练好的声源朝向检测模型进行声源朝向估计。
上述步骤五中,声源朝向检测模型采用基于注意力机制的声源朝向估计算法框架,如图3所示,该框架主要由LSTM层、attention层及全连接层三个部分组成,该框架的主要工作原理如下:
在LSTM层采用了双向LSTM网络结构,假设t时刻的声源朝向特征序列中含有n个麦克风采集到的特征信息,则t时刻采集到的声源朝向特征序列x
t-2时刻和t-1时刻各自采集到的声源朝向特征序列x
将t-2时刻、t-1时刻和t时刻各自采集到的声源朝向特征序列x
和/>
在attention层所使用的注意力机制的权重计算可以通过如下的公式实现:
e
e
e
其中,h
在全连接层中,主要利用预先建立的高级特征与声源朝向之间的映射关系实现了声音信息的高级特征与声源朝向之间的映射,其计算可以表示为:
out=softmax(WC+b)
上述声源朝向检测方法可应用于智能监控、智慧大屏、多屏协作等场景,实现多设备的语音交互。
上述声源朝向检测方法结合麦克风阵列技术以及声音信号处理技术,从而更好的实现多设备的语音交互,且基于音频检测技术的端到端深度学习技术的应用,提高了声源朝向检测的精度。
基于上述声源朝向检测方法,本发明实施例还提供一种声源朝向检测装置,参见图4所示,该装置可以包括以下模块:
采集模块402,用于通过麦克风阵列采集得到不同采集时刻环境中的初始语音信号。
预处理模块404,用于将麦克风阵列在每个采集时刻采集到的初始语音信号预处理成相应的多个语音信号帧;其中,所述预处理包括依次进行的滤波和加窗分帧。
建立模块406,用于获取每个语音信号帧的短时能量,并基于全部语音信号帧的短时能量建立至少一个待检测组;其中,每个待检测组包括采集时刻相邻的三个待检测样本。
检测模块408,用于通过预先训练好的深度学习模型对每个待检测组进行声源朝向检测,得到每个待检测组的声源朝向。
本发明实施例提供的一种声源朝向检测装置,先通过麦克风阵列采集得到不同采集时刻环境中的初始语音信号,再将麦克风阵列在每个采集时刻采集到的初始语音信号预处理成相应的多个语音信号帧,之后获取每个语音信号帧的短时能量并基于全部语音信号帧的短时能量建立至少一个待检测组,最终通过预先训练好的深度学习模型对每个待检测组进行声源朝向检测以得到相应的声源朝向。采用上述技术,通过将麦克风阵列技术与深度学习技术相结合的方式实现了声源朝向的准确检测,从而利于更好的实现多个智能设备的语音交互。
上述预处理模块404还可以用于:通过滤波器对每个采集时刻的初始语音信号进行滤波,得到每个采集时刻的滤波后语音信号;通过预设窗长参数的汉明窗对每个采集时刻的滤波后语音信号进行加窗分帧,得到每个采集时刻的多个语音信号帧。
上述建立模块406还可以用于:按照以下公式计算得到每个语音信号帧的短时能量:
其中,x
上述建立模块406还可以用于:从全部语音信号帧中筛选出每个采集时刻所对应的语音信号帧集合,并将每个采集时刻所对应语音信号帧集合中全部语音信号帧的短时能量组成相应的一个待检测样本;将采集时刻相邻的三个待检测样本组成一个待检测组,得到至少一个待检测组。
上述深度学习模型可以包括依次连接的LSTM层、注意力层和全连接层;基于此,上述检测模块408还可以用于:通过所述LSTM层分别按照时间正序和时间逆序对每个待检测组进行特征提取,得到每个待检测组的隐藏状态;通过所述注意力层对每个待检测组的隐藏状态进行注意力计算,得到每个待检测组的高级特征;通过所述全连接层对每个待检测组的高级特征进行分类计算,得到每个待检测组的声源朝向。
上述检测模块408还可以用于:将每个待检测组中的三个待检测样本分别按照时间正序和时间逆序依次输入所述LSTM层,以通过所述LSTM层获取每个待检测组的前向隐藏状态和后向隐藏状态;其中,所述前向隐藏状态与时间正序对应,所述后向隐藏状态与时间逆序对应;通过所述LSTM层将每个待检测组的前向隐藏状态和后向隐藏状态组成相应的隐藏状态。
上述检测模块408还可以用于:将每个待检测组的隐藏状态输入所述注意力层,以通过所述注意力层按照以下公式计算得到每个待检测组的高级特征:
e
其中,表示每个待检测组中第i个待检测样本的隐藏层状态,W表示所述深度学习模型的权重系数矩阵,b表示所述深度学习模型的偏置项,a
上述检测模块408还可以用于:将每个待检测组的高级特征输入所述全连接层,以通过所述全连接层按照以下公式计算得到每个待检测组的声源朝向:
out=softmax(WC+b)
其中,out为每个待检测组的声源朝向。
本发明实施例所提供的声源朝向检测装置,其实现原理及产生的技术效果和前述声源朝向检测方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对步骤、数字表达式和数值并不限制本发明的范围。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
- 声源分离信息检测装置、机器人、声源分离信息检测方法和存储介质
- 移动体检测装置及检测方法、移动体学习装置及学习方法、移动体检测系统以及程序
- 一种解决大体型昆虫90度朝向错误的体轴朝向提取方法
- 声源朝向的确定方法和装置、存储介质及电子装置
- 声源检测装置、噪声模型生成装置、噪声抑制装置、声源方位推定装置、接近车辆检测装置以及噪声抑制方法