一种步行定位方法及系统与流程

文档序号:19430900发布日期:2019-12-17 16:42阅读:540来源:国知局
一种步行定位方法及系统与流程

本申请涉及定位及使用定位进行导航的技术,尤其涉及步行定位方法及系统。



背景技术:

随着导航定位功能在智能终端中的普及,对导航定位技术准确性、可靠性和连续性的要求也日益迫切。目前卫星定位导航是最常用方法,但是当处于室内环境时,如商场、医院、消防、办公室或地下停车场等,受建筑物遮挡和复杂环境的干扰,卫星定位信号会产生衰减或丢失,进而造成卫星定位的精度变差甚至无法定位。为了获取连续、精准的定位必须借助其他定位技术。组合导航技术是未来导航技术应用的主要模式。

行人航迹推算(pedestriandeadreckoning,pdr)是便携式室内定位技术的研究焦点,pdr的技术原理是利用加速度计、陀螺仪和磁力计等传感器采集到数据来估算步行者步数、步长、航向等信息,从而由前一时刻行人的位置推算出当前时刻行人的位置和航向,以此估算行人每一时刻的位置。现有的pdr算法大几都是基于约束性的,即将智能终端以某种姿态固定安装在行人身上的某一部位,如脚踝、腰或手臂上。这种固定智能终端姿态的做法在实际生活中不具有普遍适用性。此外pdr的传感器部件存在零偏和漂移,因此pdr容易累积航向误差,无法长时间进行精确定位。



技术实现要素:

本申请的一个方面是通过外部环境参数对定位结果进行校正,能够减少行人航迹推算pdr的累计误差,提高定位精度。

本申请的一个方面通过行人航迹推算pdr获取的各种参数验证所获取的外部环境参数的置信度,避免错误的外部环境参数影响定位效果。

根据本申请的一个方面,一种步行定位方法,其特征在于,所述方法包括:获取行人在第一位置的定位信息;获取所述行人的行走参数;根据所述行人的行走参数和所述行人在第一位置的定位信息定位行人在第二位置的定位信息;获取所述行人在第二位置的外部环境参数;以及通过所述行人在第二位置的外部环境参数校正所述行人在第二位置的定位信息。

在一些实施例中,所述获取行人在第一位置的定位信息包括视觉定位和/或者卫星定位。

在一些实施例中,所述行人在第二位置的外部环境参数为行人在第二位置的行人视角图像。

在一些实施例中,所述方法还包括,根据行人的行走参数判断所述获取的行人在第二位置的外部环境参数的置信度。

在一些实施例中,所述方法还包括,获取行人的目的地,根据行人的定位信息和目的地进行导航。

根据本申请的另一个方面,一种步行定位系统,其特征在于,所述系统包括:第一位置定位模块、行人行走参数获取模块、第二位置定位模块、外部环境参数获取模块和定位校准模块;所述第一位置定位模块用于获取行人在第一位置的定位信息;所述行人行走参数获取模块用于获取所述行人的行走参数;所述第二位置定位模块用于根据所述行人的行走参数和所述行人在第一位置的定位信息定位行人在第二位置的定位信息;所述外部环境参数获取模块用于获取所述行人在第二位置的外部环境参数;以及所述定位校准模块用于通过所述行人在第二位置的外部环境参数校正所述行人在第二位置的定位信息。

在一些实施例中,所述第一位置定位模块包括视觉定位单元和/或者卫星定位单元,所述视觉定位单元用于获取行人在第一位置的视觉定位信息,所述卫星定位单元用于获取行人在第一位置的卫星定位信息。

在一些实施例中,所述外部环境参数模块包括图像获取单元,所述图像获取单元用于获取行人在第二位置的外部环境参数包括行人在第二位置的行人视角图像信息。

在一些实施例中,所述定位校准模块系统包括判断单元,所述判断单元用于根据行人的行走参数判断所述获取的行人在第二位置的外部环境参数的置信度。

在一些实施例中,所述定位系统还包括导航模块,所述导航模块获取行人的目的地,并根据行人的定位信息和目的地进行导航。

根据本申请的另一个方面,一种计算机可读存储介质,其特征在于,所述存储介质存储计算机指令,所述计算机指令运行时执行如上所述的任一步行定位方法。

根据本申请的另一个方面,一种步行定位的装置,其特征在于,包括处理器,所述处理器用于执行如上所述的任一步行定位方法。

本申请的实施例至少具备以下的其中一个或者多个有益效果之一或者组合:1)通过外部环境参数对定位结果进行校正,能够减少行人航迹推算pdr的累计误差,提高定位精度;2)利用行人航迹推算pdr获取的各种参数验证所获取的外部环境参数的置信度,避免错误的外部环境参数影响定位效果;3)利用ar技术,将虚拟的定位导航信息以更清晰直观的方式显示给用户,通过人机互动的方式有效的帮助用户实现定位导航。

附图说明

在此所述的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的限定。在各图中,相同标号表示相同部件。

根据本申请的一些实施例,图1所示的是步行定位的应用场景示意图;

根据本申请的一些实施例,图2所示的是计算机设备的的示例性硬件组件和/或软件组件的示意图;

根据本申请的一些实施例,图3所示的是移动设备的示例性硬件组件和/或软件组件的示意图;

根据本申请的一些实施例,图4所示的是步行定位系统的功能模块框图;

根据本申请的一些实施例,图5所示的是步行定位的流程示意图;

根据本申请的一些实施例,图6所示的是获取行人的行走参数的流程示意图;

根据本申请的一些实施例,图7所示的是获取行人在第二位置准确定位信息的流程示意图;以及

根据本申请的一些实施例,图8所示的是获取导航指示的流程示意图。

具体实施方式

为了更清楚地说明本申请的实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本申请的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本申请应用于其他类似情景。应当理解,给出这些示例性实施例仅仅是为了使相关领域的技术人员能够更好地理解进而实现本申请,而并非以任何方式限制本申请的范围。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。

