Blood oxygen saturation detection method
By obtaining the AC component and DC component of the blood oxygen signal and using specific empirical coefficient formulas to calculate, real-time and high-precision detection of blood oxygen saturation is achieved, and the problem of insufficient detection accuracy and real-time in the prior art is solved.
Patent Information
- Application Number
- CN202410416094.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-04-08
- Publication Date
- 2025-02-18
AI Technical Summary
The prior art is difficult to effectively detect blood oxygen saturation, especially in real time and high accuracy.
By obtaining the AC component and DC component of the first and second signals, the blood oxygen saturation is calculated using a specific empirical coefficient formula to achieve real-time detection.
This method can accurately and in real time detect blood oxygen saturation, improving the accuracy and reliability of the detection.
Smart Images

Figure CN119454018A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of computer technology, and in particular to a blood oxygen saturation detection method. Background Art
[0002] Blood oxygen saturation, usually expressed as S p O2 refers to the percentage of oxygen combined with hemoglobin in the blood, which can reflect the functional status of the respiratory and circulatory systems. Summary of the invention
[0003] In order to detect blood oxygen saturation, the present application provides a blood oxygen saturation detection method. The method comprises:
[0004] Obtaining an AC component and a DC component of a first signal;
[0005] obtaining an AC component and a DC component of a second signal;
[0006] Get blood oxygen saturation.
[0007] The blood oxygen saturation detection method proposed in this application can detect blood oxygen saturation. BRIEF DESCRIPTION OF THE DRAWINGS
[0008] Figure 1 This is a flow chart of the blood oxygen saturation detection method of the present application. DETAILED DESCRIPTION
[0009] The blood oxygen saturation detection method of the present application is described in detail below with reference to the accompanying drawings.
[0010] The present application provides a method for detecting blood oxygen saturation. Figure 1 As shown, the method includes:
[0011] Obtaining an AC component and a DC component of a first signal;
[0012] obtaining an AC component and a DC component of a second signal;
[0013] Get blood oxygen saturation.
[0014] The blood oxygen saturation can be obtained by using the AC component and the DC component of the first signal and the AC component and the DC component of the second signal through the following formula:
[0015] S P O2=AR 2 +BR+C,
[0016] Among them, S P O2 is the blood oxygen saturation, A is the first empirical coefficient, B is the second empirical coefficient, C is the third empirical coefficient, and R is calculated by the following formula:
[0017]
[0018] Among them, AC1 is the AC component of the first signal, DC1 is the DC component of the first signal, AC2 is the AC component of the second signal, and DC2 is the DC component of the second signal.
[0019] In one embodiment, the first empirical coefficient A is -22.537, the second empirical coefficient B is 1.4389, and the third empirical coefficient C is 103.78.
[0020] The AC component of the first signal and the DC component of the first signal can be obtained by the following method:
[0021] A first signal is obtained, and an alternating current component of the first signal and a direct current component of the first signal are obtained through the first signal.
[0022] On the basis of obtaining the first signal, obtaining the AC component of the first signal and the DC component of the first signal through the first signal can be achieved by using existing technology, which will not be described in detail here.
[0023] The first signal can be obtained by using the third signal and the fourth signal through the following formula:
[0024] e1(n)=λ1(n)e2(n)+[1-λ1(n)]e3(n),
[0025] Wherein, e1(n) is the first signal, e2(n) is the third signal, e3(n) is the fourth signal, and λ1(n) can be obtained by the following formula:
[0026]
[0027] Among them, α1(n) can be obtained by the following formula:
[0028]
[0029] in, is the first step length parameter.
[0030] The third signal can be obtained by using the fifth signal and the sixth signal through the following formula:
[0031] e2(n)=d1(n)-w1 T (n)x1(n),
[0032] Among them, d1(n) is the fifth signal, x1(n) is the sixth signal, w1(n) is the first filter weight vector coefficient, w1 T (n) is the transposed vector of w1(n).
[0033] The fourth signal can be obtained by using the fifth signal and the sixth signal through the following formula:
[0034] e3(n)=d1(n)-w2 T (n)x1(n),
[0035] Among them, d1(n) is the fifth signal, x1(n) is the sixth signal, w2(n) is the weight vector coefficient of the second filter, and w2 T (n) is the transposed vector of w2(n).
[0036] The fifth signal may be a red light PPG (photoplethysmo-graphic) signal, which may be obtained after the person to be tested wears a blood oxygen saturation detection device.
[0037] The red light may be red light having a wavelength of 660 nm.
[0038] The blood oxygen saturation detection device may be a wearable blood oxygen saturation detection device, such as a sports bracelet.
[0039] The fifth signal may also be a pre-processed red light PPG signal.
[0040] The sixth signal can be obtained by:
[0041] k1 first Gaussian white noises with amplitude μ1 are added to the fifth signal d1(n) Get k1 new signals, perform EMD decomposition (Empirical Mode Decomposition) on the k1 new signals respectively, average the k1 first-order IMFs (Intrinsic Mode Components) obtained by decomposition, and get the first-order first eigenmode component:
[0042]
[0043] Among them, IMF1(n) is the first-order first eigenmode component, E1(*) is the first-order IMF obtained by EMD decomposition;
[0044] r1(n)=d1(n)-IMF1(n);
[0045] Add k2 second Gaussian white noises with amplitude μ2 to r1(n) respectively The first-order intrinsic mode component of is obtained to obtain k2 new signals, and the k2 new signals are decomposed by EMD respectively. The k2 first-order IMFs obtained by decomposition are averaged to obtain the second-order first intrinsic mode component:
[0046]
[0047] Among them, IMF2(n) is the second-order first eigenmode component, E1(*) is the first-order IMF obtained by EMD decomposition;
[0048] r2(n)=r1(n)-IMF2(n);
[0049] Add k3 third Gaussian white noises with amplitude μ3 to r2(n) The second-order eigenmode components of k3 new signals are obtained, and the k3 new signals are decomposed by EMD respectively. The k3 first-order IMFs obtained by decomposition are averaged to obtain the third-order first eigenmode component:
[0050]
[0051] Among them, IMF3(n) is the third-order first eigenmode component, E1(*) is the first-order IMF obtained by EMD decomposition, and E2(*) is the second-order IMF obtained by EMD decomposition;
[0052] r3(n)=r2(n)-IMF3(n);
[0053] And so on, continue to iterate the decomposition until:
[0054] exist Add The amplitude is The m1th Gaussian white noise The m1-1 order eigenmode component is obtained A new signal, yes The new signals are decomposed by EMD respectively, and the decomposed The first-order IMFs are averaged to obtain the m1-order first eigenmode component:
[0055]
[0056] in, is the first eigenmode component of order m1, E1(*) is the first-order IMF obtained by EMD decomposition, is the m1-1 order IMF obtained by EMD decomposition;
[0057]
[0058] in, The following conditions must be met: The number of extreme points is 2.
[0059] In one embodiment,
[0060] In another embodiment, the first Gaussian white noise Second Gaussian white noise Third Gaussian white noise ...m1th Gaussian white noise are the same.
[0061] The sixth signal x1(n) can be obtained by adding the first eigenmode components of each order whose screening values are greater than the first threshold.
[0062] The first threshold may be preset.
[0063] i-th a The screening value of the first eigenmode component can be obtained as follows:
[0064] right Perform coarse-graining processing to obtain a new sequence signal y(j):
[0065]
[0066] in, represents rounding down, l = (j-1)*s+1, s is the first scale factor; For the i a The first eigenmode component, i a =1, 2, ... m1;
[0067] The sequence signal y(j) obtained by coarse-grained processing is reconstructed in phase space to obtain the first matrix H:
[0068]
[0069] Where τ is the first time delay, m5 is the first embedding dimension,
[0070] The row vector Y(i b ) are arranged in ascending order according to their values, and a new row vector Y′(i b ), and get the second matrix H′:
[0071]
[0072] Y′(i b ) is replaced by the element in the row vector Y(i b ) in the index value, and obtain the row vector Y″(i b ), and get the third matrix H″:
[0073]
[0074] Among them, i b =1,2,...p,Y′(i b ) in the row vector Y(ib ) can be the index value of the element in the row vector Y(i b )
[0075] A row vector Y″(i b ) is an index sequence, for example, i b =1, Y″(1) is an index sequence; if two row vectors Y″(i b ) are exactly the same, then they are the same index sequence. For example, if Y″(1) and Y″(2) are exactly the same, then Y″(1) and Y″(2) are the same index sequence. If two row vectors Y″(i b ) are not completely identical, then they are different types of index sequences. For example, if Y″(3) and Y″(4) are not completely identical, then Y″(3) and Y″(4) are different types of index sequences.
[0076] calculate
[0077]
[0078] Get the i a The screening value of the first eigenmode component of the i-th order; where MQP is a The screening value of the first eigenmode component of order, is the probability of occurrence of each index sequence, a MQP is the number of different index sequences contained in the third matrix H″, that is, the third matrix H″ contains a MQP Different index sequences.
[0079] The AC component of the second signal and the DC component of the second signal can be obtained by the following method:
[0080] A second signal is obtained, and an AC component of the second signal and a DC component of the second signal are obtained through the second signal.
[0081] On the basis of obtaining the second signal, obtaining the AC component of the second signal and the DC component of the second signal through the second signal can be achieved by using existing technology, which will not be described in detail here.
[0082] The specific method of obtaining the second signal includes:
[0083] e4(n)=λ2(n)e5(n)+[1-λ2(n)]e6(n),
[0084] Among them, e4(n) is the second signal, e5(n) is the seventh signal, e6(n) is the eighth signal, and λ2(n) can be obtained by the following formula:
[0085]
[0086] Among them, α2(n) can be obtained by the following formula:
[0087]
[0088] in, is the second step length parameter, and the seventh signal can be obtained by the following formula:
[0089] e5(n)=d2(n)-w3 T (n)x2(n),
[0090] Among them, d2(n) is the ninth signal, x2(n) is the tenth signal, w3(n) is the third filter weight vector coefficient, w3 T (n) is the transposed vector of w3(n), and the eighth signal can be obtained by the following formula:
[0091] e6(n)=d2(n)-w4 T (n)x2(n),
[0092] Among them, d2(n) is the ninth signal, x2(n) is the tenth signal, w4(n) is the weight vector coefficient of the second filter, and w4 T (n) is the transposed vector of w4(n).
[0093] The ninth signal may be an infrared light PPG (photoplethysmo-graphic) signal, which may be obtained after the person to be tested wears a blood oxygen saturation detection device.
[0094] The infrared light may be infrared light having a wavelength of 940 nm.
[0095] The blood oxygen saturation detection device may be a wearable blood oxygen saturation detection device, such as a sports bracelet.
[0096] The ninth signal may also be a pre-processed infrared light PPG signal.
[0097] The tenth signal can be obtained by a method similar to the method for obtaining the sixth signal, as described in detail as follows:
[0098] Add k to the ninth signal d2(n) respectively 21 The amplitude is μ 21 The m1+1th Gaussian white noise Get k 21 A new signal for k 21 The k new signals are decomposed by EMD (Empirical Mode Decomposition) respectively, and the decomposed k 21The first-order IMFs (eigenmode components) are averaged to obtain the first-order second eigenmode component:
[0099]
[0100] Among them, IMF 21 (n) is the first-order second eigenmode component, E1(*) is the first-order IMF obtained by EMD decomposition;
[0101] r 21 (n) = d2(n) - IMF 21 (n);
[0102] In r 21 Add k to (n) 22 The amplitude is μ 22 The m1+2th Gaussian white noise The first-order eigenmode component of k 22 A new signal for k 22 The k new signals are decomposed by EMD respectively, and the decomposed k 22 The first-order IMFs are averaged to obtain the second-order second eigenmode component:
[0103]
[0104] Among them, IMF 22 (n) is the second-order second eigenmode component, E1(*) is the first-order IMF obtained by EMD decomposition;
[0105] r 22 (n) = r 21 (n)-IMF 22 (n);
[0106] In r 22 Add k to (n) 23 The amplitude is μ 23 The m1+3th Gaussian white noise The second-order eigenmode component of k 23 A new signal for k 23 The k new signals are decomposed by EMD respectively, and the decomposed k 23 The first-order IMFs are averaged to obtain the third-order second eigenmode component:
[0107]
[0108] Among them, IMF 23 (n) is the third-order second eigenmode component, E1(*) is the first-order IMF obtained by EMD decomposition; E2(*) is the second-order IMF obtained by EMD decomposition;
[0109] r23 (n) = r 22 (n)-IMF 23 (n);
[0110] And so on, continue to iterate the decomposition until:
[0111] exist Add The amplitude is The m2th Gaussian white noise The m2-1 order eigenmode component is obtained A new signal, yes The new signals are decomposed by EMD respectively, and the decomposed The first-order IMFs are averaged to obtain the m2-order second eigenmode component:
[0112]
[0113] in, is the m2-order second eigenmode component, E1(*) is the first-order IMF obtained by EMD decomposition; It is the m2-1 order IMF obtained by EMD decomposition;
[0114]
[0115] in, The following conditions must be met: The number of extreme points is 2.
[0116] In one embodiment,
[0117] In another embodiment, the m1+1th Gaussian white noise m1+2th Gaussian white noise m1+3 Gaussian white noise ...m2th Gaussian white noise are the same.
[0118] The second eigenmode components of each order whose screening values are greater than the second threshold are added together to obtain the tenth signal x2(n).
[0119] The second threshold may be preset.
[0120] i-th c The screening value of the second eigenmode component can be obtained as follows:
[0121] right The coarse-grained processing is performed to obtain a new sequence signal y2(j2):
[0122]
[0123] in, represents rounding down, l2=(j2-1)*s2+1, s2 is the second scale factor; For the i c The second eigenmode component, i c =1, 2, ... m2;
[0124] The sequence signal y2(j2) obtained by coarse-graining processing is reconstructed in phase space to obtain the fourth matrix H4:
[0125]
[0126] Where τ2 is the second time delay, m6 is the second embedding dimension,
[0127] The row vector Y2(i d ) are arranged in ascending order according to their values, and a new row vector Y2′(i d ), and get the fifth matrix H4′:
[0128]
[0129] Put Y2′(i d ) is replaced by the element in the row vector Y2(i d ) in the index value, and obtain the row vector Y2″(i d ), and obtain the sixth matrix H4″:
[0130]
[0131] Among them, i d =1,2,...p2,Y2′(i d ) in the row vector Y2(i d ) can be the index value of the element in the row vector Y2(i d )
[0132] A row vector Y2″(i d ) is an index sequence, for example, i d =1, Y2″(1) is an index sequence; if two row vectors Y2″(i d ) are exactly the same, then they are the same index sequence. For example, if Y2″(1) is exactly the same as Y2″(2), then Y2″(1) is the same as Y2″(2).
[0133] calculate
[0134]
[0135] Get the i c The screening value of the second eigenmode component of the i-th order; where MQP2 is the c The screening value of the second eigenmode component of order, is the probability of occurrence of each index sequence, is the number of different index sequences contained in the sixth matrix H4″.
Claims
1. A method for detecting blood oxygen saturation, characterized in that: include: Obtaining an AC component and a DC component of a first signal; obtaining an AC component and a DC component of a second signal; Get blood oxygen saturation.
2. The method for detecting blood oxygen saturation as claimed in claim 1, characterized in that: The obtaining of blood oxygen saturation comprises: The blood oxygen saturation is obtained by using the AC component and the DC component of the first signal and the AC component and the DC component of the second signal through the following formula: S P O2=AR 2 +BR+C, Among them, S P O2 is the blood oxygen saturation, A is the first empirical coefficient, B is the second empirical coefficient, C is the third empirical coefficient, and R is calculated by the following formula: Among them, AC1 is the AC component of the first signal, DC1 is the DC component of the first signal, AC2 is the AC component of the second signal, and DC2 is the DC component of the second signal.
3. The method for detecting blood oxygen saturation as claimed in claim 1, characterized in that: The obtaining of the AC component and the DC component of the first signal comprises: The first signal is obtained, and an alternating current component of the first signal and a direct current component of the first signal can be obtained through the first signal.
4. The method for detecting blood oxygen saturation as claimed in claim 3, characterized in that: The obtaining of the first signal comprises: The first signal is obtained by using the third signal and the fourth signal through the following formula: e1(n)=λ1(n)e2(n)+[1-λ1(n)]e3(n), Wherein, e1(n) is the first signal, e2(n) is the third signal, e3(n) is the fourth signal, and λ1(n) is obtained by the following formula: Among them, α1(n) is obtained by the following formula: in, is the first step length parameter.
5. The method for detecting blood oxygen saturation as claimed in claim 4, characterized in that: The third signal is obtained by the following method: The third signal is obtained by using the fifth signal and the sixth signal through the following formula: e2(n)=d1(n)-w1 T (n)x1(n), Among them, d1(n) is the fifth signal, x1(n) is the sixth signal, w1(n) is the first filter weight vector coefficient, w1 T (n) is the transposed vector of w1(n).
6. The method for detecting blood oxygen saturation as claimed in claim 4, characterized in that: The fourth signal is obtained by the following method: The fourth signal is obtained by using the fifth signal and the sixth signal through the following formula: e3(n)=d1(n)-w2 T (n)x1(n), Among them, d1(n) is the fifth signal, x1(n) is the sixth signal, w2(n) is the weight vector coefficient of the second filter, and w2 T (n) is the transposed vector of w2(n).
7. The method for detecting blood oxygen saturation according to any one of claims 5 to 6, characterized in that: The fifth signal is a red light PPG signal.
8. The method for detecting blood oxygen saturation according to any one of claims 5 to 6, characterized in that: The fifth signal is a preprocessed red light PPG signal.
9. The method for detecting blood oxygen saturation according to any one of claims 5 to 6, characterized in that: The sixth signal is obtained by the following method: k1 first Gaussian white noises with amplitude μ1 are added to the fifth signal d1(n) Get k1 new signals, perform EMD decomposition on the k1 new signals respectively, average the k1 first-order IMFs obtained by decomposition, and get the first-order first eigenmode component: Among them, IMF1(n) is the first-order first eigenmode component, E1(*) is the first-order IMF obtained by EMD decomposition; get: r1(n)=d1(n)-IMF1(n); Add k2 second Gaussian white noises with amplitude μ2 to r1(n) respectively The first-order intrinsic mode component of is obtained to obtain k2 new signals, and the k2 new signals are decomposed by EMD respectively. The k2 first-order IMFs obtained by decomposition are averaged to obtain the second-order first intrinsic mode component: Among them, IMF2(n) is the second-order first eigenmode component, E1(*) is the first-order IMF obtained by EMD decomposition; get: r2(n)=r1(n)-IMF2(n); Add k3 third Gaussian white noises with amplitude μ3 to r2(n) The second-order eigenmode components of k3 new signals are obtained, and the k3 new signals are decomposed by EMD respectively. The k3 first-order IMFs obtained by decomposition are averaged to obtain the third-order first eigenmode component: Among them, IMF3(n) is the third-order first eigenmode component, E1(*) is the first-order IMF obtained by EMD decomposition, and E2(*) is the second-order IMF obtained by EMD decomposition; get: r3(n)=r2(n)-IMF3(n); And so on, continue to iterate the decomposition until: exist Add The amplitude is The m1th Gaussian white noise The m1-1 order eigenmode component is obtained A new signal, yes The new signals are decomposed by EMD respectively, and the decomposed The first-order IMFs are averaged to obtain the m1-order first eigenmode component: in, is the first eigenmode component of order m1, E1(*) is the first-order IMF obtained by EMD decomposition, is the m1-1 order IMF obtained by EMD decomposition; in, The following conditions must be met: The number of extreme points of is 2; The first eigenmode components of each order whose screening values are greater than the first threshold are added together to obtain the sixth signal x1(n).
10. The method for detecting blood oxygen saturation as claimed in claim 9, characterized in that: The screening value is obtained by the following method: Perform coarse-graining processing to obtain a new sequence signal y(j): in, represents rounding down, l = (j-1)*s+1, s is the first scale factor; For the i a The first eigenmode component, i a =1, 2, ... m1; The sequence signal y(j) obtained by coarse-grained processing is reconstructed in phase space to obtain the first matrix H: Where τ is the first time delay, m5 is the first embedding dimension, The row vector Y(i b ) are arranged in ascending order according to their values, and a new row vector Y′(i b ), and get the second matrix H′: Y′(i b ) is replaced by the element in the row vector Y(i b ) in the index value, and obtain the row vector Y″(i b ), and get the third matrix H″: Among them, i b =1,2,...p; calculate Get the i a The screening value of the first eigenmode component of the i-th order; where MQP is a The screening value of the first eigenmode component, P jMQP is the probability of occurrence of each index sequence, a MQP is the number of different index sequences contained in the third matrix H″.