Introduction

Wearable devices give an advantage of knowing the health status of patient anywhere, anytime and improve quality of life, bring benefits to patients by reducing hospitalization cost, and assist medical personnel and society [1]. Vital signs measured using wearable device indicate clinical measurements from subject’s body that reflect physiological condition of subject [2]. Blood pressure, a vital sign is a pressure applied by blood on walls of blood vessels. Blood pressure monitoring can control hypertension and cardiac diseases prevailing in many people due to luxurious lifestyle [3]. To adjust the drug dosage for treatment of hypertensive patient, it is necessary to know the profile of pressure for a long time [4].

Traditional methods used for blood pressure measurement give intermittent reading using cuff-based methods. Inflated cuff-based methods for blood pressure measurement are very inconvenient as well as disruptive during ambulatory reading or in sleep during hospitalization [5]. According to patients’ point of view, continuous non-invasive blood pressure measurement should be safe for long time monitoring, as they are more comfortable and non-occlusive methods and do not require continuous attention from experts [4]. Cuff-less method relates pulse wave velocity (PWV) to arterial pressure and nowadays used in many monitoring systems. Continuous blood pressure monitoring using ECG and PPG signals has found as promising research work [6,7,8,9,10,11] for effective diagnose and monitoring hypertension in patients. Photoplethysmography has been considered an important signal to estimate blood pressure [12]. Blood pressure is dependent on factors like cardiac volume, arteries wall elasticity, blood volume, blood density, etc. that affect the pulse wave velocity (PWV) [11]. Pulse Transit Time (PTT) is a time index showing the time delay that blood takes to reach along arterial site after ventricular contraction of heart [5] and it can be derived from two synchronous ECG and PPG. The inverse relation between PWV and PTT [11] is given by (1), where D is the length of vessel, t is thickness of vessel wall, E is young modulus for elasticity of walls, d is diameter of vessel, and \(\rho\) is blood density

$${\text{PWV}} = \frac{D}{{{\text{PTT}}}} = \sqrt {\frac{tE}{{\rho d}}} .$$
(1)

Relation in (1) shows that PTT is a good indicator for arterial wall elasticity. In addition to PTT, many other features of PPG are proved to be correlated with blood pressure [13]. Linear or non-linear models are derived to estimate blood pressure based on Pulse Transit Time (PTT) which is inverse of pulse wave velocity. In [11], back propagation neural network is used for estimation of blood pressure using multiple PPG parameters in addition to PTT. However, method was tested only for 7 subjects for estimation of systolic and diastolic pressures. In [7], systolic pressure and heart rate are derived using PTT. In [8], data-driven approach is adopted using machine learning algorithm for PPG waveform, but results are not compared with any standards [14]. Mean Arterial Pressure (MAP) is estimated using PTT from non-invasive chest sensor in [15], but no direct comparison is shown with Association for the Advancement of Medical Instrumentation (AAMI) [16] or British Hypertension Society (BHS) [17] standards. Regression and decision tree algorithms have been implemented in [18] and results are more accurate for diastolic and Mean Arterial Pressure (MAP) estimation than methods where only PTT has been used. Systolic Blood Pressure estimation using ECG and PPG is carried out for subjects doing physical exercise, where PAT and PPG variability is used as features and using various methods and posture of subjects, while doing exercise is considered for estimating systolic blood pressure [19]. The experiment has been carried out to check effect on systolic blood pressure for healthy subjects by capturing PPG from different measuring sites and for different posture of subjects while capturing PPG signal. Blood Pressure has been derived using only two sequential PPG signal captured using wearable device in [20], and PTT and Heart Rate are derived from PPG signal only. Wearable cuff-less system for long-term BP and heart rate monitoring system have been developed where using machine learning enable framework systolic blood pressure has been derived with good accuracy [21]. In the literature, approaches are found [18, 22] where Support Vector Regression (SVR) is used for blood pressure estimation. In [18], authors evaluated performance of calibration based in addition to standard calibration-free methods to improve accuracy of estimation of blood pressure. Neural network, due to its generalization ability, is capable to solve many non-linear function approximation problems with good accuracy [23]. With its self-adaptive learning ability, it tries to find the function mapping between input features with targeted output value. Back-propagation neural network can learn and store various input–output mapping relationships. It is known as "model free estimator", and for complex mapping problems, it is proven better than other mathematical model-based estimators [24]. In [25], it was proved with experimentation that neural network exhibits better accuracy in BP estimations, as it does not require any boundary conditions. For training of neural network, 22 input features are derived from only PPG in [26]. Blood pressure is estimated utilizing spectral components plus two morphological features of PPG signal. In [27], with the help of correlation analysis for various features, it was shown that HR and PTT are two strongest features and should be used for BP prediction. However, in [27], data were collected to the limited age group, i.e., subjects with age between 18 and 22 years. This may give good result in that age range, but tend to less accurate prediction of BP for the elderly persons in which BP abnormality is more. The ECG and PPG signals are captured from various subjects using wireless or wired facility in [28, 29], and then after pre-processing, they have applied various machine learning techniques to estimate the blood pressure. They have not performed the experiments in number of persons recommended by AAMI standards. The deep learning model using CNN (Convolutional Neural Network) was trained by ECG, PPG, and BCG (ballistocardiogram) signals captured from 15 subjects, where they used different combinations of signals to estimate the systolic and diastolic blood pressure [30]. The use of CNN make the model with multi-layers and computationally burdened. All above existing methods for cuff-less techniques of blood pressure measurement struggle to meet BHS standard [17] grades especially, in the case of estimating systolic pressure.

Blood pressure estimation is a challenging problem to solve using machine learning algorithms. These challenges are due to (a) variability found in input data and (b) non-uniform training samples. In case of (a), it is found that slight variation in input data results in changing blood pressure significantly. Relationship among the input parameters and blood pressure is highly non-linear and t is very difficult to capture a single relationship model over entire range of pressure. Case (b) becomes evident when data are taken from unclassified subjects. Available data are non-uniform for different blood pressure range, i.e., most of the training data for systolic pressure found near 110 to 140 mm of Hg of systolic pressure value and significantly less data in range of 150 mm of Hg systolic pressure and above. These facts introduce unintended bias while training of machine learning algorithms and will result in lower accuracy rates in blood pressure estimation. In addition, all research algorithms are generally validated using signals available from physionet [31], but they do not consider wireless modes of capturing data that are inherently required for wearable devices.

In this paper, distributed model for estimation of blood pressure using time domain extracted features has been proposed to overcome the shortcomings of current single model approaches. Proposed distributed model architecture improves the accuracy of blood pressure estimation compared to similar work and results in high acceptability according to BHS and AAMI standards. In addition to implementing the work on Multi-parameter Intelligent Monitoring in Intensive Care (MIMIC II) database [31], it is also implemented on wireless data captured using prototype system.

Materials and Methods” describes the hardware model for acquisition of wireless physiological signals; “Proposed Work for Blood Pressure Estimation” explains the proposed distributed model training used for BP estimator. “Results and Discussion” demonstrates the simulation results and “Conclusion” concludes the paper.

Materials and Methods

  1. A.

    Prototype Hardware Model

Blood pressure estimation algorithm from ECG and PPG acquired using wireless monitoring system. Figure 1 shows block diagram of hardware prototype model used to capture ECG and PPG using Bluetooth wireless link, in a real environment. The hardware system is divided into two parts: (a) transmitter system and (b) receiver system. The transmitter system consists of sensors, analog frontends for signal processing, and Bluetooth transceiver [32]. Ag-AgCl2 disposable electrodes for ECG and HRM-2511E for PPG are used as sensors. Analog ECG and PPG data are converted to digital using 16 bit ADC and sent to receiver in hexadecimal format using Bluetooth serial port profile service. Bluetooth enabled laptop is used as a receiver. To establish Bluetooth connectivity, Bluesoleil software [33] is used. Open-source terminal software, which supports serial port profile, is used to collect ECG and PPG data. Received text file containing ECG and PPG data is further processed to remove baseline drift and other high-frequency noise.

Fig. 1
figure 1

Block diagram of wireless Bluetooth-based system for ECG-PPG acquisition

  1. B.

    Database Description

For comparing the performance of proposed work with other reported methods, MIMIC II [31] database is used. In this study, total 193 synchronous Arterial Blood Pressure (ABP), ECG, and PPG records from series 30, are used for simulation. Estimated blood pressure using proposed work is compared with maximum (systolic) and minimum (diastolic) values of ABP wave. From MIMIC records, total 193 record vectors are derived using features extraction algorithm. From MIMIC records, total 106 training pairs extracted from 52 subjects’ record, while 87 testing pairs are extracted from 47 subjects’ record. The major characteristics of blood pressure measurement of MIMIC database are summarized in Table 1 below. The profile for subjects’ blood pressure is given in Table 2 and shown in Fig. 2 with different categories.

Table 1 Characteristics of blood pressure for the subjects considered in MIMIC database
Table 2 Profile of blood pressure of subjects chosen in MIMIC database
Fig. 2
figure 2

Profile of blood pressure of subjects chosen in MIMIC database

Using prototype model as described above, simultaneous capturing ECG and PPG have been carried out from subjects in sitting position. The data population consisted of adult students and colleagues within a range of age 18–54 years, with few subjects taking hypertension medication. To validate the results of proposed work, the estimated values of blood pressure are verified against actual/reference pressure readings measured by sphygmomanometer. While taking measurement of reference blood pressure, three consecutive readings have been taken for the same subject by a trained observer, mean value of the reading is considered as a final reference blood pressure. While capturing wireless data, key points as observer training, observer measurements, sequential measurements of ECG and PPG from subjects using prototype device in sitting position, etc. [14] have been taken care. For all subjects selected, participants’ age, gender, medical history and current medications in consent form have been recorded. The summary of the subjects’ data characteristics is presented in Table 3.

Table 3 Data characteristics of wireless database

Snapshots of hardware used and acquisition of ECG and PPG from subject using hardware prototype model are given in Figs. 3 and 4.

Fig. 3
figure 3

Picture of prototype model as a transmitter of signal and laptop as a receiver

Fig. 4
figure 4

Acquisition of ECG and PPG from subject using hardware prototype model

Proposed Work for Blood Pressure Estimation

This section details proposed architecture for distributed model approach that improves estimation accuracy of systolic and diastolic pressures using features extracted from ECG and PPG. Figure 5 shows the block diagram of proposed work. Features extracted after pre-processing the synchronous ECG and PPG signals are stored in a database which is divided into k sub-groups and individual subgroup is separately trained. Distributing dataset into sub-groups helps to capture and distinguish smaller range of blood pressure and provides better training. At the same time, pre-classifying and dedicating a separate model to capture range of blood pressure will alleviate undue biasing in data. For blood pressure estimation, soft computing approaches, namely, SVR and BPNN, are used.

Fig. 5
figure 5

Proposed distributed model architecture for estimation of systolic and diastolic pressures

The proposed work is briefly described below.

  1. 1.

    Acquire ECG and PPG using prototype model. Also measure actual blood pressure using sphygmomanometer that will serve as a reference.

  2. 2.

    Apply pre-processing to remove unwanted noise on acquired signals.

  3. 3.

    Extract informative features from ECG and PPG after pre-processing signals, and distribute the dataset into training and testing dataset after normalizing it.

  4. 4.

    Divide training set with a wide range of systolic pressure into k smaller groups Mi = (Si, Di), where \(1 \le i \le k\); Mi is ith model, Si and Di are systolic and diastolic pressures. In Fig. 5, there are three models shown for example.

  5. 5.

    For each of k data groups, train a model for blood pressure estimation. At the same time, SVM pre-classifier is also trained for each of k groups with the help of known labels of Mi models.

  6. 6.

    During test phase, first pass extracted features through SVM pre-classifier and further divert to the relevant blood pressure estimation model (Mi).

  7. 7.

    Evaluate the performance of models using estimated results and actual values.

Stepwise implementation of work on MIMIC database as well as wireless signal are described below.

Pre-processing of Signals

Before features are extracted, it is necessary to remove unwanted noise using pre-processing of signals. ECG signal is cleaned to remove baseline drift and high-frequency noise using wavelet decomposition technique as described in [32]. While capturing ECG, due to loose contact between electrodes and skin of a subject or due to lack of skin preparation, etc., ECG is affected by abrupt baseline wander noise. Baseline wander may also be created due to respiration effect. The frequency content of baseline wander is below 1 Hz. Low-frequency noise is removed using Fast Fourier Transform (FFT)-Inverse FFT (IFFT) technique [32], while high-frequency noise is removed using Peak Rejection Adaptive Sampling Modified Moving Average (PRASMMA) [33]. For pre-processing for PPG signals, researchers [19, 34, 35] have specified that frequency components of PPG signal are generally concentrated in 0.5–10 Hz. Analysis of power spectrum of PPG signal, taking its FFT, is shown in Fig. 6. From FFT of PPG, the band of frequency is chosen 0.5–8 Hz, which is retained by passing it through series of high-pass and low-pass filters of second and third order, respectively, as given in (2) and (3)

$$H_{1} (z) = \frac{{{ 0}{\text{.9989}} + { - 1}{\text{.9978}}Z^{ - 1} + {0}{\text{.9989}}Z^{ - 2} }}{{{ 1}{\text{.0000}} + { - 1}{\text{.9978}}Z^{ - 1} + {0}{\text{.9978}}Z^{ - 2} }}$$
(2)
$$H_{2} (z) = \frac{{{10}^{ - 5} { (0}{\text{.1935}} + {0}{\text{.5806}}Z^{ - 1} + {0}{\text{.580}}Z^{ - 2} + { 0}{\text{.1935}}Z^{ - 3} )}}{{{ 1}{\text{.0000 - 2}}{.9497}Z^{ - 1} + {2}{\text{.9007}}Z^{ - 2} { - 0}{\text{.9510}}Z^{ - 3} }},$$
(3)
Fig. 6
figure 6

