本技术涉及导航领域,特别涉及一种导航方法、可穿戴设备及存储介质。
背景技术:
1、传统导航定位方案通常依赖于全球定位系统(global positioning system,gps),但是gps信号容易被建筑等障碍物遮挡,影响导航精度。
2、基于此,当前采用的是结合gps信号融合多传感器信号的方案来确定导航方向,通过融合不同定位源的互补定位特征,以提升定位的精度。比如,通过融合多个外部信号实现定位和导航,外部信号可以是无线保真(wireless fidelity,wi-fi)、蓝牙(blue tooth)、无线通信技术(zigbee)、蜂窝网络、射频(radio frequency,rf)、地磁信号等。但是,不是所有环境都能捕捉到这些外部信号,因此无法保证导航精度。
技术实现思路
1、本技术提供了一种导航方法、可穿戴设备及存储介质,可以提高导航精度。所述技术方案如下:
2、第一方面,提供了一种导航方法,该导航方法应用于可穿戴设备,可穿戴设备用于佩戴在人体的头部、颈部、腰部或腿部,相较于手持设备和佩戴在人体手部的可穿戴设备,这些位置上的可穿戴设备相对较稳定。该导航方法包括:获取可穿戴设备中的惯性传感器检测到的人体的头部、颈部、腰部或腿部的运动数据;在根据与多个采集点一一对应的多帧运动数据判断出人体的头部未发生转动的情况下,说明当前姿态就是朝前姿态,可穿戴设备的朝向与实际行走方向基本一致,将当前姿态中的航向角作为当前时刻的行走方向。其中,多个采集点是指在当前时刻之前、且与当前时刻相邻的多个采集点,一个采集点对应一帧运动数据;当前姿态表示当前时刻的姿态,是根据多帧运动数据确定的;连续的多帧运动数据反映人体运动规律,通过融合算法得到可穿戴设备的当前姿态(可以包括俯仰角、横滚角和航向角),可穿戴设备佩戴在人体上,可穿戴设备的当前姿态反映了人体当前姿态。其中,在可穿戴设备佩戴在人体的颈部、腰部或腿部的情况下,可穿戴设备的朝向与实际行走方向基本一致,该情况无需判断人体头部是否转动,或者直接视为人体的头部未发生转动。在根据多帧运动数据判断出人体的头部发生转动的情况下,可穿戴设备的朝向与实际行走方向不一致,当前姿态中的航向角对行走方向没有贡献,将当前时刻的上一时刻的行走方向作为当前时刻的行走方向。然后根据当前时刻的行走方向,确定导航信息,以对人体进行导航。采用佩戴在稳定位置上的可穿戴设备中惯性传感器所检测到的运动数据对当前姿态进行运算,提高了当前姿态的可靠性和稳定性,通过判断头部是否转动来确定当前时刻的行走方向,提高了当前时刻的行走方向的准确性,提高了定位精度和导航精度。
3、在一种可能的实现方式中,由于运动数据的采集时间是很快的,因此行走方向的计算过程也是很快的,无论是直线行走还是曲线行走,当前时刻的航向角应与上一时刻的行走方向相差不多。基于此,设置预设范围。判断当前时刻的上一时刻的行走方向与当前姿态中的航向角之间的差值的绝对值是否在预设范围内?若差值的绝对值在预设范围内,说明头部可能发生转动,则需要进一步根据多帧运动数据对头部是否发生转动进行分类,分类结果为头部发生转动或头部未发生转动。若差值的绝对值不在预设范围内,例如,小于预设范围的下限值,说明上一时刻的朝前姿态与当前姿态之间差异不大,则确定头部未发生转动。若差值的绝对值不在预设范围内,例如,大于预设范围的上限值,说明计算过程有可能存在偏差,仅以当前姿态作为参考,如此,确定头部未发生转动。
4、其中,对于可穿戴设备佩戴在人体的颈部、腰部或腿部的情况,差值的绝对值小于预设范围的下限值,视为人体的头部未发生转动。
5、通过设置预设范围,可以初步判断头部是否发生转动,在头部有可能发生转动的情况下,继续根据多帧运动数据对头部是否发生转动进行分类,提高了判断结果的准确性,从而提高后续根据判断结果确定行走方向的准确性。
6、在一种可能的实现方式中,在得到当前时刻的行走方向之后,根据当前时刻的行走方向对上一时刻的朝前姿态进行更新,得到当前时刻的朝前姿态,当前时刻的朝前姿态包括当前时刻的行走方向,可以用于当前时刻的下一时刻的行走方向确定过程,以提高后续确定行走方向过程的准确性。
7、在一种可能的实现方式中,获取全球卫星导航芯片检测到的卫星信息;卫星信息中包括的有效卫星数量和信号强度可以反映信号质量。如此,在卫星信息的信号质量满足预设条件时,说明信号质量较好,可以与导航信息进行耦合后得到目标信息,目标信息包括当前时刻的目标行走方向。在卫星信息的信号质量不满足预设条件时,说明信号质量较差,不作参考,直接将导航信息作为目标信息,目标信息中当前时刻的目标行走方向也就是当前时刻的行走方向。根据目标信息进行导航。通过卫星信息的信号质量,自适应切换不同算法,提高了导航结果的稳定性和可靠性。
8、在此基础上,依据当前时刻的目标行走方向对上一时刻的朝前姿态的更新,得到当前时刻的朝前姿态。当前时刻的朝前姿态包括当前时刻的目标行走方向,当前时刻的朝前姿态用于当前时刻的下一时刻的行走方向确定过程,通过目标行走方向对朝前姿态进行更新,提高了朝前姿态的准确性,从而提高后续确定行走方向过程的准确性。
9、在一种可能的实现方式中,卫星信息包括有效卫星数量和信号强度,基于此,可以通过以下方式判断卫星信息是否满足预设条件。可以将有效卫星数量和信号强度的乘积作为信号质量;也可以对有效卫星数量和信号强度进行加权求和,得到信号质量;还可以结合卫星轨道、天气条件、接收设备性能等影响参数确定信号质量,以提高信号质量的准确性。在信号质量大于预设质量的情况下,确定卫星信息满足预设条件;在信号质量小于或等于预设质量的情况下,确定卫星信息不满足预设条件。
10、需要说明的是,预设质量可以由本领域技术人员根据实际情况进行适当设置,例如,将使得卫星通信的可靠性和稳定性达到预设标准的信号质量作为预设质量,本技术实施例对预设质量的形式和数值不做限制。
11、本技术实施例中,可以通过卫星信号中的信号强度、有效卫星数量等信息判断信号质量。进而根据信号质量判断是否与导航信息耦合,相较于直接进行耦合的方案,提高了目标信息的准确性,提高导航结果的稳定性和可靠性。
12、在一种可能的实现方式中,卫星信息和导航信息的耦合过程可以包括松耦合和紧耦合。在对卫星信息和导航信息进行松耦合时,需要根据卫星信息确定三维位置、速度信息和时间信息,然后通过滤波器对三维位置、速度信息、时间信息和导航信息进行融合,得到目标信息。在对卫星信息和导航信息进行紧耦合时,需要根据卫星信息确定伪距信息,然后通过滤波器对伪距信息和导航信息进行融合,得到目标信息,伪距信息包括伪距、伪距残差和伪距率中的至少一项。目标信息包括当前时刻的目标行走方向、当前时刻的目标速度、当前时刻人体所处目标位置。根据目标信息进行导航,通过惯性传感器对应的导航信息和全球卫星导航传感器检测到的卫星信息进行耦合,提高了目标信息的准确性,进而提到导航精度和稳定性。
13、在一种可能的实现方式中,用户头部发生转动时会存在一个朝向旋转方向的力,加速度数据和角速度数据会出现明显的变化,而行走时转换方向是一个较平稳、缓慢的过程。基于此,可通过用于对时间序列数据进行二分类的模型(即,预设分类模型)进行分类。将多帧运动数据输入预设分类模型进行二分类,通过预设分类模型对人体的头部是否发生转动进行分类,输出分类结果,分类结果为人体的头部未发生转动或发生转动。
14、通过预设分类模型对多帧运动数据进行学习,提高了分类结果的准确性。
15、在一种可能的实现方式中,由于人体佩戴可穿戴设备之后的运动数据存在不稳定的情况,因此在人体佩戴可穿戴设备后,对在人体佩戴可穿戴设备后的多帧初始运动数据取均值,减少佩戴初期的不稳定性所带来的影响。利用九轴融合算法或六轴融合算法,计算设备坐标系中初始时刻的设备姿态;将初始时刻的设备姿态投影到全局坐标系中,得到初始时刻的初始姿态。
16、由于检测运动数据的频率通常比较高,因此,对于初始时刻对应的多帧运动数据与多帧初始运动数据之间的关系没有严格限制。初始时刻对应的多帧运动数据中的首帧,可以是多帧初始运动数据中的任意一帧。初始时刻对应的多帧运动数据中的首帧可以位于多帧初始运动数据之后。
17、本技术实施例中,初始时刻的初始姿态的计算过程只用在初始佩戴时执行一次,初始姿态用于初始时刻的方向确定过程。在根据初始姿态确定出初始时刻的行走方向之后,根据初始时刻的行走方向对初始姿态进行更新,得到初始时刻的朝前姿态。初始时刻的朝前姿态用于对初始时刻的下一时刻的行走方向的计算过程中,以提高后续确定行走方向的准确性。
18、在一种可能的实现方式中,对在当前时刻之前、且与当前时刻相邻的多个采集点一一对应的多帧加速度数据进行步态检测,得到加速度峰值和加速度谷值随时间的变化规律;根据加速度峰值和加速度谷值随时间的变化规律进行动态步长估计,预测出当前时刻的动态步长。将当前时刻的动态步长除以加速度数据中时间信息,得到当前时刻的速度。根据当前时刻的动态步长可以知晓走了多远,根据当前时刻的行走方向可以知晓往哪个方向走,如此,在原有位置的基础上,可以确定当前时刻人体所处位置。将当前时刻人体所处位置、当前时刻的速度和当前时刻的行走方向作为导航信息,以对人体进行导航。可穿戴设备佩戴在人体较稳定的位置上,减少了晃动或摆臂等动作带来的干扰,提高了检测到的运动数据的准确性,从而提高了导航结果的准确性。
19、在一种可能的实现方式中,通过滑窗获取当前时刻之前且与当前时刻相邻的多个采集点一一对应的多帧运动数据;利用九轴融合算法后六轴融合算法,计算设备坐标系中当前时刻的设备姿态;将当前时刻的设备姿态投影到全局坐标系中,得到当前姿态。
20、本技术实施例中,当前姿态的确定过程是一个循环过程,采用滑窗在运动数据上进行滑动,以实时获取每个时刻对应的多帧运动数据,进而确定每个时刻的当前姿态,根据每个时刻的当前姿态以及该时刻的上一时刻的朝前姿态,确定每个时刻的行走方向,以实时进行导航,提高导航精度。
21、在一种可能的实现方式中,上述预设范围的下限值大于0°;在可穿戴设备佩戴在人体的颈部、腰部或腿部的情况下,差值的绝对值为0°。也就是差值的绝对值不在预设范围内,视为头部未发生转动,将当前姿态中的航向角作为当前时刻的行走方向。本技术实施例中,可穿戴设备可以佩戴在头部、颈部、腰部或腿部等稳定部位,提高了可穿戴设备种类的多样性和丰富性。
22、第二方面,提供了一种可穿戴设备,可穿戴设备包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,计算机程序被处理器执行时实现如上述第一方面或第一方面的任意一种实现方式所涉及的导航方法。
23、在一种可能的实现方式中,可穿戴设备用于佩戴在人体的头部、颈部、腰部或腿部,可穿戴设备中设置有惯性传感器;可穿戴设备包括全球卫星导航芯片,或者,可穿戴设备与人体携带的终端设备通信连接,终端设备包括全球卫星导航芯片。
24、第三方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面或第一方面的任意一种实现方式所涉及的导航方法。
25、第四方面,本技术实施例提供一种芯片系统,该芯片系统可以应用于可穿戴设备,该芯片系统包括一个或多个处理器,该处理器用于调用计算机指令以使得该可穿戴设备执行如第一方面或第一方面的任意一种实现方式所描述的导航方法。
26、第五方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面或第一方面的任意一种实现方式所述的导航方法。
27、上述第二方面、第三方面、第四方面和第五方面所获得的技术效果与上述第一方面中对应的技术手段获得的技术效果近似,在这里不再赘述。