Next Article in Journal
Management of Dry Eye Disease for Intraocular Lens Power Calculation in Cataract Surgery: A Systematic Review
Previous Article in Journal
OMGMed: Advanced System for Ocular Myasthenia Gravis Diagnosis via Eye Image Segmentation
Previous Article in Special Issue
Validation of a New and Straightforward Algorithm to Evaluate Signal Quality during ECG Monitoring with Wearable Devices Used in a Clinical Setting
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Automated Heart Rate Detection in Seismocardiograms Using Electrocardiogram-Based Algorithms—A Feasibility Study

1
Department of Digital Medicine, Medical Faculty OWL, Bielefeld University, 33615 Bielefeld, Germany
2
Smart Sensors Group, Hamburg University of Technology (TUHH), 21073 Hamburg, Germany
*
Author to whom correspondence should be addressed.
Bioengineering 2024, 11(6), 596; https://doi.org/10.3390/bioengineering11060596
Submission received: 30 April 2024 / Revised: 27 May 2024 / Accepted: 6 June 2024 / Published: 11 June 2024
(This article belongs to the Special Issue Addressing Health Disparities with Accessible Sensors and Diagnostics)

Abstract

:
In recent decades, much work has been implemented in heart rate (HR) analysis using electrocardiographic (ECG) signals. We propose that algorithms developed to calculate HR based on detected R-peaks using ECG can be applied to seismocardiographic (SCG) signals, as they utilize common knowledge regarding heart rhythm and its underlying physiology. We implemented the experimental framework with methods developed for ECG signal processing and peak detection to be applied and evaluated on SCGs. Furthermore, we assessed and chose the best from all combinations of 15 peak detection and 6 preprocessing methods from the literature on the CEBS dataset available on Physionet. We then collected experimental data in the lab experiment to measure the applicability of the best-selected technique to the real-world data; the abovementioned method showed high precision for signals recorded during sitting rest (HR difference between SCG and ECG: 0.12 ± 0.35 bpm) and a moderate precision for signals recorded with interfering physical activity—reading out a book loud (HR difference between SCG and ECG: 6.45 ± 3.01 bpm) when compared to the results derived from the state-of-the-art photoplethysmographic (PPG) methods described in the literature. The study shows that computationally simple preprocessing and peak detection techniques initially developed for ECG could be utilized as the basis for HR detection on SCG, although they can be further improved.

Graphical Abstract

1. Introduction

Implementing accelerometer-based heart analysis techniques to analyze the cardiovascular system can make healthcare manageable in remote regions and regions where healthcare procedures, such as echocardiography, are unavailable. The accelerometers suitable for heart activity monitoring are common, low-cost, unobtrusive, and easy to use. One of the core methodologies to measure the activity of the cardiovascular system and the state of health in general is the analysis of the heart rhythm. The implementation of photoplethysmography (PPG) has made the study of heart rhythm affordable; at the same time, this method lacks precision in various conditions, is extremely sensitive to motion artifacts, and is known not to give reliable measurements for people with dark skin [1]. Recent studies show a common disparity between commercially available wearable technology heart rate (HR) monitors and methods based on electrocardiography (ECG) [2]; we might expect comparable precision from accelerometer-based methods.
Much research and many papers are dedicated to the ongoing research on reliable and robust R-peak detection algorithms for ECG. ECG signals are stable and are among the most reliable sources of information on heart rhythm. Nonetheless, the ECG has drawbacks: susceptibility to electromagnetic interference, the imperative for consistent electrode placement (prone to slipping or detachment), optimal skin-electrode impedance (which worsens with gel drying), and associated electrical hazards. Consequently, it may prove unsuitable for continuous, long-term monitoring, especially in daily life scenarios, and often entails discomfort. Portable alternatives, like the Holter monitor, have been utilized for continuous measurement, although they typically allow recordings of no more than 3 days [3]. Moreover, ECG demands the expertise of skilled clinical professionals. However, accessing a healthcare professional for this task may pose challenges, particularly in developing and rural locales.
Ballistocardiography (BCG) [4] and seismocardiography (SCG) [5] can be utilized instead of ECG when non-invasive monitoring of the mechanical aspects of cardiac function, such as body recoil movements or chest wall vibrations, is required. BCG is a non-invasive technique that measures the mechanical activity of the heart by detecting the body’s recoil movements as blood is ejected with each heartbeat. SCG, on the other hand, is a non-invasive method that records the vibrations of the chest wall induced by the heart’s mechanical actions, particularly the opening and closing of heart valves and the myocardial movements. The primary difference between the two lies in their focus: BCG measures the whole body’s recoil forces, while SCG captures localized chest wall vibrations.
BCG and SCG signals are more complicated to utilize as they are prone to disturbances from a wide range of internal and external noise sources. They are also dependent on the placement of the sensor and body composition. If we can precisely detect heart rhythm using BCG/SCG, we can perform heart rate variability (HRV) analysis without acquiring ECG signals, giving us much flexibility and many possible applications. For SCG, for instance, the well-detected heartbeats can be used to acquire the averaged SCG heartbeats to obtain information about the mechanical functioning of the heart derived from fiducial points.
The peak detection method can be presented in two steps:
  • Signal preprocessing (this mainly implies filters and basic mathematical operations), which has signal samples (points) on the input and the output;
  • Peak detection, which takes the signal samples and outputs the sequence of peak timestamps, a one-point pro heartbeat, which is then used to calculate HR and HRV parameters.
The recent review on the topic [6] depicts a wide variety of SCG applications, including HR detection. The paper presented by Garcia-Gonzales et al. [7] proposed using the continuous wavelet transform (CWT) on a filtered signal. Similar methods have also been previously used for ECG. The recent paper by Centracchio et al. [8] utilized template matching based on normalized cross-correlation, which showed promising results in patients with heart diseases. Another paper [9] used a template-based method to detect systoles and diastoles separately.
Other recent studies have acquired comparable precision using algorithms based on the Hilbert transform [10] and signal energy thresholding [11]. These are more accessible than deep learning techniques but are still computationally intensive. Both strategies are highly dependent on the cleanliness of the signal. Some papers propose machine-learning techniques to detect heartbeat intervals, such as convolutional neural networks (CNNs) for classification [12], U-Net neural networks for semantic segmentation [13,14], unsupervised segmentation [15], deep dominant frequency regressor [16], BiLSTM networks [17], and data-adaptive variational mode decomposition (VMD) [18]. Recent studies have also proved the possibility of recording SCG using cameras with a precision that exceeds the PPG method [19]. Those have shown promising results but are hard to implement on edge devices.
Sometimes, research only partially considers signals from various activities and new patients. Studies often test methods in isolation, limiting comparability across approaches. In addition, many research papers have included manual procedures, such as discarding signal parts affected by motion artifacts or other disturbances, which we still want to capture and process automatically. In a real-world scenario, making an algorithm work fully automated without interacting with the final user is necessary.
Although many papers are dedicated to developing peak detection algorithms for SCG signals, the knowledge and practice put into HR detection in ECG can land a basis for effective application in SCG. Morphologically, SCG heartbeat has similar features as ECG—mainly, the most prominent peak pro heartbeat (which in SCG case might be correspondent to either systole or diastole depending on sensor placement and selected axis) and similar frequency spectrum, which makes ECG peak detection and preprocessing methods applicable for SCG in the first precision.
We aim to compare various methods and techniques in a single framework based on data from multiple sources and to select the algorithm with the highest HR evaluation quality in SCG compared to ECG (the gold standard). For that, we identify a set of algorithms developed for ECG peak detection, apply them to the SCG signals derived from open-source datasets and new experimental data, and evaluate their accuracy. The detection quality for the best functioning algorithm is then compared with the SOTA JJ-interval detection algorithms developed directly for SCG in Section 4.