Spectral analysis of PPG signal for MMIC record number 3001262_0021

where H1(z) is second-order and H2(z) is third-order transfer function used to realize high-pass and low-pass filters, respectively. With the help of Matlab, these filter coefficients are derived after specifying cut-off frequency and required required.

Brief summary of pre-processing of ECG-PPG in block diagram form is shown in Fig. 7.

Fig. 7
figure 7

Block diagram of pre-processing of ECG-PPG signals

ECG and PPG signals are acquired using prototype model as described in Sect. 2. Figure 8a and b shows wireless ECG and PPG signals before and after pre-processing, respectively.

Fig. 8
figure 8

a Wireless ECG and PPG before pre-processing. b Wireless ECG and PPG after pre-processing

Feature Extraction from ECG and PPG

In the proposed work, both ECG and PPG signals are acquired synchronously from a subject, and accurate R peaks from ECG signal get detected using R peak detection algorithm using wavelet decomposition technique [32, 36] in ECG signal helps analyzing PPG signal between two consecutive R peaks. The R peak detection algorithm is described in detail in our earlier work [32, 36], is having an accuracy of 99.59% validated for standard MIT-BIH database. In the presence of arrhythmia like tachycardia and bradycardia also, the algorithm is capable to detect R peak. Important features derived from simultaneously captured ECG and PPG, as shown in Fig. 9, are described as follows.

  1. (a)

    Pulse Transit Time (PTT): PTT is measured as a time distance between R peak of ECG and Peak of PPG [37] which is an indicator of arrival of pulse at finger site from where PPG is measured.

  2. (b)

    Peak amplitude of PPG: It is a value of amplitude at peak of PPG and it is an indicator of pulsatile changes in blood volume due to change in blood flow around arteries [13]. Myocardial contraction force, a cause of stroke volume decides the shape of pulse wave. If this force is less due to weak myocardial contraction ability, the amplitude of PPG will decrease.

  3. (c)

    Pulse Height: Difference between maximum and minimum amplitude of PPG wave is called pulse height. Increase in blood viscosity causes increase in peripheral resistance. The corresponding variation of pulse wave indicates the reduction of pulse pressure [13]. It has a strong relation with systolic blood pressure [38].

  4. (d)

    Time Systolic (Heart Rate): Time between two successive systolic peaks of PPG helps to derive the heart rate. Heart rate represents variation in nervous system [39]

Fig. 9
figure 9

Derivation of features from ECG and PPG

  1. (e)

    Augmentation Index (AI): The inflection point of PPG connecting main and reflected waves is dicrotic notch [13]. The shape of reflected wave depends on arterial elasticity, blood viscosity, arterial resistance, etc. Augmented Index (AI) indicates contribution of reflection wave to systolic amplitude. It is derived by taking the ratio between the systolic peak amplitude and the amplitude at dicrotic notch [40]. Narrowed and stiff arteries increase the resistance against which the heart pumps during each beat and increases pressure and cardiovascular risk.

  2. (f)

    Large Artery Stiffness Index (LASI): The difference between time at systolic peak and time at reflected peak (the time at which inflection point of PPG occurs) is considered for stiffness index measurement. This time difference has a relation with time the pressure wave takes to travel to and fro between the root of the subclavian artery and the apparent site of reflection [40]. LASI is derived by taking inverse of the time difference found. Referring the Fig. 10, the value of AI and LASI can be found using (4) and (5)

    $$AI = \frac{Y}{X}$$
    (4)
    $${\text{LASI}} = \frac{1}{{{\text{Time}}\,({\text{PPG}}\,{\text{Peak}} - {\text{Dicrotic notch}})}}.$$
    (5)

Following steps describe derivation of all important features used for blood pressure estimation.

  1. 1.

    Find out all R peaks and their respective time indices of ECG using R peak detection algorithm [32, 36].

  2. 2.

    Select two consecutive R peak indices from step 1, take them as reference and find Global maxima of PPG between these two R peak indices, which is systolic peak.

  3. 3.

    Note down the time index when peak of PPG occurs. Global minima of PPG between these two R peak indices.

  4. 4.

    Find the difference between time indices of R peak of ECG and peak of PPG that indicates PTT.

  5. 5.

    Time between two successive systolic peaks of PPG is used as indicator of heart rate.

  6. 6.

    Difference of maximum-to-minimum amplitudes of PPG indicates pulse height.

  7. 7.

    The amplitude of PPG at dicrotic notch is derived, once dicrotic notch is found [13]. The ratio of amplitude of systolic peak to amplitude at dicrotic notch indicates Augmentation index.

  8. 8.

    Find the inverse of difference between time at systolic peak and time at dicrotic notch to find LASI.

Fig. 10
figure 10

