A personal navigation system including one or more sensors that sense
motion of a human and output signals corresponding to the motion of the
human and a human-motion-classification processing block that receives
sensor data from the one or more sensors. The human-motion-classification
processing block includes a Kalman filter processing block, an inertial
navigation processing block, and a motion classification processing
block. The Kalman filter processing block executes a Kalman filter that
provides corrections to the motion classification processing block. The
inertial navigation processing block receives input sensor data from the
sensors and outputs a navigation solution. The motion classification
processing block executes a motion classification algorithm that
implements a step-time threshold between two types of motion, identifies
a type of motion based on the received sensor data, and outputs a
distance-traveled estimate to the Kalman filter processing block based on
the identified type of motion.