The Binah.AI Software Development Kit (SDK)

Have more questions? Submit a request


The Binah.AI Software Development Kit (SDK) supplies a tool to measure a person’s photoplethysmography (PPG) and extract heart rate, respiration rate, oxygen saturation, heart rate variability (HRV), stress index, Blood pressure, Blood Test, and more measurements - using the camera of a mobile device. The signal is extracted either remotely from a video stream of a person’s face (using rPPG methodology), or from a video feed of a person's finger (using PPG methodology). 


  • The HRV is calculated utilizing statistical modeling of heart rate interval variability.
  • The SDK controls the device camera for the video stream and performs the measurement calculations. 


Photoplethysmography detects the optical absorption variations in the skin due to blood volume variations during the cardiac cycle [1]. There are two categories of devices based on PPG: contact-based and remote. Herein we refer to them as PPG and rPPG, respectively.

The heart rate is measured from the light intensity fluctuations due to the cardiac cycle [2]. The local peaks of the light intensity yield the instantaneous heart rate and the RR interval. The fluctuations indicate how the cardiovascular system is adjusted to sudden physical and psychological challenges to homeostasis. The measure of these fluctuations is referred to as HRV, and corresponds to a collection of statistical data [3]. The calculated parameters relate to the status of the sympathetic nervous system (SNS) and parasympathetic nervous system (PNS) activities. The SNS and PNS are indicators for the individual stress level, allowing the estimate of the stress index.

The respiration operation modulates the PPG signal [4]. The slow-varying modulation is used to measure the respiration rate.

Oxygen saturation (SpO2) is measured from the light absorption difference between oxygenated hemoglobin (HbO2) and deoxygenated hemoglobin (Hb) at different wavelengths [5]. In the SDK, we use different camera colors to perform this calculation.

The API consists of two levels:

  • Video camera data processor
  • Frame rendering

A message-handling protocol is responsible for data exchange between the mathematical engine (responsible for all measurement computation) and the hosting application.

The mathematical engine is a collection of algorithms that compute various parameters. The standard technique uses the message handling protocol to transfer the heart rate, oxygen saturation, respiration rate, heart rate variability, stress index, Blood pressure, Blood tests, and more.

Screen_Shot_2022-01-27_at_20.42.25.png has prepared a sample iOS and Android application using the SDK. This app's purpose is to ease the development process of a new Android-based or iOS-based application.

The application code is written in Swift, Kotlin, Flutter, React Native, etc., while the underlying calculations are written in C++.



    1. W. Verkruysse, L. O. Svaasand, and J. S. Nelson, ”Remote plethysmographic imaging using ambient light”, Opt. Express 16(26), pp. 21434-21445 (2008); G. de Haan, and V. Jeanne, IEEE Trans. Biomed. Eng. 60, 2878-2886 (2013).
    2. D. McDuff, S. Gontarek, R. W. Picard, “Remote detection of photoplethysmographic systolic and diastolic peaks using a digital camera”, IEEE Trans. Biomed. Eng. 61, 2948–2954 (2014).
    3. F. Shaffer, J. P. Ginsberg , “An Overview of Heart Rate Variability Metrics and Norms”, Frontiers in Public Health 5, 258 (2017).
    4. W. Karlen, S. Raman, J. Mark Ansermino, and G. A. Dumont, “Multiparameter Respiratory Rate Estimation From the Photoplethysmogram”, IEEE Trans. Biomed. Eng. 60, 1946-1953 (2013).
    5. L. Kong, Y. Zhao, L. Dong, Y. Jian, X. Jin, B. Li, Y. Feng, M. Liu, X. Liu, and H. Wu, “Non-contact detection of oxygen saturation based on visible light imaging device using ambient light”, Optics Express, 21, 17464-17471 (2013)

Articles in this section

Was this article helpful?
0 out of 0 found this helpful



Please sign in to leave a comment.