You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
FSensor (FusionSensor) is an Android library that provides linear acceleration and rotation sensors via LowPass, Complementary and Kalman based sensor fusions. The behavior of stock
@@ -12,7 +12,7 @@ filters can be used to smooth sensor data. FSensor is designed to be easy to use
12
12
* Provides estimations of device rotation with LowPass, Complimentary and Kalman based sensor fusions
13
13
* Provides estimations of linear acceleration with Low-Pass, Complimentary and Kalman based sensor fusions
14
14
* Provides device/sensor agnostic averaging filters in the of mean, median and low-pass varieties
15
-
*
15
+
16
16
17
17
## Get FSensor
18
18
@@ -64,6 +64,7 @@ that you will find with Euclidean based rotation matrices.
A complementary filter is a frequency domain filter. In its strictest sense, the definition of a complementary filter refers to the use of two or more transfer functions, which
69
70
are mathematical complements of one another. Thus, if the data from one sensor is operated on by G(s), then the data from the other sensor is operated on by I-G(s), and the sum of
@@ -76,11 +77,22 @@ filter should act on and dt is the sample period (1/frequency) of the sensor.
Kalman filtering, also known as linear quadratic estimation (LQE), is an algorithm that uses a series of measurements observed over time, containing noise (random variations)
80
83
and other inaccuracies, and produces estimates of unknown variables that tend to be more precise than those based on a single measurement alone. More formally, the Kalman filter
81
84
operates recursively on streams of noisy input data to produce a statistically optimal estimate of the underlying system state. Like complimentary filters, Kalman filters
82
85
require inputs from the gyroscope, accelerometer, and magnetometer sensors.
A low-pass filter can isolate the gravity component of the acceleration sensor. The gravity component can be used to determine the tilt of the device. The tilt can be used to then
92
+
determine the rotation of the device. The advantage to a low-pass filter is that it is computationally efficient, requires only the acceleration sensor, and is easy to implement.
93
+
A low-pass filter is not capable of determining the heading of the device and is sensitive to orientation changes. A low-pass filter can be effective in scenarios where the device is
94
+
held in a fixed orientation and the azimuth is not required.
95
+
84
96
## Filters
85
97
86
98
FSensor implements three of the most common smoothing filters: low-pass, mean and median filters. All the filters are user configurable based on the time constant in units of seconds.
0 commit comments