CN113314138A - 基于麦克风阵列的声源监听分离方法、装置及存储介质 - Google Patents
基于麦克风阵列的声源监听分离方法、装置及存储介质 Download PDFInfo
- Publication number
- CN113314138A CN113314138A CN202110452030.6A CN202110452030A CN113314138A CN 113314138 A CN113314138 A CN 113314138A CN 202110452030 A CN202110452030 A CN 202110452030A CN 113314138 A CN113314138 A CN 113314138A
- Authority
- CN
- China
- Prior art keywords
- sound source
- microphone array
- monitoring
- microphone
- classification result
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000012544 monitoring process Methods 0.000 title claims abstract description 51
- 238000000034 method Methods 0.000 title claims abstract description 40
- 238000003491 array Methods 0.000 claims abstract description 47
- 238000000926 separation method Methods 0.000 claims abstract description 10
- 230000006870 function Effects 0.000 claims description 94
- 239000013598 vector Substances 0.000 claims description 57
- 238000004590 computer program Methods 0.000 claims description 24
- 239000011159 matrix material Substances 0.000 claims description 13
- 230000009466 transformation Effects 0.000 claims description 12
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 238000004422 calculation algorithm Methods 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 230000006872 improvement Effects 0.000 description 5
- 230000004807 localization Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 241000209140 Triticum Species 0.000 description 2
- 235000021307 Triticum Nutrition 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000005314 correlation function Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000011478 gradient descent method Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0272—Voice signal separating
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
- G10L21/0216—Noise filtering characterised by the method used for estimating noise
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
- G10L21/0216—Noise filtering characterised by the method used for estimating noise
- G10L21/0232—Processing in the frequency domain
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0272—Voice signal separating
- G10L21/0308—Voice signal separating characterised by the type of parameter measurement, e.g. correlation techniques, zero crossing techniques or predictive techniques
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/20—Speech recognition techniques specially adapted for robustness in adverse environments, e.g. in noise, of stress induced speech
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
- G10L2021/02087—Noise filtering the noise being separate speech, e.g. cocktail party
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
- G10L21/0216—Noise filtering characterised by the method used for estimating noise
- G10L2021/02161—Number of inputs available containing the signal or the noise to be suppressed
- G10L2021/02166—Microphone arrays; Beamforming
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Quality & Reliability (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Circuit For Audible Band Transducer (AREA)
- Measurement Of Velocity Or Position Using Acoustic Or Ultrasonic Waves (AREA)
Abstract
本发明涉及声源定位技术领域,公开了一种基于麦克风阵列的声源监听分离方法、装置、终端设备及存储介质,该方法包括:获取多个麦克风阵列的输出信号;对所述输出信号进行分类,得到分类结果;根据分类结果确定声源的数目和位置信息;在每个麦克风阵列的坐标系下,根据声源的位置信息构建关于任一声源的代价函数,并计算得到对应的函数值;根据任一声源在不同麦克风阵列的坐标系下的函数值,确定监听所述任一声源的最优麦克风阵列。本发明可以解决单个麦克风阵列无法监听分离间隔较小的多个声源的问题,从而有利于后续语音识别。
Description
技术领域
本发明涉及声源定位技术领域,尤其涉及一种基于麦克风阵列的声源监听分离方法、装置、终端设备及存储介质。
背景技术
在语音识别技术领域中,可以采用单个麦克风阵列的多通道语音分离技术对语音进行分离,即利用一个麦克风阵列和多个波束形成器对空间中多声源进行监听,其中涉及的算法有声源定位算法和波束形成算法。这种技术利用了空间信息,假设麦克风阵列定位到某一声源位于90°位置,则只需要调整波束形成器的参数,使波束形成器对90°入射声源的增益为1,其他方向入射声源的增益为0,通过这种方式来接收90°入射信号的同时抑制其他方向声源,从而起到了语音分离的作用。
但是,波束形成器在理想方向的一定范围区间内都有较大增益,这个区间就叫主瓣宽度。由于主瓣宽度的存在,当监听的两个声源的角度间隔较小时,两声源会相互干扰,不利于后续语音识别。例如波束形成器在理想方向为90°,但在85°~95°的区间入射的信号也会有较大的增益,从而导致位于85°~95°方向的其他声源会对90°的期望声源造成干扰。
发明内容
本发明实施例的目的是提出一种基于麦克风阵列的声源监听分离方法、装置、终端设备及存储介质,可以解决单个麦克风阵列无法监听分离间隔较小的多个声源的问题,从而有利于后续语音识别。
为实现上述目的,本发明一实施例提供了一种基于麦克风阵列的声源监听分离方法,包括:
获取多个麦克风阵列的输出信号;
对所述输出信号进行分类,得到分类结果;
根据分类结果确定声源的数目和位置信息;
在每个麦克风阵列的坐标系下,根据声源的位置信息构建关于任一声源的代价函数,并计算得到对应的函数值;
根据任一声源在不同麦克风阵列的坐标系下的函数值,确定监听所述任一声源的最优麦克风阵列。
优选地,所述根据声源的位置信息建立关于任一声源的代价函数,并计算得到对应的函数值,具体包括:
根据每个声源在世界坐标系下的第一坐标与每个麦克风阵列相对于所述世界坐标系的空间变换矩阵,得到每个声源在对应麦克风阵列的坐标系下的第二坐标;
根据所述第二坐标与对应麦克风阵列的坐标原点,得到对应每个声源的声源向量;其中,所述声源向量的方向为由所述坐标原点指向所述第二坐标;
根据所述声源向量,确定每个声源向量与其他声源向量的最小夹角值;
根据所述最小夹角值,构建每个声源的代价函数,并得到对应函数值。
优选地,所述最小夹角值是通过公式进行计算得到的;其中,fj为第j个声源向量与其他声源向量的最小夹角值,为第j个声源向量,为第k个声源向量;1≤j≤K,1≤k≤K,j≠k,K为对应麦克风阵列监听到的声源总个数。
优选地,所述根据任一声源在不同麦克风阵列的坐标系下的函数值,确定监听所述任一声源的最优麦克风阵列,具体包括:
比较任一声源在所有麦克风阵列的坐标系下的函数值的大小;
将函数值最小的麦克风阵列作为监听所述任一声源的最优麦克风阵列。
优选地,所述对所述输出信号进行分类,得到分类结果,具体包括:
根据任一麦克风阵列的输出信号得到初始分类结果;
计算其它麦克风阵列的任一输出信号与所述初始分类结果中的所有类别之间的相似度,并获取最大相似度;
当所述最大相似度大于预设阈值时,将所述任一输出信号归入最大相似度对应的初始分类结果的类别中;
当所述最大相似度小于预设阈值时,根据所述任一输出信号更新所述初始分类结果。
本发明另一实施例提供一种基于麦克风阵列的声源监听分离装置,包括:
信号获取模块,用于获取多个麦克风阵列的输出信号;
分类模块,用于对所述输出信号进行分类,得到分类结果;
处理模块,用于根据分类结果确定声源的数目和位置信息;
函数构建模块,用于在每个麦克风阵列的坐标系下,根据声源的位置信息构建关于任一声源的代价函数,并计算得到对应的函数值;
监听确定模块,用于根据任一声源在不同麦克风阵列的坐标系下的函数值,确定监听所述任一声源的最优麦克风阵列。
本发明另一实施例提供一种终端设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如上述任一项所述的基于麦克风阵列的声源监听分离方法。
本发明另一实施例提供一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如上述任一项所述的基于麦克风阵列的声源监听分离方法。
与现有技术相比,本发明实施例所提供的一种基于麦克风阵列的声源监听分离方法、装置、终端设备及存储介质,通过计算在不同麦克风阵列下,任一声源与其他声源的夹角大小,从而确定监听任一声源的最优麦克风阵列,解决了单个麦克风阵列无法监听分离间隔较小的多个声源的问题,极大方便了后续语音识别。
附图说明
图1是本发明一实施例提供的一种基于麦克风阵列的声源监听分离方法的流程示意图;
图2是本发明一实施例提供的一种单个麦克风阵列进行声源定位的示意图;
图3是本发明一实施例提供的一种基于麦克风阵列的声源监听分离装置的结构示意图;
图4是本发明一实施例提供的一种终端设备的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,是本发明该实施例提供的一种基于麦克风阵列的声源监听分离方法的流程示意图,所述方法包括步骤S1至步骤S5:
S1、获取多个麦克风阵列的输出信号;
S2、对所述输出信号进行分类,得到分类结果;
S3、根据分类结果确定声源的数目和位置信息;
S4、在每个麦克风阵列的坐标系下,根据声源的位置信息构建关于任一声源的代价函数,并计算得到对应的函数值;
S5、根据任一声源在不同麦克风阵列的坐标系下的函数值,确定监听所述任一声源的最优麦克风阵列。
需要说明的是,单个麦克风阵列可以采用声源定位算法和波束形成算法,监听空间中多个声源,当定位到某一声源位于90°位置,则只需要就调整波束形成器的参数,使波束形成器对90°入射声源的增益为1,其他方向入射声源的增益为0,通过这种方式来接收90°入射信号的同时抑制其他方向声源,从而起到了语音分离的作用。但是,波束形成器在理想方向的一定范围区间内都有较大增益,这个区间就叫主瓣宽度。由于主瓣宽度的存在,当监听的两个声源的角度间隔较小时,两声源会相互干扰,不利于后续语音识别。为了方便理解,本发明该实施例提供一种单个麦克风阵列进行声源定位的示意图,具体参见图2。由图2可知,第一麦阵能定位到声源1和声源2,但它们相对于第一麦克风阵列的夹角较小,会导致相互受到干扰,本发明旨在为每个声源选择一个最佳的麦克风阵列进行监听,以解决该技术问题。
具体地,在一个多声源的空间中,控制多个麦克风阵列对多声源进行监听,然后获取多个麦克风阵列的输出信号。一般地,每个麦克风阵列会输出N个输出信号,每个输出信号对应一个声源,每个输出信号包括俯仰角、方位角和音频信号。若空间中的声源数目为W,则N≤W,因为有的声源可能离某个麦克风阵列较远,则无法监听到,也就无法输出对应的信号。
因为同一个麦克风阵列的各个输出信号对应为不同声源,为了方便参数标定,需要将同一声源对应的输出信号进行归类,所以先对所有的输出信号进行分类,得到分类结果,每一类别对应一个声源。
根据分类结果确定声源的数目和位置信息。即每一类结果对应一个声源,根据每一类别结果的输出信号中的俯仰角和方位角,可以确定对应声源的位置。每个输出信号为一条射线,假设声源的真实坐标位于(x,y,z)处,其到对应类别的所有输出信号的距离之和最小,根据该思路确定声源的位置,该位置指的是空间三维坐标。值得注意的是,在确定声源位置的过程中,需要用到每个麦克风阵列之间的位置关系参数,即每个麦克风阵列相对于世界坐标系的空间变换矩阵。
在每个麦克风阵列的坐标系下,根据声源的位置信息构建关于任一声源的代价函数,并计算得到对应的函数值。因为对于同一个麦克风阵列来说,每个声源的监听质量很大程度上与其附近是否存在其他声源有关,定量转化就是该声源与其他声源相对于该麦克风阵列的夹角大小,因此代价函数的基础是计算出任一声源与其他声源相对于每个麦克风阵列的夹角大小,为了优化该代价函数,还可以加入目标声源与干扰声源的距离、干扰声源的音频强度等因素的影响,即代价函数与夹角、距离、声音强度等因素有关,最后构建代价函数为E(j)=E(角度)+E(距离)+E(响度),当然E(j)还可以是其他影响因素的自由组合,在此不作限定。
根据任一声源在不同麦克风阵列的坐标系下的函数值,确定监听任一声源的最优麦克风阵列。假若对于声源j来说,代价函数构建为声源j与其他声源的夹角的倒数,则函数值最小的麦克风阵列就是监听声源j的最优麦克风阵列。
本发明该实施例通过提供一种基于麦克风阵列的声源监听分离方法,通过计算在不同麦克风阵列下,任一声源与其他声源的夹角大小,从而确定监听任一声源的最优麦克风阵列,解决了单个麦克风阵列无法监听分离间隔较小的多个声源的问题,极大方便了后续语音识别。
作为上述方案的改进,所述根据声源的位置信息建立关于任一声源的代价函数,并计算得到对应的函数值,具体包括:
根据每个声源在世界坐标系下的第一坐标与每个麦克风阵列相对于所述世界坐标系的空间变换矩阵,得到每个声源在对应麦克风阵列的坐标系下的第二坐标;
根据所述第二坐标与对应麦克风阵列的坐标原点,得到对应每个声源的声源向量;其中,所述声源向量的方向为由所述坐标原点指向所述第二坐标;
根据所述声源向量,确定每个声源向量与其他声源向量的最小夹角值;
根据所述最小夹角值,构建每个声源的代价函数,并得到对应函数值。
具体地,根据每个声源在世界坐标系下的第一坐标与每个麦克风阵列相对于世界坐标系的空间变换矩阵,得到每个声源在对应麦克风阵列的坐标系下的第二坐标。世界坐标系为预设的任一麦克风阵列的阵列坐标系,每个声源在世界坐标系下的第一坐标是在上一实施例中根据分类结果确定声源的位置信息得到的。第二坐标即为将所有声源的第一坐标通过对应的空间变换矩阵Hi投影到第i个麦克风阵列的坐标系下得到的,计算公式为Pij=Hi*Pj,Pj和Pij分别为第j个声源的第一坐标和第二坐标。
当将所有声源的坐标统一在一个麦克风阵列的坐标系下时,即可根据任意两个射线组成的夹角来确定夹角值。先根据第二坐标与对应麦克风阵列的坐标原点,得到对应每个声源的声源向量即得到每个声源所在的射线;其中,声源向量的方向为由坐标原点指向第二坐标;
根据声源向量,确定每个声源向量与其他声源向量的最小夹角值。任意两个声源向量的大小和方向确定后,它们的夹角也就确定了。因此,通过计算对比,确定每个声源向量与其他声源向量的最小夹角值。
根据最小夹角值,构建每个声源的代价函数,并得到对应函数值。例如,代价函数为最小夹角值的倒数,当最小夹角值确定后,对应的函数值也确定了。
作为上述方案的改进,所述最小夹角值是通过公式进行计算得到的;其中,fj为第j个声源向量与其他声源向量的最小夹角值,为第j个声源向量,为第k个声源向量;1≤j≤K,1≤k≤K,j≠k,K为对应麦克风阵列监听到的声源总个数。
具体地,第j个声源向量与第k个声源向量的夹角计算公式为对比不同的夹角值,可得最小夹角值,也就是说,最小夹角值是通过公式进行计算得到的;其中,fj为第j个声源向量与其他声源向量的最小夹角值,为第j个声源向量,为第k个声源向量;1≤j≤K,1≤k≤K,j≠k,K为对应麦克风阵列监听到的声源总个数。
具体地,函数值是通过公式进行计算得到的;其中,Ej为第j个声源在对应麦克风阵列的坐标系下对应的函数值,ε为预设的系数,ε>0,这是为了保证分母不为0。值得注意的是,对于每个麦克风阵列,第j个声源都能得到一个对应的Ej,假设麦克风阵列的数目为N,就有N个Ej。
作为上述方案的改进,所述根据任一声源在不同麦克风阵列的坐标系下的函数值,确定监听所述任一声源的最优麦克风阵列,具体包括:
比较任一声源在所有麦克风阵列的坐标系下的函数值的大小;
将函数值最小的麦克风阵列作为监听所述任一声源的最优麦克风阵列。
具体地,比较任一声源在所有麦克风阵列的坐标系下的函数值的大小。假设对于第j个声源来说,在每个麦克风阵列的计算中,都能得到一个对应的函数值Ej,假设麦克风阵列的数目为N,就有N个Ej,需要比较的就是这N个Ej。
将函数值最小的麦克风阵列作为监听任一声源的最优麦克风阵列,即Ej最小对应的麦克风阵列就是监听第j个声源的最优麦克风阵列。
所以本发明的思路为:在一个麦阵坐标下,对于第j个声源,通过计算其与其他声源点的夹角,选择夹角最小值,该最小夹角为该麦阵对于第j个声源的最不利监听。对比多个麦阵对于第j个声源的最不利监听,从而选择一个相对不那么不利(即较优)的麦阵进行监听第j个声源。
作为上述方案的改进,所述对所述输出信号进行分类,得到分类结果,具体包括:
根据任一麦克风阵列的输出信号得到初始分类结果;
计算其它麦克风阵列的任一输出信号与所述初始分类结果中的所有类别之间的相似度,并获取最大相似度;
当所述最大相似度大于预设阈值时,将所述任一输出信号归入最大相似度对应的初始分类结果的类别中;
当所述最大相似度小于预设阈值时,根据所述任一输出信号更新所述初始分类结果。
具体地,根据任一麦克风阵列的输出信号得到初始分类结果。例如第一个麦克风阵列有K个输出信号,则将每个输出信号作为一个类别,初始分类结果则有K类。
计算其它麦克风阵列的任一输出信号与初始分类结果中的所有类别之间的相似度,并获取最大相似度。值得注意的是,在计算其它麦克风阵列的输出信号与初始分类结果的所有类别的相似度时,计算的也是其它麦克风阵列的输出信号与每个类别中各个输出信号的相似度。值得注意的是,在计算相似度时,一般是利用输出信号中的音频信号进行计算,因为同一声源的音频会相似。
当最大相似度大于预设阈值时,将任一输出信号归入最大相似度对应的初始分类结果的类别中,此时表明计算的输出信号与对应的类别是同类,对应同一声源,所以需要归入同一类。
当最大相似度小于预设阈值时,即表明计算的输出信号与现有的初始分类结果均不是同类,需要根据任一输出信号更新初始分类结果,将对应计算的输出信号单独作为一个新类别,加入到初始分类结果中,在后续其他输出信号的相似度计算中,也要计算与该新类别的相似度。
为了加深对本发明该实施例的理解,下面以一个例子进行说明。例如第一个麦克风阵列有3个输出信号,先对应建立3个集合,分别为C1={O(1,1)},C2={O(1,2)},C3={O(1,3)}。对于第二个麦克风阵列的第1个输出信号O(2,1),计算O(2,1)与现有每个集合中每个元素的相似度,假如计算O(2,1)与C1,C2,C3中各元素的相似度都小于阈值T,则为O(2,1)新建一个集合C4={O(2,1)}。对于第二个麦克风阵列的第2个输出信号O(2,2),计算得到O(2,2)与O(1,1)的相似度大于阈值T,则就把O(2,2)也加入到O(1,1)对应的集合C1中。至此,得到4个集合,C1={O(1,1),O(2,2)},C2={O(1,2)},C3={O(1,3)},C4={O(2,1)}。同理,对于其他麦克风阵列的输出信号,也是按照类似的方法计算,在此不赘述。
此外,本发明该实施例还提供了两种相似度的计算方法,当然,还有其他的方法,这两种方法不构成对本发明的限定。
第一,根据互相关函数计算相似度,也就是说利用互相关函数计算任一输出信号与每个类别中各个输出信号的互相关值,将最大的互相关值作为对应两个输出信号之间的相似度。
第二,将需要计算相似度的两个输出信号先通过快速傅里叶变换转换到频域,得到对应的频域信号,然后根据公式计算对应两个输出信号的相似度r,其中,Si表示初始分类结果中的任一类别对应的输出信号的第i个频域信号,1≤i≤I/2,I为初始分类结果中的任一类别对应的输出信号的音频长度,即长度为I个点,表示表示初始分类结果中的任一类别对应的输出信号的所有频域信号的平均值,Tj表示其它麦克风阵列的任一输出信号的第j个频域信号,1≤j≤J/2,J为其它麦克风阵列的任一输出信号的音频长度,即长度为J个点,表示其它麦克风阵列的任一输出信号的所有频域信号的平均值,0≤r≤1,r越大,说明两个输出信号越相似。
此外,为了使本发明更清楚完整,本发明该实施例对根据分类结果确定声源的数目和位置信息的执行步骤进行详细说明,具体如下:
根据每一类别对应的输出信号以及每个麦克风阵列相对于世界坐标系的空间变换矩阵,构建代价函数;其中,代价函数为 为输出信号所指向的直线,为对应类别中第m个输出信号,为俯仰角,θm为方位角,1≤m≤M,M为该类别中所有输出信号的总个数;Pm=HmP,P=(x,y,z),Hm为第m个输出信号对应的麦克风阵列相对于世界坐标系的空间变换矩阵,世界坐标系为预设的任一麦克风阵列对应的坐标系,(x,y,z)为声源P在世界坐标系下的坐标,Pm为声源P在第m个输出信号对应的麦克风阵列的阵列坐标系下的坐标;dm为输出信号与声源P之间的距离;n为预设的范数;
对上述代价函数进行求解,得到对应声源的空间坐标。可选地,n=2,对应的求解方法为最小二乘法;n=1,对应的求解方法为梯度下降法。
具体地,本实施例也可通过构建代价函数进行求解得到每个麦克风阵列相对于世界坐标系的空间变换矩阵。代价函数为其中, 为输出信号所指向的直线,为第n个类别中对应于从第m个麦克风阵列得到的输出信号,为俯仰角,θm,n为方位角,am,n为示性函数,表示第m个麦克风阵列是否监听到了第n个类别(第n个声源),每个类别对应一个声源,若监听到,即真实存在,则am,n=1,否则am,n=0。当第n个声源距离第m个麦克风阵列较远,则可能监听不到,此时am,n=0。1≤m≤M,M为麦克风阵列的总数,1≤n≤N,N为分类结果中的类别总数;Hm为第m个麦克风阵列相对于世界坐标系的空间变换矩阵,Hm为H1~HM中的第m个,Pn为第n个类别对应的声源P在世界坐标系下的坐标,即Pn=(xn,yn,zn),Pn为P1~PN中的第n个;dm,n为输出信号与声源P之间的距离。Pm,n=HmPn,Pm,n表示的是将世界坐标系下的点Pn利用Hm投影到第m个麦克风阵列的阵列坐标系中得到的点坐标。
值得注意的是,世界坐标系为预设的任一麦克风阵列的阵列坐标系。例如预设第一个麦克风阵列的阵列坐标系为世界坐标系,则H1=[R=E|t=0],E表示主对角线上的元素均为1的单位矩阵,此时需要求解的是其他麦克风阵列的空间变换矩阵H2…HM,同时还能得到每个声源的坐标P1…PN。另外,需要提醒的是,P1…PN所在的坐标系为世界坐标系,所在的坐标系为第m个麦克风阵列的阵列坐标系。
求解方法包括网格搜索法、梯度下降法、牛顿法或LM算法。对于代价函数当采用网格搜索法进行求解时,是将参数空间H1~HM,P1~PN中的所有变量进行网格搜索,找出某一种组合变量使总代价函数达到最小,这一组变量就是对应的解。当采用LM(Levenberg-Marquarelt)算法时,优选介于一阶与二阶之间的LM算法。
参见图3,是本发明该实施例提供的一种基于麦克风阵列的声源监听分离装置的结构示意图,所述装置包括:
信号获取模块11,用于获取多个麦克风阵列的输出信号;
分类模块12,用于对所述输出信号进行分类,得到分类结果;
处理模块13,用于根据分类结果确定声源的数目和位置信息;
函数构建模块14,用于在每个麦克风阵列的坐标系下,根据声源的位置信息构建关于任一声源的代价函数,并计算得到对应的函数值;
监听确定模块15,用于根据任一声源在不同麦克风阵列的坐标系下的函数值,确定监听所述任一声源的最优麦克风阵列。
优选地,所述函数构建模块14具体包括:
坐标转换单元,用于根据每个声源在世界坐标系下的第一坐标与每个麦克风阵列相对于所述世界坐标系的空间变换矩阵,得到每个声源在对应麦克风阵列的坐标系下的第二坐标;
向量确定单元,用于根据所述第二坐标与对应麦克风阵列的坐标原点,得到对应每个声源的声源向量;其中,所述声源向量的方向为由所述坐标原点指向所述第二坐标;
夹角计算单元,用于根据所述声源向量,确定每个声源向量与其他声源向量的最小夹角值;
函数计算单元,用于根据所述最小夹角值,构建每个声源的代价函数,并得到对应函数值。
优选地,所述最小夹角值是通过公式进行计算得到的;其中,fj为第j个声源向量与其他声源向量的最小夹角值,为第j个声源向量,为第k个声源向量;1≤j≤K,1≤k≤K,j≠k,K为对应麦克风阵列监听到的声源总个数。
优选地,所述监听确定模块15具体包括:
比较单元,用于比较任一声源在所有麦克风阵列的坐标系下的函数值的大小;
监听麦阵确定单元,用于将函数值最小的麦克风阵列作为监听所述任一声源的最优麦克风阵列。
优选地,所述分类模块12具体包括:
初始分类单元,用于根据任一麦克风阵列的输出信号得到初始分类结果;
计算单元,用于计算其它麦克风阵列的任一输出信号与所述初始分类结果中的所有类别之间的相似度,并获取最大相似度;
划分单元,用于当所述最大相似度大于预设阈值时,将所述任一输出信号归入最大相似度对应的初始分类结果的类别中;
更新单元,用于当所述最大相似度小于预设阈值时,根据所述任一输出信号更新所述初始分类结果。
本发明实施例所提供的一种基于麦克风阵列的声源监听分离装置能够实现上述任一实施例所述的基于麦克风阵列的声源监听分离方法的所有流程,装置中的各个模块、单元的作用以及实现的技术效果分别与上述实施例所述的基于麦克风阵列的声源监听分离方法的作用以及实现的技术效果对应相同,这里不再赘述。
参见图4,是本发明该实施例提供的一种终端设备的示意图,所述终端设备包括处理器10、存储器20以及存储在所述存储器20中且被配置为由所述处理器10执行的计算机程序,所述处理器10执行所述计算机程序时实现上述任一实施例所述的基于麦克风阵列的声源监听分离方法。
示例性的,计算机程序可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器20中,并由处理器10执行,以完成本发明。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序在一种基于麦克风阵列的声源监听分离中的执行过程。例如,计算机程序可以被分割成信号获取模块、分类模块、处理模块、函数构建模块和监听确定模块,各模块具体功能如下:
信号获取模块11,用于获取多个麦克风阵列的输出信号;
分类模块12,用于对所述输出信号进行分类,得到分类结果;
处理模块13,用于根据分类结果确定声源的数目和位置信息;
函数构建模块14,用于在每个麦克风阵列的坐标系下,根据声源的位置信息构建关于任一声源的代价函数,并计算得到对应的函数值;
监听确定模块15,用于根据任一声源在不同麦克风阵列的坐标系下的函数值,确定监听所述任一声源的最优麦克风阵列。
所述终端设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端设备可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,示意图4仅仅是一种终端设备的示例,并不构成对所述终端设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端设备还可以包括输入输出设备、网络接入设备、总线等。
处理器10可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者处理器10也可以是任何常规的处理器等,处理器10是所述终端设备的控制中心,利用各种接口和线路连接整个终端设备的各个部分。
存储器20可用于存储所述计算机程序和/或模块,处理器10通过运行或执行存储在存储器20内的计算机程序和/或模块,以及调用存储在存储器20内的数据,实现所述终端设备的各种功能。存储器20可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器20可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(FlashCard)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
其中,所述终端设备集成的模块如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,上述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,上述计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行上述任一实施例所述的基于麦克风阵列的声源监听分离方法。
综上,本发明实施例所提供的一种基于麦克风阵列的声源监听分离方法、装置、终端设备及存储介质,通过计算多个麦克风阵列所有的输出信号的相似度,根据相似度对输出信号进行分类,从而根据分类结果确定空间中多个声源的三维坐标,然后计算在不同麦克风阵列下,任一声源与其他声源的夹角大小,进而确定监听任一声源的最优麦克风在阵列,保证了整个分布式麦阵系统的监听质量,解决了单个麦克风阵列无法监听分离间隔较小的多个声源的问题,极大方便了后续语音识别。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
Claims (9)
1.一种基于麦克风阵列的声源监听分离方法,其特征在于,包括:
获取多个麦克风阵列的输出信号;
对所述输出信号进行分类,得到分类结果;
根据分类结果确定声源的数目和位置信息;
在每个麦克风阵列的坐标系下,根据声源的位置信息构建关于任一声源的代价函数,并计算得到对应的函数值;
根据任一声源在不同麦克风阵列的坐标系下的函数值,确定监听所述任一声源的最优麦克风阵列。
2.如权利要求1所述的基于麦克风阵列的声源监听分离方法,其特征在于,所述根据声源的位置信息建立关于任一声源的代价函数,并计算得到对应的函数值,具体包括:
根据每个声源在世界坐标系下的第一坐标与每个麦克风阵列相对于所述世界坐标系的空间变换矩阵,得到每个声源在对应麦克风阵列的坐标系下的第二坐标;
根据所述第二坐标与对应麦克风阵列的坐标原点,得到对应每个声源的声源向量;其中,所述声源向量的方向为由所述坐标原点指向所述第二坐标;
根据所述声源向量,确定每个声源向量与其他声源向量的最小夹角值;
根据所述最小夹角值,构建每个声源的代价函数,并得到对应函数值。
5.如权利要求4所述的基于麦克风阵列的声源监听分离方法,其特征在于,所述根据任一声源在不同麦克风阵列的坐标系下的函数值,确定监听所述任一声源的最优麦克风阵列,具体包括:
比较任一声源在所有麦克风阵列的坐标系下的函数值的大小;
将函数值最小的麦克风阵列作为监听所述任一声源的最优麦克风阵列。
6.如权利要求1所述的基于麦克风阵列的声源监听分离方法,其特征在于,所述对所述输出信号进行分类,得到分类结果,具体包括:
根据任一麦克风阵列的输出信号得到初始分类结果;
计算其它麦克风阵列的任一输出信号与所述初始分类结果中的所有类别之间的相似度,并获取最大相似度;
当所述最大相似度大于预设阈值时,将所述任一输出信号归入最大相似度对应的初始分类结果的类别中;
当所述最大相似度小于预设阈值时,根据所述任一输出信号更新所述初始分类结果。
7.一种基于麦克风阵列的声源监听分离装置,其特征在于,包括:
信号获取模块,用于获取多个麦克风阵列的输出信号;
分类模块,用于对所述输出信号进行分类,得到分类结果;
处理模块,用于根据分类结果确定声源的数目和位置信息;
函数构建模块,用于在每个麦克风阵列的坐标系下,根据声源的位置信息构建关于任一声源的代价函数,并计算得到对应的函数值;
监听确定模块,用于根据任一声源在不同麦克风阵列的坐标系下的函数值,确定监听所述任一声源的最优麦克风阵列。
8.一种终端设备,其特征在于,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至6中任意一项所述的基于麦克风阵列的声源监听分离方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如权利要求1至6中任意一项所述的基于麦克风阵列的声源监听分离方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110452030.6A CN113314138B (zh) | 2021-04-25 | 2021-04-25 | 基于麦克风阵列的声源监听分离方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110452030.6A CN113314138B (zh) | 2021-04-25 | 2021-04-25 | 基于麦克风阵列的声源监听分离方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113314138A true CN113314138A (zh) | 2021-08-27 |
CN113314138B CN113314138B (zh) | 2024-03-29 |
Family
ID=77370973
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110452030.6A Active CN113314138B (zh) | 2021-04-25 | 2021-04-25 | 基于麦克风阵列的声源监听分离方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113314138B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115278449A (zh) * | 2022-09-26 | 2022-11-01 | 中国飞行试验研究院 | 确定麦克风阵列单元坐标的方法、装置、设备及存储介质 |
CN116859339A (zh) * | 2023-09-01 | 2023-10-10 | 北京圣传创世科技发展有限公司 | 一种多边形区域内声源分离和定位方法 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050195988A1 (en) * | 2004-03-02 | 2005-09-08 | Microsoft Corporation | System and method for beamforming using a microphone array |
WO2014151817A1 (en) * | 2013-03-14 | 2014-09-25 | Tiskerling Dynamics Llc | Robust crosstalk cancellation using a speaker array |
WO2016183791A1 (zh) * | 2015-05-19 | 2016-11-24 | 华为技术有限公司 | 一种语音信号处理方法及装置 |
CN106483502A (zh) * | 2016-09-23 | 2017-03-08 | 科大讯飞股份有限公司 | 一种声源定位方法及装置 |
US20170374453A1 (en) * | 2016-06-23 | 2017-12-28 | Canon Kabushiki Kaisha | Signal processing apparatus and method |
WO2018014762A1 (zh) * | 2016-07-22 | 2018-01-25 | 腾讯科技(深圳)有限公司 | 定位方法、定位系统及终端设备 |
CN109254266A (zh) * | 2018-11-07 | 2019-01-22 | 苏州科达科技股份有限公司 | 基于麦克风阵列的声源定位方法、装置及存储介质 |
CN109712626A (zh) * | 2019-03-04 | 2019-05-03 | 腾讯科技(深圳)有限公司 | 一种语音数据处理方法及装置 |
CN110211600A (zh) * | 2019-05-17 | 2019-09-06 | 北京华控创为南京信息技术有限公司 | 用于定向监听通信的智能麦克风阵列模块 |
CN110310642A (zh) * | 2018-03-20 | 2019-10-08 | 阿里巴巴集团控股有限公司 | 语音处理方法、系统、客户端、设备和存储介质 |
-
2021
- 2021-04-25 CN CN202110452030.6A patent/CN113314138B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050195988A1 (en) * | 2004-03-02 | 2005-09-08 | Microsoft Corporation | System and method for beamforming using a microphone array |
WO2014151817A1 (en) * | 2013-03-14 | 2014-09-25 | Tiskerling Dynamics Llc | Robust crosstalk cancellation using a speaker array |
WO2016183791A1 (zh) * | 2015-05-19 | 2016-11-24 | 华为技术有限公司 | 一种语音信号处理方法及装置 |
US20170374453A1 (en) * | 2016-06-23 | 2017-12-28 | Canon Kabushiki Kaisha | Signal processing apparatus and method |
WO2018014762A1 (zh) * | 2016-07-22 | 2018-01-25 | 腾讯科技(深圳)有限公司 | 定位方法、定位系统及终端设备 |
CN106483502A (zh) * | 2016-09-23 | 2017-03-08 | 科大讯飞股份有限公司 | 一种声源定位方法及装置 |
CN110310642A (zh) * | 2018-03-20 | 2019-10-08 | 阿里巴巴集团控股有限公司 | 语音处理方法、系统、客户端、设备和存储介质 |
CN109254266A (zh) * | 2018-11-07 | 2019-01-22 | 苏州科达科技股份有限公司 | 基于麦克风阵列的声源定位方法、装置及存储介质 |
CN109712626A (zh) * | 2019-03-04 | 2019-05-03 | 腾讯科技(深圳)有限公司 | 一种语音数据处理方法及装置 |
CN110211600A (zh) * | 2019-05-17 | 2019-09-06 | 北京华控创为南京信息技术有限公司 | 用于定向监听通信的智能麦克风阵列模块 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115278449A (zh) * | 2022-09-26 | 2022-11-01 | 中国飞行试验研究院 | 确定麦克风阵列单元坐标的方法、装置、设备及存储介质 |
CN116859339A (zh) * | 2023-09-01 | 2023-10-10 | 北京圣传创世科技发展有限公司 | 一种多边形区域内声源分离和定位方法 |
CN116859339B (zh) * | 2023-09-01 | 2023-11-17 | 北京圣传创世科技发展有限公司 | 一种多边形区域内声源分离和定位方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113314138B (zh) | 2024-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108898086B (zh) | 视频图像处理方法及装置、计算机可读介质和电子设备 | |
CN113314138B (zh) | 基于麦克风阵列的声源监听分离方法、装置及存储介质 | |
CN104535965A (zh) | 基于嵌入式gpu系统的并行化声源定位系统及方法 | |
CN111427022A (zh) | 一种基于极大似然估计的阵列雷达测角方法 | |
US10951982B2 (en) | Signal processing apparatus, signal processing method, and computer program product | |
CN111983552B (zh) | 一种基于差分共阵的嵌套阵列快速doa估计方法与装置 | |
CN114491399A (zh) | 数据处理方法、装置、终端设备及计算机可读存储介质 | |
US20200169824A1 (en) | Processing of a Multi-Channel Spatial Audio Format Input Signal | |
CN112735461B (zh) | 拾音方法以及相关装置、设备 | |
CN109308909B (zh) | 一种信号分离方法、装置、电子设备及存储介质 | |
WO2016119388A1 (zh) | 一种基于语音信号构造聚焦协方差矩阵的方法及装置 | |
CN113223552B (zh) | 语音增强方法、装置、设备、存储介质及程序 | |
CN107843871B (zh) | 声源定向方法、装置和电子设备 | |
CN112346012A (zh) | 声源位置确定方法和装置、可读存储介质、电子设备 | |
CN115457202B (zh) | 一种三维模型更新的方法、装置及存储介质 | |
CN113311391A (zh) | 基于麦克风阵列的声源定位方法、装置、设备及存储介质 | |
CN111722185A (zh) | 一种特征声音的定位方法、装置及设备 | |
Al-Sadoon et al. | New and less complex approach to estimate angles of arrival | |
JP2007198977A (ja) | 信号到来方向推定装置、信号到来方向推定方法、信号到来方向推定プログラム及び記録媒体 | |
CN113312971B (zh) | 麦克风阵列的参数标定方法、装置、终端设备及存储介质 | |
Carabias-Orti et al. | Multi-source localization using a DOA Kernel based spatial covariance model and complex nonnegative matrix factorization | |
US20210112336A1 (en) | Sound Source Localization and Sound System | |
CN111624554B (zh) | 声源定位方法和装置 | |
CN113311390A (zh) | 基于分布式麦阵的声源定位方法、装置、设备及存储介质 | |
CN109831737A (zh) | 一种基于置信度的蓝牙定位方法、装置、设备和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |