Detection of a and b waves in the acceleration photoplethysmogram
- Mohamed Elgendi^{1}Email author,
- Ian Norton^{2},
- Matt Brearley^{2},
- Derek Abbott^{3} and
- Dale Schuurmans^{1}
https://doi.org/10.1186/1475-925X-13-139
© Elgendi et al.; licensee BioMed Central Ltd. 2014
Received: 6 August 2014
Accepted: 19 September 2014
Published: 25 September 2014
Abstract
Background
Analyzing acceleration photoplethysmogram (APG) signals measured after exercise is challenging. In this paper, a novel algorithm that can detect a waves and consequently b waves under these conditions is proposed. Accurate a and b wave detection is an important first step for the assessment of arterial stiffness and other cardiovascular parameters.
Methods
Nine algorithms based on fixed thresholding are compared, and a new algorithm is introduced to improve the detection rate using a testing set of heat stressed APG signals containing a total of 1,540 heart beats.
Results
The new a detection algorithm demonstrates the highest overall detection accuracy—99.78% sensitivity, 100% positive predictivity—over signals that suffer from 1) non-stationary effects, 2) irregular heartbeats, and 3) low amplitude waves. In addition, the proposed b detection algorithm achieved an overall sensitivity of 99.78% and a positive predictivity of 99.95%.
Conclusions
The proposed algorithm presents an advantage for real-time applications by avoiding human intervention in threshold determination.
Keywords
Introduction
Although the clinical significance of Accelerated Plethysmograph (APG) measurement has been well-investigated [1–4], there are still a lack of studies focusing on the automatic detection of a and b waves in APG signals. However, Matsuyama [5] attempted to determine which of the nine QRS algorithms of Friesen’s ECG algorithms [6] suit the detection of a waves in APG signals—this is because the morphology of the R peak in ECG signal is similar to the a wave in the APG signal. The detection rate was below 63% for all nine algorithms, even after modifying the thresholds with different values. Matsuyama [5] recommended that a new robust algorithm be developed for both APG and ECG signals. Therefore, our investigation herein is aimed at developing a robust algorithm to detect a waves in APG signals and to compare its performance with the prior nine a detection algorithms [5]. Up to the present there has been no attempt to detect b waves in APG signals; and therefore a new method for detecting the b wave is now introduced. To validate the robustness of the developed algorithms, noisy APG signals—measured at rest and after exercise—were tested.
As depicted in Figure 1, the APG waveform comprises four systolic waves (a, b, c, and d waves) and one diastolic wave (e wave) [2]. In our study, the height of detected a and b waves was measured from the baseline—the values of a waves are positive (above the baseline), while the values of b waves are negative (under the baseline). The main focus of this study is to provide a robust detection algorithm for a and b that can be used in clinical studies, e.g., carotid distensibility and ageing [9].
Materials and methods
Ethics statement
There is one annotated APG database available at Charles Darwin University. The data were collected during rest (before exercise) and after one hour of exercise (walking) on a treadmill in the climate control chamber at Northern Territory Institution of Sport (Darwin, Australia). The speed of treadmill was set to 5 km/h with a one percent incline increment corresponding to the effort required to walk with 8 kg of webbing. The exercise was considered to be of moderate intensity, and the background of the entire project can be found in [5]. All subjects provided written informed consent before participation, which was approved by the Charles Darwin University Ethics Committee. The database is available upon request at Charles Darwin University: http://www.cdu.edu.au/ehse.
Data used
The PPGs of 27 healthy volunteers (males) with a mean ± SD age of 27 ± 6.9 were measured using a photoplethysmography device (Salus APG, Japan), with the sensor located at the cuticle of the second digit of the left hand, in which all subjects were included. Measurements were taken while the subject was at rest on a chair. The PPG data were collected at a sampling rate of 200 Hz and the duration of each recording was 20 seconds. The PPG recordings of 20 seconds are intentionally much shorter than is usual for ECG recordings to exclude motion artefacts and other noise [10]. This also serves as a preliminary test of feasibility, where the ease of shorter recording lengths is desirable in a clinical setting.
The annotations were carried out by only one PPG specialist, which is sufficient for this preliminary proof-of-concept study. The signals measured during rest, before exercise, contained a total of 584 heartbeats, whilst the PPG signals collected after one hour of exercise with a total of 885 heartbeats, and two hours of exercise with total of 956 heart beats; the background of the entire project can be found in [5]. For signal analysis and wave detection, MATLAB 2010b (The MathWorks, Inc., Natick, MA, USA) was used.
Training set
The PPG signals collected after 1 hour of exercise were used for training as they includes different shapes of PPG waveforms and noise. Moreover, it contained fast rhythm PPG signals, with a total of 885 heart beats, which had an impact on the detection accuracy.
Test set
PPG signals were measured at rest (before the exercise), with a total of 584 heart beats, and after 2 hours of exercise, with a total of 956 heart beats, were used for testing.
Methodology
We discuss and evaluate nine algorithms that are used by Matsuyma [5] to detect a waves in APG signals, and introduce a new algorithm that demonstrates greater robustness and accuracy for the a wave detection under conditions of heat stress. All of the algorithms we evaluate are advantageous in that they do not impose an extensive computational overhead that is often required in biosignal analysis.
In describing the algorithms for a wave detection in this article, note that X[ n] refers to the raw PPG signal; while S[ n] refers to the filtered X[ n] signal. Here, THR_{1}, THR_{2}, and THR_{3} refer to the the first, second, and third threshold, consequently.
Nine algorithms
- 1.
AF1: This algorithm is based on the algorithm developed by Morizet-Mahoudeaux [11]. The algorithm examines the amplitudes and slopes of the APG signals, which form the distinctive feature of the a wave, exceed certain thresholds. The slope is the first derivative of the APG signal, S[ n]=X[ n+1]−X[ n−1], followed by three fixed thresholds. The optimal values of these thresholds are defined by Matsuyama [5] as follows: THR_{1}=0.31 max(X[ n]), THR_{2}=0.0001, and THR_{3}=−0.001.
- 2.
AF2: This algorithm is based on the algorithm developed by Fraden and Neuman [12]. The algorithm examines the amplitudes and the slopes of the APG signal. The optimal threshold values for the amplitudes and slopes (positive) are THR_{1}=0.21 max(X[ n]) and THR_{2} = 0.75 [5]. The APG signal X[ n] is rectified. The absolute value of the APG signal is taken as X _{1}[ n]=|X[ n]|. This signal X _{1}[ n] is then modified using the amplitude threshold THR_{1} as follows: X _{2}[ n]=X _{1}[ n] if X _{1}[ n]>THR_{1} and X _{2}[ n]=THR_{1} if X _{1}[ n]<THR_{1}. Then, the first derivative of X _{2}[ n], S[ n] is calculated as S[ n]=X _{2}[ n+1]−X _{2}[ n−1], followed by a threshold S[ n]>THR_{2}.
- 3.
AF3: This algorithm is based on Gustafson’s algorithm [13]. This algorithm not only examines the positive slopes but also the product of the slope and amplitude of the APG signal. The first derivative S[ n] is defined as S[ n]=X[ n+1]−X[ n−1], followed by an optimal threshold value THR_{1}=62 [5].
- 4.
FD1: The concept for this algorithm was taken from Menrad [14]. This algorithm examines the slopes of the APG signal. Menard defined the first derivative as follows: S[ n]=−2X[ n−2]−X[ n−1]+X[ n+1]+2X[ n+2], followed by an optimal slope threshold THR_{1}=0.099 max(S[ n]).
- 5.
FD2: This algorithm is based on the method developed by Holsinger [15]. The algorithm examines the slopes of the APG signal. The first derivative S[ n] is described as: S[ n]=X[ n+1]−X[ n−1]. The optimal threshold value for the positive slopes is: THR_{1}=150 [5].
- 6.
FS1: This algorithm is a simplified version of the technique presented by Balda [16]. The first and second derivatives of the APG signal are employed. The following absolute values of the first and second derivative of the APG signals are obtained by X _{1}[ n]=X[ n + 1]−X[ n − 1] and X _{2}[ n]=X[ n + 2]−2X[ n]+X[ n − 2]. The filtered PPG signal is calculated using these derivatives as follows: S[ n]=1.3X _{1}[ n]+1.1X _{2}[ n], followed by an optimal threshold value THR_{1}=154.5 [5].
- 7.
FS2: This algorithm adapts the QRS detection technique developed in 1983 by Ahlstrom and Tompkins [17]. This algorithm examines the first and second derivative of the APG signal. The rectified first derivative is calculated as X _{1}[ n]=a b s(X[ n+1]−X[ n−1]). The rectified first derivative is then smoothed as X _{2}[ n]=(X _{1}[ n−1]+2X _{1}[ n]+X _{1}[ n+1])/4. The absolute value of the second derivative is calculated as X _{3}[ n]=X[ n+2]−2X[ n]+X[ n−2]. The smoothed absolute values of the first derivative are added to the absolute values of second derivative as follows Y[ n]=X _{2}[ n]+X _{3}[ n], followed by two thresholds THR_{1}=0.1 max(S[ n]) and THR_{2}=0.8 max(S[ n]).
- 8.
DF1: This algorithm is adapted from the one developed by Engelse and Zeelenberg [18]. The algorithm employs digital filters, such as a differentiator and a low-pass filter. A differentiator is applied to the APG signals X _{1}[ n]=X[ n]−X[ n−4], then passed through a digital lowpass filter S[ n]=X _{1}[ n]+4X _{1}[ n−1]+6X _{1}[ n−2]+4X _{1}[ n−3]+X _{1}[ n−4], followed by a threshold THR_{1}=21.
- 9.
DF2: This algorithm is based on Okada’s QRS detection algorithm [19]. The algorithm uses digital filters, such as a moving average filter and a low-pass filter. The first step is to smooth the APG signals with a three-point moving average filter X _{1}[ n]=X[ n−1]+2X[ n]+X[ n+1]. Then pass X _{1} through a low-pass filter as follows ${X}_{2}\left[\phantom{\rule{0.3em}{0ex}}n\right]=\sum _{k=n-m}^{n+m}{X}_{1}\left[\phantom{\rule{0.3em}{0ex}}k\right]/(2m+1)$, where m=3. The next step is squaring the difference between the input X _{1}[ n] and output X _{2}[ n] of the low-pass filter X _{3}=(X _{1}[ n]−X _{2}[ n])^{2}, followed by a filtering step ${X}_{4}\left[\phantom{\rule{0.3em}{0ex}}n\right]={X}_{3}\left[\phantom{\rule{0.3em}{0ex}}n\right]{\left(\sum _{k=n-m}^{n+m}{X}_{3}\left[\phantom{\rule{0.3em}{0ex}}k\right]\right)}^{2}$. A modification step is done as follows X _{5}[ n]=X _{4}[ n], if [ X _{1}[ n]−X _{1}[ n−m] ][ X _{1}[ n]−X _{1}[ n+m] ]>THR_{1}, otherwise X _{5}[ n]=0, where THR_{1}=1. The last step is thresholding with THR_{2}=0.006 max(X _{5}[ n]) [5].
Proposed method
Bandpass filter
Second derivative
where T is the sampling interval and equals the reciprocal of the sampling frequency and n is the number of data points. Figure 4 shows the second derivative of the filtered PPG signal measured at rest and after exercise. The code line of this step is line 3 in the pseudocode of the a detection algorithm (Algorithm 1).
Cancellation of b wave
At this stage, the a wave of the APG needs to be emphasized to distinguish it clearly for detection. This can be done by clipping the negative parts of the APG signal (Z[ n]=0, if Z[ n]<0). The code line of this step is line 4 in the pseudocode of the a detection algorithm (Algorithm 1).
Squaring
which is important for improving the accuracy in distinguishing the a wave segment in APG signals. The code line of this step is line 5 in the pseudocode of the a detection algorithm (Algorithm 1).
Generating blocks of interest
Blocks of interest are generated using two event-related moving averages that demarcate the a wave and heartbeat areas. The particular method used to generate blocks of interest has been mathematically shown to detect systolic waves [20] and QRS complexes [21].
where W _{1} represents the window size of the systolic-peak duration. The resulting value is rounded to the nearest odd integer. The exact value for W _{1} of 175 ms is determined after a brute force search, which will be discussed later in the Parameter optimization section.
where W _{2} represents a window size of approximately one beat duration. Its value is rounded to the nearest odd integer. The exact value for W _{2} of 1000 ms is determined after a brute force search, which will be discussed later in the Parameter optimization section. The code lines of this step are lines 6–7 in the pseudocode of the a detection algorithm (Algorithm 1).
Thresholding
As discussed, the threshold THR_{2} corresponds to the anticipated a wave duration. If a block is wider than or equal to THR_{2}, it is classified as an a wave. If not, it will be classified as noise. The last stage is to find the maximum absolute value within each block to detect the a wave; the code lines of this step are lines 19–26 in the pseudocode of the a detection algorithm (Algorithm 1). Consecutive a waves are shown in Figure 5 to demonstrate the idea of using two moving averages to generate blocks of interest. Not all the blocks contain potential a waves; some blocks are caused by noise and need to be eliminated. Blocks that are smaller than the expected width for the a wave duration are rejected. The rejected blocks are considered to be noisy blocks and the accepted blocks are considered to contain an a wave. The detected a waves are compared to the annotated a waves to determine whether they were detected correctly. The search range for the true a wave was fixed to ± 50 ms for all algorithms to ensure consistency of comparison.
Detection of b waves
Parameter optimization
Performance of a wave detection algorithms is typically evaluated using two statistical measures: sensitivity (SE) and positive predictivity (+P); whereas SE=TP/(TP+FN) and +P=TP/(TP+FP). Here, TP is the number of true positives (a wave detected as an a wave), FN is the number of false negatives (a wave has not been detected), and FP is the number of false positives (non-a wave detected as an a wave). The SE reported the percentage of true a waves that were correctly detected by the algorithm. The +P reports the percentage of the detected a waves that were true a waves. Similarly, the same statistical measures were used for evaluating the b waves.
A rigorous optimization over all parameters of the a wave detection algorithm: frequency band, W _{ 1 } , W _{ 2 } , and the offset β
Iterations | Frequency band | W _{1} | W _{2} | Offset (%) | SE (%) | +P (%) | Overall accuracy (%) |
---|---|---|---|---|---|---|---|
1 | 0.5–15 Hz | 35 | 200 | 0 | 99.72 | 100.00 | 99.86 |
2 | 0.5–11 Hz | 25 | 200 | 0 | 99.92 | 99.78 | 99.85 |
3 | 1–15 Hz | 35 | 200 | 0 | 99.68 | 100.00 | 99.84 |
4 | 0.5–13 Hz | 35 | 200 | 0 | 99.67 | 100.00 | 99.84 |
5 | 0.5–14 Hz | 20 | 220 | 0 | 100.00 | 99.64 | 99.82 |
6 | 1–14 Hz | 35 | 200 | 0 | 99.64 | 100.00 | 99.82 |
7 | 0.5–14 Hz | 20 | 200 | 0 | 99.92 | 99.71 | 99.82 |
8 | 0.5–14 Hz | 20 | 210 | 0 | 99.92 | 99.71 | 99.82 |
9 | 0.5–13 Hz | 25 | 200 | 0 | 99.84 | 99.78 | 99.81 |
10 | 1–14 Hz | 25 | 200 | 0 | 99.84 | 99.78 | 99.81 |
11 | 1–14 Hz | 25 | 210 | 0 | 99.84 | 99.78 | 99.81 |
12 | 0.5–13 Hz | 20 | 200 | 0 | 99.92 | 99.66 | 99.79 |
13 | 1–15 Hz | 30 | 200 | 0 | 99.75 | 99.82 | 99.79 |
14 | 0.5–15 Hz | 30 | 200 | 0 | 99.68 | 99.89 | 99.78 |
15 | 1–9 Hz | 35 | 200 | 0 | 99.55 | 100.00 | 99.78 |
16 | 0.5–12 Hz | 25 | 220 | 0 | 100.00 | 99.55 | 99.78 |
17 | 0.5–14 Hz | 35 | 200 | 0 | 99.54 | 100.00 | 99.77 |
18 | 1–15 Hz | 30 | 250 | 0 | 99.75 | 99.79 | 99.77 |
19 | 0.5–15 Hz | 25 | 200 | 0 | 99.92 | 99.61 | 99.76 |
20 | 0.5–12 Hz | 25 | 200 | 0 | 99.84 | 99.68 | 99.76 |
. | . | . | . | . | . | . | |
. | . | . | . | . | . | . | |
. | . | . | . | . | . | . | |
5606 | 0.5–8 Hz | 40 | 230 | 10 | 90.22 | 99.88 | 95.05 |
5607 | 0.5–7 Hz | 40 | 230 | 9 | 89.80 | 99.88 | 94.84 |
5608 | 0.5–7 Hz | 40 | 240 | 9 | 89.96 | 99.68 | 94.82 |
5609 | 0.5–7 Hz | 40 | 230 | 10 | 89.21 | 99.88 | 94.55 |
5610 | 0.5–7 Hz | 40 | 240 | 10 | 89.38 | 99.68 | 94.53 |
Results and discussion
Based on the parameter optimization step, the value of α=0, which means there is no need for an offset to improve the detection rate, as it was required in detecting QRS in ECG signals [21] and systolic peaks in PPG signals [20]. This is perhaps because of the sharp clear peak (high amplitude) of the a wave compared to the other APG waves (c, d, and e waves).
Performance of the proposed a wave detection algorithm on the testing dataset (APG signals measured at rest and after 2 hours of exercise)
Before exercise | After 2 hours of exercise | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Record | No of beats | TP | FP | FN | SE (%) | +P(%) | No of beats | TP | FP | FN | SE (%) | +P(%) |
A1 | 26 | 26 | 0 | 0 | 100 | 100 | 43 | 41 | 0 | 2 | 95.34 | 100 |
A2 | 24 | 24 | 0 | 0 | 100 | 100 | 47 | 47 | 0 | 0 | 100 | 100 |
B1 | 17 | 17 | 0 | 0 | 100 | 100 | 44 | 43 | 0 | 1 | 97.72 | 100 |
B2 | 26 | 26 | 0 | 0 | 100 | 100 | 38 | 38 | 0 | 0 | 100 | 100 |
C2 | 20 | 20 | 0 | 0 | 100 | 100 | 37 | 37 | 0 | 0 | 100 | 100 |
C3 | 20 | 20 | 0 | 0 | 100 | 100 | 23 | 23 | 0 | 0 | 100 | 100 |
D2 | 22 | 22 | 0 | 0 | 100 | 100 | 39 | 39 | 0 | 0 | 100 | 100 |
D3 | 19 | 19 | 0 | 0 | 100 | 100 | 27 | 27 | 0 | 0 | 100 | 100 |
E1 | 22 | 22 | 0 | 0 | 100 | 100 | 30 | 30 | 0 | 0 | 100 | 100 |
E2 | 22 | 22 | 0 | 0 | 100 | 100 | 30 | 30 | 0 | 0 | 100 | 100 |
E3 | 19 | 19 | 0 | 0 | 100 | 100 | 38 | 38 | 0 | 0 | 100 | 100 |
G2 | 30 | 30 | 0 | 0 | 100 | 100 | 49 | 48 | 0 | 1 | 97.95 | 100 |
G3 | 19 | 19 | 0 | 0 | 100 | 100 | 42 | 41 | 0 | 1 | 97.61 | 100 |
H3 | 23 | 23 | 0 | 0 | 100 | 100 | 32 | 32 | 0 | 0 | 100 | 100 |
I1 | 22 | 22 | 0 | 0 | 100 | 100 | 35 | 35 | 0 | 0 | 100 | 100 |
I2 | 17 | 17 | 0 | 0 | 100 | 100 | 31 | 31 | 0 | 0 | 100 | 100 |
J2 | 23 | 23 | 0 | 0 | 100 | 100 | 41 | 41 | 0 | 0 | 100 | 100 |
L2 | 24 | 24 | 0 | 0 | 100 | 100 | 37 | 37 | 0 | 0 | 100 | 100 |
L3 | 24 | 24 | 0 | 0 | 100 | 100 | 39 | 39 | 0 | 0 | 100 | 100 |
N2 | 18 | 18 | 0 | 0 | 100 | 100 | 24 | 24 | 0 | 0 | 100 | 100 |
N3 | 20 | 20 | 0 | 0 | 100 | 100 | 31 | 31 | 0 | 0 | 100 | 100 |
O1 | 24 | 24 | 0 | 0 | 100 | 100 | 33 | 33 | 0 | 0 | 100 | 100 |
O2 | 17 | 17 | 0 | 0 | 100 | 100 | 34 | 34 | 0 | 0 | 100 | 100 |
P1 | 26 | 26 | 0 | 0 | 100 | 100 | 34 | 34 | 0 | 0 | 100 | 100 |
P2 | 20 | 20 | 0 | 0 | 100 | 100 | 34 | 34 | 0 | 0 | 100 | 100 |
Q1 | 22 | 22 | 0 | 0 | 100 | 100 | 28 | 28 | 0 | 0 | 100 | 100 |
Q2 | 18 | 18 | 0 | 0 | 100 | 100 | 36 | 36 | 0 | 0 | 100 | 100 |
27 volunteers | 584 | 584 | 0 | 0 | 100 | 100 | 956 | 951 | 0 | 5 | 99.57 | 100 |
Comparison of different a wave detection performance on the testing dataset (APG signals measured at rest and after 2 hours of exercise)
Algorithm | TP (%) | FN (%) | FP (%) | SE (%) | +P (%) | Threshold values | ||
---|---|---|---|---|---|---|---|---|
THR _{1} | THR _{2} | THR _{3} | ||||||
Proposed | 100 | 0.32 | 0 | 99.78 | 100 | M A _{beat}+α | W _{2} | NA |
algorithm | ||||||||
AF1 | 69.5 | 7.5 | 30.5 | 90.25 | 69.5 | 0.31 | 0.0001 | -0.001 |
AF2 | 0.018 | 0.27 | 99.98 | 6.25 | 0.018 | 0.21 | 0.75 | NA |
AF3 | 0 | 0 | 100 | NaN | 0 | 62 | NA | NA |
FD1 | 0.27 | 2.8 | 99.73 | 8.79 | 0.27 | 0.099 | NA | NA |
FD2 | 0 | 0 | 100 | NaN | 0 | 150 | NA | NA |
DF1 | 0 | 0 | 100 | NaN | 0 | 21 | NA | NA |
DF2 | 48.8 | 14.2 | 51.2 | 77.46 | 48.8 | 1 | 0.06 | NA |
FS1 | 2.42 | 0.3 | 97.58 | 88.97 | 2.42 | 154.5 | NA | NA |
FS2 | 42.46 | 6.9 | 57.54 | 86.02 | 42.46 | 0.55 | 0.47 | NA |
The analysis of a regular heart rhythm is simple, as the a waves are repeated with an equally spaced pattern. This regularity helps the time-domain threshold methodologies to detect a waves successfully. The regular heart rhythm is called the normal sinus rhythm in APG signals [24], which means the rhythm is constant and the occurrence of the next beat is predictable. The proposed algorithm easily detects a waves correctly in APG signals with a regular heart rhythm, as shown in Figure 7(a,b,c). The sensation of an irregular heart rhythm is usually related to either premature beats or atrial fibrillation. The proposed algorithm also successfully detected the a waves with premature beats in both conditions at rest and after exercise, as shown in Figures 7(d) and 8(d).
As the detection of b waves depends on the detection of a waves, the performance of the b wave detection scored almost the same result as the a detection algorithm. Because the proposed b detection incurred only one instance of failure, which is a TP shown in Figure 9, the +P becomes 99.95%. This result reflects the robustness of the proposed b detection algorithm against noisy APG signals.
Limitations of the study and future work
One of the next steps regarding the results of this study is to examine the correlation of the a/b ratio—based on the accurately detected a and b waves—using APG signals with age, body mass index, and core temperature. Moreover, there is a need for developing an algorithm that detects the c, d, and e waves.
The proposed algorithm was only tested on normotensive young subjects. The physiology of the photoplethysmogram significantly changes according to health status. As such, the robustness of the proposed algorithm needs to be verified by a study in unhealthy subjects—to diagnose and monitor abnormalities such as arrhythmia, hypertension, diabetes and hyperlipidemia.
It is important to note that the number of PPG records (total of 27) used in the training was modest. A larger sample size and a more diverse data set are needed in order to generalize the findings of this study. Moreover, sampling the PPG signals at a higher rate (above 200 Hz) is required to capture the b waves with greater fidelity. The evaluation of a wave detection was challenging in this study because the number of annotated beats did not allow all possible morphologies found in APG signals under conditions of heat stress to be well represented. To our knowledge, there is no available APG database measured after heat stress that would allow a more thorough assessment and comparison of the tested algorithms.
Conclusion
For all nine QRS algorithms, the detection errors arose from a variety of factors including the existence of irregular heartbeats, low-amplitude peaks, and signals with non-stationary effects. The application of an event-related dual moving average would allow the accurate, computationally simple algorithm we propose to be used for real-time applications and the processing of large databases. A detection algorithm for a waves in APG signals measured after exercise has not been previously addressed in the literature, with the exception of the work of Matsuyama. However, it has been demonstrated that a robust algorithm can be developed for detecting a waves in APG signals collected in a noisy environment with high-frequency noise, low amplitude, non-stationary effects, irregular heartbeats, and high heart rates. The a wave detection algorithm was evaluated using 27 records, containing 1,540 heartbeats (584 heartbeats measured at rest and 956 heartbeats measured after 2 hours of exercise), with an overall sensitivity of 99.78%, and the positive predictivity was 100%, while the b detection algorithm scored an overall sensitivity of 99.78% and a positive predictivity of 99.95%.
Declarations
Acknowledgments
Mohamed Elgendi would like to gratefully acknowledge the Australian government and Charles Darwin University, as their generous scholarships facilitated this research. He appreciates the support of Prof. Friso De Boer, who provided access to the PPG database and valuable comments, and acknowledges Dr. Gari Clifford for the helpful discussions.
Authors’ Affiliations
References
- Seki H: Classification of wave contour by first and second derivative of plethysmogram (in Japanese). Pulse Wave 1977, 7: 42–50.Google Scholar
- Takazawa K, Fujita M, Kiyoshi Y, Sakai T, Kobayashi T, Maeda K, Yamashita Y, Hase M, Ibukiyama C: Clinical usefulness of the second derivative of a plethysmogram (acceleration plethysmogram). Cardiology 1993, 23: 207–217.Google Scholar
- Takazawa K, Tanaka N, Fujita M, Matsuoka O, Saiki T, Aikawa M, Tamura S, Ibukiyama C: Assessment of vasoactive agents and vascular aging by the second derivative of photoplethysmogram waveform. Hypertension 1998,32(2):365–370. doi:10.1161/01.HYP.32.2.365, [http://hyper.ahajournals.org/content/32/2/365.full.pdf+html] 10.1161/01.HYP.32.2.365View ArticleGoogle Scholar
- Bortolotto LA, Blacher J, Kondo T, Takazawa K, Safar ME: Assessment of vascular aging and atherosclerosis in hypertensive subjects: second derivative of photoplethysmogram versus pulse wave velocity. Am J Hypertens 2000,13(2):165–171. doi:10.1016/S0895–7061(99)00192–2, [http://ajh.oxfordjournals.org/content/13/2/165.full.pdf+html] 10.1016/S0895-7061(99)00192-2View ArticleGoogle Scholar
- Matsuyama A: ECG and APG signal analysis during exercise in a hot environment. PhD Thesis Charles Darwin University, Darwin, Australia 2009Google Scholar
- Friesen GM, Jannett TC, Jadallah MA, Yates SL, Quint SR, Nagle HT: A comparison of the noise sensitivity of nine QRS detection algorithms. IEEE Trans Biomed Eng 1990,37(1):85–98. 10.1109/10.43620View ArticleGoogle Scholar
- Elgendi M: Standard terminologies for photoplethysmogram signals. Curr Cardiol Rev 2012,8(3):215–219. 10.2174/157340312803217184MathSciNetView ArticleGoogle Scholar
- Elgendi M: On the analysis of fingertip photoplethysmogram signals. Curr Cardiol Rev 2012,8(1):14–25. 10.2174/157340312801215782View ArticleGoogle Scholar
- Imanaga I, Hara H, Koyanagi S, Tanaka K: Correlation between wave components of the second derivative of plethysmogram and arterial distensibility. Jpn Heart J 1998, 39: 775–784. 10.1536/ihj.39.775View ArticleGoogle Scholar
- Maniwa Y, Amata M, Uchida I, Ohta S, Nunokawa T: The chaos and complex system in medicine. Nihon Chinou Joho Fuzzy J 2003, 15: 635–642.Google Scholar
- Morizet-Mahoudeaux P, Moreau C, Moreau D, Quarante JJ: Simple microprocessor-based system for on-line e.c.g. arrhythmia analysis. Med Biol Eng Comput 1981, 19: 497–500. 10.1007/BF02441319View ArticleGoogle Scholar
- Fraden J, Neuman MR: QRS wave detection. Med Biol Eng Comput 1980, 18: 125–132. 10.1007/BF02443287View ArticleGoogle Scholar
- Gustafson D: Automated VCG interpretation studies using signal analysis techniques. Technical Report R-1044, Charles Stark Draper Laboratory, Cambridge, MA, USA, 1977Google Scholar
- Menrad A: Dual microprocessor system for cardiovascular data acquisition, processing and recording. Proc 1981 IEEE Int. Conf. Industrial Elect. Contr. Instrument 1981, 64–69.Google Scholar
- Holsinger WP, Kempner KM, Miller MH: QRS preprocessor based on digital differentiation. IEEE Trans Biomed Eng 1971, 18: 212–217.View ArticleGoogle Scholar
- Balda RA, Diller G, Deardorff E, Doue J, Hsieh P: The HP ECG analysis program. In Trends in Computer-Processed Electrocardiograms Edited by: van Bemmel JH, Willems JL. 1977, 197–205.Google Scholar
- Ahlstrom ML, Tompkins WJ: Automated high-speed analysis of Holter tapes with microcomputers. IEEE Trans Biomed Eng 1983, 30: 651–657.View ArticleGoogle Scholar
- Engelse WAH, Zeelenberg C: A single scan algorithm for QRS-detection and feature extraction. Proc IEEE Comput Cardiol 1979, 6: 37–42.Google Scholar
- Okada M: A digital filter for the QRS complex detection. IEEE Trans Biomed Eng 1979,26(12):700–703.View ArticleGoogle Scholar
- Elgendi M, Norton I, Brearley M, Abbott D, Schuurmans D: Systolic peak detection in acceleration photoplethysmograms measured from emergency responders in tropical conditions. PLoS ONE 2013,8(10):76585. doi:10.1371/journal.pone.0076585 10.1371/journal.pone.0076585View ArticleGoogle Scholar
- Elgendi M: Fast QRS detection with an optimized knowledge-based method Evaluation on 11 standard ECG databases. PLoS ONE 2013,8(9):73557. 10.1371/journal.pone.0073557View ArticleGoogle Scholar
- Elgendi M, Jonkman M, De Boer F: Frequency bands effects on QRS detection. the 3rd International Conference on Bio-inspired Systems and Signal Processing (BIOSIGNALS2010) 2010, 428–431.Google Scholar
- Elgendi M: Detection of c , d , and e waves in the acceleration photoplethysmogram. Comput Methods Programs Biomed 2014, 117: 125–136. doi:10.1016/j.cmpb.2014.08.001 10.1016/j.cmpb.2014.08.001View ArticleGoogle Scholar
- Braunwald E, Zipes D, Libby P, Bonow R: Braunwald’s Heart Disease: A Textbook of Cardiovascular Medicine, 7th edn. Philadelphia: Saunders; 2004.Google Scholar
- Clifford GD, Azuaje F, McSharry P: Advanced Methods and Tools for ECG Data Analysis, 1st edn. London: Artech House Publishers; 2006.Google Scholar
Copyright
This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/4.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly credited. The Creative Commons Public Domain Dedication waiver (http://creativecommons.org/publicdomain/zero/1.0/) applies to the data made available in this article, unless otherwise stated.