如本申请和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可以包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其他的步骤或元素。

虽然本申请对根据本申请的实施例的系统中的某些模块做出了各种引用,然而,任何数量的不同模块可以被使用并运行在客户端和/或服务器上。所述模块仅是说明性的,并且所述系统和方法的不同方面可以使用不同模块。

本申请中使用了流程图用来说明根据本申请的实施例的系统所执行的操作。应当理解的是,前面或下面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各种步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。

应当理解的是,本申请的系统及方法的应用场景仅仅是本申请的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本申请应用于其它类似情景。

根据本申请的一些实施例,图1所示的是步行定位的应用场景示意图。所述应用场景可以适用于室内定位。示例性应用场景100可以包括服务器110、网络120、移动终端130、卫星定位系统140和存储器150。

服务器110可以用于对收集的信息进行分析加工以生成分析结果的系统。在一些实施例中,服务器110可以对从移动终端130收集的惯性测量单元的数据、图像数据、气压数据等进行分析,获得行人行走参数数据、视觉定位数据、楼层高度数据等。在一些实施例中,服务器110可以将所述分析结果进行融合,获得行人准确的室内定位结果。在一些实施例中,服务器110可以根据行人准确的室内定位结果和行人的目的地位置,生成室内导航指示。服务器110可以是一个服务器,也可以是一个服务器群组。所述服务器群组可以是集中式的,例如数据中心。所述服务器群组也可以是分布式的,例如一个分布式系统。服务器110可以是本地的,也可以是远程的。

服务器110可以包括引擎112。所述引擎112可以用于执行服务器110的指令(程序代码)。例如,引擎112能够执行步行定位程序的指令,进而获得行人的定位结果。又例如,引擎112能够执行导航程序的指令,进而生成导航指示。所述步行定位程序和导航程序指令可以以计算机指令的形式存储在计算机可读存储介质(例如,存储器150)中。

网络120可以提供信息交换的渠道。在一些实施例中,服务器110、移动终端130、卫星定位系统140和/或存储器150之间可以通过网络120交换信息。例如,服务器110可以通过网络120接收移动终端130发送的定位请求。又例如,服务器110可以通过网络120接收卫星定位系统140的卫星定位信号。再例如,服务器110可以通过网络120从存储器150获取信息(例如,给定的重建室内模型、惯性测量单元的数据、摄像头获取的图像数据等)。

网络120可以是单一网络,也可以是多种网络组合的。网络120可以包括但不限于局域网、广域网、公用网络、专用网络、无线局域网、虚拟网络、都市城域网、公用开关电话网络等中的一种或几种的组合。网络120可以包括多种网络接入点,如有线或无线接入点、基站(如120-1,120-2)或网络交换点,通过以上接入点使数据源连接网络120并通过网络发送信息。

移动终端130是指可以感测行人在空间中的运动、位置和/或航向的设备或装置。例如,移动终端130可以包含但不限于惯性测量单元、摄像头、气压计等。智能终端130可以是智能电话、平板电脑、个人数码助理(pda)、掌上游戏机、个人导航设备(pnd)、可穿戴设备、智能眼镜、智能手表、虚拟显示设备或显示增强设备(如googleglass、oculusrift、hololens、gearvr)等中的一种或多种。移动终端130可以与运送设备的平台相关联。所述平台可以包括但不限于行人、输送行人的车辆船舶等。智能终端130可以是固定在平台上或不固定在平台上。

卫星定位系统140可以获取卫星定位信号。卫星定位系统140可以包括但不限于全球卫星导航系统(gnss),全球定位系统(gps)、伽利略卫星导航系统(galileo)、格洛纳斯导航卫星系统(glonass)或北斗卫星导航系统(compass)等其中的一种或几种的组合。

存储器150可以泛指具有存储功能的设备。存储器150主要用于存储从移动终端130和/或卫星定位系统140收集的数据和服务器110工作中产生的各种数据。例如,存储器150可以存储给定的重建室内模型、惯性测量单元的数据、摄像头获取的图像数据等。存储器150可以是本地的,也可以是远程的。系统数据库与系统其他模块间的连接或通信可以是有线的,也可以是无线的。在一些实施例中,服务器110可以直接访问存取储存在存储器150的数据信息,也可以直接通过网络120访问存取移动终端130和/或卫星定位系统140的信息。

应该注意的是,关于应用场景100的描述出于说明性目的,并不用于限制本申请的保护范围。对于本领域的技术人员来说,可以在本申请的指示下做出多个变体和修改。然而,这些变体和修改不会脱离本申请的保护范围。例如,存储器150和服务器110可以是本地连接,而不是通过网络120进行连接。

根据本申请的一些实施例,图2所示的是计算机设备的的示例性硬件组件和/或软件组件的示意图。如图2所示,计算设备200可以包括处理器210、存储器220、输入/输出接口230和通信通信端口240。

处理器210可以执行计算指令(程序代码)并执行本申请描述的服务器110的功能。所述计算指令可以包括程序、对象、组件、数据结构、过程、模块和功能(所述功能指本申请中描述的特定功能)。例如,处理器210可以处理应用场景100中室内步行定位指令,进而行人准确的室内定位结果。又例如,处理器210可以基于所述目的地位置,获得导航指示。在一些实施例中,处理器210可以包括微控制器、微处理器、精简指令集计算机(risc)、专用集成电路(asic)、应用特定指令集处理器(asip)、中央处理器(cpu)、图形处理单元(gpu)、物理处理单元(ppu)、微控制器单元、数字信号处理器(dsp)、现场可编程门阵列(fpga)、高级risc机(arm)、可编程逻辑器件以及能够执行一个或多个功能的任何电路和处理器等,或其任意组合。仅为了说明,图2中的计算设备200只描述了一个处理器,但需要注意的是本申请中的计算设备200还可以包括多个处理器。

