PPG Signal Processing Algorithms
From classical adaptive filters to deep learning architectures — every major algorithm used in PPG analysis, explained with mathematical depth.
LMS Adaptive Filter for PPG Signal Processing
The Least Mean Squares (LMS) adaptive filter is the most widely used method for motion artifact removal in wearable PPG. It uses an accelerometer signal as a noise reference to iteratively estimate and cancel the motion-induced noise component from the PPG, adapting its filter coefficients based on the error between the filtered output and the desired clean signal.
Read Deep-Dive →RLS (Recursive Least Squares) Filter for PPG
The Recursive Least Squares (RLS) algorithm is an adaptive filtering technique that minimizes the weighted sum of past squared errors using an exact inverse covariance matrix update, achieving faster convergence than LMS at the cost of higher computational complexity.
Read Deep-Dive →ICA (Independent Component Analysis) for PPG Signal Separation
Independent Component Analysis (ICA) is a blind source separation technique that decomposes a mixture of signals into statistically independent components without requiring a reference signal. For PPG, ICA applied to multi-wavelength or multi-site recordings can separate the cardiac signal from motion artifacts and other physiological noise sources.
Read Deep-Dive →SVD (Singular Value Decomposition) Applied to PPG
Singular Value Decomposition (SVD) decomposes a PPG signal matrix into orthogonal signal subspaces, enabling motion artifact removal by truncating or filtering singular components associated with noise. SVD-based methods are particularly effective for colored noise removal in resting-state PPG.
Read Deep-Dive →Kalman Filter Applied to PPG Heart Rate Estimation
The Kalman filter is an optimal recursive Bayesian estimator for linear-Gaussian state-space models, applied to PPG for continuous heart rate tracking by modeling cardiac dynamics as a stochastic state variable and filtering noisy PPG observations. It fuses motion sensor data with spectral PPG features to maintain accurate heart rate estimates during artifact periods.
Read Deep-Dive →LSTM Networks for PPG Analysis
Long Short-Term Memory (LSTM) networks are recurrent neural networks with gating mechanisms that capture long-range temporal dependencies in sequential data. For PPG analysis, LSTMs learn end-to-end to extract heart rate, detect arrhythmias, and remove motion artifacts directly from raw or minimally preprocessed waveforms, outperforming traditional signal processing in high-noise scenarios.
Read Deep-Dive →CNN (Convolutional Neural Networks) for PPG Analysis
Convolutional Neural Networks (CNNs) automatically learn hierarchical feature representations from raw PPG waveforms through stacked convolutional layers with learned filters. For PPG, 1D CNNs applied to beat segments achieve state-of-the-art performance in arrhythmia classification, signal quality assessment, and disease biomarker extraction.
Read Deep-Dive →Transformer Models Applied to PPG Analysis
Transformer models use multi-head self-attention mechanisms to model long-range dependencies in sequential data without recurrence, achieving state-of-the-art performance in PPG tasks including heart rate estimation, AF detection, and waveform reconstruction by attending to relevant temporal context across the entire signal window simultaneously.
Read Deep-Dive →Wavelet Decomposition in PPG Signal Processing
Wavelet decomposition decomposes a PPG signal into time-frequency components by correlating the signal with scaled and shifted wavelet basis functions, providing simultaneous time and frequency resolution superior to the short-time Fourier transform for analyzing the non-stationary, quasi-periodic PPG signal.
Read Deep-Dive →Empirical Mode Decomposition (EMD) for PPG Processing
Empirical Mode Decomposition (EMD) is a data-adaptive signal decomposition method that decomposes a PPG signal into a finite set of Intrinsic Mode Functions (IMFs) through an iterative sifting process, without requiring predefined basis functions. Each IMF represents a natural oscillation mode of the signal, enabling adaptive separation of cardiac, respiratory, and motion artifact components.
Read Deep-Dive →NLMS (Normalized LMS) Adaptive Filter for PPG
The Normalized Least Mean Squares (NLMS) algorithm adapts the LMS step size by dividing by the input signal power, eliminating sensitivity to input scaling and providing more consistent convergence across varying motion intensities in PPG wearables.
Read Deep-Dive →Pan-Tompkins Algorithm Adapted for PPG
The Pan-Tompkins algorithm, originally designed for ECG QRS detection, has been adapted for PPG systolic peak detection through modified bandpass filtering (0.5–8 Hz for PPG vs. 5–15 Hz for ECG), derivative-based slope enhancement, signal squaring, moving window integration, and adaptive dual-threshold decision logic.
Read Deep-Dive →PPG Beat Segmentation Algorithms
PPG beat segmentation divides a continuous PPG signal into individual cardiac cycle waveforms by detecting beat boundaries at pulse onset (foot) points. Accurate segmentation is prerequisite for morphological analysis, enabling extraction of systolic time, diastolic time, pulse area, and waveform shape features.
Read Deep-Dive →FFT-Based Heart Rate Estimation from PPG
FFT-based heart rate estimation computes the power spectrum of a PPG signal window and identifies the dominant spectral peak in the cardiac frequency band (0.5–4 Hz, corresponding to 30–240 bpm). This frequency-domain approach is robust to waveform distortion and amplitude variations that challenge time-domain peak detection.
Read Deep-Dive →Autocorrelation-Based Heart Rate Estimation
Autocorrelation heart rate estimation exploits the quasi-periodic nature of PPG by computing the signal's correlation with time-shifted copies of itself. The lag at the first significant autocorrelation peak corresponds to the dominant cardiac period, providing heart rate estimates that are inherently robust to waveform morphology changes.
Read Deep-Dive →MUSIC Algorithm for PPG Spectral Analysis
The MUSIC (Multiple Signal Classification) algorithm provides super-resolution spectral estimation for PPG by decomposing the signal correlation matrix into signal and noise subspaces. MUSIC resolves closely spaced spectral peaks that FFT cannot separate, enabling accurate heart rate estimation when cardiac and motion frequencies overlap.
Read Deep-Dive →SDNN: Total HRV from PPG Signals
SDNN (Standard Deviation of Normal-to-Normal intervals) is the standard deviation of all accepted interbeat intervals over a recording period, providing a global measure of total heart rate variability that reflects all cyclic components (sympathetic, parasympathetic, circadian) contributing to HRV.
Read Deep-Dive →RMSSD: Vagal Tone Metric from PPG
RMSSD (Root Mean Square of Successive Differences) calculates the square root of the mean squared differences between consecutive interbeat intervals, providing the primary time-domain estimate of parasympathetic (vagal) cardiac modulation. It is the most widely used HRV metric in consumer wearables.
Read Deep-Dive →pNN50: Simple Parasympathetic HRV Metric
pNN50 is the percentage of successive NN interval pairs that differ by more than 50 milliseconds, providing a simple, intuitive measure of parasympathetic cardiac modulation that is highly correlated with RMSSD and HF power but expressed as an easily interpretable percentage.
Read Deep-Dive →LF/HF Ratio: Sympathovagal Balance from PPG
The LF/HF ratio divides low-frequency (0.04–0.15 Hz) by high-frequency (0.15–0.4 Hz) power in the heart rate variability spectrum. Originally proposed as a sympathovagal balance index, its interpretation is debated but it remains widely used in stress research and autonomic function assessment.
Read Deep-Dive →HF Power: Parasympathetic HRV from PPG
High-frequency (HF) power in HRV spectral analysis quantifies the variance of interbeat intervals in the 0.15–0.4 Hz band, corresponding to respiratory sinus arrhythmia (RSA). HF power is the primary frequency-domain marker of cardiac parasympathetic (vagal) modulation.
Read Deep-Dive →SpO2 Ratio of Ratios: Pulse Oximeter Calibration
The ratio of ratios (R) method is the fundamental calibration technique for pulse oximetry, computing R = (AC_red/DC_red) / (AC_IR/DC_IR) and mapping it to SpO2 via an empirical calibration curve derived from controlled desaturation studies in human volunteers.
Read Deep-Dive →Cuffless BP via Pulse Transit Time (PTT)
Cuffless blood pressure estimation using pulse transit time (PTT) exploits the Moens-Korteweg relationship between arterial pressure and pulse wave velocity. As blood pressure rises, arterial walls stiffen, increasing PWV and decreasing PTT, enabling continuous BP estimation from ECG-PPG or dual-site PPG timing measurements.
Read Deep-Dive →Pulse Wave Analysis for BP Estimation
Pulse wave analysis (PWA) estimates blood pressure from single-site PPG waveform morphology features — systolic upstroke slope, pulse width, augmentation index, dicrotic notch timing, and second-derivative ratios — that encode arterial impedance and blood pressure information without requiring multi-site transit time measurement.
Read Deep-Dive →Respiratory Rate Estimation from PPG
Respiratory rate can be extracted from PPG through three modulation mechanisms: amplitude modulation (respiratory variation in pulse amplitude), frequency modulation (respiratory sinus arrhythmia in IBI), and baseline modulation (intrathoracic pressure changes shifting DC baseline). Fusion of all three provides 1–2 breaths/min accuracy.
Read Deep-Dive →HRV-Based Stress Detection from PPG
HRV-based stress detection algorithms classify psychological and physiological stress states by detecting autonomic nervous system activation patterns in PPG-derived HRV features — reduced RMSSD, elevated LF/HF ratio, decreased HF power, and altered nonlinear complexity measures — achieving 75–92% binary stress classification accuracy.
Read Deep-Dive →PPG-Based Sleep Staging Algorithms
PPG-based sleep staging classifies sleep into wake, light (N1/N2), deep (N3), and REM stages using heart rate dynamics, HRV spectral changes, respiratory rate modulation, and accelerometer-derived movement patterns. Consumer wearables achieve 65–80% epoch-by-epoch agreement with polysomnography.
Read Deep-Dive →AFib Detection via RR Irregularity Analysis
PPG-based atrial fibrillation detection exploits the hallmark irregularly irregular ventricular rhythm of AF by analyzing statistical properties of consecutive interbeat intervals — coefficient of variation, RMSSD, sample entropy, and Poincaré plot dispersion — to distinguish AF from normal sinus rhythm with 90–98% accuracy.
Read Deep-Dive →PAD Screening from PPG Waveform Analysis
PPG enables non-invasive peripheral artery disease screening through waveform morphology analysis at ankle and toe sites, where arterial stenosis produces characteristic monophasic waveforms, reduced pulse amplitude, absent dicrotic notch, and prolonged systolic upstroke time correlating with hemodynamic significance.
Read Deep-Dive →Vascular Age Estimation from PPG
Vascular age estimation from PPG uses the second derivative of the photoplethysmogram (SDPPG/APG) wave ratios and pulse wave morphology features to estimate arterial stiffness, providing a biological age estimate that may differ from chronological age and reflects cardiovascular risk.
Read Deep-Dive →Signal Quality Index (SQI) Algorithms for PPG
Signal Quality Index (SQI) algorithms automatically grade PPG signal reliability on a 0–1 scale using template matching, spectral analysis, morphological validation, and statistical tests, enabling downstream algorithms to process only high-quality data and suppress false measurements.
Read Deep-Dive →Template Matching for PPG Beat Detection
Template matching detects PPG systolic beats by sliding a reference pulse waveform template across the signal and identifying locations of maximum cross-correlation. This approach simultaneously provides beat detection and signal quality assessment through the correlation coefficient.
Read Deep-Dive →PCA for PPG Analysis
Principal Component Analysis (PCA) projects multi-dimensional PPG data (multi-wavelength, multi-site, or multi-feature) onto orthogonal principal components ordered by variance explained, enabling dimensionality reduction, artifact separation, and identification of dominant physiological signal modes.
Read Deep-Dive →Bandpass Filtering for PPG Preprocessing
Bandpass filtering is the fundamental preprocessing step for PPG, passing the cardiac frequency band (typically 0.5–8 Hz for HR, 0.1–0.5 Hz for respiratory rate) while rejecting DC offset, baseline wander, high-frequency noise, and powerline interference. Filter design must balance noise rejection against pulse waveform fidelity.
Read Deep-Dive →Notch Filter for PPG Interference Removal
Notch (band-stop) filters suppress narrowband interference at specific frequencies in PPG signals, primarily targeting 50 Hz (Europe/Asia) or 60 Hz (Americas) powerline noise and their harmonics that couple into the photodetector electronics through ambient light modulation or electrical interference.
Read Deep-Dive →Median Filter for PPG Artifact Removal
Median filtering is a non-linear smoothing operation that replaces each PPG sample with the median of surrounding samples within a sliding window, effectively removing spike artifacts and impulse noise while preserving sharp transitions like the systolic upstroke that linear filters would blur.
Read Deep-Dive →Savitzky-Golay Filter for PPG Analysis
The Savitzky-Golay filter fits a local polynomial to each PPG data window using least-squares regression, providing optimal noise smoothing while preserving higher-order waveform features (peak position, width, area) that simple moving average filters would distort.
Read Deep-Dive →Hilbert Transform for PPG Analysis
The Hilbert transform generates the analytic signal representation of PPG, providing instantaneous amplitude (envelope), instantaneous phase, and instantaneous frequency at every sample point — enabling continuous heart rate estimation with temporal resolution far exceeding FFT-based methods.
Read Deep-Dive →Short-Time Fourier Transform (STFT) for PPG
The Short-Time Fourier Transform (STFT) computes the frequency spectrum of successive windowed PPG segments, creating a time-frequency spectrogram that visualizes how the cardiac frequency, motion artifacts, and respiratory modulation evolve over time.
Read Deep-Dive →CWT Scalogram Analysis for PPG
The Continuous Wavelet Transform (CWT) convolves the PPG signal with scaled and shifted wavelet functions across a continuous range of scales, producing a scalogram with adaptive time-frequency resolution — high frequency resolution at low frequencies (respiratory band) and high time resolution at high frequencies (cardiac harmonics).
Read Deep-Dive →Compressed Sensing for PPG Signals
Compressed sensing exploits the sparsity of PPG signals in the frequency domain to reconstruct full-bandwidth waveforms from sub-Nyquist samples, enabling power-efficient data acquisition, wireless data compression, and recovery of PPG segments corrupted by motion artifacts.
Read Deep-Dive →Motion Artifact Detection in PPG
Motion artifact detection algorithms automatically identify PPG segments corrupted by physical movement using accelerometer-based activity detection, PPG signal statistics (amplitude excursions, spectral distortion), and machine learning classifiers, enabling quality-gated processing that improves measurement accuracy.
Read Deep-Dive →Baseline Wander Removal in PPG
Baseline wander in PPG is a low-frequency drift (<0.5 Hz) caused by respiration, vasomotor activity, sensor pressure changes, and temperature variation. Removal methods include high-pass filtering, cubic spline interpolation through onset points, polynomial detrending, and morphological operators.
Read Deep-Dive →PPG Systolic Peak and Valley Detection
Peak and valley detection algorithms identify systolic maxima (peaks) and pulse onset minima (valleys/feet) in PPG waveforms, providing the fundamental fiducial points for heart rate computation, interbeat interval extraction, and all downstream morphological analysis.
Read Deep-Dive →Dicrotic Notch Detection in PPG
The dicrotic notch in PPG corresponds to aortic valve closure and marks the transition from systole to diastole. Its detection enables computation of systolic and diastolic time intervals, reflection index, and arterial stiffness markers — but the notch is often absent or subtle in wrist PPG, challenging automated detection.
Read Deep-Dive →Pulse Rate Variability (PRV) from PPG
Pulse Rate Variability (PRV) computed from PPG interbeat intervals serves as a surrogate for ECG-derived Heart Rate Variability (HRV). PRV closely approximates HRV at rest (correlation >0.95) but diverges during physical activity, positional changes, and cardiovascular disease due to variable pulse transit time effects.
Read Deep-Dive →DFA (Detrended Fluctuation Analysis) for PPG HRV
Detrended Fluctuation Analysis (DFA) quantifies the fractal scaling properties of interbeat interval time series by measuring how the fluctuation magnitude scales with observation window size. DFA α1 (short-term scaling exponent) is a robust nonlinear HRV metric sensitive to autonomic dysfunction and cardiovascular risk.
Read Deep-Dive →Sample Entropy for PPG Complexity Analysis
Sample Entropy (SampEn) measures the conditional probability that two sequences of m consecutive data points that are similar (within tolerance r) will remain similar when one more point is added. Applied to PPG IBI series, SampEn quantifies cardiac rhythm complexity — lower values indicate more regular, predictable rhythms associated with disease.
Read Deep-Dive →Poincaré Plot Analysis for PPG HRV
Poincaré plot analysis creates a scatter plot of each interbeat interval against the next (IBIₙ vs IBIₙ₊₁), visualizing cardiac rhythm dynamics. The ellipse fitted to the scatter provides SD1 (minor axis, short-term variability, parasympathetic) and SD2 (major axis, long-term variability, mixed autonomic) metrics.
Read Deep-Dive →Attention Mechanisms in PPG Neural Networks
Attention mechanisms enable PPG deep learning models to automatically weight important temporal regions, spectral channels, or feature maps, improving classification accuracy for tasks like AF detection, BP estimation, and sleep staging by focusing computational resources on the most informative signal segments.
Read Deep-Dive →