Anti-interference EDR signal respiration rate extraction method and algorithm circuit

Through zero crossing detection and adaptive filtering technology, the EDR signal processing is optimized, and the accuracy of respiration rate detection under motion interference is solved, and efficient respiration rate extraction is achieved in the motion state.

CN120458553APending Publication Date: 2025-08-12WUHAN KANGNUOXIN SEMICON CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202510359349.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-25
Publication Date
2025-08-12

AI Technical Summary

Technical Problem

The existing EDR signals are not very accurate under interference from electrocardiocardiogram activities, system environment and human movement, and it is difficult to accurately extract the respiration rate during exercise.

Method used

The zero-crossing detection algorithm is adopted, combined with sparse adaptive algorithms and adaptive filtering technology, and the interference is removed through bandpass filtering, peak detection is optimized, and hardware circuit acceleration operations are designed to achieve anti-interference processing of EDR signals.

Benefits of technology

Respiratory rate can also be accurately extracted in motion state, improving signal quality and real-time detection, and reducing the cost of hardware resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120458553A_ABST
    Figure CN120458553A_ABST
Patent Text Reader

Abstract

The invention relates to an anti-interference EDR signal respiration rate extraction method and algorithm circuit, and the method comprises the steps: receiving an EDR signal in real time, and defining a point when the EDR signal at the current moment is greater than or equal to 0 and the EDR signal at the last moment is less than 0 as a rising zero point, defining a point when the EDR signal at the current moment is less than or equal to 0 and the EDR signal at the previous moment is greater than 0 as a descending zero point; when it is judged that the distance between the two adjacent zero points is larger than a set minimum threshold value, the distance between the adjacent peak values in the EDR signals is recorded; the minimum threshold value comprises a same-polarity zero point minimum threshold value and a different-polarity zero point minimum threshold value, the same-polarity zero points are two zero points which are both ascending zero points or descending zero points, and the different-polarity zero points are two zero points which are one ascending zero point and the other descending zero point; a minimum interval and a maximum interval are set, the interval between the minimum interval and the maximum interval is counted, and the respiratory rate is calculated based on the numerical value and the number of the counted intervals; and the respiratory rate can be accurately extracted during movement.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of digital signal processing algorithm circuits, and in particular to an interference-resistant EDR signal extraction method and algorithm circuit for respiratory rate. Background Art

[0002] RESP (Respiratory Rate) is a key physiological parameter for assessing an individual's respiratory function and lung health. It plays a crucial role in monitoring and diagnosing patients, particularly in critical care and respiratory therapy. Monitoring respiratory rate is crucial for assessing a patient's respiratory type and degree of respiratory failure, guiding oxygen therapy and mechanical ventilation adjustments, and monitoring disease progression and treatment effectiveness.

[0003] Extracting EDR (ECG-Derived Respiration) from ECG signals is a respiratory rate detection technology that does not require dedicated sensors or hardware modules. Traditional respiratory signal detection methods are limited by human body constraints, while EDR technology allows dynamic respiratory detection, improving patient comfort and portability. The lack of a dedicated sensor also improves system integration and reduces system power consumption and area. However, EDR signals are susceptible to various interferences, such as baseline drift caused by ECG activity, high-frequency interference caused by the system environment, and motion interference caused by human movement. The accuracy of the respiratory rate calculated using traditional algorithms based on the interfered EDR signal is unreliable. Therefore, it is necessary to develop an interference-resistant algorithm circuit for extracting respiratory rate from EDR signals. Summary of the Invention

[0004] In response to the technical problems existing in the prior art, the present invention provides an interference-resistant algorithm circuit for extracting respiratory rate from EDR signals, which does not require a special respiratory rate sensor. In addition, it ensures that the respiratory rate can be accurately extracted even during exercise, solving the problems in the prior art of low accuracy of algorithm circuits or excessive hardware resource costs.

[0005] According to a first aspect of the present invention, a method for extracting respiratory rate from an interference-resistant EDR signal is provided, comprising:

[0006] Step 1: Receive the EDR signal in real time, define the point where the current EDR signal is greater than or equal to 0 and the previous EDR signal is less than 0 as the rising zero point, and define the point where the current EDR signal is less than or equal to 0 and the previous EDR signal is greater than 0 as the falling zero point;

[0007] Step 2: When it is determined that the distance between two adjacent zero points is greater than a set minimum threshold, the interval peaks_interval between adjacent peaks in the EDR signal is recorded; the minimum threshold includes a minimum threshold for a same-sex zero point and a minimum threshold for a different-sex zero point. The same-sex zero point refers to two zero points that are both rising zero points or both falling zero points, and the different-sex zero point refers to two zero points, one of which is a rising zero point and the other is a falling zero point.

[0008] Step 3: Set the minimum spacing and maximum spacing, count the spacing peaks_interval between the minimum spacing and the maximum spacing, and calculate the respiratory rate based on the value and number of the statistical spacing peaks_interval

[0009] On the basis of the above technical solution, the present invention can also make the following improvements.

[0010] Optionally, the calculation formula for the minimum threshold of the same-sex zero point in step 2 is:

[0011]

[0012] The calculation formula of the minimum threshold of the heterosexual zero point is:

[0013] Among them, MICS represents the minimum threshold of the same-sex zero point; MICS_fact represents the set MICS factor; Fs represents the sampling frequency; max_BR represents the set maximum breathing rate; MDCS represents the minimum threshold of the opposite-sex zero point; MDCS_fact represents the set MDCS factor.

[0014] Optionally, before step 2 of recording the interval peaks_interval between adjacent peaks in the EDR signal, the step further includes:

[0015] Determine whether the peak value between the two zero points is greater than the set minimum peak threshold;

[0016] The calculation formula of the minimum peak threshold is:

[0017] pmin = pmin_fact * peak_med;

[0018] Among them, pmin represents the minimum peak threshold of the peak, pmin_fact represents the set pmin factor, and peak_med represents the median of the peak value of the EDR signal.

[0019] Optionally, the calculation formula for the respiratory rate in step 3 is:

[0020]

[0021] Wherein, RESP represents the respiratory rate; Fs represents the sampling frequency; peaks_interval and inum represent the individual size and number of the interval peaks_interval whose size is between the minimum interval and the maximum interval.

[0022] Optionally, the process of collecting EDR signals in real time in step 1 includes:

[0023] Step 11, extracting the HR signal from the ECG signal collected by the single-lead sensor, receiving the ACC signal collected by the acceleration sensor, and performing band-pass filtering on the HR signal and the ACC signal to obtain the EDR1 signal and the ACC1 signal;

[0024] Step 12: Based on a sparse adaptive algorithm, the ACC1 signal is used as an input signal of the algorithm, and the EDR1 signal is used as a reference signal of the algorithm to obtain an output error signal EDR2;

[0025] Step 13: Set an enable signal En based on the relationship between the current mean value of the ACC1 signal and a set threshold; and select a clean EDR signal from the EDR1 signal and the EDR2 signal according to the enable signal En.

[0026] According to a second aspect of the present invention, there is provided an anti-interference algorithm circuit for extracting respiratory rate from an EDR signal, comprising: a peak detection module and a respiratory rate calculation module;

[0027] The peak detection module includes: a zero point determination unit, a heterogeneous zero point spacing statistics unit, a homogeneous zero point spacing statistics unit, an adjacent peak spacing calculation unit and an output unit;

[0028] The zero point determination unit receives the EDR signal in real time, and when it is determined that the EDR signal at the current moment is greater than or equal to 0 and the EDR signal at the previous moment is less than 0, the current moment is determined to be a rising zero point; when it is determined that the EDR signal at the current moment is less than or equal to 0 and the EDR signal at the previous moment is greater than 0, the current moment is determined to be a falling zero point;

[0029] The same-sex zero point spacing statistics unit counts the spacing between two adjacent zero points when both are rising zero points or both are falling zero points based on the determination result of the zero point determination unit; the opposite-sex zero point spacing statistics unit counts the spacing between two adjacent zero points when one is a rising zero point and the other is a falling zero point based on the determination result of the zero point determination unit;

[0030] The adjacent peak interval calculation unit is used to determine the interval peaks_interval between adjacent peaks in the EDR signal;

[0031] When the distance between two adjacent zero points recorded by the output unit is greater than a set minimum threshold, the corresponding interval peaks_interval between adjacent peaks is output; the minimum threshold includes a minimum threshold for homosexual zero points and a minimum threshold for heterosexual zero points;

[0032] The respiratory rate calculation module counts the intervals peaks_interval whose sizes are between the set minimum interval and the set maximum interval, and calculates the respiratory rate based on the value and number of the counted intervals peaks_interval.

[0033] Optionally, the algorithm circuit further includes: a bandpass filtering module, a motion intensity detection module, an adaptive filtering module and a two-way data selector;

[0034] The bandpass filter module extracts the HR signal from the ECG signal collected by the single-lead sensor, receives the ACC signal collected by the acceleration sensor, and performs bandpass filtering on the HR signal and the ACC signal to obtain the EDR1 signal and the ACC1 signal respectively;

[0035] The motion intensity detection module generates an enable signal En based on the relationship between the current mean value of the ACC1 signal and a set threshold, and outputs the enable signal En to the enable signal of the adaptive filtering module and the bit selection signal of the two-way data selector;

[0036] The adaptive filtering module is based on a sparse adaptive algorithm, uses the ACC1 signal as the input signal of the algorithm, uses the EDR1 signal as the reference signal of the algorithm, and outputs an error signal EDR2;

[0037] The two-way data selector selects a clean EDR signal from the EDR1 signal and the EDR2 signal based on the enable signal En and outputs it to the peak detection module.

[0038] Optionally, the bandpass filtering module includes: a first register, a first multiplier, a first adder, a second register, a second multiplier, a second adder and a third adder;

[0039] The first register stores values of the HR signal / ACC signal at multiple adjacent moments and outputs the values to the corresponding first multiplier. The first multiplier multiplies each HR signal / ACC signal by a corresponding filter coefficient and outputs the result to the first adder.

[0040] The second register stores the values of the EDR1 signal / ACC1 signal at a plurality of adjacent moments and outputs the values to the corresponding second multiplier. The second multiplier multiplies each EDR1 signal / ACC1 signal by a corresponding filter coefficient and outputs the result to the second adder.

[0041] After the third adder adds the outputs of the first adder and the second adder, the obtained EDR1 signal is output to the adaptive filtering module, the two-way data selector and the second register, and the obtained ACC1 signal is output to the motion intensity detection module, the adaptive filtering module and the second register.

[0042] Optionally, the motion intensity detection module includes: a delay unit, a fourth adder and a comparator;

[0043] The delay unit is used to record the value of the ACC1 signal at each moment;

[0044] The fourth adder is used to calculate M*y n-1 with x n The sum of the two, minus x n-M , and finally right shift logM bits to get y n ; Among them, y n and y n-1 Represent the mean of ACC1 signal at the current moment and the previous moment, x n and x n-M Represent the values of ACC1 at the current moment and M moments before, respectively. M represents the number of ACC1 signals, and M is an integer power of 2.

[0045] The comparator determines y n When the value is greater than or equal to the set threshold, the enable signal En is set to 1; otherwise, the enable signal En is set to 0.

[0046] Optionally, the adaptive filtering module includes: a filter coefficient generating unit, a third multiplier, a fifth adder and a subtractor;

[0047] The filter coefficient generating unit generates the filter coefficient corresponding to the ACC1 signal at each moment;

[0048] The third multiplier multiplies the ACC1 signal at each moment by the corresponding filter coefficient and outputs the result to the fifth adder. The fifth adder adds the summation result y n output to the subtractor;

[0049] The subtractor obtains the expected signal d at time n based on the EDR1 signal. n , the expected signal d n Subtract the summation result y n Then the error signal EDR2 is obtained;

[0050] The filter coefficient generation unit updates the filter coefficient based on the error signal EDR2.

[0051] The present invention provides an interference-resistant method and algorithm circuit for extracting respiratory rate from EDR signals. First, the peak detection algorithm is optimized. The zero-crossing detection algorithm is more stable than the traditional peak detection. It can accurately detect effective EDR peaks instead of noise peaks under the premise that the EDR signal quality is not so high, thereby making the extracted respiratory rate more accurate and reliable. In addition, with the help of the parallelism of the circuit, the present invention designs a hardware circuit to accelerate the operation of the zero-crossing detection algorithm, so that the algorithm designed by the present invention has good real-time performance; secondly, in response to the motion noise caused by human body movement during the detection of respiratory rate, the present invention also designs an adaptive filter to remove the motion noise, so that the present invention can also extract a more accurate respiratory rate when the human body is moving. BRIEF DESCRIPTION OF THE DRAWINGS

[0052] Figure 1 A flowchart of a method for extracting respiratory rate from an interference-resistant EDR signal provided by the present invention;

