一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于最小圆覆盖算法的语音定位方法与流程

2022-02-22 18:01:59 来源:中国专利 TAG:


1.本发明涉及语音定位技术领域,特别是一种基于最小圆覆盖算法的语音定位方法。


背景技术:

2.利用多个麦克风传感器采集到的信号来计算到达时延差(time delay of arrival,tdoa)。然后根据tdoa以及麦克风之间的间距可以得到语音信号的方向。该测量方向受到环境的影响,比如混响,背景噪声、测量误差等等,这些因素会导致语音定向产生误差。如果需要对目标语音进行定位,则需要多个语音测向模块分布式的进行语音定向,然后依据不同位置语音测向模块的结果确定目标语音信号的位置。
3.tdoa技术提供了一种方法,能够通过两个麦克风传感器采集到的信号来确定两个信号之间的时延差,从而确定语音方向。计算信号间时延差主要用的方法是基于广义互相关函数(generalized cross-correlation,gcc)。而声场环境分为近场声源和远场声源。对于常见的封闭空间下的语音源和语音测向模块之间的距离,通常认为语音声源为远场声源。所以tdoa技术只能计算语音信号的方向,需要通过分布式的语音模块来对语音进行测向,并利用不同模块的测向结果来确定语音的位置。
4.但是实际情况下,定向的精度往往不能保证精确,会在一定范围内偏差。这种偏差会导致语音声源的定位也会出现偏差,所以如何避免由语音测向模块产生的定向误差导致的语音信号定位的误差是需要解决的问题。。


技术实现要素:

5.为解决现有技术中存在的问题,本发明的目的是提供一种基于最小圆覆盖算法的语音定位方法,本发明利用最小覆盖圆点集的方法将每个语音定位模块的测向误差对最终的定位结果的影响减到了最小。
6.为实现上述目的,本发明采用的技术方案是:一种基于最小圆覆盖算法的语音定位方法,包括以下步骤:
7.s10、在空间中分布多个语音测向模块,根据语音的位置计算出语音相对于自身的方向角度;
8.s20、根据人为设定的坐标系,确定每个语音测向模块之间的交点坐标;
9.s30、利用最小圆覆盖算法确定离散分布的所有交点坐标的圆心,即为最后的语音定位坐标。
10.作为本发明的进一步改进,步骤s20具体如下:
11.在密闭的房间中布置m个语音测向模块,假设第i个模块的坐标为(xi,yi),测量的语音方向角度为θi,根据建模时设计的空间坐标轴,将测量到的语音方向角度转换为坐标轴下的角度θi′