2. Materials and Methods

We proceed in three steps to clarify the research question:
  • In the first step, HR detection algorithms from ECG diagnostics were identified using a literature and software search.
  • In the second step, the precision of these algorithms was tested using a test data set of ECG (gold standard) and SCG data collected in parallel to identify the best methods. The quality of the method is determined by the highest precision in determining the HR (lowest deviation from the gold standard).
  • In the third step, the applicability and precision of the best algorithm are tested on real-life data in an experiment under resting conditions (sitting) and light activity (reading) interference.

2.1. Identification of ECG HR Algorithms and Implementation of Signal Preprocessing and Peak Detection Methods

2.1.1. Identification

We investigated the recent systematic reviews [20,21,22] and code realizations for various techniques to select the set of peak detection and preprocessing methods for HR evaluation of ECG. At the beginning of the study, the choice was made to compare the algorithms already implemented in open-source code to have the possibility to assess and validate them. Utilizing the validated pipelines implemented in open-source packages helped us narrow the room for possible mistakes during code preparation and significantly diminish the implementation time. Therefore, non-open-source realizations of HR detection algorithms, such as those implemented in Kubious HRV software (v.4.0) [23], and methods presented in scientific papers without open-access code publication were excluded from the analysis.
We systematically searched available open-source packages for ECG processing and HRV analysis using the GitHub platform. We selected all relevant packages with at least 5 stars and which contained peak detection algorithms. We evaluated the algorithm implementations presented in the following packages: BioSPPy (v.2.2.2) [24], HeartPy (v.1.2.7) [25], HRV (v.0.2.10) [26], neurokit2 (v.0.2.7) [27], pyHRV (v.0.4.1) [28], PySiology (v.0.0.9.6) [29], RapidHRV (v.0.2.4) [30], and Systole (v.0.3.0) [31] packages. The neurokit2 package (v.0.2.7) [27] was selected as the most adequate for the research goals. It provides the most extensive set of well-described, widely accepted, and computationally non-greedy algorithms, which were most tested and underwent quality assessment.
The application of preprocessing and peak detection methods derived from a well-cited package allowed us to foster the transparency and reproducibility of our research, as we make it easy for researchers to cross-validate our study.
All calculations and visualization in the research were carried out using Python 3.11.4 programming language [32]. We developed the experimental framework based on the neurokit2 package (v.0.2.7) [27]. We tested the feasibility of the package’s peak detection methods and preprocessing pipelines, initially developed for ECG, on recorded SCG signals. We also provide open access to the source code developed during the preparation of this manuscript.

2.1.2. Signal Preprocessing Pipelines

The following preprocessing pipelines were applied in the framework. Cleanup methods filter an ECG signal to remove noise and improve peak-detection accuracy. In total, 6 implemented cleanup methods were implemented and tested using the neurokit2 package together with our proposed filter approach and a raw signal bypass, Table 1.
Specified preprocessing methods were effectively utilized in practical applications as a stage in the heartbeat detection pipelines. Their aims are:
  • to eliminate the low-frequency component with no morphological features below the HR;
  • to eliminate high-frequency distortions induced by motion and other sources;
  • to eliminate the 50 Hz magnetically induced interference, interference currents in the body, and interference currents in the electrode leads;
  • in some cases, to eliminate substantial signal components not directly associated with the primary wave in the signal corresponding to the core fiducial point, usually R-peak (this applies to filters with a short bandpass zone).
Although 50 Hz filtering is irrelevant for HR detection in SCG signals, the presented filtering solutions contain low-pass and high-pass filters that are highly relevant to signals derived from accelerometers. In their work, Elgendi et al. [35] proved that cut-off frequencies influenced the quality of heartbeat detection and proposed the best cut-off frequencies for low-pass and high-pass filters. We anticipate the same will apply to SCG signals. The additional filtering method we present for comparison in the paper has shown the best artifact elimination with signal wave retention for further fiducial points analysis on previously obtained experimental data.

2.1.3. Peak Detection Methods

Peak detection methods take the signal as an input and output the sequence of R-peaks (or corresponding core fiducial points on SCG). Altogether, 15 peak detection methods were compared in the testing framework—Table 2. The selected list includes well-cited and widely used algorithms in the literature suitable for real-time peak detection, starting from the classical Pan and Tompkins (1985) [33] algorithm and up to the introduced in the 2023 approach by Emrich et al. [37]. The methods were implemented using the neurokit2 package.
The chosen methods are based on standard signal processing techniques and are computationally inexpensive, which makes them feasible for real-time calculations. We do not target complex machine learning and, especially, deep learning techniques to make calculations on cheaper edge devices possible. This makes the final solution affordable and feasible for implementation on wearable devices, avoiding high computational complexity.
We also considered only the algorithms that work fully automatically, without any anticipated ad-hoc configuration from the user side.

2.2. Application of the Identified Algorithms to the Test Dataset

2.2.1. Evaluation Strategy

We will refer to the SCG signal’s main anchor points corresponding to the R-peaks on the ECG as J-peaks. In most cases, this point is the peak of the SCG’s systolic or diastolic complex, depending on sensor placement and selected axis.
For each recording, we ran calculations on the 60 s episode, which gives enough signal length to make a precise HR measurement that is not strongly affected by the HRV and signal cut and is widely used in other papers [49]. HR was evaluated based on the number of detected peaks and the signal fragment’s length. To avoid a mismatch between the number of peaks resulting from a non-complete heartbeat at the beginning and the end of the fragment (e.g., when the last R-peak is included in the fragment while the last J-peak is not), we deleted the j-peaks before the first R-peak, the last R-peak, and all J-peaks after the last R-peak. Then, these sequences of detected peaks were used to calculate the HR. The HR was calculated as 60 s divided by the mean length of the RR interval for the segment.
We evaluated the detection accuracy of J-peaks on the SCG with the following approach:
  • the detected R-peaks on ECG were taken as ground truth;
  • the first peak on SCG that hit the particular RR interval was treated as a true positive (TP), while every following peak in the interval was treated as a false positive (FP);
  • each RR interval without any peaks on SCG hitting it is treated as a false-negative (FN).
Precision (positive predictive value), recall (sensitivity), and F1-score were calculated using the standard formulas and TP, FP, and FN values:
Precision = TP TP + FP ,
Recall = TP TP + FN ,
F1 = 2 Precision Recall Precision + Recall .
We did not specify the particular window size after the R-peak for the J-peak to hit to be treated as TP, as it does not affect the accuracy of HR calculation (considering it correctly hit the RR interval).

2.2.2. Reference Dataset

We used the CEBS dataset [7] available at PhysioNet to compare the methods and choose the best approach. The SCG recording in this dataset was acquired using a triaxial accelerometer (LlS344ALH, ST Microelectronics) and a filter with a bandwidth between 0.5 Hz and 100 Hz. The conventional ECG (leads I and II, respectively) was recorded with a bandwidth between 0.05 Hz and 150 Hz. The subjects were asked to be awake and supine on a comfortable conventional single bed during the measurement. The dataset consists of records obtained from 20 subjects.
The dataset contains recordings from a single accelerometer patch with combined axes for 20 healthy subjects in three stages: before listening to the music (up to 5 min of recordings), during music listening (up to 45 min), and after the music (up to 5 min). We evaluated algorithms based on the signals recorded during the second stage, which contains data for the most stable part of the experiment.
Before applying the algorithms, we downsampled the dataset signals to 1 KHz sampling frequency. We used the I lead from ECG to detect the R-peaks.
The complete description of the dataset is available in the original paper [7].