存储器220可以存储从应用场景100中任何主体获得的数据/信息。在一些实施例中,存储器220可以包括大容量存储器、可移动存储器、易失性读取和写入存储器和只读存储器(rom)等,或其任意组合。示例性大容量存储器可以包括磁盘、光盘和固态驱动器等。可移动存储器可以包括闪存驱动器、软盘、光盘、存储卡、压缩盘和磁带等。易失性读取和写入存储器可以包括随机存取存储器(ram)。ram可以包括动态ram(dram)、双倍速率同步动态ram(ddrsdram)、静态ram(sram)、晶闸管ram(t-ram)和零电容(z-ram)等。rom可以包括掩模rom(mrom)、可编程rom(prom)、可擦除可编程rom(perom)、电可擦除可编程rom(eeprom)、光盘rom(cd-rom)和数字通用盘rom等。

输入/输出接口230可以用于输入或输出信号、数据或信息。在一些实施例中,输入/输出接口230可以使用户(例如,消费方130)与服务器110进行联系。在一些实施例中,输入/输出接口230可以包括输入装置和输出装置。示例性输入装置可以包括键盘、鼠标、触摸屏和麦克风等,或其任意组合。示例性输出设备可以包括显示设备、扬声器、打印机、投影仪等,或其任意组合。示例性显示装置可以包括液晶显示器(lcd)、基于发光二极管(led)的显示器、平板显示器、曲面显示器、电视设备、阴极射线管(crt)等,或其任意组合。

通信端口240可以连接到网络以便数据通信。所述连接可以是有线连接、无线连接或两者的组合。有线连接可以包括电缆、光缆或电话线等,或其任意组合。无线连接可以包括蓝牙、wifi、wimax、wlan、zigbee、移动网络(例如,3g、4g或5g等)等,或其任意组合。在一些实施例中,通信端口240可以是标准化端口,如rs232、rs485等。在一些实施例中,通信端口240可以是专门设计的端口。

根据本申请的一些实施例,图3所示的是移动设备的示例性硬件组件和/或软件组件的示意图。如图3所示,所述移动设备300可以包括通信平台310、显示器320、图形处理器(gpu)330、中央处理器(cpu)340、输入/输出接口350、内存360、存储器370等。在一些实施例中,操作系统361(如,ios,android,windowsphone等)和应用程序362可以从存储器370加载到内存360中,以便由cpu340执行。应用程序362可以包括浏览器或用于定位服务的应用程序。

为了实现在本申请中描述的各种模块、单元及其功能,计算设备或移动设备可以用作本申请所描述的一个或多个组件的硬件平台。这些计算机或移动设备的硬件元件、操作系统和编程语言本质上是常规的,并且本领域技术人员熟悉这些技术后可将这些技术适应于本申请所描述的地区聚类系统。具有用户界面元件的计算机可以用于实现个人计算机(pc)或其他类型的工作站或终端设备,如果适当地编程,计算机也可以充当服务器。

根据本申请的一些实施例,图4所示的是步行定位系统的功能模块框图。步行定位系统400可以包括第一位置定位模块410、行人行走参数获取模块420、第二位置定位模块430、外部环境参数获取模块440和定位校准模块450。

第一位置定位模块410可以获取行人在第一位置的定位信息。在一些实施例中,第一位置定位模块410可以包括视觉定位单元和/或卫星定位单元。视觉定位单元可以基于移动终端130的获取行人在第一位置的行人视角图像信息(包括视觉图像)和存储器150中给定的重建室内模型,通过图像匹配算法,例如,尺度不变特征转换算法(scale-inariantfeaturetransform,sift),加速鲁棒性特征算法(speededuprobustfeature,surf),harris角点检测算法,最小核值相似区算法(smallunivaluesegmentassimilatingnucleus,susan)等,获得行人在第一位置的定位信息。卫星定位单元可以基于卫星定位系统140直接获得行人在第一位置的定位信息。

行人行走参数获取模块420可以获取行人的行走参数。在一些实施例中,可以利用pdr估算行人的行走参数包括:步数、步长、航向角。作为示例,图6是根据本申请的一些实施例示出的获取行人的行走参数的流程示意图。

在610中,当人行走时,固定或不固定放置在行人身上的移动终端130可以基于惯性测量单元(inertialmeasurementunit,imu),包括:加速度计、陀螺仪、磁力计等,获取imu数据,所述imu数据包括:加速度数据、角速度数据、磁场强度数据等。

在620中,移动终端130在使用过程中,其姿态(包含航偏角、横滚角、俯仰角)可能会发生抖动、翻转等变化,因此从imu获取的数据可能会不稳定。在一些实施例中,可以通过滤波处理消除imu数据包含的噪声。在一些实施例中,还可以通过坐标系变换,将移动终端130的自身载体坐标系变换到稳定的大地坐标系,从大地坐标系下的获取的imu数据可以不受移动终端130姿态变化的影响。例如,在解算移动终端130的姿态角(包含航偏角、横滚角、俯仰角)后,通过构建旋转矩阵,可以获得在大地坐标系下移动终端130的imu数据,此imu数据可以不受移动终端130姿态变化的影响。

在630中,可以利用所述imu数据,获得行人行走参数,包含:步数、步长、航向角。在一些实施例中,脚在竖直方向可以瞬时产生一个较大的加速度而形成一个加速度峰值,由此可以基于峰值检测法来检测步数。例如可以基于加速度检测轴,每当在加速度检测轴上检测到一个大于预设加速度阈值的峰值,则代表检测到一步。在一些实施例中,行人运动模式不同获得的加速度信号波形图有差异,如步行、跑步、乘坐电梯、上/下楼梯、驾驶或行走于/站于自动扶梯等,因此可以将预设加速度阈值配置为与行人运动模式相关,以此检测出不同运动模式下行人的步数。在一些实施例中,行人的步长与行走的步数、身髙、腿长、体重和性别等因素有关,一个成年人通常在0.8~1.2m之间。可以利用经验算法估算步长,包括反摆模型、双摆模型、weinberg经验算法和/或最优参数算法等。例如,以weinberg经验算法为例,可以利用加速度计信号估算步长,该算法如式(1)所示:

其中,amax表示在每一步中,加速度在垂直方向上的最大值;amin表示在每一步中,加速度在垂直方向上的最小值;k是校准常量。在一些实施例中,当行人获取的gps有效时(如,在未进入建筑物内时),可以利用gps测量出的行人经过的距离与所述步数得到行人的平均步长,可以利用平均步长校准估算步长。在一些实施例中,根据行人运动模式不同,如步行、跑步、乘坐电梯、上/下楼梯、驾驶或行走于/站于自动扶梯等,可以获取不同运动模式下的平均步长。例如若估算步长是步行状态下,则采用步行状态下的平均步长进行校准。在一些实施例中,可以利用加速度计、陀螺仪和/或磁力计等解算航向角。例如,在短时间内可直接利用imu数据中的角速度进行积分得到航向角。又例如,可以利用磁力计和加速度制作电子罗盘测量出移动终端130与北方的夹角,由于电子罗盘易受周围环境磁场的干扰,估算的夹角若没有发生漂移则可以直接将所述夹角视为航向角;若电子罗盘测量得到的夹角发生漂移,则表明周围环境存在有干扰磁场,可以在上一次无磁场干扰的航向角的基础上直接利用imu数据中的角速度进行积分得到航向角。

在一些实施例中,移动终端130还可以包括气压计,温度计。由于大气压和海拔高度存在对应关系,因此可以构建一个大气压高度查询表。当行人乘坐电梯或者登楼梯时,随着楼层增加大气压值逐渐降低,利用气压计的测量值和大气压高度查询表可以分辨行人当前所在楼层,如负一层、五楼、或12楼等。在一些实施例中,气压计的测量值会受温度影响,可以使用温度计进行温度测量,再利用温度和大气压强值计算高度。

第二位置定位模块430可以根据所述行人的行走参数和所述行人在第一位置的定位信息定位行人在第二位置的定位信息。

在一些实施例中,可以利用所述行人的行走参数和所述行人在第一位置的定位信息利用公式推算行人在第二位置的定位,如式(2)和式(3)所示,行人在第一位置的定位可以用(xt,yt)来表示,行人在第二位置的定位可以用(xt+1,yt+1)来表示:

xt+1=xt+lt×sinθt(2)

yt+1=yt+lt×sinθt(3)

其中lt为t时刻推算的步长,θt为t时刻的航向角。

外部环境参数获取模块440可以获取所述行人在第二位置的外部环境参数。在一些实施例中,所述外部环境参数获取模块440可以包括图像获取单元,所述图像获取单元基于移动终端130的摄像头获取行人在第二位置的外部环境参数包括行人在第二位置的行人视角图像信息。在一些实施例中,所述外部环境参数获取模块440还可以进一步包括wifi信号获取单元、语音获取单元、测距单元等;所述wifi信号获取单元、语音获取单元、测距单元等可以获取行人在第二位置的外部环境参数,包括:某个商家的wifi信号强度,某个商家的广告词音量,行人在第二位置到某个商家的距离等。在一些实施例中,可以进一步利用上述外部环境参数获取第二位置的相对位置估算,例如可以基于所述wifi信号的衰减程度和所述商家在地图中的位置信息,可以估算出第二位置的相对位置;也可以利用声音定位方法,基于所述广告词音量和所述商家在地图中的位置信息,也可以估算出第二位置的相对位置;还可以利用测距单元,如移动终端130的红外装置、超声波装置、激光装置等和所述商家在地图中的位置信息,获得第二位置到某个商家的相对距离,然后利用所述相对距离和所述商家位置信息估算出第二位置的相对位置。在一些实施例中,所述外部环境参数获取模块440还可以将获取的上述外部环境参数和第二位置的相对位置估算发送给定位校准模块450做进一步处理。

定位校准模块450可以获取通过所述行人在第二位置的外部环境参数校正所述行人在第二位置的定位信息。作为示例,图7是根据本申请的一些实施例示出的获取行人在第二位置准确定位信息的流程示意图。

在710中,可以利用移动终端130的摄像头获取行人在第二位置的外部环境参数(行人在第二位置的行人视角图像信息),通过视觉定位方法(如,视觉定位单元所述),获取行人在第二位置的视觉定位结果。例如,行人可以在第二位置利用手机的摄像头拍摄一段包含标志性商家(或地点)的招牌或广告牌的连续图像,所述连续图像可以发送至定位校准模块450中,定位校准模块450可以通过网络120获取存储器150中存储的给定的重建室内模型,利用上述连续图像和给定的重建室内模型通过图像匹配算法(如sift,surf,harris,susan等),可以获得行人在第二位置的视觉定位结果。在一些实施例中,如外部环境参数获取模块440所述,还可以利用行人在第二位置的外部环境参数,包括:某个商家的wifi信号强度、某个商家的广告词音量、行人在第二位置到某个商家的距离等,估算出第二位置的相对位置。

在720中,通过设定第一位置到第二位置的距离阈值,在行人在第二位置的视觉定位结果和所述利用行人的行走参数推算的行人在第二位置的定位结果中选择更靠近距离阈值的定位结果。在一些实施例中,距离阈值的设定可以与步长相关,成人平均步长在0.8~1.2m,距离阈值可以设置为1个步长,如0.6m~1.5m。例如,可先计算出第一位置到第二位置的视觉定位结果在二维空间中的第一水平距离(如,2.2m),以及计算出第一位置到pdr推算的第二位置在二维空间中的第二水平距离(如,1.6m)。当距离阈值设置为0.6m~1.5m时,第一水平距离(如,2.2m)大大超过了距离阈值,而行人不能在一步内跨越第一水平距离(如,2.2m),第二水平距离(如,1.6m)更靠近距离阈值,表明行人更有可能在一步内跨越第二水平距离(如,1.6m)。

