CN108413970B - 一种定位方法、云系统、电子设备及计算机程序产品 - Google Patents

一种定位方法、云系统、电子设备及计算机程序产品 Download PDF

Info

Publication number
CN108413970B
CN108413970B CN201711425231.7A CN201711425231A CN108413970B CN 108413970 B CN108413970 B CN 108413970B CN 201711425231 A CN201711425231 A CN 201711425231A CN 108413970 B CN108413970 B CN 108413970B
Authority
CN
China
Prior art keywords
positioning
direction angle
measurement data
visual information
value
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.)
Active
Application number
CN201711425231.7A
Other languages
English (en)
Other versions
CN108413970A (zh
Inventor
王超鹏
廉士国
林义闽
易万鑫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cloudminds Beijing Technologies Co Ltd
Original Assignee
Cloudminds Beijing Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Cloudminds Beijing Technologies Co Ltd filed Critical Cloudminds Beijing Technologies Co Ltd
Priority to CN201711425231.7A priority Critical patent/CN108413970B/zh
Publication of CN108413970A publication Critical patent/CN108413970A/zh
Application granted granted Critical
Publication of CN108413970B publication Critical patent/CN108413970B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/28Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network with correlation of data from several navigational instruments
    • G01C21/30Map- or contour-matching
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3407Route searching; Route guidance specially adapted for specific applications
    • G01C21/343Calculating itineraries, i.e. routes leading from a starting point to a series of categorical destinations using a global route restraint, round trips, touristic trips
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3446Details of route searching algorithms, e.g. Dijkstra, A*, arc-flags, using precalculated routes

Abstract

本发明公开了一种定位方法及用于定位的云系统。所述方法包括:接收视觉信息和测量数据;判断能否根据所述视觉信息进行成功定位;若定位不成功,则根据所述测量数据进行定位。所述云系统包括:通信模块、处理模块以及存储模块;所述通信模块用于接收视觉信息和测量数据;所述存储模块分别与所述通信模块、所述处理模块连接,用于存储所述视觉信息和所述测量数据、以及所述处理模块在运算过程中生成的中间信息;所述处理模块用于执行以下操作:判断能否根据所述视觉信息进行成功定位;若定位不成功,则根据所述测量数据进行定位。本发明不仅增强了导航定位服务的可靠性,还能避免给用户造成不必要的损失。

Description

一种定位方法、云系统、电子设备及计算机程序产品
技术领域
本发明一般地涉及行人导航定位技术领域,尤其涉及一种定位方法、云系统、电子设备及计算机程序产品。
背景技术
在现有的行人导航系统中,vSLAM(Visual Simultaneous Localization andMapping,视觉即时定位与构图)是一种较为常见的导航技术。使用vSLAM进行用户定位时,一般通过用户端的相机采集环境信息,并将该环境信息发送到vSLAM服务端。vSLAM服务端提取其中的特征点并与已知地图的先验信息进行匹配,从而获取请求端的位置信息。若地图中已存在所处环境的先验信息、环境的视觉特征较为丰富且环境变化较小,则可通过特征点匹配来获取位置信息;若地图中不存在所处环境的先验信息、环境的视觉特征较为稀疏或环境变化较大,则无法通过特征点匹配来获取位置信息,进而无法对用户进行定位和导航,即发生“视觉丢失”。视觉丢失发生之后,将无法继续提供导航服务。这不但给用户带来不便,还有可能给用户造成不必要的损失。因此,所属技术领域亟需一种在vSLAM服务端无法提供导航定位时为用户提供持续导航定位的方法和系统。
发明内容
为了能够在vSLAM服务端发生视觉丢失时提供持续的定位或导航功能,本发明提出一种定位方法、云系统、电子设备及计算机程序产品。
根据本发明实施例的一个方面,提供了一种定位方法,包括:接收视觉信息和测量数据;判断能否根据所述视觉信息进行成功定位;以及若定位不成功,则根据所述测量数据进行定位。
根据本发明的一方面,在所述判断能否根据所述视觉信息进行成功定位之前还包括计步检测,所述计步检测包括以下步骤:a.根据所述测量数据生成总加速度,并且判断相邻的总加速度之间是否存在周期性的交替变化;若存在,则执行步骤b,否则执行所述接收视觉信息和测量数据;b.将所述总加速度的最大值、最小值与计步阈值进行比较;若所述总加速度的所述最大值、所述最小值均达到所述计步阈值,则执行所述判断能否根据所述视觉信息进行成功定位;否则执行所述接收视觉信息和测量数据。
根据本发明的另一方面,所述根据所述测量数据进行定位包括:根据所述测量数据计算步长和第一方向角;对所述第一方向角进行校正,并获得经校正的方向角;以及根据所述步长和所述经校正的方向角获得定位信息。
优选地,所述对所述第一方向角进行校正,并获得经校正的方向角包括:将定位成功时所获取的第二方向角与相关联的第一对应方向角之间的差值作为方向角校正值,并利用所述方向角校正值进行校正;所述第一对应方向角是指在所述定位成功时通过所述测量数据获得的所述第一方向角。
本发明还提出一种用于定位的云系统,包括:通信模块、处理模块以及存储模块;其中,所述通信模块用于接收视觉信息和测量数据;所述存储模块分别与所述通信模块、所述处理模块连接,用于存储所述视觉信息和所述测量数据、以及所述处理模块在运算过程中生成的中间信息;所述处理模块用于执行以下操作:判断能否根据所述视觉信息进行成功定位;若定位不成功,则根据所述测量数据进行定位。
根据本发明的一方面,上述云系统还包括计步检测模块;所述计步检测模块分别与所述处理模块、所述存储模块连接,并且用于执行以下操作:a.接收所述处理模块计算出的总加速度,并且判断相邻的总加速度之间是否存在周期性的交替变化;若存在,则执行步骤b;b.将所述总加速度的最大值、最小值与计步阈值进行比较;若所述总加速度的所述最大值、所述最小值均达到所述计步阈值,则向所述处理模块发送行动指示消息。
根据本发明的另一方面,所述根据所述测量数据进行定位包括:根据所述测量数据计算步长和第一方向角;对所述第一方向角进行校正,并获得经校正的方向角;以及根据所述步长和所述经校正的方向角获得定位信息。
优选地,所述对所述第一方向角进行校正,并获得经校正的方向角包括:将定位成功时所获取的第二方向角与相关联的第一对应方向角之间的差值作为方向角校正值,并利用所述方向角校正值进行校正;所述第一对应方向角是指在所述定位成功时通过所述测量数据获得的所述第一方向角。
本发明的另一个实施例提出一种电子设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下方法:接收视觉信息和测量数据;判断能否根据所述视觉信息进行成功定位;以及若定位不成功,则根据所述测量数据进行定位。
根据本发明的一方面,在所述判断能否根据所述视觉信息进行成功定位之前还包括计步检测,所述计步检测包括以下步骤:a.根据所述测量数据生成总加速度,并且判断相邻的总加速度之间是否存在周期性的交替变化;若存在,则执行步骤b,否则执行所述接收视觉信息和测量数据;b.将所述总加速度的最大值、最小值与计步阈值进行比较;若所述总加速度的所述最大值、所述最小值均达到所述计步阈值,则执行所述判断能否根据所述视觉信息进行成功定位;否则执行所述接收视觉信息和测量数据。
根据本发明的另一方面,所述根据所述测量数据进行定位包括:根据所述测量数据计算步长和第一方向角;对所述第一方向角进行校正,并获得经校正的方向角;以及根据所述步长和所述经校正的方向角获得定位信息。
优选地,所述对所述第一方向角进行校正,并获得经校正的方向角包括:将定位成功时所获取的第二方向角与相关联的第一对应方向角之间的差值作为方向角校正值,并利用所述方向角校正值进行校正;所述第一对应方向角是指在所述定位成功时通过所述测量数据获得的所述第一方向角。
本发明的又一个实施例一种计算机程序产品,其上存储有计算机程序,所述计算机程序在被处理器执行时实现以下方法:接收视觉信息和测量数据;判断能否根据所述视觉信息进行成功定位;以及若定位不成功,则根据所述测量数据进行定位。
根据本发明的一方面,在所述判断能否根据所述视觉信息进行成功定位之前还包括计步检测,所述计步检测包括以下步骤:a.根据所述测量数据生成总加速度,并且判断相邻的总加速度之间是否存在周期性的交替变化;若存在,则执行步骤b,否则执行所述接收视觉信息和测量数据;b.将所述总加速度的最大值、最小值与计步阈值进行比较;若所述总加速度的所述最大值、所述最小值均达到所述计步阈值,则执行所述判断能否根据所述视觉信息进行成功定位;否则执行所述接收视觉信息和测量数据。
根据本发明的另一方面,所述根据所述测量数据进行定位包括:根据所述测量数据计算步长和第一方向角;对所述第一方向角进行校正,并获得经校正的方向角;以及根据所述步长和所述经校正的方向角获得定位信息。
优选地,所述对所述第一方向角进行校正,并获得经校正的方向角包括:将定位成功时所获取的第二方向角与相关联的第一对应方向角之间的差值作为方向角校正值,并利用所述方向角校正值进行校正;所述第一对应方向角是指在所述定位成功时通过所述测量数据获得的所述第一方向角。
由于本发明在vSLAM发生视觉丢失时利用用户端提供的步长测量数据来获得定位信息,因此能够为用户提供持续的定位和导航,并且既适用于室内定位,也适用于室外定位。不仅增强了导航定位服务的可靠性,还能避免给用户造成不必要的损失。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分。本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。其中:
图1示出根据本发明一个实施例的定位方法的流程图。
图2示出根据本发明另一个实施例的定位方法的流程图。
图3示出根据本发明又一个实施例的定位方法的示意图。
图4示出根据本发明一个实施例的用于定位的云系统的结构框图。
具体实施方式
以下通过具体示例进一步阐明本发明的示例性实施例的实质。显而易见的是,所描述的实施例仅是本申请的一部分实施例,而不是所有实施例的穷举。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
本申请可应用于需要进行导航定位的各类场景,包括但不限于基于机器视觉的室内外导航定位、无人/辅助驾驶、智能机器人等。
在上述相关技术领域中,vSLAM服务端是一种较为常见的导航定位服务提供方。本领域技术人员可以理解的是,导航定位服务提供方不限于vSLAM服务端,其他任何可向用户提供导航定位服务的装置、云端或平台均可实现本发明提出的定位方法及系统。
如图1所示,本发明提出一种定位方法,包括:接收视觉信息和测量数据(101);判断能否根据所述视觉信息进行成功定位(102);若定位不成功,则根据所述测量数据进行定位(103)。
上述视觉信息可通过用户端的例如相机等图像采集装置获得,并发送到导航定位服务提供方,例如vSLAM服务端。在一个实施例中,用户端可选择性地在对上述视觉信息进行简单处理后,再将其发送到vSLAM服务端。本领域技术人员可以理解的是,上述简单处理可包括例如压缩图像数据等缩减数据传输量的相关操作。
上述测量数据可由用户端通过多种测量装置来获取,测量装置包括但不限于利用三轴加速度计和三轴陀螺仪、电子罗盘、惯性测量单元IMU(Inertial Measurement Unit)等。测量数据可包括用户在三个轴方向(即X、Y和Z轴)上的加速度、角速度或地磁数据等相关信息。
在一个优选的实施例中,本发明可选择性地执行计步检测。即检测用户的动作是真正地迈出脚步还是仅抖动了一下而没有行走,以免将抖动误认为是行走,从而影响定位的准确性。
本领域技术人员应当理解,上述计步检测步骤是可选的,并且既可以由导航定位服务提供方(例如vSLAM服务端)来执行,也可由用户端来执行。当由导航定位服务提供方来执行时,优选地在导航定位服务提供方接收测量数据和视觉信息之后、对视觉信息进行处理之前执行。当由用户端来执行时,优选地在用户端发送视觉信息和测量数据之前执行。
人体在行走过程中,其力度大小会影响到所获取的加速度信息。因此,可通过检测加速度数值来进行计步检测。首先,判断加速度值是否存在周期性交替变化;若存在周期性交替变化,则通过比较加速度最大值和最小值是否均达到设定的计步阈值来进一步判定。若不存在周期性交替变化,即用户没有发生行走动作,则当由导航定位服务提供方来执行计步检测时,导航定位服务提供方对此次接收的视觉信息不作进一步处理,等待接收下一次的视觉信息和测量数据;当由用户端来执行计步检测时,用户端则不发送对应的测量数据和视觉信息。
在一个优选的实施例中,本发明通过下述方法来进行计步检测。
首先,根据所获取的三个轴的加速度值来计算总加速度值。例如,可通过公式1来计算总加速度值at
Figure BDA0001523845780000061
其中,ax、ay、az分别为三个轴方向的加速度;at为未经校正的三轴总加速度。由于受到重力加速度的影响,加速度计或惯性测量单元IMU在静止状态下三轴也各有输出,并且输出数据具有随机性,与测量装置所处的姿态也有关系。在一个优选的实施例中,为了避免受到上述因素的影响,可利用测量装置处于静止状态时三个轴方向的加速度值对总加速度值进行校正。在一个实施例中,当测量装置处于静止状态时,重力加速度可表示为:
Figure BDA0001523845780000071
其中,
Figure BDA0001523845780000072
分别为静止时的三个轴方向的重力加速度;ag为三轴总重力加速度。那么,去除重力加速度影响之后的总加速度为:
Figure BDA0001523845780000073
其中,ao为去除重力加速度影响之后的三轴总加速度。处于静止状态时,ao约为0。本领域技术人员可以理解的是,在对加速度值进行校正之前,可对三个轴方向的加速度ax、ay、az分别进行滤波等基本的降噪处理。
经过校正的三轴总加速度值ao在人体行走过程中呈现周期性的交替变化,并且在0值上下波动。根据本发明上述实施例所公开的内容可知,当利用重力加速度对未经校正的总加速度进行校正时,可通过判断相邻总加速度之间是否存在零点交叉来确认是否发生行走的动作。
本领域技术人员根据上述内容能够认识到,若采用其它相关数据对未经校正的总加速度进行校正,那么当有行走动作发生时,相邻的总加速度不一定围绕0值上下浮动,而是有可能围绕其他数值交替变化。上述实施例中所采用的重力加速度校正方法仅是示例性的,不应被认为构成对本发明的限制。
一般地,测量装置(例如加速度计或IMU)每秒钟可多次测量并输出三个轴方向的加速度。以工作频率为60Hz的惯性测量单元IMU为例,该IMU每秒钟可测量并输出60次测量数据。可根据测量装置每次输出的三个轴方向的加速度来计算和校正对应的总加速度。
在一个优选的实施例中,当进行计步检测时,首先判断相邻的加速度之间,即本次与前次计算得出的总加速度值(ao)之间,是否存在零点交叉,即其中一个数值大于0,且另外一个数值小于0。若不存在零点交叉,则返回步骤S101。
若存在零点交叉,则对加速度最大值和最小值与计步阈值进行比较。若加速度最大值和最小值均达到计步阈值,则判定已经发生行走的动作;若加速度最大值或最小值未达到计步阈值,则判定该行为仅为抖动。
在另一个优选的实施例中,本发明通过下述方法来生成计步阈值:令携带测量装置的用户行走n步(n为大于1的自然数),记录此过程中测量装置所输出的三个轴方向的加速度ax、ay和az,并且可选地根据公式1-3计算得出总加速度ao。检测每一步的所有ao中的最大值amax和最小值amin,并将n步以内所有
Figure BDA0001523845780000081
中的最小值和所有
Figure BDA0001523845780000082
(1≤i≤n,且i为整数)中的最大值分别作为第一计步阈值
Figure BDA0001523845780000083
和第二计步阈值
Figure BDA0001523845780000084
如公式4所示:
Figure BDA0001523845780000085
将当前计算得出的总加速度ao中的最大值、最小值分别与第一、第二计步阈值
Figure BDA0001523845780000086
进行比较,若总加速度ao的最大值和最小值分别达到第一、第二计步阈值
Figure BDA0001523845780000087
则判定有行走动作发生。若存在其中一个值未达到计步阈值,则判定为抖动,可继续接收视觉信息和测量数据。
本领域技术人员可以理解的是,也可以采用其他方法来设置计步阈值,不必采集用户本身行走过程中的加速度信息。例如,通过大数据采集和处理获得不同性别、年龄、身高的用户各自相对适用的经验计步阈值。
当根据视觉信息成功定位时,用户端可从例如vSLAM服务端等导航定位服务提供方接收第一位置信息,该第一位置信息包括该vSLAM服务端所获取的坐标信息和第二方向角θv
而当根据视觉信息定位失败时,意味着vSLAM服务端很有可能发生了视觉丢失或其他故障,此时无法为用户提供导航定位服务,也无法提供准确的坐标或方向角信息。本发明正是针对上述场景提出改进方案,即此时可利用从用户端接收的测量数据来对用户进行定位。
在一个实施例中,如图2所示,“根据测量数据进行定位”可通过下述步骤来实现:根据测量数据计算步长和第一方向角(201);对所述第一方向角进行校正,获得经校正的方向角(202);以及根据所述步长和所述经校正的方向角获得定位信息(203)。如图2所示。
在一个优选的实施例中,可采用下述公式5来计算用户的步长:
Figure BDA0001523845780000091
其中,amax、amin分别为用户行走一步时总加速度ao的最大值和最小值,k为步长系数,d为步长。步长系数k直接影响步长计算的准确性,进而影响到定位的精度。
在一个优选的实施例中,本发明采用下述方法来获得步长系数k。令用户直线行走距离l,记录总步数n(n为自然数)以及第i步所对应的总加速度ao的最大值
Figure BDA0001523845780000092
和最小值
Figure BDA0001523845780000093
(1≤i≤n,且i为整数),从而根据公式6:
Figure BDA0001523845780000094
可进一步得到公式7:
Figure BDA0001523845780000095
根据公式7可以获得步长系数k。当计算得出步长系数k时,用户每走一步,可根据来自测量装置的测量数据,利用上述计算方法来得到用户的步长信息。
本领域技术人员可以理解,利用测量装置输出的测量数据(例如加速度、角速度和/或地磁数据等信息),通过所属技术领域中的常用方法可进一步计算得出用户迈出第i步所对应的第一方向角θi,其中i≧1,且i为整数。
根据说明书上面的描述可知,vSLAM服务端在定位成功时可获取第二方向角,并且该第二方向角是正确的。可根据定位成功时获取的第二方向角计算方向角校正值,并利用所述方向角校正值进行校正。在一个优选的实施例中,根据在上述vSLAM服务端成功定位时通过用户端获取的测量数据,可以获得与上述第二方向角相关联的第一方向角,后文将其简称为第一对应方向角。此时,第二方向角与第一对应方向角之间的偏差即为正确的视觉方向与通过测量数据获得的方向角之间的偏差。
在本发明的一个优选的实施例中,可以计算并存储第二方向角与第一对应方向角之间的差值,该差值被称为方向角校正值。该方向角校正值可用于对在vSLAM服务端定位失败时通过测量数据获得的第一方向角进行校正,从而实现对用户的正确定位。校正方法如公式8-9所示。
Figure BDA0001523845780000101
θc=θid (公式9)
其中,
Figure BDA0001523845780000102
为定位成功时所获取的第二方向角,
Figure BDA0001523845780000103
为与
Figure BDA0001523845780000104
相关联的第一对应方向角,θd为方向角校正值,θi为定位失败时所获得的第一方向角,θc为经校正的方向角。
本领域技术人员应当理解,本发明提出的上述方向角校正方法并非仅限于利用公式8-9才能实现。
通常情况下,vSLAM服务端在持续提供导航定位服务一段时间后有可能发生视觉丢失或其他故障。例如,vSLAM服务端在发生视觉丢失之前已经为用户进行过m次(m为整数且m﹥1)成功定位,在响应第m+1次定位请求时发生视觉丢失或其他故障,从而导致定位失败。
vSLAM服务端在对用户定位成功期间可获得并返回共m个第二方向角信息,那么,存在与vSLAM服务端获取的第i个(1≤i≤m且i为整数)第二方向角信息相对应的测量数据、以及根据该测量数据获得的第一对应方向角信息。应当理解的是,可以获得m个方向角校正值,并且该m个方向角校正值中的任一个均可用于校正在定位失败时获得的第一方向角。本发明的一个优选实施例选取距离视觉丢失时刻最近的方向角校正值。
接下来,根据计算得到的步长以及经校正的方向角获得定位信息。示例性而非限制性地,可利用如下所示的公式10-11获得定位信息。
xi=xi-1+s*d*cos(θc) (公式10)
yi=yi-1+s*d*sin(θc) (公式11)
其中,(xi-1,yi-1)为前一步已知的坐标信息,s为地图比例尺,d为步长,θc为经校正的方向角,(xi,yi)为定位信息。
本领域技术人员可以理解的是,公式10-11仅是示例性的。本发明中的定位信息不限于绝对坐标位置,也可以是诸如与前一步位置相对而言的相对位置信息或坐标信息等。
在一个优选的实施例中,如图3所示,结合导航定位服务提供方(即图3中的云端301)与用户端302之间的交互过程,来详细描述根据本发明的一个实施例的定位方法。
一个或多个测量装置可被设置在例如头盔303之类的便携设备中,并由用户随身携带。其中,测量装置可包括例如相机3031等图像采集装置以及例如IMU3032等用于获取用户加速度、角速度等信息的设备。测量装置将获取的视图信息和测量数据发送到用户侧,并由用户侧根据需要发送到云端。
云端接收视图信息和测量数据,并将视图信息与所存储的地图先验信息进行匹配。若二者能够相互匹配,则定位成功,云端可获取用户的定位信息和视觉角度信息(包括第二方向角),对用户进行导航定位。
同时,云端可以根据实际需要或预定策略来计算通过测量数据得到的第一方向角,进而得到上述第二方向角与第一方向角之间的差值,并将该差值作为方向角校正值记录下来。
当云端利用视图信息定位失败时,可通过来自用户端的测量数据计算得到此时的第一方向角和步长信息,并利用之前存储的方向角校正值对该第一方向角进行校正,进而获得经校正的方向角。通过经校正的方向角和步长信息可以获得用户的定位信息,从而为用户提供持续的导航定位服务。
需要注意的是,在该实施例中,计步检测操作在用户端执行。
综上,本发明提出的定位方法可以使用户在导航定位服务提供方无法提供实时的导航定位服务时实现对自身的持续定位和导航。本发明不仅提高了导航定位服务的可靠性,还能为用户节省时间,避免不必要的损失。
如图4所示,本发明还提出一种用于定位的云系统400,包括相互连接的通信模块401、处理模块402以及存储模块403。其中,通信模块401可用于接收测量数据和视觉信息。上述测量数据可经由用户端的一个或多个测量装置来提供,并且包括但不限于加速度、角速度以及地磁数据等。通信模块401在接收相关数据之后,可将其存储到存储模块403中,或者可选地直接发送给处理模块402。本领域技术人员可以理解的是,通信模块401也可根据需要从存储模块403或处理模块402接收相关数据,并进行发送。
存储模块403与通信模块401、处理模块402分别连接,用于存储上述测量数据和视觉信息,并且用于存储所述处理模块402在运算过程中生成的中间信息。
处理模块402可用于执行以下操作:判断能否根据所述视觉信息进行成功定位;当定位失败时,根据所述测量数据进行定位。
在另一个实施例中,所述云系统400可选择地包括计步检测模块404。该计步检测模块404可与处理模块402、存储模块403分别连接,并且用于计步检测。即检测用户的动作是真正地迈出脚步还是仅抖动了一下而没有行走,以免将抖动误认为是行走,从而影响定位的准确性。
在一个实施例中,计步检测模块404可首先判断加速度是否存在周期性的交替变化;若存在,则通过比较加速度最大值和最小值是否均达到设定的计步阈值来进一步判定。
在一个优选的实施例中,处理模块402还可利用说明书前述公式1-3得到去除重力加速度影响之后的三轴总加速度ao,并且发送给计步检测模块404。由于经过校正的三轴总加速度值ao在人体行走过程中呈现周期性的交替变化,并且在0值上下波动。因此,计步检测模块404可首先判断由处理模块402计算得出的相邻总加速度值(ao)之间是否存在零点交叉,即其中一个数值大于0,且另外一个数值小于0。
本领域技术人员根据上述内容能够认识到,若采用其它相关数据对未经校正的总加速度进行校正,那么当有行走动作发生时,相邻的总加速度不一定围绕0值上下浮动,而是有可能围绕其他数值交替变化。上述实施例中所采用的重力加速度校正方法仅是示例性的,不应被认为构成对本发明的限制。
在一个优选的实施例中,若相邻的总加速度值(ao)之间存在零点交叉,则计步检测模块404将总加速度的最大值、最小值与计步阈值进行比较。若不存在零点交叉,则意味着没有行走动作发生,那么不向处理模块402发送行走指示消息。
对于存在零点交叉的情形,计步检测模块404可优选地利用说明书前述公式4及对应的计步阈值生成方法来生成计步阈值。计步检测模块404将处理模块402计算得出的总加速度ao的最大值、最小值分别与第一计步阈值
Figure BDA0001523845780000131
第二计步阈值
Figure BDA0001523845780000132
进行比较。若总加速度ao的最大值、最小值分别达到第一计步阈值
Figure BDA0001523845780000133
第二计步阈值
Figure BDA0001523845780000134
则判定有行走动作发生。若存在其中一个值未达到计步阈值,则判定为抖动。
本领域技术人员可以理解的是,也可以采用其他方法来设置计步阈值,不必采集用户本身行走过程中的加速度信息。例如,通过大数据采集和处理获得不同性别、年龄、身高的用户各自相对适用的经验计步阈值。本领域技术人员也可以理解,计步检测模块404是可选的,而不是必须的。
在一个实施例中,计步检测模块404在判定有行走动作发生时,可向处理模块402发送行走指示消息。处理模块402还可在接收到该行走指示消息之后,根据加速度信息计算获得用户的步长信息。在一个优选的实施例中,处理模块402可根据说明书前述公式5-7及其对应的方法来获得用户的步长。
在另一个实施例中,来自一个或多个测量装置的测量数据包括但不限于加速度、角速度和/或地磁数据等。处理模块402可进一步利用上述信息计算得到用户迈出第i步的第一方向角θi,其中i≥1且i为整数。
当根据视觉信息定位成功时,处理模块402可获取第二方向角θv。在一个优选的实施例中,处理模块402计算第二方向角与对应的第一方向角之间的差值,并且将该差值作为方向角校正值存储到存储模块403中。
当定位失败时,即vSLAM服务端可能发生了视觉丢失或其他故障时,处理模块402可从存储模块403中读取方向角校正值,并利用该方向角校正值对通过测量数据获得的第一方向角θi进行校正。
优选地,处理模块402可进一步利用说明书前述公式8-9获得经校正的方向角,并且可根据已知的位置信息、步长、比例尺以及经校正的方向角等信息,利用说明书前述公式10-11计算得到用户的位置信息,即第二定位信息。
本领域技术人员可以理解的是,公式10-11仅是示例性的。本发明中的第二定位信息不限于绝对坐标位置,也可以是诸如与前一步位置相比较的相对位置信息或坐标信息等。
由此可见,本发明提出的上述云系统400可以使用户在例如vSLAM服务端等导航定位服务提供方无法提供实时的导航定位服务时实现对用户的定位导航。本发明不仅提高了导航定位服务的可靠性,还能为用户节省时间,避免不必要的损失。
另外,本发明还提出一种电子设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:接收视觉信息和测量数据;判断能否根据所述视觉信息进行成功定位;若定位不成功,则根据所述测量数据进行定位。
本领域技术人员可以理解的是,上述计算机程序除了能够实现上述步骤对应的定位方法以外,也能够实现本说明书之前描述定位方法部分所涉及的所有步骤。
本发明还提出一种计算机程序产品,其上存储有计算机程序,该计算机程序在被处理器执行时实现以下步骤:接收视觉信息和测量数据;判断能否根据所述视觉信息进行成功定位;若定位不成功,则根据所述测量数据进行定位。本领域技术人员可以理解的是,上述计算机程序除了能够实现上述步骤对应的定位方法以外,也能够实现本说明书之前描述定位方法部分所涉及的所有步骤。
本领域技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (4)

1.一种定位方法,包括:
接收视觉信息和测量数据;
判断能否根据所述视觉信息进行成功定位;以及
若定位不成功,则根据所述测量数据进行定位,包括:根据所述测量数据计算步长和第一方向角;对所述第一方向角进行校正,并获得经校正的方向角;以及根据所述步长和所述经校正的方向角获得定位信息;
其中,所述对所述第一方向角进行校正,并获得经校正的方向角包括:将定位成功时所获取的第二方向角与相关联的第一对应方向角之间的差值作为方向角校正值,并利用所述方向角校正值进行校正;所述第一对应方向角是指在所述定位成功时通过所述测量数据获得的所述第一方向角;在所述判断能否根据所述视觉信息进行成功定位之前还包括计步检测,所述计步检测包括以下步骤:
a.根据所述测量数据生成总加速度,并且判断相邻的总加速度之间是否存在周期性的交替变化;若存在,则执行步骤b,否则执行所述接收视觉信息和测量数据;
b.将所述总加速度的最大值、最小值与计步阈值进行比较;若所述总加速度的所述最大值、所述最小值均达到所述计步阈值,则执行所述判断能否根据所述视觉信息进行成功定位;否则执行所述接收视觉信息和测量数据。
2.一种用于定位的云系统,包括:通信模块、处理模块以及存储模块;其中,
所述通信模块用于接收视觉信息和测量数据;
所述存储模块分别与所述通信模块、所述处理模块连接,用于存储所述视觉信息和所述测量数据、以及所述处理模块在运算过程中生成的中间信息;
所述处理模块用于执行以下操作:判断能否根据所述视觉信息进行成功定位;若定位不成功,则根据所述测量数据进行定位,包括:根据所述测量数据计算步长和第一方向角;对所述第一方向角进行校正,并获得经校正的方向角;以及根据所述步长和所述经校正的方向角获得定位信息;
其中,所述对所述第一方向角进行校正,并获得经校正的方向角包括:将定位成功时所获取的第二方向角与相关联的第一对应方向角之间的差值作为方向角校正值,并利用所述方向角校正值进行校正;所述第一对应方向角是指在所述定位成功时通过所述测量数据获得的所述第一方向角;还包括计步检测模块;所述计步检测模块分别与所述处理模块、所述存储模块连接,并且用于执行以下操作:
a.接收所述处理模块计算出的总加速度,并且判断相邻的总加速度之间是否存在周期性的交替变化;若存在,则执行步骤b;
b.将所述总加速度的最大值、最小值与计步阈值进行比较;若所述总加速度的所述最大值、所述最小值均达到所述计步阈值,则向所述处理模块发送行动指示消息。
3.一种电子设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现权利要求1所述的方法。
4.一种计算机程序存储介质,其上存储有计算机程序,所述计算机程序在被处理器执行时实现权利要求1所述的方法。
CN201711425231.7A 2017-12-25 2017-12-25 一种定位方法、云系统、电子设备及计算机程序产品 Active CN108413970B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711425231.7A CN108413970B (zh) 2017-12-25 2017-12-25 一种定位方法、云系统、电子设备及计算机程序产品

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711425231.7A CN108413970B (zh) 2017-12-25 2017-12-25 一种定位方法、云系统、电子设备及计算机程序产品

Publications (2)

Publication Number Publication Date
CN108413970A CN108413970A (zh) 2018-08-17
CN108413970B true CN108413970B (zh) 2021-11-16

Family

ID=63125548

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711425231.7A Active CN108413970B (zh) 2017-12-25 2017-12-25 一种定位方法、云系统、电子设备及计算机程序产品

Country Status (1)

Country Link
CN (1) CN108413970B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113643440A (zh) * 2021-07-06 2021-11-12 北京百度网讯科技有限公司 定位方法、装置、设备和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102914303A (zh) * 2012-10-11 2013-02-06 江苏科技大学 多移动机器人的智能空间系统及导航信息获取方法
CN105973228A (zh) * 2016-06-28 2016-09-28 江苏环亚医用科技集团股份有限公司 一种基于单摄像头、rssi的室内目标定位系统及方法
CN106708066A (zh) * 2015-12-20 2017-05-24 中国电子科技集团公司第二十研究所 基于视觉/惯导的无人机自主着陆方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9990726B2 (en) * 2012-09-27 2018-06-05 Apple Inc. Method of determining a position and orientation of a device associated with a capturing device for capturing at least one image

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102914303A (zh) * 2012-10-11 2013-02-06 江苏科技大学 多移动机器人的智能空间系统及导航信息获取方法
CN106708066A (zh) * 2015-12-20 2017-05-24 中国电子科技集团公司第二十研究所 基于视觉/惯导的无人机自主着陆方法
CN105973228A (zh) * 2016-06-28 2016-09-28 江苏环亚医用科技集团股份有限公司 一种基于单摄像头、rssi的室内目标定位系统及方法

Also Published As

Publication number Publication date
CN108413970A (zh) 2018-08-17

Similar Documents

Publication Publication Date Title
EP2434256B1 (en) Camera and inertial measurement unit integration with navigation data feedback for feature tracking
US20150354967A1 (en) Inertial device, method, and program
CN106814753B (zh) 一种目标位置矫正方法、装置及系统
EP2175237A1 (en) System and methods for image-based navigation using line features matching
US20210108923A1 (en) Information processing apparatus, information processing method, and program
CN110440797A (zh) 车辆姿态估计方法及系统
JP2013202066A (ja) 運動解析装置
JP5511088B2 (ja) 自律測位に用いる重力ベクトルを補正する携帯装置、プログラム及び方法
CN108663044B (zh) 一种定位方法及装置
CN108413970B (zh) 一种定位方法、云系统、电子设备及计算机程序产品
JP2019028796A (ja) 測定装置、ナビゲーションシステム、測定方法及びプログラム
JP5870656B2 (ja) 軌跡演算装置および軌跡演算方法
CN112860823B (zh) 终端指向的显示方法、装置和存储介质及电子设备
CN112363196B (zh) 车辆属性确定方法、装置、存储介质和电子设备
JP2015017858A (ja) 参照値生成装置及び参照値生成方法
CN108225368B (zh) 计步装置和计步方法
KR101565485B1 (ko) 위치 오차 보정 장치 및 그 방법
JP2006038650A (ja) 姿勢計測方法、姿勢制御装置、方位計及びコンピュータプログラム
EP2487460A2 (en) Navigation system with estimation of n-dimensional parameters while sensing fewer than n dimensions
EP3134705B1 (en) Initializing an inertial sensor using soft constraints and penalty functions
Kannan et al. Adaptive sensor fusion technology for mobile and wearable applications
JP7173673B2 (ja) 半導体装置、携帯端末装置、歩幅導出方法及びプログラム
JP5571027B2 (ja) 自律測位に用いる重力ベクトルを補正する携帯装置、プログラム及び方法
JP2016116612A (ja) 飛距離計測装置、打球方向計測装置、飛距離計測システム、飛距離計測方法、およびプログラム
CN109631895B (zh) 一种物体的位姿估计方法和装置

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
GR01 Patent grant
GR01 Patent grant