2.3. Testing the Best Algorithm in a Real-Life Setting in Rest and Interfering Activity Conditions

2.3.1. Experiment

We conducted an experiment to evaluate the selected best method on new test data. SCG and ECG were measured in subjects without heart diseases in two modes:
  • 5 min seated, physical rest;
  • 5 min seated, reading the book aloud without any additional physical activity.
The reading was selected as an exercise as speaking is currently among the most critical and frequent sources of disturbances in the SCG. The interference from muscle movements and rapid inhalations during speaking greatly disturbs the waves related to the circulatory system in SCGs.
The inclusion criteria were the capacity to give consent, 18–60 years of age, any gender, fit for duty, and no heart or cardiovascular disease. The exclusion criteria were lack of capacity to consent and known allergy/intolerance to electrode gel/wound dressing.
Study procedure: The study participants were informed about the study. The inclusion and exclusion criteria were requested and checked when they consent to participate in the study. Age, weight, height, and body mass index (BMI) were collected and recorded. While seated, the study participants were taped with 2 SCG sensors and ECG electrodes (Figure 1). The participants were asked to relax and avoid physical activity during the first part of the measurement. The participants were asked to read out loud from a book while avoiding other types of physical activity during the second part of the measurement. The duration of each part of the experiment was 5 min.
Schedule: The subject is fitted with the accelerometer sensors (sternal, apex cordis) and the 1-channel ECG. Before taking the measurements, the operator and the test subject check the available equipment and its functionality. The positions of the reference sensors are approved. The operator then tests the connectivity and checks the data recording. When all readings are satisfactory and no adjustments are required, the operator starts logging data, and the measurement begins. After the last experiment, the logging is stopped, the data is stored and backed up, and the operator and the test subject are released from their positions. The sensors and the ECG are then removed.
A fused sensor system of commercially available 3D accelerometers was used to determine the micro-accelerations. The ECG (electrical potential differences) serves as a reference system.
The study protocol was approved by the Westphalia-Lippe Ethics Committee (act ref. l 2024-134-f-S, 19 March 2024).

2.3.2. Sensor System

The two sensor patches and the ECG are connected to a processing unit (PU) to interface, preprocess, and transmit the measured data. Custom implementation was necessary to support differential Seismocardiogram (SCG) sensing for each patch and ensure time-synchronous acquisition of ECG data, allowing for clock-synchronous interfaces (see Figure 2). The system is described in detail in [50,51].

3. Results

In Section 3, we describe first the algorithm selection approach and then the results of testing the selected algorithm on the experimental data.

3.1. Finding the Best Approach Using the CEBS Dataset

For the comparison between algorithms, we took five randomly selected 60-s episodes of the music-listening part of the recording. We applied each preprocessing method (8) and peak detection method (15) for five 60-s parts of 20 recordings, totaling 12,000 runs.
One of the 15 algorithms, emrich2023, could not work with the SCG (it outputted empty results). All the other combinations provided results with various detection qualities.
The number of heartbeats was calculated for each of the selected sixty-second recordings. The best method was chosen from the iteration with the lowest HR difference between HR detected using ECG and SCG signals. The correctness of the detected R-peaks on the ECG (ground truth) was additionally manually checked using signal visualization to ensure proper labeling. Table 3 shows the resulting accuracy metrics for the top three detection methods, the complete table with all methods is presented in Supplementary Materials Table S1.
The best peak detection methods were the nabian2018, neurokit, and elgendi2010. Figure 3 shows an example of the algorithm working on a 10-s signal fragment.
The combination of the nabian2018 peak detection method with a hamilton2002 has shown the best quality of peak detection, resulting in an average error in HR estimation below 1 bpm. nabian2018 also has a very low computation complexity. This algorithm employs a sliding window of 400 ms duration, moving one sample at a time to scan the entire signal. During each scan, the highest point within the window is identified as a potential R peak when it occurs in the center of the window. This process allows for the detection of resembling R peaks across the entirety of the input ECG signal. The nabian2018 method has shown good results partly because it targeted the highest point in the windows and not the first high point in the window, unlike many other HR detection algorithms based on peak detection principles. The Neurokit2 package [27] contains a simplified version of the Nabian et al. algorithm compared to the one presented in the original paper [44], omitting the post-detection with additional restrictions on peak amplitudes and interpolating missing peaks. We implemented both approaches in the code and compared them back-to-back. The resulting precision for HR detection for the version without peaks post-processing has shown better results for SCG signals.
Table 4 compares various preprocessing techniques when combined with the nabian2018 peak detection method. The cleanup methods had a relatively minor effect on the result.

3.2. Testing the Approach on the Experimental Data

The previous section shows that the HR evaluation method initially developed for ECG can be successfully applied to SCG signals for subjects lying still and in laboratory conditions. To evaluate the application of the selected best algorithm to other conditions and recording hardware, we ran experiments with subjects performing varying activities. The measurements were taken from 3 healthy subjects (male, age = 42.7 ± 6.9) in accordance with the protocol described in Section 2.
We applied the chosen best preprocessing and peak detection methods combination (1) to each patch (2) and axes (3) for five 1-min signal parts per each recording (6), totaling 180 runs. The results for each subject and averaged values for resting and activity interference recordings are shown in Table 5.
Contrary to the CEBS dataset with a single integrated SCG signal, our data allows for selecting patches and axes before HR evaluation. The signal examples for various patches and axes are shown in Figure 4. Similar examples for other subjects and states are presented in Supplementary Materials, Figures S1–S6. The patches for each measurement were selected based on the minimal difference between HR measured in SCG and ECG. In some cases, the difference in precision between various patches was minimal.
There was no statistical difference between HR measured with ECG and SCG for signals recorded while resting (paired two-sided t-test, n = 5; t: 0.365 (p = 0.733), −2.448 (p = 0.071), 1.102 (p = 0.332); normal distribution according to the Kolmogorov–Smirnov test; KS: 0.500 (p = 0.111), 0.500 (p = 0.112), 0.501 (p = 0.111) for HR diff distributions for subjects 1, 2 and 3 respectively). For the recordings with interference, the HR measured from SCG signals tends to be lower than that measured from ECG. The average absolute difference between the recordings compared for all activities was 3.3 ± 3.8 bpm, slightly less than reported for commercially available HR monitors [2].
As for the computational complication, the initial realization of the Nabian et al. algorithm in the neurokit2 package was already among the fastest implemented algorithms with a processing time comparable with the Pan–Tomkins algorithm. The further optimization of the algorithm (compare-and-swap utilization, inner loop elimination by comparing with a previous peak) and code implementation in the Rust programming language [52] allowed us to reduce the processing time for a 5-min recording from 139.38 ms to 0.20 ms when executed on a MacPro M1 2020 16 GB machine, which leaves a sufficient resource margin to be applicable for runtime execution on practically any edge device.

3.3. Analysis of Heartbeat Detection Precision