在730中,在行人的第二位置的视觉定位结果和所述利用行人的行走参数推算的行人在第二位置的定位结果中选择其中一个作为行人在第二位置的准确定位结果。如720所述,选择更靠近距离阈值的利用行人的行走参数推算的行人在第二位置的定位结果作为第二位置的准确定位结果。

在一些实施例中,定位校准模块系统可以包括判断单元,所述判断单元用于根据行人的行走参数判断所述获取的行人在第二位置的外部环境参数的置信度。例如,当利用外部环境参数(如,行人在第二位置的行人视角图像信息)进行校正定位结果时,首先利用外部环境参数(如,行人在第二位置的行人视角图像信息)获得第二位置的视觉定位结果,并计算出第一位置到第二位置视觉定位结果在二维空间中内的水平距离。基于距离阈值的设定与步长相关,若所述水平距离大大超过了距离阈值,行人不能在一步内跨越所述水平距离,代表行人在第二位置的外部环境参数(如,行人在第二位置的行人视角图像信息)的置信度较低;若所述水平距离在距离阈值内或非常靠近距离阈值,行人非常有可能在一步内跨越所述水平距离,则代表行人在第二位置的外部环境参数(如,行人在第二位置的行人视角图像信息)的置信度较高,当置信度较高时可以利用外部环境参数(如,行人在第二位置的行人视角图像信息)校正定位结果,例如当第二位置的外部环境参数(如,行人在第二位置的行人视角图像信息)的置信度较高时选择利用第二位置的外部环境参数(如,行人在第二位置的行人视角图像信息)获取的定位结果(如,视觉定位结果)作为第二位置的准确定位结果。又例如,当利用外部环境参数(如,某个商家的wifi信号强度,某个商家的广告词音量,行人在第二位置到某个商家的距离等)进行校正定位结果时,如外部环境参数获取模块440所述,可以首先利用所述外部环境参数估算出第二位置的相对位置,然后计算出第一位置到第二位置的相对位置在二维空间中内的水平距离。如上所述基于距离阈值的设定与步长相关,若所述水平距离大大超过了距离阈值,行人不能在一步内跨越所述水平距离,代表行人在第二位置的外部环境参数(如,某个商家的wifi信号强度,某个商家的广告词音量,行人在第二位置到某个商家的距离等)的置信度较低;若所述水平距离在距离阈值内或非常靠近距离阈值,行人非常有可能在一步内跨越所述水平距离,则代表行人在第二位置的外部环境参数(如,某个商家的wifi信号强度,某个商家的广告词音量,行人在第二位置到某个商家的距离等)的置信度较高,当置信度较高时可以利用外部环境参数(如,某个商家的wifi信号强度,某个商家的广告词音量,行人在第二位置到某个商家的距离等)校正定位结果,如当第二位置的外部环境参数(如,某个商家的wifi信号强度,某个商家的广告词音量,行人在第二位置到某个商家的距离等)的置信度较高时选择利用第二位置的外部环境参数(如,某个商家的wifi信号强度,某个商家的广告词音量,行人在第二位置到某个商家的距离等)获取的定位结果(如,估算出第二位置的相对位置)作为第二位置的准确定位结果。又例如,当利用外部环境参数(如,行人在第二位置的行人视角图像信息、某个商家的wifi信号强度,某个商家的广告词音量,行人在第二位置到某个商家的距离等)进行校正定位结果时,若获得的第二位置的视觉定位结果和估算的第二位置的相对位置一致时,则代表行人在第二位置的外部环境参数(如,行人在第二位置的行人视角图像信息、某个商家的wifi信号强度,某个商家的广告词音量,行人在第二位置到某个商家的距离等)的置信度较高,当置信度较高时可以利用外部环境参数(如,行人在第二位置的行人视角图像信息、某个商家的wifi信号强度,某个商家的广告词音量,行人在第二位置到某个商家的距离等)校正定位结果,如当第二位置的外部环境参数(如,行人在第二位置的行人视角图像信息、某个商家的wifi信号强度,某个商家的广告词音量,行人在第二位置到某个商家的距离等)的置信度较高时选择利用第二位置的外部环境参数(如,行人在第二位置的行人视角图像信息、某个商家的wifi信号强度,某个商家的广告词音量,行人在第二位置到某个商家的距离等)获取的定位结果(如,视觉定位结果或估算出第二位置的相对位置)作为第二位置的准确定位结果;若获得的第二位置的视觉定位结果和估算的第二位置的相对位置不一致,则代表行人在第二位置的外部环境参数(如,行人在第二位置的行人视角图像信息、某个商家的wifi信号强度,某个商家的广告词音量,行人在第二位置到某个商家的距离等)的置信度较低。再例如,可以利用所述基于行人的行走参数推算的行人在第二位置的定位结果,在所述给定的重建室内模型中寻找附近的标志性商店的位置,若行人在第二位置获得的外部环境参数(如,行人在第二位置的行人视角图像信息)中包含上述标志性商店,则行人在第二位置的外部环境参数的置信度较高,否则行人在第二位置的外部环境参数的置信度较低。在一些实施例中,可以为所述置信度设置阈值,当外部环境参数的置信度高于阈值则采用外部环境参数的进行校正定位结果,当如上所述,可以利用外部环境参数(如,行人在第二位置的行人视角图像信息、某个商家的wifi信号强度,某个商家的广告词音量,行人在第二位置到某个商家的距离等)获取的定位结果(如,视觉定位结果或估算出第二位置的相对位置)作为第二位置的准确定位结果;否则不采用外部环境参数的进行校正定位结果。在一些实施例中,采用外部环境参数的进行校正定位结果后,还可以给移动终端130发送提示信息,如:发出语音提示“已校正定位结果”或在移动终端130的界面中为校正后的定位结果进行特殊标记等。

