针对传统波峰检测法的步态识别率低以及普适性和稳定性较差等问题,提出改进FSM步态检测的行人航位推算方法。该方法关注当前的步伐状态,将一个步态周期划分为5种状态并引入峰值阈值限制,从用户不同运动状态和手机模态进行实验分析。结果表明,该算法不但具有较高的步态识别准确率,而且可减小航位推算时间累积误差,具有一定的可靠性和稳定性,能够满足室内定位需求。