This paper presents a novel Kalman filter (KF) for estimating the attitude-quaternion as well as gyro random drifts from vector measurements. Employing a special manipulation on the measurement equation results in a linear pseudo-measurement equation whose error is state-dependent. Because the quaternion kinematics equation is linear, the combination of the two yields a linear KF that eliminates the usual linearization procedure and is less sensitive to initial estimation errors. General accurate expressions for the covariance matrices of the system state-dependent noises are developed. In addition, an analysis shows how to compute these covariance matrices efficiently. An adaptive version of the filter is also developed to handle modeling errors of the dynamic system noise statistics. Monte-Carlo simulations are carried out that demonstrate the efficiency of both versions of the filter. In the particular case of high initial estimation errors, a typical extended Kalman filter (EKF) fails to converge whereas the proposed filter succeeds