[0053] Figure 2 It is a schematic diagram of the overall structure provided by an embodiment of the present invention;

[0054] Figure 3 Schematic diagram of the structure of the bandpass filter module provided by an embodiment of the present invention;

[0055] Figure 4 2 is a schematic diagram of the structure of an exercise intensity detection module provided by an embodiment of the present invention;

[0056] Figure 5 1 is a schematic diagram of the structure of an adaptive filter module provided by an embodiment of the present invention;

[0057] Figure 6 This is a schematic diagram of the peak detection module flow provided by an embodiment of the present invention;

[0058] Figure 7 2 is a flow chart of a respiratory rate calculation module provided in an embodiment of the present invention. DETAILED DESCRIPTION

[0059] The principles and features of the present invention are described below with reference to the accompanying drawings. The examples given are only used to explain the present invention and are not used to limit the scope of the present invention.

[0060] Figure 1 The present invention provides a flow chart of a method for extracting respiratory rate from an interference-resistant EDR signal, as shown in FIG. Figure 1 As shown, the method includes:

[0061] Step 1: Receive the EDR signal in real time, define the point when the EDR signal at the current moment is greater than or equal to 0 and the EDR signal at the previous moment is less than 0 as the rising zero point, and define the point when the EDR signal at the current moment is less than or equal to 0 and the EDR signal at the previous moment is greater than 0 as the falling zero point.

[0062] In a specific implementation, the rising zero point is a zero point in the image where the slope is greater than zero, and the falling zero point is a zero point in the image where the slope is less than zero.

[0063] Step 2: When it is determined that the distance between two adjacent zero points is greater than the set minimum threshold, the interval peaks_interval between adjacent peaks in the EDR signal is recorded; the minimum threshold includes the minimum threshold of the same-sex zero point and the minimum threshold of the opposite-sex zero point. The same-sex zero point means that both zero points are rising zero points or both are falling zero points, and the opposite-sex zero point means that one of the two zero points is a rising zero point and the other is a falling zero point.

[0064] Step 3: Set the minimum interval and the maximum interval, count the intervals peaks_interval whose size is between the minimum interval and the maximum interval, and calculate the respiratory rate based on the value and number of the counted intervals peaks_interval.

[0065] The present invention provides an interference-resistant method for extracting respiratory rate from EDR signals, which ensures accurate extraction of respiratory rate even during exercise.

[0066] Example 1

[0067] The embodiment 1 provided by the present invention is an embodiment of a method for extracting respiratory rate from an anti-interference EDR signal provided by the present invention, combined with Figure 1 It can be seen that the embodiment of the method includes:

[0068] In one possible embodiment, step 1, receives the EDR signal in real time, defines the point when the EDR signal at the current moment is greater than or equal to 0 and the EDR signal at the previous moment is less than 0 as the rising zero point, and defines the point when the EDR signal at the current moment is less than or equal to 0 and the EDR signal at the previous moment is greater than 0 as the falling zero point.

[0069] The process of real-time acquisition of EDR signals in step 1 includes:

[0070] Step 11: Extract the heart rate (HR) signal from the ECG (electrocardiogram) signal collected by the single-lead sensor, receive the ACC (Accelerometer) signal collected by the acceleration sensor, and perform band-pass filtering on the HR signal and ACC signal to obtain the EDR1 signal and ACC1 signal respectively.

[0071] Step 12: Based on the sparse adaptive algorithm, the ACC1 signal is used as the input signal of the algorithm, and the EDR1 signal is used as the reference signal of the algorithm to obtain the output error signal EDR2.

[0072] Step 13: Set an enable signal En based on the relationship between the current mean value of the ACC1 signal and the set threshold; and select a clean EDR signal from the EDR1 signal and the EDR2 signal according to the enable signal En.

[0073] Step 2: When it is determined that the distance between two adjacent zero points is greater than the set minimum threshold, the interval peaks_interval between adjacent peaks in the EDR signal is recorded; the minimum threshold includes the minimum threshold of the same-sex zero point and the minimum threshold of the opposite-sex zero point. The same-sex zero point means that both zero points are rising zero points or both are falling zero points, and the opposite-sex zero point means that one of the two zero points is a rising zero point and the other is a falling zero point.

[0074] In a possible embodiment, the calculation formula for the minimum threshold of the same-sex zero point in step 2 is:

[0075]

[0076] The calculation formula for the minimum threshold of the opposite sex zero point is:

[0077] Among them, MICS (Minimum Identical Crossing Spacing) represents the minimum threshold of the same-sex zero point; MICS_fact represents the set MICS factor; Fs represents the sampling frequency, in Hz; max_BR (maximum of BreathRate) represents the set maximum respiratory rate, in times / minute; MDCS (Minimum Different Crossing Spacing) represents the minimum threshold of the opposite-sex zero point; MDCS_fact represents the set MDCS factor.

[0078] In specific implementations, 60*Fs / max_BR represents the peak-to-peak distance corresponding to the maximum respiratory rate, measured in beats per minute. MICS_fact generally ranges from 0.5 to 0.75. The product of the MICS factor and the peak-to-peak distance corresponding to the maximum respiratory rate is the minimum homoscedastic zero-point interval threshold. MDCS_fact generally ranges from 0.1 to 0.25. The product of the MICS factor and the peak-to-peak distance corresponding to the maximum respiratory rate is the minimum heteroscedastic zero-point interval threshold.

[0079] In a possible embodiment, before step 2 of recording the interval peaks_interval between adjacent peaks in the EDR signal, the method further includes:

[0080] Determine whether the peak value between the two zero points is greater than the set minimum peak threshold.

[0081] The calculation formula for the minimum peak threshold is:

[0082] pmin=pmin_fact*peak_med.

[0083] Among them, pmin (peak minimum) represents the minimum peak threshold of the peak, pmin_fact represents the set pmin factor, and peak_med represents the median of the peak value of the EDR signal.

[0084] In a specific implementation, the value range of pmin_fact can be 0.1 to 0.3.

[0085] Step 3: Set the minimum interval and the maximum interval, count the intervals peaks_interval whose size is between the minimum interval and the maximum interval, and calculate the respiratory rate based on the value and number of the counted intervals peaks_interval.

[0086] In one possible embodiment, the calculation formula of the respiratory rate in step 3 is:

[0087]

[0088] RESP represents the respiratory rate in breaths per minute; peaks_interval and inum represent the individual size and number of peaks_intervals between the minimum and maximum intervals.

[0089] In a specific implementation, the method for setting the maximum spacing imax and the minimum spacing imin includes:

[0090] First, exclude individuals with large errors in peaks_interval. Because the mean is easily affected by extreme values, calculate the median imed of peaks_interval and use it as a benchmark for excluding extreme values. Then, multiply imed by the maximum spacing factor imax_fact and the minimum spacing factor imin_fact, respectively, to obtain the set maximum spacing imax and minimum spacing imin.

[0091] Example 2

[0092] Embodiment 2 provided by the present invention is an embodiment of an algorithm circuit for extracting respiratory rate from an anti-interference EDR signal provided by the present invention. Figure 2 The structure diagram of the algorithm circuit for extracting respiratory rate from EDR signal with anti-interference provided by the embodiment of the present invention, combined with Figure 2It can be seen that the embodiment of the algorithm circuit includes: a peak detection module and a respiratory rate calculation module.

[0093] The peak detection module includes: a zero point determination unit, a heterogeneous zero point spacing statistics unit, a homogeneous zero point spacing statistics unit, an adjacent peak spacing calculation unit and an output unit.

[0094] The zero point judgment unit receives the EDR signal in real time. When it is determined that the EDR signal at the current moment is greater than or equal to 0 and the EDR signal at the previous moment is less than 0, the current moment is judged as the rising zero point; when it is determined that the EDR signal at the current moment is less than or equal to 0 and the EDR signal at the previous moment is greater than 0, the current moment is judged as the falling zero point.

[0095] The same-sex zero point spacing statistics unit is based on the determination result of the zero point determination unit, and counts the spacing between two adjacent zero points when both are rising zero points or both are falling zero points; the opposite-sex zero point spacing statistics unit is based on the determination result of the zero point determination unit, and counts the spacing between two adjacent zero points when one is a rising zero point and the other is a falling zero point.

[0096] The adjacent peak interval calculation unit is used to determine the interval peaks_interval between adjacent peaks in the EDR signal.

[0097] When the distance between two adjacent zero points recorded by the output unit is greater than the set minimum threshold, the corresponding interval between adjacent peaks, peaks_interval, is output; the minimum threshold includes the minimum threshold of the same-sex zero point and the minimum threshold of the opposite-sex zero point.

[0098] The peak detection module detects the effective peaks representing breathing in the EDR and extracts the peaks_interval interval between adjacent peaks for output.

[0099] The respiratory rate calculation module counts the intervals peaks_interval between the set minimum interval and the maximum interval, and calculates the respiratory rate based on the value and number of the counted intervals peaks_interval.

[0100] In a possible embodiment, the algorithm circuit further includes: a bandpass filtering module, a motion intensity detection module, an adaptive filtering module, and a two-way data selector.

[0101] The bandpass filter module extracts the HR signal from the ECG signal collected by the single-lead sensor, receives the ACC signal collected by the acceleration sensor, and performs bandpass filtering on the HR signal and ACC signal to obtain the EDR1 signal and ACC1 signal respectively.

[0102] The motion intensity detection module generates an enable signal En based on the relationship between the current mean value of the ACC1 signal and the set threshold, and outputs the enable signal En to the enable signal of the adaptive filtering module and the bit selection signal of the two-way data selector.

[0103] The sensor collects ECG and acceleration signals. The heart rate and acceleration signals extracted from the ECG signals are first passed through a bandpass filter module to remove DC signals, baseline drift, and noise signals in the frequency band of non-interest. The motion intensity detection module is used to determine the intensity of the motion in the acceleration signal. If the motion intensity is weak, the heart rate signal output by the bandpass filter module is directly passed through the peak extraction module and the respiration rate calculation module to extract the respiration rate value. If the motion intensity is strong, the heart rate signal output by the bandpass filter module must first pass through the adaptive filtering module to remove motion noise before respiration rate calculation.

[0104] The motion intensity detection module uses the mean value of the ACC1 signal to determine the magnitude of the motion intensity, and the determination result is used as the enable signal of the adaptive filtering module and the bit selection signal of the data selector.

[0105] The adaptive filtering module is based on a sparse adaptive algorithm, takes the ACC1 signal as the input signal of the algorithm, takes the EDR1 signal as the reference signal of the algorithm, and outputs the error signal EDR2.

[0106] The adaptive filtering module performs filtering processing on the input EDR1 signal based on the acceleration signal ACC1 to remove motion interference. The obtained EDR2 signal is the signal after the motion noise is filtered out of the EDR1 signal.

[0107] The two-way data selector selects a clean EDR signal from the EDR1 signal and the EDR2 signal based on the enable signal En and outputs it to the peak detection module.

[0108] In a possible embodiment, the bandpass filtering module includes: a first register, a first multiplier, a first adder, a second register, a second multiplier, a second adder, and a third adder.

[0109] The first register stores values of the HR signal / ACC signal at multiple adjacent moments and outputs the values to the corresponding first multiplier. The first multiplier multiplies each HR signal / ACC signal by a corresponding filter coefficient and outputs the result to the first adder.

[0110] The second register stores the values of the EDR1 signal / ACC1 signal at multiple adjacent moments and outputs them to the corresponding second multiplier. The second multiplier adds the corresponding filter coefficient to each EDR1 signal / ACC1 signal and outputs it to the second adder.

[0111] The third adder adds the outputs of the first adder and the second adder to obtain the EDR1 signal, which is output to the adaptive filtering module, the two-way data selector and the second register, and obtains the ACC1 signal, which is output to the motion intensity detection module, the adaptive filtering module and the second register.

[0112] In a specific implementation, the structural diagram of the embodiment of the bandpass filtering module is as follows: Figure 3 As shown, combined Figure 3 It can be seen that the bandpass filter module adopts a 4th-order IIR structure, including a delay unit (register) and an adder. Two of the bandpass filter modules are instantiated to perform bandpass filtering on the HR signal and ACC signal respectively, removing the DC component, baseline drift and high-frequency noise, and obtaining the EDR1 signal and ACC1 signal. n 、x n-1 、x n-2 、x n-3 、x n-4 Respectively represent the values of the HR signal or ACC signal input at the current moment, the previous moment, the previous two moments, the previous three moments, and the previous four moments. The first register is used to store these values. a0~a4 are the filter coefficients corresponding to the input signals at different moments; n 、y n-1 、y n-2 、y n-3 、y n-4 Respectively represent the values of the EDR1 signal or ACC1 signal output at the current moment, the previous moment, the previous two moments, the previous three moments, and the previous four moments. b1~b4 are the filter coefficients corresponding to the output signals at different moments. The output signal y at the current moment can be obtained by multiplying the input signal or output signal with the corresponding filter coefficient and then summing them. n , that is, EDR1 signal or ACC1 signal.

[0113] Bandpass filter module 1 has a passband of 0.1 to 0.4 Hz and uses a 4th-order IIR structure, which reduces the number of steps compared to FIR and improves computational speed. Bandpass filter module 1 removes DC components, baseline drift, and high-frequency interference from the HR and ACC signals, respectively, to generate EDR1 and ACC1. This reduces errors introduced by these noise signals in subsequent signal processing.

[0114] In one possible embodiment, the motion intensity detection module is used to calculate the mean of the ACC1 signal and includes a delay unit, an adder, and a comparator. The delay unit and adder are used for serial summation. A right shift operation is used to replace the divider to calculate the mean. The comparator is used to compare the ACC1 mean with a set threshold A to generate an enable signal En. Specifically, the motion intensity detection module includes: a delay unit, a fourth adder, and a comparator.

[0115] The delay unit is used to record the value of the ACC1 signal at each moment.

[0116] The fourth adder is used to calculate M*y n-1 with x n The sum of the two, minus x n-M , and finally right shift logM bits to get y n ; Among them, y n and y n-1 Represent the mean of ACC1 signal at the current moment and the previous moment, x n and x n-M They represent the values of ACC1 at the current moment and M moments before respectively, M represents the number of ACC1 signals, and M is an integer power of 2.

[0117] Comparator judges y n When the value is greater than or equal to the set threshold, the enable signal En is set to 1; otherwise, the enable signal En is set to 0.

[0118] In the specific implementation, the structural diagram of the motion intensity detection module is as follows: Figure 4 As shown, combined Figure 4 It can be seen that the mean calculation formula of the ACC1 signal is as follows:

[0119]

[0120] In the above formula, x n-i represents the value of ACC1 at the previous i moments. In the embodiment, M can be set to 64. However, the calculation of formula (2-1) requires M-1 additions and one division. The present invention simplifies the division operation by setting M to an integer power of 2, and only requires a right shift of logM bits (6 bits in the embodiment). In order to reduce the number of additions, according to formula (2-1), y n-1 The expression is as follows:

[0121]

[0122] Subtracting equation (2-1) from equation (2-2) yields:

[0123]

[0124] So we only need to sum the result M*y at the previous moment n-1 with x n Add, then subtract x n-M , and finally shift right 6 bits to get the mean value y of ACC1 at the current moment n ,y n Compare with the threshold A in the figure. If it is greater than or equal to A, then En is set to 1, otherwise En is set to 0.

[0125] The motion intensity detection module measures the intensity of motion using the mean value of the ACC1 signal and obtains the motion intensity judgment En.

[0126] In a possible embodiment, the adaptive filtering module adopts an M-order PNLMS algorithm, including a delay unit, a multiplier, an adder, a subtractor, a divider, and a power calculation module. The ACC1 signal is used as the input signal x of the PNLMS algorithm. n , using EDR1 signal as the reference signal of the algorithm n , with the algorithm's error signal e n The EDR2 outputted by the adaptive filtering module includes a filter coefficient generating unit, a third multiplier, a fifth adder, and a subtractor.

[0127] The filter coefficient generating unit generates the filter coefficient corresponding to the ACC1 signal at each moment.

[0128] The third multiplier multiplies the ACC1 signal at each moment by the corresponding filter coefficient and outputs it to the fifth adder. The fifth adder adds the summation result y n Output to the subtractor.

[0129] The subtractor obtains the expected signal d at time n based on the EDR1 signal n , the expected signal d n Subtract the summation result y n Then the error signal EDR2 is obtained.

[0130] The filter coefficient generation unit updates the filter coefficient based on the error signal EDR2 and the filter coefficient.

[0131] In the specific implementation, the structural diagram of the adaptive filtering module is as follows: Figure 5 As shown in the figure, it includes adders, subtractors, multipliers, dividers, registers, and a power calculation module. The adaptive filter is used to remove motion interference and uses the 10th-order power normalized least mean square (PNILMS) algorithm. The process of the M-order PNLMS algorithm is as follows:

[0132] y n =W n T *x n (Formula 3-1)

[0133] e n =d n -y n (Formula 3-2)

[0134]

[0135] W n+1 =W n +2μ n*e n *x n (Formula 3-4)

[0136] In the above formula, (Formula 3-1) is the calculation formula for the output signal, (Formula 3-2) is the calculation formula for the error signal, (Formula 3-3) is the calculation formula for the step factor, and (Formula 3-4) is the update formula for the filter coefficient. n Represents the input signal x at time n n Input signal x at time n-M+1 n-M+1 The vector composed of x n T Represents x n Transpose of a vector; W n is the vector of filter coefficients at time n, W n T W n The transpose of y n represents the output signal of the filter at time n; d n represents the expected signal at time n, e n represents the error signal at time n; μ n Indicates the step size factor at time n; the coefficients α and β are used to adjust the stability of the step size factor, making the algorithm more stable than NLMS. β is set to a smaller number to prevent the power P (i.e. x n T *x n ) is too small, resulting in μ n If the coefficient α is too large, it will cause a decrease in stability. The coefficient α is generally limited to the range of 0 to 2. The PNLMS algorithm adopted by the present invention improves the disadvantage of the slow convergence speed of the LMS algorithm and has higher stability than the NLMS algorithm. At the same time, compared with RLS, the calculation of PNLMS is simpler, the hardware resources consumed when implementing the circuit are less, and the real-time performance is high. It should be noted that the present invention does not use adaptive filtering combined with acceleration signals as a necessary step in the signal processing process, but only uses the adaptive filtering module when En is valid. The reasons are: first, when the human body is at rest, the respiratory rate can be extracted faster without the adaptive filtering module, and the real-time performance is better. However, more importantly, the chest fluctuation caused by respiration will also be reflected in the acceleration signal. If the human body is at rest or the exercise intensity is weak, the component of respiration reflected in the acceleration signal is greater than the component of exercise reflected in the acceleration signal. Using the adaptive filtering module will actually attenuate the effective component in the EDR signal.

