发明内容
为解决上述问题,本发明提出了一种波束系数存储方法、装置、设备和存储介质。
第一方面,本申请实施例提供一种波束系数存储方法,所述方法包括:
通过正圆形麦克风阵列中麦克风采集音频信号,所述正圆形麦克风阵列中均匀设置有多个所述麦克风;
根据固定波束的方向获取第一固定波束和第二固定波束,所述固定波束的方向是根据所述正圆形麦克风阵列中麦克风的角度和所述固定波束的数量设置的;所述固定波束的数量根据所述麦克风的数量确定;
对所述音频信号对应的频域数字信号中的每一个频率点存储所述第一固定波束的波束系数和所述第二固定波束的波束系数。
第二方面,本申请实施例提供一种波束系数存储装置,所述装置包括:
采集模块,用于通过正圆形麦克风阵列中麦克风采集音频信号,所述正圆形麦克风阵列中均匀设置有多个所述麦克风;
获取模块,用于根据固定波束的方向获取第一固定波束和第二固定波束,所述固定波束的方向是根据所述正圆形麦克风阵列中麦克风的角度和所述固定波束的数量设置的;所述固定波束的数量根据所述麦克风的数量确定;
存储模块,用于对所述音频信号对应的频域数字信号中的每一个频率点存储所述第一固定波束的波束系数和所述第二固定波束的波束系数。
第三方面,本申请实施例提供一种波束系数存储设备,包括:
一个或多个处理器;
与所述一个或多个处理器通信连接的存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序被配置为执行以上所述的方法。
第四方面,本申请实施例提供一种计算机可读存储介质,其存储有计算机程序,该程序被处理器执行时实现以上所述的方法。
本发明提出的一种波束系数存储方法、装置、设备和存储介质,首先通过正圆形麦克风阵列中麦克风采集音频信号;然后根据固定波束的方向获取第一固定波束和第二固定波束,所述固定波束的方向是根据所述正圆形麦克风阵列中麦克风的角度和所述固定波束的数量设置的;最后对音频信号对应的频域数字信号中的每一个频率点存储所述第一固定波束的波束系数和所述第二固定波束的波束系数。与目前对于每个频率点存储有DM个(麦克风个数与固定波束的个数的乘积)波束系数相比,本发明根据正圆形麦克风阵列的旋转对称性,所有波束系数都可以通过第一固定波束和第二固定波束的波束系数变化得到,因此每个频率点仅存储第一固定波束的波束系数和第二固定波束的波束系数即可实现所有固定波束的转换,从而通过本发明可减少存储波束系数占用的存储空间。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在本申请的说明书和权利要求书及上述附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。
基于此,本申请实施例提供了一种波束系数存储方法、装置、设备和存储介质;具体地,图1为本发明实施例波束系数存储方法的实现流程示意图,如图1所示,所述方法包括:
步骤101:通过正圆形麦克风阵列中麦克风采集音频信号。
其中,所述正圆形麦克风阵列中均匀设置有多个所述麦克风;所述麦克风阵列中各麦克风等间距的设置于不同方向,以从不同方向采集音频信号。具体的,麦克风的个数具体可以为4个、6个、8个等,本发明实施例不做具体限定。
需要说明的是,由于音频信号在时域都是以实数表示的,而对音频进行滤波则需要频域数字信号下进行的,因此在通过麦克风采集音频信号之后,需要使用实数离散傅立叶变换将时域的音频信号转换为转换对应的频域数字信号,以便于在后续步骤中对频域数字信号进行滤波处理,即存储频域数字信号中的每一个频率点的波束系数。
步骤102:根据固定波束的方向获取第一固定波束和第二固定波束。
如图2所示,正圆形麦克风阵列中黑色的点代表麦克风,横穿正圆圆心的直线为固定波束,其中,所述固定波束的方向是根据所述正圆形麦克风阵列中麦克风的角度和所述固定波束的数量设置的,即所有的固定波束均匀设置在正圆形麦克风阵列中。所述固定波束的数量根据所述麦克风的数量确定。具体的,所述固定波束的数量为所述麦克风的数量的N倍,如固定波束的数量为所述麦克风的数量的2倍、4倍等。
对于本发明实施例,在根据固定波束的方向获取第一固定波束和第二固定波束之前,所述方法还包括:
根据所述正圆形麦克风阵列的旋转对称性,以及所述固定波束的方向与所述正圆形麦克风阵列中麦克风的位置关系将所述固定波束划分为第一固定波束和第二固定波束。
具体的,根据所述正圆形麦克风阵列的旋转对称性,以及所述固定波束的方向与所述正圆形麦克风阵列中麦克风的位置关系将所述固定波束划分为第一固定波束和第二固定波束,包括:
1、将与所述正圆形麦克风阵列中的麦克风连成一条直线的固定波束确定为所述第一固定波束;
参照图2中,与正圆形麦克风阵列中的麦克风连成一条直线的固定波束为第一固定波束θd,d is odd。
2、将在所述正圆形麦克风阵列中两个相邻麦克风连线的垂直平分线上的固定波束确定为所述第二固定波束。
参照图2中,在所述正圆形麦克风阵列中两个相邻麦克风连线的垂直平分线上的固定波束确定为所述第二固定波束θd,d is even。
以下结合图2具体示例对本申请方案做进一步详细说明,具体地,本示例能够通过正圆形麦克风阵列的旋转对称性,可大大减少滤波器系数存储所需的空间。
设麦克风个数为M,在圆周上均匀分布的固定波束方向个数为D,选择D为M的整数倍,即D=D2M,D2∈Z+。举例来说,以6个麦克风的正圆形麦克风阵列为例,即M=6,通过观察固定波束系数特性,选择D2=2,这样,可以在系数存储效率与波束方向精度之间达到最好的平衡。
记1号麦克风正对方向为0°,逆时针方向旋转,D=D2M=2×6=12个固定波束的方向分别为:θd=360°(d-1)\D,d=1,2,...,D。可以注意到,所有12个固定波束可分为两类:
第一,主方向(即波束的方向)朝向正圆形麦克风阵列圆心与某个麦克风连线,即θd,d is odd;d is odd是指所有θd中的d为奇数,也就是θ1,θ3,θ5...
第二,主方向朝向某两个相邻麦克风连线的垂直平分线方向,即θd,d is even。dis even是指所有θd中的d为偶数,也就是θ2,θ4,θ6...
这里,由正圆形麦克风阵列的旋转对称性可知,所有12个固定波束均可由主方向为θ1或θ2的波束旋转得到。设主方向为θd的波束系数(也即波束系数)为W(θd)=[W1(θd),W2(θd),…,W6(θd)]T,则有:
图2中的12个波束系数,其实都可以通过对第一固定波束的波束系数和第二固定波束的波束系数,经过某种变换得到。即所有奇(偶)数波束系数,都可以通过第一固定波束和第二固定波束的波束系数与矩阵Pm相乘得到。
具体的,第d个波束有6个波束系数(即麦克风个数M=6的情况),这些系数分别是[W1(θd),W2(θd),…,W6(θd)。这12个波束系数中,所有编号奇数的波束系数,都可以通过第一固定波束的波束系数,经过变换(Pm)得到;而所有编号偶数的波束系数,都可以通过第二固定波束的波束系数,经过变换(Pm)得到。
当m=1时,P1=P2∧(m-1)=P2∧0=I(单位矩阵)。
步骤103:对所述音频信号对应的频域数字信号中的每一个频率点存储所述第一固定波束的波束系数和所述第二固定波束的波束系数。
本发明提出的一种波束系数存储方法,首先通过正圆形麦克风阵列中麦克风采集音频信号;然后根据固定波束的方向获取第一固定波束和第二固定波束,所述固定波束的方向是根据所述正圆形麦克风阵列中麦克风的角度和所述固定波束的数量设置的;最后对音频信号对应的频域数字信号中的每一个频率点存储所述第一固定波束的波束系数和所述第二固定波束的波束系数。与目前对于每个频率点存储有DM个(麦克风个数与固定波束的个数的乘积)波束系数相比,本发明根据正圆形麦克风阵列的旋转对称性,所有波束系数都可以通过第一固定波束和第二固定波束的波束系数变化得到,因此每个频率点仅存储第一固定波束的波束系数和第二固定波束的波束系数即可实现所有固定波束的转换,从而通过本发明可减少存储波束系数占用的存储空间。
如图3所示,本发明实施例提供的另一种波束系数存储方法,在根据固定波束的方向获取第一固定波束和第二固定波束之后,所述方法还包括:
步骤10、计算所述第一固定波束的波束系数、所述第二固定波束的波束系数;
步骤20、根据所述第一固定波束的波束系数、所述第二固定波束的波束系数中波束系数的重复或共轭特性,确定所述第一固定波束的波束系数中的第一特殊值,第二固定波束的波束系数中的第二特殊值;
步骤30、对所述音频信号对应的频域数字信号中的每一个频率点存储所述第一特殊值和所述第一特殊值。
在本实施例中,所述麦克风的数量为6,所述固定波束的数量为12,所述第一特殊值和所述第二特殊值的数量均为2。由正圆形麦克风阵列的旋转对称性可知,所有12个固定波束均可由主方向为θ1或θ2的波束旋转得到。设主方向为θd的波束系数(也即波束系数)为W(θd)=[W1(θd),W2(θd),…,W6(θd)]T,则有:
图2中的12个波束系数,其实都可以通过对第一固定波束的波束系数和第二固定波束的波束系数,经过某种变换得到。即所有奇(偶)数波束系数,都可以通过第一固定波束和第二固定波束的波束系数与矩阵Pm相乘得到。
此外,观察W(θ1)和W(θ2)可以发现,对于M=6正圆形麦克风阵列,对于某一个频率点,M个系数中,仅有两个特殊值,其余所有系数均可表示为这两个值本身,或者其共轭。具体有:
W(θ1)=[W1(θ1),W2(θ1),W2(θ1)*,W1(θ1),W2(θ1)*,W2(θ1)]T
W(θ2)=[W1(θ2),W1(θ2),W2(θ2),W1(θ2)*,W1(θ2)*,W2(θ2)*]T
结合上述两点,旋转对称性以及系数的重复或共轭特性只需要存储2×2=4个系数,即可实现总共12×6=72个系数的相同效果,系数存储空间仅为原有的4/72×100%≈5.5%。
本发明实施例根据正圆形麦克风阵列的旋转对称性,所有波束系数都可以通过第一固定波束和第二固定波束的波束系数变化得到,根据所述第一固定波束的波束系数、所述第二固定波束的波束系数中波束系数的重复或共轭特性,确定所述第一固定波束的波束系数中的第一特殊值,第二固定波束的波束系数中的第二特殊值;最后对所述音频信号对应的频域数字信号中的每一个频率点存储所述第一特殊值和所述第一特殊值。从而通过本发明可减少存储波束系数占用的存储空间。
本申请实施例还提供了一种波束系数存储装置,如图4所示,所述装置包括:
采集模块10,用于通过正圆形麦克风阵列中麦克风采集音频信号,所述正圆形麦克风阵列中均匀设置有多个所述麦克风;
获取模块20,用于根据固定波束的方向获取第一固定波束和第二固定波束,所述固定波束的方向是根据所述正圆形麦克风阵列中麦克风的角度和所述固定波束的数量设置的;所述固定波束的数量根据所述麦克风的数量确定;
存储模块30,用于对所述音频信号对应的频域数字信号中的每一个频率点存储所述第一固定波束的波束系数和所述第二固定波束的波束系数。
进一步的,所述装置还包括:
划分模块40,用于根据所述正圆形麦克风阵列的旋转对称性,以及所述固定波束的方向与所述正圆形麦克风阵列中麦克风的位置关系将所述固定波束划分为第一固定波束和第二固定波束。
具体的,所述划分模块40具体用于:
将与所述正圆形麦克风阵列中的麦克风连成一条直线的固定波束确定为所述第一固定波束;
将在所述正圆形麦克风阵列中两个相邻麦克风连线的垂直平分线上的固定波束确定为所述第二固定波束。
进一步的,所述装置还包括:
计算模块50,用于计算所述第一固定波束的波束系数、所述第二固定波束的波束系数;
确定模块60,用于根据所述第一固定波束的波束系数、所述第二固定波束的波束系数中波束系数的重复或共轭特性,确定所述第一固定波束的波束系数中的第一特殊值,第二固定波束的波束系数中的第二特殊值;
所述存储模块30,还用于对所述音频信号对应的频域数字信号中的每一个频率点存储所述第一特殊值和所述第一特殊值。
具体的,所述固定波束的数量为所述麦克风的数量的N倍。
具体的,所述麦克风的数量为6,所述固定波束的数量为12,所述第一特殊值和所述第二特殊值的数量均为2。
这里需要指出的是:以上装置实施例项的描述,与上述方法描述是类似的,具有同方法实施例相同的有益效果,因此不做赘述。对于本发明装置实施例中未披露的技术细节,本领域的技术人员请参照本发明方法实施例的描述而理解,为节约篇幅,这里不再赘述。
本申请实施例还提供了一种波束系数存储设备,包括:一个或多个处理器;与所述一个或多个处理器通信连接的存储器;一个或多个应用程序;其中,所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序被配置为执行以上所述的方法。
在一具体示例中,本申请实施例所述的波束系数存储设备可具体为如图5所示的结构,所述波束系数存储设备至少包括处理器31、存储介质32以及至少一个外部通信接口33;所述处理器31、存储介质32以及外部通信接口33均通过总线34连接。所述处理器31可为微处理器、中央处理器、数字信号处理器或可编程逻辑阵列等具有处理功能的电子元器件。所述存储介质中存储有计算机可执行代码,所述计算机可执行代码能够执行以上任一实施例所述的方法。
这里需要指出的是:以上波束系数存储设备实施例项的描述,与上述方法描述是类似的,具有同方法实施例相同的有益效果,因此不做赘述。对于本发明波束系数存储设备实施例中未披露的技术细节,本领域的技术人员请参照本发明方法实施例的描述而理解,为节约篇幅,这里不再赘述。
本申请实施例还提供了一种计算机可读存储介质,其存储有计算机程序,该程序被处理器执行时实现以上所述的方法。
这里,计算机可读存储介质可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读存储介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式只读存储器(CDROM)。另外,计算机可读存储介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。所述存储介质可以是只读存储器,磁盘或光盘等。
上述所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。