在一些实施例中,步行定位系统400还可以包括导航模块。所述行人输入目的地位置后,导航模块可以根据行人的定位信息和目的地进行导航。在一些实施例中,可以利用ar将导航模块生成的导航路径叠加在行人当前视觉图像上,还可以在视角图像上绘制指引方向的箭头(如左转、右转、直行、调头等),并将此导航指示向用户显示,使得用户在使用导航功能时更便捷。

应该注意的是,关于步行定位系统400的描述出于说明性目的,并不用于限制本申请的保护范围。对于本领域的技术人员来说,可以在本申请的指示下做出多个变体和修改。然而,这些变体和修改不会脱离本申请的保护范围。例如,步行定位系统400可以进一步包括导航模块。

根据本申请的一些实施例,图5所示的是步行定位流程示意图。所述步行定位流程可以由步行定位系统400执行。流程500可以包括:

步骤510,第一位置定位模块410可以获取行人在第一位置的定位信息。所述获取行人在第一位置的定位信息包括视觉定位和/或者卫星定位。在一些实施例中,可以利用第一位置定位模块410(包括视觉定位单元和/或卫星定位单元),获取行人在第一位置的定位信息。例如,可以利用视觉定位单元获取行人在第一位置的视角图像信息和存储器150中给定的重建室内模型,通过图像匹配算法,获取行人在第一位置的定位信息。或者,可以通过卫星定位单元直接获得行人在第一位置的定位信息。

步骤520,利用行人行走参数获取模块420获取所述行人的行走参数。所述行人的行走参数包括:步数、步长、航向。在一些实施例中,可以利用pdr估算出所述行人的行走参数(包括:步数、步长、航向)。更多关于步骤520的描述可以参见行人行走参数获取模块420和图6的相关说明。

步骤530,通过第二位置定位模块430根据所述行人的行走参数和所述行人在第一位置的定位信息定位行人在第二位置的定位信息。例如,利用所述行人的行走参数(包括:步数、步长、航向)和所述行人在第一位置的定位位置通过式(2)和式(3),获得行人在第二位置的定位位置。

步骤540,通过外部环境参数模块440可以获取所述行人在第二位置的外部环境参数。所述行人在第二位置的外部环境参数为行人在第二位置的行人视角图像。例如,行人在第二位置可以利用包含外部环境参数模块440的移动终端130的摄像头获取行人在第二位置的视角图像。

步骤550,通过定位校准模块450可以利用所述行人在第二位置的外部环境参数校正所述行人在第二位置的定位信息。在一些实施例中,根据行人的行走参数判断所述获取的行人在第二位置的外部环境参数的置信度。更多关于步骤550的描述可以参见定位校准模块450和图7的相关说明。

在一些实施例中,流程500可以进一步包括导航步骤。获取行人的目的地信息。例如,行人可以向移动终端130中输入目的地位置。基于所述行人在第二位置的准确定位信息和所述行人的目的地信息,进行路径规划,确定导航路径。在一些实施例中,可以利用ar将所述导航路径叠加在行人在第二位置的行人视角图像上,还可以在行人在第二位置的行人视角图像上绘制指引方向的箭头(如左转、右转、直行、调头等),并将导航指示向用户显示。更多关于的描述可以参见图8的相关说明。

应该注意的是,关于流程500的描述出于说明性目的,并不用于限制本申请的保护范围。对于本领域的技术人员来说,可以在本申请的指示下做出多个变体和修改。然而,这些变体和修改不会脱离本申请的保护范围。例如,流程500可以进一步包括导航步骤。

根据本申请的一些实施例,图6所示的是获取行人的行走参数的流程示意图。流程600可以利用行人行走参数获取模块420执行,包括:

步骤610,获取imu数据。当人行走时,固定或不固定放置在行人身上的移动终端130可以基于imu,包括:加速度计、陀螺仪、磁力计等,获取imu数据,所述imu数据包括:加速度数据、角速度数据、磁场强度数据等。

步骤620,预处理获取的imu数据。移动终端130在使用过程中,其姿态(包含航偏角、横滚角、俯仰角)可能会发生抖动、翻转等变化,因此从imu获取的数据可能会不稳定。在一些实施例中,可以通过滤波处理消除imu数据包含的噪声。在一些实施例中,还可以通过坐标系变换,将移动终端130的自身载体坐标系变换到稳定的大地坐标系,从大地坐标系下的获取的imu数据可以不受移动终端130姿态变化的影响。例如,在解算移动终端130的姿态角(包含航偏角、横滚角、俯仰角)后,通过构建旋转矩阵,获得在大地坐标系下移动终端130的imu数据。

步骤630,获得行人行走参数。可以利用所述imu数据,获得行人行走参数,包含:步数、步长、航向角。

在一些实施例中,脚在竖直方向可以瞬时产生一个较大的加速度而形成一个加速度峰值,由此可以基于峰值检测法来检测步数。例如可以基于加速度检测轴,每当在加速度检测轴上检测到一个大于预设加速度阈值的峰值,则代表检测到一步。在一些实施例中,行人运动模式不同获得的加速度信号波形图有差异,如步行、跑步、乘坐电梯、上/下楼梯、驾驶或行走于/站于自动扶梯等,因此可以将预设加速度阈值配置为与行人运动模式相关,以此检测出不同运动模式下行人的步数。