Extraction of PPG features AI and LASI

Fiducial points detected in ECG and PPG for MIMIC record are shown in Fig. 11. R peak detection on ECG is marked with circle, whereas maxima, minima, and dicrotic notch are marked with square, cross, and small circle markers, respectively, on PPG.

Fig. 11
figure 11

Fiducial points detected on ECG and PPG for MIMIC record

Apart from denoising, normalization is equally important. Presentation of features without normalization may cause undue bias toward some of the features and reduce significance of other features. Considering all six extracted features equally important, they are carefully investigated and are normalized to scale of 0 to 1. After careful investigation, three features out of six used, found inversely proportional to blood pressure value. To synergise their values with other parameters and to realize effective training, magnitude of three parameters for each feature vector is subtracted from their maximum value to give direct relation to blood pressure. All values of different records are the normalized using (6) to scale them between 0 and 1

$$Xn = \frac{{X_{i} - X_{\min } }}{{X_{\max } - X_{\min } }},$$
(6)

where Xi is current value of feature, and Xmin and Xmax are minimum and maximum values of feature used.

Multiple Linear Regression

Multi-linear regression helps defining relation between one output response variable and many predictor variables. For systolic and diastolic pressures estimations, Microsoft Excel with data analysis Add-in and regression tools has been used to derive model for systolic and diastolic pressure estimation given in (7) and (8), respectively

$$\begin{gathered}{\text{PRESSURE}}_{{{\text{SYS}}}} = 7.2443603 - 1.5525694 \times ({\text{PPG}}_{{{\text{PEAK}}}} ) + 0.9134059 \times ({\text{TIME}}_{{{\text{SYS}}}} ) \hfill \\ - 0.234468 \times ({\text{HEIGHT}}_{{{\text{PULSE}}}} ) - 1.8284765 \times ({\text{PTT}}) + 0.3981021 \times ({\text{AI}}) + 1.75 \times({\text{LASI}}) \hfill \\ \end{gathered}$$
(7)
$$\begin{gathered} {\text{PRESSURE}}_{{{\text{DIA}}}} = 6.14165 - 2.2171 \times ({\text{PPG}}_{{{\text{DIA}}}} ) + 3.0445 \times ({\text{TIME}}_{{{\text{DIA}}}} ) \hfill \\ + 0.83014\times({\text{HEIGHT}}_{{{\text{PULSE}}}} ) - 0.4997 \times ({\text{PTT}}) - 0.3919 \times ({\text{AI}}) + 1.27535 \times ({\text{LASI}}) \hfill \\ \end{gathered}$$
(8)

Support Vector Regression

SVM Regression (SVR) derives functional mapping from an input to output real number from the training data [41, 42]. In ε-SVM regression, the set of training data includes feature inputs and observed response values. The goal is to approximate a function that deviates from true response yi by a value not greater than ε for each training input xi.

Suppose, the training set is represented by (9)

$$D = \left\{ {(x_{1} ,y_{1} ),(x_{2} ,y_{2} ),.....(x_{m} ,y_{m} )\} } \right..$$
(9)

Here, X is m dimensional vector, and yi is real number represents output for each xi.

The function F(x), which maps xi to output yi, is given by (10)

$$F(x) \Rightarrow w^{T} *x_{i} + b,$$
(10)

where, w is the weight vector and b is the bias.

The goal of SVR is to estimate the kernel function f(x), such that it gives the best fit of the data. In ε-SVM regression, goal is to identify function f(x) that can deviate by maximum epsilon error ε from desired goal yi for each training point xi. It means that for every input vector x, condition as (11) should be met

$$\begin{gathered} y_{i} - w^{T} x_{i} - b \le \varepsilon \hfill \\ w^{T} x_{i} + b - y_{i} \le \varepsilon . \hfill \\ \end{gathered}$$
(11)

Errors are not taken cared as long as they are less than ε. The margin is 1/\(\left\| w \right\|^{2}\). For simplifying computations, when function is minimizing ||w||2, margin can be maximized by 1/\(\left\| w \right\|^{2}\). In such case, as per classical optimization theory, training in SVR can be visualized as a constrained optimization problem, given by (12) and (13)

$${\text{Minimize}}:L(w) = \frac{1}{2}\left\| w \right\|^{2}$$
(12)
$${\text{Subject to}}:w^{T} x_{i} + b - y_{i} \le \varepsilon ,$$
(13)

where L is the Lagrangian.

It should be noted that there is no margin of error in above problem formulation. To allow some errors indicating presence of noise in the data, above problem can be modified as Lagrangian constrained optimization problem and objective function is marginally sacrificed inducing slack variables \(\xi\) and \(\xi^{*}\). The revised optimization problem is written as (14) and (15)

