1.一种针对摆臂行人的行人航位推算方法,其特征在于,包括以下步骤:S1:利用惯性传感器采集行人的俯仰角序列、方位角序列、时间序列、惯性测量单元频率和定位周期,并计算步伐完成俯仰角和步伐完成手机航向;
S2:根据步伐完成俯仰角和步伐完成手机航向,计算步伐完成航向;
S3:利用惯性传感器采集行人的测量步长、俯仰角幅度和加速度振幅数据,并计算步伐完成步长;
S4:利用PDR算法,根据步伐完成航向和步伐完成步长进行航位推算;
所述步骤S2包括以下子步骤:
S21:根据步伐完成俯仰角 计算第一偏移量Δψ1和第二偏移量Δψ2,并初始化第一偏移量Δψ1和第二偏移量Δψ2;
S22:根据初始化后的第一偏移量Δψ1和第二偏移量Δψ2,计算步伐完成时人的航向γi;
S23:将步伐完成时人的航向γi保存在步伐完成航向 中;
所述步骤S21中,当步伐完成俯仰角 为完成步行时最大俯仰角时,计算第一偏移量Δψ1,其计算公式为:Δψ1=ψ1‑ψd
其中,ψ1表示第一次达到最大俯仰角时的手机航向,ψd表示初始行进方向的手机航向;
当步伐完成俯仰角 中为完成步行时最小俯仰角时,计算第二偏移量Δψ2,其计算公式为:Δψ2=ψ2‑ψd
其中,ψ2表示第一次达到最小俯仰角时的手机航向;
所述步骤S22中,若俯仰角序列中第i个俯仰角数据θi是俯仰角序列 中的最小值,则步伐完成时人的航向γi的计算公式为:γi=ψi‑Δψ2
其中,ψi表示方位角序列中第i个方位角数据,Δψ2表示第二偏移量;
否则,步伐完成时人的航向γi的计算公式为:
γi=ψi‑Δψ1
其中,Δψ1表示第一偏移量;
所述步骤S3包括以下子步骤:
S31:利用惯性传感器采集行人的测量步长、俯仰角幅度AMPθ和加速度振幅AMPa,并进行步长拟合;
S32:对步长拟合的结果进行加权处理,得到步长的初步目标函数;
S33:根据步长的初步目标函数,构建最优目标函数;
S34:根据最优目标函数,构建步长目标函数,并根据步长目标函数计算步伐完成步长;
所述步骤S31中,进行步长拟合的计算公式为:其中,SL1表示通过俯仰角振幅拟合得到的步长函数,SL2表示通过加速度振幅拟合得到的步长函数,N表示拟合阶数,k表示泰勒公式正常表达值,AMPθ表示俯仰角振幅,AMPa表示加速度振幅,ak表示拟合得到的第一系数,bk表示拟合得到的第二系数;
所述步骤S32中,步长的初步目标函数SL的表达式为:SL=A·SL1+B·SL2
其中,SL满足E(SL)=A·E(SL1)+B·E(SL2)=(A+B)·l=l,A表示第一参数,B表示第二参数,l表示真实步长,E(SL)表示步长的初步目标函数SL的平均值,E(SL1)表示通过俯仰角振幅拟合得到的步长函数SL1的平均值,E(SL2)表示通过加速度振幅拟合得到的步长函数SL2的平均值;
所述步骤S33中,最优目标函数minD(SL)的表达式为:其中, 表示第一方差, 表示第二方差;
所述步骤S34中,步长目标函数SL′的计算公式为:
2.根据权利要求1所述的针对摆臂行人的行人航位推算方法,其特征在于,所述步骤S1包括以下子步骤:S11:利用惯性传感器采集行人的俯仰角序列 方位角序列 时间序列 惯性测量单元频率f1和定位周期T;
S12:从俯仰角序列 中获取 个俯仰角数据,从时间序列 中获取 个时间数据;
S13:设置索引阈值Δi、角度阈值Δθ和时间差Δt,并进行初始化;
S14:在俯仰角序列 和方位角序列 中,标记θi取俯仰角序列 中最大值或最小值时的索引,并存入第一索引序列 中,标记ψi取方位角序列 中最大值或最小值时的索引,并存入第二索引序列 中,其中,θi表示俯仰角序列中第i个俯仰角数据,ψi表示方位角序列中第i个方位角数据;
S15:根据第一索引序列 和第二索引序列 分别在俯仰角序列 和时间序列 中确定步伐完成俯仰角 与俯仰角和方位角取得最值的时间 并去除步伐完成俯仰角 中最大俯仰角和最小俯仰角之差不超过初始化后俯仰角阈值Δθ的俯仰角数据,去除俯仰角和方位角取得最值的时间 中步距时间间隔不超过初始化后时间差Δt的时间数据;
S16:选择第二索引序列 中满足i‑Δi
S17:基于步骤S16中标记的索引,根据方位角序列 和第三索引序列 确定步伐完成手机航向