12.θi′
=π/2-θi13.将所有的语音测向模块测向的结果用一元一次方程表示:
14.y-yi=ki(x-xi)
15.其中,ki=tan(θi′
);
16.将所有的语音测向直线两两相交,计算两条线的交点:
[0017][0018]
(x,y)为第i个和第j个测向模块的交点,则:
[0019][0020]
计算所有可能的交点,如果有m个语音测向模块,且假设对于一段语音,每个测向模块计算n次角度,那么最后一共可以得到m*(m-1)*n*n/2个交点;
[0021]
最后,保留在合理的坐标范围内的点。
[0022]
作为本发明的进一步改进,在步骤s30中,如果能够确定最小覆盖圆,那么最小覆盖圆的圆心就是语音源的位置,具体包括以下步骤:
[0023]
s31、任取三个点a,b,c作为起始点进入循环中;
[0024]
s32、求出包含a,b,c三点的最小圆,此时有两种情况:第一种情况,圆周通过这三个点;第二种情况,圆周通过其中两个点,且包含了第三个点,此时这两点一定是作为圆的直径两端;
[0025]
s33、找出距离步骤s32中圆周圆心最远的点d,若d在圆外,执行步骤s34,反之,该圆就是所求的圆,算法结束;
[0026]
s34、在a,b,c,d中选取三个点,生成一个包含这四个点的最小圆,将构成这个最小圆的三个点组成新的a,b,c,返回步骤s32。
[0027]
本发明的有益效果是:
[0028]
本发明在密闭环境下,如家庭客厅等环境布置了多个分布式语音定位模块。构建坐标系,通过每个模块对语音的定向角度判断目标语音的坐标。由于语音作为远场声源的原因,现有技术的单个语音定位模块几乎不能实现语音的具体定位。本发明相比于现有的技术,基于分布式语音定位模块,能够在现有技术实现语音测向的基础上进一步实现语音定位。除此之外,由于每个分布式的语音定位模块对于目标语音的测向会存在误差,从而导致判断的目标语音坐标不准确。所以本发明将前面得到的多个离散定位点作为点集,结合最小覆盖圆的算法求该点集的最小覆盖圆的圆心,该圆心即为最后的目标语音定位结果。相比于现有技术,该方法利用最小覆盖圆点集的方法将每个语音定位模块的测向误差对最终的定位结果的影响减到了最小。
附图说明
[0029]
图1为本发明实施例的流程框图;
[0030]
图2为本发明实施例中分布式语音测向模块布局示意图;
[0031]
图3为本发明实施例中最小圆覆盖算法流程图。
具体实施方式
[0032]
下面结合附图对本发明的实施例进行详细说明。
[0033]
实施例
[0034]
一种基于最小圆覆盖算法的语音定位方法,本实施例利用最小圆覆盖算法实现封闭空间下的语音定位。首先,在空间中分布了多个语音测向模块,它们会根据语音的位置计算出语音相对于自身的方向角度。然后,根据人为设定的坐标系,确定每个语音测向模块之间的交点坐标。最后利用最小圆覆盖算法确定这些离散点的圆心,即为最后的语音定位坐标。整个算法流程如图1所示,首先从语音测向模块得到语音相对于每个位置的角度,然后计算可能的交点坐标,最后求解在合理范围内的交点点集的最小覆盖圆圆心,为语音的坐标位置。
[0035]
1.离散分布的交点的计算:
[0036]
在密闭的房间中布置了m个语音测向模块,假设第i个模块的坐标为(xi,yi),测量的语音方向角度为θi,如图2所示,图中放置了m个语音测向模块,每个模块对应了它的坐标和角度。可以将其转换成直角坐标系来表示。根据建模时设计的空间坐标轴,将测量到的语音方向角度转换为坐标轴下的角度θi′
,比如图1中的第i个测向模块,根据其摆放的朝向对其进行相应的矫正,如式(1.1)所示。
[0037]
θi′
=π/2-θiꢀꢀ
(1.1)
[0038]
将所有的模块测向的结果用一元一次方程表示,如式(1.2)所示。
[0039]
y-yi=ki(x-xi)
ꢀꢀ
(1.2)
[0040]
其中ki=tan(θi′
)。
[0041]
将所有的语音测向直线两两相交,计算两条线的交点,如式(1.3)所示。
[0042][0043]
(x,y)为第i个和第j个测向模块的交点,可以通过式(1.4)得到。
[0044][0045]
计算所有可能的交点。如果有m个语音测向模块,且假设对于一段语音,每个测向模块计算n次角度,那么最后一共可以得到m*(m-1)*n*n/2个交点。
[0046]
最后,保留在合理的坐标范围内的点,比如图2所示的封闭房间尺寸,那么可以认为:
[0047][0048]
2.最小覆盖圆算法计算圆心:
[0049]
利用最小圆覆盖算法确定这些离散点的最小覆盖圆。如果能够确定最小覆盖圆,那么最小覆盖圆的圆心就是语音源的位置。最小圆覆盖算法流程如图3所示。
[0050]
步骤1:任取三个点a,b,c作为起始点进入循环中。
[0051]
步骤2:求出包含a,b,c三点的最小圆,此时有两种情况。第一种情况,圆周通过这
三个点。第二种情况,圆周通过其中两个点,且包含了第三个点,此时这种情况这两点一定是作为圆的直径两端。
[0052]
步骤3:找出距离步骤2中圆周圆心最远的点d,若d在圆外,执行步骤4。反之,该圆就是所求的圆,算法结束。
[0053]
步骤4:在a,b,c,d中选取3个点,生成一个包含这四个点的最小圆,将构成这个最小圆的三个点组成新的a,b,c,返回步骤2。
[0054]
以上所述实施例仅表达了本发明的具体实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献