步行航迹数据推算方法及装置与流程

文档序号:11806020阅读:375来源:国知局
步行航迹数据推算方法及装置与流程
本发明涉及导航定位
技术领域
,具体涉及一种步行航迹数据推算方法、装置,以及一种步行航迹跨步区间判断方法、装置。
背景技术
:GNSS(GlobalNavigationSatelliteSystem全球卫星导航系统),如北斗(BEIDOU)、GPS等,越来越多的被人们所熟知。在室外空旷区域,其定位精度通常优于5米,该精度已经满足普通生活、生产所需。但在室内、地下、建筑密集区域,通常造成GNSS信号微弱、丢失以及产生多径效应,这些因素都会造成GNSS定位不准确,甚至无法定位。INS(InertialNavigationSystem,惯性导航系统)主要由IMU(InertialMeasurementUnit,惯性测量单元)组成,通常包括以下模块:三轴陀螺仪、三轴加速度计等。其通过对惯性测量数据进行处理后,可得出对象的加速度、角速度等,进而能够计算得出速度、姿态、航向等信息。在给定初始位置的基础上,可利用IMU进行自主导航定位,可以解决GNSS系统的覆盖问题。传统IMU模块一般应用在舰船、飞机、特种装备上,其优点是测量精度高、漂移率小,能适应长时间连续工作,缺点是体积大、功耗高且价格昂贵。因此,传统IMU给行人导航定位带来了巨大的门槛。当INS应用到行人时,由于行人行动加速度很小、速度低,加之IMU器件自身测量精度与漂移的缺陷,传统INS导航处理算法会在短时间造成巨大的累积误差,无法长时间提供准确的导航定位信息。为了克服IMU器件的劣势,通常在行人导航定位领域采用PDR(PedestrianDead-Reckoning,行人航迹推算)来进行处理。行人航迹推算,是通过IMU检测判断行人跨步动作、估计步长、检测行动航向以实现行人的导航定位。由于IMU器件是一般是安装于可穿戴设备或移动终端内,在行人的行走过程中会由于人体晃动或其他动作产生噪声,现有的行人航迹推算方法并不能有效消除这些噪声的影响,跨步检测和航迹推算的准确度和精度都较差。技术实现要素:针对现有技术中的缺陷,本发明提供一种步行航迹数据推算方法及装置,以解决现有步行航迹数据推算方法跨步检测和航迹推算的准确度和精度都较差的问题,提高航迹推算精度。第一方面,本发明提供的一种步行航迹数据推算方法,包括:将从加速度计获取的载体坐标系下的Z轴加速度信号转换为大地坐标系下的Z轴加速度信号;对所述大地坐标系下的Z轴加速度信号进行滤波,获得滤波后的Z轴加速度信号;对滤波后的所述Z轴加速度信号进行过零检测,获得多个加速度过零点;将所述加速度过零点对应到滤波前的所述Z轴加速度信号中,在所述加速度过零点的区间内检出滤波前的所述Z轴加速度信号的峰值和谷值,根据所述峰值和谷值确定目标对象的跨步区间,记录对应所述跨步区间的跨步时间;根据滤波前的所述Z轴加速度信号计算所述目标对象的步长;获取所述目标对象的航向值;以所述目标对象的跨步时间、步长和航向值为递推参数,采用预设的递推算法推算所述目标对象的步行航迹数据。可选的,所述根据滤波前的所述Z轴加速度信号计算所述目标对象的步长,包括:根据滤波前的所述Z轴加速度信号的峰值和谷值,对相邻的峰值和谷值之间的Z轴加速度进行积分,获得目标对象在跨步时的垂向重心偏移量;采用预设的步长计算模型,根据所述垂向重心偏移量计算目标对象的步长。可选的,所述采用预设的步长计算模型,根据所述垂向重心偏移量计算目标对象的步长,包括:采用以下步长计算模型计算目标对象的步长:l=2hδ-δ2+s1]]>式中,l表示步长,h表示目标对象的身高,δ表示垂向重心偏移量,s1表示目标对象的一只脚的长度。可选的,所述采用预设的步长计算模型,根据所述垂向重心偏移量计算目标对象的步长,包括:采用以下步长计算模型计算目标对象的步长:l=2hδ′-δ′2]]>其中,δ′=δff=δdav×m]]>式中,l表示步长,h表示目标对象的身高,δ表示垂向重心偏移量,δ′表示修正后的垂向重心偏移量,f表示修正系数,dav表示一步之内的平均位移,m表示与目标对象的身高相关的系数。可选的,所述获取所述目标对象的航向值,包括:将从陀螺仪获取的载体坐标系下的Z轴角速度信号转换为大地坐标系下的Z轴角速度信号;根据所述Z轴角速度信号,对Z轴角速度进行积分获得目标对象的角度变化值;根据目标对象的历史航向值和所述角度变化值计算目标对象的航向值。可选的,所述以所述目标对象的跨步时间、步长和航向值为递推参数,采用预设的递推算法推算所述目标对象的步行航迹数据,包括:以所述目标对象的跨步时间、步长和航向值为递推参数,采用预设的含有卡尔曼滤波的递推算法推算所述目标对象的步行航迹数据。可选的,所述以所述目标对象的跨步时间、步长和航向值为递推参数,采用预设的含有卡尔曼滤波的递推算法推算所述目标对象的步行航迹数据,包括:建立运动模型:x=xyvxvy]]>Fk=1Δtk1Δtkϵkϵk=IΔtkI0ϵkI]]>Qk=000Δtk2σa2I=000σv2(1-ϵk2)I]]>式中,x表示步行航迹数据的状态量,x、y表示目标对象在横向和纵向的坐标值,vx、vy表示目标对象在横向和纵向的移动速度分量;Fk表示第k个跨步对应的状态转移矩阵,Δtk表示第k个跨步对应的跨步时间,εk为第k个跨步对应的指数参数,I表示单位矩阵;Qk表示动态扰动协方差矩阵,σa2表示运动加速度的均方差,σv2表示运动速度的均方差,为常数;其中,ϵk=exp(-Δtkτ)]]>σa2=σv2(1-exp(-2Δtk/τ))/Δtk2式中,τ表示与运动速度相关的时间常数;建立观测模型:zk=xk-1+lkcosθkyk-1+lksinθklkcosθk/Δtklksinθk/Δtk]]>Rk=σl2I00σl2/Δtk2I]]>式中,zk表示步行航迹数据的观测量,xk-1、yk-1表示目标对象在第k-1个跨步对应的横向和纵向的坐标值,lk表示目标对象在第k个跨步对应的步长,θk表示目标对象在第k个跨步对应的航向值,Δtk表示第k个跨步对应的跨步时间;Rk表示观测误差,σl2表示步长的均方差,I表示单位矩阵;预测步行航迹数据的状态估计和协方差:x^k=Fkxk-1=xk-1+vxΔtkyk-1+vyΔtkϵkvxϵkvy]]>P^k=FkPk-1FkT+Qk]]>式中,表示状态估计,表示协方差,xk-1表示第k-1个跨步对应的状态量,Pk-1表示第k-1个跨步对应的协方差,表示Fk的转置矩阵;计算观测量残差和残差协方差:y~k=zk-x^k]]>Sk=HkP^kHkT+Rk]]>式中,表示第k个跨步对应的观测量残差;Sk表示残差协方差,Hk表示观测矩阵,表示观测矩阵Hk的转置矩阵;计算最优卡尔曼增益:Kk=P^kHkTSk-1]]>式中,Kk表示第k个跨步对应的最优卡尔曼增益,表示残差协方差Sk的逆矩阵;计算修正后的状态估计:xk=x^k+Kky~k]]>式中,xk表示推算获得的目标对象的步行航迹数据,表示对步行航迹数据的预测状态估计,Kk表示最优卡尔曼增益,表示对步行航迹数据的观测量残差。第二方面,本发明提供的一种步行航迹数据推算装置,包括:加速度坐标转换模块,用于将从加速度计获取的载体坐标系下的Z轴加速度信号转换为大地坐标系下的Z轴加速度信号;加速度滤波模块,用于对所述大地坐标系下的Z轴加速度信号进行滤波,获得滤波后的Z轴加速度信号;过零检测模块,用于对滤波后的所述Z轴加速度信号进行过零检测,获得多个加速度过零点;跨步检测模块,用于将所述加速度过零点对应到滤波前的所述Z轴加速度信号中,在所述加速度过零点的区间内检出滤波前的所述Z轴加速度信号的峰值和谷值,根据所述峰值和谷值确定目标对象的跨步区间,记录对应所述跨步区间的跨步时间;步长计算模块,用于根据滤波前的所述Z轴加速度信号计算所述目标对象的步长;航向值获取模块,用于获取所述目标对象的航向值;航迹数据推算模块,用于以所述目标对象的跨步时间、步长和航向值为递推参数,采用预设的递推算法推算所述目标对象的步行航迹数据。可选的,所述步长计算模块,包括:重心偏移量计算单元,用于根据滤波前的所述Z轴加速度信号的峰值和谷值,对相邻的峰值和谷值之间的Z轴加速度进行积分,获得目标对象在跨步时的垂向重心偏移量;步长计算单元,用于采用预设的步长计算模型,根据所述垂向重心偏移量计算目标对象的步长。可选的,所述步长计算单元,包括:第一步长计算子单元,用于采用以下步长计算模型计算目标对象的步长:l=2hδ-δ2+s1]]>式中,l表示步长,h表示目标对象的身高,δ表示垂向重心偏移量,s1表示目标对象的一只脚的长度。可选的,所述步长计算单元,包括:第二步长计算子单元,用于采用以下步长计算模型计算目标对象的步长:l=2hδ′-δ′2]]>其中,δ′=δff=δdav×m]]>式中,l表示步长,h表示目标对象的身高,δ表示垂向重心偏移量,δ′表示修正后的垂向重心偏移量,f表示修正系数,dav表示一步之内的平均位移,m表示与目标对象的身高相关的系数。可选的,所述航向值获取模块,包括:角速度信号转换单元,用于将从陀螺仪获取的载体坐标系下的Z轴角速度信号转换为大地坐标系下的Z轴角速度信号;角度变化值计算单元,用于根据所述Z轴角速度信号,对Z轴角速度进行积分获得目标对象的角度变化值;航向值计算单元,用于根据目标对象的历史航向值和所述角度变化值计算目标对象的航向值。可选的,所述航迹数据推算模块,包括:卡尔曼滤波推算单元,用于以所述目标对象的跨步时间、步长和航向值为递推参数,采用预设的含有卡尔曼滤波的递推算法推算所述目标对象的步行航迹数据。可选的,所述卡尔曼滤波推算单元,包括:运动模型建立子单元,用于建立运动模型:x=xyvxvy]]>Fk=1Δtk1Δtkϵkϵk=IΔtkI0ϵkI]]>Qk=000Δtk2σa2I=000σv2(1-ϵk2)I]]>式中,x表示步行航迹数据的状态量,x、y表示目标对象在横向和纵向的坐标值,vx、vy表示目标对象在横向和纵向的移动速度分量;Fk表示第k个跨步对应的状态转移矩阵,Δtk表示第k个跨步对应的跨步时间,εk为第k个跨步对应的指数参数,I表示单位矩阵;Qk表示动态扰动协方差矩阵,σa2表示运动加速度的均方差,σv2表示运动速度的均方差,为常数;其中,ϵk=exp(-Δtkτ)]]>σa2=σv2(1-exp(-2Δtk/τ))/Δtk2式中,τ表示与运动速度相关的时间常数;观测模型建立子单元,用于建立观测模型:zk=xk-1+lkcosθkyk-1+lksinθklkcosθk/Δtklksinθk/Δtk]]>Rk=σl2I00σl2/Δtk2I]]>式中,zk表示步行航迹数据的观测量,xk-1、yk-1表示目标对象在第k-1个跨步对应的横向和纵向的坐标值,lk表示目标对象在第k个跨步对应的步长,θk表示目标对象在第k个跨步对应的航向值,Δtk表示第k个跨步对应的跨步时间;Rk表示观测误差,σl2表示步长的均方差,I表示单位矩阵;状态估计子单元,用于预测步行航迹数据的状态估计和协方差:x^k=Fkxk-1=xk-1+vxΔtkyk-1+vyΔtkϵkvxϵkvy]]>P^k=FkPk-1FkT+Qk]]>式中,表示状态估计,表示协方差,xk-1表示第k-1个跨步对应的状态量,Pk-1表示第k-1个跨步对应的协方差,表示Fk的转置矩阵;残差计算子单元,用于计算观测量残差和残差协方差:y~k=zk-x^k]]>Sk=HkP^kHkT+Rk]]>式中,表示第k个跨步对应的观测量残差;Sk表示残差协方差,Hk表示观测矩阵,表示观测矩阵Hk的转置矩阵;卡尔曼增益计算子单元,用于计算最优卡尔曼增益:Kk=P^kHkTSk-1]]>式中,Kk表示第k个跨步对应的最优卡尔曼增益,表示残差协方差Sk的逆矩阵;状态修正子单元,用于计算修正后的状态估计:xk=x^k+Kky~k]]>式中,xk表示推算获得的目标对象的步行航迹数据,表示对步行航迹数据的预测状态估计,Kk表示最优卡尔曼增益,表示对步行航迹数据的观测量残差。第三方面,本发明提供的一种步行航迹跨步区间判断方法,包括:将从加速度计获取的载体坐标系下的Z轴加速度信号转换为大地坐标系下的Z轴加速度信号;对所述大地坐标系下的Z轴加速度信号进行滤波,获得滤波后的Z轴加速度信号;对滤波后的所述Z轴加速度信号进行过零检测,获得多个加速度过零点;将所述加速度过零点对应到滤波前的所述Z轴加速度信号中,在所述加速度过零点的区间内检出滤波前的所述Z轴加速度信号的峰值和谷值,根据所述峰值和谷值确定目标对象的跨步区间。第四方面,本发明提供的一种步行航迹跨步区间判断装置,包括:加速度坐标转换模块,用于将从加速度计获取的载体坐标系下的Z轴加速度信号转换为大地坐标系下的Z轴加速度信号;加速度滤波模块,用于对所述大地坐标系下的Z轴加速度信号进行滤波,获得滤波后的Z轴加速度信号;过零检测模块,用于对滤波后的所述Z轴加速度信号进行过零检测,获得多个加速度过零点;跨步检测模块,用于将所述加速度过零点对应到滤波前的所述Z轴加速度信号中,在所述加速度过零点的区间内检出滤波前的所述Z轴加速度信号的峰值和谷值,根据所述峰值和谷值确定目标对象的跨步区间。由上述技术方案可知,本发明提供的一种步行航迹数据推算方法,首先将从加速度计获取的载体坐标系下的Z轴加速度信号转换为大地坐标系下的Z轴加速度信号;然后对所述大地坐标系下的Z轴加速度信号进行滤波,获得滤波后的Z轴加速度信号;再对滤波后的所述Z轴加速度信号进行过零检测,获得多个加速度过零点;接下来,将所述加速度过零点对应到滤波前的所述Z轴加速度信号中,在所述加速度过零点的区间内检出滤波前的所述Z轴加速度信号的峰值和谷值,根据所述峰值和谷值确定目标对象的跨步区间,记录对应所述跨步区间的跨步时间;然后根据滤波前的所述Z轴加速度信号计算所述目标对象的步长;另外,获取所述目标对象的航向值;最后以所述目标对象的跨步时间、步长和航向值为递推参数,采用预设的递推算法推算所述目标对象的步行航迹数据。本发明利用过零检测和峰值检测相结合的方式进行跨步区间的检测,在消除由于人体晃动或其他动作产生的噪声的同时,可有效减少错检和漏检的情况,从而提高跨步检测的准确性;基于上述跨步检测的技术方案,以所述目标对象的跨步时间、步长和航向值为递推参数进行步行航迹数据的推算,可以有效提高步行航迹数据推算的准确度和精度。基于相同的发明构思,本发明还提供一种步行航迹跨步区间判断方法,首先将从加速度计获取的载体坐标系下的Z轴加速度信号转换为大地坐标系下的Z轴加速度信号;然后对所述大地坐标系下的Z轴加速度信号进行滤波,获得滤波后的Z轴加速度信号;再对滤波后的所述Z轴加速度信号进行过零检测,获得多个加速度过零点;最后将所述加速度过零点对应到滤波前的所述Z轴加速度信号中,在所述加速度过零点的区间内检出滤波前的所述Z轴加速度信号的峰值和谷值,根据所述峰值和谷值确定目标对象的跨步区间。本方法可以有效提高跨步检测的准确性,应用于计步、航迹推算等具体应用时,可有效提高计步、航迹推算的准确性。附图说明为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍。在所有附图中,类似的元件或部分一般由类似的附图标记标识。附图中,各元件或部分并不一定按照实际的比例绘制。图1示出了本发明第一实施例所提供的一种步行航迹数据推算方法的流程图;图2示出了本发明第二实施例所提供的一种步行航迹数据推算装置的示意图;图3示出了本发明第三实施例所提供的一种步行航迹跨步区间判断方法的流程图;图4示出了本发明第四实施例所提供的一种步行航迹跨步区间判断装置的示意图。具体实施方式下面将结合附图对本发明技术方案的实施例进行详细的描述。以下实施例仅用于更加清楚地说明本发明的技术方案,因此只是作为示例,而不能以此来限制本发明的保护范围。需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本发明所属领域技术人员所理解的通常意义。图1示出了本发明第一实施例所提供的一种步行航迹数据推算方法的流程图。如图1所示,本发明第一实施例提供的一种步行航迹数据推算方法包括以下步骤:步骤S101:将从加速度计获取的载体坐标系下的Z轴加速度信号转换为大地坐标系下的Z轴加速度信号。本发明实施例中,用户(目标对象)出行时随身携带有移动智能终端,如智能手环、智能手机等,该移动智能终端中安装有加速度计(单轴加速度计或三轴加速度计),所述加速度计会根据用户的动作感应产生加速度信号,本发明实施例需要使用其中Z轴方向的加速度信号进行计算,由于该加速度信号是基于加速度计自身的载体坐标系产生的,因此,本步骤需要将从加速度计获取的载体坐标系下的Z轴加速度信号转换为大地坐标系下的Z轴加速度信号。坐标系转换方法可采用现有技术中的任一种坐标系转换方法,本发明不做具体限定,其均在本发明的保护范围之内。步骤S102:对所述大地坐标系下的Z轴加速度信号进行滤波,获得滤波后的Z轴加速度信号。由于用户在行走过程中会发生晃动或做一些其他的动作,对加速度计产生的Z轴加速度信号产生扰动和噪音,因此,本步骤,对所述大地坐标系下的Z轴加速度信号进行滤波,以消除噪声的影响,获得滤波后的Z轴加速度信号。具体实施时,可以采用低通滤波器等方式实现,本发明不做具体限定,其均在本发明的保护范围之内。步骤S103:对滤波后的所述Z轴加速度信号进行过零检测,获得多个加速度过零点。在用户的行走过程中,用户的重心会上下波动,因此,所述Z轴加速度信号是波动曲线,本步骤,可以利用过零检测方法对滤波后的所述Z轴加速度信号进行过零检测,获得多个加速度过零点。步骤S104:将所述加速度过零点对应到滤波前的所述Z轴加速度信号中,在所述加速度过零点的区间内检出滤波前的所述Z轴加速度信号的峰值和谷值(峰值检测),根据所述峰值和谷值确定目标对象的跨步区间,记录对应所述跨步区间的跨步时间。由于低通滤波后的垂向加速度曲线很平滑,但是有相位变化,幅值也发生变化,为了保证跨步检测的准确性,在本发明实施例中,在确定加速度过零点后,将加速度过零点对应到滤波前的Z轴加速度信号中,从而以滤波前的Z轴加速度信号为基准进行跨步区间的判断,在连续的三个过零点之间出现一个峰值和一个谷值为完成一个跨步,记为一个跨步区间,该跨步检测方法具有较高的检测精度。步骤S105:根据滤波前的所述Z轴加速度信号计算所述目标对象的步长。行人的行进过程是一个周期性的过程,在一个步态周期内人体重心的垂向位移也完成一个周期性的变化。人体重心的垂向位移变化可近似为正弦信号,位移的两次微分即为加速度信号,由于正弦信号的微分后不会改变其基本的形状,所以垂向位移的变化(即垂向重心偏移量)可由垂向加速度来求得。利用垂向重心偏移量与步长的对应关系,即可计算出相应的步长。需要说明的是,由于低通滤波后的垂向加速度曲线很平滑,但是有相位变化,幅值也发生变化,为保证步长模型的精度,本发明实施例中,根据滤波前的所述Z轴加速度信号计算所述目标对象的步长。在本发明提供的一个实施例中,所述根据滤波前的所述Z轴加速度信号计算所述目标对象的步长,包括:根据滤波前的所述Z轴加速度信号的峰值和谷值,对相邻的峰值和谷值之间的Z轴加速度进行积分,获得目标对象在跨步时的垂向重心偏移量;采用预设的步长计算模型,根据所述垂向重心偏移量计算目标对象的步长。其中,步长计算模型有多种,在本发明提供的一个实施例中,所述采用预设的步长计算模型,根据所述垂向重心偏移量计算目标对象的步长,包括:采用以下步长计算模型计算目标对象的步长:l=2hδ-δ2+s1]]>式中,l表示步长,h表示目标对象的身高,δ表示垂向重心偏移量,s1表示目标对象的一只脚的长度。上述实施例中的补偿计算模型是以人体运动过程中重心的运动规律为基础的,考虑了目标对象的身高、脚长等因素的影响,因此,对步长的估算精度较高。在本发明提供的另一个实施例中,所述采用预设的步长计算模型,根据所述垂向重心偏移量计算目标对象的步长,包括:采用以下步长计算模型计算目标对象的步长:l=2hδ′-δ′2]]>其中,δ′=δff=δdav×m]]>式中,l表示步长,h表示目标对象的身高,δ表示垂向重心偏移量,δ′表示修正后的垂向重心偏移量,f表示修正系数,dav表示一步之内的平均位移,m表示与目标对象的身高相关的系数,例如其中,低通滤波后的垂向加速度曲线很平滑,但是有相位变化,幅值也发生变化,为保证步长模型的精度,加速度极值在原始的滤波前的所述Z轴加速度信号中选取,在跨步检测过程中检测到的加速度过零点区间内找到对应区间内的原始的滤波前的Z轴加速度信号的极值。在一个步态周期的极大值和极小值之间进行双重积分,得到垂向重心偏移量。上述实施例中,引入了修正系数f进行修正,经试验证实,也具有较高的步长估算精度。步骤S106:获取所述目标对象的航向值。本发明实施例需要获取目标对象的航向值,所述航向角可以直接利用罗盘输出的航向作为航向值,在室内环境下,磁场易受干扰,所以罗盘输出角度会有一定偏差,因此利用罗盘输出的航向作为航向值准确度较差。在本发明提供的一个实施例中,所述获取所述目标对象的航向值,包括:将从陀螺仪获取的载体坐标系下的Z轴角速度信号转换为大地坐标系下的Z轴角速度信号;根据所述Z轴角速度信号,对Z轴角速度进行积分获得目标对象的角度变化值;根据目标对象的历史航向值和所述角度变化值计算目标对象的航向值。步骤S107:以所述目标对象的跨步时间、步长和航向值为递推参数,采用预设的递推算法推算所述目标对象的步行航迹数据。在获取到所述目标对象的跨步时间、步长和航向值后,即可据此采用递推算法推算出目标对象的步行航迹数据。本步骤,可以采用传统的递推方法进行推算,例如,定义t0时刻为起始时刻,则在t0时刻行人所在的位置的坐标S0(N0,E0)即为起始位置,从t0到t1时刻,行人行进距离l1(步长),行进位移与坐标系N轴的夹角为θ1,类推下去i时刻行人所在位置坐标Si(Ni,Ei)为:Ni=N0+Σn=1ilnsinθnEi=E0+Σn=1ilncosθn]]>考虑到,在推算过程中,步长、航向值等可能会产生误差,进而降低航迹推算的准确性,因此,在本发明提供的一个实施例中,所述以所述目标对象的跨步时间、步长和航向值为递推参数,采用预设的递推算法推算所述目标对象的步行航迹数据,包括:以所述目标对象的跨步时间、步长和航向值为递推参数,采用预设的含有卡尔曼滤波的递推算法推算所述目标对象的步行航迹数据。利用卡尔曼滤波在运动过程中修正步长、航向值等的误差,使步长、航向值的精度更高,以提高最终的航迹推算精度、定位精度等。在本发明提供的一个实施例中,所述以所述目标对象的跨步时间、步长和航向值为递推参数,采用预设的含有卡尔曼滤波的递推算法推算所述目标对象的步行航迹数据,包括:建立运动模型:x=xyvxvy]]>Fk=1Δtk1Δtkϵkϵk=IΔtkI0ϵkI]]>Qk=000Δtk2σa2I=000σv2(1-ϵk2)I]]>式中,x表示步行航迹数据的状态量,x、y表示目标对象在横向和纵向的坐标值,vx、vy表示目标对象在横向和纵向的移动速度分量;Fk表示第k个跨步对应的状态转移矩阵,Δtk表示第k个跨步对应的跨步时间,εk为第k个跨步对应的指数参数,I表示单位矩阵;Qk表示动态扰动协方差矩阵,σa2表示运动加速度的均方差,σv2表示运动速度的均方差,为常数;其中,ϵk=exp(-Δtkτ)]]>σa2=σv2(1-exp(-2Δtk/τ))/Δtk2式中,τ表示与运动速度相关的时间常数;建立观测模型:zk=xk-1+lkcosθkyk-1+lksinθklkcosθk/Δtklksinθk/Δtk]]>Rk=σl2I00σl2/Δtk2I]]>式中,zk表示步行航迹数据的观测量,xk-1、yk-1表示目标对象在第k-1个跨步对应的横向和纵向的坐标值,lk表示目标对象在第k个跨步对应的步长,θk表示目标对象在第k个跨步对应的航向值,Δtk表示第k个跨步对应的跨步时间;Rk表示观测误差,σl2表示步长的均方差,I表示单位矩阵;预测步行航迹数据的状态估计和协方差:x^k=Fkxk-1=xk-1+vxΔtkyk-1+vyΔtkϵkvxϵkvy]]>P^k=FkPk-1FkT+Qk]]>式中,表示状态估计,表示协方差,xk-1表示第k-1个跨步对应的状态量,Pk-1表示第k-1个跨步对应的协方差,表示Fk的转置矩阵;计算观测量残差和残差协方差:y~k=zk-x^k]]>Sk=HkP^kHkT+Rk]]>式中,表示第k个跨步对应的观测量残差;Sk表示残差协方差,Hk表示观测矩阵,表示观测矩阵Hk的转置矩阵;计算最优卡尔曼增益:Kk=P^kHkTSk-1]]>式中,Kk表示第k个跨步对应的最优卡尔曼增益,表示残差协方差Sk的逆矩阵;计算修正后的状态估计:xk=x^k+Kky~k]]>式中,xk表示推算获得的目标对象的步行航迹数据,表示对步行航迹数据的预测状态估计,Kk表示最优卡尔曼增益,表示对步行航迹数据的观测量残差。在具体运算过程中,可以引入一些辅助参数进行计算,以提高运算效率,例如:P^k=FkPk-1FkT+Qk=p1^Ip2^Ip3^Ip4^I]]>其中,p1^=p1+Δtkp2+Δtkp3+Δtk2p4]]>p2^=ϵkp2+ϵkΔtkp4]]>p3^=ϵkp3+ϵkΔtkp4]]>p4^=ϵk2p4+σv2(1-ϵk2)]]>残差协方差:逆矩阵最优卡尔曼增益:其中修正的状态估计:修正的估计协方差:其中至此,通过步骤S101至步骤S107,完成了本发明第一实施例所提供的一种步行航迹数据推算方法的流程。本发明利用过零检测和峰值检测相结合的方式进行跨步区间的检测,在消除由于人体晃动或其他动作产生的噪声的同时,可有效减少错检和漏检的情况,从而提高跨步检测的准确性;基于上述跨步检测的技术方案,以所述目标对象的跨步时间、步长和航向值为递推参数进行步行航迹数据的推算,可以有效提高步行航迹数据推算的准确度和精度。在上述的第一实施例中,提供了一种步行航迹数据推算方法,与之相对应的,本申请还提供一种步行航迹数据推算装置。请参考图2,其为本发明第二实施例提供的一种步行航迹数据推算装置的示意图。由于装置实施例基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。下述描述的装置实施例仅仅是示意性的。本发明第二实施例提供的一种步行航迹数据推算装置,包括:加速度坐标转换模块101,用于将从加速度计获取的载体坐标系下的Z轴加速度信号转换为大地坐标系下的Z轴加速度信号;加速度滤波模块102,用于对所述大地坐标系下的Z轴加速度信号进行滤波,获得滤波后的Z轴加速度信号;过零检测模块103,用于对滤波后的所述Z轴加速度信号进行过零检测,获得多个加速度过零点;跨步检测模块104,用于将所述加速度过零点对应到滤波前的所述Z轴加速度信号中,在所述加速度过零点的区间内检出滤波前的所述Z轴加速度信号的峰值和谷值,根据所述峰值和谷值确定目标对象的跨步区间,记录对应所述跨步区间的跨步时间;步长计算模块105,用于根据滤波前的所述Z轴加速度信号计算所述目标对象的步长;航向值获取模块106,用于获取所述目标对象的航向值;航迹数据推算模块107,用于以所述目标对象的跨步时间、步长和航向值为递推参数,采用预设的递推算法推算所述目标对象的步行航迹数据。在本发明提供的一个实施例中,所述步长计算模块105,包括:重心偏移量计算单元,用于根据滤波前的所述Z轴加速度信号的峰值和谷值,对相邻的峰值和谷值之间的Z轴加速度进行积分,获得目标对象在跨步时的垂向重心偏移量;步长计算单元,用于采用预设的步长计算模型,根据所述垂向重心偏移量计算目标对象的步长。在本发明提供的一个实施例中,所述步长计算单元,包括:第一步长计算子单元,用于采用以下步长计算模型计算目标对象的步长:l=2hδ-δ2+s1]]>式中,l表示步长,h表示目标对象的身高,δ表示垂向重心偏移量,s1表示目标对象的一只脚的长度。在本发明提供的一个实施例中,所述步长计算单元,包括:第二步长计算子单元,用于采用以下步长计算模型计算目标对象的步长:l=2hδ′-δ′2]]>其中,δ′=δff=δdav×m]]>式中,l表示步长,h表示目标对象的身高,δ表示垂向重心偏移量,δ′表示修正后的垂向重心偏移量,f表示修正系数,dav表示一步之内的平均位移,m表示与目标对象的身高相关的系数。在本发明提供的一个实施例中,所述航向值获取模块106,包括:角速度信号转换单元,用于将从陀螺仪获取的载体坐标系下的Z轴角速度信号转换为大地坐标系下的Z轴角速度信号;角度变化值计算单元,用于根据所述Z轴角速度信号,对Z轴角速度进行积分获得目标对象的角度变化值;航向值计算单元,用于根据目标对象的历史航向值和所述角度变化值计算目标对象的航向值。在本发明提供的一个实施例中,所述航迹数据推算模块107,包括:卡尔曼滤波推算单元,用于以所述目标对象的跨步时间、步长和航向值为递推参数,采用预设的含有卡尔曼滤波的递推算法推算所述目标对象的步行航迹数据。在本发明提供的一个实施例中,所述卡尔曼滤波推算单元,包括:运动模型建立子单元,用于建立运动模型:x=xyvxvy]]>Fk=1Δtk1Δtkϵkϵk=IΔtkI0ϵkI]]>Qk=000Δtk2σa2I=000σv2(1-ϵk2)I]]>式中,x表示步行航迹数据的状态量,x、y表示目标对象在横向和纵向的坐标值,vx、vy表示目标对象在横向和纵向的移动速度分量;Fk表示第k个跨步对应的状态转移矩阵,Δtk表示第k个跨步对应的跨步时间,εk为第k个跨步对应的指数参数,I表示单位矩阵;Qk表示动态扰动协方差矩阵,σa2表示运动加速度的均方差,σv2表示运动速度的均方差,为常数;其中,ϵk=exp(-Δtkτ)]]>σa2=σv2(1-exp(-2Δtk/τ))/Δtk2式中,τ表示与运动速度相关的时间常数;观测模型建立子单元,用于建立观测模型:zk=xk-1+lkcosθkyk-1+lksinθklkcosθk/Δtklksinθk/Δtk]]>Rk=σl2I00σl2/Δtk2I]]>式中,zk表示步行航迹数据的观测量,xk-1、yk-1表示目标对象在第k-1个跨步对应的横向和纵向的坐标值,lk表示目标对象在第k个跨步对应的步长,θk表示目标对象在第k个跨步对应的航向值,Δtk表示第k个跨步对应的跨步时间;Rk表示观测误差,σl2表示步长的均方差,I表示单位矩阵;状态估计子单元,用于预测步行航迹数据的状态估计和协方差:x^k=Fkxk-1=xk-1+vxΔtkyk-1+vyΔtkϵkvxϵkvy]]>P^k=FkPk-1FkT+Qk]]>式中,表示状态估计,表示协方差,xk-1表示第k-1个跨步对应的状态量,Pk-1表示第k-1个跨步对应的协方差,表示Fk的转置矩阵;残差计算子单元,用于计算观测量残差和残差协方差:y~k=zk-x^k]]>Sk=HkP^kHkT+Rk]]>式中,表示第k个跨步对应的观测量残差;Sk表示残差协方差,Hk表示观测矩阵,表示观测矩阵Hk的转置矩阵;卡尔曼增益计算子单元,用于计算最优卡尔曼增益:Kk=P^kHkTSk-1]]>式中,Kk表示第k个跨步对应的最优卡尔曼增益,表示残差协方差Sk的逆矩阵;状态修正子单元,用于计算修正后的状态估计:xk=x^k+Kky~k]]>式中,xk表示推算获得的目标对象的步行航迹数据,表示对步行航迹数据的预测状态估计,Kk表示最优卡尔曼增益,表示对步行航迹数据的观测量残差。以上,为本发明第二实施例提供的一种步行航迹数据推算装置的实施例说明。本发明提供的一种步行航迹数据推算装置与上述步行航迹数据推算方法出于相同的发明构思,具有相同的有益效果,此处不再赘述。本发明还提供一种步行航迹跨步区间判断方法,请参考图3,图3示出了本发明第三实施例所提供的一种步行航迹跨步区间判断方法的流程图。如图3所示,本发明第三实施例提供的一种步行航迹跨步区间判断方法包括以下步骤:步骤S201:将从加速度计获取的载体坐标系下的Z轴加速度信号转换为大地坐标系下的Z轴加速度信号。本发明实施例中,用户(目标对象)出行时随身携带有移动智能终端,如智能手环、智能手机等,该移动智能终端中安装有加速度计(单轴加速度计或三轴加速度计),所述加速度计会根据用户的动作感应产生加速度信号,本发明实施例需要使用其中Z轴方向的加速度信号进行计算,由于该加速度信号是基于加速度计自身的载体坐标系产生的,因此,本步骤需要将从加速度计获取的载体坐标系下的Z轴加速度信号转换为大地坐标系下的Z轴加速度信号。坐标系转换方法可采用现有技术中的任一种坐标系转换方法,本发明不做具体限定,其均在本发明的保护范围之内。步骤S202:对所述大地坐标系下的Z轴加速度信号进行滤波,获得滤波后的Z轴加速度信号。由于用户在行走过程中会发生晃动或做一些其他的动作,对加速度计产生的Z轴加速度信号产生扰动和噪音,因此,本步骤,对所述大地坐标系下的Z轴加速度信号进行滤波,以消除噪声的影响,获得滤波后的Z轴加速度信号。具体实施时,可以采用低通滤波器等方式实现,本发明不做具体限定,其均在本发明的保护范围之内。步骤S203:对滤波后的所述Z轴加速度信号进行过零检测,获得多个加速度过零点。在用户的行走过程中,用户的重心会上下波动,因此,所述Z轴加速度信号是波动曲线,本步骤,可以利用过零检测方法对滤波后的所述Z轴加速度信号进行过零检测,获得多个加速度过零点。步骤S204:将所述加速度过零点对应到滤波前的所述Z轴加速度信号中,在所述加速度过零点的区间内检出滤波前的所述Z轴加速度信号的峰值和谷值(峰值检测),根据所述峰值和谷值确定目标对象的跨步区间。由于低通滤波后的垂向加速度曲线很平滑,但是有相位变化,幅值也发生变化,为了保证跨步检测的准确性,在本发明实施例中,在确定加速度过零点后,将加速度过零点对应到滤波前的Z轴加速度信号中,从而以滤波前的Z轴加速度信号为基准进行跨步区间的判断,在连续的三个过零点之间出现一个峰值和一个谷值为完成一个跨步,记为一个跨步区间,该跨步检测方法具有较高的检测精度。至此,通过步骤S201至步骤S204,完成了本发明第三实施例所提供的一种步行航迹数据推算方法的流程。本发明可以有效提高跨步检测的准确性,可以作为计步、航迹推算的基础,当应用于计步、航迹推算等具体应用时,可有效提高计步、航迹推算的准确性。在上述的第三实施例中,提供了一种步行航迹跨步区间判断方法,与之相对应的,本申请还提供一种步行航迹跨步区间判断装置。请参考图4,其为本发明第四实施例提供的一种步行航迹跨步区间判断装置的示意图。由于装置实施例基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。下述描述的装置实施例仅仅是示意性的。本发明第四实施例提供的一种步行航迹跨步区间判断装置,包括:加速度坐标转换模块201,用于将从加速度计获取的载体坐标系下的Z轴加速度信号转换为大地坐标系下的Z轴加速度信号;加速度滤波模块202,用于对所述大地坐标系下的Z轴加速度信号进行滤波,获得滤波后的Z轴加速度信号;过零检测模块203,用于对滤波后的所述Z轴加速度信号进行过零检测,获得多个加速度过零点;跨步检测模块204,用于将所述加速度过零点对应到滤波前的所述Z轴加速度信号中,在所述加速度过零点的区间内检出滤波前的所述Z轴加速度信号的峰值和谷值,根据所述峰值和谷值确定目标对象的跨步区间。本发明提供的一种步行航迹跨步区间判断装置与上述步行航迹跨步区间判断方法出于相同的发明构思,具有相同的有益效果,此处不再赘述。在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。需要说明的是,附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。本发明实施例所提供的步行航迹数据推算装置、步行航迹跨步区间判断装置可以是计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1