室内定位系列(〇)——从人耳听觉定位原理到室内定位技术

之前上过一门与定位技术沾点边的课程大脑与空间,也看过一些关于麦克风阵列定位的论文,觉得还挺有趣,好多的技术都是从自然界学习和模仿的。刚开始学习室内定位技术的师弟师妹们可能很容易被各种专业名词吓住了,这里从人耳的定位原理开始,来简单讲讲各种室内定位技术,希望能引起大家的学习兴趣,对定位技术能有个了解。这里也粗浅地讲了讲位置指纹法,以后准备写一系列更详细的指纹法定位的文章。

人耳听觉定位原理


和声音相关的定位大家能有印象的肯定是蝙蝠的超声波,那是接收反射回来的超声波判断前方是否有障碍,是雷达的基本原理,但是和人耳定位声源完全是两码事。

声源振动产生的声波传到了耳朵,为什么我们就能够感知到声源的位置?

752190-20151110165212994-923826709.jpg

是不是因为我们有两只耳朵,像下图这样:

752190-20151110165245962-1874400312.jpg


一个声音发出来,传到两只耳朵的时间不一样,如果大脑能够分辨出两个声音的到达时间差,那么声源肯定在以两只耳朵为焦点的双曲线上面(双曲线上的点到两个焦点的距离的差为定值)。那么大脑怎样去分辨出这个到达时间差呢?可以是这样:

752190-20151110165343244-1153066449.jpg

一个声音从两只耳朵里进来后相遇的位置不在中间,如果偏右了一些,说明左耳离声源比较近。虽然根据时间差只能确定一条双曲线,但是如果像下面这样把头转一转,

752190-20151110165408869-2127357730.jpg

又可以出来一条双曲线,那么取交点就能定位了吧。

实际上除了这个到达时间差,还可以有其他一些双耳的区别可以利用,归纳一下:

  1. 双耳时间差:距离声源越近的耳朵先听到声音
  2. 双耳声级差:传播距离越远声音越小
  3. 双耳相位差(麦克风应该可以得到相位差,人耳的话我也不知道)
  4. 双耳音色差:声音有时要绕过头颅到达耳朵,不同波长的绕射衰减能力不同造成音色的差别

这里解释一下音色这个玄乎的东西,不同音色其实就是声音的谐波成分不一样,不同频率的声音成分在绕射时衰减不一样的话就会使得音色发生细微变化,而人耳是区分出频率成分的不同,因为耳蜗就像一台频谱分析仪(想想检测电磁波的频谱分析仪可值近百万啊,好好保护自己的耳蜗吧),原理简单来说就是因为不同频率的的振动会在一个叫做基底膜的东西的不同位置上出现峰值,基底膜可以看成是一组频带重叠的非线性带通滤波器。

752190-20151110165420853-1509959632.jpg

上面这些都可以称为“双耳效应”,可能有人会问,声源的在垂直方向的位置怎么办,在一个水平面的双耳可不能判断声源的高低啊,难道真的要各种转脑袋来实现双曲面的相交?还有人脑难道真的会计算双曲线方程?答案当然是否定的,进化了几十亿年的生物体早就发展出了更加有效的的定位线索:耳廓

耳廓具有不规则的形状,除了一部分直达耳道的声波,还有一部分会经过耳廓反射后进入耳道,而耳廓特殊的构造改变了不同空间方向声音的频谱特性,相当于梳状滤波器,将不同空间方向的声音进行不同的滤波。

752190-20151110165434587-700423002.jpg
752190-20151110165529884-2093120387.jpg

(不同的频率成分经过反射后的衰减程度不一样,这种特性与方向有关)

耳廓能使得不同方向的声音产生了不同,但具体怎样的不同代表怎样的方向?每个人的耳廓都不一样,不可能有统一的对应关系,所以需要将听到的声音和以往的经验进行比较,才能判断方向。

耳朵只是传感器,大脑才是实现定位算法的地方,它不仅仅只利用耳朵传来的信息,还有以往的经验啊,这样,实际上的定位应该是这样的:

大脑需要事先记录下各种声音信号与真实方位的对应关系,这些对应关系由听觉、视觉、触觉等共同完成,通过视觉估计出声源的真实方位,将耳朵此时得到的信号与之对应,以后耳朵再得到同样的信号时,就能独立判断出声源位置了。而与位置所对应的这个信号可能包含了之前所有提到的线索(时间差、声级差、声音频谱、声音方向等),大脑就是一个厉害的机器学习系统,根本不需要真的进行几何计算,它利用当前可能的所有特征和以往的经验,直接判断声源位置。

室内定位技术


位置指纹法

各种各样的定位方法,其实大致原理在人耳听觉定位中基本都提到过了。这里先主要讲一下指纹法的基本原理,与大脑的机器学习有类似之处,也算是现在实用性较强的方法。

室内定位中的WiFi位置指纹法,简单来说,就是事先把各个位置上的信号特征(各Wi-Fi的信号强度)测量一遍,存入指纹数据库。定位的时候,将当前的信号特征与指纹库中的进行匹配,从而确定位置。下图中,AP就是WiFi,RP是离线采集选取的参考点。

752190-20151110165507119-1179086189.jpg

__离线阶段:__记录下每个RP处测到的信号强度,每组数据(指纹)包含4个信号强度和对应的位置。
__在线阶段:__使用当前的扫描到的4个信号强度,与数据库中的指纹进行匹配。最常见的算法为kNN,也可以使用概率方法进行计算,实验定位精度大概3米左右(与WiFi热点个数有关),实际应用的话由于各种因素(人对信号的遮挡、环境的变化、指纹数据库的老化等)会使得精度有所降低。

各种室内定位方法

具体的室内无线定位技术可以这样来分类:

  • 无线设备:WIFI、蓝牙、ZigBee、RFID、UWB、LED、红外线、超声波、麦克风等
  • 定位信息:主要是RSS(接收信号强度)、TOA(到达时间)、TDOA(到达时间差)、DOA/AOA(到达角度)
  • 定位方法:
    • __近邻法:__最简单的方式,直接选定那个信号强度最大的AP的位置。 纠正一个很容易被误导的地方,目前大多数手机中的定位方式为(GPS/AGPS、基站定位、WiFi定位),这里的WiFi定位并不是位置指纹法,而是近邻法,定位结果是热点位置数据库中存储的当前连接的WiFi热点的位置。
    • __三边角测量法:__通过信号的各种参数得到目标与AP的距离或者角度,用几何方法计算出位置。
      包括到达时间法、相对到达时间法、到达角度法、基于信号强度的测距方法,及其混合算法。这些方法一般应用在蜂窝网基站定位中。
    • __模式匹配法:__基本就是上面所说的位置指纹法了,只是这个说法更宽泛一些。

      除了上面这些使用无线信号进行定位的技术外,还有基于地磁的定位和惯性导航技术,可以用来和上面的方法进行混合定位。

    • __地磁信息:__手机里的磁力计可以测得磁场强度,而建筑物导致了各个位置处的磁场有些区别。
    • __惯性导航:__加速度计、磁力计/陀螺仪,用来判断目标的移动方向与移动距离,从而进行位置跟踪。

对于设备,不同场合可以使用不同的设备,他们的覆盖范围、频率、带宽等会对定位有所影响,但原理不会差太多。定位信息里,RSS相当于声级,TDOA相当于双耳时间差,DOA相当于耳廓效应得到的方向信息。那么一个无线结点(天线)就相当于一只耳朵,不过无线系统可以包含很多的结点,定位效果也会更好。

室内与室外的区别

首先是室内收不到GPS信号,不能用GPS,不得不考虑其他高精度定位方法。另外就是室内不像室外那样空旷,信号传播环境很复杂,比如人耳听到的声音由很多的回声叠加,这时定位是不是就复杂多了。

752190-20151110165450525-558312176.jpg

在考虑了室内常见的非视距与多径效应后,定位问题就会变得更加复杂,这时需要研究的东西也就越多了。