在一些实施例中,行人的步长与行走的步数、身髙、腿长、体重和性别等因素有关,一个成年人通常在0.8~1.2m之间。可以利用经验算法估算步长,包括:反摆模型、双摆模型、weinberg经验算法和/或最优参数算法等。例如,以weinberg经验算法为例,可以利用加速度计信号估算步长,该算法如式(1)所示,其中,amax表示在每一步中,加速度在垂直方向上的最大值;amin表示在每一步中,加速度在垂直方向上的最小值;k是校准常量。在一些实施例中,当行人获取的gps有效时(如,在未进入建筑物内时),可以利用gps测量出的行人经过的距离与估算出的步数得到行人的平均步长,可以利用平均步长校准估算步长。在一些实施例中,根据行人运动模式不同,如步行、跑步、乘坐电梯、上/下楼梯、驾驶或行走于/站于自动扶梯等,可以获取不同运动模式下的平均步长。例如估算步长是步行状态下,则采用步行状态下的平均步长进行校准。

在一些实施例中,可以利用加速度计、陀螺仪和/或磁力计等解算航向角。例如,在短时间内可直接利用imu数据中的角速度进行积分得到航向角。又例如,可以利用磁力计和加速度制作电子罗盘测量出移动终端130与北方的夹角,但是电子罗盘易受周围环境磁场的干扰,估算的夹角若没有发生漂移则可以直接将所述夹角视为航向角;若电子罗盘测量得到的夹角发生漂移,则表明周围环境存在有干扰磁场,可以在上一次无磁场干扰的航向角的基础上直接利用imu数据中的角速度进行积分得到航向角。

应该注意的是,关于流程600的描述出于说明性目的,并不用于限制本申请的保护范围。对于本领域的技术人员来说,可以在本申请的指示下做出多个变体和修改。然而,这些变体和修改不会脱离本申请的保护范围。例如,流程600可以删除步骤620。

根据本申请的一些实施例,图7所示的是获取行人在第二位置准确定位信息的流程示意图。流程700可以利用定位校准模块450执行,包括:

步骤710,基于行人在第二位置的外部环境参数,利用图像匹配,获取行人在第二位置的视觉定位信息。例如,利用移动终端130的摄像头获取行人在第二位置的外部环境参数(行人在第二位置的视角图像),通过与给定的重建室内模型进行图像匹配,可以获取行人在第二位置的视觉定位结果。例如,行人可以在第二位置利用手机的摄像头拍摄一段包含标志性商家(或地点)的招牌或广告牌的连续图像,所述连续图像可以发送至定位校准模块450中,定位校准模块450可以通过网络120获取存储器150中存储的给定的重建室内模型,利用上述连续图像和给定的重建室内模型通过图像匹配算法(如sift,surf,harris,susan等),可以获得行人在第二位置的视觉定位结果。在一些实施例中,如外部环境参数获取模块440所述,还可以利用行人在第二位置的外部环境参数,包括:某个商家的wifi信号强度、某个商家的广告词音量、行人在第二位置到某个商家的距离等,估算出第二位置的相对位置。

步骤720,利用所述视觉定位信息校正所述行人在第二位置的定位信息。例如,通过设定第一位置到第二位置的距离阈值,在行人在第二位置的视觉定位结果和所述利用行人的行走参数推算的行人在第二位置的定位结果中选择更靠近距离阈值的定位结果。在一些实施例中,距离阈值的设定可以与步长相关,成人平均步长在0.8~1.2m,距离阈值可以设置为1个步长,如0.6m~1.5m。例如,可以先计算出第一位置到视觉定位的第二位置在二维空间中的第一水平距离(如,2.2m),以及计算出第一位置到pdr推算的第二位置在二维空间中的第二水平距离(如,1.6m)。当距离阈值设置为0.6m~1.5m时,第一水平距离(如,2.2m)大大超过了距离阈值,而行人不能在一步内跨越第一水平距离(如,2.2m),第二水平距离(如,1.6m)更靠近距离阈值,表明行人更有可能在一步内跨越第二水平距离(如,1.6m)。

在730中,获取行人在第二位置的准确定位信息。如720所述,在行人在第二位置的视觉定位结果和所述利用行人的行走参数推算的行人在第二位置的定位结果中选择更靠近距离阈值的利用行人的行走参数推算的行人在第二位置的定位结果作为第二位置的准确定位结果。

