# PPG and Bioimpedance-Based Wearable Applications in Heart Rate Monitoring--A Comprehensive Review
## 5 Heart Rate Monitoring
### Heart Rate Estimation  
After the noise removal in the signal pre-processing step, many literature sources employ standardization of signal amplitudes to have zero mean and unit variance [9; 69; 72]  
\[S(i)=\frac{1}{R}\sum_{R=1}^{R}\frac{S_{R}(i)-\mu(S_{R}(i))}{\sigma(S_{R}(i))} \tag{13}\]  
where \(R\)--number of sensors, \(\mu\)--mean value and \(\sigma\)--standard deviation. For multi-axial supplementary (acceleration or gyroscope) signals, an average of components in \(x,y\) and \(z\) directions is similarly standardized [72] according to  
\[A_{n}(i)=\frac{1}{3}\times\left(\frac{A_{x}(i)-\mu(A_{x}(i))}{\sigma(A_{x}(i) )}+\frac{A_{y}(i)-\mu\big{(}A_{y}(i)\big{)}}{\sigma\big{(}A_{y}(i)\big{)}}+ \frac{A_{z}(i)-\mu(A_{z}(i))}{\sigma(A_{z}(i))}\right) \tag{14}\]  
where \(A_{n}(i)\) denotes the averaged acceleration signal at the \(i\)-th data point. Strictly speaking, standardization can only be performed when the values of a random variable follow a normal distribution. However, authors do not perform normality checks to validate such an approach. Hence, it is not supported by theory. In other sources [70], signal normalization has been conducted to the min-max range according to  
\[S_{\text{norm}}(t)=\frac{S(t)-S_{\text{min}}}{S_{\text{max}}-S_{\text{min}}} \tag{15}\]  
Compared to standardization, this approach does not assume any particular distribution of signal amplitudes and, thus, is universal. The normalized signal \(S\) is divided into segments of size \(N\). \(N\)=\(\delta\) seconds is used in most literature sources [9; 82; 103; 107; 108; 109; 88; 110; 111; 106]. From the second segment onwards, each consecutive segment is translated by a step size w to obtain an overlap (see Figure 16). Partitioning in the b-th segment is given by  
\[S_{b}=\left[S((b-1)\times w)+1\ldots S((b-1)\times w)+N\right] \tag{16}\]  
A shift of, for example, \(w\) = 2 s leads to a 6 s overlap. In each of these segments, HR is calculated. Thus, HR value is estimated every 2 s.  
In cases when the HR values obtained from each individual segment are not feasible, two strategies have been adopted. Firstly, a majority voting scheme where the final HR value is judged upon by considering a majority of segments may be employed [117,118]. Secondly, increasing frame length. In [119], frame lengths in the order of minutes have been used. The idea is that long frame rates possess enough discriminative information to perform recognition regardless the performed activity. It is convenient to estimate the HR itself in the frequency domain by performing a Fourier transform on each signal segment. A permissible frequency band in which a human heart rate may supposedly lie is established. In [9], 0.4-4 Hz corresponding to 24-240 BPM was used. The dominating peak is then extracted in each segment \(b\). If it is outside the permissible frequency band, the signal is rejected altogether [9]. Otherwise, the HR in beats per minute (BPM) is calculated from this dominating frequency as  
\[HR(b)=frequency\times 60 \tag{17}\]  
HR values are then tracked in each segment. Some tolerance value of HR differences among segments must be chosen. For example, in [9], If \(HR(b)-HR(b-1)|\geq 5\), then the \(HR_{estimated}\) of the b-th segment was set to \(HR_{estimated}(b)=\frac{HR(b-1)+HR(b-2)}{2}\). If this condition does not hold, the \(HR_{estimated}\) is equal to HR(b). The authors of [9] remarked that a significant problem is the resolution of the signal at low frequencies after the Fourier transform. This problem can be circumvented by zero-padding the denoised signal up to the required length.