(注:本文参考《基于机器人听觉系统的声源目标定位研究》,图片主要来源:《大脑与空间》)


作者:rubbninja
出处:http://www.cnblogs.com/rubbninja/
关于作者:目前主要研究领域为机器学习与无线定位技术,欢迎讨论与指正!
版权声明:本文版权归作者和博客园共有,转载请注明出处。

转载于:https://www.cnblogs.com/rubbninja/p/4953464.html

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用。Quartz可以用来创建简单或为运行十个,百个,甚至是好几万个Jobs这样复杂的程序。Jobs可以做成标准的Java组件或 EJBs。 Quartz的优势: 1、Quartz是一个任务调度框架(库),它几乎可以集成到任何应用系统中。 2、Quartz是非常灵活的,它让您能够以最“自然”的方式来编写您的项目的代码,实现您所期望的行为 3、Quartz是非常轻量级的,只需要非常少的配置 —— 它实际上可以被跳出框架来使用,如果你的需求是一些相对基本的简单的需求的话。 4、Quartz具有容错机制,并且可以在重启服务的时候持久化(”记忆”)你的定时任务,你的任务也不会丢失。 5、可以通过Quartz,封装成自己的分布式任务调度,实现强大的功能,成为自己的产品。6、有很多的互联网公司也都在使用Quartz。比如美团 Spring是一个很优秀的框架,它无缝的集成了Quartz,简单方便的让企业级应用更好的使用Quartz进行任务的调度。   课程说明:在我们的日常开发中,各种大型系统的开发少不了任务调度,简单的单机任务调度已经满足不了我们的系统需求,复杂的任务会让程序猿头疼, 所以急需一套专门的框架帮助我们去管理定时任务,并且可以在多台机器去执行我们的任务,还要可以管理我们的分布式定时任务。本课程从Quartz框架讲起,由浅到深,从使用到结构分析,再到源码分析,深入解析Quartz、Spring+Quartz,并且会讲解相关原理, 让大家充分的理解这个框架和框架的设计思想。由于互联网的复杂性,为了满足我们特定的需求,需要对Spring+Quartz进行二次开发,整个二次开发过程都会进行讲解。Spring被用在了越来越多的项目中, Quartz也被公认为是比较好用的定时器设置工具,学完这个课程后,不仅仅可以熟练掌握分布式定时任务,还可以深入理解大型框架的设计思想。
[入门数据分析的第一堂课]这是一门为数据分析小白量身打造的课程,你从网络或者公众号收集到很多关于数据分析的知识,但是它们零散不成体系,所以第一堂课首要目标是为你介绍:Ø  什么是数据分析-知其然才知其所以然Ø  为什么要学数据分析-有目标才有动力Ø  数据分析的学习路线-有方向走得更快Ø  数据分析的模型-分析之道,快速形成分析思路Ø  应用案例及场景-分析之术,掌握分析方法[哪些同学适合学习这门课程]想要转行做数据分析师的,零基础亦可工作中需要数据分析技能的,例如运营、产品等对数据分析感兴趣,想要更多了解的[你的收获]n  会为你介绍数据分析的基本情况,为你展现数据分析的全貌。让你清楚知道自己该如何在数据分析地图上行走n  会为你介绍数据分析的分析方法和模型。这部分是讲数据分析的道,只有学会底层逻辑,能够在面对问题时有自己的想法,才能够下一步采取行动n  会为你介绍数据分析的数据处理和常用分析方法。这篇是讲数据分析的术,先有道,后而用术来实现你的想法,得出最终的结论。n  会为你介绍数据分析的应用。学到这里,你对数据分析已经有了初步的认识,并通过一些案例为你展现真实的应用。[专享增值服务]1:一对一答疑         关于课程问题可以通过微信直接询问老师,获得老师的一对一答疑2:转行问题解答         在转行的过程中的相关问题都可以询问老师,可获得一对一咨询机会3:打包资料分享         15本数据分析相关的电子书,一次获得终身学习

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值