Twoja kamera widzi coś, czego Ty nie widzisz
Za każdym razem, gdy Twoje serce się kurczy, fala krwi przepływa przez naczynia krwionośne pod skórą. Ta fala zmienia kolor Twojej twarzy. Zmiany są tak drobne, że ludzkie oko ich nie rejestruje. Ale kamera w Twoim laptopie lub telefonie je widzi.
Technologia, która to wykorzystuje, nazywa się rPPG (remote photoplethysmography, czyli zdalna fotopletyzmografia). Pozwala zmierzyć tętno bez żadnego kontaktu fizycznego. Wystarczy kamera i odpowiedni algorytm.
Dlaczego akurat kolor zielony?
Hemoglobina, białko przenoszące tlen we krwi, absorbuje światło zielone znacznie silniej niż czerwone czy niebieskie. Kiedy fala krwi przepływa przez naczynia pod skórą, absorpcja zielonego światła rośnie. Między uderzeniami serca spada. Ten cykl powtarza się z częstotliwością Twojego pulsu.
W praktyce wygląda to tak: kamera rejestruje obraz Twojej twarzy 30 razy na sekundę. Algorytm wybiera mały obszar na czole (tam naczynia są blisko powierzchni), wyciąga z niego średnią wartość kanału zielonego i zapisuje kolejne próbki. Powstaje sygnał, który oscyluje w rytm bicia serca.
Jak z sygnału wideo wyciągnąć tętno?
Surowy sygnał z kamery jest zaszumiony. Ruchy głowy, zmiany oświetlenia, migotanie monitora obok, to wszystko wprowadza zakłócenia. Żeby wyodrębnić puls, algorytm wykonuje kilka kroków:
- Detrendowanie: usunięcie wolnych zmian jasności (np. chmura zasłoniła słońce) przez odjęcie średniej kroczącej
- Okno Hamminga: wygładzenie krawędzi sygnału, żeby transformata Fouriera nie generowała fałszywych częstotliwości
- FFT (Fast Fourier Transform): zamiana sygnału z domeny czasu na domeny częstotliwości. Zamiast 256 próbek jasności mamy wykres mocy dla każdej częstotliwości
- Szukanie piku: dominująca częstotliwość w zakresie 0,75-3,5 Hz (45-210 BPM) to Twoje tętno
Cały proces zajmuje około 8 sekund kalibracji i działa w pętli, aktualizując wynik co klatkę.
Czy to jest dokładne?
W dobrych warunkach (równomierne oświetlenie, nieruchoma głowa) dokładność rPPG z kamery to około ±5 BPM w porównaniu do pulsoksymetru na palcu. To nie zastąpi profesjonalnego sprzętu medycznego, ale do orientacyjnego sprawdzenia tętna w zupełności wystarczy.
Największy wpływ na jakość pomiaru mają trzy czynniki: stabilność oświetlenia (najlepsze jest naturalne, rozproszone światło), brak ruchu głową oraz odległość od kamery (optymalnie 40-60 cm). Migoczące światło LED lub jarzeniówki mogą wprowadzać zakłócenia o częstotliwości 50/60 Hz, które nakładają się na sygnał pulsu.
Dlaczego to jest fascynujące?
Technologia rPPG istnieje w badaniach naukowych od lat, ale dopiero teraz stała się dostępna w zwykłej przeglądarce. Nie potrzebujesz instalować aplikacji, logować się ani kupować specjalistycznych czujników. Otwierasz stronę, pozwalasz na dostęp do kamery i po 10 sekundach widzisz swoje tętno.
Co więcej, cały algorytm działa lokalnie na Twoim urządzeniu. Obraz z kamery nie jest nigdzie wysyłany. Żadne nagranie nie jest zapisywane. To czysta matematyka: FFT, filtracja sygnałów, analiza częstotliwości, wykonywana przez JavaScript w przeglądarce.
Pomiar tętna to tylko wierzchołek góry lodowej. Ta sama technika analizy wideo klatka po klatce pozwala na wykrywanie oddechu, poziomu stresu, a nawet szacowanie ciśnienia krwi. Wiele z tych zastosowań jest badanych w kontekście telemedycyny, gdzie pacjent mógłby wykonać podstawową diagnostykę bez wizyty w gabinecie.
Wypróbuj sam
Zbudowałem darmowe narzędzie do pomiaru tętna z kamery, które wykorzystuje dokładnie tę technologię. Otwierasz stronę, umieszczasz twarz w owalnej ramce i po kilku sekundach widzisz swój puls, wykres fali i wskaźnik jakości sygnału. Zero rejestracji, zero instalacji, zero wysyłania danych.
Jeśli chcesz lepiej rozumieć, jak AI i zaawansowane algorytmy zmieniają codzienne narzędzia, sprawdź kurs Skuteczne Prompty. 21 lekcji wideo i 77 gotowych promptów do wykorzystania od razu.