$${\text{Minimize}}:\frac{1}{2}\left\| w \right\|^{2} + C\sum\limits_{i = 1}^{P} {(\xi_{i} + } \xi_{i}^{{^{ * } }} )$$
(14)
$$\begin{gathered} {\text{Subject to}}:yi - w^{T} xi - b \le \varepsilon + \xi i;i = 1,....P \hfill \\ w^{T} xi + b - yi \le \varepsilon + \xi i^{ * } ;i = 1,....P, \hfill \\ \end{gathered}$$
(15)

where \(\xi_{i}\) and \(\xi_{i}^{{^{ * } }}\)  ≥ 0; i = 1 P. The constant C > 0 is the regularization parameter or penalty value and sets trade-off between the desired optimal value amounts of deviations (larger than ε) permitted. During training of the record, coarse values of three design parameters, namely, cost, precision epsilon, and kernel scale width, are selected using guidelines given in [43], which are further fine-tuned for deriving the final model.

Back-Propagation Neural Network (BPNN)

Neural network, due to its generalization ability, is capable to solve many non-linear function approximation problems with good accuracy. With its self-adaptive learning ability, it tries to find the function mapping between input features with targeted output value. Back-propagation is one of the most widely used methods for supervised learning of MLP. Back-propagation algorithm constitutes two phases of data flow. First, input pattern is propagated from input terminal to the output layer and produces an estimated output. Error signal is computed as difference between estimated outputs to the desired (known) output. This error signal is back propagated from the output layer to hidden layer to update the weights of hidden/input layer. These weights will be kept updated till, and the error becomes sufficiently small. Discussion on back propagation neural network (BPNN) algorithm along with various heuristics to overcome few disadvantages of basic BPNN algorithm like (a) local minima and (b) slow convergence, is available in [23].

In this work, fully connected neural network containing 6 neurons input layer, 15 neurons hidden layer and output layer indicating systolic and diastolic blood pressure is used. Figure 12 shows details of approach of neural multi-layer perceptron network to solve the estimation of blood pressure using features extracted from ECG and PPG.

Fig. 12
figure 12

Block diagram for neural-based model for blood pressure estimation

Two outputs, namely, systolic pressure and diastolic pressure, is to be estimated using neural network. Total six features, as mentioned earlier, are used to train neural network. For training the network, following selection of parameters for neural network is used.

  1. (a)

    Selection of number of neurons:

The number of neurons in the hidden layer plays an important part for successful training. In general, it is observed that increase in number of neurons may help to map non-linearity between input and desired outputs. However, "more is always better" does not always work in neural network and sometimes utilizing more number of neurons than required, may cause undesired interpolation errors and degrade network performance. Various studies have given different heuristics and among them most commonly found are to start with number equal average of number of input and output neurons. If desired performance is not achieved, we may increase/decrease number of neurons in hidden layer using trial-and-error method. For complex mapping problem like BP estimations where variability between different inputs and inputs itself with respect to time is high, we may start with slightly higher number than average values. Table 4 shows the test results of MSE for experiment with different number of hidden layer neurons.

Table 4 Test results carried out for number of hidden layer neurons

As shown in Table 4, experimentation is carried out with 10, 15, and 20 neurons in hidden layer. Network with 15 neurons in a hidden layer is found giving minimum MSE (0.0710) and, hence, is selected for proposed work.

  1. (b)

    Selection of transfer function:

Transfer function plays an important role in neural network training as it gives required non-linearity between desired output and actual output (available after passing through weights and bias). Different types of transfer functions namely linear, sigmoid, tansig, etc. are available. In our work, after pre-processing and normalization, as our inputs range between positive values, 'sigmoid' activation function is selected at hidden layer. For output layer, main task is to classify (predict) the different output values, and hence, 'linear' function is used.

  1. c)

    Learning function and selection of training mode:

To speed up training ‘Traingda’, one of the neural network training function is used. It updates weight and bias values as per standard gradient descent adaptive rule to minimize the error performance MSE. There are two modes of training available: (a) incremental training and (b) batch mode of training. Incremental mode is preferred for dynamically evolving network and is computationally costly. For prediction (classification) problems, whenever sufficient data are available for training; batch mode works well and is used for BP estimation in this work.

  1. (d)

    Initializations of learning parameters:

Success of any search algorithm heavily depends upon the point at which it starts. If target is known, starting search from nearby point will help to reach desired results. However, for complex problems, initialization depends upon many parameters, and having variation in data, selection of starting point is a critical problem. Unlike various numerical optimization methods, starting from all zeroes (weights and bias) can result in catastrophic failure as it is highly biased condition. Heuristic algorithms used in black-box architectures tend to give better results (may be after few trails) when parameters are randomly initialized. In this situations, when they get favorable initial conditions, will give best of results. Hence, we have used ‘random’ selection of training parameters (weights and biases).

  1. (e)

    Selection of evaluation parameter:

Like most learning algorithms, back propagation algorithm also inherently requires differentiability, and mean square error (MSE) or sum squared error (SSE) is an obvious choice.

Support Vector Machine (SVM) Pre-classifier

Support Vector Machine (SVM) is a supervised data classification method. Binary SVM classifiers have been extended for multi-class classification applications [44]. During training corresponding to each input set, one of the labels from output class is defined. After training when testing set is given, SVM model predicts the output label.

Training of Distributed Model

In this work, training set containing a wide range of systolic pressure values is distributed into 3 smaller sub-groups (having a small range) of blood pressure 90–120 mm of Hg, 120–150 mm of Hg, and 150–180 mm of Hg. For each of 3 sub-groups, a separate model is trained for systolic and diastolic blood pressure estimation, as shown in Fig. 13.

Fig. 13
figure 13

Training of proposed distributed model scheme

At the same time, SVM pre-classifier is also trained for each of 3 groups with the help of known labels of 3 models class. During test phase, first extracted features are passed through SVM pre-classifier and further diverted to the relevant blood pressure estimation model.

Results and Discussion

For all methods of blood pressure estimation comparison with British Hypertension Society, grading criteria has been used. According to BHS criteria, the absolute difference of blood pressure between standard reference value and estimated value using different methods in mm of Hg must be less than some threshold value specified in Table 5 for getting a particular BHS grade. Grades are derived from cumulative percentage of reading within 5, 10, and 15 mm of Hg [17]. To achieve a grade, all three percentage must be equal to or greater than the tabulated values.

Table 5 BHS Standard grades blood pressure measurement

AAMI [16] requires blood pressure measurement device/method to have Mean Error (ME) and Standard Deviation (STD DEV) given by (16) and (17), values below 5 and 8 mm-Hg, respectively

$${\text{ME}} = \frac{1}{n}\sum\limits_{j = 1}^{n} {(y_{{_{j} }} - \hat{y}_{{_{j} }} )}$$
(16)
$${\text{STD DEV}} = \sqrt {\frac{1}{n}\sum\limits_{j = 1}^{n} {(y_{j} - \hat{y}_{j} )^{2} } } ,$$
(17)

where \(y_{j}\) and \(\hat{y}_{j}\) are actual blood pressure value and predicted value for test features. Results on MIMIC and wireless database are discussed as follows.

Validation of Proposed Algorithm on MIMIC Database

To prove efficacy of proposed work, traditional techniques like multiple linear regression, single model approach of SVR and BPNN methods are implemented and evaluated on MIMIC in addition to proposed distributed methods. It should be noted that for comparison of all methods, same training MIMIC data set was used and performance is evaluated on same testing set. Performance evaluation of various methods for estimation of blood pressure to meet BHS and AAMI standards is shown in Table 6 and Table 7, respectively. Systolic pressure estimation using multiple linear regression results in 23.3% test records have error less than 5 mm of Hg, 45.4% records have error less than 10 mm of Hg error, while 63.6% records are having error less than 15 mm of Hg. For diastolic estimation, total 31% test records are having error less than 5 mm of Hg, 71% records having estimation error less than 10 mm of Hg, while 91% records having error less than 15 mm of Hg. For systolic pressure estimation, more than 75% test records have error less than 10 mm of Hg, and more than 90% records have error less than 15 mm of Hg. It is observed that for systolic pressure estimation using SVR, total 26% records have error less than 5 mm of Hg, 55% records have error less than 10 mm of Hg, while 71% test records have error less than 15 mm of Hg. For only 29% records, estimated values are greater than 15 mm of Hg. For diastolic pressure estimation, 35% records have error less than 5 mm of Hg, 78% records have error less than 10 mm of Hg, and 84% test records are having error less than 15 mm of Hg. Total 16% test records have error greater than 15 mm of Hg for diastolic pressure estimation. As shown in Table 6, to achieve BHS standards for systolic pressure estimation, proposed distributed architecture using BPNN and SVR method fall under grade B, whereas traditional approaches are not able to achieve any grades.

Table 6 Performance evaluation of various methods for estimation of blood pressure to meet BHS standards
Table 7 Performance evaluation of various methods for estimation of blood pressure to meet AAMI standards

Similarly, for diastolic pressure estimation, the proposed distributed model using SVR and BPNN approaches achieves grade A, whereas traditional methods fail to achieve any grades.

Table 7 demonstrates the performance of various methods to achieve AAMI standards. For proposed method using SVR and BPNN, values of mean error and standard deviation for both pressures are within AAMI standards. It can be seen that traditional methods for same set of experiment do not show compliance with AAMI standards.

