CN108254721A - 一种机器人声源定位方法和机器人 - Google Patents
一种机器人声源定位方法和机器人 Download PDFInfo
- Publication number
- CN108254721A CN108254721A CN201810330841.7A CN201810330841A CN108254721A CN 108254721 A CN108254721 A CN 108254721A CN 201810330841 A CN201810330841 A CN 201810330841A CN 108254721 A CN108254721 A CN 108254721A
- Authority
- CN
- China
- Prior art keywords
- microphone
- robot
- sound source
- section
- target sound
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/18—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using ultrasonic, sonic, or infrasonic waves
- G01S5/20—Position of source determined by a plurality of spaced direction-finders
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Manipulator (AREA)
- Circuit For Audible Band Transducer (AREA)
Abstract
本申请实施例提供一种机器人声源定位方法及机器人,机器人上设置有二维麦克风阵列,该方法包括:根据第一麦克风采集到的来自目标声源的声音数据,计算第一麦克风获得的第一声音能量值;根据第二麦克风采集到的来自目标声源的声音数据,计算第二麦克风获得的第二声音能量值;根据第一声音能量值与第二声音能量值的能量比值以及第一麦克风与第二麦克风的位置关系,确定目标声源相对于机器人的方位区间。在本申请实施例中,可判断出目标声源位于机器人的前方还是后方,进而实现准确定位目标声源的真实位置。
Description
技术领域
本申请涉及信号处理技术领域,尤其涉及一种机器人声源定位方法和机器人。
背景技术
基于麦克风阵列进行声源定位是近年来语音信号处理领域的热点,该项技术已经在视频会议、智能机器人等等场景中得到应用。目前,声源定位主要采用环形麦克风阵列或者线性麦克风阵列实现。其中,可以根据机器人的形态选择采用哪种形状的麦克风阵列。例如,对于体型低矮的家用智能机器人,可采用环形麦克风阵列进行声源定位,而对于体型高大的智能机器人,可采用线性麦克风阵列进行声源定位。
对于体型高大的智能机器人来说,线性麦克风阵列一般设置于其胸腔部位,并基于其胸腔处的线性麦克风阵列进行声源定位。但是,现有基于线性麦克风阵列进行声源定位的机器人有时无法确定声源位于智能机器人的前方还是后方,导致无法准确定位声源。
发明内容
本申请的多个方面提供一种机器人声源定位方法和机器人,用以提高声源定位的准确性。
本申请实施例提供一种机器人声源定位方法,适用于机器人,所述机器人上设置有二维麦克风阵列,所述方法包括:
根据第一麦克风采集到的来自目标声源的声音数据,计算所述第一麦克风获得的第一声音能量值,其中,所述第一麦克风为所述二维麦克风阵列中阵元中心位于第一直线上的任一麦克风;
根据第二麦克风采集到的来自所述目标声源的声音数据,计算所述第二麦克风获得的第二声音能量值,其中,所述第二麦克风为所述二维麦克风阵列中阵元中心与所述第一直线相离的麦克风;
根据所述第一声音能量值与所述第二声音能量值的能量比值以及所述第一麦克风与所述第二麦克风的位置关系,确定所述目标声源相对于所述机器人的方位区间。
本申请实施例还提供一种机器人,包括存储器、处理器和二维麦克风阵列;
所述二维麦克风阵列包括阵元中心位于第一直线上的麦克风和阵元中心与所述第一直线相离的麦克风;
所述存储器用于存储计算机程序;
所述处理器,用于执行所述计算机程序,以用于:
根据第一麦克风采集到的来自目标声源的声音数据,计算所述第一麦克风获得的第一声音能量值,其中,所述第一麦克风为阵元中心位于第一直线上的任一麦克风;
根据第二麦克风采集到的来自所述目标声源的声音数据,计算所述第二麦克风获得的第二声音能量值,其中,所述第二麦克风为阵元中心与所述第一直线相离的麦克风;
根据所述第一声音能量值与所述第二声音能量值的能量比值以及所述第一麦克风与所述第二麦克风的位置关系,确定所述目标声源相对于所述机器人的方位区间。
在本申请实施例中,在机器人上设置二维麦克风阵列,并通过阵元中心不在一条直线上的第一麦克风和第二麦克风之间的声音能量比及两个麦克风之间的位置关系,可确定出目标声源相对于机器人的方位区间,例如可以判断出目标声源位于机器人的前方还是后方,进而实现准确定位目标声源的真实位置。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请一实施例提供的一种机器人声源定位方法的流程图;
图2a为本申请一实施例提供的另一种机器人声源定位方法的流程图;
图2b为本申请一实施例提供的又一种机器人声源定位方法的流程图;
图2c为本申请一实施例提供的又一种机器人声源定位方法的流程图
图3为本申请另一实施例提供的一种机器人声源定位方法的流程图;
图4为本申请另一实施例提供的另一种机器人声源定位方法的流程图;
图5为本申请另一实施例提供的又一种机器人声源定位方法的流程图;
图6为预先获得第一边界阈值、第二边界阈值和第三边界阈值的流程图;
图7为本申请又一实施例提供的一种机器人的结构示意图。
图8示出了一种二维麦克风阵列的排布方式;
图9示出了一种机器人的外形。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
针对现有技术中基于线性麦克风阵列进行声源定位的机器人有时无法确定声源位于机器人的前方还是后方,导致无法准确定位声源的问题。本申请实施例提供一种解决方案:在机器人上设置二维麦克风阵列,通过阵元中心不在同一直线上的第一麦克风和第二麦克风之间的声音能量比及两个麦克风之间的位置关系,可确定出目标声源相对于机器人的方位区间,例如可以判断出目标声源位于机器人的前方还是后方,进而实现准确定位目标声源的真实位置。
以下结合附图,详细说明本申请各实施例提供的技术方案。
图1为本申请一实施例提供的一种机器人声源定位方法的流程图。如图1所示,该方法包括:
100、根据第一麦克风采集到的来自目标声源的声音数据,计算第一麦克风获得的第一声音能量值,其中,第一麦克风为二维麦克风阵列中阵元中心位于第一直线上的任一麦克风;
101、根据第二麦克风采集到的来自目标声源的声音数据,计算第二麦克风获得的第二声音能量值,其中,第二麦克风为二维麦克风阵列中阵元中心与第一直线相离的麦克风;
102、根据第一声音能量值与第二声音能量值的能量比值以及第一麦克风与第二麦克风的位置关系,确定目标声源相对于机器人的方位区间。
本实施例中,二维麦克风阵列是指在一个平面上的若干麦克风构成的阵列,每一个麦克风即为阵列中的阵元,二维麦克风阵列中包含阵元中心位于同一直线(即第一直线)上的若干麦克风以及阵元中心与该直线相离的麦克风。第一麦克风可以是该直线上的任一麦克风,第二麦克风可以是与该直线相离的任一麦克风。另外,二维麦克风阵列所在的平面可设置为与地面平行,也可设置为与机器人的旋转轴垂直,当然还可设置为其它合适的角度。
图8示出了一种二维麦克风阵列的排布方式,如图8所示,二维麦克风阵列包含4个麦克风M1、M2、M3和M4,M1、M3和M4位于同一直线上,M2与该直线相离,可将M1作为第一麦克风,将M2作为第二麦克风。当然,第一麦克风也可以是M3或M4。
需要说明的是,图8只是举例说明了二维麦克风阵列的一种布局方式,并不应作为对本申请实施例中二维麦克风阵列中麦克风数量及布局的具体限制。根据不同的需求,二维麦克风阵列中的麦克风数量可以有变化,麦克风之间的位置关系也可根据需求进行调整。可选地,机器人上可设置一组或多组二维麦克风阵列。
二维麦克风阵列主要用于采集声音数据,可选地,二维麦克风阵列中的麦克风可采用心形指向性的驻极体麦克风。基于二维麦克风阵列采集的声音数据,可根据不同麦克风之间的声音能力比值,确定目标声源相对于机器人的方位区间。当目标声源发出声音时,二维麦克风阵列中的麦克风可采集到来自目标声源的声音数据。本实施例中,可根据麦克风在一段时间内采集到的声音数据计算其获得的声音能量值。假定一段时间内某个麦克风采集的声音数据含有N个采样点,则该麦克风在这段时间内所采集到的声音数据对应的声音能量值为:
其中,xi表示第i个采样点的幅值,N表示麦克风采集的声音数据含有采样点个数,E表示麦克风获得的声音能量值。
据此,可根据第一麦克风和第二麦克风在同一段时间内采集到的目标声源的声音数据,计算出第一麦克风和第二麦克风获得的声音能量值,并基于第一麦克风和第二麦克风的能量比值确定出第一麦克风和第二麦克风距离目标声源的远近。当第一麦克风获得的声音能量值大于第二麦克风获得的声音能量值时,说明第一麦克风距离目标声源较近,反之,则说明第二麦克风距离目标声源较近。
基于上述,可初步确定出目标声源与二维麦克风阵列的相对位置关系,但尚未确定目标声源与机器人的相对位置关系。本实施例中,在确定出目标声源与麦克风阵列的相对位置关系的基础上,可根据二维麦克风阵列与机器人的相对位置关系,也即第一麦克风与第二麦克风之间的位置关系,确定出目标声源相对于机器人的方位区间。
二维麦克风阵列与机器人的相对位置可有多种形式,也即是第一麦克风和第二麦克风的位置关系可以有多种形式,例如,第一直线可与机器人的前胸平行,也即第一麦克风设于机器人胸腔位置,而第二麦克风设于机器人后背位置,该形式中第一麦克风位于第二麦克风前方;又例如,第一直线可与机器人的后背平行,也即第一麦克风设于机器人后背位置,而第二麦克风设于机器人胸腔位置,该形式中第一麦克风位于第二麦克风后方;再例如,第一直线可与机器人的侧面平行,也即第一麦克风设于机器人侧面位置,而第二麦克风设于第一麦克风的对侧位置,该形式中第一麦克风位于第二麦克风侧方,等等。另外,参考图8所示的一种二维麦克风阵列的布局方式,第二麦克风和第一麦克风的连线可与第一直线垂直,当然也可不垂直。本申请实施例对此均不做限定。
针对第一麦克风与第二麦克风的位置关系对确定目标声源相对于机器人的方位区间的影响,可通过对不同形式下的第一麦克风与第二麦克风的位置关系进行角度换算,或者在计算声音能量值时乘上相应的换算比例,或者通过调整机器人的方位区间的定义来实现统一。
承接上述各例,当第一直线与机器人的前胸平行,也即第一麦克风设于机器人胸腔位置,而第二麦克风设于机器人后背位置时,若确定目标声源距离第一麦克风较近,则可确定目标声源位于机器人的前方(对应后文的前向区间);当第一直线与机器人的后背平行,也即第一麦克风设于机器人后背位置,而第二麦克风设于机器人胸腔位置时,若确定目标声源距离第一麦克风较近,不能再直接确定目标声源位于机器人的前方,而需进行角度换算,之后可确定目标声源位于机器人的后方(对应后文中的负向区间)。后文中,将重点基于第一麦克风设于机器人胸腔位置,而第二麦克风设于机器人后背位置的形式进行技术方案的详细说明。
本申请实施例中,在机器人上设置二维麦克风阵列,通过阵元中心不在同一直线上的第一麦克风和第二麦克风之间的声音能量比及两个麦克风之间的位置关系,可确定出目标声源相对于机器人的方位区间,例如可判断出目标声源位于机器人的前方还是后方,进而实现准确定位目标声源的真实位置。
图2a为本申请一实施例提供的另一种机器人声源定位方法的流程图。其中,第一麦克风和第二麦克风分别设于机器人胸腔和后背位置。如图2所示,该方法包括:
200、根据第一麦克风采集到的来自目标声源的声音数据,计算第一麦克风获得的第一声音能量值,其中,第一麦克风为二维麦克风阵列中阵元中心位于第一直线上的任一麦克风;
201、根据第二麦克风采集到的来自目标声源的声音数据,计算第二麦克风获得的第二声音能量值,其中,第二麦克风为二维麦克风阵列中阵元中心与第一直线相离的麦克风;
202、当能量比值小于第一边界阈值时,确定目标声源位于机器人的负向区间;
203、当能量比值大于第二边界阈值时,确定目标声源位于机器人的正向区间;
204、当能量比值大于或等于第一边界阈值且小于或等于第二边界阈值时,确定目标声源位于机器人的侧向区间。
本实施例提供的方法适用于机器人,该机器人上设置有二维麦克风阵列,第一麦克风和第二麦克风分别设于机器人胸腔和后背位置,机器人的方位区间可包括正向区间、负向区间和侧向区间,正向区间是指趋向于机器人前方的区域,负向区间是指趋向于机器人后方的区域,侧向区间是指趋向于机器人侧方的区域。当然,除了本实施例提供的这种对应方式外,机器人的方位区间还可有其它对应方式,例如,将趋向于机器人前方的区域定义为负向区间,而将趋向于机器人后方的区域定义为正向区间,或者采用其它的名称定义机器人的方位区间,都应属于本申请实施例的保护范围内。
第一边界阈值用于限定负向区间对应的第一麦克风与第二麦克风的能量比值的最大值,当第一麦克风与第二麦克风的能量比值小于第一边界阈值时,说明该能量比值小于负向区间对应的能量比值的最大值,因此,可确定目标声源位于机器人的负向区间。第二边界阈值用于限定正向区间对应的第一麦克风与第二麦克风的能量比值的最小值,当第一麦克风与第二麦克风的能量比值大于第二边界阈值时,说明该能量比值大于正向区间对应的能量比值的最小值,因此,可确定目标声源位于机器人的正向区间。而当第一麦克风与第二麦克风的能量比值大于或等于第一边界阈值且小于或等于第二边界阈值时,说明,目标声源既不位于正向区间也不位于负向区间,则可确定目标声源位于机器人的侧向区间。图2b为本申请一实施例提供的又一种机器人声源定位方法的流程图。如图2b所示,当确定目标声源位于机器人的侧向区间时,本实施例提供的机器人声源定位方法,包括:
200、根据第一麦克风采集到的来自目标声源的声音数据,计算第一麦克风获得的第一声音能量值,其中,第一麦克风为二维麦克风阵列中阵元中心位于第一直线上的任一麦克风;
201、根据第二麦克风采集到的来自目标声源的声音数据,计算第二麦克风获得的第二声音能量值,其中,第二麦克风为二维麦克风阵列中阵元中心与第一直线相离的麦克风;
202、当能量比值小于第一边界阈值时,确定目标声源位于机器人的负向区间;
203、当能量比值大于第二边界阈值时,确定目标声源位于机器人的正向区间;
204、当能量比值大于或等于第一边界阈值且小于或等于第二边界阈值时,确定目标声源位于机器人的侧向区间;并执行步骤205;
205、根据阵元中心位于第一直线上且位于第一麦克风侧面的第三麦克风所采集到的来自目标声源的声音数据,计算第三麦克风获得的第三声音能量值;
206、当第三声音能量值与第二声音能量值的能量比值大于第三边界阈值时,确定目标声源位于靠近第三麦克风一侧的侧向区间;
207、当第三声音能量值与第二声音能量值的能量比值小于或等于第三边界阈值时,确定目标声源位于远离第三麦克风一侧的侧向区间。
为判断目标声源位于哪一侧的侧向区间,可选取阵元中心位于第一直线上且位于第一麦克风左侧的任一麦克风作为第三麦克风,并计算第三麦克风获得的第三声音能量值,计算能量值所采用的技术手段可参考上文中的描述,此处不再赘述。其中,第三边界阈值用于限定靠近第三麦克风一侧的侧向区间对应的第三麦克风与第二麦克风的能量比值的最小值,当第三麦克风与第二麦克风的能量比值大于第三边界阈值时,说明该能量比值大于靠近第三麦克风一侧的侧向区间对应的能量比值的最小值,因此,可确定目标声源位于机器人的靠近第三麦克风一侧的侧向区间;当第三声音能量值与第二声音能量值的能量比值小于或等于第三边界阈值时,可确定目标声源位于远离第三麦克风一侧的侧向区间。
同理,为判断目标声源位于哪一侧的侧向区间,还可选取阵元中心位于第一直线上且位于第一麦克风右侧的任一麦克风作为第三麦克风,当第三麦克风与第二麦克风的能量比值大于第三边界阈值时,可确定目标声源位于机器人的靠近第三麦克风一侧的侧向区间;当第三声音能量值与第二声音能量值的能量比值小于或等于第三边界阈值时,可确定目标声源位于远离第三麦克风一侧的侧向区间。从而,可确定出目标声源位于机器人哪一侧的侧向区间。
图2c为本申请一实施例提供的又一种机器人声源定位方法的流程图。如图2c所示,当确定目标声源位于机器人的侧向区间时,本实施例提供的机器人声源定位方法,包括:
200、根据第一麦克风采集到的来自目标声源的声音数据,计算第一麦克风获得的第一声音能量值,其中,第一麦克风为二维麦克风阵列中阵元中心位于第一直线上的任一麦克风;
201、根据第二麦克风采集到的来自目标声源的声音数据,计算第二麦克风获得的第二声音能量值,其中,第二麦克风为二维麦克风阵列中阵元中心与第一直线相离的麦克风;
202、当能量比值小于第一边界阈值时,确定目标声源位于机器人的负向区间;
203、当能量比值大于第二边界阈值时,确定目标声源位于机器人的正向区间;
204、当能量比值大于或等于第一边界阈值且小于或等于第二边界阈值时,确定目标声源位于机器人的侧向区间;并执行步骤208;
208、计算阵元中心位于第一直线上的第四麦克风和第五麦克风当前采集来自目标声源的声音信号之间的时延差,其中,第四麦克风和第五麦克风为第一直线上的任意麦克风;
209、当时延差小于0时,确定目标声源位于靠近第四麦克风一侧的侧向区间;
2010、当时延差大于0时,确定目标声源位于远离第四麦克风一侧的侧向区间。
当第四麦克风和第五麦克风当前采集来自目标声源的声音信号之间的时延差小于0时,说明目标声源与第四麦克风的距离要小于目标声源与第五麦克风,因此,可确定目标声源位于靠近第四麦克风一侧的侧向区间;同理,当第四麦克风和第五麦克风当前采集来自目标声源的声音信号之间的时延差大于0时,说明目标声源与第四麦克风的距离要大于目标声源与第五麦克风,因此,可确定目标声源位于远离第四麦克风一侧的侧向区间。从而,可确定出目标声源位于机器人哪一侧的侧向区间。
本实施例中,当第一麦克风和第二麦克风分别设于机器人胸腔和后背位置时,可根据预设的第一边界阈值、第二边界阈值和第三边界阈值来确定目标声源相对于机器人的方位区间,从而可准确判断出目标声源的真实位置是位于机器人的前方、后方还是任一侧方。
基于上述,可确定出目标声源相对于机器人的方位区间,在此之后,可根据确定出的方位区间,对目标声源进行精确定位。以下将结合图3-5,针对目标声源位于不同方位区间的情况,详细说明对目标声源进行精准定位的过程。图3为本申请另一实施例提供的一种机器人声源定位方法的流程图。如图3所示,该方法,包括:
300、根据第一麦克风采集到的来自目标声源的声音数据,计算第一麦克风获得的第一声音能量值,其中,第一麦克风为二维麦克风阵列中阵元中心位于第一直线上的任一麦克风;
301、根据第二麦克风采集到的来自目标声源的声音数据,计算第二麦克风获得的第二声音能量值,其中,第二麦克风为二维麦克风阵列中阵元中心与第一直线相离的麦克风;
302、当能量比值小于第一边界阈值时,确定目标声源位于机器人的负向区间;
303、当能量比值大于第二边界阈值时,确定目标声源位于机器人的正向区间;并执行步骤305;
304、当能量比值大于或等于第一边界阈值且小于或等于第二边界阈值时,确定目标声源位于机器人的侧向区间;
305、根据阵元中心位于第一直线上的若干麦克风当前采集来自目标声源的声音信号之间的时延差,计算调整角度;
306、当调整角度大于0°且不大于90°时,将90°与调整角度的差值作为最终角度,并控制机器人顺时针旋转最终角度;
307、当调整角度大于90°且小于180°时,将调整角度与270°的差值作为最终角度,并控制机器人逆时针旋转最终角度。
关于步骤300-304的描述可参见前述实施例,此处不再赘述。
为计算调整角度,可选取阵元中心位于第一直线上的若干麦克风,并计算所选取的麦克风当前采集来自目标声源的声音信号之间的时延,选取的麦克风可为第一直线上的任意麦克风。针对选取的麦克风,相邻的麦克风可作为一组,根据组内各个麦克风的时延,可计算该组麦克风对应的时延差,之后,可基于若干组麦克风的时延差计算调整角度。一组内的麦克风之间的间距可作为组内间距,当各组麦克风之间的组内间距相等时,可直接根据各组麦克风的时延差计算调整角度;当各组麦克风之间的组内间距不相等时,则可根据组内间距之间的差值或比例对时延差进行换算,并根据换算后的时延差计算调整角度。另外,若各组麦克风不相邻,也即各组麦克风两两之间未包含同一麦克风时,可根据各组麦克风之间的距离修正时延差,并根据修正后的时延差计算调整角度。
以下承接图8所示的二维麦克风阵列排布方式,以基于两组麦克风之间的时延差计算调整角度为例进行说明。
图8中,M4和M1之间的间距等于M3和M1之间的间距,首先计算M4和M1的时延差τ41,以及M3和M1的时延差τ31,再根据以下的式(一)可求出调整角度α:
其中,d为麦克风之间的间距,c为空气中的声速。
由于目标声源位于机器人的正方区间,因此,当0<α≤90时,机器人顺时针转动(90-α)度,即可正对目标声源;当90<α<180时,机器人逆时针转动(α-90)度,即可正对目标声源。据此可实现对目标声源的精确定位。
图4为本申请另一实施例提供的另一种机器人声源定位方法的流程图。如图4所示,该方法包括:
400、根据第一麦克风采集到的来自目标声源的声音数据,计算第一麦克风获得的第一声音能量值,其中,第一麦克风为二维麦克风阵列中阵元中心位于第一直线上的任一麦克风;
401、根据第二麦克风采集到的来自目标声源的声音数据,计算第二麦克风获得的第二声音能量值,其中,第二麦克风为二维麦克风阵列中阵元中心与第一直线相离的麦克风;
402、当能量比值小于第一边界阈值时,确定目标声源位于机器人的负向区间;并执行步骤405;
403、当能量比值大于第二边界阈值时,确定目标声源位于机器人的正向区间;
404、当能量比值大于或等于第一边界阈值且小于或等于第二边界阈值时,确定目标声源位于机器人的侧向区间;
405、根据阵元中心位于第一直线上的若干麦克风当前采集来自目标声源的声音信号之间的时延差,计算粗调角度;
406、当粗调角度大于0°且不大于90°时,将粗调角度与90°之和作为最终角度,并控制机器人顺时针旋转最终角度;
407、当粗调角度大于90°且小于180°时,将270°与粗调角度的差值作为最终角度,并控制机器人逆时针旋转最终角度。
关于步骤400-404的描述可参见前述实施例,此处不再赘述。
其中,计算粗调角度的过程可参考上文,由于目标声源位于机器人的负向区间,因此,当0<α≤90时,机器人顺时针转动(90+α)度,即可正对目标声源;当90<α<180时,机器人逆时针转动(270-α)度,即可正对目标声源。
在一些场景下,由于机器人躯体的声散射影响,当目标声源位于机器人的负向区间时直接计算出的粗调角度α的精度,将低于目标声源位于机器人的正向区间时计算出的粗调角度α的精度,因此,基于粗调角度计算的最终角度可能并不精确。据此,在控制机器人顺时针或逆时针旋转最终角度后,如图4所示,该机器人声源定位方法,还包括:
408、根据阵元中心位于第一直线上的若干麦克风当前采集来自目标声源的声音信号之间的时延差,计算微调角度;
409、根据微调角度,控制机器人旋转至正对目标声源。
关于按照微调角度控制机器人旋转的过程,可参考上文中当确定目标声源位于机器人正向区间之后,根据调整角度控制机器人旋转的过程,此处不再赘述。
在控制机器人顺时针或逆时针旋转最终角度后,目标声源将位于机器人的正向区间,此时,再根据上文中式(一)计算一微调角度,并再次按照微调角度控制机器人旋转,可保证再次旋转后的机器人正对目标声源,这大大提高对目标声源进行定位的精确度。
图5为本申请另一实施例提供的又一种机器人声源定位方法的流程图。如图5所示,该方法包括:
500、根据第一麦克风采集到的来自目标声源的声音数据,计算第一麦克风获得的第一声音能量值,其中,第一麦克风为二维麦克风阵列中阵元中心位于第一直线上的任一麦克风;
501、根据第二麦克风采集到的来自目标声源的声音数据,计算第二麦克风获得的第二声音能量值,其中,第二麦克风为二维麦克风阵列中阵元中心与第一直线相离的麦克风;
502、当能量比值小于第一边界阈值时,确定目标声源位于机器人的负向区间;并执行步骤505
503、当能量比值大于第二边界阈值时,确定目标声源位于机器人的正向区间;
504、当能量比值大于或等于第一边界阈值且小于或等于第二边界阈值时,确定目标声源位于机器人的侧向区间;
505、控制机器人旋转180°;
506、根据阵元中心位于第一直线上的若干麦克风当前采集来自目标声源的声音信号之间的时延差,计算调整角度;
507、根据调整角度控制机器人旋转至正对目标声源。
关于步骤500-504的描述可参见前述实施例,此处不再赘述。
由于目标声源位于机器人的负向区间,而负向区间与正向区间对称,因此,可首先控制机器人旋转180°,此时目标声源位于机器人的正向区间,此后,基于旋转后的机器人位置,再执行上文中当确定目标声源位于机器人正向区间时对目标声源进行精确定位的过程,可避免由于机器人躯体的声散射对计算结果的影响,减少计算量,从而可快速地实现对目标声源的精确定位。
在确定目标声源位于机器人的侧向区间之后,当目标声源位于远离第三麦克风一侧的侧向区间时,可将机器人向第一麦克风一侧旋转90度;当目标声源位于靠近第三麦克风一侧的侧向区间时,可将机器人向第三麦克风的一侧旋转90度。按此旋转后,目标声源将位于机器人的正向区间,考虑到机器人躯体的声散射对计算结果的影响,可在机器人旋转后,按照上文中当确定目标声源位于机器人正向区间时对目标声源进行精确定位的过程,从而修正机器人的旋转角度,以实现对目标声源的精确定位。
在上述或下述各实施例中,第一边界阈值、第二边界阈值和第三边界阈值可以依据经验设定,也可以是根据不同的机器人和/或不同的二维麦克风阵列进行调试后而设定,以下将结合图6详细说明对第一边界阈值、第二边界阈值和第三边界阈值进行调试的过程。
图6为预先获得第一边界阈值、第二边界阈值和第三边界阈值的流程图。如图6所示,该流程包括:
600、根据二维麦克风阵列中麦克风之间的位置关系,将机器人的方位区间划分为正向区间、负向区间和侧向区间;
601、根据第一麦克风和第二麦克风分别在负向区间和正向区间中若干预设角度上采集到的来自测试声源的声音数据,计算负向区间和正向区间中各个预设角度对应的能量比测试值;
602、根据第三麦克风和第二麦克风在侧向区间中若干预设角度上采集到的来自测试声源的声音数据,计算侧向区间中各个预设角度对应的能量比测试值;其中,测试声源环绕机器人移动;
603、分别将负向区间、正常区间和侧向区间中各个预设角度对应的能量比测试值中的最大的能量比测试值作为第一边界阈值、第二边界阈值和第三边界阈值。
对第一边界阈值、第二边界阈值和第三边界阈值进行调试的过程可在上文实施例中的步骤102之前执行,关于本申请实施例提供的机器人声源定位方法的其它步骤可参考上文各实施例中的描述,图6中并未示出,此处也不再赘述。
为了实现机器人的方位区间的划分,可根据二维麦克风阵列中麦克风之间的位置关系,将二维麦克风阵列所处的平面或空间划分为正向区域、负向区域以及侧向区域,再根据二维麦克风阵列与机器人的相对位置,定义机器人的正向区间、负向区间和侧向区间。
例如,可以第一直线作为分界线,将二维麦克风阵列所在的平面划分为正向区域、负向区域以及侧向区域,第一直线两侧分别作为正向区域和负向区域,第一直线所在的区域作为侧向区域,其中,可将第二麦克风所在的区域作为负向区域。
在一些场景中,当第一直线与机器人的前胸平行,且第一麦克风位于前胸位置而第二麦克风位于机器人后背位置时,可直接将基于平面上划分的区域向平面的两侧扩展至空间维度,从而将正向区域对应的空间确定为机器人的正向区间,将负向区域对应的空间确定为机器人的负向区间,将侧向区域对应的空间确定为机器人的侧向区间。
在另一些场景中,当第一直线与机器人的前胸平行,且第二麦克风位于前胸位置而第一麦克风位于机器人后背位置时,可直接将基于平面上划分的区域向平面的两侧扩展至空间维度,并将正向区域对应的空间确定为机器人的负向区间,将负向区域对应的空间确定为机器人的正向区间,将侧向区域对应的空间确定为机器人的侧向区间。
当然,在另一场景中,二维麦克风阵列中麦克风之间可能是其它的位置关系,针对二维麦克风阵列中麦克风之间的多种位置关系,可对二维麦克风阵列所在平面划分的区域进行角度换算,来对应至机器人的各个方位区间,从而实现机器人的方位区间的划分。另外,对二维麦克风阵列所在的平面还可采用其它方式进行划分,能够辅助实现机器人的方位区间划分的方式,都应属于本发明的保护范围内。
以下还是以第一麦克风设于机器人胸腔位置,而第二麦克风设于机器人后背位置的情况进行说明。
当二维麦克风阵列的排布方式以及二维麦克风与机器人的相对位置确定后,基于划分好的机器人的方位区间,可采用测试声源播放一段音频,测试声源环绕机器人移动,为了获得每个方位区间对应的边界阈值,可在每个方位区间内设定若干预设角度,预设角度将作为调试过程中的采样点。预设角度可以是若干固定的角度,例如,与第一之间的夹角为10°、30°、60°、90°、110°等等角度;或者预设角度可以是以固定的角度间隔而确定的角度,例如,以第一直线的一端作为0°起点,每个15°设定为一预设角度,机器人的方位区间将具有24个预设角度。当然,还可采用其它方式设定预设角度,只要能够提供每个方位区间的多个采样值即可。
当测试声源移动到预设角度时,可根据第一麦克风和第二麦克风各自采集到的来自测试声源的声音数据,分别计算第一麦克风和第二麦克风的声音能量值,并基于计算获得的第一麦克风和第二麦克风的声音能量值计算第一麦克风与第二麦克风的能量比测试值。正向区间和负向区间中的每一个预设角度将对应一个第一麦克风与第二麦克风的能量比测试值,根据正向区间所包含的预设角度,可基于对应的能量比测试值生成正向区间集合;根据负向区间所包含的预设角度,可基于对应的能量比测试值生成负向区间集合,将负向区间集合中的最大值作为第一边界阈值,将正向区间集合中的最小值作为第二边界阈值。
基于上述调试过程设定的第一边界值和第二边界阈值,由于第一边界阈值是正向区间对应的第一麦克风与第二麦克风的最大的能量比测试值,因此,在确定目标声源相对于机器人的方位区间时,如果第一麦克风与第二麦克风的能量比小于第一边界阈值,即可确定目标声源位于机器人的正向区间。同理,由于第二边界阈值是负向区间对应的第一麦克风与第二麦克风的最小的能量比测试值,因此,在确定目标声源相对于机器人的方位区间时,如果第一麦克风与第二麦克风的能量比大于第一边界阈值,即可确定目标声源位于机器人的负向区间。而,如果第一麦克风与第二麦克风的能量比大于或等于第一边界阈值或者小于或等于第二边界阈值,则可确定目标声源既不在机器人的正向区间也不在机器人的负向区间,而是在机器人的侧向区间。
为了进一步对机器人的侧向区间进行划分,可选取第一麦克风侧面的任一麦克风作为第三麦克风,并根据第三麦克风和第二麦克风在侧向区间中若干预设角度上采集到的来自测试声源的声音数据,计算侧向区间中各个预设角度对应的能量比测试值。侧向区间中的每一个预设角度将对应一个第三麦克风与第二麦克风的能量比测试值,根据侧向区间所包含的预设角度,可基于对应的能量比测试值生成侧向区间集合,将侧向区间集合中的最小值作为第三边界阈值。
基于上述调试过程设定的第三边界阈值,由于第三个边界阈值是侧向区间对应的第三麦克风与第二麦克风的最小的能量比测试值,因此,在确定目标声源位于机器人的侧向区间后,如果第三麦克风与第二麦克风的能量比小于第三边界阈值,即可确定目标声源位于靠近第三麦克风一侧的侧向区间,如果第三声音能量值与第二声音能量值的能量比值小于或等于第三边界阈值时,即可确定目标声源位于靠远离第三麦克风一侧的侧向区间。
本实施例中,由于机器人的躯体存在声散射的问题,为了更合理地划分机器人的方位区间,可通过上述的预设角度来辅助进行方位区间的划分。首先以第一麦克风为原点,按照预设角度间隔在二维麦克风阵列所在的平面上确定预设角度,再根据预设角度将二维麦克风阵列所在的平面划分为多个预设区域,之后再选取正向区域、负向区域和侧向区域分别对应的预设区域,最终根据正向区域、负向区域和侧向区域分别确定出机器人的正向区间、负向区间和侧向区间。
参考图8所示的二维麦克风阵列的排布方式,基于二维坐标系,在(0,0)、(0,-m)、(m,0)及(-m,0)位置分别设置有麦克风,其中,第一麦克风位于(0,0)位置,第二麦克风位于(0,-m)位置,直线为X轴,X轴正方向对应的角度为0°,对机器人的方位区间进行划分的过程,可包括:
从0°开始,根据预设角度间隔确定各个预设角度;
将0°到180°之间第一个和最后一个预设角度之间的区域,确定为正向区间;
将180°到360°之间第一个和最后一个预设角度之间的区域,确定为负向区间;
将0°和180°分别确定为侧向区间。
例如,当预设角度为15°时,可将15°-165°之间的空间区域作为机器人的正向区间,可将195°-345°之间的空间区域作为机器人的负向区间。
又例如,当预设角度为10°时,可将10°-170°之间的空间区域作为机器人的正向区间,可将190°-350°之间的空间区域作为机器人的负向区间.
本实施例中,根据不同的机器人和/或不同的二维麦克风阵列,确定第一边界阈值、第二边界阈值和第三边界阈值,可为确定目标声源相对于机器人的方位区间的过程提供精准的判断基础,从而可提高对目标声源进行定位的精确性。
图7为本申请又一实施例提供的一种机器人的结构示意图,如图7所示,该机器人包括机械本体00,机械本体00上设置有存储器70、处理器71和二维麦克风阵列72:
二维麦克风阵列72包括第一麦克风和第二麦克风,第一麦克风为二维麦克风阵列中阵元中心位于第一直线上的任一麦克风,第二麦克风为二维麦克风阵列中阵元中心与第一直线相离的麦克风;
存储器70于存储计算机程序,并可被配置为存储其它各种数据以支持在服务器设备上的操作。这些数据的示例包括用于在服务器设备上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。
存储器70由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
处理器71与存储器70耦合,用于执行存储器70中的计算机程序,以用于:
根据第一麦克风采集到的来自目标声源的声音数据,计算第一麦克风获得的第一声音能量值,其中,第一麦克风为二维麦克风阵列中阵元中心位于第一直线上的任一麦克风;
根据第二麦克风采集到的来自目标声源的声音数据,计算第二麦克风获得的第二声音能量值,其中,第二麦克风为二维麦克风阵列中阵元中心与第一直线相离的麦克风;
根据第一声音能量值与第二声音能量值的能量比值以及第一麦克风与第二麦克风的位置关系,确定目标声源相对于机器人的方位区间。
在本申请实施例中,基于设置在机器人上的二维麦克风阵列,通过第一麦克风和第二麦克风之间的声音能量比及位置关系,可确定出目标声源相对于机器人的方位区间,因此,可判断出目标声源位于机器人的前方还是后方,进而实现准确定位目标声源的真实位置。
在一可选实施例中,第一麦克风和第二麦克风分别设于机器人胸腔和后背位置,处理器71在根据第一声音能量值与第二声音能量值之间的能量比值以及第一麦克风与第二麦克风的位置关系,确定目标声源相对于机器人的方位区间时,具体用于:
当能量比值小于第一边界阈值时,确定目标声源位于机器人的负向区间;
当能量比值大于第二边界阈值时,确定目标声源位于机器人的正向区间;
当能量比值大于或等于第一边界阈值且小于或等于第二边界阈值时,确定目标声源位于机器人的侧向区间。
在一可选实施例中,处理器71在确定目标声源位于机器人的侧向区间之后,还用于:
根据阵元中心位于第一直线上且位于第一麦克风侧面的第三麦克风所采集到的来自目标声源的声音数据,计算第三麦克风获得的第三声音能量值;
当第三声音能量值与第二声音能量值的能量比值大于第三边界阈值时,确定目标声源位于靠近第一麦克风一侧的侧向区间;
当第三声音能量值与第二声音能量值的能量比值小于或等于第三边界阈值时,确定目标声源位于远离第三麦克风一侧的侧向区间。
在一可选实施例中,处理器71在确定目标声源位于机器人的侧向区间之后,还用于:
计算阵元中心位于第一直线上的第四麦克风和第五麦克风当前采集来自目标声源的声音信号之间的时延差,其中,第四麦克风和第五麦克风为第一直线上的任意麦克风;
当时延差小于0时,确定目标声源位于靠近第四麦克风一侧的侧向区间;
当时延差大于0时,确定目标声源位于远离第四麦克风一侧的侧向区间。
在一可选实施例中,在确定目标声源位于机器人的负向区间之后,处理器71还用于:
控制机器人旋转180°;
根据阵元中心位于第一直线上的若干麦克风当前采集来自目标声源的声音信号之间的时延差,计算调整角度;
根据调整角度控制机器人旋转至正对目标声源。
在一可选实施例中,在确定目标声源位于机器人的负向区间之后,处理器71还用于:
根据阵元中心位于第一直线上的若干麦克风当前采集来自目标声源的声音信号之间的时延差,计算粗调角度;
当粗调角度大于0°且不大于90°时,将粗调角度与90°之和作为最终角度,并控制机器人顺时针旋转最终角度;
当粗调角度大于90°且小于180°时,将270°与粗调角度的差值作为最终角度,并控制机器人逆时针旋转最终角度。
在一可选实施例中,处理器71在控制机器人顺时针或逆时针旋转最终角度后,具体用于:
根据阵元中心位于第一直线上的若干麦克风当前采集来自目标声源的声音信号之间的时延差,计算微调角度;
根据微调角度,控制机器人旋转至正对目标声源。
在一可选实施例中,在确定目标声源位于机器人的正向区间之后,处理器71还用于:
根据阵元中心位于第一直线上的若干麦克风当前采集来自目标声源的声音信号之间的时延差,计算调整角度;
当调整角度大于0°且不大于90°时,将90°与调整角度的差值作为最终角度,并控制机器人顺时针旋转最终角度;
当调整角度大于90°且小于180°时,将调整角度与270°的差值作为最终角度,并控制机器人逆时针旋转最终角度。
在一可选实施例中,在根据第一声音能量值与第二声音能量值的能量比值,确定目标声源所属的方位区间之前,处理器71还用于:
根据二维麦克风阵列中麦克风之间的位置关系,将机器人的方位区间划分为正向区间、负向区间和侧向区间;
根据第一麦克风和第二麦克风分别在负向区间和正向区间中若干预设角度上采集到的来自测试声源的声音数据,计算负向区间和正向区间中各个预设角度对应的能量比测试值;
根据第三麦克风和第二麦克风在侧向区间中若干预设角度上采集到的来自测试声源的声音数据,计算侧向区间中各个预设角度对应的能量比测试值;其中,测试声源环绕机器人移动;
分别将负向区间、正常区间和侧向区间中各个预设角度对应的能量比测试值中的最大的能量比测试值作为第一边界阈值、第二边界阈值和第三边界阈值。
在一可选实施例中,基于二维坐标系,在(0,0)、(0,-m)、(m,0)及(-m,0)位置分别设置有麦克风,其中,第一麦克风位于(0,0)位置,第二麦克风位于(0,-m)位置,直线为X轴,X轴正方向对应的角度为0°,处理器在根据二维麦克风阵列中麦克风之间的位置关系,将机器人的方位区间划分为正向区间、负向区间和侧向区间时,具体用于:
从0°开始,根据预设角度间隔确定各个预设角度;
将0°到180°之间第一个和最后一个预设角度之间的区域,确定为正向区间;
将180°到360°之间第一个和最后一个预设角度之间的区域,确定为负向区间;
将0°和180°分别确定为侧向区间。
进一步,如图7所示,该机器人还包括:通信组件73、显示器74、电源组件75等其它组件。图7中仅示意性给出部分组件,并不意味着机器人只包括图7所示组件。
其中,通信组件73被配置为便于通信组件所在设备和其他设备之间有线或无线方式的通信。通信组件所在设备可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件经由广播信道接收来自外部广播管理***的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
其中,显示器74包括屏幕,其屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。
其中,电源组件75,为电源组件所在设备的各种组件提供电力。电源组件可以包括电源管理***,一个或多个电源,及其他与为电源组件所在设备生成、管理和分配电力相关联的组件。
图9示出了一种机器人的外形。本申请实施例中的机器人外形可有多种形式,例如,图9中示出的人型机器人,当然还可以是其它形式。
相应地,本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,计算机程序被执行时能够实现上述方法实施例中可由机器人执行的各步骤。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (11)
1.一种机器人声源定位方法,其特征在于,,所述方法包括:
根据第一麦克风采集到的来自目标声源的声音数据,计算所述第一麦克风获得的第一声音能量值,其中,所述第一麦克风为二维麦克风阵列中阵元中心位于第一直线上的任一麦克风;
根据第二麦克风采集到的来自所述目标声源的声音数据,计算所述第二麦克风获得的第二声音能量值,其中,所述第二麦克风为所述二维麦克风阵列中阵元中心与所述第一直线相离的麦克风;
根据所述第一声音能量值与所述第二声音能量值的能量比值以及所述第一麦克风与所述第二麦克风的位置关系,确定所述目标声源相对于所述机器人的方位区间。
2.根据权利要求1所述的方法,其特征在于,所述第一麦克风和所述第二麦克风分别设于所述机器人胸腔和后背位置;所述根据所述第一声音能量值与所述第二声音能量值之间的能量比值以及所述第一麦克风与所述第二麦克风的位置关系,确定所述目标声源相对于所述机器人的方位区间,包括:
当所述能量比值小于第一边界阈值时,确定所述目标声源位于所述机器人的负向区间;
当所述能量比值大于第二边界阈值时,确定所述目标声源位于所述机器人的正向区间;
当所述能量比值大于或等于第一边界阈值且小于或等于第二边界阈值时,确定所述目标声源位于所述机器人的侧向区间。
3.根据权利要求2所述的方法,其特征在于,在确定所述目标声源位于所述机器人的侧向区间之后,所述方法还包括:
根据阵元中心位于所述第一直线上且位于所述第一麦克风侧面的第三麦克风所采集到的来自所述目标声源的声音数据,计算所述第三麦克风获得的第三声音能量值;
当所述第三声音能量值与所述第二声音能量值的能量比值大于第三边界阈值时,确定所述目标声源位于靠近所述第三麦克风一侧的侧向区间;
当所述第三声音能量值与所述第二声音能量值的能量比值小于或等于所述第三边界阈值时,确定所述目标声源位于远离所述第三麦克风一侧的侧向区间。
4.根据权利要求2所述的方法,其特征在于,在确定所述目标声源位于所述机器人的侧向区间之后,所述方法还包括:
计算阵元中心位于所述第一直线上的第四麦克风和第五麦克风当前采集来自所述目标声源的声音信号之间的时延差,其中,所述第四麦克风和第五麦克风为所述第一直线上的任意麦克风;
当所述时延差小于0时,确定所述目标声源位于靠近所述第四麦克风一侧的侧向区间;
当所述时延差大于0时,确定所述目标声源位于远离所述第四麦克风一侧的侧向区间。
5.根据权利要求2所述的方法,其特征在于,在确定所述目标声源位于所述机器人的负向区间之后,所述方法还包括:
控制所述机器人旋转180°;
根据阵元中心位于所述第一直线上的若干麦克风当前采集来自所述目标声源的声音信号之间的时延差,计算调整角度;
根据所述调整角度控制所述机器人旋转至正对所述目标声源。
6.根据权利要求2所述的方法,其特征在于,在确定所述目标声源位于所述机器人的负向区间之后,所述方法还包括:
根据阵元中心位于所述第一直线上的若干麦克风当前采集来自所述目标声源的声音信号之间的时延差,计算粗调角度;
当所述粗调角度大于0°且不大于90°时,将所述粗调角度与90°之和作为最终角度,并控制所述机器人顺时针旋转所述最终角度;
当所述粗调角度大于90°且小于180°时,将270°与所述粗调角度的差值作为最终角度,并控制所述机器人逆时针旋转所述最终角度。
7.根据权利要求6所述的方法,其特征在于,在控制所述机器人顺时针或逆时针旋转所述最终角度后,所述方法还包括:
根据阵元中心位于所述第一直线上的若干麦克风当前采集来自所述目标声源的声音信号之间的时延差,计算微调角度;
根据所述微调角度,控制所述机器人旋转至正对所述目标声源。
8.根据权利要求2所述的方法,其特征在于,在确定所述目标声源位于所述机器人的正向区间之后,所述方法还包括:
根据阵元中心位于所述第一直线上的若干麦克风当前采集来自所述目标声源的声音信号之间的时延差,计算调整角度;
当所述调整角度大于0°且不大于90°时,将90°与所述调整角度的差值作为最终角度,并控制所述机器人顺时针旋转所述最终角度;
当所述调整角度大于90°且小于180°时,将调整角度与270°的差值作为最终角度,并控制所述机器人逆时针旋转所述最终角度。
9.根据权利要求1-8所述的方法,其特征在于,在根据所述第一声音能量值与所述第二声音能量值的能量比值,确定目标声源所属的方位区间之前,所述方法还包括:
根据所述二维麦克风阵列中麦克风之间的位置关系,将所述机器人的方位区间划分为正向区间、负向区间和侧向区间;
根据所述第一麦克风和所述第二麦克风分别在所述负向区间和正向区间中若干预设角度上采集到的来自测试声源的声音数据,计算所述负向区间和正向区间中各个预设角度对应的能量比测试值;
根据第三麦克风和所述第二麦克风在所述侧向区间中若干预设角度上采集到的来自测试声源的声音数据,计算所述侧向区间中各个预设角度对应的能量比测试值;其中,所述测试声源环绕所述机器人移动;
分别将所述负向区间、正常区间和侧向区间中各个预设角度对应的能量比测试值中的最大的能量比测试值作为第一边界阈值、第二边界阈值和第三边界阈值。
10.根据权利要求9所述的方法,其特征在于,基于二维坐标系,在(0,0)、(0,-m)、(m,0)及(-m,0)位置分别设置有麦克风,其中,所述第一麦克风位于(0,0)位置,所述第二麦克风位于(0,-m)位置,所述直线为所述X轴,X轴正方向对应的角度为0°,所述根据所述二维麦克风阵列中麦克风之间的位置关系,将所述机器人的方位区间划分为正向区间、负向区间和侧向区间,包括:
从0°开始,根据预设角度间隔确定各个预设角度;
将0°到180°之间第一个和最后一个预设角度之间的区域,确定为正向区间;
将180°到360°之间第一个和最后一个预设角度之间的区域,确定为负向区间;
将0°和180°分别确定为侧向区间。
11.一种机器人,其特征在于,包括:机械本体,所述机械本体上设置有存储器、处理器和二维麦克风阵列;
所述二维麦克风阵列包括阵元中心位于第一直线上的麦克风和阵元中心与所述第一直线相离的麦克风;
所述存储器,用于存储计算机程序;
所述处理器,用于执行所述计算机程序,以用于:
根据第一麦克风采集到的来自目标声源的声音数据,计算所述第一麦克风获得的第一声音能量值,其中,所述第一麦克风为阵元中心位于第一直线上的任一麦克风;
根据第二麦克风采集到的来自所述目标声源的声音数据,计算所述第二麦克风获得的第二声音能量值,其中,所述第二麦克风为阵元中心与所述第一直线相离的麦克风;
根据所述第一声音能量值与所述第二声音能量值的能量比值以及所述第一麦克风与所述第二麦克风的位置关系,确定所述目标声源相对于所述机器人的方位区间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810330841.7A CN108254721A (zh) | 2018-04-13 | 2018-04-13 | 一种机器人声源定位方法和机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810330841.7A CN108254721A (zh) | 2018-04-13 | 2018-04-13 | 一种机器人声源定位方法和机器人 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108254721A true CN108254721A (zh) | 2018-07-06 |
Family
ID=62748233
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810330841.7A Pending CN108254721A (zh) | 2018-04-13 | 2018-04-13 | 一种机器人声源定位方法和机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108254721A (zh) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109633550A (zh) * | 2018-12-28 | 2019-04-16 | 北汽福田汽车股份有限公司 | 车辆及其目标物位置确定方法与装置 |
CN110095755A (zh) * | 2019-04-01 | 2019-08-06 | 北京云知声信息技术有限公司 | 一种声源定位方法 |
WO2020051836A1 (en) * | 2018-09-13 | 2020-03-19 | Alibaba Group Holding Limited | Methods and devices for processing audio input using unidirectional audio input devices |
CN111383650A (zh) * | 2018-12-28 | 2020-07-07 | 深圳市优必选科技有限公司 | 一种机器人及其音频数据处理方法 |
CN111381211A (zh) * | 2020-03-02 | 2020-07-07 | 北京声智科技有限公司 | 一种声源定位方法及装置 |
CN111538352A (zh) * | 2020-04-10 | 2020-08-14 | 南京信息职业技术学院 | 一种寻声指引方法 |
CN112098934A (zh) * | 2020-02-24 | 2020-12-18 | 苏州触达信息技术有限公司 | 一种智能设备的定位方法和智能设备 |
CN112161700A (zh) * | 2020-09-18 | 2021-01-01 | 安徽江淮汽车集团股份有限公司 | 车窗玻璃升降噪声排查方法及装置 |
CN112438660A (zh) * | 2020-09-23 | 2021-03-05 | 深圳市修远文化创意有限公司 | 一种基于扫地机器人的语音定位方法及相关装置 |
CN112466325A (zh) * | 2020-11-25 | 2021-03-09 | Oppo广东移动通信有限公司 | 声源定位方法和装置,及计算机存储介质 |
CN112526452A (zh) * | 2020-11-24 | 2021-03-19 | 杭州萤石软件有限公司 | 声源检测方法、云台摄像机、智能机器人及存储介质 |
CN112684413A (zh) * | 2021-03-17 | 2021-04-20 | 杭州灵伴科技有限公司 | 声源寻向方法和xr设备 |
CN112882536A (zh) * | 2021-01-22 | 2021-06-01 | Oppo广东移动通信有限公司 | 控制方法、控制装置、电子装置和存储介质 |
CN112925235A (zh) * | 2021-01-21 | 2021-06-08 | 深圳市普渡科技有限公司 | 交互时的声源定位方法、设备和计算机可读存储介质 |
CN113489841A (zh) * | 2021-08-23 | 2021-10-08 | Oppo广东移动通信有限公司 | 音质处理方法及装置、电子设备及计算机可读存储介质 |
CN113766368A (zh) * | 2021-08-20 | 2021-12-07 | 歌尔科技有限公司 | 音频设备的控制方法及音频设备 |
CN114516061A (zh) * | 2022-02-25 | 2022-05-20 | 杭州萤石软件有限公司 | 一种机器人控制方法、机器人***及一种机器人 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN2585356Y (zh) * | 2002-12-17 | 2003-11-05 | 王志良 | 一种判别声音方向的电子装置 |
CN105807261A (zh) * | 2016-04-26 | 2016-07-27 | 深思考人工智能机器人科技(北京)有限公司 | 一种听音辨位的装置及方法 |
CN106303810A (zh) * | 2015-05-13 | 2017-01-04 | 青岛通产智能机器人有限公司 | 基于方向性声音传感器的声源方位判断装置及方法 |
CN106501773A (zh) * | 2016-12-23 | 2017-03-15 | 上海语知义信息技术有限公司 | 基于差分阵列的声源方向定位方法 |
CN107026934A (zh) * | 2016-10-27 | 2017-08-08 | 华为技术有限公司 | 一种声源定位方法和装置 |
CN107685334A (zh) * | 2017-09-27 | 2018-02-13 | 歌尔股份有限公司 | 一种服务机器人充电方法和服务机器人 |
-
2018
- 2018-04-13 CN CN201810330841.7A patent/CN108254721A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN2585356Y (zh) * | 2002-12-17 | 2003-11-05 | 王志良 | 一种判别声音方向的电子装置 |
CN106303810A (zh) * | 2015-05-13 | 2017-01-04 | 青岛通产智能机器人有限公司 | 基于方向性声音传感器的声源方位判断装置及方法 |
CN105807261A (zh) * | 2016-04-26 | 2016-07-27 | 深思考人工智能机器人科技(北京)有限公司 | 一种听音辨位的装置及方法 |
CN107026934A (zh) * | 2016-10-27 | 2017-08-08 | 华为技术有限公司 | 一种声源定位方法和装置 |
CN106501773A (zh) * | 2016-12-23 | 2017-03-15 | 上海语知义信息技术有限公司 | 基于差分阵列的声源方向定位方法 |
CN107685334A (zh) * | 2017-09-27 | 2018-02-13 | 歌尔股份有限公司 | 一种服务机器人充电方法和服务机器人 |
Non-Patent Citations (1)
Title |
---|
祁兵兵 等: "基于8位单片机的玩具控制器的研究与实现", 《电声技术》 * |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020051836A1 (en) * | 2018-09-13 | 2020-03-19 | Alibaba Group Holding Limited | Methods and devices for processing audio input using unidirectional audio input devices |
US10827258B2 (en) * | 2018-12-28 | 2020-11-03 | Ubtech Robotics Corp Ltd | Robot and audio data processing method thereof |
CN111383650A (zh) * | 2018-12-28 | 2020-07-07 | 深圳市优必选科技有限公司 | 一种机器人及其音频数据处理方法 |
CN111383650B (zh) * | 2018-12-28 | 2024-05-03 | 深圳市优必选科技有限公司 | 一种机器人及其音频数据处理方法 |
CN109633550A (zh) * | 2018-12-28 | 2019-04-16 | 北汽福田汽车股份有限公司 | 车辆及其目标物位置确定方法与装置 |
CN110095755A (zh) * | 2019-04-01 | 2019-08-06 | 北京云知声信息技术有限公司 | 一种声源定位方法 |
CN112098934A (zh) * | 2020-02-24 | 2020-12-18 | 苏州触达信息技术有限公司 | 一种智能设备的定位方法和智能设备 |
CN112098934B (zh) * | 2020-02-24 | 2024-07-05 | 苏州触达信息技术有限公司 | 一种智能设备的定位方法和智能设备 |
CN111381211A (zh) * | 2020-03-02 | 2020-07-07 | 北京声智科技有限公司 | 一种声源定位方法及装置 |
CN111538352A (zh) * | 2020-04-10 | 2020-08-14 | 南京信息职业技术学院 | 一种寻声指引方法 |
CN112161700A (zh) * | 2020-09-18 | 2021-01-01 | 安徽江淮汽车集团股份有限公司 | 车窗玻璃升降噪声排查方法及装置 |
CN112438660A (zh) * | 2020-09-23 | 2021-03-05 | 深圳市修远文化创意有限公司 | 一种基于扫地机器人的语音定位方法及相关装置 |
CN112526452A (zh) * | 2020-11-24 | 2021-03-19 | 杭州萤石软件有限公司 | 声源检测方法、云台摄像机、智能机器人及存储介质 |
CN112466325A (zh) * | 2020-11-25 | 2021-03-09 | Oppo广东移动通信有限公司 | 声源定位方法和装置,及计算机存储介质 |
CN112466325B (zh) * | 2020-11-25 | 2024-06-04 | Oppo广东移动通信有限公司 | 声源定位方法和装置,及计算机存储介质 |
CN112925235A (zh) * | 2021-01-21 | 2021-06-08 | 深圳市普渡科技有限公司 | 交互时的声源定位方法、设备和计算机可读存储介质 |
CN112882536A (zh) * | 2021-01-22 | 2021-06-01 | Oppo广东移动通信有限公司 | 控制方法、控制装置、电子装置和存储介质 |
CN112684413A (zh) * | 2021-03-17 | 2021-04-20 | 杭州灵伴科技有限公司 | 声源寻向方法和xr设备 |
CN113766368A (zh) * | 2021-08-20 | 2021-12-07 | 歌尔科技有限公司 | 音频设备的控制方法及音频设备 |
CN113766368B (zh) * | 2021-08-20 | 2022-10-18 | 歌尔科技有限公司 | 音频设备的控制方法及音频设备 |
CN113489841A (zh) * | 2021-08-23 | 2021-10-08 | Oppo广东移动通信有限公司 | 音质处理方法及装置、电子设备及计算机可读存储介质 |
CN114516061A (zh) * | 2022-02-25 | 2022-05-20 | 杭州萤石软件有限公司 | 一种机器人控制方法、机器人***及一种机器人 |
CN114516061B (zh) * | 2022-02-25 | 2024-03-05 | 杭州萤石软件有限公司 | 一种机器人控制方法、机器人***及一种机器人 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108254721A (zh) | 一种机器人声源定位方法和机器人 | |
CN110333503B (zh) | 激光雷达的标定方法、装置及电子设备 | |
CN103247031B (zh) | 一种畸变图像校正的方法、终端及*** | |
CN108877770A (zh) | 用于测试智能语音设备的方法、装置和*** | |
CN104065798A (zh) | 声音信号处理方法及设备 | |
CN107995478A (zh) | 投影方法及投影设备 | |
TW201303656A (zh) | 運動型樣分類及手勢辨識 | |
CN103226386A (zh) | 一种基于移动终端的手势识别方法及*** | |
CN105208648B (zh) | 用于进行无线定位的方法和设备以及无线定位方法和设备 | |
CN108537726A (zh) | 一种跟踪拍摄的方法、设备和无人机 | |
CN106210511A (zh) | 一种定位用户的方法和装置 | |
EP2882180A1 (en) | Control method, control apparatus and control device | |
CN110570465B (zh) | 实时定位与地图构建方法、装置及计算机可读存储介质 | |
CN110491316A (zh) | 一种投影仪及其投影控制方法 | |
CN112147994B (zh) | 一种机器人及其回充控制方法和装置 | |
CN109840939A (zh) | 三维重建方法、装置、电子设备及存储介质 | |
CN105306820A (zh) | 控制移动终端中摄像头旋转的方法、装置及移动终端 | |
CN110413011A (zh) | 一种双目云台控制方法、装置及存储介质 | |
CN105091878A (zh) | 一种基于步态的定位方法和装置 | |
CN105644320A (zh) | 遮光板调节方法及装置 | |
EP3360317A1 (en) | Autofocus method and apparatus using modulation transfer function curves | |
CN105227824A (zh) | 一种云台参数调整方法、装置及云台设备 | |
CN110102044A (zh) | 基于智能手环的游戏控制方法、智能手环及存储介质 | |
CN104378728B (zh) | 立体声音频处理方法和装置 | |
US9930462B2 (en) | System and method for on-site microphone calibration |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180706 |
|
RJ01 | Rejection of invention patent application after publication |