IP Library Granted Patent US 8,214,028
Granted Patent B2
US 8,214,028 · App. 12/699,184 · Granted Jul 3, 2012

Electrocardiogram analysis and parameter estimation

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,214,028
App. No.
12/699,184
Granted
Jul 3, 2012
Kind
B2
Abstract

A system, method and memory medium for operating on an electrocardiogram (ECG) signal. A multiscale short-time Fourier transform (STFT) is performed on a set of ECG samples {s(n)} to obtain a transform array. For each sufficiently energetic peak in the transform array, a refined window width value and a refined window displacement value is generated by: computing an inner product between the set of samples and each of a plurality of functions, where the plurality of functions are sufficiently close to a coarse approximation function given by the peak location; and solving a linear system Av=c for the unknown vector v, where the vector c is determined by the inner products, where the matrix A is determined by the center times of the plurality of functions. After appropriate selection, the refined window width and refined window displacement may be used to represent ECG waveform features.

Claims (50)

1. A non-transitory computer-readable memory medium storing program instructions, wherein the program instructions, if executed by a computer system, cause the computer system to:

perform a multiscale short-time Fourier transform (STFT) on a set of samples to obtain a transform array that is parameterized by window width, window displacement τ and frequency ω, wherein the set of samples represents a portion of an electrocardiogram (ECG) signal, wherein the portion of the ECG signal includes a number of waveform features;

operate on the transform array to determine a plurality of peaks in the transform array, wherein said operating includes determining, for each of the plurality of peaks, a window width value, a window displacement value, a frequency value and a power value;

generate, for each of the plurality of peaks, a refined window width value and a refined window displacement value, by:

computing an inner product between the set of samples and each of a plurality of functions, wherein the plurality of functions are windowed sinusoids (a) having a common frequency equal to the frequency value of the peak, (b) being centered at times that are in a neighborhood of the window displacement value of the peak, and (c) having a common width that is based on the width value of the peak; and

solving a linear system Av=c for the unknown vector v, wherein the vector c is determined by the inner products, wherein the matrix A is determined by said times that are in the neighborhood of the window displacement value of the peak.

2. The memory medium of claim 1 , wherein the program instructions, if executed by the computer system, further cause the computer system to:

identify a first of the peaks as corresponding to a QRS complex based on a determination that the power value of the first peak exceeds a threshold value and that the refined window displacement value for the first peak satisfies one or more time constraints;

compute a QRS onset time and/or a QRS offset time based on the refined window displacement value and the refined window width of the first peak; and

display the QRS onset time and/or the QRS offset time via a display device.

3. The memory medium of claim 2 , wherein the program instructions, if executed by the computer system, further cause the computer system to:

repeat said performing, said operating and said generating for a series of sets of samples of the ECG signal.

4. The memory medium of claim 2 , wherein the threshold value is an adaptive threshold that changes over time.

5. The memory medium of claim 2 , wherein the one or more time constraints include a time constraint on the refined window displacement value of the first peak relative to a time of a previously identified feature in the ECG signal.

6. The memory medium of claim 1 , wherein the program instructions, if executed by the computer system, further cause the computer system to:

compute, for each peak P j of the plurality of peaks, a windowed sinusoid function h j that is determined by the refined window width value of the peak P j , the refined window displacement value of the peak P j , and the frequency value of the peak P j ;

generate a linear combination of the windowed sinusoid functions h j ; and

display the real part of the linear combination via a display device.

7. The memory medium of claim 1 , wherein the ECG signal is a human ECG signal, wherein the waveform features include one or more of the following: a P wave, a QRS complex and a T wave.

8. The memory medium of claim 1 , wherein the windowed sinusoids are Gaussian-modulated complex exponentials.

9. The memory medium of claim 1 , wherein said operating on the transform array includes searching for the N P peaks of largest absolute value in the transform array, wherein N P is a positive integer.

10. The memory medium of claim 9 , wherein said searching is restricted to a band of frequencies that is smaller than the frequency range of the multiscale STFT.

11. A non-transitory computer-readable memory medium storing program instructions, wherein the program instructions, if executed by a computer system, cause the computer system to:

receive samples of a portion of an electrocardiogram (ECG) signal, wherein said portion of the ECG signal contains a waveform feature;

operate on the samples to compute a plurality of short-time Fourier transforms (STFT), wherein each of the STFTs is computed using a different value of window width, wherein each of the STFTs is a function of window displacement time τ and frequency ω;

