A feature engineering method for ballistocardiogram signal for blood pressure prediction
By extracting features from multiple aspects of the cardiac impact map signal, the problem of difficulty in comprehensively capturing hypertension patterns in the prior art is solved, and more accurate and reliable blood pressure analysis results are achieved.
Patent Information
- Application Number
- CN202510337723.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-21
- Publication Date
- 2025-05-16
- Estimated Expiration
- 2045-03-21
AI Technical Summary
The prior art is difficult to fully extract complex patterns related to hypertension from the cardiac impact map signals, especially ignoring the fluctuation characteristics and waveform characteristics of the signal.
A cardiac impact map signal feature engineering method for blood pressure prediction is adopted to extract multidimensional signal features from multiple aspects such as time domain, frequency domain, fluctuation characteristics and waveform characteristics. Specific steps include collecting and preprocessing signal data, extracting time and frequency domain characteristics of heart rate variability, as well as fluctuation and waveform characteristics.
It significantly improves the accuracy and reliability of blood pressure analysis results based on the signal characteristics of the cardiac impact map, and can more comprehensively capture physiological information related to hypertension, supporting early accurate identification and real-time detection.
Smart Images

Figure CN119848491B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of biomedical signal analysis, and in particular to a ballistocardiogram signal feature engineering method for blood pressure prediction. Background Art
[0002] Hypertension can not only cause damage to multiple organs such as the heart, blood vessels, and kidneys, but can also lead to a series of serious complications, such as myocardial infarction, stroke, and heart failure, which seriously threaten human life and health. Therefore, early and accurate identification of hypertension and real-time blood pressure detection during the illness are of vital importance for patient health management and disease prevention.
[0003] Ballistocardiography (BCG) signals contain rich physiological information, including the rhythm, intensity, and pumping function of cardiac activity, which has potential value for the identification of hypertension. However, most existing computational methods for identifying hypertension still face challenges. These methods can usually only extract features of BCG signals from limited aspects (such as time and frequency domains), which makes it difficult to fully represent the complex patterns associated with hypertension. Time domain features mainly focus on the changes of signals over time, such as heart rate and heart beat intervals, while frequency domain features reveal the periodicity of cardiac activity by analyzing the spectral components of the signal. However, these methods often ignore other important information in BCG signals, such as the fluctuation characteristics and waveform characteristics of the signal (such as the morphology and amplitude of specific waveforms such as J waves, I waves, and K waves).
[0004] Therefore, there is an urgent need for a BCG signal engineering method for blood pressure prediction to solve the above problems. Summary of the invention
[0005] The purpose of the present invention is to provide a feature engineering method for ballistocardiogram signals for blood pressure prediction in view of the limitations of feature engineering methods in the prior art. The present invention can extract multidimensional BCG signal features from four aspects; the present invention not only covers traditional features such as time domain and frequency domain, but also deeply analyzes the fluctuation characteristics and waveform characteristics of BCG signals, aiming to more comprehensively capture physiological information related to hypertension, and provide strong support for early and accurate identification and real-time detection of hypertension.
[0006] The objective of the present invention is achieved through the following technical solution: a ballistocardiogram signal feature engineering method for blood pressure prediction, comprising the following steps:
[0007] (1) collecting a ballistocardiogram signal data set, and preprocessing the original ballistocardiogram signal in the ballistocardiogram signal data set to obtain a preprocessed ballistocardiogram signal;
[0008] (2) Extracting time-domain features of heart rate variability: Using overlapping sliding windows to detect all peaks in the preprocessed ballistocardiogram signal, calculating the RR interval and its related statistical values, and using the RR interval and its related statistical values as the extracted time-domain features of heart rate variability;
[0009] (3) Extracting frequency domain features of heart rate variability: performing outlier processing and missing value processing on the RR intervals obtained in step (2) to generate continuous RR interval data; using fast Fourier transform to convert the continuous RR interval data into the frequency domain, extracting the power values of heart rate variability in different frequency bands, and using them as the extracted frequency domain features of heart rate variability;
[0010] (4) Extraction of the fluctuation characteristics of the ballistocardiogram signal: For the preprocessed ballistocardiogram signal, its fluctuation characteristics are analyzed, and the fluctuation characteristics of the ballistocardiogram signal are extracted from four angles: zero-crossing rate, absolute instantaneous slope, average number of extreme points, and average cumulative amplitude change;
[0011] (5) Extracting waveform features of the ballistocardiogram signal: Analyze the waveform characteristics of the preprocessed ballistocardiogram signal, extract the time position and amplitude information of the J peak, I valley, and K valley, so as to calculate the pulse rise time, pulse fall time, ballistocardiogram pulse deviation, and J peak-K valley amplitude deviation, and use them as the waveform features of the extracted ballistocardiogram signal;
[0012] (6) The time domain features of heart rate variability, the frequency domain features of heart rate variability, the fluctuation features of the ballistocardiogram signal, and the waveform features of the ballistocardiogram signal extracted in the above steps are used as output to generate a feature file of the ballistocardiogram signal, and the blood pressure prediction result is obtained based on the feature file.
[0013] Furthermore, the preprocessing specifically includes:
[0014] (1.1) Normalization: The original ballistocardiogram signal in the ballistocardiogram signal data set is normalized using the Z-Score normalization method to obtain a normalized ballistocardiogram signal;
[0015] (1.2) Signal segment slicing: slicing the normalized ballistocardiogram signal at a preset time interval to obtain a sliced ballistocardiogram slice signal;
[0016] (1.3) Median filtering: for each ballistocardiogram slice signal, a median filter is used to filter it to suppress baseline drift, thereby obtaining a ballistocardiogram slice signal after median filtering; wherein the window size of the median filter is determined according to the ballistocardiogram slice signal and noise characteristics;
[0017] (1.4) Wavelet transform: The median filtered heart ballistocardiogram slice signal is filtered into corresponding low-frequency components and high-frequency components by discrete wavelet transform, and the heart ballistocardiogram slice signal is reconstructed using the high-frequency components of the first detail layer and the low-frequency components of the last approximation layer to obtain the preprocessed heart ballistocardiogram signal.
[0018] Furthermore, the step (2) specifically includes:
[0019] Firstly, overlapping sliding windows are used to detect all peaks in the preprocessed ballistocardiogram signal;
[0020] Then all peaks are traversed. If the time interval between two adjacent peaks is less than the preset time difference threshold, one of the peaks is removed and the other is retained to obtain the peak after deduplication.
[0021] Then, based on the peak value after deduplication, it is traversed, and the corresponding RR interval is calculated according to the time information of two adjacent peak values to obtain all RR intervals corresponding to the ballistocardiogram signal;
[0022] Finally, based on all RR intervals of the ballistocardiogram signal, the RR interval related statistical values are calculated, where the RR interval related statistical values include the RR interval mean value, RR interval standard deviation, RR interval root mean square value, and the percentage of RR intervals less than 0.6 seconds. The RR interval and its related statistical values are used as the extracted time domain features of heart rate variability.
[0023] Furthermore, the step (3) specifically includes:
[0024] For the RR interval of the ballistocardiogram signal obtained in step (2), firstly, the abnormal RR intervals less than 40ms or greater than 150ms are filtered out by using the outlier removal method; then, the missing values are filled by using the linear interpolation method to generate continuous RR interval data; then, the continuous RR interval data are converted into the frequency domain by using the fast Fourier transform, and the frequency domain analysis is performed to extract the heart rate variability power values of different frequency bands, including very low frequency, low frequency and high frequency, wherein the frequency range of the very low frequency is 0.0033-0.04Hz, the frequency range of the low frequency is 0.04-0.15 Hz, and the frequency range of the high frequency is 0.15-0.5 Hz, and the heart rate variability power values of different frequency bands are used as the extracted heart rate variability frequency domain features.
[0025] Furthermore, the step (4) specifically includes the following sub-steps:
[0026] (4.1) The fluctuation characteristics of the preprocessed ballistocardiogram signal are analyzed and its fluctuation characteristics are extracted from the perspective of zero-crossing rate; the zero-crossing rate is used to reflect the fluctuation of the ballistocardiogram signal and is expressed as:
[0027]
[0028] In the formula, represents the zero-crossing rate of the i-th sampling point, represents the amplitude of the i-th sampling point, N is the total number of sampling points of the preprocessed ballistocardiogram slice signal, represents the symbolic function, , Indicates that the amplitude of the sampling point is a positive number. Indicates that the amplitude of the sampling point is zero, Indicates that the amplitude of the sampling point is a negative number; perform statistical processing on the zero-crossing rates of all sampling points extracted from each pre-processed cardiac ballistogram slice signal, and calculate the average value, maximum value and standard deviation of the zero-crossing rate as three statistics of the zero-crossing rate feature;
[0029] (4.2) The fluctuation characteristics of the preprocessed ballistocardiogram signal are analyzed and its fluctuation characteristics are extracted from the perspective of absolute instantaneous slope; the absolute instantaneous slope refers to the rate of change of the amplitude of the ballistocardiogram signal per unit time, which is expressed as:
[0030]
[0031] In the formula, represents the absolute instantaneous slope of the ith sampling point, is the sampling frequency of the ballistocardiogram signal; the absolute instantaneous slopes of all sampling points extracted from each preprocessed ballistocardiogram slice signal are statistically processed, and their average value, root mean square, minimum value, maximum value, 25% percentile, 50% percentile and 75% percentile are used as seven statistics of the absolute instantaneous slope characteristics;
[0032] (4.3) The fluctuation characteristics of the preprocessed ballistocardiogram signal are analyzed and its fluctuation characteristics are extracted from the perspective of the average number of extreme value points; the average number of extreme value points refers to the number of extreme value points in the preprocessed ballistocardiogram slice signal, that is, the number of peaks or troughs, which is expressed as:
[0033]
[0034] In the formula, represents the average number of extreme points, represents the duration of the preprocessed ballistocardiogram slice signal, Indicates the number of elements in the object. Returns the index of the element that satisfies the given condition. It means to calculate the difference between consecutive elements. represents the amplitude of the ballistocardiogram slice signal;
[0035] (4.4) The fluctuation characteristics of the preprocessed ballistocardiogram signal are analyzed and its fluctuation characteristics are extracted from the perspective of the average cumulative amplitude change; the average cumulative amplitude change refers to the rate of change of the amplitude of adjacent sampling points in the preprocessed ballistocardiogram slice signal, which is expressed as:
[0036]
[0037] In the formula, represents the average cumulative amplitude change;
[0038] (4.5) Finally, the three statistics of the zero-crossing rate feature, the seven statistics of the absolute instantaneous slope feature, the average number of extreme points, and the average cumulative amplitude change are used as the fluctuation characteristics of the ballistocardiogram signal.
[0039] Furthermore, the step (5) specifically includes the following sub-steps:
[0040] (5.1) Analyze the waveform characteristics of the preprocessed cardiac ballistogram signal, extract the time position of the J peak in the preprocessed cardiac ballistogram slice signal, and use the J peak as a reference to find the first minimum value to the left as the I valley and the first minimum value to the right as the K valley. Record the time position and amplitude of the J peak, I valley, and K valley as the time position and amplitude information of the J peak, I valley, and K valley of the cardiac ballistogram signal;
[0041] (5.2) Calculate the pulse rise time according to the time position and amplitude of the J peak and I valley, where the pulse rise time includes the time interval required for the ballistocardiogram signal pulse to reach 25%, 33%, 75% and 100% of the J peak amplitude from the I valley to the J peak. Perform statistical processing on the four pulse rise times extracted from each segment of the ballistocardiogram slice signal, and calculate their average value and standard deviation as two statistical quantities of the pulse rise time characteristics;
[0042] (5.3) Calculate the pulse drop time according to the time position of the J peak and the K valley, where the pulse drop time includes the time interval required for the heart attack signal pulse to go from the J peak to the K valley. Perform statistical processing on the pulse drop time extracted from each heart attack slice signal, and calculate its mean value and standard deviation as two statistical quantities of the pulse drop time feature;
[0043] (5.4) Calculate the J peak-K valley amplitude deviation according to the time position and amplitude of the J peak and K valley, where the J peak-K valley amplitude deviation is obtained by subtracting the amplitude of the K valley at the time position from the amplitude of the J peak at the time position, perform statistical processing on the J peak-K valley amplitude deviation extracted from each segment of the ballistocardiogram slice signal, and calculate its mean value and standard deviation as two statistical quantities of the J peak-K valley amplitude deviation characteristics;
[0044] (5.5) Calculate the ballistocardiogram pulse deviation according to the time position and amplitude of the J peak, I valley and K valley, wherein the ballistocardiogram pulse deviation is obtained by subtracting the J peak-I valley amplitude deviation from the J peak-K valley amplitude deviation, perform statistical processing on the ballistocardiogram pulse deviation extracted from each ballistocardiogram slice signal, and calculate its mean value and standard deviation as two statistical quantities of the ballistocardiogram pulse deviation characteristics;
[0045] (5.6) Finally, the statistics of four pulse rise time characteristics, two statistics of pulse fall time characteristics, two statistics of J peak-K valley amplitude deviation characteristics, and two statistics of ballistocardiogram pulse deviation characteristics are used as waveform characteristics of the ballistocardiogram signal; among them, each pulse rise time feature has two corresponding statistics.
[0046] The beneficial effect of the present invention is that it not only extracts HRV-related features from the time domain and frequency domain of the BCG signal, but also further takes into account structural information such as the signal's fluctuation characteristics and specific waveform characteristics. This comprehensive and in-depth information integration method makes the final BCG signal feature construction more comprehensive and accurate, significantly improving the accuracy and reliability of blood pressure analysis results based on BCG signal features. BRIEF DESCRIPTION OF THE DRAWINGS
[0047] Figure 1 is a flow chart of a ballistocardiogram signal feature engineering method for blood pressure prediction of the present invention;
[0048] Figure 2 It is an example diagram of the BCG standard signal segment after preprocessing of the present invention. DETAILED DESCRIPTION
[0049] Exemplary embodiments will be described in detail herein, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, the same numbers in different drawings represent the same or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present invention. Instead, they are merely examples of devices and methods consistent with some aspects of the present invention as detailed in the appended claims.
[0050] The terms used in the present invention are only for the purpose of describing specific embodiments and are not intended to limit the present invention. The singular forms "a", "the" and "the" used in the present invention and the appended claims are also intended to include plural forms unless the context clearly indicates other meanings. It should also be understood that the term "and / or" used herein refers to and includes any or all possible combinations of one or more associated listed items.
[0051] It should be understood that although the terms first, second, third, etc. may be used in the present invention to describe various information, these information should not be limited to these terms. These terms are only used to distinguish the same type of information from each other. For example, without departing from the scope of the present invention, the first information may also be referred to as the second information, and similarly, the second information may also be referred to as the first information. Depending on the context, the word "if" as used herein may be interpreted as "at the time of" or "when" or "in response to determining".
[0052] The present invention is described in detail below in conjunction with the accompanying drawings. In the absence of conflict, the features of the following embodiments and implementations can be combined with each other.
[0053] The present invention's ballistocardiogram signal feature engineering method for blood pressure prediction uses the unique physiological characteristics of the BCG signal itself and the temporal relationship of the signal waveform to construct a composite feature set of the BCG signal, which incorporates the direct correlation information of adjacent sampling points in the BCG signal and the long-distance, indirect correlation information revealed by physiological parameters such as signal fluctuation patterns and waveform characteristics. Not only does it extract heart rate variability (HRV) related features from the time domain and frequency domain of the BCG signal, but it also further takes into account structural information such as the fluctuation characteristics and specific waveform characteristics of the BCG signal, thereby improving the accuracy of blood pressure prediction based on BCG signal features.
[0054] See also Figure 1 The ballistocardiogram signal feature engineering method for blood pressure prediction of the present invention specifically includes the following sub-steps:
[0055] (1) A BCG signal data set is collected, and the original BCG signal in the BCG signal data set is preprocessed to obtain a preprocessed BCG signal. The preprocessing includes normalization, signal segment slicing, median filtering, and wavelet transform.
[0056] It should be noted that, in this embodiment, in order to ensure the effectiveness of feature extraction, a sampling frequency of 100 Hz is required to collect BCG signals to obtain a BCG signal data set.
[0057] Furthermore, the preprocessing specifically includes:
[0058] (1.1) Normalization: The Z-Score normalization method is used to normalize the original BCG signal in the BCG signal dataset to obtain a normalized BCG signal.
[0059] It should be noted that since the BCG signal dataset used comes from subjects with different weights, there may be some differences in the collected membrane pressure signals, so the original BCG signal needs to be normalized to eliminate the signal amplitude differences caused by different individuals. Specifically, the Z-Score normalization method can be used to normalize the original BCG signal.
[0060] It should be understood that the Z-Score standardization method is a commonly used method for data processing, through which data of different magnitudes can be converted into data of uniform measurement, thereby unifying data standards and improving data comparability.
[0061] (1.2) Signal segment slicing: Slice the normalized BCG signal at a preset time interval, such as 30 seconds, to obtain a sliced BCG slice signal. The BCG slice signal processed by median filtering and wavelet transform can then be used as the input for feature engineering.
[0062] (1.3) Median filtering: For each BCG slice signal, a median filter is used to filter it to suppress baseline drift and obtain a BCG slice signal after median filtering. The window size of the median filter is determined according to the BCG slice signal and noise characteristics.
[0063] It should be noted that, considering that the BCG signal is a constantly changing signal, it may be affected by noise such as changes in the subject's posture during its data acquisition process, so a median filter is needed to suppress the baseline drift.
[0064] It should be understood that the median filter is a commonly used filter, and its principle is very simple. If a signal changes smoothly, the output value of a certain point can be replaced by the statistical median of all values in a neighborhood of a certain size of this point. This neighborhood is called a window in the field of signal processing. The larger the window is, the smoother the output result will be, but it may also erase useful signal features. Therefore, the size of the window should be determined according to the actual signal and noise characteristics. For example, in this embodiment, a median filter with a window size of 5 sampling points is selected to suppress baseline drift. The size of the window is usually selected so that the number of data in the window is an odd number. The reason for this selection is that only odd-numbered data have a unique intermediate value.
[0065] (1.4) Wavelet transform: The median filtered BCG slice signal is filtered into corresponding low-frequency components and high-frequency components by discrete wavelet transform (DWT), and the high-frequency components of the first detail layer and the low-frequency components of the last approximation layer are used to reconstruct the BCG slice signal. This can reduce the influence of heartbeat noise and respiratory noise, and obtain the preprocessed BCG slice signal, which is used as the final preprocessed BCG signal.
[0066] It should be noted that the input BCG slice signal can be decomposed into different frequency components by discrete wavelet transform so as to extract low-frequency components (approximation layer) and high-frequency components (detail layer). Specifically, in each layer of decomposition, the BCG slice signal will pass through a high-pass filter and a low-pass filter in turn to extract high-frequency details and low-frequency trends, respectively, and then the filtered BCG slice signal will be downsampled to reduce redundant data. In this embodiment, the BCG slice signal is decomposed into 5 layers using a discrete wavelet transform such as a wavelet function "db5", and an approximation layer (the 5th layer) and multiple detail layers (the 1st to the 4th layer) can be obtained. Reconstructing the BCG signal is based on the inverse process of the wavelet transform, namely the inverse discrete wavelet transform (IDWT). In this process, a specific approximation layer and detail layer (i.e., the first detail layer and the last approximation layer, in this embodiment, the 1st detail layer and the 5th approximation layer) are selected to replace other components of the original signal, and the unnecessary components are set to 0 (the 2nd to the 4th detail layers). By selectively retaining, the filtering and reconstruction of the BCG signal are achieved.
[0067] (2) Extracting HRV time domain features: Specifically, using overlapping sliding windows to detect all peaks in the preprocessed BCG signal, calculating the RR interval and its related statistical values, and using the RR interval and its related statistical values as the extracted HRV time domain features.
[0068] Specifically, the preprocessed BCG signal is the preprocessed BCG slice signal obtained in step (1.4). In a preprocessed BCG slice signal, there may be multiple peaks. Therefore, it is first necessary to use an overlapping sliding window to detect all peaks in the preprocessed BCG signal; in this embodiment, the window size of the overlapping sliding window is set to 100 sampling points, of which 60 sampling points overlap. Then all peaks are traversed. If the time interval between two adjacent peaks is less than the preset time difference threshold, the two peaks are considered to be repeated, one of the peaks is removed, and the other peak is selected as the retained peak to be added to the peak list for subsequent use, and the peak after deduplication is obtained, where "deduplication" removes the repeated peaks, so that the minimum time interval between two adjacent peaks can be ensured to be not less than the preset time difference threshold. Based on the deduplicated peak, it is traversed again, and the corresponding RR interval is calculated according to the time information of the two adjacent peaks to obtain all RR intervals corresponding to the BCG signal. Finally, based on all RR intervals of the BCG signal, the RR interval related statistical values are calculated, where the RR interval related statistical values include the RR interval mean value, RR interval standard deviation, RR interval root mean square value, and the percentage of RR intervals less than 0.6 seconds. The RR interval and its related statistical values are used as the extracted HRV time domain features to quantify heart rate variability.
[0069] It should be understood that the RR interval originally refers to the time interval between two consecutive R waves in an electrocardiogram (ECG), which is usually in the range of 0.6-1s. 0.6s and 1s divided by 60 represent a heart rate of 60-100 beats / min. The RR interval reflects the changes in the human heart rate, so the RR interval and its related statistical values can reflect the heart rate variability. Among them, the R wave is the highest point of the QRS complex in the electrocardiogram. When applied to the BCG signal in the present invention, it refers to the time interval between two consecutive J wave peaks.
[0070] (3) Extracting HRV frequency domain features, specifically: performing outlier processing and missing value processing on the RR intervals obtained in step (2) to generate continuous RR interval data; using fast Fourier transform to convert the continuous RR interval data into the frequency domain, extracting HRV power values in different frequency bands, and using them as the extracted HRV frequency domain features.
[0071] Specifically, for the RR interval of the BCG signal obtained in step (2), the abnormal RR intervals less than 40 ms or greater than 150 ms are first filtered out using the outlier removal method; then the missing values are filled in using the linear interpolation method to generate continuous RR interval data; then the continuous RR interval data are converted into the frequency domain using the fast Fourier transform, and the frequency domain analysis is performed to extract the HRV power values of different frequency bands, including very low frequency (VLF), low frequency (LF) and high frequency (HF), wherein the frequency range of VLF is 0.0033-0.04 Hz, the frequency range of LF is 0.04-0.15 Hz, and the frequency range of HF is 0.15-0.5 Hz, and the HRV power values of different frequency bands are used as the extracted HRV frequency domain features.
[0072] (4) Extracting the fluctuation characteristics of the BCG signal. Specifically, for the preprocessed BCG signal, its fluctuation characteristics are analyzed, and the fluctuation characteristics of the BCG signal are extracted from four angles: zero-crossing rate, absolute instantaneous slope, average number of extreme points, and average cumulative amplitude change.
[0073] It should be understood that by designing four anti-noise functions, including zero-crossing rate, absolute instantaneous slope, average number of extreme points and average cumulative amplitude change, the fluctuation pattern of the BCG signal is characterized from different angles.
[0074] (4.1) The fluctuation characteristics of the preprocessed BCG signal are analyzed and its fluctuation characteristics are extracted from the perspective of zero-crossing rate. The zero-crossing rate is used to reflect the fluctuation of the BCG signal and can be expressed as:
[0075]
[0076] In the formula, represents the zero-crossing rate of the i-th sampling point, represents the amplitude of the i-th sampling point, N is the total number of sampling points of the preprocessed BCG slice signal, represents the symbolic function, , Indicates that the amplitude of the sampling point is a positive number. Indicates that the amplitude of the sampling point is zero, Indicates that the amplitude of the sampling point is negative. The larger the value of the zero-crossing rate, the stronger the fluctuation of the BCG signal. The zero-crossing rates of all sampling points extracted from each preprocessed BCG slice signal are statistically processed, and the average, maximum and standard deviation of the zero-crossing rate are calculated as the three statistics of the zero-crossing rate feature.
[0077] (4.2) The fluctuation characteristics of the preprocessed BCG signal are analyzed, and its fluctuation characteristics are extracted from the perspective of absolute instantaneous slope. The absolute instantaneous slope is used to detect sudden changes in the BCG signal and analyze the local change characteristics of the BCG signal. The absolute instantaneous slope refers to the rate of change of the BCG signal amplitude per unit time, which is expressed as:
[0078]
[0079] In the formula, represents the absolute instantaneous slope of the ith sampling point, is the sampling frequency of the BCG signal. In this embodiment, since the BCG signal is collected at a sampling frequency of 100 Hz in step (1), The absolute instantaneous slope can help identify abnormalities or change points in the BCG signal. The absolute instantaneous slopes of all sampling points extracted from each preprocessed BCG slice signal were statistically processed, and their average value, root mean square, minimum value, maximum value, 25% percentile, 50% percentile and 75% percentile were used as seven statistics of the absolute instantaneous slope feature.
[0080] (4.3) The fluctuation characteristics of the preprocessed BCG signal are analyzed, and its fluctuation characteristics are extracted from the perspective of the average number of extreme points. The average number of extreme points refers to the number of extreme points in the preprocessed BCG slice signal, that is, the number of peaks or troughs, which is expressed as:
[0081]
[0082] In the formula, represents the average number of extreme points, represents the duration of the preprocessed BCG slice signal, Indicates the number of elements in the object. Returns the index of the element that satisfies the given condition. It means to calculate the difference between consecutive elements. Indicates the amplitude of the BCG slice signal. Get the first-order derivative of the BCG slice signal and use Simplify it into three values: positive, negative, and zero. The average number of extreme points can represent the pressure load of the heart.
[0083] (4.4) The fluctuation characteristics of the preprocessed BCG signal are analyzed, and its fluctuation characteristics are extracted from the perspective of the average cumulative amplitude change. The average cumulative amplitude change refers to the change rate of the amplitude of adjacent sampling points in the preprocessed BCG slice signal, which is expressed as:
[0084]
[0085] In the formula, Represents the average cumulative amplitude change. The larger the value of the average cumulative amplitude change, the more drastic the change in the BCG signal, and the more obvious the blood pressure fluctuation of the subject. Due to the use of wavelength averaging, the average cumulative amplitude change has good noise resistance and is suitable for analyzing complex BCG signals.
[0086] (4.5) Finally, the three statistics of the zero-crossing rate characteristics, the seven statistics of the absolute instantaneous slope characteristics, the average number of extreme points, and the average cumulative amplitude change are used as the fluctuation characteristics of the BCG signal.
[0087] (5) Extract the waveform features of the BCG signal. Specifically, analyze the waveform characteristics of the preprocessed BCG signal, extract the time position and amplitude information of the J peak, I valley and K valley, calculate the pulse rise time, pulse fall time, ballistocardiogram pulse deviation and J peak-K valley amplitude deviation, and use them as the extracted BCG signal waveform features. Figure 2 The BCG standard signal segment after preprocessing shown in the figure is used to illustrate the process of extracting the BCG signal waveform features, which specifically includes the following steps:
[0088] (5.1) For the preprocessed BCG signal, its waveform characteristics are analyzed, and the time position of the J peak in the preprocessed BCG slice signal is extracted. Taking the J peak as the reference, the first minimum value is found to the left as the I valley, and the first minimum value is found to the right as the K valley. The time position and amplitude of the J peak, I valley and K valley are recorded as the time position and amplitude information of the J peak, I valley and K valley of the BCG signal.
[0089] (5.2) Calculate the pulse rise time based on the time position and amplitude of the J peak and I valley, where the pulse rise time includes the time interval required for the BCG signal pulse to reach 25%, 33%, 75% and 100% of the J peak amplitude from the I valley to the J peak. Perform statistical processing on the four pulse rise times extracted from each BCG slice signal, and calculate their average and standard deviation as two statistics of the pulse rise time characteristics. The pulse rise time is used to characterize the speed of heart contraction.
[0090] It should be understood that each BCG slice signal may contain multiple J peaks, I valleys, and K valleys. For example, for the first pulse rise time (i.e., the time interval required from the I valley to the J peak to reach 25% of the J peak amplitude), multiple first pulse rise times can be obtained, so that the first pulse rise time can be statistically processed, and its average value and standard deviation can be calculated as two statistics of the first pulse rise time feature. Similarly, the statistics of the other three pulse rise time features can be obtained. Among them, each pulse rise time feature corresponds to two statistics.
[0091] (5.3) The pulse drop time is calculated based on the time position of the J peak and the K valley, where the pulse drop time includes the time interval required for the BCG signal pulse to go from the J peak to the K valley. The pulse drop time extracted from each BCG slice signal is statistically processed, and its mean value and standard deviation are calculated as two statistics of the pulse drop time feature. The pulse drop time is used to characterize the speed of cardiac diastole.
[0092] (5.4) Calculate the J peak-K valley amplitude deviation according to the time position and amplitude of the J peak and K valley, where the J peak-K valley amplitude deviation is obtained by subtracting the amplitude of the K valley from the amplitude of the J peak at the time position. Perform statistical processing on the J peak-K valley amplitude deviation extracted from each BCG slice signal, and calculate its mean value and standard deviation as two statistics of the J peak-K valley amplitude deviation characteristics. The J peak-K valley amplitude deviation is used to characterize the strength of the heart pumping blood.
[0093] (5.5) The ballistocardiogram pulse deviation is calculated based on the time position and amplitude of the J peak, I valley and K valley. The ballistocardiogram pulse deviation is obtained by subtracting the J peak-I valley amplitude deviation from the J peak-K valley amplitude deviation. The ballistocardiogram pulse deviation extracted from each BCG slice signal is statistically processed, and its mean value and standard deviation are calculated as two statistical quantities of the ballistocardiogram pulse deviation characteristics. The ballistocardiogram pulse deviation is used to characterize the stability of the heart pumping blood.
[0094] Furthermore, the calculation formula of the ballistocardiogram pulse deviation is:
[0095]
[0096] In the formula, Indicates ballistocardiographic pulse deviation; represents the J peak-K valley amplitude deviation, and its specific calculation method is shown in step (5.4); It represents the J peak-I valley amplitude deviation. Similarly, the J peak-I valley amplitude deviation can be obtained by subtracting the amplitude of the J peak at the time position from the amplitude of the I valley at the time position.
[0097] (5.6) Finally, the statistics of the four pulse rise time features, the two statistics of the pulse fall time features, the two statistics of the J peak-K valley amplitude deviation features, and the two statistics of the heart beat pulse deviation features are used as the waveform features of the BCG signal. Among them, each pulse rise time feature has two corresponding statistics.
[0098] (6) The HRV time domain features extracted in step (2), the HRV frequency domain features extracted in step (3), the fluctuation features extracted in step (4), and the waveform features extracted in step (5) are used as output to generate a feature file of the BCG signal, and a blood pressure prediction result is obtained based on the feature file.
[0099] Specifically, the BCG feature statistics (including mean value and standard deviation, etc.) from different aspects extracted in the above steps (2) to (5) are output, and a CSV feature file is generated, and then the blood pressure prediction result is obtained according to the CSV feature file. For example, in the CSV feature file, ① RR interval average value: Under normal circumstances, the RR interval average value should be between 0.6-1 seconds (corresponding to a heart rate of 60-100 beats / minute); if the RR interval average value is less than 0.6 seconds, it may indicate tachycardia; if the RR interval average value is greater than 1 second, it may indicate bradycardia. Sustained tachycardia may be related to sympathetic nerve excitement and is a potential risk factor for hypertension. ② RR interval standard deviation: The higher the value of the RR interval standard deviation, the greater the heart rate variability and the stronger the autonomic nervous regulation function; a lower RR interval standard deviation indicates a significant decrease in heart rate variability, which may be related to increased sympathetic nerve tension and increase the risk of hypertension. ③ The percentage of RR intervals less than 0.6 seconds: reflects the frequency of tachycardia. A higher percentage of tachycardia may indicate sympathetic nerve excitement and increase the risk of hypertension. ④ Average value of zero-crossing rate: The average value of zero-crossing rate reflects the overall dynamic change frequency of the signal. A high average value of zero-crossing rate may indicate increased instability of cardiac pulsation, which is related to sympathetic nerve excitement or increased cardiac burden, which is a potential risk factor for hypertension. ⑤ Average value of absolute instantaneous slope: It reflects the overall rate of change of the BCG signal, which is related to the intensity and frequency of cardiac pulsation. A higher average value of absolute instantaneous slope indicates that the dynamic changes of cardiac pulsation are stronger, which is related to sympathetic nerve excitement or increased blood pressure. ⑥ Maximum value of absolute instantaneous slope: It reflects the maximum rate of change of the BCG signal at a certain point, which is usually related to the instantaneous change of cardiac pulsation. A higher maximum value of absolute instantaneous slope may indicate sudden high dynamic changes in the signal, which may be related to instantaneous increase in blood pressure or arrhythmia.
[0100] In summary, the present invention not only extracts HRV-related features from the time domain and frequency domain of the BCG signal, but also further takes into account structural information such as the signal's fluctuation characteristics and specific waveform characteristics. This comprehensive and in-depth information integration method makes the final BCG signal feature construction more comprehensive and accurate, significantly improving the accuracy and reliability of blood pressure analysis results based on BCG signal features.
[0101] The above embodiments are only used to illustrate the design ideas and features of the present invention, and their purpose is to enable those skilled in the art to understand the content of the present invention and implement it accordingly. The protection scope of the present invention is not limited to the above embodiments. Therefore, any equivalent changes or modifications made based on the principles and design ideas disclosed by the present invention are within the protection scope of the present invention.
[0102] The above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit the same. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that the technical solutions described in the aforementioned embodiments may still be modified, or some of the technical features may be replaced by equivalents. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A ballistocardiogram signal feature engineering method for blood pressure prediction, characterized in that: The following steps are involved: (1) collecting a ballistocardiogram signal data set, and preprocessing the original ballistocardiogram signal in the ballistocardiogram signal data set to obtain a preprocessed ballistocardiogram signal; (2) Extracting time-domain features of heart rate variability: Using overlapping sliding windows to detect all peaks in the preprocessed ballistocardiogram signal, calculating the RR interval and its related statistical values, and using the RR interval and its related statistical values as the extracted time-domain features of heart rate variability; (3) Extracting frequency domain features of heart rate variability: performing outlier processing and missing value processing on the RR intervals obtained in step (2) to generate continuous RR interval data; using fast Fourier transform to convert the continuous RR interval data into the frequency domain, extracting the power values of heart rate variability in different frequency bands, and using them as the extracted frequency domain features of heart rate variability; (4) Extraction of the fluctuation characteristics of the ballistocardiogram signal: For the preprocessed ballistocardiogram signal, its fluctuation characteristics are analyzed, and the fluctuation characteristics of the ballistocardiogram signal are extracted from four angles: zero-crossing rate, absolute instantaneous slope, average number of extreme points, and average cumulative amplitude change; (5) Extracting waveform features of the ballistocardiogram signal: Analyze the waveform characteristics of the preprocessed ballistocardiogram signal, extract the time position and amplitude information of the J peak, I valley, and K valley, so as to calculate the pulse rise time, pulse fall time, ballistocardiogram pulse deviation, and J peak-K valley amplitude deviation, and use them as the waveform features of the extracted ballistocardiogram signal; (6) The time domain features of heart rate variability, the frequency domain features of heart rate variability, the fluctuation features of the ballistocardiogram signal, and the waveform features of the ballistocardiogram signal extracted in the above steps are used as output to generate a feature file of the ballistocardiogram signal, and the blood pressure prediction result is obtained based on the feature file.
2. The method for feature engineering of ballistocardiogram signal for blood pressure prediction according to claim 1, characterized in that: The pre-processing specifically includes: (1.1) Normalization: The original ballistocardiogram signal in the ballistocardiogram signal data set is normalized using the Z-Score normalization method to obtain a normalized ballistocardiogram signal; (1.2) Signal segment slicing: slicing the normalized ballistocardiogram signal at a preset time interval to obtain a sliced ballistocardiogram slice signal; (1.3) Median filtering: for each ballistocardiogram slice signal, a median filter is used to filter it to suppress baseline drift, thereby obtaining a ballistocardiogram slice signal after median filtering; wherein the window size of the median filter is determined according to the ballistocardiogram slice signal and noise characteristics; (1.4) Wavelet transform: The median filtered heart ballistocardiogram slice signal is filtered into corresponding low-frequency components and high-frequency components by discrete wavelet transform, and the heart ballistocardiogram slice signal is reconstructed using the high-frequency components of the first detail layer and the low-frequency components of the last approximation layer to obtain the preprocessed heart ballistocardiogram signal.
3. The ballistocardiogram signal feature engineering method for blood pressure prediction according to claim 1, characterized in that: Step (2) specifically includes: Firstly, overlapping sliding windows are used to detect all peaks in the preprocessed ballistocardiogram signal; Then all peaks are traversed. If the time interval between two adjacent peaks is less than the preset time difference threshold, one of the peaks is removed and the other is retained to obtain the peak after deduplication. Then, based on the peak value after deduplication, it is traversed, and the corresponding RR interval is calculated according to the time information of two adjacent peak values to obtain all RR intervals corresponding to the ballistocardiogram signal; Finally, based on all RR intervals of the ballistocardiogram signal, the RR interval related statistical values are calculated, where the RR interval related statistical values include the RR interval mean value, RR interval standard deviation, RR interval root mean square value, and the percentage of RR intervals less than 0.6 seconds. The RR interval and its related statistical values are used as the extracted time domain features of heart rate variability.
4. The method for ballistocardiogram signal feature engineering for blood pressure prediction according to claim 1, characterized in that: Step (3) specifically includes: For the RR interval of the ballistocardiogram signal obtained in step (2), firstly, the abnormal RR intervals less than 40ms or greater than 150ms are filtered out by using the outlier removal method; then, the missing values are filled by using the linear interpolation method to generate continuous RR interval data; then, the continuous RR interval data are converted into the frequency domain by using the fast Fourier transform, and the frequency domain analysis is performed to extract the heart rate variability power values of different frequency bands, including very low frequency, low frequency and high frequency, wherein the frequency range of the very low frequency is 0.0033-0.04Hz, the frequency range of the low frequency is 0.04-0.15 Hz, and the frequency range of the high frequency is 0.15-0.5 Hz, and the heart rate variability power values of different frequency bands are used as the extracted heart rate variability frequency domain features.
5. The method for feature engineering of ballistocardiogram signal for blood pressure prediction according to claim 1, characterized in that: Step (4) specifically includes the following sub-steps: (4.1) The fluctuation characteristics of the preprocessed ballistocardiogram signal are analyzed and its fluctuation characteristics are extracted from the perspective of zero-crossing rate; the zero-crossing rate is used to reflect the fluctuation of the ballistocardiogram signal and is expressed as: ; In the formula, represents the zero-crossing rate of the i-th sampling point, represents the amplitude of the i-th sampling point, N is the total number of sampling points of the preprocessed ballistocardiogram slice signal, represents the symbolic function, , Indicates that the amplitude of the sampling point is a positive number. Indicates that the amplitude of the sampling point is zero, Indicates that the amplitude of the sampling point is a negative number; perform statistical processing on the zero-crossing rates of all sampling points extracted from each pre-processed cardiac ballistogram slice signal, and calculate the average value, maximum value and standard deviation of the zero-crossing rate as three statistics of the zero-crossing rate feature; (4.2) The fluctuation characteristics of the preprocessed ballistocardiogram signal are analyzed and its fluctuation characteristics are extracted from the perspective of absolute instantaneous slope; the absolute instantaneous slope refers to the rate of change of the amplitude of the ballistocardiogram signal per unit time, which is expressed as: ; In the formula, represents the absolute instantaneous slope of the ith sampling point, is the sampling frequency of the ballistocardiogram signal; the absolute instantaneous slopes of all sampling points extracted from each preprocessed ballistocardiogram slice signal are statistically processed, and their average value, root mean square, minimum value, maximum value, 25% percentile, 50% percentile and 75% percentile are used as seven statistics of the absolute instantaneous slope characteristics; (4.3) The fluctuation characteristics of the preprocessed ballistocardiogram signal are analyzed and its fluctuation characteristics are extracted from the perspective of the average number of extreme value points; the average number of extreme value points refers to the number of extreme value points in the preprocessed ballistocardiogram slice signal, that is, the number of peaks or troughs, which is expressed as: ; In the formula, represents the average number of extreme points, represents the duration of the preprocessed ballistocardiogram slice signal, Indicates the number of elements in the object. Returns the index of the element that satisfies the given condition. It means calculating the difference between consecutive elements. represents the amplitude of the ballistocardiogram slice signal; (4.4) The fluctuation characteristics of the preprocessed ballistocardiogram signal are analyzed and its fluctuation characteristics are extracted from the perspective of the average cumulative amplitude change; the average cumulative amplitude change refers to the rate of change of the amplitude of adjacent sampling points in the preprocessed ballistocardiogram slice signal, which is expressed as: ; In the formula, represents the average cumulative amplitude change; (4.5) Finally, the three statistics of the zero-crossing rate feature, the seven statistics of the absolute instantaneous slope feature, the average number of extreme points, and the average cumulative amplitude change are used as the fluctuation characteristics of the ballistocardiogram signal.
6. The ballistocardiogram signal feature engineering method for blood pressure prediction according to claim 1, characterized in that: Step (5) specifically includes the following sub-steps: (5.1) Analyze the waveform characteristics of the preprocessed cardiac ballistogram signal, extract the time position of the J peak in the preprocessed cardiac ballistogram slice signal, and use the J peak as a reference to find the first minimum value to the left as the I valley and the first minimum value to the right as the K valley. Record the time position and amplitude of the J peak, I valley, and K valley as the time position and amplitude information of the J peak, I valley, and K valley of the cardiac ballistogram signal; (5.2) Calculate the pulse rise time according to the time position and amplitude of the J peak and I valley, where the pulse rise time includes the time interval required for the ballistocardiogram signal pulse to reach 25%, 33%, 75% and 100% of the J peak amplitude from the I valley to the J peak. Perform statistical processing on the four pulse rise times extracted from each segment of the ballistocardiogram slice signal, and calculate their average value and standard deviation as two statistical quantities of the pulse rise time characteristics; (5.3) Calculate the pulse drop time according to the time position of the J peak and the K valley, where the pulse drop time includes the time interval required for the heart attack signal pulse to go from the J peak to the K valley. Perform statistical processing on the pulse drop time extracted from each heart attack slice signal, and calculate its mean value and standard deviation as two statistical quantities of the pulse drop time feature; (5.4) Calculate the J peak-K valley amplitude deviation according to the time position and amplitude of the J peak and K valley, where the J peak-K valley amplitude deviation is obtained by subtracting the amplitude of the K valley at the time position from the amplitude of the J peak at the time position, perform statistical processing on the J peak-K valley amplitude deviation extracted from each segment of the ballistocardiogram slice signal, and calculate its mean value and standard deviation as two statistical quantities of the J peak-K valley amplitude deviation characteristics; (5.5) Calculate the ballistocardiogram pulse deviation according to the time position and amplitude of the J peak, I valley and K valley, wherein the ballistocardiogram pulse deviation is obtained by subtracting the J peak-I valley amplitude deviation from the J peak-K valley amplitude deviation, perform statistical processing on the ballistocardiogram pulse deviation extracted from each ballistocardiogram slice signal, and calculate its mean value and standard deviation as two statistical quantities of the ballistocardiogram pulse deviation characteristics; (5.6) Finally, the statistics of four pulse rise time characteristics, two statistics of pulse fall time characteristics, two statistics of J peak-K valley amplitude deviation characteristics, and two statistics of ballistocardiogram pulse deviation characteristics are used as waveform characteristics of the ballistocardiogram signal; among them, each pulse rise time feature has two corresponding statistics.
Citation Information
Patent Citations
Real-time heart beat interval measuring and calculating method for ballistocardiogram
CN112869733A
Non-contact heart rate variability data acquisition method and device
CN116369888A