The detection of HR on the 60-s interval allows for precise HR evaluation even when particular peak occurrence times were not indicated correctly. At the same time, detecting precise beat-to-beat intervals enables HRV analysis and instant HR evaluation, although being especially sensitive to disturbances that affect precise peak time occurrence. We calculated the precision of heartbeat interval evaluation between RR and JJ pairs. For the CEBS dataset, the mean difference between the RR and JJ intervals detected with the selected method was 1.8 ± 1.7 ms (with the mean RR-interval: 849.7 ± 122.1 and the mean J-interval: 849.5 ± 125.1; 5-min recording per subject, 20 subjects). The same values on the new experimental data were 20.8 ± 32.0 ms and 129.8 ± 90.2 ms for relaxation and recorded during interference accordingly (with the mean R-interval: 847.9 ± 122.3 and fg; the mean J-interval: 847.7 ± 125.4 and fg; 5-min recording per subject, 3 subjects each). The other investigated methods have shown lower precision in comparison to the nabian2018 and hamilton2002 combination.
Figure 5 compares the signals recorded during rest and while speaking for three subjects in the experiment. Although the HR can be evaluated for a recording made during reading inference using approximations, analysis of HRV for those signals could not be performed reliably as speech strongly affects the time when the prominent peaks appear in the signal. For that purpose, the intelligent system might be used to distinguish between intervals when only HR and where both HR and HRV characteristics could be evaluated with precision within a defined range of values.
The precise detection of heartbeats on the SCG is also essential, as those serve as anchor points for building averaged heartbeat images, which can be used for fiducial points analysis. Figure 6 shows an example of an averaged heartbeat in various axes derived from our data. These plots can evaluate various mechanical characteristics of heart activity, such as waves corresponding to valves closing and opening.

4. Discussion

The selected combination of peak detection and preprocessing methods showed good results while being computationally very unburdened. The current study proves that a relatively simple algorithm can be used to evaluate HR on SCG, and it would be the same algorithm that works for ECG, which makes the procedure methodologically straightforward. Table 6 compares the current work with the previous results from the literature. In general, we can see commensurate results for all methods. For comparability reasons, we only present here the results from papers that tested algorithms on the CEBS [7] dataset that serves as a common benchmark. Detecting HR using SCGs in conditions such as in the CEBS dataset with agreeable accuracy was proven to be a feasible task for many algorithms. The most prominent algorithm can be chosen as the one with the lowest resource consumption, fastest runtime, and most uncomplicated calculation procedure. Here, the algorithm by Nabian et al. [44] is favorable due to its simplicity and proof of its reliable work for another type of biosignal—ECG.
More research should target SCGs during activities and interferences. For the clean recording with no activity, algorithms as simple as the one we have selected in this research proved to show good precision. At the same time, the experiment showed only moderate precision while speaking interference took place. The algorithms should be further adapted to work in various conditions, such as during disturbances and physical activities.
Another critical question is the choice of the best patch and axis to evaluate heart rhythm. Several approaches can be proposed: ad hoc (choosing the patch and axis before evaluating the HR) and post hoc (detecting HR in all patches and axes and selecting the most reliable evaluation). In our paper, we have selected the patch and axis corresponding to the smallest difference between HR in ECG and SCG. In a real-world scenario where ECG is not available, the possible solution could be using the JJ sequence with the lowest heart rate variability characteristic (such as SDNN—standard deviation of normal JJ-intervals), the power density of the signal spectrum in the interval, or another similar characteristic.
It might sound reasonable that the Z-axis might give the best result, but this is only sometimes true. In some cases in our data, the X or Y axes gave the best result. Also, systolic and diastolic peaks are variously prominent in different axes and locations of the chest surface; this can be clearly seen in Figure 4. The study [10] uses a power spectral density (PSD) plot to identify the frequency domain’s most informative axis per sensor. We used just the HR_diff metric. It might also be reasonable to use SDNN.
HR is more accessible to detect than HRV, which requires precise evaluation of beat-to-beat intervals and not only the right amount of them. HRV is especially difficult to calculate because the peaks on SCG are highly prone to movement artifacts, vary more, and are not as stable in form as the R peaks on the ECG signal. Other problems include breathing, especially at the J-peaks, affecting the exact time when the R-peak and J-peak occur, and the inter-subject variability in SCG morphology (which could be possibly dealt with employing methods not relying much on apriori assumption about the signal shape or specific fiducial points to recognize the heartbeat).
The results obtained from evaluating the precise lengths of heartbeat methods show that the selected method is not reliable enough to detect HRV under interference and also has a large margin for improvement for signals recorded during relaxation. This also raises a question of the applicability of test methods that have shown good results using CEBS data only to new data acquired in less strict conditions than in the respective experiment.

5. Conclusions

Our study demonstrates that relatively simple processing and peak detection methods initially developed for ECG can serve as a foundation for HR detection in SCG data, albeit with room for further refinement, especially for recording made during physical activity. Combining Nabian et al.’s detection method with a proper preprocessing pipeline can effectively measure HR in various subjects. In ideal conditions, J peaks are stable enough to perform HRV analysis. Detected J-peaks allow us to obtain average heartbeat images on SCG and analyze fiducial points on SCG to characterize heart-vessel system conditions.
The described methods could be applied in real-life scenarios with a methodology that classifies the level of physical activity, external disturbances, and signal quality. Implementing such systems will empower a computationally simple yet reliable method and devices for remote monitoring, especially in countries where healthcare accessibility is limited.

Supplementary Materials

The following supporting information can be downloaded at: https://www.mdpi.com/article/10.3390/bioengineering11060596/s1, Table S1: Comparison of peak detection algorithms in combination with the best passing preprocessing pipeline (all methods); Figures S1–S6: The detection results for the hamilton2002 preprocessing and nabian2018 peak detection combination on the experimental data (subjects 1–3, relaxed and with speaking interference).

Author Contributions

Conceptualization, U.-V.A., U.K. and E.P.; methodology, E.P. and U.-V.A.; software, E.P.; hardware: U.K.; formal analysis, U.-V.A. and E.P.; investigation, E.P.; resources, U.-V.A.; writing—original draft preparation, E.P.; writing—review and editing, U.-V.A. and U.K.; visualization, E.P.; project administration, U.-V.A. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding. We acknowledge the support of the publication costs by the Open Access Publication Fund of the University of Bielefeld and the German Research Foundation (DFG).

Institutional Review Board Statement

This study was conducted in accordance with the Declaration of Helsinki and approved by the Westphalia-Lippe Ethics Committee (act ref. l 2024-134-f-S, 19 March 2024).

Informed Consent Statement

Informed consent was obtained from all subjects involved in the study.

Data Availability Statement

The anonymized datasets generated during the study are available from the corresponding author upon reasonable request.

Acknowledgments

The authors want to thank the study participants for taking part in the study and Marcel Gemander for preparing the graphical abstract.

Conflicts of Interest

The authors declare no conflicts of interest.

Computer Code Availability Statement

The codebase for all calculations in the paper is available under the following link: https://gitlab.ub.uni-bielefeld.de/ag4-digitale-medizin/papers/bioengineering-11-00596.

