HEARTBEAT DETECTION METHOD AND HEARTBEAT DETECTION DEVICE
20170258351 · 2017-09-14
Inventors
- Nobuaki Matsuura (Tokyo, JP)
- Kei Kuwabara (Tokyo, JP)
- Kazuhiko TAKAGAHARA (Tokyo, JP)
- Ryusuke KAWANO (Tokyo, JP)
- Hiroshi KOIZUMI (Tokyo, JP)
Cpc classification
A61B5/7239
HUMAN NECESSITIES
A61B5/352
HUMAN NECESSITIES
A61B5/0245
HUMAN NECESSITIES
International classification
Abstract
A heartbeat detection device includes a peak search unit (4) for searching for one of a peak at which a value M obtained from a sampling data sequence of an electrocardiographic waveform of a living body changes from an increase to a decrease and a peak at which the value M changes from a decrease to an increase, and a heartbeat time determination unit (5) for checking the value M in a predetermined time domain before a time of the peak and the value M in a predetermined time domain after the time of the peak, and setting the time of the peak as a heartbeat time if differences between the value M at the time of the peak and the values M in the predetermined time domains are not smaller than a predetermined amount.
Claims
1. A heartbeat detection method comprising: a peak search step of searching for one of a peak at which a value M obtained from a sampling data sequence of an electrocardiographic waveform of a living body changes from an increase to a decrease and a peak at which the value M changes from a decrease to an increase; and a heartbeat time determination step of checking, among the values M obtained from the sampling data sequence, the value M in a predetermined time domain before a time of the peak and the value M in a predetermined time domain after the time of the peak, and setting the time of the peak as a heartbeat time if differences between the value M at the time of the peak and the values M in the predetermined time domains are not smaller than a predetermined amount.
2. The heartbeat detection method according to claim 1, further comprising: an acquisition step of acquiring, before the peak search step, as the value M obtained from the sampling data sequence of the electrocardiographic waveform of the living body, one of the sampling data, an amount of change of sampling data, and a product of the sampling data and the amount of change of the sampling data.
3. The heartbeat detection method according to claim 1, wherein the heartbeat time determination step includes determining whether a difference between the time of the peak and an immediately preceding heartbeat time is not shorter than a predetermined time, and not adopting the time of the peak as a heartbeat time if the difference from immediately preceding heartbeat time is shorter than the predetermined time.
4. The heartbeat detection method according to claim 1, wherein the heartbeat time determination step includes determining whether a heartbeat interval when the time of the peak is considered as a heartbeat time has not increased from an immediately preceding heartbeat interval at a rate not lower than a predetermined rate, and not adopting the time of the peak as a heartbeat time if the heartbeat interval has increased at the rate not lower than the predetermined rate.
5. A heartbeat detection device comprising: peak search means for searching for one of a peak at which a value M obtained from a sampling data sequence of an electrocardiographic waveform of a living body changes from an increase to a decrease and a peak at which the value M changes from a decrease to an increase; and heartbeat time determination means for checking, among the values M obtained from the sampling data sequence, the value M in a predetermined time domain before a time of the peak and the value M in a predetermined time domain after the time of the peak, and setting the time of the peak as a heartbeat time if differences between the value M at the time of the peak and the values M in the predetermined time domains are not smaller than a predetermined amount.
6. The heartbeat detection device according to claim 5, further comprising: acquisition means for acquiring, as the value M obtained from the sampling data sequence of the electrocardiographic waveform of the living body, one of the sampling data, an amount of change of sampling data, and a product of the sampling data and the amount of change of the sampling data.
7. The heartbeat detection device according to claim 5, wherein the heartbeat time determination means determines whether a difference between a time of the peak and an immediately preceding heartbeat time is not shorter than a predetermined time, and does not adopt the time of the peak as a heartbeat time if the difference from immediately preceding heartbeat time is shorter than the predetermined time.
8. The heartbeat detection device according to claim 5, wherein the heartbeat time determination means determines whether a heartbeat interval when the time of the peak is considered as a heartbeat time has not increased from an immediately preceding heartbeat interval at a rate not lower than a predetermined rate, and does not adopt the time of the peak as a heartbeat time if the heartbeat interval has increased at the rate not lower than the predetermined rate.
Description
BRIEF DESCRIPTION OF DRAWINGS
[0014]
[0015]
[0016]
[0017]
[0018]
[0019]
[0020]
[0021]
[0022]
[0023]
[0024]
[0025]
[0026]
BEST MODE FOR CARRYING OUT THE INVENTION
[0027] [Principle of Invention]
[0028]
[0029] Referring to
[0030] It is possible to detect the peak D by, for example, checking a value in a time range A1 of −100 ms to −15 ms and a value in a time range A2 of +15 ms to +100 ms with respect to time K at which the amount of change of the sampling data of the ECG waveform changes from a decrease to an increase, and imposing the condition that the values in the ranges A1 and A2 are larger than a value at time K by 0.5 or more. Since this condition is satisfied by peaks caused by other heartbeats, these peaks can be detected by the same series of procedures.
[0031] As described above, according to the present invention, let M be a value obtained from the sampling data sequence of the ECG waveform. With respect to time T of a peak at which the value M changes from an increase to a decrease or from a decrease to an increase, the value M in a predetermined time domain of (T−Δt2) to (T−Δt1) before time T of the peak and the value M in a predetermined time domain of (T+Δt1) to (T+Δt2) after time T of the peak are checked (Δt2>Δt1). If the differences between the value M at time T of the peak and the values M in the predetermined time domains are equal to or larger than a predetermined amount y, time T of the peak is set as a heartbeat time.
[0032] When detecting a peak based on a threshold from a given waveform, if many noise components are included, it is difficult to detect a peak. This is because detection based on the threshold pays attention to the root side of a peak. If noise components are superimposed, a portion which does not originally exceed the threshold and does not correspond to a peak exceeds the threshold, causing erroneous detection. To avoid such situation, paying attention to the tip side of a peak is effective. That is, even if a waveform includes many noise components, it is possible to detect a peak by specifying a portion protruding more than its peripheral portion. To specify a portion protruding more than its peripheral portion, the above-described condition is imposed.
[0033] In the present invention, as the value M obtained from the sampling data sequence of the ECG waveform, the sampling data itself, the amount of change (first derivative value) of the sampling data, or the product of the sampling data and the amount of change (first derivative value) of the sampling data is used.
[0034] If the sampling data itself is used as the value M obtained from the sampling data sequence, the peak of the R or S wave is detected as the peak of a waveform derived from a heartbeat.
[0035] If the amount of change (first derivative value) of the sampling data is used as the value M obtained from the sampling data sequence, the peak of the amount of change of the sampling data caused by an abrupt change from the R wave to the S wave is detected as the peak of a waveform derived from a heartbeat. In the sampling data sequence of the ECG waveform, the first derivative value of the sampling data at given time K is obtained by subtracting sampling data at time (K−W) from sampling data at time (K+W) (W is, for example, 5 ms).
[0036] If the product of the amount of change (first derivative value) of the sampling data and the sampling data is used as the value M obtained from the sampling data sequence, a peak synergistically emphasized by multiplication is detected as the peak of a waveform derived from a heartbeat. The sampling data sequence of the ECG waveform and a data sequence obtained by calculating the derivative of the ECG waveform each include peak components of the same beating rhythm. If these data sequences are overlaid by shifting them by a given time width, the peak components are synchronized with each other. Therefore, by multiplying the data sequences under appropriate conditions, it is possible to emphasize the peak components derived from the heartbeats.
[0037] To calculate a product, the first derivative value of the sampling data at given time K is multiplied by sampling data at time (K−t) a predetermined time t before time K. The peak of the first derivative value appears about 10 to 12 ms after the peak of the R wave of the ECG waveform. Therefore, if the first derivative value is used, the predetermined time t is set to satisfy 10 ms≦t≦12 ms.
First Embodiment
[0038] An embodiment of the present invention will be described below with reference to the accompanying drawings.
[0039] The heartbeat detection method according to the embodiment will be described below. In this specification, a procedure of detecting a heartbeat and calculating heartbeat time of the heartbeat will be explained. By repeating calculation of heartbeat time for the period of ECG waveform data, sequential data of heartbeat times are successively obtained, and the index of a heartbeat fluctuation can be calculated from the sequential data.
[0040] In this embodiment, X(i) represents a data sequence obtained by sampling the ECG waveform where i (i=1, 2, . . . ) represents a number assigned to one sampling data. As the number i is larger, sampling time is later, as a matter of course. Furthermore, a represents an integer obtained by dividing, by the sampling interval, half (W described above) the time interval when obtaining the first derivative value of the sampling data X(i), b1 represents an integer obtained by dividing, by the sampling interval, first time (Δt1 described above) defining one of times defining the ends of a predetermined time domain around a peak, which is closer to the peak, and b2 represents an integer obtained by dividing, by the sampling interval, second time (Δt2 described above) defining the other one of times defining the ends of the predetermined time domain around the peak, which is farther from the peak (b2>b1).
[0041] The electrocardiograph 1 measures the ECG waveform of a living body (human body) (not shown), and outputs the sampling data sequence X(i) of the ECG waveform. At this time, the electrocardiograph 1 outputs the data sequence by adding sampling time information to each sampling data. Note that a practical method of measuring the ECG waveform is a well-known technique and a detailed description thereof will be omitted.
[0042] The storage unit 2 stores the sampling data sequence X(i) of the ECG waveform and the sampling time information, which have been output from the electrocardiograph 1.
[0043] The acquisition unit 3 acquires the amount of change of the sampling data X(i) as a value M obtained from the sampling data sequence (step S0 of
[0044] The peak search unit 4 searches for a peak at which the amount of change of the sampling data X(i) changes from a decrease to an increase. First, the peak search unit 4 sets the number (counter variable) i for successively reading out the sampling data sequence X(i) to an initial value (n in this example) (step S1 of
[0045] Next, the peak search unit 4 determines whether {(X(i+1+a)−X(i+1−a))−(X(i+a)−X(i−a))}×{(X(i+a)−X (i−a))−(X (i−1+a)−X(i−1−a))} is equal to or smaller than 0 (step S2 of
[0046] If {(X (i+1+a)−X (i+1−a))−(X (i+a)−X(i−a))}×{(X(i+a)−X(i−a))−(X(i−1+a)−X(i−1−a))} is larger than 0, the peak search unit 4 determines that the amount of change of the sampling data X(i) has not changed from a decrease to an increase, and sets i=i+(step S3 of
[0047] If {(X(i+1+a)−X(i+1−a))−(X(i+a)−X(i−a))}×{(X (i+a)−X (i−a))−(X (i−1+a)−X(i−1−a))} is equal to or smaller than 0, the peak search unit 4 determines that the amount of change of the sampling data X(i) has changed from a decrease to an increase at time T indicated by i (YES in step S2).
[0048] If it is determined that the amount of change of the sampling data X(i) has changed from a decrease to an increase, the heartbeat time determination unit 5 checks the amount of change of the sampling data in a time domain around time T indicated by i, and determines whether time T indicated by i is set as a heartbeat time.
[0049] First, the heartbeat time determination unit 5 obtains the minimum value of the amount of changes {(X(i−b2+a)−X(i−b2−a)), (X(i−b2+1+a)−X(i−b2+1−a)), . . . , (X(i−b1+a)−X(i−b1−a))} of the sampling data in a predetermined time domain before time T indicated by i, and determines whether this minimum value is equal to or larger than a value obtained by adding a predetermined amount y to the amount of change (X(i+a)−X(i−a)) of the sampling data X(i) at time T indicated by i (step S4 of
[0050] If the minimum value obtained in step S4 is smaller than (X(i+a)−X(i−a))+y, the heartbeat time determination unit 5 determines that the difference between the amount of change of the sampling data in the predetermined time domain before time T indicated by i and the amount of change (X(i+a)−X(i−a)) of the sampling data X(i) at time T indicated by i is smaller than the predetermined amount y, and sets i=i+1 (step S3), thereby returning to step S2.
[0051] On the other hand, if the minimum value obtained in step S4 is equal to or larger than (X(i+a)−X(i−a))+y, the heartbeat time determination unit 5 obtains the minimum value of the amount of changes {(X(i+b1+a)−X(i+b1−a)), (X(i+b1+1+a)−X(i+b1+1−a)), . . . , (X(i+b2+a)−X(i+b2−a))} of the sampling data in a predetermined time domain after time T indicated by i, and determines whether the minimum value is equal to or larger than a value obtained by adding the predetermined amount y to the amount of change (X(i+a)−X(i−a)) of the sampling data X(i) at time T indicated by i (step S5 of
[0052] If the minimum value obtained in step S5 is smaller than (X(i+a)−X(i−a))+y, the heartbeat time determination unit 5 determines that the difference between the amount of change of the sampling data in the predetermined time domain after time T indicated by i and the amount of change (X(i+a)−X(i−a)) of the sampling data X(i) at time T indicated by i is smaller than the predetermined amount y, and sets i=i+1 (step S3), thereby returning to step S2.
[0053] If the minimum value obtained in step S5 is equal to or larger than (X(i+a)−X(i−a))+y, the heartbeat time determination unit 5 ends the processing of checking the amount of changes of the sampling data in the time domains around time T indicated by i. At this time, time T indicated by i is set as a candidate of heartbeat time.
[0054] Next, the heartbeat time determination unit 5 determines whether the candidate of heartbeat time is appropriate, and fixes heartbeat time.
[0055] First, the heartbeat time determination unit 5 determines whether the difference between time T indicated by i and immediately precedingly detected heartbeat time T.sub.(−1) is equal to or longer than a predetermined time (step S6 of
[0056] A general normal value range exists for a heartbeat interval. If a very short heartbeat interval, as compared with the range, is detected, noise superimposed on an ECG waveform due to a body motion or the like is erroneously recognized as a heartbeat at high probability. It is possible to prevent erroneous detection caused by noise or the like by imposing the condition that the difference between time T of the detected peak and an immediately preceding heartbeat time T.sub.(−1) is equal to or longer than the predetermined time.
[0057] Furthermore, the heartbeat time determination unit 5 determines whether a heartbeat interval (T−T.sub.(−1)) when time T indicated by i is considered as a heartbeat time has not increased from an immediately preceding heartbeat interval (T.sub.(−1)−T.sub.(−2)) at a predetermined rate or more (step S7 of
[0058] If detection of a given heartbeat fails, data obtained as the heartbeat interval between heartbeats before and after the given heartbeat indicates a value about twice larger than an actual value, and is inappropriately used for evaluation of the autonomic function or the like. It is possible to exclude the erroneous data, for which detection of a heartbeat has failed, from the analysis target of the biological information by imposing the condition that the detected heartbeat interval has not increased at the predetermined rate or more.
[0059] If the difference between time T indicated by i and an immediately preceding heartbeat time T.sub.(−1) is equal to or longer than the predetermined time, and the increasing rate (T−T.sub.(−1))/(T.sub.(−1)−T.sub.(−2)) of the heartbeat interval is lower than the predetermined value, the heartbeat time determination unit 5 adopts time T indicated by i as a heartbeat time (step S8 of
[0060] After the end of step S8, i=i+1 is set and the process returns to step S2. This starts detection of the next heartbeat. Alternatively, the values of i, the number of which corresponds to a predetermined time shorter than the minimum value of the heartbeat interval to be detected, may be skipped, and the process may returns to step S2. By repeating the processes in steps S2 to S8, it is possible to obtain the sequential data of the heartbeat times, and obtain the index of a heartbeat fluctuation from the sequential data.
[0061]
[0062]
[0063] As described above, in this embodiment, it is possible to appropriately detect a heartbeat even from a sampling data sequence including noise by detecting a peak derived from a heartbeat based on the tip portion of the peak in the sampling data sequence of the ECG waveform. In this embodiment, since a peak derived from a heartbeat is detected without using a threshold, even if the level of a target ECG waveform changes, it is possible to appropriately detect the heartbeat without any influence of the change.
Second Embodiment
[0064] The second embodiment of the present invention will be described next. This embodiment is a modification of the first embodiment, and is an example in which sampling data itself is used as a value M obtained from a sampling data sequence. In this embodiment, the arrangement of a heartbeat detection device is the same as in the first embodiment, and a description thereof will be provided using reference numerals in
[0065] An acquisition unit 3 according to this embodiment acquires, from a storage unit 2, sampling data X(i) as the value M obtained from the sampling data sequence (step S0a of
[0066] A peak search unit 4 determines whether {X(i+1)−X(i)}×{X(i)−X(i−1)} is equal to or smaller than 0 (step S2a of
[0067] If it is determined that the sampling data X(i) changes from an increase to a decrease, a heartbeat time determination unit 5 obtains the maximum value of sampling data {X(i−b2), X(i−b2+1), . . . , X(i−b1)} of a predetermined time domain before time T indicated by i, and determines whether the maximum value is equal to or smaller than a value obtained by subtracting a predetermined amount y from the sampling data X(i) at time T indicated by i (step S4a of
[0068] On the other hand, if the maximum value obtained in step S4a is equal to or smaller than X(i)−y, the heartbeat time determination unit 5 obtains the maximum value of sampling data {X(i+b1), X(i+b1+1), . . . , X(i+b2)} in a predetermined time domain after time T indicated by i, and determines whether the maximum value is equal to or smaller than the value obtained by subtracting the predetermined amount y from the sampling data X(i) at time T indicated by i (step S5a of
[0069] If the maximum value obtained in step S5a is equal to or smaller than X(i)−y, the heartbeat time determination unit 5 ends the processing of checking the sampling data in the time domains around time T indicated by i. The remaining arrangement is as described in the first embodiment.
[0070]
[0071] In the example of
[0072] In this embodiment, with respect to time T of the peak at which the sampling data of the ECG waveform changes from an increase to a decrease, the sampling data in the predetermined time domain of (T−Δt2) to (T−Δt1) before time T of the peak and the sampling data in the predetermined time domain of (T+Δt1) to (T+Δt2) after time T of the peak are checked. If the differences between the sampling data at time T of the peak and the maximum values of the sampling data in the predetermined time domains are equal to or larger than the predetermined amount y, time T of the peak is set as a heartbeat time.
[0073] In
[0074] As described above, in this embodiment, it is possible to obtain the same effect as in the first embodiment.
Third Embodiment
[0075] The third embodiment of the present invention will be described next. This embodiment is a modification of the first embodiment, and is an example in which the product of sampling data and the amount of change (first derivative value) of sampling data is used as a value M obtained from a sampling data sequence. In this embodiment as well, the arrangement of a heartbeat detection device is the same as in the first embodiment, and a description thereof will be provided using reference numerals in
[0076] An acquisition unit 3 according to this embodiment acquires, as the value M obtained from the sampling data sequence, the product of sampling data and the amount of change (first derivative value) of sampling data (step S0b of
[0077] The following description assumes that the product (X(i+a)−X(i−a))×X(i−b) is set as M(i).
[0078] A peak search unit 4 determines whether {M(i+1)−M(i)}×{M(i)−M(i−1)} is equal to or smaller than 0 (step S2b of
[0079] If it is determined that the product M(i) changes from a decrease to an increase, a heartbeat time determination unit 5 obtains the minimum value of products {M(i−b2), M(i−b2+1), . . . , M(i−b1)} in a predetermined time domain before time T indicated by i, and determines whether the minimum value is equal to or larger than a value obtained by adding a predetermined amount y to the product M(i) at time T indicated by i (step S4b of
[0080] On the other hand, if the minimum value obtained in step S4b is equal to or larger than M(i)+y, the heartbeat time determination unit 5 obtains the minimum value of products {M(i+b1), M(i+b1+1), . . . , M(i+b2)} in a predetermined time domain after time T indicated by i, and determines whether the minimum value is equal to or larger than the value obtained by adding the predetermined amount y to the product M(i) at time T indicated by i (step S5b of
[0081] If the minimum value obtained in step S5b is equal to or larger than M(i)+y, the heartbeat time determination unit 5 ends the processing of checking the products in the time domains around time T indicated by i. The remaining arrangement is as described in the first embodiment.
[0082]
[0083] The R and S waves of the ECG waveform are generated by ventricular contraction, and the interval from the peak of the R wave of the ECG waveform to the peak of the first derivative value caused by an abrupt decrease in potential from the R wave to the S wave is about 10 ms, and is hardly influenced by a body type difference or the like. In this case, since the downward convex peak of the first derivative value of the ECG waveform is multiplied by the upward convex peak of the R wave of the ECG waveform, a peak to be detected to obtain an R-R interval is a downward convex peak.
[0084] A broken line 101 in
[0085] In this embodiment, with respect to time T of the peak at which the product M changes from a decrease to an increase, the product M in the predetermined time domain of (T−Δt2) to (T−Δt1) before time T of the peak and the product M in the predetermined time domain of (T+Δt1) to (T+Δt2) after time T of the peak are checked. If the differences between the product M at time T of the peak and the minimum values of the products M in the predetermined time domains are equal to or larger than the predetermined amount y, time T of the peak is set as a heartbeat time.
[0086] In
[0087] As described above, in this embodiment, it is possible to obtain the same effect as in the first embodiment.
[0088] It is possible to obtain a significant effect by applying the heartbeat detection method according to each of the first to third embodiments to the ECG waveform of the ECG lead in which a large R wave and a deep S wave are obtained, for example, the ECG waveform of one of the V3 to V5 leads. It is especially preferable to apply the method to the ECG waveform of the CC5 lead or similar lead which is often used to obtain the ECG waveform in daily life.
[0089] The storage unit 2, acquisition unit 3, peak search unit 4, and heartbeat time determination unit 5 described in each of the first to third embodiments can be implemented by a computer including a CPU (Central Processing Unit), storage device, and interface and a program that controls these hardware resources. The CPU executes the processing described in each of the first to third embodiments in accordance with the program stored in the storage device.
INDUSTRIAL APPLICABILITY
[0090] The present invention is applicable to a technique of detecting heartbeats of a living body.
EXPLANATION OF THE REFERENCE NUMERALS AND SIGNS
[0091] 1 . . . electrocardiograph, 2 . . . storage unit, 3 . . . acquisition unit, 4 . . . peak search unit, 5 . . . heartbeat time determination unit