[0137] Specifically, such as Figure 5 As shown, in the adaptive filtering module 3, ACC1 is used as the input signal x of the adaptive filter. n , EDR1 is used as the reference signal d n , error signal en As the output signal EDR2 of this module, the filter order M is 10, the coefficient α is 0.75, and the coefficient β is 0.0001. The ACC1 signal is multiplied by the corresponding filter coefficient and the sum is obtained n , EDR1 and y n Subtracting by the subtractor to get e n , 2 times α and e n Multiply by the multiplier to get 2*μ n *e n The molecular part, x n By calculating the power module (M multipliers calculate the input signal x at different times n ~x n-M+1 The square of the signal is summed up by an adder to obtain the power P(x n T *x n ), β and P are added together to get 2*μ n *e n The denominator of 2*μ n *e n The numerator and denominator of the equation are divided by a divider to get 2*μ n *e n , 2*μ n *e n Through M multipliers and x n Multiply each element of to get the update amount of the filter coefficient 2*μ n *e n *x n , the current W n The update amount is added through M adders to obtain the filter coefficient W at the next moment n+1 .

[0138] Peak detection module 4 is as follows Figure 6 As shown, the peak detection module uses a zero-crossing detection algorithm to extract peak intervals (peaks_interval) that meet certain conditions from the preprocessed, relatively clean EDR signal (EDR_clean). The core of the zero-crossing detection algorithm is to use the distance between zero points as the condition for detecting peaks between zero points. When the zero-point spacing is small, the corresponding peak is determined to be a noise peak. When the zero-point spacing meets the requirement, the corresponding peak is determined to be an EDR signal peak. In addition, the present invention also sets a threshold to exclude peaks with relatively small peaks, further improving the accuracy of the extracted peaks.

[0139]

[0140] pmin=pmin_fact*peak_med(Formula 4-3)

[0141] Where Fs represents the sampling frequency, max_BR (maximum of breath rate) is the set maximum breath rate, and 60*Fs / max_BR represents the distance between the two peaks corresponding to the maximum breath rate, measured in beats per minute. MICS (Minimum Identical Crossing Spacing) represents the minimum spacing between identical zero points. Identical zero points are either rising zero points (zero points with a slope greater than zero in the image) or falling zero points (zero points with a slope less than zero in the image). In contrast, opposite zero points are one rising zero point and one falling zero point. MICS_fact is the MICS factor, which generally ranges from 0.5 to 0.75. The product of the MICS factor and the peak interval corresponding to the maximum respiratory rate is the minimum homosexual zero-point interval threshold; MDCS (Minimum Different Crossing Spacing) represents the minimum value of the heterosexual zero-point spacing. MDCS_fact is the MDCS factor, which generally ranges from 0.1 to 0.25. The product of the MICS factor and the peak interval corresponding to the maximum respiratory rate is the minimum heterosexual zero-point interval threshold; pmin (peak minimum) represents the minimum peak threshold of the peak. pmin_fact is the pmin factor, which ranges from 0.1 to 0.3. peak_med represents the median of the EDR peak value.

[0142] The peak detection module 4 first adds one to the peak distance count count_peak and the zero distance count count_zero when a new EDR_clean arrives; then it determines whether the rising zero point has arrived, that is, whether the current EDR_clean is greater than or equal to 0 and the EDR_clean at the previous moment is less than zero. If so, then the point is the rising zero point, so count_zero is assigned to the distance between the opposite zero points dist_zero0, and at the same time indicates that the rising zero point has been found, and the flag flag0 of the peak and falling zero points is set to 1. If not, it means that Then this point is not the rising zero point, and no operation is performed; after the rising zero point is determined (flag0=1), the peak value and the distance between it and the previous peak are updated. If the EDR_clean at the current moment is greater than the temporarily undetermined peak size peak, peak is assigned to EDR_clean, and the adjacent peak distance dist_peak is assigned to itself plus count_peak, and count_peak is set to 0. In the assignment process of dist_peak, count_peak is not directly assigned to dist_zero0 like dist_peak. st_peak adopts the above method because before determining the falling zero point, it cannot be guaranteed that the point is definitely the peak within the EDR cycle; then it starts to judge the falling zero point, that is, whether the EDR_clean at the current moment is less than or equal to 0 and whether the EDR_clean at the previous moment is greater than 0. If so, the point is the falling zero point, count_zero is assigned to the interval dist_zero1 of the same-sex zero points, count_zero is set to 0, and counting starts again. At the same time, flag0 is set to 0, and the flag flag1 indicating whether the peak meets the conditions after determining the falling zero point is set to 1; when flag1 is 1, it starts to judge whether the peak found at this time meets the conditions, that is, dist_zero0 is greater than MDCS and dist_zero1 is greater than MICS and peak is greater than pmin. If it meets the conditions, it means that the peak meets the conditions and is the peak of the EDR signal. At this time, dist_peak is updated to peaks_interval, and dist_peak is cleared to zero, peak is updated to peaks, the median peak_med in peaks is calculated by sorting, and pmin is updated according to formula (4-3).

[0143] Specifically, in peak detection module 4, the depth of the registers used to store peaks_interval and peaks is 8, representing the 8 most recently extracted peak intervals that meet the conditions and the 8 most recently determined peak sizes. max_BR is set to 60 times per minute, MICS_fact is 0.5, MDCS_fact is 0.1, and pmin_fact is 0.1. The detailed algorithm steps of peak detection module 4 are as follows:

[0144] Step 4-1: When the current EDR_clean arrives, count_peak and count_zero are incremented by 1.

[0145] Step 4-2, determine whether EDR_clean at the current moment is greater than or equal to 0 and whether EDR_clean at the previous moment is less than 0. If so, execute step 4-3; if not, execute step 4-4.

[0146] In step 4-3, dist_zero0 is assigned the value of count_zero and flag0 is assigned the value of 1.

[0147] Step 4-4, determine whether flag0 is equal to 1 and EDR_clean is greater than peak at the current moment. If so, execute step 4-5; if not, execute step 4-6.

[0148] In steps 4-5, peak is assigned the value of EDR_clean, dist_peak is assigned the value of dist_peak plus count_peak, and count_peak is set to 0.

[0149] Step 4-6, determine whether flag0 is equal to 1 and EDR_clean at the current moment is less than or equal to 0 and EDR_clean at the previous moment is greater than 0. If so, execute step 4-7; if not, execute step 4-8.

[0150] In steps 4-7, dist_zero is assigned the value of count_zero, count_zero is set to 0, flag0 is set to 0, and flag1 is set to 1.

[0151] Step 4-8, determine whether flag1 is equal to 1, if so, execute step 4-9.

[0152] In steps 4-9, set peak to 0 and flag1 to 0.

[0153] Step 4-10, determine whether dist_zero0 is greater than MDCS and dist_zero1 is greater than MICS and peak is greater than pmin. If so, execute step 4-11.

[0154] Steps 4-11: peak is updated to peaks, the median peak_med of peaks is calculated, and pmin is assigned the product of pmin_fact and peak_med.

[0155] In step 4-12, dist_peak is updated to peaks_interval, dist_peak is set to 0, and peaks_interval is the output of the module.

[0156] Respiratory rate calculation module 5 is as follows Figure 7 As shown, the module first excludes individuals with large errors in peaks_interval, and then calculates the mean of the remaining individuals to obtain the respiratory rate RESP. The respiratory rate calculation module 5 first calculates the median imed of peaks_interval and uses it as a benchmark for excluding extreme values. Since the mean is easily affected by extreme values, the median is used here; then, imed is multiplied by the maximum spacing factor imax_fact and the minimum spacing factor imin_fact to obtain the set maximum spacing imax and minimum spacing imin; before excluding extreme values in peaks_interval, it is also necessary to determine whether the last value in peaks_interval is not 0, because if there is no such step, the values in peaks_interval at the time of initialization are all 0, and dist_peak will also be excluded in the calculation process after being updated to peaks_interval. When the values in peaks_interval are not 0 (that is, the last one is not 0), the individuals peaks_interval1 and the number inum in peaks_interval that fall within the range of imin and imax are counted, so the respiratory rate RESP can be calculated by the following formula:

[0157]

[0158] The algorithm steps of the respiratory rate calculation module include:

[0159] Step 5-1, calculate the median imed of peaks_interval.

[0160] In step 5-2, imax is assigned the product of imed and imax_fact, and imin is assigned the product of imed and imin_fact.

[0161] Step 5-3: Determine whether the last value (earliest value) in peaks_interval is non-zero. If so, execute step 5-4.

[0162] Step 5-4: Count the individual peaks_interval1 and number inum in peaks_interval that are greater than imin and less than imax.

[0163] In step 5-5, the value of peaks_interval1 is summed and assigned to isum, and inum is multiplied by 60 times the sampling rate 60*Fs.

[0164] In steps 5-6, the product of inum and 60*Fs is divided by isum to obtain the respiratory rate RESP.

[0165] It can be understood that the anti-interference EDR signal algorithm circuit for extracting respiratory rate provided by the present invention corresponds to the anti-interference EDR signal algorithm circuit for extracting respiratory rate provided by the aforementioned embodiments. The relevant technical features of the anti-interference EDR signal algorithm circuit for extracting respiratory rate can refer to the relevant technical features of the anti-interference EDR signal algorithm circuit for extracting respiratory rate, and will not be repeated here.

[0166] The embodiment of the present invention provides an interference-resistant method and algorithm circuit for extracting respiratory rate from EDR signals. Based on the traditional algorithm for extracting respiratory rate from EDR signals, the peak detection algorithm is first optimized. The zero-crossing detection algorithm is more stable than the traditional peak detection algorithm. It can accurately detect effective EDR peaks instead of noise peaks under the premise that the EDR signal quality is not so high, thereby making the extracted respiratory rate more accurate and reliable. In addition, with the help of the parallelism of the circuit, the present invention designs a hardware circuit to accelerate the operation of the zero-crossing detection algorithm, so that the algorithm designed by the present invention is comparable to the traditional algorithm in real-time performance; secondly, for the motion noise caused by human body movement in the process of detecting respiratory rate, the present invention also designs an adaptive filter to remove the motion noise, so that the present invention can also extract a more accurate respiratory rate when the human body moves.

[0167] It should be noted that, in the above embodiments, the description of each embodiment has its own focus. For parts that are not described in detail in a certain embodiment, reference can be made to the relevant description of other embodiments.

[0168] It will be understood by those skilled in the art that embodiments of the present invention may be provided as methods, systems, or computer program products. Thus, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware. Furthermore, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0169] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowcharts and / or block diagrams, as well as combinations of processes and / or blocks in the flowcharts and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded computer, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowcharts and / or block diagrams. Figure 1 a process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0170] These computer program instructions may also be stored in a computer readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 a process or multiple processes and / or boxes Figure 1 The function specified in one or more boxes.

[0171] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing the instructions executed on the computer or other programmable device for implementing the process. Figure 1 a process or multiple processes and / or boxes Figure 1 The steps for the function specified in one or more boxes.

[0172] Although the preferred embodiments of the present invention have been described, those skilled in the art may make additional changes and modifications to these embodiments once they have learned the basic creative concept. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments and all changes and modifications that fall within the scope of the present invention.

[0173] Obviously, those skilled in the art may make various changes and modifications to the present invention without departing from the spirit and scope of the present invention. Thus, if such changes and modifications fall within the scope of the claims and their equivalents, the present invention is intended to include such changes and modifications.

Claims

1. A method for extracting respiratory rate from EDR signal with anti-interference, characterized in that: The method comprises: Step 1: Receive the EDR signal in real time, define the point where the current EDR signal is greater than or equal to 0 and the previous EDR signal is less than 0 as the rising zero point, and define the point where the current EDR signal is less than or equal to 0 and the previous EDR signal is greater than 0 as the falling zero point; Step 2: When it is determined that the distance between two adjacent zero points is greater than a set minimum threshold, the interval peaks_interval between adjacent peaks in the EDR signal is recorded; the minimum threshold includes a minimum threshold for a same-sex zero point and a minimum threshold for a different-sex zero point. The same-sex zero points are two adjacent zero points that are both rising zero points or both falling zero points, and the different-sex zero points are two adjacent zero points where one is a rising zero point and the other is a falling zero point. Step 3: Set a minimum interval and a maximum interval, count the intervals peaks_interval whose sizes are between the minimum interval and the maximum interval, and calculate the respiratory rate based on the value and number of the counted intervals peaks_interval.

2. The method according to claim 1, characterized in that The calculation formula for the minimum threshold of the same-sex zero point in step 2 is: The calculation formula of the minimum threshold of the heterosexual zero point is: Among them, MICS represents the minimum threshold of the same-sex zero point; MICS_fact represents the set MICS factor; Fs represents the sampling frequency; max_BR represents the set maximum breathing rate; MDCS represents the minimum threshold of the opposite-sex zero point; MDCS_fact represents the set MDCS factor.

3. The method according to claim 1, characterized in that Before step 2 records the interval peaks_interval between adjacent peaks in the EDR signal, the step further includes: Determine whether the peak value between the two zero points is greater than the set minimum peak threshold; The calculation formula of the minimum peak threshold is: pmin = pmin_fact * peak_med; Among them, pmin represents the minimum peak threshold of the peak, pmin_fact represents the set pmin factor, and peak_med represents the median of the peak value of the EDR signal.

4. The method according to claim 1, wherein The calculation formula of the respiratory rate in step 3 is: Wherein, RESP represents the respiratory rate; Fs represents the sampling frequency; peaks_interval and inum represent the individual size and number of the interval peaks_interval whose size is between the minimum interval and the maximum interval.

5. The method according to claim 1, wherein The process of real-time acquisition of EDR signals in step 1 includes: Step 11, extracting the HR signal from the ECG signal collected by the single-lead sensor, receiving the ACC signal collected by the acceleration sensor, and performing band-pass filtering on the HR signal and the ACC signal to obtain the EDR1 signal and the ACC1 signal; Step 12: Based on a sparse adaptive algorithm, the ACC1 signal is used as an input signal of the algorithm, and the EDR1 signal is used as a reference signal of the algorithm to obtain an output error signal EDR2; Step 13: Set an enable signal En based on the relationship between the current mean value of the ACC1 signal and a set threshold; and select a clean EDR signal from the EDR1 signal and the EDR2 signal according to the enable signal En.

6. An anti-interference EDR signal extraction respiratory rate algorithm circuit, characterized in that: The algorithm circuit includes: a peak detection module and a respiratory rate calculation module; The peak detection module includes: a zero point determination unit, a heterogeneous zero point spacing statistics unit, a homogeneous zero point spacing statistics unit, an adjacent peak spacing calculation unit and an output unit; The zero point determination unit receives the EDR signal in real time, and when it is determined that the EDR signal at the current moment is greater than or equal to 0 and the EDR signal at the previous moment is less than 0, the current moment is determined to be a rising zero point; when it is determined that the EDR signal at the current moment is less than or equal to 0 and the EDR signal at the previous moment is greater than 0, the current moment is determined to be a falling zero point; The same-sex zero point spacing statistics unit counts the spacing between two adjacent zero points when both are rising zero points or both are falling zero points based on the determination result of the zero point determination unit; the opposite-sex zero point spacing statistics unit counts the spacing between two adjacent zero points when one is a rising zero point and the other is a falling zero point based on the determination result of the zero point determination unit; The adjacent peak interval calculation unit is used to determine the interval peaks_interval between adjacent peaks in the EDR signal; When the distance between two adjacent zero points recorded by the output unit is greater than a set minimum threshold, the corresponding interval peaks_interval between adjacent peaks is output; the minimum threshold includes a minimum threshold for homosexual zero points and a minimum threshold for heterosexual zero points; The respiratory rate calculation module counts the intervals peaks_interval whose sizes are between the set minimum interval and the set maximum interval, and calculates the respiratory rate based on the value and number of the counted intervals peaks_interval.

7. The algorithm circuit according to claim 6, characterized in that: The algorithm circuit further includes: a bandpass filtering module, a motion intensity detection module, an adaptive filtering module and a two-way data selector; The bandpass filter module extracts the HR signal from the ECG signal collected by the single-lead sensor, receives the ACC signal collected by the acceleration sensor, and performs bandpass filtering on the HR signal and the ACC signal to obtain the EDR1 signal and the ACC1 signal respectively; The motion intensity detection module generates an enable signal En based on the relationship between the current mean value of the ACC1 signal and a set threshold, and outputs the enable signal En to the enable signal of the adaptive filtering module and the bit selection signal of the two-way data selector; The adaptive filtering module is based on a sparse adaptive algorithm, uses the ACC1 signal as the input signal of the algorithm, uses the EDR1 signal as the reference signal of the algorithm, and outputs an error signal EDR2; The two-way data selector selects a clean EDR signal from the EDR1 signal and the EDR2 signal based on the enable signal En and outputs it to the peak detection module.

8. The algorithm circuit according to claim 7, characterized in that: The bandpass filtering module includes: a first register, a first multiplier, a first adder, a second register, a second multiplier, a second adder and a third adder; The first register stores values of the HR signal / ACC signal at multiple adjacent moments and outputs the values to the corresponding first multiplier. The first multiplier multiplies each HR signal / ACC signal by a corresponding filter coefficient and outputs the result to the first adder. The second register stores the values of the EDR1 signal / ACC1 signal at a plurality of adjacent moments and outputs the values to the corresponding second multiplier. The second multiplier multiplies each EDR1 signal / ACC1 signal by a corresponding filter coefficient and outputs the result to the second adder. After the third adder adds the outputs of the first adder and the second adder, the obtained EDR1 signal is output to the adaptive filtering module, the two-way data selector and the second register, and the obtained ACC1 signal is output to the motion intensity detection module, the adaptive filtering module and the second register.

9. The algorithm circuit according to claim 7, characterized in that: The motion intensity detection module includes: a delay unit, a fourth adder and a comparator; The delay unit is used to record the value of the ACC1 signal at each moment; The fourth adder is used to calculate M*y n-1 with x n The sum of the two, minus x n-M , and finally right shift logM bits to get y n ; Among them, y n and y n-1 Represent the mean of ACC1 signal at the current moment and the previous moment, x n and x n-M Represent the values of ACC1 at the current moment and M moments before, respectively. M represents the number of ACC1 signals, and M is an integer power of 2. The comparator determines y n When the value is greater than or equal to the set threshold, the enable signal En is set to 1; otherwise, the enable signal En is set to 0.

10. The algorithm circuit according to claim 7, characterized in that: The adaptive filtering module includes: a filter coefficient generating unit, a third multiplier, a fifth adder and a subtractor; The filter coefficient generating unit generates the filter coefficient corresponding to the ACC1 signal at each moment; The third multiplier multiplies the ACC1 signal at each moment by the corresponding filter coefficient and outputs the result to the fifth adder. The fifth adder adds the summation result y n output to the subtractor; The subtractor obtains the expected signal d at time n based on the EDR1 signal. n , the expected signal d n Subtract the summation result y n Then the error signal EDR2 is obtained; The filter coefficient generation unit updates the filter coefficient based on the error signal EDR2.

Citation Information

Patent Citations

  • Human respiration waveform determination method, device and equipment, and readable storage medium

    CN111766442A

  • Respiratory rate calculation method and device

    CN112494031A

  • Respiration rate monitoring method, device, equipment and medium

    CN114159050A

  • Respiration rate robust estimation method based on electrocardiosignal RR interval

    CN116350207A

  • Respiratory rate detection using decomposition of ECG

    US10357163B1