Need help with Heart-rate-measurement-using-camera?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

225 Stars 86 Forks Apache License 2.0 36 Commits 11 Opened issues


real time application to measure heart rate

Services available


Need anything else?

Contributors list

# 157,080
33 commits


Alt text


  • Heart Rate (HR) is one of the most important Physiological parameter and a vital indicator of people‘s physiological state
  • A non-contact based system to measure Heart Rate: real-time application using camera
  • Principal: extract heart rate information from facial skin color variation caused by blood circulation
  • Application: monitoring drivers‘ physiological state


  • Detect face, align and get ROI using facial landmarks
  • Apply band pass filter with fl = 0.8 Hz and fh = 3 Hz, which are 48 and 180 bpm respectively
  • Average color value of ROI in each frame is calculate pushed to a data buffer which is 150 in length
  • FFT the data buffer. The highest peak is Heart rate
  • Amplify color to make the color variation visible


pip install -r requirements.txt


  • In case of plotting graphs, run ""
  • For the Eulerian Video Magnification implementation, run ""


  • Data from a specialized device, Compact 5 medical Econet, is used for the ground truth. In certain circumstances, the Heart rate values measured using the application and the device are the same


  • Real Time Heart Rate Monitoring From Facial RGB Color Video Using Webcam by H. Rahman, M.U. Ahmed, S. Begum, P. Funk
  • Remote Monitoring of Heart Rate using Multispectral Imaging in Group 2, 18-551, Spring 2015 by Michael Kellman Carnegie (Mellon University), Sophia Zikanova (Carnegie Mellon University) and Bryan Phipps (Carnegie Mellon University)
  • Non-contact, automated cardiac pulse measurements using video imaging and blind source separation by Ming-Zher Poh, Daniel J. McDuff, and Rosalind W. Picard
  • Camera-based Heart Rate Monitoring by Janus Nørtoft Jensen and Morten Hannemose
  • Graphs plotting is based on


  • Application can only detect HR for 1 people at a time
  • Sudden change can cause incorrect HR calculation. In the most case, HR can be correctly detected after 10 seconds being stable infront of the camera
  • This github project is for study purpose only. For other purposes, please contact me at [email protected]

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.