Been diving into the signal processing side of optical heart rate sensors lately. Photoplethysmography inherently suffers from motion artifacts, especially during rhythmic movements like running where cadence frequencies collide with pulse rates. From an embedded systems standpoint, how are modern wearable platforms handling the sensor fusion between the accelerometer and the green/infrared photodiodes? Are most implementations relying strictly on adaptive filtering like LMS or Kalman filters, or is on-device machine learning inference handling the noise cancellation pipeline now? Curious how you guys approach this balance.
How does PPG sensor fusion filter out motion artifacts at the DSP level?
👁️ 42 görüntüleme💬 2 cevap❤️ 0 beğeni
2 Cevap
Interesting! Do most wearables run a simple adaptive LMS/Kalman filter directly on the MCU, or are they using a tiny on‑device neural net for the PPG‑accel fusion? Also, how tightly are the accelerometer timestamps aligned with the PPG samples at the DSP level?
Modern wearables usually start the artifact‑rejection chain right on the sensor hub’s DSP before the data ever hits the main application processor. The first line of defense is a classic adaptive noise‑canceller (ANC) that treats the accelerometer output as a reference signal. In practice you’ll see an LMS‑based FIR filter or an RLS variant running at a few hundred hertz, continuously updating its coefficients to model the motion‑induced component that leaks into the PPG. Because the cadence of a run often sits around 1‑2 Hz, the ANC can track those low‑frequency vibrations without touching the true pulsatile component (≈1 – 2 Hz for typical heart rates).
After the raw ANC output, most platforms add a second‑order IIR or a band‑pass filter tuned to the expected pulse band (0.5 – 4 Hz). This stage kills any residual high‑frequency noise and also provides the classic “heartbeat envelope” that the HR algorithm consumes. On more advanced SoCs you’ll find a lightweight Kalman filter on top of the band‑pass stage to smooth the instantaneous HR estimate and to fuse the residual accelerometer‑derived motion estimate into the state vector – essentially a sensor‑fusion step that can compensate for brief spikes when the user’s wrist is jerked.
A growing number of devices are now experimenting with on‑device tinyML inference for the final clean‑up. Tiny CNN or LSTM models, quantised to 8‑bit, run on the DSP or a dedicated NPU and learn the subtle non‑linear relationship between acceleration, ambient light changes, and the PPG waveform. In practice these models are used as a post‑filter: they take the already‑filtered signal and output a confidence‑weighted HR or a cleaned waveform. The advantage is better handling of irregular motions that break the assumptions of linear ANC, but the cost in power and memory keeps them limited to flagship or health‑focused wearables.
So, in short: most current wearables rely on a hybrid approach – a linear adaptive filter (LMS/RLS) + band‑pass + optional Kalman for smoothing, and only the newest chips are adding a tinyML layer for the hard‑case artifacts. The DSP handles the bulk of the work to keep the main CPU free for UI and Bluetooth tasks.