Heartbeat categorization
First Claim
1. An automatic method for categorizing heartbeats, the method comprising, when a heartbeat has been detected, the steps of:
- sensing two or more selected ECG signals with electrodes; and
automatically processing the ECG signals with a programmable processor configured to;
determine a signal velocity for each selected signal at a categorization fiducial time tC within the detected heartbeat;
form a vector F(tC) the components of which are the velocities of each of the selected signals at the time tC;
determine the angle between the vector F(tC) and a previously-stored template vector;
compare the angle with a threshold angle; and
categorize the heartbeat as similar to a heartbeat which corresponds to the template vector when the angle is less than the threshold angle.
1 Assignment
0 Petitions
Accused Products
Abstract
An automatic method for categorizing heartbeats using two or more selected ECG signals, the method comprising, when a heartbeat has been detected, the steps of: (a) determining a signal velocity for each selected signal at a categorization fiducial time tC within the detected heartbeat; (b) forming a vector F(tC) having as its components the velocities of each of the selected signals at time tC; (c) determining the angle between the vector F(tC) and a previously-stored template vector; (d) comparing the angle with a threshold angle; and (e) if the angle is less than the threshold angle, categorizing the heartbeat as similar to a heartbeat which corresponds to the template vector.
55 Citations
56 Claims
-
1. An automatic method for categorizing heartbeats, the method comprising, when a heartbeat has been detected, the steps of:
-
sensing two or more selected ECG signals with electrodes; and automatically processing the ECG signals with a programmable processor configured to; determine a signal velocity for each selected signal at a categorization fiducial time tC within the detected heartbeat; form a vector F(tC) the components of which are the velocities of each of the selected signals at the time tC; determine the angle between the vector F(tC) and a previously-stored template vector; compare the angle with a threshold angle; and categorize the heartbeat as similar to a heartbeat which corresponds to the template vector when the angle is less than the threshold angle.
-
-
2. The automatic heartbeat categorization method of claim 1 wherein the angle determination and comparison include the steps of:
-
computing a squared vector magnitude SVMC as the dot product F(tC)·
F(tC),computing the dot product DPq of F(tC) with a template vector Fq; computing a squared vector magnitude SVMq as the dot product Fq·
Fq;computing a signed squared cosine difference angle SCDAq as
SCDAq=sgn(DPq)*DPq*DPq/(SVMC*SVMq); andcomparing SCDAq with a squared cosine threshold SCL.
-
-
3. The automatic heartbeat categorization method of claim 2 further including comparing the vector F(tC) with each of a plurality of template vectors to determine if the vector F(tC) is within the threshold angle of any of the plurality of template vectors.
-
4. The automatic heartbeat categorization method of claim 3 wherein when the angle between the vector F(tC) and more than one of the plurality of template vectors is less than the threshold angle, categorizing the heartbeat as similar to a heartbeat which corresponds to the template vector having the smallest angle between itself and the vector F(tC).
-
5. The automatic heartbeat categorization method of claim 4 wherein when the angle between the vector F(tC) and each of the plurality of template vectors is greater than or equal to the threshold angle, adding a template vector equal to the vector F(tC) to the plurality of template vectors.
-
6. The automatic heartbeat categorization method of claim 4 wherein the patient is in a non-sedated state and further including the step of providing interventional treatment to the patient in a sedated state based on heartbeats categorized while the patient was in the non-sedated state.
-
7. The automatic heartbeat categorization method of claim 1 further including comparing the vector F(tC) with each of a plurality of template vectors to determine if the vector F(tC) is within the threshold angle of any of the plurality of template vectors.
-
8. The automatic heartbeat categorization method of claim 7 wherein when the angle between the vector F(tC) and more than one of the plurality of template vectors is less than the threshold angle, categorizing the heartbeat as similar to a heartbeat which corresponds to the template vector having the smallest angle between itself and the vector F(tC).
-
9. The automatic heartbeat categorization method of claim 7 wherein when the angle between the vector F(tC) and each of the plurality of template vectors is greater than or equal to the threshold angle, adding a template vector equal to the vector F(tC) to the plurality of template vectors.
-
10. The automatic heartbeat categorization method of claim 7 wherein the patient is in a non-sedated state and further including the step of providing interventional treatment to the patient in a sedated state based on heartbeats categorized while the patient was in the non-sedated state.
-
11. The automatic heartbeat categorization method of claim 7 wherein each of the template vectors has a threshold angle associated therewith, and not all such vectors have the same threshold angle associated therewith.
-
12. The automatic heartbeat categorization method of claim 7 wherein at least a portion of the plurality of template vectors are preset template vectors.
-
13. The automatic heartbeat categorization method of claim 12 wherein each of the plurality of template vectors is a preset template vector.
-
14. The automatic heartbeat categorization method of claim 4 further including a slot-plurality of template vector slots, the slot-plurality being greater than or equal to the plurality of template vectors and each template vector is stored in a corresponding template vector slot, wherein if the vector F(tC) is not within the threshold angle of any of the plurality of template vectors and an empty template vector slot is available, adding a template vector equal to the vector F(tC) to the plurality of template vectors.
-
15. The automatic heartbeat categorization method of claim 14 wherein if no empty template vector slot is available, replacing one of the template vectors with a new template vector equal to the vector F(tC).
-
16. The automatic heartbeat categorization method of claim 1 further including storing the categorized heartbeat.
-
17. The automatic heartbeat categorization method of claim 16 further including displaying information descriptive of one or more stored heartbeats.
-
18. The automatic heartbeat categorization method of claim 1 wherein determining the velocity of each of the selected signals includes:
-
digitizing each of the selected signals; and filtering each of the digitized signals to generate the velocity for each selected signal.
-
-
19. The automatic heartbeat categorization method of claim 1 further including selecting three ECG signals, and the signals form a quasi-orthogonal set.
-
20. The automatic heartbeat categorization method of claim 1 wherein the ECG signals further include one or more ECG signals in addition to the selected ECG signals, and the method includes storing one or more of the additional ECG signals.
-
21. The automatic heartbeat categorization method of claim 20 further including displaying information descriptive of a detected heartbeat.
-
22. The automatic heartbeat categorization method of claim 1 further including, when a heartbeat has been detected, the steps of:
-
forming a vector F(tC) the components of which are the velocities of each of the selected signals at the time tC and the velocities of each of the selected signals at time tC δ
;determining the angle between the vector F(tC) and a previously-stored template vector; comparing the angle with a threshold angle; and when the angle is less than the threshold angle, categorizing the heartbeat as similar to a heartbeat which corresponds to the template vector.
-
-
23. The automatic heartbeat categorization method of claim 22 wherein angle determination and comparison include the steps of:
-
computing a squared vector magnitude SVMC as the dot product F(tC)·
F(tC);computing the dot product DPq of F(tC) with a template vector Fq; computing a squared vector magnitude SVMq as the dot product Fq·
Fq;computing a signed squared cosine difference angle SCDAq as
SCDAq=sgn(DPq)*DPq*DPq/(SVMC*SVMq); andcomparing SCDAq with a squared cosine threshold SCL.
-
-
24. The automatic heartbeat categorization method of claim 23 further including comparing the vector F(tC) with each of a plurality of template vectors to determine if the vector F(tC) is within the threshold angle of any of the plurality of template vectors.
-
25. The automatic heartbeat categorization method of claim 24 wherein if the angle between the vector F(tC) and more than one of the plurality of template vectors is less than the threshold angle, categorizing the heartbeat as similar to a heartbeat which corresponds to the template vector having the smallest angle between itself and the vector F(tC).
-
26. The automatic heartbeat categorization method of claim 25 wherein if the angle between the vector F(tC) and each of the plurality of template vectors is greater than or equal to the threshold angle, adding a template vector equal to the vector F(tC) to the plurality of template vectors.
-
27. The automatic heartbeat categorization method of claim 25 wherein the patient is in a non-sedated state and further including the step of providing interventional treatment to the patient in a sedated state based on heartbeats categorized while the patient was in the non-sedated state.
-
28. The automatic heartbeat categorization method of claim 22 further including comparing the vector F(tC) with each of a plurality of template vectors to determine if the vector F(tC) is within the threshold angle of any of the plurality of template vectors.
-
29. The automatic heartbeat categorization method of claim 28 wherein when the angle between the vector F(tC) and more than one of the plurality of template vectors is less than the threshold angle, categorizing the heartbeat as similar to a heartbeat which corresponds to the template vector having the smallest angle between itself and the vector F(tC).
-
30. The automatic heartbeat categorization method of claim 28 wherein when the angle between the vector F(tC) and each of the plurality of template vectors is greater than or equal to the threshold angle, adding a template vector equal to the vector F(tC) to the plurality of template vectors.
-
31. The automatic heartbeat categorization method of claim 28 wherein the patient is in a non-sedated state and further including the step of providing interventional treatment to the patient in a sedated state based on heartbeats categorized while the patient was in the non-sedated state.
-
32. The automatic heartbeat categorization method of claim 28 wherein each of the template vectors has a threshold angle associated therewith, and not all such vectors have the same threshold angle associated therewith.
-
33. The automatic heartbeat categorization method of claim 28 wherein at least a portion of the plurality of template vectors are preset template vectors.
-
34. The automatic heartbeat categorization method of claim 33 wherein each of the plurality of template vectors is a preset template vector.
-
35. The automatic heartbeat categorization method of claim 22 further including a slot-plurality of template vector slots, the slot-plurality being greater than or equal to the plurality of template vectors and each template vector is in a corresponding template vector slot, wherein if the vector F(tC) is not within the threshold angle of any of the plurality of template vectors and an empty template vector slot is available, adding a template vector equal to the vector F(tC) to the plurality of template vectors.
-
36. The automatic heartbeat categorization method of claim 35 wherein if no empty template vector slot is available, replacing one of the template vectors with a new template vector equal to the vector F(tC).
-
37. The automatic heartbeat categorization method of claim 22 further including storing ECG signals corresponding to the categorized heartbeat.
-
38. The automatic heartbeat categorization method of claim 37 further including displaying information descriptive of one or more stored heartbeats.
-
39. The automatic heartbeat categorization method of claim 1 further including the steps of:
-
storing the selected signals; determining a velocity f(t) for each of the selected signals; summing the absolute values of each signal velocity f(t) to generate an absolute velocity sum G(t); finding the maximum peak of the sum and the time thereof within the detected heartbeat; and setting time tC as the time before and nearest to the time of the peak when the sum is substantially equal to a preset fraction of the peak.
-
-
40. The automatic heartbeat categorization method of claim 1 further including the steps of:
-
storing the selected signals; determining a velocity f(t) for each of the selected signals; summing the absolute values of each signal velocity f(t) to generate an absolute velocity sum G(t); and setting tC equal to the time at which sum G(t) becomes greater than a threshold T.
-
-
41. The automatic heartbeat categorization method of claim 1 further including the steps of:
-
storing the selected signals; determining the time tC as a preset time after the start of the detected heartbeat.
-
-
42. The automatic heartbeat categorization method of claim 41 further including the steps of:
-
determining a velocity f(t) for each of the selected signals; summing the absolute values of each signal velocity f(t) to generate an absolute velocity sum G(t); and determining the start of the detected heartbeat as the time at which sum G(t) rises above a heartbeat-pending threshold Tp and remains above Tp until G(t) rises above a heartbeat-confirming threshold Tc.
-
-
43. The automatic heartbeat categorization method of claim 42 wherein the detected heartbeat is within a cardiac cycle and the method further includes the step of computing the median of G(t) within the cardiac cycle, Tp being a multiple of the median of G(t) across the cardiac cycle.
-
44. The automatic heartbeat categorization method of claim 43 wherein the multiple is between 2 and 5.
-
45. The automatic heartbeat categorization method of claim 42 wherein Tc is between 30% and 60% of the expected peak of the detected heartbeat.
-
46. The automatic heartbeat categorization method of claim 1 further including the steps of:
-
storing the selected signals; determining a velocity f(t) for each of the selected signals; summing the absolute values of each signal velocity f(t) to generate an absolute velocity sum G(t); cross-correlating G(t) with a predetermined shape function; and deriving time tC from the cross-correlation.
-
-
47. The automatic heartbeat categorization method of claim 46 wherein the time tC is set at the time the cross-correlation becomes greater than a correlation threshold.
-
48. The automatic heartbeat categorization method of claim 47 wherein the correlation threshold is between about 25% and 35% of the peak value of the cross-correlation.
-
49. The automatic heartbeat categorization method of claim 48 wherein the correlation threshold is about 30% of the peak value of the cross-correlation.
-
50. The automatic heartbeat categorization method of claim 46 wherein the time tC is set at a preset correlation time interval before the time of maximum cross-correlation.
-
51. The automatic heartbeat categorization method of claim 46 wherein the predetermined shape function is a triangle.
-
52. The automatic heartbeat categorization method of claim 46 wherein the predetermined shape function is a parabola.
-
53. The automatic heartbeat categorization method of claim 46 wherein the width of the shape function is between about 90 and 150 milliseconds.
-
54. The automatic heartbeat categorization method of claim 53 wherein the width of the shape function is about 120 milliseconds.
-
55. The automatic heartbeat categorization method of claim 1 further including deriving the time tC from an output signal of a heartbeat detector selected from the group consisting of motion ultrasound, audio, optical detection of blood flow, pressure measurement, and ballistocardiography.
-
56. The automatic heartbeat categorization method of claim 1 further including deriving the time tC from an intracardiac signal from an electrode placed adjacent to the origin of the heartbeat.
Specification