References

  1. Cabanas, A.M.; Fuentes-Guajardo, M.; Latorre, K.; León, D.; Martín-Escudero, P. Skin Pigmentation Influence on Pulse Oximetry Accuracy: A Systematic Review and Bibliometric Analysis. Sensors 2022, 22, 3402. [Google Scholar] [CrossRef]
  2. Reece, J.D.; Bunn, J.A.; Choi, M.; Navalta, J.W. Assessing Heart Rate Using Consumer Technology Association Standards. Technologies 2021, 9, 46. [Google Scholar] [CrossRef]
  3. Kułach, A.; Dewerenda, M.; Majewski, M.; Lasek-Bal, A.; Gąsior, Z. 72 Hour Holter Monitoring, 7 Day Holter Monitoring, and 30 Day Intermittent Patient-Activated Heart Rhythm Recording in Detecting Arrhythmias in Cryptogenic Stroke Patients Free from Arrhythmia in a Screening 24 h Holter. Open Med. 2020, 15, 697–701. [Google Scholar] [CrossRef]
  4. Gordon, J.W. Certain Molar Movements of the Human Body Produced by the Circulation of the Blood. J. Anat. Physiol. 1877, 11, 533–536. [Google Scholar]
  5. Baevskii, R.M.; Egorov, A.D.; Kazarian, L.A. Seismocardiography. Kardiologiia 1964, 4, 87–89. [Google Scholar]
  6. Rai, D.; Thakkar, H.K.; Rajput, S.S.; Santamaria, J.; Bhatt, C.; Roca, F. A Comprehensive Review on Seismocardiogram: Current Advancements on Acquisition, Annotation, and Applications. Mathematics 2021, 9, 2243. [Google Scholar] [CrossRef]
  7. García-González, M.A.; Argelagós-Palau, A.; Fernández-Chimeno, M.; Ramos-Castro, J. A Comparison of Heartbeat Detectors for the Seismocardiogram. In Proceedings of the Computing in Cardiology, Zaragoza, Spain, 22–25 September 2013; pp. 461–464. [Google Scholar]
  8. Centracchio, J.; Parlato, S.; Esposito, D.; Bifulco, P.; Andreozzi, E. ECG-Free Heartbeat Detection in Seismocardiography Signals via Template Matching. Sensors 2023, 23, 4684. [Google Scholar] [CrossRef]
  9. Thakkar, H.K.; Sahoo, P.K. Towards Automatic and Fast Annotation of Seismocardiogram Signals Using Machine Learning. IEEE Sens. J. 2020, 20, 2578–2589. [Google Scholar] [CrossRef]
  10. Milena, Č.; Romano, C.; De Tommasi, F.; Carassiti, M.; Formica, D.; Schena, E.; Massaroni, C. Linear and Non-Linear Heart Rate Variability Indexes from Heart-Induced Mechanical Signals Recorded with a Skin-Interfaced IMU. Sensors 2023, 23, 1615. [Google Scholar] [CrossRef]
  11. Mafi, M. Signal Processing Methods for Heart Rate Detection Using the Seismocardiogram. Ph.D. Thesis, University of Saskatoon, Saskatoon, SK, Canada, 1 July 2016. [Google Scholar]
  12. Suresh, P.; Narayanan, N.; Pranav, C.V.; Vijayaraghavan, V. End-to-End Deep Learning for Reliable Cardiac Activity Monitoring Using Seismocardiograms. In Proceedings of the 2020 19th IEEE International Conference on Machine Learning and Applications (ICMLA), Virtual, 14–17 December 2020; pp. 1369–1375. [Google Scholar]
  13. Tapotee, M.I.; Saha, P.; Mahmud, S.; Alqahtani, A.; Chowdhury, M.E. M2ECG: Wearable Mechanocardiograms to Electrocardiogram Estimation Using Deep Learning. IEEE J. Mag. 2024, 12, 12963–12975. [Google Scholar] [CrossRef]
  14. Duraj, K.M.; Siecinski, S.; Doniec, R.J.; Piaseczna, N.J.; Kostka, P.S.; Tkacz, E.J. Heartbeat Detection in Seismocardiograms with Semantic Segmentation. In Proceedings of the 2022 44th Annual International Conference of the IEEE Engineering in Medicine & Biology Society (EMBC), Glasgow, Scotland, UK, 11–15 July 2022; pp. 662–665. [Google Scholar]
  15. Mora, N.; Cocconcelli, F.; Matrella, G.; Ciampolini, P. Detection and Analysis of Heartbeats in Seismocardiogram Signals. Sensors 2020, 20, 1670. [Google Scholar] [CrossRef]
  16. Chan, M.; Gazi, A.H.; Soliman, M.; Richardson, K.L.; Abdallah, C.A.; Ozmen, G.C.; Nikbakht, M.; Inan, O.T. Estimating Heart Rate from Seismocardiogram Signal Using a Novel Deep Dominant Frequency Regressor and Domain Adversarial Training. In Proceedings of the 2022 IEEE Biomedical Circuits and Systems Conference (BioCAS), Taipei, Taiwan, 13–15 October 2022; pp. 158–162. [Google Scholar]
  17. Chen, Y.; Xu, W.; Zhu, W.; Ma, G.; Chen, X.; Wang, L. Beat-to-Beat Heart Rate Detection Based on Seismocardiogram Using BiLSTM Network. In Proceedings of the 2021 IEEE 20th International Conference on Trust, Security and Privacy in Computing and Communications (TrustCom), Shenyang, China, 20–22 October 2021; pp. 1503–1507. [Google Scholar]
  18. Choudhary, T.; Bhuyan, M.K.; Sharma, L.N. A Novel Method for Aortic Valve Opening Phase Detection Using SCG Signal. IEEE Sens. J. 2020, 20, 899–908. [Google Scholar] [CrossRef]
  19. Liu, L.; Yu, D.; Lu, H.; Shan, C.; Wang, W. Camera-Based Seismocardiogram for Heart Rate Variability Monitoring. IEEE J. Biomed. Health Inform. 2024, 28, 2794–2805. [Google Scholar] [CrossRef]
  20. Neha; Sardana, H.K.; Kanwade, R.; Tewary, S. Arrhythmia Detection and Classification Using ECG and PPG Techniques: A Review. Phys. Eng. Sci. Med. 2021, 44, 1027–1048. [Google Scholar] [CrossRef]
  21. Sahoo, S.; Dash, M.; Behera, S.; Sabut, S. Machine Learning Approach to Detect Cardiac Arrhythmias in ECG Signals: A Survey. Innov. Res. Biomed. Eng. 2020, 41, 185–194. [Google Scholar] [CrossRef]
  22. Murat, F.; Yildirim, O.; Talo, M.; Baloglu, U.B.; Demir, Y.; Acharya, U.R. Application of Deep Learning Techniques for Heartbeats Detection Using ECG Signals-Analysis and Review. Comput. Biol. Med. 2020, 120, 103726. [Google Scholar] [CrossRef]
  23. Tarvainen, M.P.; Niskanen, J.-P.; Lipponen, J.A.; Ranta-aho, P.O.; Karjalainen, P.A. Kubios HRV—Heart Rate Variability Analysis Software. Comput. Methods Programs Biomed. 2014, 113, 210–220. [Google Scholar] [CrossRef]
  24. Carreiras, C.; Alves, A.P.; Lourenço, A.; Canento, F.; Silva, H.; Fred, A. Biosppy: Biosignal Processing in Python. Accessed 2015, 3, 2018. [Google Scholar]
  25. van Gent, P.; Farah, H.; van Nes, N.; van Arem, B. HeartPy: A Novel Heart Rate Algorithm for the Analysis of Noisy Signals. Transp. Res. Part F Traffic Psychol. Behav. 2019, 66, 368–378. [Google Scholar] [CrossRef]
  26. Bartels, R.; Peçanha, T. HRV: A Pythonic Package for Heart Rate Variability Analysis. J. Open Source Softw. 2020, 5, 1867. [Google Scholar] [CrossRef]
  27. Makowski, D.; Pham, T.; Lau, Z.J.; Brammer, J.C.; Lespinasse, F.; Pham, H.; Schölzel, C.; Chen, S.H.A. NeuroKit2: A Python Toolbox for Neurophysiological Signal Processing. Behav. Res. Methods 2021, 53, 1689–1696. [Google Scholar] [CrossRef] [PubMed]
  28. Gomes, P.; Margaritoff, P.; Plácido da Silva, H. pyHRV: Development and Evaluation of an Open-Source Python Toolbox for Heart Rate Variability (HRV). In Proceedings of the International Conference on Electrical, Electronic and Computing Engineering, London, UK, 3–5 July 2019. [Google Scholar]
  29. Gabrieli, G.; Azhari, A.; Esposito, G. PySiology: A Python Package for Physiological Feature Extraction; Springer: Singapore, 2019; ISBN 9789811389498. [Google Scholar]
  30. Kirk, P.A.; Davidson Bryan, A.; Garfinkel, S.N.; Robinson, O.J. RapidHRV: An Open-Source Toolbox for Extracting Heart Rate and Heart Rate Variability. PeerJ 2022, 10, e13147. [Google Scholar] [CrossRef] [PubMed]
  31. Legrand, N.; Allen, M. Systole: A Python Package for Cardiac Signal Synchrony and Analysis. J. Open Source Softw. 2022, 7, 3832. [Google Scholar] [CrossRef]
  32. van Rossum, G.; de Boer, J. Interactively Testing Remote Servers Using the Python Programming Language. CWI Q. 1991, 4, 283–304. [Google Scholar]
  33. Pan, J.; Tompkins, W.J. A Real-Time QRS Detection Algorithm. IEEE Trans. Biomed. Eng. 1985, 3, 230–236. [Google Scholar] [CrossRef]
  34. Hamilton, P. Open Source ECG Analysis. In Computers in Cardiology; IEEE: New York, NY, USA, 2002; pp. 101–104. [Google Scholar]
  35. Elgendi, M.; Jonkman, M.; De Boer, F. Frequency Bands Effects on QRS Detection. Biosignals 2010, 2003, 431. [Google Scholar]
  36. Lourenco, A.; Plácido da Silva, H.; Leite, P.; Lourenço, R.; Fred, A. Real Time Electrocardiogram Segmentation for Finger Based ECG Biometrics. In Proceedings of the International Conference on Bio-Inspired Systems and Signal Processing (BIOSIGNALS-2012), Vilamoura, Algarve, Portugal, 1–4 February 2012; pp. 49–54. [Google Scholar]
  37. Emrich, J.; Koka, T.; Wirth, S.; Muma, M. Accelerated Sample-Accurate R-Peak Detectors Based on Visibility Graphs. In Proceedings of the 2023 31st European Signal Processing Conference (EUSIPCO), Helsinki, Finland, 4–8 September 2023; pp. 1090–1094. [Google Scholar]
  38. Zong, W.; Heldt, T.; Moody, G.B.; Mark, R.G. An Open-Source Algorithm to Detect Onset of Arterial Blood Pressure Pulses. In Proceedings of the Computers in Cardiology, Thessaloniki, Greece, 21–24 September 2003; pp. 259–262. [Google Scholar]
  39. Martinez, J.P.; Almeida, R.; Olmos, S.; Rocha, A.P.; Laguna, P. A Wavelet-Based ECG Delineator: Evaluation on Standard Databases. IEEE Trans. Biomed. Eng. 2004, 51, 570–581. [Google Scholar] [CrossRef]
  40. Christov, I.I. Real Time Electrocardiogram QRS Detection Using Combined Adaptive Threshold. Biomed. Eng. Online 2004, 3, 28. [Google Scholar] [CrossRef]
  41. Gamboa, H. Multi-Modal Behavioral Biometrics Based on HCI and Electrophysiology. Ph.D. Thesis, Universidade Tecnica de Lisboa Instituto Superior Tecnico, Lisboa, Portugal, 2008. [Google Scholar]
  42. Manikandan, M.S.; Soman, K.P. A Novel Method for Detecting R-Peaks in Electrocardiogram (ECG) Signal. Biomed. Signal Process. Control 2012, 7, 118–128. [Google Scholar] [CrossRef]
  43. Kalidas, V.; Tamil, L. Real-Time QRS Detector Using Stationary Wavelet Transform for Automated ECG Analysis; IEEE Computer Society: Washington, DC, USA, 2017; pp. 457–461. [Google Scholar]
  44. Nabian, M.; Yin, Y.; Wormwood, J.; Quigley, K.S.; Barrett, L.F.; Ostadabbas, S. An Open-Source Feature Extraction Tool for the Analysis of Peripheral Physiological Data. IEEE J. Transl. Eng. Health Med. 2018, 6, 2800711. [Google Scholar] [CrossRef] [PubMed]
  45. Sadhukhan, D.; Mitra, M. R-Peak Detection Algorithm for Ecg Using Double Difference And RR Interval Processing. Procedia Technol. 2012, 4, 873–877. [Google Scholar] [CrossRef]
  46. Gutiérrez-Rivas, R.; García, J.J.; Marnane, W.P.; Hernández, Á. Novel Real-Time Low-Complexity QRS Complex Detector Based on Adaptive Thresholding. IEEE Sens. J. 2015, 15, 6036–6043. [Google Scholar] [CrossRef]
  47. Rodrigues, T.; Samoutphonh, S.; Silva, H.; Fred, A. A Low-Complexity R-Peak Detection Algorithm with Adaptive Thresholding for Wearable Devices. In Proceedings of the 2020 25th International Conference on Pattern Recognition (ICPR), Milan, Italy, 10–15 January 2021; pp. 1–8. [Google Scholar]
  48. Koka, T.; Muma, M. Fast and Sample Accurate R-Peak Detection for Noisy ECG Using Visibility Graphs. Annu. Int. Conf. IEEE Eng. Med. Biol. Soc. 2022, 2022, 121–126. [Google Scholar] [CrossRef] [PubMed]
  49. Kobayashi, H. Effect of Measurement Duration on Accuracy of Pulse-Counting. Ergonomics 2013, 56, 1940–1944. [Google Scholar] [CrossRef] [PubMed]
  50. Drobczyk, M.; Lubken, A.; Strowik, C.; Albrecht, U.-V.; Rust, J.; Beringer, J.; Kulau, U. A Wireless Communication Network With a Ballistocardiography Experiment on the ISS: Scenario, Components and Preflight Demonstration. IEEE J. Radio Freq. Identif. 2022, 6, 258–268. [Google Scholar] [CrossRef]
  51. Kulau, U.; Rust, J.; Albrecht, U.V. Demo: BCG Measurement by Differential Sensing in Real-Time; IEEE: New York, NY, USA, 2022; pp. 75–78. [Google Scholar]
  52. Matsakis, N.D.; Klock, F.S. The Rust Language. ACM SIGAda Ada Lett. 2014, 34, 103–104. [Google Scholar] [CrossRef]
