CARMA: A Robust Motion Artifact Reduction Algorithm for Heart Rate Monitoring from PPG Signals