Available Filters
OpenTrack provides several filtering algorithms, each optimized for different use cases:Alpha Spectrum
Advanced adaptive filter with multi-head composition and motion prediction
EWMA
Exponentially weighted moving average with dynamic noise detection
Hamilton
Quaternion-based filter using Slerp interpolation for rotations
Accela
Spline-based acceleration filter for velocity-dependent smoothing
Accela + Hamilton
Combined filter using Accela smoothing with Hamilton’s quaternion rotations
None
No filtering - raw tracking data passes through unmodified
Accela + Hamilton combines Accela’s velocity-dependent smoothing with Hamilton’s quaternion-based rotation handling for smoother gimbal-free rotations. None can be useful for debugging or when using external smoothing.
Filter Comparison
Choosing a Filter
For Simulators and Precision Work
Use EWMA or Alpha Spectrum (Stable profile):- Maximum smoothness when stationary
- Minimal jitter for precise aiming
- Responsive enough for slow pans
For Fast Action Games
Use Accela or Alpha Spectrum (Responsive profile):- Minimal lag during rapid movements
- Velocity-based acceleration
- Quick response to fast turns
For Smooth Cinematic Movement
Use Hamilton:- True quaternion interpolation (Slerp)
- No gimbal lock artifacts
- Smooth, natural rotation paths
Hamilton Settings
Key Concepts
Smoothing vs Lag Trade-off
Smoothing vs Lag Trade-off
All filters balance two competing goals:
- More smoothing = less jitter but more lag
- Less smoothing = faster response but more visible shake
Deadzones
Deadzones
Deadzones suppress tiny movements below a threshold to eliminate noise:
- Rotation deadzone: ignores small rotational movements (degrees)
- Translation deadzone: ignores small positional movements (millimeters)
Alpha Values
Alpha Values
The alpha parameter controls the filter weight:
output = output + alpha * (input - output)- Alpha of 1.0 = no smoothing (instant response)
- Alpha of 0.0 = infinite smoothing (no movement)
Noise Detection
Noise Detection
Advanced filters (EWMA, Alpha Spectrum) measure noise statistics:
- Track variance of recent deltas
- Distinguish intentional movement from sensor noise
- Adapt smoothing strength automatically
Filter Pipeline
Filters process tracking data in the pipeline:- Tracker provides raw 6DOF pose data
- Filter smooths the data (this module)
- Mapping applies curves and response adjustments
- Output sends to game/simulator
Filters operate on the raw tracking data before mapping curves are applied. This means filter settings are independent of your response curve configuration.
Common Parameters
Most filters share these parameters:float
default:"0.085"
Minimum smoothing factor for rotation (0.005-0.4). Lower = more smoothing at rest.
float
default:"0.218"
Maximum smoothing factor for rotation (0.02-1.0). Higher = faster response during motion.
float
default:"4.26"
Shape of the transition from min to max (0.2-8.0). Higher = stays smooth longer.
float
default:"0.156"
Suppresses rotation below this threshold in degrees (0.0-0.3°).
float
default:"0.085"
Minimum smoothing factor for X/Y/Z position (0.005-0.4).
float
default:"0.218"
Maximum smoothing factor for X/Y/Z position (0.02-1.0).
float
default:"4.26"
Shape of the transition from min to max for translation (0.2-8.0).
float
default:"1.041"
Suppresses translation below this threshold in millimeters (0.0-2.0 mm).
Troubleshooting
View jitters when stationary:- Increase minimum smoothing or deadzone
- Check for Brownian/noise contribution in status (Alpha Spectrum)
- Increase maximum smoothing
- Decrease curve value
- Enable Adaptive Mode (Alpha Spectrum)
- Decrease deadzone values
- Check that tracker sensitivity is adequate
- Decrease maximum smoothing
- Increase curve value
- Increase minimum smoothing
Next Steps
Alpha Spectrum
Learn about the most advanced filter with predictive heads
EWMA Filter
Understand the automatic noise-adaptive filter
Hamilton Filter
Explore quaternion-based smooth rotations
Accela Filter
Configure velocity-dependent acceleration filtering