Figure 1. The experimental scheme of the measurement. Patch 1 (yellow) is for sternal accelerometers; patch 2 (green) is for apex cordis accelerometers. The other patches belong to the reference ECGs.
Figure 1. The experimental scheme of the measurement. Patch 1 (yellow) is for sternal accelerometers; patch 2 (green) is for apex cordis accelerometers. The other patches belong to the reference ECGs.
Bioengineering 11 00596 g001
Figure 2. A block diagram of the measurement system, showing the primary hardware modules (such as sensor patches, ECG, and processing unit), along with the main firmware blocks within the preprocessing unit (PU).
Figure 2. A block diagram of the measurement system, showing the primary hardware modules (such as sensor patches, ECG, and processing unit), along with the main firmware blocks within the preprocessing unit (PU).
Bioengineering 11 00596 g002
Figure 3. The detection example for the hamilton2002 preprocessing and nabian2018 peak detection combination of methods. Gray curve—raw signal, orange curve—signal after being processed with the hamilton2002 pipeline, black curve in the bottom plot—ECG signal, red vertical lines—timestamps of R-peaks detected on ECG, blue vertical lines—J-peaks detected on SCG, the numbers next to blue vertical lines show the distance from the previous and to the next peak in ms. For the selected interval: precision = 100%, recall = 100%, F1-score = 1.00, HR: 61.9 bpm, n(j_peaks) = n(R_peaks) = 9. The accuracy calculation does not include peaks close to the plot’s border. Signal magnitudes are normalized for demonstrational purposes.
Figure 3. The detection example for the hamilton2002 preprocessing and nabian2018 peak detection combination of methods. Gray curve—raw signal, orange curve—signal after being processed with the hamilton2002 pipeline, black curve in the bottom plot—ECG signal, red vertical lines—timestamps of R-peaks detected on ECG, blue vertical lines—J-peaks detected on SCG, the numbers next to blue vertical lines show the distance from the previous and to the next peak in ms. For the selected interval: precision = 100%, recall = 100%, F1-score = 1.00, HR: 61.9 bpm, n(j_peaks) = n(R_peaks) = 9. The accuracy calculation does not include peaks close to the plot’s border. Signal magnitudes are normalized for demonstrational purposes.
Bioengineering 11 00596 g003
Figure 4. The detection results for the hamilton2002 preprocessing and nabian2018 peak detection combination on the experimental data. Gray curve—raw signal, orange curve—signal after being processed with hamilton2002 algorithm, black curve in the bottom plot—ECG signal, red vertical lines—timestamps of R-peaks detected on ECG, blue vertical lines—J-peaks detected on SCG, the numbers around blue vertical lines show the distance from the previous and to the next peak in ms. The patch with the best precision is shown with a blue frame. For the selected interval: precision = 100%, recall = 100%, F1-score = 1.00, HR: 81.2 bpm, n(j_peaks) = n(R_peaks) = 12. The accuracy calculation does not include peaks close to the plot’s border. Signal magnitudes are normalized for demonstration purposes.
Figure 4. The detection results for the hamilton2002 preprocessing and nabian2018 peak detection combination on the experimental data. Gray curve—raw signal, orange curve—signal after being processed with hamilton2002 algorithm, black curve in the bottom plot—ECG signal, red vertical lines—timestamps of R-peaks detected on ECG, blue vertical lines—J-peaks detected on SCG, the numbers around blue vertical lines show the distance from the previous and to the next peak in ms. The patch with the best precision is shown with a blue frame. For the selected interval: precision = 100%, recall = 100%, F1-score = 1.00, HR: 81.2 bpm, n(j_peaks) = n(R_peaks) = 12. The accuracy calculation does not include peaks close to the plot’s border. Signal magnitudes are normalized for demonstration purposes.
Bioengineering 11 00596 g004
Figure 5. Five-second samples from the middle of the recording for different subjects while resting and during reading interference. All measurements were acquired from Patch 1, axis Z. Gray curve—raw signal, orange curve—signal after being processed with hamilton2002 pipeline, red vertical lines—timestamps of the R-peaks detected on the ECG, blue vertical lines—the J-peaks detected on the SCG, the numbers next to blue vertical lines show the distance from the previous and to the next peak in ms.
Figure 5. Five-second samples from the middle of the recording for different subjects while resting and during reading interference. All measurements were acquired from Patch 1, axis Z. Gray curve—raw signal, orange curve—signal after being processed with hamilton2002 pipeline, red vertical lines—timestamps of the R-peaks detected on the ECG, blue vertical lines—the J-peaks detected on the SCG, the numbers next to blue vertical lines show the distance from the previous and to the next peak in ms.
Bioengineering 11 00596 g005
Figure 6. Averaged plots were created based on detected anchor points (in this case, J-peaks detected on the signal from Patch 1, axis Z were taken as anchor points for all signals); subject 2, relaxed, t = 60 s. The prominent peaks are labeled with letters. The number next to the letter shows the distance between each peak and the anchor point. Gray lines show the individual trajectories of each heartbeat.
Figure 6. Averaged plots were created based on detected anchor points (in this case, J-peaks detected on the signal from Patch 1, axis Z were taken as anchor points for all signals); subject 2, relaxed, t = 60 s. The prominent peaks are labeled with letters. The number next to the letter shows the distance between each peak and the anchor point. Gray lines show the individual trajectories of each heartbeat.
Bioengineering 11 00596 g006
Table 1. Description of signal preprocessing pipelines.
Table 1. Description of signal preprocessing pipelines.
CodenameSourceDescription
neurokitNeurokit2 package [27]0.5 Hz high-pass Butterworth filter (order = 5), followed by powerline filtering (50 Hz)
biosppyBiosppy package [24]a finite impulse response filter with the order defined as [0.3 × sampling rate] with bandpass cut-off frequencies 3 and 45 Hz
pantompkins1985Pan and Tompkins (1985) [33] a 1-order bandpass Butterworth filter with 5 and 15 Hz cut-off frequencies
hamilton2002Hamilton et al. (2002) [34]a combination of 1-order Butterworth 8 Hz high-pass and 16 Hz low-pass filters
elgendi2010Elgendi et al. (2010) [35]a 2-order bandpass Butterworth filter with 8 and 20 Hz cut-off frequencies
current_paperCurrent papera 4-order bandpass Butterworth filter with 5 and 35 Hz cut-off frequencies
engzeemod2012Lourenco et al. (2012) [36]a 5-order bandstop Butterworth filter with 48 and 52 Hz cut-off frequencies
Table 2. Description of peak detection methods.
Table 2. Description of peak detection methods.
CodenameSourceDescription
neurokitNeurokit2 package [27]QRS complexes are detected based on the steepness of the absolute gradient of the ECG signal; subsequently, R-peaks are detected as local maxima in the QRS complexes
pantompkins1985Pan and Tompkins (1985) [33]an algorithm based on dynamically changing thresholds
hamilton2002Hamilton (2002) [34]adaptive thresholding
zong2003Zong et al. (2003) [38]a low-pass filter, slope sum function, and a decision rule
martinez2004Martinez et al. (2004) [39]combined adaptive filters
christov2004Christov et al. (2004) [40]two parallel running algorithms with a combination of three adaptive thresholds: steep-slope, integrating threshold for high-frequency signal components, and beat expectation threshold
gamboa2008Gamboa et al. (2008) [41]the first derivative and restrictions on possible RR lengths
elgendi2010Elgendi et al. (2010) [35]potential blocks generated based on two moving averages and the following thresholding
engzeemod2012Lourenco et al. (2012) [36]5-s intervals to determine adaptive threshold linearly changing in defined intervals
manikandan2012Manikandan and Soman (2012) [42]Shannon energy envelope (SEE)
kalidas2017Kalidas and Tamil (2017) [43]stationary wavelet transform (SWT)
nabian2018Nabian et al. (2018) [44]Pan-Tompkins inspired algorithm with moving windows and highest peak detection
rodrigues2021Sadhukhan and Mitra (2012) [45], Gutiérrez-Rivas et al. (2015) [46], and Rodrigues et al. (2021) [47]double derivative, squaring, moving window integration as preprocessing and a finite-state-machine for decision-making
emrich2023Koka et al. (2022) [48] and Emrich et al. (2023) [37]the fast natural visibility graph (FastNVG) algorithm based on the visibility graph detector; the algorithm transforms the ECG into a graph representation and extracts exact R-peak positions using graph metrics
promacNeurokit2 package [27]combination of several R-peak detectors in a probabilistic way: for a given peak detector, the binary signal representing the peak locations is convolved with a Gaussian distribution, resulting in a probabilistic representation of each peak location; the procedure is repeated for all selected methods, accumulating the resulting signals; a threshold is used to accept or reject the peak locations
Table 3. Comparison of peak detection algorithms in combination with the best passing preprocessing pipeline.
Table 3. Comparison of peak detection algorithms in combination with the best passing preprocessing pipeline.
RankDetection MethodPreprocessing MethodHR (SCG), bpmHR (ECG), bpmHR diff, bpmPrecisionRecallF1-Score
1nabian2018hamilton200270.8 ± 9.870.1 ± 9.80.9 ± 2.498.7 ± 3.199.7 ± 0.90.992 ± 0.018
2neurokithamilton200285.0 ± 21.570.1 ± 9.815.0 ± 21.085.6 ± 17.099.4 ± 1.50.91 ± 0.11
3elgendi2010hamilton200286.0 ± 22.070.2 ± 9.815.8 ± 20.284.3 ± 16.798.9 ± 2.10.901 ± 0.106
Table 4. Comparison of preprocessing pipelines in combination with the peak detection method from Nabian et al. [44].
Table 4. Comparison of preprocessing pipelines in combination with the peak detection method from Nabian et al. [44].
RankDetection MethodPreprocessing MethodHR (SCG), bpmHR (ECG), bpmHR diff, bpmPrecisionRecallF1-Score
1nabian2018hamilton200270.8 ± 9.870.1 ± 9.80.9 ± 2.498.7 ± 3.199.7 ± 0.90.992 ± 0.018
2nabian2018pustozerov202469.9 ± 9.570.1 ± 9.80.9 ± 2.198.6 ± 4.598.3 ± 4.50.985 ± 0.043
3nabian2018elgendi201071.3 ± 10.170.1 ± 9.81.4 ± 3.692.0 ± 9.793.4 ± 9.40.926 ± 0.093
4nabian2018pantompkins198571.2 ± 10.070.1 ± 9.81.5 ± 3.998.0 ± 4.799.4 ± 1.80.986 ± 0.029
5nabian2018biosppy70.3 ± 9.570.8 ± 9.41.8 ± 3.998.3 ± 4.597.7 ± 5.60.979 ± 0.045
6nabian2018none70.3 ± 9.571.5 ± 9.92.5 ± 6.798.0 ± 4.896.7 ± 8.40.972 ± 0.061
7nabian2018engzeemod201270.3 ± 9.571.7 ± 10.02.7 ± 7.298.1 ± 4.896.6 ± 8.80.971 ± 0.063
8nabian2018neurokit71.1 ± 9.671.4 ± 9.83.2 ± 6.897.0 ± 5.396.8 ± 8.30.967 ± 0.060
Table 5. The resulting precision of selected methods when applied to the experimental data (n = 30), detection method: nabian2018, preprocessing method: hamilton2002.
Table 5. The resulting precision of selected methods when applied to the experimental data (n = 30), detection method: nabian2018, preprocessing method: hamilton2002.
SubjectStateBest Patch and AxesHR (SCG), bpmHR (ECG), bpmHR diff, bpmp-ValuePrecisionRecallF1-Score
1RestPatch1_z67.4 ± 0.767.4 ± 0.60.1 ± 0.10.733100.0 ± 0.0100.0 ± 0.01.0 ± 0.0
1InterferencePatch1_y72.4 ± 1.876.6 ± 1.14.2 ± 1.10.00189.2 ± 3.983.9 ± 3.70.864 ± 0.037
2RestPatch0_z83.5 ± 2.783.5 ± 2.70.0 ± 0.00.071100.0 ± 0.0100.0 ± 0.01.0 ± 0.0
2InterferencePatch1_z82.2 ± 2.991.8 ± 1.39.7 ± 2.50.00198.0 ± 1.287.7 ± 3.60.926 ± 0.025
3RestPatch1_x68.6 ± 2.168.3 ± 1.60.3 ± 0.60.33299.7 ± 0.6100.0 ± 0.00.999 ± 0.003
3InterferencePatch1_x73.6 ± 1.179.1 ± 1.45.5 ± 1.90.00392.5 ± 2.386.2 ± 2.00.892 ± 0.018
AllRestvarious73.2 ± 7.873.1 ± 7.80.1 ± 0.30.27899.9 ± 0.4100.0 ± 0.01.000 ± 0.002
AllInterferencevarious76.1 ± 4.982.5 ± 7.06.5 ± 3.0<0.00193.2 ± 4.586.0 ± 3.40.894 ± 0.036
AllBothvarious74.6 ± 6.677.8 ± 8.73.3 ± 3.8<0.00196.6 ± 4.693.0 ± 7.50.947 ± 0.059
Table 6. Comparison with the previous work.
Table 6. Comparison with the previous work.
NPaperMethodMetric and Value
1Current papermoving window and simple peak detectionsensitivity, 99.7 ± 0.9%; precision, 98.7 ± 3.1%; F1-score, 0.992 ± 0.018; HR diff, bpm = 0.9 ± 2.4
2Prithvi et al. [12]convolutional neural network (CNN)sensitivity, 98%; precision, 98%
3Mora et al. [15]unsupervised segmentationsensitivity, 98.5 ± 1.2%; precision, 98.6 ± 1.2%; specificity, 98.6 ± 1.2%
4Duraj et al. [14]U-Net-based semantic segmentationsensitivity, 99.9%; precision, 97%
5Chen et al. [17]BiLSTM networksensitivity, 97%; precision, 98%
6Choudhary et al. [18]data-adaptive variational mode decomposition (VMD)sensitivity, 97.4%; precision, 97.4%; accuracy, 95.1%
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Pustozerov, E.; Kulau, U.; Albrecht, U.-V. Automated Heart Rate Detection in Seismocardiograms Using Electrocardiogram-Based Algorithms—A Feasibility Study. Bioengineering 2024, 11, 596. https://doi.org/10.3390/bioengineering11060596

AMA Style

Pustozerov E, Kulau U, Albrecht U-V. Automated Heart Rate Detection in Seismocardiograms Using Electrocardiogram-Based Algorithms—A Feasibility Study. Bioengineering. 2024; 11(6):596. https://doi.org/10.3390/bioengineering11060596

Chicago/Turabian Style

Pustozerov, Evgenii, Ulf Kulau, and Urs-Vito Albrecht. 2024. "Automated Heart Rate Detection in Seismocardiograms Using Electrocardiogram-Based Algorithms—A Feasibility Study" Bioengineering 11, no. 6: 596. https://doi.org/10.3390/bioengineering11060596

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop