Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more

A Python rPPG tracker estimates pulse rate by tracking subtle color changes in facial video: it averages red, green, and blue values from skin pixels, applies the Plane Orthogonal to Skin (POS) projection, filters the resulting signal, then estimates its dominant pulse rate over a time window. It is an optical estimate, not a direct reading of the heart’s electrical activity. The studies cited here explain the method, but do not verify the code or settings of a specific implementation.

What a real-time rPPG tracker measures

Remote photoplethysmography (rPPG) looks for small changes in light reflected from skin as blood volume changes with each heartbeat. A camera records those changes as pixel values over time; processing turns them into a pulse-like signal from which a rate can be estimated. The method does not measure electrical cardiac activity, and a plausible-looking number is not proof that the estimate is accurate. The 2019 study by van der Kooij and Naber describes extracting heart-pulsation information from changes in recorded skin pixels.

A consumer webcam or mobile camera can provide the video input, as discussed in that study. The camera is only one part of the pipeline: lighting, motion, exposure, frame cadence, compression, and which pixels are included can all affect the signal. The available studies do not quantify those effects for every camera or implementation.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

How the video-to-heart-rate pipeline works

  1. Capture frames. Read a stream of face video and preserve the timing information needed to interpret changes across frames. The camera’s nominal frame rate is not necessarily the rate of usable frames after dropped frames or processing delays.
  2. Select a facial skin region. Identify a region that is mostly skin, excluding as much hair, eyes, background, and other non-skin content as practical. Region selection is an implementation choice; the sources do not prescribe a particular detector or facial crop for this tracker.
  3. Aggregate RGB values. For each frame, calculate average red, green, and blue values over the selected pixels. This produces three time-varying traces rather than a separate signal for every pixel.
  4. Apply POS over a time window. Form temporally normalized channel traces and project them using the POS method. A window is needed because the calculation and rate estimate depend on a sequence of frames, not a single image. Window length, overlap, and normalization details are implementation-specific.
  5. Filter the pulse-like trace. A band-pass filter can reduce slow drift and higher-frequency content outside a chosen pulse range. Its cutoffs and order must be selected and disclosed; the cited description of this project does not establish particular values.
  6. Estimate a rate. Estimate periodicity or identify dominant spectral energy over a finite window, then convert the selected frequency to beats per minute. Peak selection, smoothing, buffering, and update interval determine how the displayed value behaves and must be specified by the implementation.

How POS turns RGB traces into a pulse signal

POS stands for Plane Orthogonal to Skin. Wang and colleagues introduced the approach as a projection plane orthogonal to skin tone, grounded in a model of skin reflection and remote PPG methods. The method uses combinations of color-channel traces to emphasize pulse-related variation while reducing other color changes. See the paper’s PubMed record.

#1 Best Overall
Sale
Fingertip Pulse Oximeter Blood Oxygen Saturation Monitor Pulse Ox, Heart Rate and Fast Spo2 Reading Oxygen Meter with OLED Screen Included Lanyard and 2 X AAA Batteries
  • LARGE EASY-TO-READ DISPLAY: Bright screen clearly shows SpO2, pulse rate, and signal strength with large digits. The waveform bar graph provides visual confirmation of pulse strength, making it ideal for adults and users who prefer clear visibility.
  • PORTABLE & USER-FRIENDLY: Compact, lightweight design fits easily in your pocket or bag. One-button operation makes it simple for anyone to use—just insert your finger and press the button for instant results. Auto power-off preserves battery life.
  • PERFECT FOR EVERYDAY & OUTDOOR USE: Great for checking oxygen and pulse levels at home, during workouts, hiking, skiing, or high-altitude trips. A practical tool for fitness lovers, outdoor enthusiasts, and anyone who wants to keep an eye on their daily wellness.
  • COMPLETE PACKAGE INCLUDED: Comes with 1x Pulse Oximeter, 2x AAA Batteries , 1x Lanyard for easy carrying, and 1x Instruction Manual. Ready to use right out of the box—no additional purchases needed.

The 2023 paper gives the following form of the projection:

XPOS(t) = R(t) − B(t)

YPOS(t) = G(t) + B(t) − 2R(t)

rPPG(t) = XPOS(t) − αYPOS(t)

Here, R(t), G(t), and B(t) are the red, green, and blue traces; α is calculated as in CHROM. These equations describe the projection, not a complete streaming implementation. Frame aggregation, temporal normalization, windowing, and how windows are combined still need explicit choices. The equations and discussion appear in the 2023 GRGB rPPG paper.

Rank #2
Zacurate 500 Series Fingertip Pulse Oximeter Blood Oxygen Saturation Monitor with Silicon Cover, Batteries and Lanyard (Royal Black)
  • ACCURATE AND RELIABLE - Accurately determines your SpO2 (blood oxygen saturation levels), pulse rate and pulse strength in 10 seconds and displays it conveniently on a large digital LED display.
  • FULL SPO2 VALUE - The ONLY LED pulse oximeter that can read and display SpO2 up to 100%.
  • SPORTS/HEALTH ENTHUSIASTS - For sports enthusiasts like mountain climbers, skiers, bikers, and anyone needing to monitor their SpO2 and pulse rate. The pulse oximeter LED display faces the user for an easy read.
  • ACCOMODATES WIDE RANGE OF FINGER SIZES - Finger chamber with SMART Spring System. Works for ages 12 and above.
  • LOADED WITH ACCESSORIES - Includes 2 x AAA BATTERIES, allowing the pulse oximeter to be used right out of the box; a SILICONE COVER to protect from dirt and physical damage; and a LANYARD for convenience. Comes with a 12-month WARRANTY and USA based technical phone support.

What Butterworth filtering contributes—and what it cannot fix

A Butterworth band-pass filter is one option for retaining variation in a selected pulse-frequency band while attenuating slower drift and faster noise. The 2023 paper names Butterworth filtering as an example of a way to improve rPPG signal quality. A filter does not recover reliable pulse information if the input is dominated by movement, poor illumination, or contaminated skin pixels.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

For a reproducible tracker, report the band-pass cutoff frequencies, filter order, sampling rate, and whether filtering is causal or performed offline. These choices change the output. In a live stream, a causal filter can introduce phase delay; a zero-phase offline filter uses future samples and therefore cannot be applied unchanged to a live stream. The sources do not establish the settings used by a particular Python tracker.

Rank #3
Sale
KardiaMobile 1-Lead EKG Monitor, Detects Normal AFib & Arrhythmias, HSA&FSA
  • Simple to Use Without a Subscription: No Bluetooth, Wi-Fi, cords or PC needed. Place the device near your smartphone. Monitor your heart by placing your fingers or thumbs on the silver KardiaMobile EKG sensors. Know in 30 seconds whether your heart rhythm is normal.

Why a real-time number can lag or fluctuate

A tracker cannot estimate a stable dominant rate from an arbitrarily short snippet: it needs enough observations to distinguish a repeating pulse pattern from noise. Longer analysis windows can support a more stable estimate but make updates less responsive; shorter windows can react faster while making the result more sensitive to noise. The exact balance depends on the implementation’s windowing, overlap, filtering, and display logic.

Real-time performance is also an end-to-end property, not just the speed of the POS calculation. Video capture, region selection, signal processing, and display updates all consume time. The pyVHR framework authors reported real-time processing for 30-fps HD video with their accelerated workflow; that framework-level result is not a benchmark for another tracker. See the 2022 pyVHR paper.

Rank #4
Sale
Polar H10 Heart Rate Monitor Chest Strap - ANT + Bluetooth, Waterproof HR Sensor for Men and Women, Black, M-XXL
  • WORKS WITH EVERYTHING: Polar HRM works with ALL HRM compatible Equipment.
  • SUPREME ACCURACY: Widely recognized for its top precision by many sources, Polar H10 is the most accurate heart rate sensor in Polar's history. Polar H10 provides top quality measurement.
  • CONNECTIVITY: Bluetooth, ANT plus and 5 kHz provide an excellent variety of connection options. You can use Bluetooth and ANT plus connections simultaneously as well as two Bluetooth connections simultaneously.
  • POLAR PRO CHEST STRAP: With improved electrodes, an easy-to-use buckle and silicone dots, the strap is comfortable and interference-free.
  • VERSATILITY: Polar H10 is fully waterproof and it has internal memory for multiple hours.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

What accuracy evidence does—and does not—show

In the tested ambient-lighting and exercise conditions, van der Kooij and Naber reported stronger heart-rate accuracy from facial skin recordings than from wrist recordings, while calf recordings were unreliable. Their setup minimized movement and used equal illumination across recording surfaces, so the finding should not be generalized to arbitrary camera placement, lighting, or motion. It is evidence about those study conditions, not a guarantee for a webcam tracker.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Camera-based pulse estimation should be treated as an experimental estimate, not a diagnosis or a substitute for a validated clinical instrument. The cited method papers discuss research approaches; they do not establish clinical suitability or regulatory clearance for an individual implementation.

Checks that make an implementation easier to evaluate

  • Document the camera, captured frame rate, and handling of missed or delayed frames.
  • Describe how the facial skin region is selected and what happens when the face moves or the region is partly obscured.
  • State the RGB aggregation and normalization steps, POS window length and overlap, filter type and parameters, and rate-estimation method.
  • Expose signal-quality failures rather than presenting every window as a trustworthy rate. A numerical output alone cannot establish that a usable pulse signal was present.
  • Evaluate against an appropriate reference under the conditions in which the tracker is intended to operate; do not treat performance reported by a different framework or study as validation of this code.

The public pavisj/rppg-pos repository is an implementation reference for POS. Its existence does not establish that another program uses identical preprocessing, filtering, or rate-estimation choices.

Quick Recap

Bestseller No. 2
Zacurate 500 Series Fingertip Pulse Oximeter Blood Oxygen Saturation Monitor with Silicon Cover, Batteries and Lanyard (Royal Black)
Zacurate 500 Series Fingertip Pulse Oximeter Blood Oxygen Saturation Monitor with Silicon Cover, Batteries and Lanyard (Royal Black)
FULL SPO2 VALUE - The ONLY LED pulse oximeter that can read and display SpO2 up to 100%.
$19.99
SaleBestseller No. 4
Polar H10 Heart Rate Monitor Chest Strap - ANT + Bluetooth, Waterproof HR Sensor for Men and Women, Black, M-XXL
Polar H10 Heart Rate Monitor Chest Strap - ANT + Bluetooth, Waterproof HR Sensor for Men and Women, Black, M-XXL
WORKS WITH EVERYTHING: Polar HRM works with ALL HRM compatible Equipment.; VERSATILITY: Polar H10 is fully waterproof and it has internal memory for multiple hours.
$84.74

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.