无需时间同步的声音定位系统及方法 技术领域 本发明涉及一种无线传感器网络领域, 尤其涉及一种无线传感器网络中无需时间 同步的声音定位系统及方法。
背景技术 随着无线移动设备的普及, 很多以情境感知 (context-aware) 为基础的应用应运 而生。在这些应用所依据的情境中, 位置往往是最重要的因素之一, 例如 : 在环境监测中需 要知道采集环境信息的具体位置 ; 在战场上需要知道敌方人员和装备移动的区域 ; 在煤矿 管理中需要知道事故发生的确切地点等等。在这些应用中, 监测者常常使用无线传感器网 络来监测事件。 在这种情况下, 要想得到监测事件发生的位置, 首先要知道传感器节点自身 的地理位置。 由于传感器网络往往布置在受限制或较危险的区域内, 如核辐射区域, 战场或 深山等, 因此人们通常随机布放传感器节点, 并让这些节点以自组织的方式协调工作。 常见 的例子是用飞机将传感器节点撒播到指定区域中。 随机播放的节点无法事先得知自己的位 置, 因此必须实现在布放后自行定位。 传感器网络中最初有少量节点是已知自身位置的, 这 种节点被称为信标节点 (beacon), 它们往往携带有某些特殊设备, 如 GPS 等, 用于得知自身 位置。对于一个未知节点的定位, 就是根据这些信标节点, 按照某种定位机制实现。
迄今为止, 研究者们已提出了多种定位方法, 这些方法大致可以分为基于距离的 和距离无关的两类。前者需要测量节点之间的绝对距离或方位, 并根据节点间的实际距离 来计算未知节点的位置 ; 后者无需得到节点间的绝对距离或方位, 而是使用估计值。 这两类 方法中, 基于距离的方法能达到更高的精度, 具有广泛的应用。
基于距离的方法包括基于到达时间 (Time of Arrival, TOA) 的定位, 基于到达时 间差 (Time Difference of Arrival, TDOA) 的定位和基于接收信号强度 (Received Signal Strength, RSS) 的定位。 这些方法运用不同的测距手段, 其中 TOA 和 TDOA 具有更好的精度。 但这两种方法都需要对两个不同节点上的时间戳 (time stamp) 进行相互运算, 因此要求网 络中各节点的时钟保持高度一致通过某种机制使各节点原本异步的本地时钟趋向一致的 过程, 被称为时间同步 (time synchronization), 这是 TOA 和 TDOA 方法中不可缺少的一个 步骤。
为 使 时 间 同 步 的 误 差 更 小, 开 销 更 低, 研 究 者 们 从 简 单 的 方 法 开 始, 不 断 改 进 时 间 同 步 的 算 法。 现 在 常 用 的 同 步 方 法 有 参 考 广 播 同 步 (Reference BroadcastSynchronization, RBS),传 感 器 网 络 时 间 同 步 协 议 (Timing-sync Protocol forSensor Networks, TPSN),洪 泛 时 间 同 步 协 议 (the Flooding Time FTSP) 和 梯 度 时 间 同 步 协 议 (the Gradient Time SynchronizationProtocol, Synchronization Protocol, GTSP) 等。一般来说, 时间同步是通过信标节点之间一系列的 信息交换来完成的。当一个节点产生出自己的时间戳并将其发送到另一节点以寻求同步 时, 携带时间戳的发送包往往会在到达接收节点前遭遇延迟。这种延迟使得两个节点难以 精确地对准它们的时钟。Fikret 等人曾经将这种延迟大致分为以下几个部分 :
(1) 发送时间。即在发送端产生一个发送包的时间。
(2) 进入时间。发送包被传输前, 在介质访问控制 (Medium Access Control, MAC) 子层停留的时间。
(3) 传播时间。发送包从离开发送端到抵达接收端的时间。
(4) 接收时间。接收到包后, 接收端还需要经过一个解码的过程, 并将解码后的数 据传输给网络的更上层。
一些同步算法可以去掉其中的一或两项延迟, 但不能将所有延迟都消除。即使有 一种方法能消除所有的延迟, 由于时钟漂移 (clock skew and drifting) 的存在, 时间同步 仍然需要被多次执行, 这样就大大增加了系统的开销。
可见, 时间同步引进了额外的通信开销, 耗费了传感器节点原本有限的能量, 并且 留下的时间误差足以给使用高速信号 ( 如射频信号 ) 的定位系统带来很大的距离误差, 从 而使定位精度显著降低。 发明内容 针对已有的定位系统对时间同步存在依赖, 而时间同步本身会带来误差和额外开 销的问题, 本发明提出了一种基于 TDOA, 但无需时间同步的声音定位系统和方法。
为达到上述目的, 本发明所述无需时间同步的声音定位系统, 包括 :
待定位节点, 对外发出声源信号 ;
两个以上的接收器, 分为基准接收器和信标接收器两种, 录制所述待定位节点发 出的声源信号以及所述基准接收器对外发出的后继声源信号, 并将录制结束后的录音数据 输出给服务器 ;
服务器, 接收各接收器输出的录音数据, 并依据该录音数据计算出待定位节点的 位置并将其显示在服务器界面上 ; 以及,
无线 AP, 构建所述待定位节点, 接收器和服务器组成的无线局域网络。
特别地, 所述接收器由喇叭, 麦克风和无线连接器构成。
特别地, 所述的服务器包括通信和收发数据模块以及数据处理和计算模块 ; 其中,
所述通信和收发数据模块, 用于向接收器发送控制指令, 以及接收各接收器输出 的录音数据 ;
所述数据处理和计算模块, 用于分析传送到服务器的录音数据, 通过相关计算和 取峰值的计算得到 TDOA 和最终定位结果。
本发明所述无需时间同步的声音定位方法, 包括以下步骤 :
(1) 接收器录音开始, 待定位节点 t 时刻对外发出声源信号 ;
(2) 基准接收器 t’ 时刻对外发出后继声源信号 ;
(3) 录音结束后, 接收器将录制的声源信号和后继声源信号组成的录音数据发送 给服务器 ;
(4) 服务器接收到录音数据后, 对其进行数据处理并计算出待定位节点的定位结 果。
其中, 步骤 (4) 包括以下几个步骤 :
4.1 服务器接收到录音数据后, 基于采样点计数的方法查找出声源信号到达接收器时对应的采样点 i, 以及后续声源信号到达接收器时对应的采样点 j, 并计算出此接收器 的 TD2S 值 ;
4.2 基于多数决定的方法, 去除异常地 TD2S 值 ;
4.3 依据 TD2S 值计算 TDOA 值 ;
4.4 由 TDOA 值计算出待定位节点的定位结果。
进一步地, 步骤 4.2 中所述的多数决定的方法的实现步骤如下 :
4.2.1 设接收器 A 与接收器 B 均录制了待定位节点 t 时刻对外发出声源信号和基 准接收器 t’ 时刻对外发出后继声源信号 ;
4.2.2 分别计算出接收器 A 和接收器 B 的 TD2S 值, 并建立接收器 A 和接收器 B 的 TD2S 值关系式 :
|ΔTD| = |TD2SA-TD2SB| ≤ 2dAB/V ;
4.2.3 设各接收器之间的最大距离为 D, 则有 |ΔTD| ≤ 2D/V ;
4.2.4 将所有接收器的 TD2S 值组成一个集合 S ;
4.2.5 假设大部分接收器的 TD2S 值均是正确的, 将集合 S 中的元素分为以下三 类:
一类 : 该类中任意两个元素 a, b, 均有 |a-b| < 2D/V。
二类 : 该类中任意一元素 c 和 (1) 类中的任意一元素 d, 均有 |c-d| > 2D/V。
三类 : 其他元素 ;
4.2.6 设二类元素均为异常值。
进一步地, 步骤 4.3 具体实现如下 :
4.3.1 若 C 为基准接收器, D 为信标接收器, 则声源信号 S 分别于 tC1 和 tD1 到达 C 和 D, C 在 tC3 时刻从喇叭发出后继声源信号 S’ , 然后 S’ 分别在 tC4 和 tD3 时刻到达 C 和 D, 得出 :
TD2SC = tC4-tC1, TD2SD = tD3-tD1
对 C 和 D 之间的 TDOA 值有 :
TDOACD = tC1-tD1 = dCD/V-TD2SD+TD2SC-dCC/V
其中, dCD 和 dCC 分别代表 C 的喇叭到 D 的麦克风之间的距离和 C 的喇叭到 C 的麦克 风之间的距离, V 为该场景下声音在空气中的传播速度 : V = 331.3+0.6*theta, 其中 theta 是该场景下的温度 ;
4.3.2 若 C, D 均 不 是 基 准 接 收 器,则 C 和 D 之 间 的 TDOA 值 有 : TDOACD = TDOACE-TDOADE, 其中, TDOACE 为 C 与基准接收器 E 之间 TDOA 值, 其计算方法同步骤 4.3.1, TDOADE 为 D 与基准接收器 E 之间 TDOA 值, 其计算方法同步骤 4.3.1。
本发明所述无需时间的声音定位系统及方法具有如下几点有益效果 :
一、 无需时间同步。本发明通过去除这一在其他 TDOA 方法中所必须的步骤, 从根 本上改变了 TDOA 方案, 而且避免了很多由时间同步引起的误差。
二、 高定位精度。在采用 44.1kHz 采样频率的前提下, 本发明能够获得 0.023ms 的 时间精度, 在这种时间精度下能获得很高的定位精度。根据在一个 9m*9m*4m 的 3D 区域内 的实验结果, 系统能够获得 10 ~ 20cm 的精度, 这能够满足大量应用的需求。
三、 本发明可以部署在商用的现成 (Commercial off-the-shelf, COTS) 设备上, 如手机, PDA, MP3 播放器等。这使得本发明的系统更加易用, 部署成本更低, 易于推广。 附图说明
图 1 为本发明所述无需时间同步的声音定位系统的结构示意图 ; 图 2 为两个节点 A 和 B 的典型时间序列示意图 ; 图 3 为一典型的信号求相关的结果示意图 ; 图 4 为本发明多环境实验 2D 场景各节点的布放图 ; 图 5 为本发明多环境实验 3D 场景各节点的布放图 ; 图 6 为 3D 场景各节点在 xy 平面上的投影图 ; 图 7 为 3D 场景各节点在 yz 平面上的投影图 ; 图 8 为本发明 2D 场景中实验结果的异常点数量示意图 ; 图 9 为本发明 3D 场景中实验结果的异常点数量示意图 ; 图 10 为本发明 2D 场景中实验结果的定位误差的累计分布图 ; 图 11 为本发明 3D 场景中实验结果的定位误差的累计分布图 ; 。具体实施方式 下面结合说明书附图对本发明的具体实施方式做详细描述。
本发明的基本系统架构如图 1 所示, 主要包含的硬件有 : 一个待定位节点, 无线 AP 2, 一台作为服务器的笔记本 3 和几个接收器 1。 其中, 所述的几个接收器 1 分为信标接收器 和基准接收器。所述基准接收器和所述信标接收器, 被部署在已知的确定位置。所述待定 位节点的位置待求。本发明所述无需时间同步的声音定位系统各部件的工作原理如下 :
待定位节点, 对外发出声源信号 ;
接收器, 分为基准接收器和信标接收器两种, 录制所述待定位节点发出的声源信 号以及所述基准接收器对外发出的后继声源信号, 并将录制结束后的录音数据输出给服务 器;
服务器, 接收所述信标接收器输出的录音数据, 并依据该录音数据计算出待定位 节点的位置并将其显示在服务器界面上 ;
无线 AP, 构建所述待定位节点, 基准接收器, 信标接收器和服务器构成的无线局域 网络。
其中, 所述的接收器都有一套基本的硬件, 包括喇叭, 麦克风, 无线连接器 ( 如蓝 牙或 WiFi)。这些接收器通过无线 AP 与所述服务器构成了一个局域网络。
系统工作的流程大致为 : 接收器录音开始=>待定位节点发声=>基准接收器发 声=>接收器录音结束=>接收器将录音文件发送给服务器=>服务器处理数据, 得出待 定位节点的定位结果。
本发明所述无需时间同步的声音定位方法的具体步骤如下 :
步骤 1、 接收器录音开始, 待定位节点 t 时刻对外发出声源信号 ;
步骤 2、 基准接收器 t’ 时刻对外发出后继声源信号 ;
步骤 3、 录音结束后, 接收器将录音数据发送给服务器 ;
步骤 4、 服务器接收到录音文件后, 对其进行处理并计算出待定位节点的定位结
果。 4.1 服务器接收到录音数据后, 基于采样点计数的方法查找出声源信号到达信标 接收器时对应的采样点 i, 以及后续声源信号到达信标接收器时对应的采样点 j, 并计算出 此信标接收器的 TD2S 值。
图 2 是两个节点 A 和 B 的典型时间序列 ( 节点指的是基准接收器或信标接收器, 下同 )。图中, 分别用 tA1 和 tB1 代表声源 S 到达 A 和 B 的麦克风的时间。如果两个节点的 时钟完全一致, 那么 tB1-tA1 就是 A 和 B 的 TDOA 值。但如果只做这种简单的运算, 必然需要 经过时钟同步的步骤。
本发明采用 TD2S 来表示一个节点从接收 S 起到接收 S’ 为止经过的时间。对每个 节点来说, 计算这个值都只牵涉到自身的时钟, 而不需要和其他的节点进行同步。 根据每个 节点的 TD2S 值和锚节点 ( 即信标接收器 ) 的坐标, 即可计算出任意两个节点之间的 TDOA。
但是, 声音信号从到达麦克风到被节点检测到仍然需要一段时间。这种情况下, tB2-tA2 才是系统所计算的 TDOA 值, 而 tB2-tA2 和 tB1-tA1 通常是不相等的。为了消除这种不确 定性, 本发明使用了采样点计数的方法。因为当 S 和 S’ 到达节点时, 节点始终处于录音状 态, 并以一个确定的录音频率 f 对声音信号进行采样, 所以, 如果能够找到这一段采样数据 中 S 到达节点时对应的采样点 i, 以及 S’ 到达节点时对应的采样点 j, 就可以得出此节点的 TD2S 值, 即 TD2S = (j-i)/f。显然, 设备的采样频率会影响到 TD2S 的精度, 采样频率越高, 时间精度就越高。本发明采用的声音采样频率是 44.1kHz, 大多数 COTS 的设备都能达到这 个频率。
那么, 如何准确地找出 S 和 S’ 分别对应的采样点呢?在这里, 本发明采用了传统 的求相关 (correlating) 方法。这种方法只对可以预先进行数学描述的信号有效。因此, 在实验过程中, 考虑到信号的自相关特性要求, 采用了频率范围为 2 ~ 6kHz, 长度为 50ms 的 Linear chirp 信号作为 S, 并将 S’ 设定为与之相同。在理想情况下, 相关结果如图 3 所示, 前一个峰对应的是 S 到达的时刻, 后一个峰对应 S’ 的到达。但在实际应用中, 由于反射引 起的多径效应 (multi-path) 和其他因素, 两个最高峰并不能分别代表 S 和 S’ 。因此, 本发 明把取最高峰改为取最高峰前长为 ω0 的滑动窗口内最早的峰, ω0 为一个经验参数。可从 高度和平均斜率上设定阈值, 来判定一个点是否可以被算作峰。
4.2 基于多数决定的方法, 去除异常地 TD2S 值 ;
经步骤 4.1, 得出了 TD2S 值, 但节点的录音经常是不稳定的, 声源和节点间的障碍 或背景噪音都可能导致有缺陷的录音结果。由这种录音文件得到的 TD2S 值就是一个异常 值 (outlier)。
由于 S 的发出时间和发出地点都是未知的, 因此很难预先给出一个 TD2S 应在的范 围。本发明给出了一个多数决定的方法, 来判定哪些值是异常值。
假设声源 M 在 t 时刻发出了 S 信号, 基准节点 N 在 t’ 时刻发出了 S’ 信号, 节点 A 和 B 都记录了这两次发声。那么 A 和 B 的 TD2S 满足如下关系 :
|ΔTD| = |TD2SA-TD2SB|
= |((t’ +dAN/v)-(t+dAM/v))-((t’ +dBN/v)-(t+dBM/v))|
= |(dAN-dBN)-(dAM-dBM)|/v
≤ |dAN-dBN|/v+|dAM-dBM|/v
≤ 2dAB/v
假设 D 是所有节点之间的最大距离, 那么对任意一对节点, 都有 |ΔTD| ≤ 2D/V。 所 以, 如果将所有节点的 TD2S 组成一个集合 S, 而集合中不存在异常值的话, 集合中的最大元 素和最小元素的差值将不大于 2D/V。
如果大部分节点的 TD2S 值都正确而少量节点的值错误, 那么 S 中的元素可以分为 以下三类 :
(1) 该类中任意两个元素 a, b, 均有 |a-b| < 2D/V。
(2) 该类中任意一元素 c 和 (1) 类中的任意一元素 d, 均有 |a-b| > 2D/V。
(3) 其他元素。
这种情况下, 可以认为 (2) 类元素都是异常值, 并仅使用 (1) 类元素进行下一步运 算。这种分类方式基于大部分 TD2S 都不是异常值的假设, 这个假设十分接近事实。在实验 中, 这种分类和除去异常值的方法表现十分良好。
4.3 依据 TD2S 值计算两节点的 TDOA 值 ;
基于步骤 4.2 得出正常的 TD2S 值 ( 即误差不足以使其成为异常值的各节点 TD2S 值 ) 进一步得出任意两节点的 TDOA 值。图 2 是系统中两个节点 A 和 B 的典型时间序列, 其 中 A 为基准节点。在图中, S 分别于 tA1 和 tB1 到达 A 和 B, A 在 tA3 时刻从喇叭发出 S’ , 然后 S’ 分别在 tA4 和 tB3 时刻到达 A 和 B 的麦克风处。明显地, TD2SA = tA4-tA1, TD2SB = tB3-tB1。 对 A 和 B 之间的 TDOA 值, 使用以下方法求得 :
TDOAAB = tB1-tA1
= (tB3-tA3)-(tB3-tB1)+(tA3-tA1)
= (tB3-tA3)-(tB3-tB1)+(tA4-tA1)-(tA4-tA3)
= dAB/V-(tB3-tB1)+(tA4-tA1)-dAA/V
= dAB/V-TD2SB+TD2SA-dAA/V
其中, dAB 和 dAA 分别代表 A 的喇叭到 B 的麦克风之间的距离和 A 的喇叭到 A 的麦 克风之间的距离。由于 A 和 B 的位置都是固定可测量的, 所以这两个值都是不变的 ; 两个 TD2S 值可以用前面提到的方法得出 ; V 为该场景下声音在空气中的传播速度, 可通过公式 V = 331.3+0.6*theta 来计算它, 其中 theta 是该场景下的温度。这样就在异步的各节点上 得出了 TDOA 值。
如果 A 和 B 两个节点都不是基准节点, 它们的 TDOA 值可以通过简单的运算得出, 公式为 : TDOAAB = TDOAAC-TDOABC, 其中, TDOAAC 为 A 与基准节点 C 之间的 TDOA 值, TDOABC 为 B 与基准节点 C 之间的 TDOA 值。
4.4 由 TDOA 值计算出待定位节点的定位结果 ;
运用 TDOA 值得出位置, 总的来说是一个解非线性方程组的过程。对应的的方法有 许多种, 如直接解方程的方法, 运用 Taylor 公式的方法, 分治的方法等。本发明经过对这 些算法的分析, 选取了 Chan 提出的一种算法, 它在精确度和计算复杂性上取得了较好的平 衡。这些算法一般要求节点至少有 4 个。
Chan 的算法首先用类似于 Taylor 展开的方法得出一个初始解, 然后求误差向量 的协方差矩阵, 并用此矩阵对初始解作进一步的修正, 得出最终结果, 经过理论分析, 这种 方法虽然只进行了一次修正, 但具有和多次迭代的 Taylor 展开方法相当的精度。而且, 它还可以根据声源所处区域的不同, 在靠近信标节点的区域和远离信标节点的区域分别采取 不同的修正方法, 使结果更加准确, 应用场景更加广泛。
经过以上的步骤, 本发明就由几个节点的录音数据出发, 最终计算出了声源的位 置, 即待定位节点的位置。
综上所述, 本发明所述无需时间同步的声音定位系统及方法主要使用了以下技 术:
(1) 双信号感知。 系统启动时, 几个时钟不同的接收器对声源信号 S 和基准接收器 发出的后继信号 S’ 进行录制。
(2) 采样点计数。 录制结束后, 系统统计每个接收器上这两个信号之间的采样点个 数, 从而得出这两个信号在每个接收器上的接收时间差。 通过进一步的分析和计算, 可以得 到源信号在不同接收器上的接收时间差, 然后就可以用 TDOA 的原理计算位置。由于信号采 样一般能达到较高的频率, 因此时间差的计算能够达到较高的精度。再加上系统避开了时 间同步的误差, 因此本系统的定位能够比较精准。
下面结合一具体实施例对本发明所述的无需时间同步的声音定位系统和方法进 行进一步地说明。
一、 搭建实验系统
本实施例使用了 8 个手机, 其中 6 个 Dopod 手机是信标接收器, 用于录音 ; 一个 SonyEricsson 手机当作待定位节点 ; 一个 O2 XDA 手机用作基准接收器。将这 8 个手机, 一 台 PC 和一个 AP(Access Point) 连接到一个星形网络中, AP 作为网络的中心, 将手机所记 录的录音数据全部发送到 PC 上, 并由 PC 作处理和计算, 最终得出位置结果。
在本实施例构建的实验系统中, 之所以使用了多于 4 个的信标节点, 一是因为这 样能保证在异常点出现时, 可用的 TD2S 值仍然超过 4 个 ; 二是因为更多的节点也可以提高 定位的精度。
二、 运行定位程序软件
本实施例的系统软件分为部署在服务器上的软件和部署在接收器上的软件两部 分。部署在服务器上的软件主要起系统控制和处理数据的作用, 部署在接收器上的软件主 要起控制录音和发声的作用。两者都包含通讯模块用于相互之间发送和接收指令。
服务器上的软件又分为两个相互独立的模块 : 通信和收发数据模块以及数据处理 和计算模块。 所述通信和收发数据模块, 用于向各接收器发送控制指令, 以及接收各接收器 的录音数据 ; 所述数据处理和计算模块, 用于分析传送到服务器的录音数据, 通过相关, 取 峰值的计算, 得到 TDOA 和最终结果。
部署在手机上的软件和服务器的通信模块均由 Visual C++ 编程实现, 服务器器的 计算模块则由 Matlab 实现, 并生成了可由通信模块调用的 COM 组件。
在一次完整的定位过程中, 首先要将各接收器, AP 和服务器 PC 都连接在一个网络 中, 保证设备之间的互通 ; 接着由服务器的使用者发布定位命令, 系统自动执行所有接收器 的录音, 声源的发声和录音数据传输的工作, 直至所有录音数据都被传送到服务器 ; 最后, 服务器调用计算模块, 结合各接收器的坐标信息, 对所有的录音文件进行分析, 最终计算出 声源位置并将其显示在服务器界面上。接下来, 就可以开始下一次定位了。
三、 多环境实验在上面介绍的具体步骤中, 除了一些可以忽略的因素, 如声速的波动等, 仍然有一 些因素能够影响定位的精度。这主要包括 :
(1) 信号的信噪比 (Signal to Noise Ratio, SNR)
在实验中, 环境噪声总是会被记录下来。 如果传输信号的能量太弱, 或者噪声的频 率接近于传输信号的频率, 就会使系统难以发现传输信号的到达时刻。
(2) 多径效应
由于声音反射的存在, 同一个声音信号可能通过不同路径几次到达同一接收器。 虽然实验中采用了比较合理的选取第一个峰作为到达时间的方法, 但是仍然可能出现错 误。
(3) 解方程
当 TDOA 的误差较小时, Chan 的方法能够获得较高的精度。但是随着误差的增大, 这种方法的表现也越来越差。实验中, 大多数 TDOA 的误差都能保持在 0.4ms 以下, Chan 的 方法在这种情况下能获得较好的结果。但仍然有小一部分误差是更大的, 因此这时该方法 就会带来较大的误差。
根据上面对误差来源的分析, 在运行实验的 2D 和 3D 场景中, 又将本实施例构建的 系统处于三种不同的环境中进行实验。这三种环境分别为 :
(1) 户外的安静环境。 (2) 户外的嘈杂环境。 设置的位置与 (1) 一样, 只是在旁边放置了一个播放音乐的喇叭。 (3) 室内的安静环境。一个开阔的大厅, 大小约为 9m*9m*4m, 环境较为安静。
此处为了表示简单起见, 分别使用 “Normal” , “Noisy” 和 “Inside” 指代 (1)、 (2) 和 (3) 这三种环境。设置这三种实验环境的目的是 : 试图揭示单个干扰因素对实验结果的 影响。在每种实验环境下, 将声源布放在 16 个不同的点上, 并且在每个点上重复做 10 次采 样。因此, 2 个场景, 3 种环境中就共有 960 组录音结果。
2D 和 3D 场景中, 在各种环境下, 节点布放都是完全一样的。2D 场景的节点布放如 图 4 所示, 3D 场景的各节点的布放如图 5, 6 和 7 所示。其中, ■代表不同的待定位节点发出 声源的位置, ●代表接收器的位置。由于接收器的布放是对称的, 声源位置只需占满 1/4 的 空间即可。
四、 实验结果
1、 异常点个数
如果出现异常值的信标节点个数在 3D 场景下超过 2 个, 在 2D 场景下超过 3 个, 就 会得出一个误差极大的定位结果。这样的结果极大地增加了定位结果的平均误差, 基本无 价值, 而且很容易和其他结果区分开来的。
因此, 在计算定位的平均误差时, 会先将这些异常结果去除, 然后计算剩余结果的 均值。但是, 为研究系统的稳定性, 本实施例会记录出现异常定位结果的个数。
图 8, 9 分别显示了 2D 场景下和 3D 场景下异常的定位结果在整个实验中的数量。 从图中可以看出, 2D 场景下的实验所得的异常结果比 3D 场景下要少得多, 这说明更多的冗 余节点能够增加系统的稳定性。
2、 定位误差
图 10, 11 分别描绘了在 2D 和 3D 场景下定位误差的累计密度分布图 (cumulative density function)。其中, 4为 “Normal” 环境, 5为 “Noisy” 环境, 6为 “Inside” 环境。表 1, 表 2 记录了定位误差的均值和一些阈值。从图表中可以看出, 3D 场景中定位的平均误差 为 10 ~ 20cm, 而 2D 的平均误差为 10 ~ 21cm。这说明本发明所述的系统在各种环境下都 能获得较好的精度。
表 1 2D 定位误差
指标 (cm) 平均误差 50%误差 90%误差 标准差 异常点比例
指标 (cm) 平均误差 50%误差 90%误差 标准差 异常点比例
Normal 14.7 13.7 22.8 6.2 2.5% Noisy 14.4 13.8 21.9 7.4 5% Inside 15.2 12.8 28.2 9.9 12.5% Normal 20.0 12.7 38.1 12.8 1.25% Noisy 20.3 18.8 33.7 10.9 5% Inside 13.7 10.9 29.9 12.1 0.6%表 2 3D 定位误差从上述表中观察到, 在室外的安静环境下定位的结果不一定是最好的。虽然由图 8 和图 9 可以看出, 噪声和多径效应增加了异常点的个数, 但它们并没有明显的改变总的平 均误差。这也说明本发明所述的系统具有较强的抗干扰能力。
综上所述, 本发明所述无需时间同步的声音定位系统与方法, 通过去除时间同步, 从根本上改变了 TDOA 的方案 ; 通过双信号感知和采样点计数的技术, 获得了较高的定位精 度。 实验表明, 在一个 9m*9m*4m 的 3D 区域内所做的实验, 能够获得 10 ~ 20cm 的平均精度。 实验设备采用商用的手机, 使成本有所降低并使系统部署更加容易。
以上, 仅为本发明的较佳实施例, 但本发明的保护范围并不局限于此, 任何熟悉本 技术领域的技术人员在本发明揭露的技术范围内, 可轻易想到的变化或替换, 都应涵盖在 本发明的保护范围之内。 因此, 本发明的保护范围应该以权利要求所界定的保护范围为准。