REDUCTION OF PHYSIOLOGICAL METRIC ERROR DUE TO INERTIAL CADENCE
20200085314 ยท 2020-03-19
Inventors
Cpc classification
A63B2230/04
HUMAN NECESSITIES
A61B5/721
HUMAN NECESSITIES
A63B2220/17
HUMAN NECESSITIES
A61B2562/0219
HUMAN NECESSITIES
International classification
A61B5/00
HUMAN NECESSITIES
Abstract
The heart rate monitor disclosed herein removes a step rate component from a measured heart rate by using one or more filtering techniques when the step rate is close to the heart rate. In general, a difference between the step rate and the heart rate is determined, and the step rate is filtered from the heart rate based on a function of the difference.
Claims
1. A heart rate monitor for sensing a heart rate of a user, the heart rate monitor comprising: a photoplethysmograph (PPG) sensor configured to: sense light scattered from a body of the user; and provide PPG information responsive to the sensed light; a step rate sensor configured to: sense motion from the user; and provide motion information responsive to the sensed motion; at least one processor circuit configured to: determine a step rate of a user from the motion information provided by the step rate sensor; determine an initial instantaneous heart rate from the PPG information provided by the PPG sensor and the motion information provided by the step rate sensor; determine a revised heart rate, responsive to whether the initial instantaneous heart rate is within a first crossover window relative to the step rate, from the initial instantaneous heart rate and the step rate; determine an output heart rate from the revised heart rate; and output the output heart rate.
2. The heart rate monitor of claim 1 wherein the at least one processor circuit determines the revised heart rate by: determining a second instantaneous heart rate, responsive to whether the initial instantaneous heart rate is within the first crossover window relative to the step rate, from the initial instantaneous heart rate and the step rate; and determine the revised heart rate from the second instantaneous heart rate.
3. The heart rate monitor of claim 2: wherein the at least one processor circuit is further configured to compute a difference between the initial instantaneous heart rate and the step rate; and wherein the at least one processor circuit determines the second instantaneous heart rate by determining the second instantaneous heart rate, responsive to whether the difference is less than a threshold, as a function of the initial instantaneous heart rate.
4. The heart rate monitor of claim 3: wherein the at least one processor circuit is further configured to determine a weighted average of frequencies of two or more spectral peaks of the PPG information; and wherein the at least one processor circuit determines the second instantaneous heart rate by determining the second instantaneous heart rate as a function of the weighted average when the difference is less than the threshold.
5. The heart rate monitor of claim 1 wherein: the initial instantaneous heart rate corresponds to a first frequency of the PPG waveform; the at least one processor circuit is further configured to determine whether a second frequency of the PPG waveform corresponding to a second peak of the PPG waveform is within the first crossover window; and the at least one processor circuit further determines the revised heart rate responsive to whether the second frequency is within the first crossover window.
6. The heart rate monitor of claim 5 wherein the at least one processor circuit further determines the revised heart rate responsive to whether the step rate is between the initial instantaneous heart rate and the second frequency.
7. The heart rate monitor of claim 1 wherein the at least one processor circuit determines the revised heart rate by: determining whether the revised heart rate is within the first crossover window responsive to a comparison of a difference between the revised heart rate and the step rate to a threshold; and when the revised heart rate is within the first crossover window, adjusting the revised heart rate as a function of the difference between revised heart rate and the step rate to generate an adjusted revised heart rate.
8. The heart rate monitor of claim 1 wherein the at least one processor circuit is further configured to determine a number of successive frames where the revised heart rate is within the first crossover window to determine a lock count.
9. The heart rate monitor of claim 8 wherein the at least one processor circuit determines the output heart rate by: determining the output heart rate as a first function of an initialized second heart rate and the revised heart rate when the lock count exceeds a threshold; and determining the output heart rate as a second function of the initialized second heart rate and the revised heart rate when the lock count does not exceed the threshold; wherein the first function differs from the second function.
10. A method of sensing a heart rate of a user comprising: sensing light scattered from a body of the user using a photoplethysmograph (PPG) sensor, said PPG sensor providing PPG information responsive to the sensed light; sensing motion from the user using a step rate sensor, said step rate sensor providing motion information responsive to the sensed motion; determining a step rate of a user from the motion information provided by the step rate sensor; determining an initial instantaneous heart rate from the PPG information provided by the PPG sensor and the motion information provided by the step rate sensor; determining a revised heart rate, responsive to whether the initial instantaneous heart rate is within a first crossover window relative to the step rate, from the initial instantaneous heart rate and the step rate; determining an output heart rate from the revised heart rate; and outputting the output heart rate to the user.
11. The method of claim 10 wherein the determining the revised heart rate comprises: determining a second instantaneous heart rate, responsive to whether the initial instantaneous heart rate is within the first crossover window relative to the step rate, from the initial instantaneous heart rate and the step rate; and determine the revised heart rate from the second instantaneous heart.
12. The method of claim 11 further comprising computing a difference between the initial instantaneous heart rate and the step rate, wherein the determining the second instantaneous heart rate comprises determining the second instantaneous heart rate, responsive to whether the difference is less than a threshold, as a function of the initial instantaneous heart rate.
13. The method of claim 12 further comprising determining a weighted average of frequencies of two or more spectral peaks of the PPG information, wherein the determining the second instantaneous heart rate comprises determining the second instantaneous heart rate as a function of the weighted average when the difference is less than the threshold.
14. The method of claim 10 wherein the initial instantaneous heart rate corresponds to a first frequency of the PPG waveform, the method further comprising; determining whether a second frequency of the PPG waveform corresponding to a second peak of the PPG waveform is within the first crossover window; and determining the revised heart rate responsive to whether the second frequency is within the first crossover window.
15. The method of claim 14 wherein the determining the revised heart rate comprises determining the revised heart rate responsive to whether the step rate is between the initial instantaneous heart rate and the second frequency.
16. The method of claim 10 wherein the determining the revised heart rate comprises: determining whether the revised heart rate is within the first crossover window responsive to a comparison of a difference between the revised heart rate and the step rate to a threshold; and when the revised heart rate is within the first crossover window, adjusting the revised heart rate as a function of the difference between revised heart rate and the step rate to generate an adjusted revised heart rate.
17. The method of claim 10 further comprising determining a number of successive frames where the revised heart rate is within the first crossover window to determine a lock count.
18. The method of claim 17 wherein the determining the output heart rate comprises: determining the output heart rate as a first function of an initialized second heart rate and the revised heart rate when the lock count exceeds a threshold; and determining the output heart rate as a second function of the initialized second heart rate and the revised heart rate when the lock count does not exceed the threshold; wherein the first function differs from the second function.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0012]
[0013]
[0014]
[0015]
[0016]
[0017]
[0018]
DETAILED DESCRIPTION
[0019] The techniques disclosed herein improve the accuracy of the results achieved when processing data, e.g., heart rate data, provided by a physiological sensor.
[0020]
[0021] While the physiological sensors 20 may comprise any known physiological sensor, the physiological sensor(s) 20 in exemplary embodiments comprise photoplethysmograph (PPG) sensors that generate an electrical physiological waveform responsive to detected light intensity. PPG sensors comprise light intensity sensors that generally rely on optical coupling of light into the blood vessels. As used herein, the term optical coupling refers to the interaction or communication between excitation light entering a region and the region itself. For example, one form of optical coupling may be the interaction between excitation light generated from within a light-guiding ear bud 10 and the blood vessels of the ear. Light guiding ear buds are described in co-pending U.S. Patent Application Publication No. 2010/0217102, which is incorporated herein by reference in its entirety. In one embodiment, the interaction between the excitation light and the blood vessels may involve excitation light entering the ear region and scattering from a blood vessel in the ear such that the intensity of the scattered light is proportional to blood flow within the blood vessel. Another form of optical coupling may result from the interaction between the excitation light generated by an optical emitter within the ear bud 10 and the light-guiding region of the ear bud 10.
[0022] Processor 100 comprises an inertial processor 110, physiological processor 120, and noise processor 140. Inertial processor 110 determines an inertial cadence I, e.g., a step rate, from the inertial waveform using any known means. The determined inertial cadence may include the true inertial cadence as well as one or more harmonics of the true inertial cadence, e.g., the , 3/2, and 2 harmonics of the true inertial cadence. For example, the inertial processor may spectrally transform the inertial waveform to generate an inertial spectrum, and set the inertial cadence to the frequency of the largest peak of the inertial spectrum. It will be appreciated that other methods may alternatively be used to determine the inertial cadence. Physiological processor 120 determines one or more physiological metrics H, e.g., a heart rate, from the physiological waveform, as discussed further herein. The determined physiological metric may also refer to a physiological assessment computed from one or more physiological metrics. Noise processor 140 filters the determined metric(s) to remove the inertial cadence, and therefore, to produce a revised physiological metric H having an improved accuracy.
[0023] For simplicity, the following describes the processor 100 in terms of a noise processor 140 that determines a heart rate by removing a step rate by using one or more filtering techniques when the step rate determined by the inertial processor 110 is close to the heart rate determined by the physiological processor 120. In general, a difference between the step rate and the heart rate is determined, and the step rate is filtered from the heart rate based on a function of the difference. It should be noted, however, that the physiological processor 120, and thus processor 100, may alternatively or additionally determine other physiological metrics, e.g., a respiration rate, a heart rate variability (HRV), a pulse pressure, a systolic blood pressure, a diastolic blood pressure, a step rate, an oxygen uptake (VO2), a maximal oxygen uptake (VO2 max), calories burned, trauma, cardiac output and/or blood analyte levels including percentage of hemoglobin binding sites occupied by oxygen (SPO2), percentage of methomoglobins, a percentage of carbonyl hemoglobin, and/or a glucose level. Alternatively or additionally, processor 100 may determine and filter one or more physiological assessments, e.g., a ventilatory threshold, lactate threshold, cardiopulmonary status, neurological status, aerobic capacity (VO2 max), and/or overall health or fitness. Further, it will be appreciated that the processor 100 may additionally or alternatively remove other inertial cadences, e.g., rhythmic head movements, body movements (e.g., arm movements, weight lifting, etc.), etc., from the heart rate.
[0024]
[0025]
[0026] The first level (blocks 242 and 243) comprises an initialization level, where the heart rate processor 120 and/or noise processor 140 initializes and/or determines one or more variables useful for determining the output heart rate based on pre-determined values, values stored in memory, and measured information (blocks 242 and 243), e.g., an instantaneous heart rate H.sub.inst, a filtered heart rate H.sub.filt, a lock count C.sub.lk, a second (or output) heart rate H, etc. For example, to determine H.sub.inst, heart rate processor 120 comprises a spectral transformer 122 (
[0027] The second level (blocks 244 to 248) determines an instantaneous heart rate as a function of a difference between an initial instantaneous heart rate and the step rate, and particularly addresses the scenario when the results of spectral subtraction wipe out the primary spectral peak typically used to determine the instantaneous heart rate. More particularly, the second level determines whether the step rate I provided by inertial processor 110 is close to the initial instantaneous heart rate H.sub.inst by determining whether the initial instantaneous heart rate is within a crossover window (block 244), and adjusts the instantaneous heart rate based on that determination. For example, noise processor 140 may determine whether the initial H.sub.inst is within the crossover window by determining whether the difference between the step rate I and the initial H.sub.inst is less than or equal to a threshold T.sub.w, e.g., T.sub.w=8. In one embodiment, noise processor 140 adjusts the initial H.sub.inst only when the initial H.sub.inst is within the crossover window, where the adjustment is based on a weighted average of the frequencies of two or more of the spectral peaks provided by the spectral transformer 122 (block 248). For example, noise processor 140 may compute a weight w according to:
where M.sub.1 represents the magnitude of the largest spectral peak of the physiological spectrum and M.sub.2 represents the magnitude of a second spectral peak of the physiological spectrum, e.g., the next largest spectral peak. The noise processor 140 then adjusts the instantaneous heart rate by computing a weighted average of the frequencies of the two spectral peaks, e.g., according to:
H.sub.inst=wF.sub.1+(1w)F.sub.2(2)
where F.sub.1 represents the frequency of the largest spectral peak (and corresponds to the initial instantaneous heart rate), and F.sub.2 represents the frequency of the second spectral peak.
[0028] In some embodiments, the second level may also optionally determine whether the frequency F.sub.2 of the second spectral peak of the physiological spectrum is also in the crossover window and whether the step rate I is between the initial H.sub.inst and F.sub.2 (block 246) when the condition of block 244 is satisfied. For example, the noise processor 140 may determine whether F.sub.2 is within the crossover window by determining whether the difference between F.sub.2 and I is less than or equal to a threshold, e.g., 8. Further, the noise processor 140 may determine whether I is between F.sub.2 and the initial H.sub.inst by determining whether sign(H.sub.inst1)sign(F.sub.2I). In any event, for this example, noise processor 140 executes the operation of block 248 only when the conditions of blocks 244 and 246 are both satisfied.
[0029] The third level (block 250) filters the instantaneous heart rate using rate limits. More particularly, the third level computes a revised filtered heart rate .sub.filt as a function of a current filtered heart rate H.sub.filt, the instantaneous heart rate H.sub.inst output by the second level, and a rate limit .sub.r. For this embodiment, the heart rate processor 120 may further include a filter 124, as shown in
.sub.filt=H.sub.filt+min(.sub.r+,H.sub.instH.sub.filt)(3)
where .sub.r+ represents an increasing rate limit. However, when H.sub.inst<H.sub.filt, filter 124 computes the revised filter estimate .sub.filt according to:
.sub.filt=H.sub.filt+max(.sub.r,H.sub.instH.sub.filt),(4)
where .sub.r represents a decreasing rate limit. As used herein, the rate limit represents a limit to the rate of change for the heart rate. For example, the rate limit may represent the rate of change in beats per minute (BPM) that the heart rate may experience in a 1 second frame period. Such a rate limit may be determined based on empirical evidence, and is generally predetermined. It will be appreciated that the rate limit may be expressed as the rate of change experienced for any length frame period, where for example, the rate limit in BPM/s is multiplied by the length of the frame period (in seconds). Additional details for the implementation of block 250 may be found in U.S. Provisional Application Ser. No. 61/586,874 filed concurrently herewith and titled Physiological Metric Estimation Rise and Fall Limiting, which is incorporated by reference herein in its entirety.
[0030] In the fourth level (block 260), the noise processor 140 biases the filtered heart rate toward the step rate to minimize wandering due to blindness during a crossover. To that end, the noise processor 140 further adjusts the revised filter estimate .sub.filt as a function of the differenced between the step rate and .sub.filt. For example, the noise processor 140 may determine whether the revised filter estimate .sub.filt output by block 250 is within a crossover window by comparing the difference between .sub.filt and I to a threshold, e.g., abs(IH.sub.filt)8. If .sub.filt is within the crossover window, noise processor 140 may further adjust .sub.filt as a function of the difference between .sub.filt and I. For example, the noise processor 140 may further adjust .sub.filt according to:
.sub.filt=.sub.filt+0.5 sign(I.sub.filt).(5)
[0031] In the fifth level (block 270), the noise processor 140 counts the number of successive frames where the heart rate is within a crossover window. To that end, the noise processor updates a lock count C.sub.lk as a function of the difference between I and .sub.filt output by block 260, where C.sub.lk represents, e.g., the number of successive frames where the difference between .sub.filt and I satisfy a threshold requirement. For example, when C.sub.lk is compared to 0 for equality (e.g., C.sub.lk==0), and when abs (H.sub.filtI)<6, noise processor 140 may set C.sub.lk=1. However, when C.sub.lk>0, and when abs(H.sub.filtI)>6, noise processor 140 may set C.sub.lk=0, and when C.sub.lk>0, and when abs (H.sub.filtI)6, noise processor 140 may increment C.sub.lk, e.g., set C.sub.lk=C.sub.lk+1.
[0032] In the sixth level (blocks 280 to 284), the noise processor 140 filters the oscillations of the instantaneous heart rate that occur during a crossover sustained for a number of successive frames. For example, the .sub.filt output by block 260 is further filtered responsive to a comparison between the lock count and a threshold T.sub.c to generate the second (or output) heart rate to be output to the output interface 40. For example, if C.sub.lk>T.sub.c, the output heart rate may be determined as a first function of a previously determined (or initialized) output heart rate H and H.sub.filt, e.g., according to f.sub.1(H,H.sub.filt) (block 282). In one exemplary embodiment, the first function may comprise:
where H represents an initialized second heart rate from block 242, or a previously determined second (or output) heart rate that may, e.g., be retrieved from memory 50. If, however, C.sub.lkT.sub.c, the output heart rate may be determined as a second function of the previously determined (or initialized) output heart rate H and .sub.filt, e.g., according to f.sub.2(H,H.sub.filt) (block 284). In one exemplary embodiment, the second function may comprise:
=f.sub.2(H,H.sub.filt)=H+(.sub.filtH)/2.(7)
[0033] It will be appreciated that not all of the six levels of
[0042] It will be appreciated that other combinations not explicitly disclosed herein may also be used to generate the output heart rate.
[0043]
[0044]
[0045] The solution disclosed herein provides an accurate heart rate estimate, as shown for example by the simulated results of
[0046] While the present invention is described in terms of PPG sensors, it will be appreciated that sensors 20 may comprise any sensor able to generate a physiological waveform, e.g., an electroencephalogram (EEG) waveform, and electrocardiogram (ECG) waveform, a radio frequency (RF) waveform, an electro-optical physiological waveform, and electro-photoacoustic waveform including a photacoustic waveform, an electro-mechanical physiological waveform, and/or an electro-nuclear physiological waveform.
[0047] The present invention may, of course, be carried out in other ways than those specifically set forth herein without departing from essential characteristics of the invention. The present embodiments are to be considered in all respects as illustrative and not restrictive, and all changes coming within the meaning and equivalency range of the appended claims are intended to be embraced therein.