Tables 8 and 9 show comparison with reported work in literature where MIMIC database has been used. Artificial Neural Network (ANN) and Random Forest Regression (RFR) are used with single model approach in reported work. Table 8 demonstrates comparison carried out for blood pressure estimation to fulfil BHS standards. For systolic pressure estimation, it is clear that proposed work using SVR and BPNN shows grade B, whereas other reported works fail to achieve any grades. Proposed work for diastolic and MAP estimation achieves grade A which shows improvement over other work.

Table 8 Comparison with other reported work to fulfil BHS standards on MIMIC database
Table 9 Comparison with reported work to fulfil AAMI standards on MIMIC database

Table 9 shows comparison of proposed work with other work to fulfil AAMI standards. The values of ME and STD DEV for other reported work are quite higher than limit values given by AAMI standards. At the same time, ME as well as STD DEV values for systolic, diastolic, and MAP pressure estimations using proposed approach are within acceptable margin of AAMI criterion.

Bland–Altman’s plots for systolic and diastolic pressure estimation error using proposed method using SVR are represented by Figs. 14 and 15, respectively. The Bland–Altman plot is a graphical method to compare two measurements techniques. Here, this is used to compare estimated results of blood pressure using proposed distributed approach with target values (actual/true values of blood pressure). In this plot, differences between the estimated pressure and actual pressure are plotted against their averages. The accuracy of proposed distributed model approaches is evident as majority of values are inside the upper and lower limits of the agreement (LOA). In Altman plot, the x-axes of the plots present the average of target and estimated value of systolic pressure/diastolic pressures, where the y-axes demonstrate difference between the target value and estimated blood pressure using proposed method. The mean and limits of agreement are highlighted solid lines between small squares and cross points, respectively. The mean + -S.D. errors for systolic estimation are 1.14 ± 7.69 mm of Hg, while for diastolic estimation, mean + -S.D. error is 0.88 ± 6.201 mm of Hg.

Fig. 14
figure 14

Bland Altman’s plot for systolic estimation error using proposed work

Fig. 15
figure 15

Bland–Altman’s plot for diastolic estimation error using proposed work

In our proposed distributed architecture, Support Vector Machine (SVM) is appended as pre-classifier stage that precedes the generally available architecture in literature. This additional pre-classifier segregates data into Low, Medium, and High range of blood pressure. Having clear distinction among larger input range and then submitting to blood pressure estimation stage, task of estimation becomes easy and errors whether it is mean error or standard deviation get more accurate and their values decrease than other methods used in literature.

Testing of Proposed Algorithm on Wireless Database

The ECG-PPG signals of 87 subjects were captured using wireless prototype system as discussed in Sect. 2, after getting their written consent. To validate the results of proposed work, the estimated values are verified against pressure readings measured by sphygmomanometer. Systolic and diastolic pressures are estimated using proposed distributed model approach using SVR and BPNN. Results; summary is presented in Tables 10 and 11. Wireless database is captured using prototype model, so comparison of the results would not be genuine if done with similar work where wireless database is considered. According to the BHS standard, the proposed method achieves grade A in the estimation of systolic and diastolic estimation as shown in Table 10. Results of BP estimation using two different conventional machine learning methods of Multiple Linear Regression [28] and Support Vector Regression [29] and advanced machine learning trick like Deep Learning [30] are compared with proposed work. The Mean Error in systolic and diastolic estimation using proposed work is quite less compared to result of reported work.

Table 10 Result of proposed work to fulfil BHS standards on wireless database
Table 11 Result of proposed work to fulfil AAMI standards on wireless database and comparison with similar work

Conclusion

In this paper, proposed distributed model architecture for continuous and cuff-less blood pressure estimation achieves good accuracy keeping computational cost reasonably low. The hardware device includes analog front end circuits to capture single lead ECG and PPG. Using prototype device, from total 87 actual subjects, simultaneous wireless ECG and PPG signals are captured, which are pre-processed first, and then, time domain features are extracted from them. MIMIC database is also used to prove efficacy of proposed work. The testing results of proposed work on MIMIC and wireless database show significant improvement in estimation of blood pressure. According to the BHS standard, the proposed distributed model has achieved grade A in the estimation of diastolic pressure and mean arterial pressure, and it achieves grade B in the estimation of the systolic pressure value for MIMIC database. The values of mean error and standard deviation are within AAMI standards for MIMIC database. For wireless data, the proposed algorithm achieves estimation of systolic as well as diastolic pressure into grade A according to BHS. The mean error and standard deviation for systolic and diastolic estimation are quite low within acceptable margin according to AAMI standard. Proposed distributed model improves the accuracy of blood pressure estimation compared to similar work and results in high acceptability according to BHS and AAMI standards.