CN113297911B - 基于麦克风阵列的定位误差矫正方法、装置及存储介质 - Google Patents

基于麦克风阵列的定位误差矫正方法、装置及存储介质 Download PDF

Info

Publication number
CN113297911B
CN113297911B CN202110452027.4A CN202110452027A CN113297911B CN 113297911 B CN113297911 B CN 113297911B CN 202110452027 A CN202110452027 A CN 202110452027A CN 113297911 B CN113297911 B CN 113297911B
Authority
CN
China
Prior art keywords
current output
microphone array
microphone
microphone arrays
points
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.)
Active
Application number
CN202110452027.4A
Other languages
English (en)
Other versions
CN113297911A (zh
Inventor
陈英博
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Pulian International Co ltd
Original Assignee
Pulian International Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Pulian International Co ltd filed Critical Pulian International Co ltd
Priority to CN202110452027.4A priority Critical patent/CN113297911B/zh
Publication of CN113297911A publication Critical patent/CN113297911A/zh
Application granted granted Critical
Publication of CN113297911B publication Critical patent/CN113297911B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2218/00Aspects of pattern recognition specially adapted for signal processing
    • G06F2218/12Classification; Matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/15Correlation function computation including computation of convolution operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/243Classification techniques relating to the number of classes
    • G06F18/2431Multiple classes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/25Determination of region of interest [ROI] or a volume of interest [VOI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/42Global feature extraction by analysis of the whole pattern, e.g. using frequency domain transformations or autocorrelation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2218/00Aspects of pattern recognition specially adapted for signal processing
    • G06F2218/22Source localisation; Inverse modelling

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computing Systems (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Signal Processing (AREA)
  • Circuit For Audible Band Transducer (AREA)

Abstract

本发明涉及声源定位技术领域,公开了一种基于麦克风阵列的定位误差矫正方法、装置、终端设备及存储介质,该方法包括:获取多个麦克风阵列的当前输出信号;对所述当前输出信号进行分类,得到分类结果;获取麦克风阵列之间的当前位置关系参数;对所述分类结果中的每一类别分别进行外点剔除,得到剔除结果;根据所述剔除结果对所述当前位置关系参数进行误差矫正。本发明解决了因为未矫正麦克风阵列当前位置关系参数而导致声源定位出现较大误差的问题。

Description

基于麦克风阵列的定位误差矫正方法、装置及存储介质
技术领域
本发明涉及声源定位技术领域,尤其涉及一种基于麦克风阵列的定位误差矫正方法、装置、终端设备及存储介质。
背景技术
在声源定位技术领域中,普遍采用多个麦克风阵列对多声源进行定位。在定位过程中,每个麦克风阵列都会采集到多路声源的输出信号,然后根据同一声源对应的输出信号进行声源定位。但是,当某个麦克风阵列的位置被移动或摆向被改变时,如果没有对该麦克风阵列的位置关系参数进行矫正,会导致声源定位出现较大误差。
发明内容
本发明实施例的目的是提出一种基于麦克风阵列的定位误差矫正方法、装置、终端设备及存储介质,解决了因为未矫正麦克风阵列当前位置关系参数而导致声源定位出现较大误差的问题。
为实现上述目的,本发明一实施例提供了一种基于麦克风阵列的定位误差矫正方法,包括:
获取多个麦克风阵列的当前输出信号;
对所述当前输出信号进行分类,得到分类结果;
获取麦克风阵列之间的当前位置关系参数;
对所述分类结果中的每一类别分别进行外点剔除,得到剔除结果;
根据所述剔除结果对所述当前位置关系参数进行误差矫正。
优选地,所述对所述当前输出信号进行分类,得到分类结果,具体包括:
根据任一麦克风阵列的当前输出信号得到初始分类结果;
计算其它麦克风阵列的任一当前输出信号与所述初始分类结果中的所有类别之间的相似度,并获取最大相似度;
当所述最大相似度大于预设阈值时,将所述任一当前输出信号归入最大相似度对应的初始分类结果的类别中;
当所述最大相似度小于预设阈值时,根据所述任一当前输出信号更新所述初始分类结果。
优选地,所述对所述分类结果中的每一类别分别进行外点剔除,得到剔除结果,具体包括:
根据每一类别中任意两个当前输出信号,得到多个初始声源位置;
计算该类别中其他当前输出信号相对于对应的初始声源位置的距离;
若距离小于预设距离阈值,则将对应的当前输出信号记为内点,并统计每个初始声源位置对应的内点数;
根据内点数最多的初始声源位置,对该类别的当前输出信号进行外点剔除。
优选地,在所述对所述当前输出信号进行分类,得到分类结果之后,还包括:
将分类结果中当前输出信号个数小于预设个数的类别删除。
优选地,所述根据所述剔除结果对所述当前位置关系参数进行误差矫正,具体包括:
根据所述剔除结果,统计不同麦克风阵列对应的外点数;
对外点数超过预设点数的麦克风阵列对应的当前位置关系参数进行重新标定。
优选地,所述对外点数超过预设点数的麦克风阵列对应的当前位置关系参数进行重新标定,具体包括:
根据所述分类结果构建代价函数,对所述代价函数进行求解,得到外点数超过预设点数的麦克风阵列相对于世界坐标系的空间变换矩阵,所述世界坐标系为其它任一麦克风阵列对应的坐标系。
优选地,所述代价函数为其中,/> 为当前输出信号/>所指向的直线,/>为第n个类别中对应于从第m个麦克风阵列得到的输出信号,为俯仰角,θm,n为方位角,am,n为示性函数,表示第m个麦克风阵列是否监听到了第n个类别,M为麦克风阵列的总数,N为所述分类结果中的类别总数;Hm为第m个麦克风阵列相对于世界坐标系的空间变换矩阵,Hx为外点数超过预设点数的麦克风阵列相对于世界坐标系的空间变换矩阵,x为外点数超过预设点数的麦克风阵列在所有麦克风阵列中的序号,Pn为第n个类别对应的声源P在世界坐标系下的坐标;dm,n为当前输出信号/>与声源P之间的距离。
本发明另一实施例提供一种基于麦克风阵列的定位误差矫正装置,包括:
信号获取模块,用于获取多个麦克风阵列的当前输出信号;
分类模块,用于对所述当前输出信号进行分类,得到分类结果;
位置参数获取模块,用于获取麦克风阵列之间的当前位置关系参数;
外点剔除模块,用于对所述分类结果中的每一类分别进行外点剔除,得到剔除结果;
误差矫正模块,用于根据所述剔除结果对所述当前位置关系参数进行误差矫正。
本发明另一实施例提供一种终端设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如上述任一项所述的基于麦克风阵列的定位误差矫正方法。
本发明另一实施例提供一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如上述任一项所述的基于麦克风阵列的定位误差矫正方法。
与现有技术相比,本发明实施例所提供的一种基于麦克风阵列的定位误差矫正方法、装置、终端设备及存储介质,通过对多个麦克风阵列的当前输出信号进行外点剔除,并根据剔除结果确定需要进行重新标定的麦克风阵列,从而对该麦克风阵列的当前位置关系参数进行误差矫正,有效解决了因为未矫正麦克风阵列当前位置关系参数而导致声源定位出现较大误差的问题。
附图说明
图1是本发明一实施例提供的一种基于麦克风阵列的定位误差矫正方法的流程示意图;
图2是本发明一实施例提供的一种基于麦克风阵列的定位误差矫正装置的结构示意图;
图3是本发明一实施例提供的一种终端设备的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,是本发明该实施例提供的一种基于麦克风阵列的定位误差矫正方法的流程示意图,所述方法包括步骤S1至步骤S5:
S1、获取多个麦克风阵列的当前输出信号;
S2、对所述当前输出信号进行分类,得到分类结果;
S3、获取麦克风阵列之间的当前位置关系参数;
S4、对所述分类结果中的每一类别分别进行外点剔除,得到剔除结果;
S5、根据所述剔除结果对所述当前位置关系参数进行误差矫正。
需要说明的是,根据麦克风阵列进行声源定位,其准确性受麦克风阵列的之间的位置关系参数影响较大,如果某一麦克风阵列在标定后被人移动或重新摆放,且未再次标定,那么在后续的声源定位中就会出现较大误差。所以当发现麦克风阵列之间的当前位置关系参数出现较大偏差时,需要进行误差矫正,本发明旨在解决该技术问题。
具体地,在一个多声源的空间中,控制多个麦克风阵列对多声源进行监听,然后获取多个麦克风阵列的当前输出信号。一般地,每个麦克风阵列会输出N个输出信号,每个输出信号对应一个声源,每个输出信号包括俯仰角、方位角和音频信号。若空间中的声源数目为W,则N≤W,因为有的声源可能离某个麦克风阵列较远,则无法监听到,也就无法输出对应的信号。
因为同一个麦克风阵列的各个当前输出信号对应为不同声源,为了方便参数标定,需要将同一声源对应的当前输出信号进行归类,所以先对所有的当前输出信号进行分类,得到分类结果,每一类别对应一个声源。
一般地,麦克风阵列之间的当前位置关系参数指的是每个麦克风阵列相对于世界坐标系的空间变换矩阵,这个参数是预先标定好的,可以根据棋盘格标定法进行标定或者根据多个麦克风阵列构建代价函数进行求解完成标定,所以对应地,可以获取麦克风阵列之间的当前位置关系参数。
对分类结果中的每一类别分别进行外点剔除,得到剔除结果。每一类别包括多个当前输出信号,根据这些当前输出信号的分布情况,将偏离整体的个别当前输出信号进行剔除。
根据剔除结果对当前位置关系参数进行误差矫正。根据剔除的当前输出信号,可以找到对应的麦克风阵列,当对应的麦克风阵列需要剔除的信号数超过预设阈值,说明该麦克风阵列的当前空间变换矩阵不够准确,需要进行误差矫正。
本发明该实施例通过提供一种基于麦克风阵列的定位误差矫正方法,通过对多个麦克风阵列的当前输出信号进行外点剔除,并根据剔除结果对麦克风阵列的当前位置关系参数进行误差矫正,解决了因为未矫正麦克风阵列当前位置关系参数而导致声源定位出现较大误差的问题。
作为上述方案的改进,所述对所述输出信号进行分类,得到分类结果,具体包括:
根据任一麦克风阵列的输出信号得到初始分类结果;
计算其它麦克风阵列的任一输出信号与所述初始分类结果中的所有类别之间的相似度,并获取最大相似度;
当所述最大相似度大于预设阈值时,将所述任一输出信号归入最大相似度对应的初始分类结果的类别中;
当所述最大相似度小于预设阈值时,根据所述任一输出信号更新所述初始分类结果。
具体地,根据任一麦克风阵列的输出信号得到初始分类结果。例如第一个麦克风阵列有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越大,说明两个输出信号越相似。
作为上述方案的改进,所述对所述分类结果中的每一类别分别进行外点剔除,得到剔除结果,具体包括:
根据每一类别中任意两个当前输出信号,得到多个初始声源位置;
计算该类别中其他当前输出信号相对于对应的初始声源位置的距离;
若距离小于预设距离阈值,则将对应的当前输出信号记为内点,并统计每个初始声源位置对应的内点数;
根据内点数最多的初始声源位置,对该类别的当前输出信号进行外点剔除。
具体地,本发明该实施例采用RANSAC方法进行外点剔除,根据每一类别中任意两个当前输出信号,得到多个初始声源位置,即随机取一个类别中的两个输出信号,根据三角定位计算两个输出信号直线的交点P。值得注意的是,直线可以不完全相交,交点是距两条直线最近的点,计算过程如下:
根据任意两个当前输出信号,构建代价函数并对代价函数进行求解,即可得到对应声源的空间坐标。其中,/> 为输出信号/>所指向的直线,/>为任意两个当前输出信号中的第m个输出信号,/>为俯仰角,θm为方位角,1≤m≤2;Pm=HmP,P=(x,y,z),Hm为第m个输出信号对应的麦克风阵列相对于世界坐标系的空间变换矩阵,(x,y,z)为声源点P在世界坐标系下的坐标,Pm为声源点P在第m个输出信号对应的麦克风阵列的阵列坐标系下的坐标;dm为输出信号/>与声源点P之间的距离;n为预设的范数。可选地,n=2,对应的求解方法为最小二乘法;n=1,对应的求解方法为梯度下降法。
计算该类别中其他当前输出信号相对于对应的初始声源位置的距离,即求两点之间的距离。
若距离小于预设距离阈值,则将对应的当前输出信号记为内点,并统计每个初始声源位置对应的内点数。若距离大于预设距离阈值,则将对应的当前输出信号记为外点,在统计内点的同时也可以统计外点,对应地选择外点数最少的初始声源位置。
根据内点数最多的初始声源位置,对该类别的当前输出信号进行外点剔除。因为对于每一类别的当前输出信号来说,初始声源位置在前面步骤的拟合中,可以得到多个,我们需要的是挑出一个尽可能地靠近大部分当前输出信号的初始声源位置,确定后即可剔除距离较远的当前输出信号。
为了加深对本发明该实施例的理解,下面举一个例子进行说明。
step1:比如第1个类别C1中有6个当前输出信号,即6条直线,第一次随机取到了前2个直线,定位到了一个点P,然后依次计算第3,4,5,6个直线到点P的距离,其中第3,4,5个直线到点P的距离小于预设距离阈值,则对第1,2条直线形成的点P来说,内点数量为3,外点数量为1。
step2:重复step1若干次,每次都是随机取两个点,计算内外点数量,最后我们得到的其实是一个列表,假设重复4次,1-5的麦阵测量是准的,6不准:
O1,O2->计算P->内点3(分别是O3,O4,O5),外点1(O6)
O1,O3->计算P->内点3(分别是O2,O4,O5),外点1(O6)
O2,O4->计算P->内点3(分别是O1,O3,O5),外点1(O6)
O1,O6->计算P->内点0,外点4(O2,O3,O4,O5)
step3:在step2中所有列表条目中,选一个内点数最多的,外点数最少的。上面例子中选前3个哪个都行。我们就确定出了(O1-O5)是内点,O6是外点,也能推出O6对应的麦阵测量误差较大。
作为上述方案的改进,在所述对所述当前输出信号进行分类,得到分类结果之后,还包括:
将分类结果中当前输出信号个数小于预设个数的类别删除。
具体地,该步骤“将分类结果中当前输出信号个数小于预设个数的类别删除”在步骤“对所述分类结果中的每一类别分别进行外点剔除,得到剔除结果”之前进行。可选地,预设个数至少为3,即当某一类别的当前输出信号的个数为1或2时,无法通过上述的外点剔除法进行剔除,因为一个信号无法确定声源位置,两个信号能确定声源,但无法判断是否存在误差。
作为上述方案的改进,所述根据所述剔除结果对所述当前位置关系参数进行误差矫正,具体包括:
根据所述剔除结果,统计不同麦克风阵列对应的外点数;
对外点数超过预设点数的麦克风阵列对应的当前位置关系参数进行重新标定。
具体地,如果只根据一个类别的剔除结果确定某一麦克风阵列的当前位置参数是否需要矫正,可能存在偶然误差,于是根据所有类别的剔除结果进行确定,增加鲁棒性。
根据剔除结果,统计不同麦克风阵列对应的外点数。对外点数超过预设点数的麦克风阵列对应的当前位置关系参数进行重新标定。
为了加深对本发明该实施例的理解,接上面一个实例继续进行说明。通过上面step1-step3的步骤,我们确定出了第6个麦阵的输出为外点,则第6个麦阵的外点计数+1。对其他类别的外点剔除,同样进行step1-3的步骤,计算外点,更新每一个麦阵的外点计数。比如初始状态,所有麦阵的外点计数都是0。计算完C1后,麦阵6的计数变为1,其他都还是0;计算完C2后,麦阵6的计数变为2了,其他也还是0。
作为上述方案的改进,所述对外点数超过预设点数的麦克风阵列对应的当前位置关系参数进行重新标定,具体包括:
根据所述分类结果构建代价函数,对所述代价函数进行求解,得到外点数超过预设点数的麦克风阵列相对于世界坐标系的空间变换矩阵,所述世界坐标系为其它任一麦克风阵列对应的坐标系。
具体地,当确定了某一当前位置参数对应的麦克风阵列需要重新标定时,可以根据需要选择对应的标定方法进行标定。在本发明该实施例中,采用的是根据多个麦克风阵列构建代价函数进行求解完成标定,即根据分类结果构建代价函数,对代价函数进行求解,得到外点数超过预设点数的麦克风阵列相对于世界坐标系的空间变换矩阵,世界坐标系为其它任一麦克风阵列对应的坐标系。
值得注意的是,在首次根据多个麦克风阵列构建代价函数进行标定时,需要求解所有麦克风阵列的空间变换矩阵,但在该实施例中,只需要求解需要重新标定的麦克风阵列的空间变换矩阵,其他麦克风阵列的空间变换矩阵是已知的,不需要进行求解。
作为上述方案的改进,所述代价函数为其中, 为当前输出信号/>所指向的直线,/>为第n个类别中对应于从第m个麦克风阵列得到的输出信号,/>为俯仰角,θm,n为方位角,am,n为示性函数,表示第m个麦克风阵列是否监听到了第n个类别,M为麦克风阵列的总数,N为所述分类结果中的类别总数;Hm为第m个麦克风阵列相对于世界坐标系的空间变换矩阵,Hx为外点数超过预设点数的麦克风阵列相对于世界坐标系的空间变换矩阵,x为外点数超过预设点数的麦克风阵列在所有麦克风阵列中的序号,Pn为第n个类别对应的声源P在世界坐标系下的坐标;dm,n为当前输出信号/>与声源P之间的距离。
具体地,根据分类结果构建的代价函数为其中, 为输出信号/>所指向的直线,/>为第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个;Hx为外点数超过预设点数的麦克风阵列相对于世界坐标系的空间变换矩阵,x为外点数超过预设点数的麦克风阵列在所有麦克风阵列中的序号,1≤x≤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的单位矩阵,此时需要求解的是Hx,同时还能得到每个声源的坐标P1…PN。另外,需要提醒的是,P1…PN所在的坐标系为世界坐标系,所在的坐标系为第m个麦克风阵列的阵列坐标系。
优选地,采用网格搜索法、梯度下降法、牛顿法或LM算法对代价函数进行求解。对于代价函数当采用网格搜索法进行求解时,是将参数空间Hx,P1~PN中的所有变量进行网格搜索,找出某一种组合变量使总代价函数达到最小,这一组变量就是对应的解。当采用LM(Levenberg-Marquarelt)算法时,优选介于一阶与二阶之间的LM算法。
参见图2,是本发明该实施例提供的一种基于麦克风阵列的定位误差矫正装置的结构示意图,所述装置包括:
信号获取模块11,用于获取多个麦克风阵列的当前输出信号;
分类模块12,用于对所述当前输出信号进行分类,得到分类结果;
位置参数获取模块13,用于获取麦克风阵列之间的当前位置关系参数;
外点剔除模块14,用于对所述分类结果中的每一类分别进行外点剔除,得到剔除结果;
误差矫正模块15,用于根据所述剔除结果对所述当前位置关系参数进行误差矫正。
优选地,所述分类模块12具体包括:
初始分类单元,用于根据任一麦克风阵列的输出信号得到初始分类结果;
计算单元,用于计算其它麦克风阵列的任一输出信号与所述初始分类结果中的所有类别之间的相似度,并获取最大相似度;
划分单元,用于当所述最大相似度大于预设阈值时,将所述任一输出信号归入最大相似度对应的初始分类结果的类别中;
更新单元,用于当所述最大相似度小于预设阈值时,根据所述任一输出信号更新所述初始分类结果。
优选地,所述外点剔除模块14具体包括:
初始声源位置确定单元,用于根据每一类别中任意两个当前输出信号,得到多个初始声源位置;
距离计算单元,用于计算该类别中其他当前输出信号相对于对应的初始声源位置的距离;
内点统计单元,用于若距离小于预设距离阈值,则将对应的当前输出信号记为内点,并统计每个初始声源位置对应的内点数;
外点剔除单元,用于根据内点数最多的初始声源位置,对该类别的当前输出信号进行外点剔除。
优选地,所述装置还包括:
删除单元,用于将分类结果中当前输出信号个数小于预设个数的类别删除。
优选地,所述误差矫正模块15具体包括:
外点统计单元,用于根据所述剔除结果,统计不同麦克风阵列对应的外点数;
重新标定单元,用于对外点数超过预设点数的麦克风阵列对应的当前位置关系参数进行重新标定
优选地,所述重新标定单元具体用于:
根据所述分类结果构建代价函数,对所述代价函数进行求解,得到外点数超过预设点数的麦克风阵列相对于世界坐标系的空间变换矩阵,所述世界坐标系为其它任一麦克风阵列对应的坐标系。
优选地,,所述代价函数为其中,/> 为当前输出信号/>所指向的直线,/>为第n个类别中对应于从第m个麦克风阵列得到的输出信号,为俯仰角,θm,n为方位角,am,n为示性函数,表示第m个麦克风阵列是否监听到了第n个类别,M为麦克风阵列的总数,N为所述分类结果中的类别总数;Hm为第m个麦克风阵列相对于世界坐标系的空间变换矩阵,Hx为外点数超过预设点数的麦克风阵列相对于世界坐标系的空间变换矩阵,x为外点数超过预设点数的麦克风阵列在所有麦克风阵列中的序号,Pn为第n个类别对应的声源P在世界坐标系下的坐标;dm,n为当前输出信号/>与声源P之间的距离。
本发明实施例所提供的一种基于麦克风阵列的定位误差矫正装置能够实现上述任一实施例所述的基于麦克风阵列的定位误差矫正方法的所有流程,装置中的各个模块、单元的作用以及实现的技术效果分别与上述实施例所述的基于麦克风阵列的定位误差矫正方法的作用以及实现的技术效果对应相同,这里不再赘述。
参见图3,是本发明该实施例提供的一种终端设备的示意图,所述终端设备包括处理器10、存储器20以及存储在所述存储器20中且被配置为由所述处理器10执行的计算机程序,所述处理器10执行所述计算机程序时实现上述任一实施例所述的基于麦克风阵列的定位误差矫正方法。
示例性的,计算机程序可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器20中,并由处理器10执行,以完成本发明。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序在一种基于麦克风阵列的定位误差矫正中的执行过程。例如,计算机程序可以被分割成信号获取模块、分类模块、位置参数获取模块、外点剔除模块和误差矫正模块,各模块具体功能如下:
信号获取模块11,用于获取多个麦克风阵列的当前输出信号;
分类模块12,用于对所述当前输出信号进行分类,得到分类结果;
位置参数获取模块13,用于获取麦克风阵列之间的当前位置关系参数;
外点剔除模块14,用于对所述分类结果中的每一类分别进行外点剔除,得到剔除结果;
误差矫正模块15,用于根据所述剔除结果对所述当前位置关系参数进行误差矫正。
所述终端设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端设备可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,示意图3仅仅是一种终端设备的示例,并不构成对所述终端设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端设备还可以包括输入输出设备、网络接入设备、总线等。
处理器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 (7)

1.一种基于麦克风阵列的定位误差矫正方法,其特征在于,包括:
获取多个麦克风阵列的当前输出信号;
对所述当前输出信号进行分类,得到分类结果;
获取麦克风阵列之间的当前位置关系参数;
对所述分类结果中的每一类别分别进行外点剔除,得到剔除结果;
根据所述剔除结果对所述当前位置关系参数进行误差矫正;
所述根据所述剔除结果对所述当前位置关系参数进行误差矫正,具体包括:
根据所述剔除结果,统计不同麦克风阵列对应的外点数;
对外点数超过预设点数的麦克风阵列对应的当前位置关系参数进行重新标定;
所述对外点数超过预设点数的麦克风阵列对应的当前位置关系参数进行重新标定,具体包括:
根据所述分类结果构建代价函数,对所述代价函数进行求解,得到外点数超过预设点数的麦克风阵列相对于世界坐标系的空间变换矩阵,所述世界坐标系为其它任一麦克风阵列对应的坐标系;
所述代价函数为;其中,/>,/>为当前输出信号所指向的直线,/>为第n个类别中对应于从第m个麦克风阵列得到的输出信号,/>为俯仰角,/>为方位角,/>为示性函数,表示第m个麦克风阵列是否监听到了第n个类别, M为麦克风阵列的总数, N为所述分类结果中的类别总数;/>为第m个麦克风阵列相对于世界坐标系的空间变换矩阵,/>为外点数超过预设点数的麦克风阵列相对于世界坐标系的空间变换矩阵,x为外点数超过预设点数的麦克风阵列在所有麦克风阵列中的序号,/>为第n个类别对应的声源P在世界坐标系下的坐标;/>为当前输出信号/>与声源P之间的距离。
2.如权利要求1所述的基于麦克风阵列的定位误差矫正方法,其特征在于,所述对所述当前输出信号进行分类,得到分类结果,具体包括:
根据任一麦克风阵列的当前输出信号得到初始分类结果;
计算其它麦克风阵列的任一当前输出信号与所述初始分类结果中的所有类别之间的相似度,并获取最大相似度;
当所述最大相似度大于预设阈值时,将所述任一当前输出信号归入最大相似度对应的初始分类结果的类别中;
当所述最大相似度小于预设阈值时,根据所述任一当前输出信号更新所述初始分类结果。
3.如权利要求1所述的基于麦克风阵列的定位误差矫正方法,其特征在于,所述对所述分类结果中的每一类别分别进行外点剔除,得到剔除结果,具体包括:
根据每一类别中任意两个当前输出信号,得到多个初始声源位置;
计算该类别中其他当前输出信号相对于对应的初始声源位置的距离;
若距离小于预设距离阈值,则将对应的当前输出信号记为内点,并统计每个初始声源位置对应的内点数;
根据内点数最多的初始声源位置,对该类别的当前输出信号进行外点剔除。
4.如权利要求1所述的基于麦克风阵列的定位误差矫正方法,其特征在于,在所述对所述当前输出信号进行分类,得到分类结果之后,还包括:
将分类结果中当前输出信号个数小于预设个数的类别删除。
5.一种基于麦克风阵列的定位误差矫正装置,其特征在于,包括:
信号获取模块,用于获取多个麦克风阵列的当前输出信号;
分类模块,用于对所述当前输出信号进行分类,得到分类结果;
位置参数获取模块,用于获取麦克风阵列之间的当前位置关系参数;
外点剔除模块,用于对所述分类结果中的每一类分别进行外点剔除,得到剔除结果;
误差矫正模块,用于根据所述剔除结果对所述当前位置关系参数进行误差矫正;
所述误差矫正模块具体包括:
外点统计单元,用于根据所述剔除结果,统计不同麦克风阵列对应的外点数;
重新标定单元,用于对外点数超过预设点数的麦克风阵列对应的当前位置关系参数进行重新标定;
所述重新标定单元具体用于:
根据所述分类结果构建代价函数,对所述代价函数进行求解,得到外点数超过预设点数的麦克风阵列相对于世界坐标系的空间变换矩阵,所述世界坐标系为其它任一麦克风阵列对应的坐标系;
所述代价函数为;其中,/>,/>为当前输出信号所指向的直线,/>为第n个类别中对应于从第m个麦克风阵列得到的输出信号,/>为俯仰角,/>为方位角,/>为示性函数,表示第m个麦克风阵列是否监听到了第n个类别, M为麦克风阵列的总数, N为所述分类结果中的类别总数;/>为第m个麦克风阵列相对于世界坐标系的空间变换矩阵,/>为外点数超过预设点数的麦克风阵列相对于世界坐标系的空间变换矩阵,x为外点数超过预设点数的麦克风阵列在所有麦克风阵列中的序号,/>为第n个类别对应的声源P在世界坐标系下的坐标;/>为当前输出信号/>与声源P之间的距离。
6.一种终端设备,其特征在于,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至4中任意一项所述的基于麦克风阵列的定位误差矫正方法。
7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如权利要求1至4中任意一项所述的基于麦克风阵列的定位误差矫正方法。
CN202110452027.4A 2021-04-25 2021-04-25 基于麦克风阵列的定位误差矫正方法、装置及存储介质 Active CN113297911B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110452027.4A CN113297911B (zh) 2021-04-25 2021-04-25 基于麦克风阵列的定位误差矫正方法、装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110452027.4A CN113297911B (zh) 2021-04-25 2021-04-25 基于麦克风阵列的定位误差矫正方法、装置及存储介质

Publications (2)

Publication Number Publication Date
CN113297911A CN113297911A (zh) 2021-08-24
CN113297911B true CN113297911B (zh) 2024-06-07

Family

ID=77321746

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110452027.4A Active CN113297911B (zh) 2021-04-25 2021-04-25 基于麦克风阵列的定位误差矫正方法、装置及存储介质

Country Status (1)

Country Link
CN (1) CN113297911B (zh)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104964689A (zh) * 2015-07-06 2015-10-07 南京航空航天大学 基于声源定位、ins的爬壁机器人导航定位系统及方法
CN106653041A (zh) * 2017-01-17 2017-05-10 北京地平线信息技术有限公司 音频信号处理设备、方法和电子设备
CN108828525A (zh) * 2018-06-25 2018-11-16 大连大学 混响房间内分布式麦克风阵列多声源定位系统
CN108962272A (zh) * 2018-06-21 2018-12-07 湖南优浪语音科技有限公司 拾音方法和系统
CN110068797A (zh) * 2019-04-23 2019-07-30 浙江大华技术股份有限公司 一种校准麦克风阵列的方法、声源定位方法及相关设备
CN110082724A (zh) * 2019-05-31 2019-08-02 浙江大华技术股份有限公司 一种声源定位方法、装置及存储介质
CN110133594A (zh) * 2018-02-09 2019-08-16 北京搜狗科技发展有限公司 一种声源定位方法、装置和用于声源定位的装置
CN111025233A (zh) * 2019-11-13 2020-04-17 阿里巴巴集团控股有限公司 一种声源方向定位方法和装置、语音设备和系统
CN112153548A (zh) * 2020-09-15 2020-12-29 科大讯飞股份有限公司 一种麦克风阵列一致性检测方法及检测装置
CN112261361A (zh) * 2020-09-25 2021-01-22 江苏聆世科技有限公司 一种麦克风阵列与球机联动的异常声源监控方法和系统
CN112581978A (zh) * 2020-12-11 2021-03-30 平安科技(深圳)有限公司 声音事件检测与定位方法、装置、设备及可读存储介质
CN112630730A (zh) * 2020-11-13 2021-04-09 清华大学苏州汽车研究院(相城) 一种基于tdoa多声源定位的虚假声源消除方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7235534B6 (ja) * 2019-02-27 2024-02-08 本田技研工業株式会社 マイクロホンアレイ位置推定装置、マイクロホンアレイ位置推定方法、およびプログラム

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104964689A (zh) * 2015-07-06 2015-10-07 南京航空航天大学 基于声源定位、ins的爬壁机器人导航定位系统及方法
CN106653041A (zh) * 2017-01-17 2017-05-10 北京地平线信息技术有限公司 音频信号处理设备、方法和电子设备
CN110133594A (zh) * 2018-02-09 2019-08-16 北京搜狗科技发展有限公司 一种声源定位方法、装置和用于声源定位的装置
CN108962272A (zh) * 2018-06-21 2018-12-07 湖南优浪语音科技有限公司 拾音方法和系统
CN108828525A (zh) * 2018-06-25 2018-11-16 大连大学 混响房间内分布式麦克风阵列多声源定位系统
CN110068797A (zh) * 2019-04-23 2019-07-30 浙江大华技术股份有限公司 一种校准麦克风阵列的方法、声源定位方法及相关设备
CN110082724A (zh) * 2019-05-31 2019-08-02 浙江大华技术股份有限公司 一种声源定位方法、装置及存储介质
CN111025233A (zh) * 2019-11-13 2020-04-17 阿里巴巴集团控股有限公司 一种声源方向定位方法和装置、语音设备和系统
CN112153548A (zh) * 2020-09-15 2020-12-29 科大讯飞股份有限公司 一种麦克风阵列一致性检测方法及检测装置
CN112261361A (zh) * 2020-09-25 2021-01-22 江苏聆世科技有限公司 一种麦克风阵列与球机联动的异常声源监控方法和系统
CN112630730A (zh) * 2020-11-13 2021-04-09 清华大学苏州汽车研究院(相城) 一种基于tdoa多声源定位的虚假声源消除方法
CN112581978A (zh) * 2020-12-11 2021-03-30 平安科技(深圳)有限公司 声音事件检测与定位方法、装置、设备及可读存储介质

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
Automatic estimation of position and orientation of an acoustic source by a microphone array network;Alberto Yoshihiro Nakano等;《The Journal of the Acoustical Society of America》;20091214;第126卷(第6期);第3084-3094页 *
基于麦克风阵列的自适应实时定位系统的研究及实现;李帅;《中国优秀硕士学位论文全文数据库 信息科技辑》;20210315(第(2021)03期);I136-88 *
声场可视化系统中声像阵列空间关系标定研究;温俊杰等;《仪器仪表学报》;20170630;第38卷(第6期);第1540-1546页 *
麦克风阵列声源定位系统的阵列优化设计研究;齐畅;《中国优秀硕士学位论文全文数据库 信息科技辑》;20140615(第(2014)06期);I136-146 *
麦克风阵列声源定位系统设计与实现;李冰洋;《中国优秀硕士学位论文全文数据库 信息科技辑》;20200715(第(2020)07期);I135-384 *

Also Published As

Publication number Publication date
CN113297911A (zh) 2021-08-24

Similar Documents

Publication Publication Date Title
CN111427032B (zh) 基于毫米波雷达的房间墙体轮廓识别方法及终端设备
CN111612841A (zh) 目标定位方法及装置、移动机器人及可读存储介质
CN113311390B (zh) 基于分布式麦阵的声源定位方法、装置、设备及存储介质
CN112484738B (zh) 机器人建图方法、装置、计算机可读存储介质及机器人
CN109165657A (zh) 一种基于改进sift的图像特征检测方法及装置
CN111537967B (zh) 一种雷达偏转角修正方法、装置及雷达终端
CN111709999A (zh) 标定板、相机标定方法、装置、电子设备及相机系统
CN112556994B (zh) 一种光学信息检测方法、装置及设备
CN111311593B (zh) 一种多椭圆检测和评估算法、装置及终端
WO2022205845A1 (zh) 位姿标定方法、装置、机器人及计算机可读存储介质
CN112633299B (zh) 一种目标检测方法、网络、装置、终端设备及存储介质
CN113297911B (zh) 基于麦克风阵列的定位误差矫正方法、装置及存储介质
CN112629828A (zh) 一种光学信息检测方法、装置及设备
CN112816959B (zh) 用于车辆的聚类方法、装置、设备和存储介质
CN113311391A (zh) 基于麦克风阵列的声源定位方法、装置、设备及存储介质
CN112104292B (zh) 电机控制方法、装置、终端设备及存储介质
CN113868939A (zh) 一种风功率的概率密度评估方法、装置、设备及介质
CN111880721A (zh) 数据处理方法及装置、电子设备、存储介质
CN113312971B (zh) 麦克风阵列的参数标定方法、装置、终端设备及存储介质
CN114842210A (zh) 特征点匹配方法、装置、终端设备及计算机可读存储介质
CN117911467A (zh) 一种点云配准方法、装置、终端设备及存储介质
CN109801332A (zh) 确定闵可夫斯基维数的方法及设备
CN110852767A (zh) 客流量聚类方法及终端设备
CN113777547B (zh) 在片s参数测量系统校准判断方法、装置及终端
CN114493128B (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