This document presents an adaptive Kalman filter for estimating human body orientation using micro-sensors. The filter uses quaternions to represent orientation to avoid singularities. It includes motion acceleration in the state vector to compensate for interference of body motion on gravity measurements. Additionally, it adapts the process noise covariance based on sensor signal variations to optimize performance under human motion. Experiments showed this algorithm had less error than existing methods and that including motion compensation and adaptive mechanisms improved accuracy of human motion capture.