在一些实施例中,还可以根据行人的行走参数判断所述获取的行人在第二位置的外部环境参数的置信度。例如,当利用外部环境参数(如,行人在第二位置的行人视角图像信息)进行校正定位结果时,首先利用外部环境参数(如,行人在第二位置的行人视角图像信息)获得第二位置的视觉定位结果,并计算出第一位置到第二位置视觉定位结果在二维空间中内的水平距离。基于距离阈值的设定与步长相关,若所述水平距离大大超过了距离阈值,行人不能在一步内跨越所述水平距离,代表行人在第二位置的外部环境参数(如,行人在第二位置的行人视角图像信息)的置信度较低;若所述水平距离在距离阈值内或非常靠近距离阈值,行人非常有可能在一步内跨越所述水平距离,则代表行人在第二位置的外部环境参数(如,行人在第二位置的行人视角图像信息)的置信度较高,当置信度较高时可以利用外部环境参数(如,行人在第二位置的行人视角图像信息)校正定位结果,例如当第二位置的外部环境参数(如,行人在第二位置的行人视角图像信息)的置信度较高时选择利用第二位置的外部环境参数(如,行人在第二位置的行人视角图像信息)获取的定位结果(如,视觉定位结果)作为第二位置的准确定位结果。又例如,当利用外部环境参数(如,某个商家的wifi信号强度,某个商家的广告词音量,行人在第二位置到某个商家的距离等)进行校正定位结果时,如外部环境参数获取模块440所述,可以首先利用所述外部环境参数估算出第二位置的相对位置,然后计算出第一位置到第二位置的相对位置在二维空间中内的水平距离。如上所述基于距离阈值的设定与步长相关,若所述水平距离大大超过了距离阈值,行人不能在一步内跨越所述水平距离,代表行人在第二位置的外部环境参数(如,某个商家的wifi信号强度,某个商家的广告词音量,行人在第二位置到某个商家的距离等)的置信度较低;若所述水平距离在距离阈值内或非常靠近距离阈值,行人非常有可能在一步内跨越所述水平距离,则代表行人在第二位置的外部环境参数(如,某个商家的wifi信号强度,某个商家的广告词音量,行人在第二位置到某个商家的距离等)的置信度较高,当置信度较高时可以利用外部环境参数(如,某个商家的wifi信号强度,某个商家的广告词音量,行人在第二位置到某个商家的距离等)校正定位结果,如当第二位置的外部环境参数(如,某个商家的wifi信号强度,某个商家的广告词音量,行人在第二位置到某个商家的距离等)的置信度较高时选择利用第二位置的外部环境参数(如,某个商家的wifi信号强度,某个商家的广告词音量,行人在第二位置到某个商家的距离等)获取的定位结果(如,估算出第二位置的相对位置)作为第二位置的准确定位结果。又例如,当利用外部环境参数(如,行人在第二位置的行人视角图像信息、某个商家的wifi信号强度,某个商家的广告词音量,行人在第二位置到某个商家的距离等)进行校正定位结果时,若获得的第二位置的视觉定位结果和估算的第二位置的相对位置一致,则代表行人在第二位置的外部环境参数(如,行人在第二位置的行人视角图像信息、某个商家的wifi信号强度,某个商家的广告词音量,行人在第二位置到某个商家的距离等)的置信度较高,若获得的第二位置的视觉定位结果和估算的第二位置的相对位置不一致,则代表行人在第二位置的外部环境参数(如,行人在第二位置的行人视角图像信息、某个商家的wifi信号强度,某个商家的广告词音量,行人在第二位置到某个商家的距离等)的置信度较低。再例如,可以利用所述基于行人的行走参数推算的行人在第二位置的定位结果,在所述给定的重建室内模型中寻找附近的标志性商店的位置,若行人在第二位置的外部环境参数(如行人在第二位置的行人视角图像信息)包含上述标志性商店,则行人在第二位置的外部环境参数的置信度较高,当置信度较高时可以利用外部环境参数(如,行人在第二位置的行人视角图像信息、某个商家的wifi信号强度,某个商家的广告词音量,行人在第二位置到某个商家的距离等)校正定位结果,如当第二位置的外部环境参数(如,行人在第二位置的行人视角图像信息、某个商家的wifi信号强度,某个商家的广告词音量,行人在第二位置到某个商家的距离等)的置信度较高时选择利用第二位置的外部环境参数(如,行人在第二位置的行人视角图像信息、某个商家的wifi信号强度,某个商家的广告词音量,行人在第二位置到某个商家的距离等)获取的定位结果(如,视觉定位结果或估算出第二位置的相对位置)作为第二位置的准确定位结果;否则行人在第二位置的外部环境参数的置信度较低。在一些实施例中,可以为所述置信度设置阈值,当外部环境参数的置信度高于阈值则采用外部环境参数的进行校正定位结果,当如上所述,可以利用外部环境参数(如,行人在第二位置的行人视角图像信息、某个商家的wifi信号强度,某个商家的广告词音量,行人在第二位置到某个商家的距离等)获取的定位结果(如,视觉定位结果或估算出第二位置的相对位置)作为第二位置的准确定位结果;否则不采用外部环境参数的进行校正定位结果。在一些实施例中,采用外部环境参数的进行校正定位结果后,还可以给移动终端130发送提示信息,如:发出语音提示“已校正定位结果”或在移动终端130的界面中为校正后的定位结果进行特殊标记等。

应该注意的是,关于流程700的描述出于说明性目的,并不用于限制本申请的保护范围。对于本领域的技术人员来说,可以在本申请的指示下做出多个变体和修改。然而,这些变体和修改不会脱离本申请的保护范围。

根据本申请的一些实施例,图8所示的是获取导航指示的流程示意图,流程800可以利用步行定位系统400执行,包括:

步骤810:获取行人的目的地信息。例如,行人可以向移动终端130中输入目的地位置。

步骤820:基于所述行人在第二位置的准确定位信息和所述行人的目的地信息,进行路径规划。例如,基于目的地位置和行人在第二位置的准确定位位置,通过路径规划(如,启发式图搜索算法、a*搜索算法、动态规划法、广义vonoroi图算法、d*算法、人工势场法、遗传算法等)确定导航路径。

步骤830:获取从行人在第二位置到行人的目的地的导航指示。在一些实施例中,可以利用ar将所述导航路径叠加在行人在第二位置的行人视角图像上,还可以在行人在第二位置的行人视角图像上绘制指引方向的箭头(如左转、右转、直行、调头等),并将导航指示向用户显示。

应该注意的是,关于流程800的描述出于说明性目的,并不用于限制本申请的保护范围。对于本领域的技术人员来说,可以在本申请的指示下做出多个变体和修改。然而,这些变体和修改不会脱离本申请的保护范围。

本领域技术人员能够理解,本申请所披露的内容可以出现几种变型和改进。例如,以上所描述的不同系统组件都是通过硬件设备所实现的,但是也可能只通过软件的解决方案得以实现。此外,这里所披露的血管中心线的提取可能是通过一个固件、固件/软件的组合、固件/硬件的组合或硬件/固件/软件的组合得以实现。

以上内容描述了本申请和/或一些其他的示例。根据上述内容,本申请还可以作出不同的变形。本申请披露的主题能够以不同的形式和例子所实现,并且本申请可以被应用于大量的应用程序中。后文权利要求中所要求保护的所有应用、修饰以及改变都属于本申请的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1