search the plurality of STFTs to determine an initial set of parameters values that characterize the waveform feature, wherein the initial set of parameter values includes a first window displacement time τ 0 , a first frequency ω 0 and a first window width σ 0 ;

compute an inner product of the samples with each of a first function, a second function and a third function to obtain respectively a first complex value, a second complex value and a third complex value, wherein the first, second and third functions are windowed sinusoids (a) having a common frequency equal to the first frequency ω 0 , (b) being centered at times that are in a neighborhood of the first window displacement time τ 0 , and (c) having a common width that is based on the first window width σ 0 ;

compute a time of the waveform feature and a duration of the waveform feature based on the first, second and third complex values and based on said times in the neighborhood of the first window displacement time τ 0 ; and

store the waveform feature time and the waveform feature duration in a memory.

12. The memory medium of claim 11 , wherein the program instructions, if executed by the computer system, further cause the computer system to:

display the waveform feature time or a visual indication of the waveform feature time via a display device.

13. The memory medium of claim 11 , wherein the waveform feature is a QRS complex, wherein the program instructions, if executed by the computer system, further cause the computer system to:

compute an onset time and/or an offset time of the QRS complex based on the waveform feature time and the waveform feature duration.

14. The memory medium of claim 11 , wherein the waveform feature is a QRS complex, a T wave or a P wave.

15. The memory medium of claim 11 , wherein the plurality of STFTs are computed using Gaussian windows.

16. The memory medium of claim 11 , wherein the windowed sinusoids are Gaussian-modulated complex exponentials.

17. The memory medium of claim 11 , wherein said searching includes searching for a local maximum or global maximum of absolute value in the STFTs.

18. The memory medium of claim 11 , wherein the ECG signal is a human ECG signal, wherein said searching is restricted to frequencies in the interval from 10 Hz to 25 Hz.

19. The memory medium of claim 11 , wherein said computing the waveform feature time and the waveform feature duration includes solving a linear system Av=c for the unknown vector v, wherein the matrix A is determined by said times in the neighborhood of the first window displacement time τ 0 , wherein the vector c is determined by the first, second and third complex values.

20. The memory medium of claim 19 , wherein the vector c is determined by the expression:

c =[ln| z 0 |/|z −1 |,ln| z 0 |/|z +1 |] T ,

wherein z 0 , z −1 and z +1 are the first, second and third complex values, respectively.

21. The memory medium of claim 11 , wherein the times that are in the neighborhood of the first window displacement time τ 0 include τ 0 , τ 0 Δτ and τ 0 −Δτ, where Δτ is a positive real number.

22. A method comprising:

a computer system receiving samples of a portion of an electrocardiogram (ECG) signal, wherein said portion of the ECG signal contains a waveform feature;

the computer system operating on the samples to compute a plurality of short-time Fourier transforms (STFT), wherein each of the STFTs is computed using a different value of window width, wherein each of the STFTs is a function of window displacement time τ and frequency ω;

the computer system searching the plurality of STFTs to determine an initial set of parameters values that characterize the waveform feature, wherein the initial set of parameter values includes a first window displacement time τ 0 , a first frequency ω 0 and a first window width σ 0 ;

the computer system computing an inner product of the samples with each of a first function, a second function and a third function to obtain respectively a first complex value, a second complex value and a third complex value, wherein the first, second and third functions are windowed sinusoids (a) having a common frequency equal to the first frequency ω 0 , (b) being centered at times that are in a neighborhood of the first window displacement time τ 0 , and (c) having a common width that is based on the first window width σ 0 ;

the computer system computing a time of the waveform feature and a duration of the waveform feature based on the first, second and third complex values and based on said times in the neighborhood of the first window displacement time τ 0 ; and

the computer system storing the waveform feature time and the waveform feature duration in a memory.

Assignments (5)
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 057280/0028) Recorded Oct 13, 2023
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: NATIONAL INSTRUMENTS CORPORATION
Reel/Frame 065231/0466 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 052935/0001) Recorded Oct 13, 2023
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: NATIONAL INSTRUMENTS CORPORATION; PHASE MATRIX, INC.
Reel/Frame 065653/0463 →
SECURITY INTEREST Recorded Jun 18, 2021
From: NATIONAL INSTRUMENTS CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 057280/0028 →
SECURITY INTEREST Recorded Jun 14, 2020
From: NATIONAL INSTRUMENTS CORPORATION; PHASE MATRIX, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 052935/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 3, 2010
From: GU, ZHIJUN; ZHANG, NANXIONG; QIAN, SHIE
To: NATIONAL INSTRUMENTS CORPORATION
Reel/Frame 023890/0601 →