WO1996002188A1 - Video and analog monitoring and diagnosis system - Google Patents

Video and analog monitoring and diagnosis system Download PDF

Info

Publication number
WO1996002188A1
WO1996002188A1 PCT/US1995/008722 US9508722W WO9602188A1 WO 1996002188 A1 WO1996002188 A1 WO 1996002188A1 US 9508722 W US9508722 W US 9508722W WO 9602188 A1 WO9602188 A1 WO 9602188A1
Authority
WO
WIPO (PCT)
Prior art keywords
data signal
frozen
physiological data
video data
analog
Prior art date
Application number
PCT/US1995/008722
Other languages
French (fr)
Inventor
Bruce E. Krell
Original Assignee
Infovision, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Infovision, Inc. filed Critical Infovision, Inc.
Priority to AU29697/95A priority Critical patent/AU2969795A/en
Publication of WO1996002188A1 publication Critical patent/WO1996002188A1/en

Links

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/20ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for computer-aided diagnosis, e.g. based on medical expert systems
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H30/00ICT specially adapted for the handling or processing of medical images
    • G16H30/20ICT specially adapted for the handling or processing of medical images for handling medical images, e.g. DICOM, HL7 or PACS
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H30/00ICT specially adapted for the handling or processing of medical images
    • G16H30/40ICT specially adapted for the handling or processing of medical images for processing medical images, e.g. editing

Definitions

  • the invention relates generally to the field of medical diagnostic computer software, and more particularly to multitasking techniques for analysis, including simultaneous collecting, analyzing, and displaying, of live and static video, electrophysiological, angiographical, and radiological data in real time.
  • Diagnostic analysis is an important element of patient care within most medical fields including, but not limited to, cardiac electrophysiology, cardiac angiography, and radiology.
  • cardiac electrophysiology cardiac angiography
  • radiology During operating room activities, office consultings, and institutional stays, physicians and other health care personnel spend a large amount of their time collecting and analyzing data.
  • This data collection and analysis process identifies the specific problem faced by the patient, locates the physical source of the problem, and aids a physician in determining possible solutions.
  • several important sources of data are employed. Catheters are often inserted into the heart through thigh and neck arteries and return analog physiological data such as electrograms. Surface electrocardiograms also provide analog physiological data.
  • Waveforms of analog physiological data are characterized and correlated to specific physiological problems.
  • This analog physiological data behavior is then manually associated with video, e.g., x-ray fluoroscopy, data showing the placement of the catheters in order to identify the specific location of the physiological problem.
  • video e.g., x-ray fluoroscopy
  • the approach currently used to collect and analyze the analog physiological data is largely manual. Lengthy exploratory time is usually necessary. This requires extensive hand-eye coordination and the concommital increase in strain. Timelines and sequences must also be remembered for calculations necessary for later analysis. In addition, data from multiple sources must be correlated manually for producing informative physiological analysis.
  • the labor intensive analysis includes printing paper copies of analog physiological waveform plots and then hand measuring appropriate data points by the participating physician. Conduction intervals and activation times and other quatitative characterizations of analog physiological waveforms are calculated using a ruler and a calculator. Trends over time are evaluated by manually constructing plots on paper as the individual data points are collected.
  • the present invention provides a method for analyzing video data signals and analog physiological data signals in a medical diagnosis computer system.
  • the method includes collecting and correlating the video data signal and the associated analog physiological data signal.
  • the correlated video data signal and the analog physiological data signal is then outputted.
  • the present invention also provides a method for analyzing video data signals and analog physiological data signals.
  • the method collects a live video data signal and a live analog physiological data signal from a physiological event of a patient.
  • the method then freezes selected frames of the live video data signal and the live analog physiological data signal to generate a frozen video data signal and a frozen analog physiological data signal.
  • the method correlates the frozen video data signal and frozen analog physiological data signal to record and store.
  • the frozen video data signal and the frozen analog physiological data signal are processed to generate a probe location vector.
  • the method outputs at least one of: the live video data signal, the live analog physiological data signal, the frozen video data signal, the frozen analog physiological data signal, the probe location vector, the conduction interval, and the activation time.
  • the present invention also provides a method for analyzing video data signals and analog physiological data signals in a medical diagnosis computer system.
  • the steps of the method include inputting the video data signal and the associated analog physiological data signal.
  • the video data signal and the analog physiological data signal are then stored.
  • a conduction interval and an activation time from the analog physiological data signal are determined.
  • a plurality of probe location vectors are identified from the video data signal and analog physiological data signal. Then at least one of the video data signal, the analog physiological data signal, the conduction interval, the activation time, and the probe location vectors is outputted.
  • the present invention also contemplates a system for analyzing video data signals and analog physiological data signals in a medical diagnosis, which includes an input means for collecting the video data signal and the analog physiological data signal.
  • the system also has processing means to generate an analyzed video data signal and an analyzed analog physiological data signal.
  • the system has output means for simultaneous display of separate windows of the video data signal, the analog physiological data signal, and the analyzed video data signal and the analyzed analog physiological data signal.
  • the present invention also provides a method, in a medical diagnosis, to filter data signal noise by controlling the data signal flow.
  • This method inputs an analog physiological data signal.
  • the method compares the analog physiological data signal to determine whether the analog physiological data signal exceeds a minimum threshold for a required count value. Finally, the method passes the signal through the filter when the analog physiological data signal exceeds the minimum threshold for the required count value.
  • the present invention further contemplates a system in a medical diagnosis for analyzing video data signals and analog physiological data signals.
  • the system includes a multitasking core component to schedule and provide processor cycles to at least one subcomponent.
  • the system also includes at least one medical application subcomponent for processing a video data signal and an analog physiological data signal.
  • the present invention provides a system for analyzing video data signals and analog physiological data signals in a medical diagnosis.
  • the system includes input means for receiving the video data signal and the analog physiological data signal.
  • the system includes a computer processor for executing programmed instructions and for processing, storing and retrieving the video data signal and the analog physiological data signal.
  • a program memory coupled to the processor, stores program instruction steps for execution by the processor.
  • a video processing component coupled to the processor, collects, displays, and analyzes live and static video data signals .
  • An analog processing component coupled to the processor, collects, displays, and analyzes live and static analog physiological data signals.
  • a conduction interval processing component coupled to the processor, validates, computes and displays conduction intervals .
  • An activation time processing component coupled to the processor, analyzes and displays activation times.
  • a storage device coupled to the processor, stores the collected and analyzed video data signal and analog physiological data signal.
  • the system has an output device, coupled to the processor, for presenting data signals .
  • an object of the present invention is to increase physician efficiency by collecting, analyzing and displaying live and static, i.e., frozen, video and analog physiological data.
  • Another object of the present invention is to reduce patient radiation exposure time by more quickly collecting, storing and recalling patient information from specific instances in time than is capable in the prior art.
  • Yet another object of the present invention is to provide timely and accurate medical histories easily accessible for future study in human readable form.
  • a further object of the invention is to provide a computerized, real-time system for the collection, analysis, and display of live video and live analog physiological data signals.
  • FIG. 1 is a block diagram of a system illustrating computer hardware components for practicing the present invention
  • FIG. 2 is a "video data processing" flow diagram illustrating video processing and storage for the present invention
  • FIG. 3 is an "analog physiological data processing" flow diagram illustrating electrogram processing and storage for the present invention
  • FIG. 4 is an "user interface processing” flow diagram illustrating user interface processing and storage for the present invention
  • FIG. 5 is an "analyze frozen video data” flow diagram illustrating electrogram analysis and storage for the present invention
  • FIG. 6 is an "analyze frozen video data" flow diagram illustrating video analysis and storage for the present invention
  • FIG. 7 is a "respond to command function" flow diagram illustrating user parameter management and storage for the present invention.
  • FIG. 8 is a "record and recall events" flow diagram illustrating the event processing and storage capabilities for practicing the present invention.
  • FIGS. 9A and 9B illustrate analog data waveform characterizations showing basic characteristics of electrogram and electrocardiogram wave morphology
  • FIG. 10 illustrates an analog channel noise filtering algorithm for efficiently eliminating random or background noise from an incoming electrogram signal
  • FIG. 11 illustrates an EKG QRS waveform evaluation algorithm for identifying characteristic components of an incoming electrocardiogram data signal
  • FIGS. 12A, 12B and 12C illustrate a HBE AHV waveform evaluation algorithm for identifying the characteristic components of an incoming His bundle electrogram (HBE) data signal; and FIG. 13 illustrates the multitasking software architecture to independently execute software components for data collection, display, and analysis in the present invention.
  • HBE His bundle electrogram
  • FIG. 1 illustrates an apparatus for implementing a preferred embodiment of the present invention.
  • a computer system uses the method and apparatus described, operates on a video data signal 12, e.g., x-ray fluoroscopy data signal, and on an analog physiological data signal 10 that has been amplified, e.g., electrogram data signal or electrocardiogram (EKG) data signal.
  • the video data signal 12 has a live component and a frozen component.
  • the analog physiological data signal has a live component and a frozen component.
  • the present invention's operation of analyzing the video data signal 12 and the analog physiological data signal 10 includes collection, analysis, recording, storage and display of these data signals.
  • the video data signal 12 and analog physiological data signal 10 are generated from physiological events of the patient.
  • the video data signal 12 may be a set of one or more video data signals.
  • the analog physiological data signal 10 may be a set of one or more analog physiological data signals.
  • the analog physiological data signal 10 may also be amplified.
  • An analog input card 14 collects a set of amplified analog physiological data signals and delivers it through a data bus 18 to a processor, i.e., a central processing unit (CPU) 20.
  • a processor i.e., a central processing unit (CPU) 20.
  • the CPU 20 transfers the data from the random access memory (RAM) 30 to a storage media interface card 26 and storage media 28, through a second data bus 22 which is a Small Computer
  • SCSI System Interface
  • the CPU 20 draws the representations into the RAM 30.
  • the video display card 32 reads the representations directly from the RAM 30 and then displays the image on the display monitor 34.
  • the data to be outputted, processed or eventually stored by the system is stored in the RAM 30 during operation.
  • Data stored in the RAM 30 during operation of the invention include static, i.e., frozen, video data signal 12, live and frozen analog physiological data signal 10, live and frozen conduction intervals and activation times, and probe, e.g., catheter, location vectors. This data may eventually be moved along the SCSI bus to a storage device interface card, for subsequent storage in a storage media 28.
  • the data that may be outputted to a printer 38, via a printer interface card 36 receiving data from the RAM 30 through the first data bus 18, includes formatted reports and screen dumps, i.e., printouts of live or frozen conduction intervals and activation times, frozen analog physiological data signals 10, frozen video data signals 12, and probe locations vectors.
  • the preferred implementation of the present invention runs on commercially available hardware.
  • the first data bus 18 is an Industry Standard Architecture (ISA) or equivalent functioning data bus.
  • the CPU 20 is preferably a fifty- megahertz (50 MHz) Intel 80486 or equivalent functioning CPU 20.
  • the present invention has been implemented using a
  • the preferred amount of RAM 30 is about thirty-two megabytes (32 MB) .
  • the data can be stored in the storage device such as a hard drive, preferably about 300 MB or larger in storage size, or a read/write optical drive, preferably of one-gigabyte (1 GB) or larger in storage size, that is accessed via the storage device interface card 26, e.g. an optical disk interface card or a hard disk interface card.
  • the preferred video display card 32 is a ATI
  • the preferred display monitor 34 is a NEC xFG MultiSynch® display monitor.
  • the video input card 16 is preferably a Data Translation DT- 3851 Live Video Card and Frame Grabber having a feature connector to allow for direct display of live video to the display monitor 34 without intervention by the CPU 20.
  • the analog input card 14 is preferably a multi-channel National Instruments A to D Card AT-MIO-16F-5. In addition, data can be printed on a Hewlett-Packard LaserJet® or equivalent functioning printer.
  • the operating system environment for the preferred embodiment of the present invention uses Microsoft WindowsTM or equivalent functioning software.
  • FIG. 2 is an overall logical diagram characterizing video data signal 12 processing. Shown is processing and storage of live and frozen video data signal 12 (i.e., video data which is live and frozen) .
  • the incoming video data signal 12 is sampled by the video input card 16 into a video sample buffer which is incorporated on the video input card 16.
  • the individual pixel values stored in the video sample buffer of the display card are then sampled to a range of values determined by a video gain 40, a parameter set by an operator of the invention, usually a physician such as a cardiologist, through either display interaction or predetermined default values.
  • the video data signal 12 and the video gain 40 are combined to provide a live video data input 42 to a software video sample buffer 44.
  • Each frame in the video sample buffer 44 is an output 46 that is copied as live video data to provide an input 48 into the live video display buffer 48.
  • the output from the live video display buffer 48 becomes an output 50 of the video frames that are then displayed on the display monitor 34.
  • the output is displayed within a window, whose location on the display monitor 34 is specified by the operator of the invention in a live video window 52 data store.
  • a data store is a receptacle for data maintenance. Also, the processing for commands is discussed in detail below.
  • the output 50 from the live video buffer is also placed as frozen video data into a video data backing store 56.
  • the operator of the invention chooses or tags, either through display interaction or predetermined default value, the specific frame of video to be retrieved from the frozen video data signal 12 and copied from a video data backing store 56 to a frozen video display buffer 58.
  • the frame is subsequently displayed on the display monitor 34 when the operator of the invention issues, through display interaction, a frozen video display cmd 62.
  • the information is displayed in a frozen video window, whose location is kept in a frozen video window 60 data store.
  • the frozen video data signal 12 is also loaded into the video data backing store 56 from the raw video data files 64 residing on the storage media 28 (the process also works vice versa where frozen video data signal 12 is transferred from the video data backing store 56 to the raw video data files 64) .
  • Transfer from the raw video data files 64 to the video data backing store 56 occurs when the operator of the invention commands review of a marked event (discussed further below) whose video data signal 12 does not currently reside in the video data backing store 56.
  • the process of moving frozen video data signal 12 from the video data backing store 56 to the raw video data files 64 occurs during background processing when the video data backing store 56 becomes too filled to allow the storage of further frozen video data signal 12.
  • results of the analysis include determination of catheter placement locations of the heart, which includes recording and recalling particular events using data from the video data backing store 56 and the video analysis results buffer 68.
  • the catheter placement location is determined through an image processing algorithm that uses the unique combination of an initial x-ray registration, an initial x-ray orientation, and a new x-ray orientation.
  • the output 66 from the video analysis results are placed into a video analysis results buffer 68.
  • the video analysis results are gotten from the video analysis results buffer 68 and copied into a video analysis results display buffer 70.
  • These results are plotted on the display monitor 34 in a window, whose location is provided by a command stored in the video analysis results display cmd 72, the operator of the invention, through display interaction, in a video analysis results window 74 data store.
  • the interface for display interaction is described below.
  • video analysis results buffer 68 Since the video analysis results buffer 68 is constantly being updated, background processing is utilized to store the video analysis results from the video analysis results buffer 68 into a video analysis results database 76 kept on the storage media 28. Retrieval or loading of this data from the video analysis results database 76 may be needed if the operator of the invention chooses to later review stored video analysis results.
  • FIG. 3 provides a general logical diagram characterizing analog physiological data signal processing. Shown is processing and storage of live and frozen analog data signal 10 (i.e., analog data which may be live or frozen) , specifically the amplified analog physiological data signal 10.
  • live and frozen analog data signal 10 i.e., analog data which may be live or frozen
  • the incoming set of the analog physiological data signal 10 is sampled at a rate predefined by the invention or at a rate selected by the operator of the invention through display interaction and is stored in an analog channel gains 78 data store.
  • the analog physiological data signal 10 and the contents of the analog channel gains 78 data store are combined to provide the live analog data input to be placed into an analog sample buffer 80.
  • Each frame in the analog sample buffer 80 provides an output that gets copied into a live analog display buffer 82.
  • the analog physiological data signal 10 is then displayed on the display monitor 34 within a specific window.
  • the operator of the invention issues, through display interaction, a live analog display cmd 84.
  • the specific location of the window on the display monitor 34 is provided by the operator of the invention through display interaction in a live analog window 86 data store.
  • a specific time period of the analog physiological data signal 10 is selected or tagged, and then copied, as frozen analog data signal 10 from the live analog display buffer 82 and placed into an analog data backing store 88.
  • the operator of the invention selects or gets the frozen analog data signal 10 from the analog data backing store 88 for transfer to a frozen analog display buffer 90 and subsequent display in a frozen analog window on the display monitor 34.
  • the operator of the invention issues through display interaction, a frozen analog display cmd 92 to display the frozen analog data, whose location for display of this window has been provided by the operator in a frozen analog window 94 data store.
  • the analog physiological data signal 10 that has been frozen is also transferred from the analog data backing store 88 to a raw analog data file 96 residing on the storage media 28 when the frozen analog data is stored on the storage media 28. Similarly, the analog physiological data signal 10 that has been frozen can be loaded and transferred from the raw analog data file 96 to an analog data backing store 88.
  • Transfer of the analog physiological data signal 10 from the raw analog data file 96 to the analog backing store 88 occurs when the operator of the invention commands review of the marked event whose analog physiological data signal 10 does not currently reside in the analog data backing store 88.
  • Moving the analog physiological data signal 10 that has been frozen from the analog data backing store 88 to the raw analog data files 96 occurs during background processing when the analog data backing store 88 becomes too filled to allow the storage of further frozen analog physiological data signals 10.
  • analysis of the analog physiological data signal 10 that has been frozen and residing in the analog data backing store 88 is accomplished. Results of the analysis include determination of the e.g., electrogram and electrocardiogram waveform characteristics and computation of e.g., electrogram channel conduction intervals, onset times and activation times.
  • Analog physiological data signal analysis results are placed into a analog analysis results buffer 98. Through display interaction, the operator of the invention commands these results to be retrieved and copied into a analog analysis results display buffer 100. When the operator of the invention provides through display interaction, an analog analysis results display cmd 102 these results are plotted in a window on the display monitor 34. The location of this window is provided by the operator of the invention, through display interaction, in a analog analysis results window 104 data store.
  • analog analysis results buffer 98 Since the analog analysis results buffer 98 is constantly being updated, background processing is utilized to move the contents of this buffer for storage into the analog analysis results database 106 residing on the storage media 28.
  • data from the analog analysis results display buffer 100 is put into the analog analysis results buffer 98 for storage to the analog analysis results data base 106.
  • the analyzed data is retrieved or loaded from the analog analysis results data base 106 into the analog analysis results buffer 98, it can be displayed via the analog analysis results display buffer 100.
  • the results from the analysis of the analog physiological data signal 10 can also be recorded and recalled from the analog analysis results buffer 98 and placed in the frozen analog display buffer 90 for display on the display monitor 34 when commanded by the operator of the invention through display interaction via the frozen analog display cmd 92.
  • the operator of the invention through display interaction also provides the location of the window on the display monitor 34 in the frozen analog window 94 data store.
  • FIG. 4 shows how the operator of the present invention interacts with the system through a series of display interactions.
  • FIG. 4 provides a general logical diagram characterizing processing and storage of user interfaces and interactions with the operator of the invention.
  • an interface description table 108 is loaded one description at a time from a file stored on the storage media 28. Using the descriptions stored in the interface description table 108, interfaces are actually created in memory and an initial interface is displayed. The number of this interface, generally referred to as interface number 110, is stored into a current interface 112 data store. Characteristics of each element in the current interface are extracted from the object instantiation tables 114 stored in the data store current element characteristics 116 and used to display a user interface window. The location of this window is stored in a user interface window 118 data store.
  • a process to manage interfaces places the processed command into a current user cmd 120 data store. This command is broken into two components - cmd type 122 and cmd argument 124. A specific response to the command is accomplished. If this response involves transition to a new interface, an interface transition table 126 is consulted to set the number of the new interface into the current interface 112 data store. Characteristics of each of the elements in the new interface are copied into the current element characteristics 116 data store. The new interface is then displayed in the user interface window, whose location is stored in the user interface window 118 data store.
  • FIG. 5 illustrates more detail of the processing and storage of the analog physiological data signal 10 shown in FIG. 3.
  • the logical diagram characterizes processing and storage of the frozen analog physiological data signal 10.
  • the noise filtered analog data 130 is used, along with conduction event recognition parameters 136, as the basis for computing live conduction intervals.
  • the noise filtered analog data 130 is also used, along with activation time recognition parameters 138, to determine live activation times.
  • the resulting conduction intervals are placed into a conduction interval store 132 data store and activation time are placed into an activation time store 134 data store.
  • Both the conduction interval and the activation time are copied and placed into the analog analysis results buffer 98.
  • Three kinds of display plots are then updated during real-time operations.
  • One plot display shows the current conduction interval values relative to predefined maximum and minimum values that are stored in the predefined maximum (max) and minimum (min) values 140 data store. Actual conduction intervals may be plotted over time or relative to each other, dependent on the current definition stored in the conduction interval plot configuration 142 data store.
  • the updated conduction interval display plots are stored in the analog analysis results display buffer 100.
  • a similar plot configuration is defined for the activation time in a activation time plot configuration 144 data store and is used to update the activation time display plot. These plot updates are stored in the analog analysis results display buffer 100 for ultimate update on the display monitor 34.
  • a specific time segment of the conduction interval or activation time may be frozen as illustrated in FIG. 3. This frozen data may then be recorded for recall in the future. This process is discussed in more detail below.
  • Video data stored in the video data backing store 56 by the operator is the basis for analytical activities including determining the x-ray registration and the x-ray orientation used to analyze a frozen x-ray image to determine current catheter location within the patient's heart.
  • the x-ray registration is the location of the catheter with a known position in the heart.
  • the known position is either predefined or obtained using vector locations.
  • the initial x-ray orientation is the operator specified beginning position angle of the x-ray, determined by the angle of the line of sight of the x-ray relative to the longitudinal axis of the patient.
  • the new x-ray orientation provided through display interaction, is the position angle of the x-ray, taken where the user has moved the position of the x-ray system.
  • the x-ray registration results are sent to the frozen video display buffer 58 and video analysis results display buffer 70 from where the video analysis results are placed into the video analysis results buffer 68 for storage into the video analysis results database 76 on the storage media 28.
  • the process of determining catheter location is done using an edge detection algorithm 146.
  • the edge detection algorithm 146 along with the beginning x-ray registration, stored in an initial x-ray registration 148 data store, the beginning x-ray orientation, stored in an initial x-ray orientation 150 data store (both parameters were discussed in FIG. 2), and a new x-ray orientation kept in a current x-ray orientation 151 data store, indicated through display interaction, provides a computed current x- ray registration.
  • the resultant output of this calculation is placed in a current x-ray registration 152 data store.
  • the parameter in the current x-ray registration 152 data store, along with a transformation equation, stored in a transformation equations 154 data store, is used to compute catheter location.
  • catheter location identified as a vector
  • This vector is then copied and placed into a video analysis results buffer 68.
  • the vector is used to update the image analysis display.
  • the vector is copied from the video analysis results buffer 68 and is overlaid with a three-dimensional representation of the heart, which is set within the system and kept in the 3D heart graphic description 157 data store.
  • the resulting image of the catheter vector location superimposed on the three-dimensional representation of the heart is then stored in the video analysis results display buffer 70 data store to update the image in the video analysis windows displayed on the display monitor 34.
  • Specific applications of the present invention include analyzing the frozen video data signal 12 to determine the thickness of the ventricle wall. Using the known edge detection algorithm 146 data store along with the parameter of the video data backing store 56 determines ventricle wall thickness, whose value is placed in a ventricle wall location 158 data store.
  • the parameter in the ventricle wall location 158 data store is also used to determine stenosis.
  • Stenosis is defined to be blockage of the flow of blood within a heart vessel due to shrinkage of that vessel.
  • the parameters in the ventricle wall location 158 data store, the known edge detection algorithm 146 data store, the video data backing store 56, along with a normal vessel size parameter, are all utilized to analyze the frozen video data signal 12 in order to identify heart vessel stenosis.
  • the normal vessel size parameter is provided through display interaction by the operator of the invention and stored in a normal thickness 160 data store.
  • the value of the heart vessel stenosis analysis provides an input to a ventricle stenosis locations 162 data store. A similar approach is used for structure analysis performed by radiologists.
  • Both the ventricle wall location and the ventricle stenosis location are also placed in the video analysis results buffer 68.
  • Data within the video analysis results buffer 68 is copied into the video analysis results display buffer 70 for updating the image in the video analysis windows displayed on the display monitor 34.
  • FIG. 7 provides a logical diagram characterizing specific processing of individual commands by the operator of the invention.
  • the parameters in the cmd argi ⁇ ments 124 data store are copied into the appropriate data stores required for processing as discussed earlier.
  • the affected window on the display monitor 34 is updated to reflect the updated parameters thereby controlling the behavior of the display monitor 34.
  • Specific parameters that may be dynamically modified, or set by the operator of the invention through display interaction include the parameters stored in the following data stores: activation time recognition parameters 138 data store, the activation time plot configuration 144 data store, the noise filter parameters 128 data store, the conduction event recognition parameters 136 data store, the initial x-ray registration 148 data store, and the x-ray orientation 150 data store.
  • the operator of the invention, through display interaction may also set one or more channel display labels that are stored in a channel labels 172 data store.
  • the plot variables and scale value parameters that control conduction interval display are placed in the conduction interval plot configuration 142 data store.
  • the output from the conduction interval plot configuration 142 data store is used to update the conduction interval axis and plot values on the display monitor 34.
  • the output from the cmd arguments 124 data store also is used in setting video gain stored in the video gain 40 data store and ultimately is used with the video data signal 12.
  • the analog channel gain may be set and placed in the analog channel gains 78 data store from where it ultimately is used with the analog physiological data signal 10.
  • parameters for window locations and sizes may be set and placed in a live video window 164 data store, a static video window 166 data store, a live analog window 168 data store, and a static video window 170 data store.
  • the output from these data stores is used to move and resize the appropriate window on the display monitor 34.
  • an operator may input moving the live video window location on the display monitor 34.
  • both the live video window location and the live video window size will be copied from the cmd arguments 124 of the user command message received by the invention into the live video window 164 data store.
  • the actual live video stream is redirected on the display monitor 34. Subsequent processing of the live video, as illustrated in FIG. 2, will ensure that the video processing hardware displays the live video stream within the new window.
  • FIG. 8 provides a logical diagram characterizing the correlating and processing to record and recall events when commanded by the operator of the invention.
  • FIG. 8 shows how the results from the video data backing store 56, the video analysis results buffer 68, the analog data backing store 88 and the analog analysis results buffer 98 data stores are used to update an event descriptor which in turn is used to eventually update the frozen displays stored in the frozen video display buffer 58, the video analysis results display buffer 70, the frozen analog display buffer 90 and the analog analysis results display buffer 100 data stores.
  • the operator of the invention also can command the recording of an arbitrary event through display interaction.
  • a commanded and recorded set of events for a specific study are maintained by the invention in an event log 174 data store. Retrieving events from the event log 174 data store is accomplished through display interaction by selecting a specific event from the event log.
  • An event is characterized by several important data elements. An unique event number provides a simple identification mechanism for the event.
  • Frozen video data shows the placement of the catheters at the time of the indicated event. Video analysis results characterize the state of the heart resulting from the analysis of the e.g., history of tracked probe location vectors.
  • Frozen analog data registers the wave morphology of the e.g., electrocardiogram or the electrogram at the time of the indicated event.
  • Analog analysis results characterize the state of the heart resulting from the analysis of the e.g., conduction intervals, onset times, and activation intervals.
  • An unique identifier for each of these data components of the event are stored with the event number as an entry in the event log 174.
  • an update event descriptor the value of the last recorded event number is retrieved from the last recorded event number 176 data store.
  • Specific identifiers are retrieved for data components associated with the event.
  • the unique identifier, along with the data component identifiers, are stored as an event descriptor in the event log 174.
  • the unique identifier is entered into a current recalled event number 178 data store.
  • a new value is written to a last recorded event number 176 data store, indicating the occurrence of a new event.
  • the value stored in the current recalled event number 178 data store is then retrieved by a function update frozen displays. This event number is used to extract the event descriptor from the event log 174.
  • Data component identifiers are then extracted from the event descriptor stored on the event log database 180.
  • identifiers are utilized to directly access the data in the appropriate data stores, by copying the event frozen data into the appropriate display buffers. All four components associated with the frozen event are simultaneously displayable in separate windows on the display monitor 34. Recall of a specific event also requires several processing steps. The specific event number is extracted from the cmd arguments 124 data store and copied into the current recalled event number 178 data store. Once this data store is updated, the function update frozen displays uses this event number, the event log 174 data store, and the frozen data stores to update the appropriate windows on the display screen.
  • the event log 174 data store is fixed in size.
  • a function store event descriptor is used to copy entries of the event log 174 data store to an event log database 180 that resides on the storage media 28. If the event descriptor for a recalled event has been sent to the event log database 180 in this manner, the function load event descriptor serves to retrieve the event descriptor from the event log database 180 into the event log 174 data store maintained in the RAM 30.
  • FIG. 9a provides a logical diagram characterizing the EKG waveform while FIG. 9b provides a logical diagram characterizing the electrogram waveform.
  • An EKG signal that is characterized as well-behaved exhibits unique waveform behavior.
  • each QRS wave may be biphasic (containing both positive and negative deflection) or monophasic (containing either only a positive deflection or only a negative deflection) .
  • Biphasic QRS waveforms can be quantitatively characterized according to three parameters: QRS onset time, QRS magnitude, and QRS activation time. Monophasic QRS waveforms are only characterized by onset time and magnitude.
  • QRS onset 184 is defined to be the point in time at which the EKG waveform begins to deviate from a QRS baseline value 182.
  • the QRS wave exhibits a QRS magnitude 186 at the time after the QRS onset 184 time at which the maximum (positive) or minimum (negative) deflection from the QRS baseline value 182 of the EKG waveform occurs.
  • a QRS activation 188 time of the QRS waveform is determined according to the time after the QRS magnitude 186 time at which the EKG waveform crosses the QRS baseline value 182 of the EKG wave, moving from positive to negative or negative to positive.
  • a His bundle electrogram (HBE) waveform is considered by physicians to be the most reliable and most indicative of cardiac conduction times.
  • This electrogram typically exhibits three important components: A, H, and V.
  • Each component may have its initial deflection in both the positive and negative directions. Additionally, each component may be either biphasic or monophasic.
  • Each component may be quantitatively characterized. This characterization includes an AHV baseline value 190, an A onset time 192, an A magnitude 194, an A activation time 196, a H onset time 198, a H magnitude 200, a H activation time 202, a V onset time 204, a V magnitude 206, and V activation time 208. Definitions of onset time, magnitude time and value, and the activation time are the same as provided earlier.
  • FIGS. 10, 11, 12A, 12B, and 12C are state diagrams which illustrate the unique process to determine whether a data signal is reliable, i.e., valid, for calculating conduction interval and activation time respectively.
  • a state is a mode of behavior of the analog physiological data signal 10.
  • FIG. 10 illustrates a state diagram of the preferred embodiment of the present invention characterizing the unique algorithm through which noise is filtered from any of the amplifier analog input channels in the filter analog data analysis shown in FIG. 5.
  • This algorithm is based upon threshold exceedence. Key parameters for this algorithm are a minimum threshold and a required count for each analog channel . Both parameters are predetermined either through system default or operator specification via display interaction.
  • An input to the FIG. 10 algorithm is ch(i, t) , an analog physiological data signal channel value, where i is the channel number and t is the time.
  • Each of the analog physiological data signal channels is sampled to determine an input value for ch(i, t) .
  • the algorithm in FIG. 10 is applied to this input data value.
  • a next state is determined. This next state may be the same state as before or a new, different state.
  • the input data value sampled from the analog physiological data signal channel will either be rejected or passed to the algorithms in FIGS. 11, 12A, 12B and 12C for determination of the onset time, the magnitude time, the activation time, and also the conduction intervals.
  • each analog physiological data signal channel beginning at a start state 210, automatically transitions to a noisy channel state 212.
  • New analog physiological data signal channel values, ch(i, t) below the minimum threshold for the channel, are rejected leaving the channel in the noisy channel state 212.
  • the first input analog physiological data signal channel value ch(i, t) exceeds the minimum threshold for the channel, the channel transitions to an increasing state 214.
  • the input analog physiological data signal channel value ch(i, t) is still rejected.
  • a number of possible responses can occur when the algorithm is applied to a new input analog physiological data signal channel value. If the new input analog physiological data signal channel value ch(i, t) falls below the threshold, the channel returns to the noisy channel state 212, rejecting the new channel input value.
  • the channel remains in the increasing state 214, but the input channel data value is still rejected. If the new input analog physiological data signal channel value ch(i, t) again exceeds the minimum threshold and the number of successive exceedences does exceed the required count, the channel transitions to a noise filtered channel state 216. In this case, the new input analog physiological data signal channel value ch(i, t) is passed to the algorithms illustrated in FIGS. 11, 12A, 12B and 12C. for analog results functional processing as shown in FIG. 3.
  • FIG. 10 also depicts what occurs to analog physiological data signal channels in a noise filtered channel state 216 that begin to fall below the minimum threshold. That falling value may be temporary, caused by noise, or may be permanent.
  • a decreasing state 218 is employed to assure that a sequence of subsequent input analog physiological data signal channel values ch(i, t) occurs prior to classifying the channel as in the noisy channel state 210 and rejecting input channel data values. During the decreasing state 218 processing, new analog physiological data signal channel values ch(i, t) are rejected. However, the last filtered channel input value is passed to the algorithms in FIGS. 11, 12A, 12B and 12C for analog results functional processing, as indicated in FIG. 3.
  • noise filtering could also be accomplished through digital filtering, fast- Fourier-transform analysis or equivalent functioning process.
  • FIG. 11 is a state diagram characterizing the algorithm by which the QRS waveform and its quantitative ' constituents are evaluated in the determining activation time for the EKG data signal analysis shown in FIG. 5.
  • the primary input to this algorithm is the filtered channel value ch(i, t) , where i is the channel number and t is the time, released by the noise filtering algorithm.
  • Analog channel state changes in this algorithm are based on comparison of successive, filtered, EKG channel values. Using simple comparisons rather than detailed calculations, such as digital filters or transforms, provides a computationally efficient and highly accurate algorithm. However, noise filtering could also be accomplished through digital filtering, fast-Fourier-transform analysis or equivalent functioning process.
  • each EKG channel can exist in one of several states: a QRS baselining 220, a positive QRS increasing 222, a positive QRS decreasing before activation 224, a negative QRS decreasing 226, a negative QRS decreasing before activation 228, and a QRS terminating 230.
  • states correspond to the various portions of the QRS waveform illustrated FIG. 8. As long as successive, filtered, EKG channel values are approximately equal, the baseline is recording and the QRS baselining state is maintained.
  • EKG channel value ch(i, t) When the EKG channel value ch(i, t) first exceeds its previous value ch(i, t-1) the EKG onset time is recorded and the channel transitions into the positive QRS increasing state 222. As long as successive, filtered, EKG channel values are increasing, this state is maintained. At the first occurrence of an EKG channel value ch(i, t) going below its previously observed value ch(i, t-1) , then the EKG magnitude time and value are recorded. The channel transitions to the positive QRS decreasing before activation state 224.
  • the channel remains in the positive QRS decreasing before activation state 224. Once the channel value goes below the recorded EKG baseline, the EKG transitions into the QRS terminating state 230 and the EKG activation time is recorded. This condition indicates that the biphasic QRS waveform has been encountered. The EKG channel remains in the QRS terminating state 230 until successive channel values, ch(i, t) and ch(i, t-1), are approximately equal.
  • the channel remains in the negative QRS increasing before activation state 228. Once the channel value goes above the recorded baseline, the EKG transitions into the QRS terminating state 230. This condition indicates that the biphasic QRS waveform has been encountered. The EKG channel remains in the QRS terminating state 230 until successive channel values, ch(i, fc) and ch(i, t-1), are approximately equal. This condition indicates that the channel baseline is again occurring. As a result, the EKG channel moves to the QRS baselining state 220.
  • FIGS. 12A, 12B and 12C are state diagrams characterizing the algorithm by which the AHV waveform and its quantitative constituents are evaluated in the determination of the activation time for the analog physiological data signal 10 analysis shown in FIG. 5.
  • the primary input to this algorithm is the filtered channel value released by the noise filtering algorithm as shown in FIG. 10.
  • Analog channel state changes in this algorithm are based on comparison of successive, filtered, HBE electrogram channel values HBE(t) .
  • comparisons rather than detailed calculations used for digital filters or transforms, provides a computationally efficient and accurate algorithm.
  • noise filtering could also be accomplished through digital filtering, fast-Fourier- transform analysis or equivalent functioning process.
  • the HBE electrogram channel can exist in a number of states.
  • Each HBE component (A, H, V) utilizes four states: baselining, increasing, decreasing, and terminating. Conditions for maintaining the various states and for transitioning among the states are similar to those illustrated in FIG. 11. Separate baselines are maintained for each of the A, H, and V components. Each component can be monophasic or biphasic. Additionally, the HBE electrogram can exhibit one, two, or three of the components, such as A only, A and H only, or A, H, and V. Conditions and transitions within the algorithm accommodate these possibilities.
  • Each of the components of the HBE wave is numerically characterized by an algorithm similar to the algorithm described in FIG. 11.
  • FIG. 12A the characteristics of the A component are determined.
  • FIG. 12B H component characteristics are quantified.
  • characterization of the V component is performed by the algorithm in FIG. 12C.
  • each A component can exist in one of several states: an A baselining 232, an A increasing 234, an A decreasing 236 and an A terminating 238. These states correspond to the various positions of the A component of the HBE waveform illustrated in FIG. 9B. As long as successive, filtered HBE channel values are approximately equal, the HBE is in the A baselining state 232, the A baseline of the AHV baseline value 190 is recording, and the A baselining state 232 is maintained.
  • the HBE data signal channel value ch(i, t) When the HBE data signal channel value ch(i, t) first exceeds its previous value ch(i, t-1) , the A onset time 192 is recorded and the HBE data signal channel value transitions into the A increasing state 234. As long as successive, filtered, HBE data signal channel values are increasing, this state is maintained. At the first occurrence of the HBE data signal channel value ch(i, t) going below its previous observed value ch(i, t-1) , then the A magnitude time and value are recorded. The channel transitions to the A decreasing state 236. As the HBE data signal channel value continues to decrease, the HBE data signal channel value remains in the A decreasing state 236.
  • the HBE data signal channel value ch(i, t) goes below the recorded A baseline, the A activation time is recorded and the HBE data signal channel value transitions to the A terminating state 238. This state is maintained until two successive inputted HBE data signal channel values, chfi, t-1) and ch(i, t) , are approximately equal. When this occurs, the HBE data signal channel value transitions to a H baselining 240 state described in FIG. 12B.
  • Each H component can exist in one of several states: the H baselining 240, a H increasing 242, a H decreasing 244 and a H terminating 246. These states correspond to the various positions of the H component of the HBE waveform illustrated in FIG. 9B. As long as successive, filtered HBE channel values are approximately equal, the HBE is in the H baselining state 240, the H baseline of the AHV baseline value 190 is recording and the H baselining state 240 is maintained.
  • HBE data signal channel value ch(i, t) When the HBE data signal channel value ch(i, t) first exceeds its previous value ch(i, t-1), the H onset time is recorded and the HBE data signal channel value transitions into the H increasing state 242. As long as successive, filtered, HBE data signal channel values are increasing, this state is maintained. At the first occurrence of the HBE data signal channel value ch(i, t) going below its previous observed value ch(i, t-1), then the H magnitude time and value are recorded. The channel transitions to the H decreasing state 244.
  • the HBE data signal channel value As the HBE data signal channel value continues to decrease, the HBE data signal channel value remains in the H decreasing state 244. Once the HBE data signal channel value ch(i, t) goes below the recorded H baseline, the H activation time is recorded and the HBE data signal channel value transitions to the H terminating state 246. This state is maintained until two successive inputted HBE data signal channel values, ch.i, t-1) and ch(i, t) , are approximately equal. When this occurs, the HBE data signal channel value transitions to a V baselining state 248 described in FIG. 12C.
  • each V component can exist in one of several states: the V baselining 248, a V increasing 250, a V decreasing 252 and a
  • V terminating 254 These states correspond to the various positions of the V component of the HBE waveform illustrated in FIG. 9B.
  • the HBE is in the V baselining state 248, the V baseline of the AHV baseline value 190 is recording, and the V baselining state 254 is maintained.
  • the HBE data signal channel value ch(i, t) first exceeds its previous value ch(i, t-1) , the V onset time is recorded and the HBE data signal channel value transitions into the V increasing state 250.
  • the V increasing state 250 is maintained.
  • the first occurrence of the HBE data signal channel value ch(i, t) going below its previous observed value ch(i, t-1) then the
  • V magnitude time and value are recorded.
  • the channel transitions to the V decreasing state 252.
  • the HBE data signal channel value remains in the V decreasing state 252.
  • the V activation time is recorded and the HBE data signal channel value transitions to the V terminating state 254. This state is maintained until two successive inputted HBE data signal channel values, ch.i, t-1) and ch(i, t) , are approximately equal.
  • the HBE data signal channel value transitions to an A baselining state 232 described in FIG. 12A.
  • Figs. 10, 11 and 12 are used to compute conduction intervals. Five basic phases of activity are performed. First, the noise filter algorithm of FIG. 10 is applied to all analog channel values. Next, the algorithm of FIG. 11 is used to determine the parameters of the EKG channels. Then, the HBE electrogram channel is evaluated using the algorithm in FIGS. 12A, 12B and 12C to determine the components of the HBE electrogram. Fourth, components of the HBE electrogram and the EKG analog channels are correlated to validate the calculated onset times, magnitude times and values, and the activation times. Finally, validated channel components are utilized to determine conduction intervals . The conduction intervals are calculated using the difference in onset times.
  • the present invention discussed above operates in a multitasking software architecture environment characterized in FIG. 13.
  • these software components are independently executing code modules that share the CPU 20.
  • the core components of the multitasking architecture include a user interface manager 256, a scheduler 266, and a global shared memory 268.
  • the other independent software tasks, i.e., subcomponents, within the architecture include a video display manager 258, an analog physiological display manager 260, an analysis results display manager 262, a backing store manager 264.
  • these tasks or subcomponents are medical application subcomponents .
  • the architecture of the present invention incorporates a generic architecture consisting of a master controller, a global shared memory and a scheduler as discussed in High Speed Windows Applications : Mul ti tasking Design Methods, by Dr. Bruce
  • Each software component manages a specific activity.
  • the user interface manager 256 captures user commands, instructs the scheduler 266 to activate and terminate other tasks (i.e., subcomponents) , and relays user commands to the various application tasks.
  • the scheduler 266 activates application tasks, terminates application tasks, and commands the application tasks to use a limited number of the CPU 20 cycles.
  • Each of the display manager tasks - the video display manager 258, the analog physiological display manager 260 task or subcomponent, and the analysis results display manager 262 task - collects real-time input from a specific hardware interface, places the input into the global shared memory 268, performs analysis as commanded by the operator of the invention, and updates the assigned display monitor 34.
  • the backing store manager 264 is a background task that efficiently manages the limited space allocated for backing stores, loading and offloading data from and to the storage device 28.
  • the global shared memory 268 is utilized.
  • a multitasking software architecture is necessary to assure real-time performance by the invention.
  • each of the real-time interfaces gets its input data partially serviced in a round-robin fashion. Continuously cycling through the application tasks to partially service each of the input interfaces assures that none of the input interfaces is starved for the CPU 20 cycles, resulting in lost data.
  • Time slice sharing of the CPU 20 to obtain high performance throughput is a characteristic commonly utilized by operating systems and other real-time applications.
  • the operating environment consisting of Microsoft WindowsTM, requires task scheduling to be implemented by the scheduler 266.
  • Other operating system environments typically provide task time slicing of the CPU 20.
  • Each of the specific tasks of the multitasking software architecture have functional processing capabilities assigned to them.
  • the allocation of functional capabilities to tasks enables implementation of the present invention.
  • the functional flows are allocated to specific tasks.
  • the first is the user interface manager 256 task which has functional capability of user interface processing, as shown in FIG. 4, and respond to cmd, as shown in FIG. 7. This is an example of one-one mapping of the architecture where the set of functional capabilities is associated with a single architecture task.
  • the video display manager 258 task whose allocated functional flows include the video data signal 12 processing illustrated in FIG. 2 except the video backing store 56 functions and the raw video data files 64 functions.
  • the analog physiological display manager 260 task allocated functional flows include the amplifier analog physiological data signal processing illustrated in FIG. 3 except for the analog data backing store 88 functions and the raw analog data files 96 functions.
  • the backing store manager 264 architecture task has the allocated functional flows of the video data signal 12 processing with respect to the video backing store 56 functions and the raw video data files 64 functions shown in FIG. 2. In addition, it has allocated the functional flows of the analog physiological data signal 10 processing with respect to the analog data backing store 88 and the raw analog data files 96 functions.
  • the capabilities of the video data signal 12 processing and the analog physiological data signal 10 processing that span multiple architecture tasks are referred to as split mapping situations.
  • the analysis results display manager 262 task is allocated functional flows of analyzing the frozen video data signal 12 shown in FIG. 2 and analyzing the frozen analog physiological data signal 10 shown in FIG. 3.
  • scheduler 266 architecture task has allocated functional flows that are required to interface with Microsoft WindowsTM.
  • the preferred embodiment of the present invention utilizes a layered design within each software task.
  • At the top layer of the design is the control and user interface management layer.
  • the functional processing flow supported by this design layer include interfacing with the operator of the invention and with Microsoft WindowsTM.
  • the allocated functional flows for this design layer include cyclic executive, window procedure, user interface processing and respond to command shown in FIG. 7.
  • the functional processing flow supported by this design layer includes interfacing with application specific analysis functions including the conduction interval and the activation time, illustrated in FIG. 5, and the catheter placement locations and the ventricle wall thickness, illustrated in FIG. 6. This is accomplished through allocation of the processes analyzing frozen video data and frozen analog data.
  • the functional processing flow supported by this design layer includes interfacing to the actual analog and video hardware. This is accomplished through allocation of the processes for video data processing and analog physiological data processing.
  • the layered approach to the internal design of each approach allows the reuse of a majority of the invention for multiple medical disciplines.
  • the present invention may be presented in modular components .
  • the modular approach allows for the individual support of electrophysiology, angiography and radiology by using the appropriate application module within the second layer to reflect the diagnostic concerns of the individual medical discipline. Replacement of the application module is easily accomplished since the internal software layers interact through the interfaces of the present invention as described above and that do not change as a result of application specific functionality.

Abstract

In a medical diagnosis computer system, a method for using a video data signal (12) including x-ray fluoroscopy, and an analog physiological data signal (10), including electrocardiogram and electrogram data signals, wherein the video data signal (12) and the analog physiological data signal (10) are received, sampled, and simultaneously displayed (34) and sent to storage (28). Live and frozen data signals are analyzed and processed to provide correlated angiographical, electrophysiological, and radiological data. The data signals are then displayed simultaneously on one or more display monitors (28) in separate windows. The medical system provides processor, memory, storage, and output devices.

Description

VIDEO AND ANALOG MONITORING AND DIAGNOSIS SYSTEM
BACKGROUND OF THE INVENTION
1. Field of the Invention
The invention relates generally to the field of medical diagnostic computer software, and more particularly to multitasking techniques for analysis, including simultaneous collecting, analyzing, and displaying, of live and static video, electrophysiological, angiographical, and radiological data in real time.
2. Description of Background Art Diagnostic analysis is an important element of patient care within most medical fields including, but not limited to, cardiac electrophysiology, cardiac angiography, and radiology. During operating room activities, office consultings, and institutional stays, physicians and other health care personnel spend a large amount of their time collecting and analyzing data. This data collection and analysis process identifies the specific problem faced by the patient, locates the physical source of the problem, and aids a physician in determining possible solutions. For example, in the medical fields of electrophysiology, angiography, and radiology, several important sources of data are employed. Catheters are often inserted into the heart through thigh and neck arteries and return analog physiological data such as electrograms. Surface electrocardiograms also provide analog physiological data. These data sources are utilized by the physician to identify specific problems with the physiological systems of the heart or other body structures. Waveforms of analog physiological data are characterized and correlated to specific physiological problems. This analog physiological data behavior is then manually associated with video, e.g., x-ray fluoroscopy, data showing the placement of the catheters in order to identify the specific location of the physiological problem. The approach currently used to collect and analyze the analog physiological data is largely manual. Lengthy exploratory time is usually necessary. This requires extensive hand-eye coordination and the concommital increase in strain. Timelines and sequences must also be remembered for calculations necessary for later analysis. In addition, data from multiple sources must be correlated manually for producing informative physiological analysis.
The labor intensive analysis includes printing paper copies of analog physiological waveform plots and then hand measuring appropriate data points by the participating physician. Conduction intervals and activation times and other quatitative characterizations of analog physiological waveforms are calculated using a ruler and a calculator. Trends over time are evaluated by manually constructing plots on paper as the individual data points are collected.
Furthermore, as x-rays are displayed on a television monitor, these images are often not permanently stored. Movement of the catheters during data gathering often results in the retaking of x-rays several times as the clinician searches for the source of a specific physiological problem as indicated by the analog physiological data wave morphology. This exposure to such extensive x-rays is detrimental to patients. While several microcomputer-based systems exist to assist an electophysiologist, angiographer or radiologist in his or her activities, these separate systems predominantly serve as display stations that require many of the same manual activities, such as calculating and plotting, to be done by the clinician. In addition, x-ray fluoroscopy data is displayed on a separate monitor and this data is often not captured and correlated to specific analog physiological data waveforms. Trend plots of conduction intervals and activation times are manually generated by utilizing electronic calipers (acting as a ruler) to measure the times and manually entering the data points into a plot on the display.
These existing systems are also extremely limited in the number and types of data that can be displayed and updated in real-time. Achieving the performance and reliability goals is usually accomplished through a combination of hardware and software. Typically, in current systems during real-time operations, live electrocardiogram and electrogram data is collected and displayed on one display while a second display displays electrocardiogram or electrogram data during a specific, frozen, i.e., static, time period selected by the physician.
Therefore, in order to effectively, easily, and rapidly identify physiological problems, determine their physical locations, and formulate possible therapies, there is a need for several kinds of data that should be simultaneously accessible in multiple windows of a display monitor or in multiple windows of multiple display monitors. In addition, there is a need for collecting, analyzing, and displaying the several kinds of video, electrophysiological, angiographical, and radiological data, to relieve the physician of the manual tasks associated with analysis, updating, recording, and correlation of this data.
SUMMARY OF THE INVENTION The present invention provides a method for analyzing video data signals and analog physiological data signals in a medical diagnosis computer system. The method includes collecting and correlating the video data signal and the associated analog physiological data signal. The correlated video data signal and the analog physiological data signal is then outputted.
The present invention also provides a method for analyzing video data signals and analog physiological data signals. The method collects a live video data signal and a live analog physiological data signal from a physiological event of a patient. The method then freezes selected frames of the live video data signal and the live analog physiological data signal to generate a frozen video data signal and a frozen analog physiological data signal. The method correlates the frozen video data signal and frozen analog physiological data signal to record and store. The frozen video data signal and the frozen analog physiological data signal are processed to generate a probe location vector. A conduction interval and an activation time from the frozen analog physiological data signal. Finally, the method outputs at least one of: the live video data signal, the live analog physiological data signal, the frozen video data signal, the frozen analog physiological data signal, the probe location vector, the conduction interval, and the activation time.
The present invention also provides a method for analyzing video data signals and analog physiological data signals in a medical diagnosis computer system. The steps of the method include inputting the video data signal and the associated analog physiological data signal. The video data signal and the analog physiological data signal are then stored. A conduction interval and an activation time from the analog physiological data signal are determined. A plurality of probe location vectors are identified from the video data signal and analog physiological data signal. Then at least one of the video data signal, the analog physiological data signal, the conduction interval, the activation time, and the probe location vectors is outputted.
The present invention also contemplates a system for analyzing video data signals and analog physiological data signals in a medical diagnosis, which includes an input means for collecting the video data signal and the analog physiological data signal. The system also has processing means to generate an analyzed video data signal and an analyzed analog physiological data signal. Finally, the system has output means for simultaneous display of separate windows of the video data signal, the analog physiological data signal, and the analyzed video data signal and the analyzed analog physiological data signal.
The present invention also provides a method, in a medical diagnosis, to filter data signal noise by controlling the data signal flow. This method inputs an analog physiological data signal. The method compares the analog physiological data signal to determine whether the analog physiological data signal exceeds a minimum threshold for a required count value. Finally, the method passes the signal through the filter when the analog physiological data signal exceeds the minimum threshold for the required count value. The present invention further contemplates a system in a medical diagnosis for analyzing video data signals and analog physiological data signals. The system includes a multitasking core component to schedule and provide processor cycles to at least one subcomponent. The system also includes at least one medical application subcomponent for processing a video data signal and an analog physiological data signal.
In addition, the present invention provides a system for analyzing video data signals and analog physiological data signals in a medical diagnosis. The system includes input means for receiving the video data signal and the analog physiological data signal. The system includes a computer processor for executing programmed instructions and for processing, storing and retrieving the video data signal and the analog physiological data signal. A program memory, coupled to the processor, stores program instruction steps for execution by the processor. A video processing component, coupled to the processor, collects, displays, and analyzes live and static video data signals . An analog processing component, coupled to the processor, collects, displays, and analyzes live and static analog physiological data signals. A conduction interval processing component, coupled to the processor, validates, computes and displays conduction intervals . An activation time processing component, coupled to the processor, analyzes and displays activation times. A storage device, coupled to the processor, stores the collected and analyzed video data signal and analog physiological data signal. Finally, the system has an output device, coupled to the processor, for presenting data signals .
Accordingly, an object of the present invention is to increase physician efficiency by collecting, analyzing and displaying live and static, i.e., frozen, video and analog physiological data. Another object of the present invention is to reduce patient radiation exposure time by more quickly collecting, storing and recalling patient information from specific instances in time than is capable in the prior art. Yet another object of the present invention is to provide timely and accurate medical histories easily accessible for future study in human readable form.
A further object of the invention is to provide a computerized, real-time system for the collection, analysis, and display of live video and live analog physiological data signals.
These and still further objectives will become apparent hereinafter.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a block diagram of a system illustrating computer hardware components for practicing the present invention;
FIG. 2 is a "video data processing" flow diagram illustrating video processing and storage for the present invention;
FIG. 3 is an "analog physiological data processing" flow diagram illustrating electrogram processing and storage for the present invention;
FIG. 4 is an "user interface processing" flow diagram illustrating user interface processing and storage for the present invention; FIG. 5 is an "analyze frozen video data" flow diagram illustrating electrogram analysis and storage for the present invention;
FIG. 6 is an "analyze frozen video data" flow diagram illustrating video analysis and storage for the present invention;
FIG. 7 is a "respond to command function" flow diagram illustrating user parameter management and storage for the present invention;
FIG. 8 is a "record and recall events" flow diagram illustrating the event processing and storage capabilities for practicing the present invention;
FIGS. 9A and 9B illustrate analog data waveform characterizations showing basic characteristics of electrogram and electrocardiogram wave morphology; FIG. 10 illustrates an analog channel noise filtering algorithm for efficiently eliminating random or background noise from an incoming electrogram signal;
FIG. 11 illustrates an EKG QRS waveform evaluation algorithm for identifying characteristic components of an incoming electrocardiogram data signal;
FIGS. 12A, 12B and 12C illustrate a HBE AHV waveform evaluation algorithm for identifying the characteristic components of an incoming His bundle electrogram (HBE) data signal; and FIG. 13 illustrates the multitasking software architecture to independently execute software components for data collection, display, and analysis in the present invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS FIG. 1 illustrates an apparatus for implementing a preferred embodiment of the present invention. A computer system, using the method and apparatus described, operates on a video data signal 12, e.g., x-ray fluoroscopy data signal, and on an analog physiological data signal 10 that has been amplified, e.g., electrogram data signal or electrocardiogram (EKG) data signal. The video data signal 12 has a live component and a frozen component. The analog physiological data signal has a live component and a frozen component. The present invention's operation of analyzing the video data signal 12 and the analog physiological data signal 10 includes collection, analysis, recording, storage and display of these data signals. The video data signal 12 and analog physiological data signal 10 are generated from physiological events of the patient. In addition, the video data signal 12 may be a set of one or more video data signals. Similarly, the analog physiological data signal 10 may be a set of one or more analog physiological data signals. In addition, the analog physiological data signal 10 may also be amplified.
An analog input card 14 collects a set of amplified analog physiological data signals and delivers it through a data bus 18 to a processor, i.e., a central processing unit (CPU) 20.
A video input card 16 suitable for receiving a live video data signal 12, from an x-ray producing or equivalent functioning device, collects and temporarily stores the video data signal 12, and then transfers the live video data signal 12 directly to a video display interface card, i.e., a video display card 32, through a feature connector 24 or equivalent functioning device on the video input card 16 that allows for video to be displayed directly from the video input card 16 to one or more display monitors like 34. When storage of the video data signal 12 and the analog physiological data signal is required, the CPU 20 transfers the data from the random access memory (RAM) 30 to a storage media interface card 26 and storage media 28, through a second data bus 22 which is a Small Computer
System Interface (SCSI) or equivalent functioning data bus. When the display of graphics or detailed drawings is necessary, such as electrogram data signal plots or three- dimensional representations of the heart, the CPU 20 draws the representations into the RAM 30. The video display card 32 reads the representations directly from the RAM 30 and then displays the image on the display monitor 34.
The data to be outputted, processed or eventually stored by the system is stored in the RAM 30 during operation. Data stored in the RAM 30 during operation of the invention include static, i.e., frozen, video data signal 12, live and frozen analog physiological data signal 10, live and frozen conduction intervals and activation times, and probe, e.g., catheter, location vectors. This data may eventually be moved along the SCSI bus to a storage device interface card, for subsequent storage in a storage media 28.
In addition, the data that may be outputted to a printer 38, via a printer interface card 36 receiving data from the RAM 30 through the first data bus 18, includes formatted reports and screen dumps, i.e., printouts of live or frozen conduction intervals and activation times, frozen analog physiological data signals 10, frozen video data signals 12, and probe locations vectors. The preferred implementation of the present invention runs on commercially available hardware. The first data bus 18 is an Industry Standard Architecture (ISA) or equivalent functioning data bus. The CPU 20 is preferably a fifty- megahertz (50 MHz) Intel 80486 or equivalent functioning CPU 20. The present invention has been implemented using a
MicroQ 80486/50 personal computer. The preferred amount of RAM 30 is about thirty-two megabytes (32 MB) . The data can be stored in the storage device such as a hard drive, preferably about 300 MB or larger in storage size, or a read/write optical drive, preferably of one-gigabyte (1 GB) or larger in storage size, that is accessed via the storage device interface card 26, e.g. an optical disk interface card or a hard disk interface card. The preferred video display card 32 is a ATI
Technologies VGA Wonder video display card. The preferred display monitor 34 is a NEC xFG MultiSynch® display monitor. The video input card 16 is preferably a Data Translation DT- 3851 Live Video Card and Frame Grabber having a feature connector to allow for direct display of live video to the display monitor 34 without intervention by the CPU 20. The analog input card 14 is preferably a multi-channel National Instruments A to D Card AT-MIO-16F-5. In addition, data can be printed on a Hewlett-Packard LaserJet® or equivalent functioning printer.
The operating system environment for the preferred embodiment of the present invention uses Microsoft Windows™ or equivalent functioning software.
Turning now to one of the unique processing aspects of the present invention, FIG. 2 is an overall logical diagram characterizing video data signal 12 processing. Shown is processing and storage of live and frozen video data signal 12 (i.e., video data which is live and frozen) . The incoming video data signal 12, is sampled by the video input card 16 into a video sample buffer which is incorporated on the video input card 16. The individual pixel values stored in the video sample buffer of the display card are then sampled to a range of values determined by a video gain 40, a parameter set by an operator of the invention, usually a physician such as a cardiologist, through either display interaction or predetermined default values.
The video data signal 12 and the video gain 40 are combined to provide a live video data input 42 to a software video sample buffer 44. Each frame in the video sample buffer 44 is an output 46 that is copied as live video data to provide an input 48 into the live video display buffer 48. When the operator of the invention issues a live video display command (cmd) 54 via display interaction, the output from the live video display buffer 48 becomes an output 50 of the video frames that are then displayed on the display monitor 34. The output is displayed within a window, whose location on the display monitor 34 is specified by the operator of the invention in a live video window 52 data store. A data store is a receptacle for data maintenance. Also, the processing for commands is discussed in detail below.
The output 50 from the live video buffer is also placed as frozen video data into a video data backing store 56. When specific frames of the live video are sought to be captured, the operator of the invention chooses or tags, either through display interaction or predetermined default value, the specific frame of video to be retrieved from the frozen video data signal 12 and copied from a video data backing store 56 to a frozen video display buffer 58. The frame is subsequently displayed on the display monitor 34 when the operator of the invention issues, through display interaction, a frozen video display cmd 62. The information is displayed in a frozen video window, whose location is kept in a frozen video window 60 data store.
The frozen video data signal 12 is also loaded into the video data backing store 56 from the raw video data files 64 residing on the storage media 28 (the process also works vice versa where frozen video data signal 12 is transferred from the video data backing store 56 to the raw video data files 64) . Transfer from the raw video data files 64 to the video data backing store 56 occurs when the operator of the invention commands review of a marked event (discussed further below) whose video data signal 12 does not currently reside in the video data backing store 56. The process of moving frozen video data signal 12 from the video data backing store 56 to the raw video data files 64 occurs during background processing when the video data backing store 56 becomes too filled to allow the storage of further frozen video data signal 12.
During the usage of the invention, analysis of the frozen video data signal 12 residing in the video data backing store 56 is accomplished. Results of the analysis include determination of catheter placement locations of the heart, which includes recording and recalling particular events using data from the video data backing store 56 and the video analysis results buffer 68. The catheter placement location, further illustrated in FIG. 6, is determined through an image processing algorithm that uses the unique combination of an initial x-ray registration, an initial x-ray orientation, and a new x-ray orientation.
The output 66 from the video analysis results are placed into a video analysis results buffer 68. Upon command by the operator of the invention, either through display interaction or predefined default value, the video analysis results are gotten from the video analysis results buffer 68 and copied into a video analysis results display buffer 70. These results are plotted on the display monitor 34 in a window, whose location is provided by a command stored in the video analysis results display cmd 72, the operator of the invention, through display interaction, in a video analysis results window 74 data store. The interface for display interaction is described below.
Since the video analysis results buffer 68 is constantly being updated, background processing is utilized to store the video analysis results from the video analysis results buffer 68 into a video analysis results database 76 kept on the storage media 28. Retrieval or loading of this data from the video analysis results database 76 may be needed if the operator of the invention chooses to later review stored video analysis results.
In addition to the video data signal 12, the present invention also has the unique capability of using the analog physiological data signal 10 for analysis. FIG. 3 provides a general logical diagram characterizing analog physiological data signal processing. Shown is processing and storage of live and frozen analog data signal 10 (i.e., analog data which may be live or frozen) , specifically the amplified analog physiological data signal 10.
The incoming set of the analog physiological data signal 10 is sampled at a rate predefined by the invention or at a rate selected by the operator of the invention through display interaction and is stored in an analog channel gains 78 data store. The analog physiological data signal 10 and the contents of the analog channel gains 78 data store are combined to provide the live analog data input to be placed into an analog sample buffer 80.
Each frame in the analog sample buffer 80 provides an output that gets copied into a live analog display buffer 82. The analog physiological data signal 10 is then displayed on the display monitor 34 within a specific window. To display the data the operator of the invention issues, through display interaction, a live analog display cmd 84. The specific location of the window on the display monitor 34 is provided by the operator of the invention through display interaction in a live analog window 86 data store.
When commanded by the operator of the invention, a specific time period of the analog physiological data signal 10 is selected or tagged, and then copied, as frozen analog data signal 10 from the live analog display buffer 82 and placed into an analog data backing store 88. The operator of the invention selects or gets the frozen analog data signal 10 from the analog data backing store 88 for transfer to a frozen analog display buffer 90 and subsequent display in a frozen analog window on the display monitor 34. The operator of the invention issues through display interaction, a frozen analog display cmd 92 to display the frozen analog data, whose location for display of this window has been provided by the operator in a frozen analog window 94 data store. The analog physiological data signal 10 that has been frozen is also transferred from the analog data backing store 88 to a raw analog data file 96 residing on the storage media 28 when the frozen analog data is stored on the storage media 28. Similarly, the analog physiological data signal 10 that has been frozen can be loaded and transferred from the raw analog data file 96 to an analog data backing store 88.
Transfer of the analog physiological data signal 10 from the raw analog data file 96 to the analog backing store 88 occurs when the operator of the invention commands review of the marked event whose analog physiological data signal 10 does not currently reside in the analog data backing store 88. Moving the analog physiological data signal 10 that has been frozen from the analog data backing store 88 to the raw analog data files 96 occurs during background processing when the analog data backing store 88 becomes too filled to allow the storage of further frozen analog physiological data signals 10. During usage of the invention, analysis of the analog physiological data signal 10 that has been frozen and residing in the analog data backing store 88 is accomplished. Results of the analysis include determination of the e.g., electrogram and electrocardiogram waveform characteristics and computation of e.g., electrogram channel conduction intervals, onset times and activation times. Analog physiological data signal analysis results are placed into a analog analysis results buffer 98. Through display interaction, the operator of the invention commands these results to be retrieved and copied into a analog analysis results display buffer 100. When the operator of the invention provides through display interaction, an analog analysis results display cmd 102 these results are plotted in a window on the display monitor 34. The location of this window is provided by the operator of the invention, through display interaction, in a analog analysis results window 104 data store.
Since the analog analysis results buffer 98 is constantly being updated, background processing is utilized to move the contents of this buffer for storage into the analog analysis results database 106 residing on the storage media 28. In addition data from the analog analysis results display buffer 100 is put into the analog analysis results buffer 98 for storage to the analog analysis results data base 106. When the analyzed data is retrieved or loaded from the analog analysis results data base 106 into the analog analysis results buffer 98, it can be displayed via the analog analysis results display buffer 100.
The results from the analysis of the analog physiological data signal 10 can also be recorded and recalled from the analog analysis results buffer 98 and placed in the frozen analog display buffer 90 for display on the display monitor 34 when commanded by the operator of the invention through display interaction via the frozen analog display cmd 92. The operator of the invention through display interaction also provides the location of the window on the display monitor 34 in the frozen analog window 94 data store. Looking to FIG. 4 shows how the operator of the present invention interacts with the system through a series of display interactions. FIG. 4 provides a general logical diagram characterizing processing and storage of user interfaces and interactions with the operator of the invention.
During initialization of the invention, an interface description table 108 is loaded one description at a time from a file stored on the storage media 28. Using the descriptions stored in the interface description table 108, interfaces are actually created in memory and an initial interface is displayed. The number of this interface, generally referred to as interface number 110, is stored into a current interface 112 data store. Characteristics of each element in the current interface are extracted from the object instantiation tables 114 stored in the data store current element characteristics 116 and used to display a user interface window. The location of this window is stored in a user interface window 118 data store.
When the operator of the invention through display interaction uses the present invention interface, a process to manage interfaces places the processed command into a current user cmd 120 data store. This command is broken into two components - cmd type 122 and cmd argument 124. A specific response to the command is accomplished. If this response involves transition to a new interface, an interface transition table 126 is consulted to set the number of the new interface into the current interface 112 data store. Characteristics of each of the elements in the new interface are copied into the current element characteristics 116 data store. The new interface is then displayed in the user interface window, whose location is stored in the user interface window 118 data store.
Turning now to FIG. 5 which illustrates more detail of the processing and storage of the analog physiological data signal 10 shown in FIG. 3. The logical diagram characterizes processing and storage of the frozen analog physiological data signal 10. Noise filter parameters 128, either predetermined as system default values or set by the operator of the invention through display interaction, are applied to the analog physiological data stored in the analog data backing store 88 to filter the analog data. This operation yields noise filtered analog data 130.
The noise filtered analog data 130 is used, along with conduction event recognition parameters 136, as the basis for computing live conduction intervals. The noise filtered analog data 130 is also used, along with activation time recognition parameters 138, to determine live activation times. The resulting conduction intervals are placed into a conduction interval store 132 data store and activation time are placed into an activation time store 134 data store.
Both the conduction interval and the activation time are copied and placed into the analog analysis results buffer 98. Three kinds of display plots are then updated during real-time operations. One plot display shows the current conduction interval values relative to predefined maximum and minimum values that are stored in the predefined maximum (max) and minimum (min) values 140 data store. Actual conduction intervals may be plotted over time or relative to each other, dependent on the current definition stored in the conduction interval plot configuration 142 data store. The updated conduction interval display plots are stored in the analog analysis results display buffer 100.
A similar plot configuration is defined for the activation time in a activation time plot configuration 144 data store and is used to update the activation time display plot. These plot updates are stored in the analog analysis results display buffer 100 for ultimate update on the display monitor 34.
From the analog analysis results buffer 98, a specific time segment of the conduction interval or activation time may be frozen as illustrated in FIG. 3. This frozen data may then be recorded for recall in the future. This process is discussed in more detail below.
Turning next to FIG. 6, more detail of the video data signal 12 processing and storage from FIG. 2 is illustrated. 2. The logical diagram characterizes processing and storage of the frozen video data signal 12. Video data stored in the video data backing store 56 by the operator is the basis for analytical activities including determining the x-ray registration and the x-ray orientation used to analyze a frozen x-ray image to determine current catheter location within the patient's heart.
The x-ray registration is the location of the catheter with a known position in the heart. The known position is either predefined or obtained using vector locations. The initial x-ray orientation is the operator specified beginning position angle of the x-ray, determined by the angle of the line of sight of the x-ray relative to the longitudinal axis of the patient. The new x-ray orientation, provided through display interaction, is the position angle of the x-ray, taken where the user has moved the position of the x-ray system.
Briefly looking back to FIG. 2, the x-ray registration results are sent to the frozen video display buffer 58 and video analysis results display buffer 70 from where the video analysis results are placed into the video analysis results buffer 68 for storage into the video analysis results database 76 on the storage media 28.
The process of determining catheter location is done using an edge detection algorithm 146. Using the video data stored in the video data backing store 56, the edge detection algorithm 146, along with the beginning x-ray registration, stored in an initial x-ray registration 148 data store, the beginning x-ray orientation, stored in an initial x-ray orientation 150 data store (both parameters were discussed in FIG. 2), and a new x-ray orientation kept in a current x-ray orientation 151 data store, indicated through display interaction, provides a computed current x- ray registration. The resultant output of this calculation is placed in a current x-ray registration 152 data store.
The parameter in the current x-ray registration 152 data store, along with a transformation equation, stored in a transformation equations 154 data store, is used to compute catheter location. Upon calculation of the catheter location, identified as a vector, it is added to the list of probe locations maintained in a catheter location store 156 data store. This vector is then copied and placed into a video analysis results buffer 68.
From the video analysis results buffer, the vector is used to update the image analysis display. The vector is copied from the video analysis results buffer 68 and is overlaid with a three-dimensional representation of the heart, which is set within the system and kept in the 3D heart graphic description 157 data store. The resulting image of the catheter vector location superimposed on the three-dimensional representation of the heart is then stored in the video analysis results display buffer 70 data store to update the image in the video analysis windows displayed on the display monitor 34. Specific applications of the present invention include analyzing the frozen video data signal 12 to determine the thickness of the ventricle wall. Using the known edge detection algorithm 146 data store along with the parameter of the video data backing store 56 determines ventricle wall thickness, whose value is placed in a ventricle wall location 158 data store.
The parameter in the ventricle wall location 158 data store is also used to determine stenosis. Stenosis is defined to be blockage of the flow of blood within a heart vessel due to shrinkage of that vessel. The parameters in the ventricle wall location 158 data store, the known edge detection algorithm 146 data store, the video data backing store 56, along with a normal vessel size parameter, are all utilized to analyze the frozen video data signal 12 in order to identify heart vessel stenosis. The normal vessel size parameter is provided through display interaction by the operator of the invention and stored in a normal thickness 160 data store. The value of the heart vessel stenosis analysis provides an input to a ventricle stenosis locations 162 data store. A similar approach is used for structure analysis performed by radiologists.
Both the ventricle wall location and the ventricle stenosis location are also placed in the video analysis results buffer 68. Data within the video analysis results buffer 68 is copied into the video analysis results display buffer 70 for updating the image in the video analysis windows displayed on the display monitor 34.
How the information collected and analyzed for display is controlled will now be discussed. FIG. 7 provides a logical diagram characterizing specific processing of individual commands by the operator of the invention. During the first step of responding to operator commands, the parameters in the cmd argiαments 124 data store are copied into the appropriate data stores required for processing as discussed earlier. Once the arguments have been copied into the appropriate data store, the affected window on the display monitor 34 is updated to reflect the updated parameters thereby controlling the behavior of the display monitor 34.
Specific parameters that may be dynamically modified, or set by the operator of the invention through display interaction, include the parameters stored in the following data stores: activation time recognition parameters 138 data store, the activation time plot configuration 144 data store, the noise filter parameters 128 data store, the conduction event recognition parameters 136 data store, the initial x-ray registration 148 data store, and the x-ray orientation 150 data store. The operator of the invention, through display interaction, may also set one or more channel display labels that are stored in a channel labels 172 data store.
From the cmd arguments 124 data store, the plot variables and scale value parameters that control conduction interval display are placed in the conduction interval plot configuration 142 data store. The output from the conduction interval plot configuration 142 data store is used to update the conduction interval axis and plot values on the display monitor 34.
The output from the cmd arguments 124 data store also is used in setting video gain stored in the video gain 40 data store and ultimately is used with the video data signal 12. Similarly, the analog channel gain may be set and placed in the analog channel gains 78 data store from where it ultimately is used with the analog physiological data signal 10.
In addition, parameters for window locations and sizes may be set and placed in a live video window 164 data store, a static video window 166 data store, a live analog window 168 data store, and a static video window 170 data store. The output from these data stores is used to move and resize the appropriate window on the display monitor 34. For an example of the two-step processing sequence, an operator may input moving the live video window location on the display monitor 34. During the first step of processing, both the live video window location and the live video window size will be copied from the cmd arguments 124 of the user command message received by the invention into the live video window 164 data store. Once the location and size of the new window have been recorded, the actual live video stream is redirected on the display monitor 34. Subsequent processing of the live video, as illustrated in FIG. 2, will ensure that the video processing hardware displays the live video stream within the new window.
Similar evaluations can be performed for each potential operator user command.
The information at this point may also need to be collected for recall in the future. To provide recalled data in a meaningful way, the video data signal 12 and the analog physiological data signal 10 are correlated as they are recorded. FIG. 8 provides a logical diagram characterizing the correlating and processing to record and recall events when commanded by the operator of the invention.
Prior to performing any exploratory diagnostics, the operator commands the present invention using display interaction to record the nominal state of the heart. Nominal status is usually the first event of interest to the physician. During the diagnosis, the operator will often encounter further physiological activity of interest which would also need to be recorded, stored and later recalled. In general, FIG. 8 shows how the results from the video data backing store 56, the video analysis results buffer 68, the analog data backing store 88 and the analog analysis results buffer 98 data stores are used to update an event descriptor which in turn is used to eventually update the frozen displays stored in the frozen video display buffer 58, the video analysis results display buffer 70, the frozen analog display buffer 90 and the analog analysis results display buffer 100 data stores.
The operator of the invention also can command the recording of an arbitrary event through display interaction. A commanded and recorded set of events for a specific study are maintained by the invention in an event log 174 data store. Retrieving events from the event log 174 data store is accomplished through display interaction by selecting a specific event from the event log. An event is characterized by several important data elements. An unique event number provides a simple identification mechanism for the event. Frozen video data shows the placement of the catheters at the time of the indicated event. Video analysis results characterize the state of the heart resulting from the analysis of the e.g., history of tracked probe location vectors. Frozen analog data registers the wave morphology of the e.g., electrocardiogram or the electrogram at the time of the indicated event. Analog analysis results characterize the state of the heart resulting from the analysis of the e.g., conduction intervals, onset times, and activation intervals. An unique identifier for each of these data components of the event are stored with the event number as an entry in the event log 174. For example, when the operator of the invention selects the recording of a specific event, several specific functions are performed. In the first function, called an update event descriptor, the value of the last recorded event number is retrieved from the last recorded event number 176 data store. Specific identifiers are retrieved for data components associated with the event. The unique identifier, along with the data component identifiers, are stored as an event descriptor in the event log 174. The unique identifier is entered into a current recalled event number 178 data store. A new value is written to a last recorded event number 176 data store, indicating the occurrence of a new event. The value stored in the current recalled event number 178 data store is then retrieved by a function update frozen displays. This event number is used to extract the event descriptor from the event log 174. Data component identifiers are then extracted from the event descriptor stored on the event log database 180.
These identifiers are utilized to directly access the data in the appropriate data stores, by copying the event frozen data into the appropriate display buffers. All four components associated with the frozen event are simultaneously displayable in separate windows on the display monitor 34. Recall of a specific event also requires several processing steps. The specific event number is extracted from the cmd arguments 124 data store and copied into the current recalled event number 178 data store. Once this data store is updated, the function update frozen displays uses this event number, the event log 174 data store, and the frozen data stores to update the appropriate windows on the display screen.
As with other data stores in the present invention that store multiple values, the event log 174 data store is fixed in size. When the event log 174 data store becomes filled due to extensive recording of events by the operator of the invention, a function store event descriptor is used to copy entries of the event log 174 data store to an event log database 180 that resides on the storage media 28. If the event descriptor for a recalled event has been sent to the event log database 180 in this manner, the function load event descriptor serves to retrieve the event descriptor from the event log database 180 into the event log 174 data store maintained in the RAM 30.
Placing the present invention in the context of analyzing the analog physiological data signal 10, FIG. 9a provides a logical diagram characterizing the EKG waveform while FIG. 9b provides a logical diagram characterizing the electrogram waveform. An EKG signal that is characterized as well-behaved exhibits unique waveform behavior.
Looking first to FIG. 9A the EKG and electrogram waveforms primarily consist of a Q component, a R component and a S component. This component trio forms the QRS wave, the primary component of an EKG waveform. These waves may exhibit an initial positive deflection or an initial negative deflection. In addition, each QRS wave may be biphasic (containing both positive and negative deflection) or monophasic (containing either only a positive deflection or only a negative deflection) . Biphasic QRS waveforms can be quantitatively characterized according to three parameters: QRS onset time, QRS magnitude, and QRS activation time. Monophasic QRS waveforms are only characterized by onset time and magnitude. QRS onset 184 is defined to be the point in time at which the EKG waveform begins to deviate from a QRS baseline value 182. The QRS wave exhibits a QRS magnitude 186 at the time after the QRS onset 184 time at which the maximum (positive) or minimum (negative) deflection from the QRS baseline value 182 of the EKG waveform occurs. Finally, a QRS activation 188 time of the QRS waveform is determined according to the time after the QRS magnitude 186 time at which the EKG waveform crosses the QRS baseline value 182 of the EKG wave, moving from positive to negative or negative to positive.
Looking next to FIG. 9B for measurement of the conduction interval, a His bundle electrogram (HBE) waveform is considered by physicians to be the most reliable and most indicative of cardiac conduction times. This electrogram typically exhibits three important components: A, H, and V. Each component may have its initial deflection in both the positive and negative directions. Additionally, each component may be either biphasic or monophasic. Each component may be quantitatively characterized. This characterization includes an AHV baseline value 190, an A onset time 192, an A magnitude 194, an A activation time 196, a H onset time 198, a H magnitude 200, a H activation time 202, a V onset time 204, a V magnitude 206, and V activation time 208. Definitions of onset time, magnitude time and value, and the activation time are the same as provided earlier.
To determine whether a particular analog physiological data signal 10 is acceptable, i.e., reliable, various calculations are performed on the data collected by the present invention. In particular, FIGS. 10, 11, 12A, 12B, and 12C are state diagrams which illustrate the unique process to determine whether a data signal is reliable, i.e., valid, for calculating conduction interval and activation time respectively. A state is a mode of behavior of the analog physiological data signal 10.
Initially, FIG. 10 illustrates a state diagram of the preferred embodiment of the present invention characterizing the unique algorithm through which noise is filtered from any of the amplifier analog input channels in the filter analog data analysis shown in FIG. 5. This algorithm is based upon threshold exceedence. Key parameters for this algorithm are a minimum threshold and a required count for each analog channel . Both parameters are predetermined either through system default or operator specification via display interaction.
An input to the FIG. 10 algorithm is ch(i, t) , an analog physiological data signal channel value, where i is the channel number and t is the time. Each of the analog physiological data signal channels is sampled to determine an input value for ch(i, t) . The algorithm in FIG. 10 is applied to this input data value. As a result of this application, a next state is determined. This next state may be the same state as before or a new, different state. Depending on the determined next state, the input data value sampled from the analog physiological data signal channel will either be rejected or passed to the algorithms in FIGS. 11, 12A, 12B and 12C for determination of the onset time, the magnitude time, the activation time, and also the conduction intervals.
Initially, each analog physiological data signal channel, beginning at a start state 210, automatically transitions to a noisy channel state 212. New analog physiological data signal channel values, ch(i, t) , below the minimum threshold for the channel, are rejected leaving the channel in the noisy channel state 212. When the first input analog physiological data signal channel value ch(i, t) exceeds the minimum threshold for the channel, the channel transitions to an increasing state 214. However, the input analog physiological data signal channel value ch(i, t) is still rejected.
During subsequent channel sampling, while the channel is in the increasing state 214, a number of possible responses can occur when the algorithm is applied to a new input analog physiological data signal channel value. If the new input analog physiological data signal channel value ch(i, t) falls below the threshold, the channel returns to the noisy channel state 212, rejecting the new channel input value.
If the new input analog physiological data signal channel value ch(i, t) again exceeds the minimum threshold and the number of successive exceedences does not exceed a required count, the channel remains in the increasing state 214, but the input channel data value is still rejected. If the new input analog physiological data signal channel value ch(i, t) again exceeds the minimum threshold and the number of successive exceedences does exceed the required count, the channel transitions to a noise filtered channel state 216. In this case, the new input analog physiological data signal channel value ch(i, t) is passed to the algorithms illustrated in FIGS. 11, 12A, 12B and 12C. for analog results functional processing as shown in FIG. 3. While in the noise filtered channel state 216, the channel remains in the noise filtered channel state 216 as long as the input analog physiological data signal channel value ch(i, t) exceeds the channel minimum threshold. Input data values processed while in this state will be passed to the algorithms in FIGS. 11, 12A, 12B and 12C for analog results functional processing as shown in FIG. 3.
Similarly, FIG. 10 also depicts what occurs to analog physiological data signal channels in a noise filtered channel state 216 that begin to fall below the minimum threshold. That falling value may be temporary, caused by noise, or may be permanent. A decreasing state 218 is employed to assure that a sequence of subsequent input analog physiological data signal channel values ch(i, t) occurs prior to classifying the channel as in the noisy channel state 210 and rejecting input channel data values. During the decreasing state 218 processing, new analog physiological data signal channel values ch(i, t) are rejected. However, the last filtered channel input value is passed to the algorithms in FIGS. 11, 12A, 12B and 12C for analog results functional processing, as indicated in FIG. 3.
It should be understood that noise filtering could also be accomplished through digital filtering, fast- Fourier-transform analysis or equivalent functioning process.
Next, FIG. 11 is a state diagram characterizing the algorithm by which the QRS waveform and its quantitative ' constituents are evaluated in the determining activation time for the EKG data signal analysis shown in FIG. 5. The primary input to this algorithm is the filtered channel value ch(i, t) , where i is the channel number and t is the time, released by the noise filtering algorithm. Analog channel state changes in this algorithm are based on comparison of successive, filtered, EKG channel values. Using simple comparisons rather than detailed calculations, such as digital filters or transforms, provides a computationally efficient and highly accurate algorithm. However, noise filtering could also be accomplished through digital filtering, fast-Fourier-transform analysis or equivalent functioning process.
Viewing the process through an EKG data signal, each EKG channel can exist in one of several states: a QRS baselining 220, a positive QRS increasing 222, a positive QRS decreasing before activation 224, a negative QRS decreasing 226, a negative QRS decreasing before activation 228, and a QRS terminating 230. These states correspond to the various portions of the QRS waveform illustrated FIG. 8. As long as successive, filtered, EKG channel values are approximately equal, the baseline is recording and the QRS baselining state is maintained.
When the EKG channel value ch(i, t) first exceeds its previous value ch(i, t-1) the EKG onset time is recorded and the channel transitions into the positive QRS increasing state 222. As long as successive, filtered, EKG channel values are increasing, this state is maintained. At the first occurrence of an EKG channel value ch(i, t) going below its previously observed value ch(i, t-1) , then the EKG magnitude time and value are recorded. The channel transitions to the positive QRS decreasing before activation state 224.
If the EKG channel values continue to decrease, the channel remains in the positive QRS decreasing before activation state 224. Once the channel value goes below the recorded EKG baseline, the EKG transitions into the QRS terminating state 230 and the EKG activation time is recorded. This condition indicates that the biphasic QRS waveform has been encountered. The EKG channel remains in the QRS terminating state 230 until successive channel values, ch(i, t) and ch(i, t-1), are approximately equal.
This condition indicates that the channel baseline is again occurring. As a result, the EKG channel moves to the QRS baselining state 220.
While in the positive QRS decreasing before activation state 224, successive channel values may become approximately equal. If this situation occurs, a monophasic QRS form has been encountered. The EKG channel now transitions to the QRS baselining state 220 and baseline recording resumes again. Similarly a symmetric set of state transitions is provided for the EKG waveform whose QRS component begins with a negative deflection from the baseline. The primary difference between this portion of the algorithm and the previous algorithm elements is that all the algebraic signs have been reversed for the conditions controlling the state transition. Thus, when the EKG channel value ch(i, t) is exceeded by its previous value ch(i, t-1), the onset time is recorded and the channel transitions into the negative QRS decreasing state 226. As long as successive, filtered EKG channel values ch(i, t) are decreasing, this state is maintained. At the first occurrence of an EKG channel value going above its previously observed value, then the magnitude time and value are recorded. The channel transitions to the negative QRS increasing before activation state 228.
If the EKG channel values continue to increase, the channel remains in the negative QRS increasing before activation state 228. Once the channel value goes above the recorded baseline, the EKG transitions into the QRS terminating state 230. This condition indicates that the biphasic QRS waveform has been encountered. The EKG channel remains in the QRS terminating state 230 until successive channel values, ch(i, fc) and ch(i, t-1), are approximately equal. This condition indicates that the channel baseline is again occurring. As a result, the EKG channel moves to the QRS baselining state 220.
While in the negative QRS increasing before activation state 228, successive channel values may become approximately equal. If this situation occurs, a monophasic QRS waveform has been encountered. The EKG channel transitions to the QRS baselining state 220 and baseline recording resumes again.
Finally, FIGS. 12A, 12B and 12C are state diagrams characterizing the algorithm by which the AHV waveform and its quantitative constituents are evaluated in the determination of the activation time for the analog physiological data signal 10 analysis shown in FIG. 5. The primary input to this algorithm is the filtered channel value released by the noise filtering algorithm as shown in FIG. 10. Analog channel state changes in this algorithm are based on comparison of successive, filtered, HBE electrogram channel values HBE(t) . Using comparisons, rather than detailed calculations used for digital filters or transforms, provides a computationally efficient and accurate algorithm. However, noise filtering could also be accomplished through digital filtering, fast-Fourier- transform analysis or equivalent functioning process. The HBE electrogram channel can exist in a number of states. Several of the states are associated with determining A component parameters. Other states are needed for evaluating H and V component parameters . Each HBE component (A, H, V) utilizes four states: baselining, increasing, decreasing, and terminating. Conditions for maintaining the various states and for transitioning among the states are similar to those illustrated in FIG. 11. Separate baselines are maintained for each of the A, H, and V components. Each component can be monophasic or biphasic. Additionally, the HBE electrogram can exhibit one, two, or three of the components, such as A only, A and H only, or A, H, and V. Conditions and transitions within the algorithm accommodate these possibilities.
Each of the components of the HBE wave is numerically characterized by an algorithm similar to the algorithm described in FIG. 11. In FIG. 12A, the characteristics of the A component are determined. In FIG. 12B, H component characteristics are quantified. Finally, characterization of the V component is performed by the algorithm in FIG. 12C.
As an example of the operation of these algorithms, consider the specific algorithm for A component characterization depicted in FIG. 12A. Viewing the process through the analog physiological data signal 10, specifically an HBE data signal, each A component can exist in one of several states: an A baselining 232, an A increasing 234, an A decreasing 236 and an A terminating 238. These states correspond to the various positions of the A component of the HBE waveform illustrated in FIG. 9B. As long as successive, filtered HBE channel values are approximately equal, the HBE is in the A baselining state 232, the A baseline of the AHV baseline value 190 is recording, and the A baselining state 232 is maintained. When the HBE data signal channel value ch(i, t) first exceeds its previous value ch(i, t-1) , the A onset time 192 is recorded and the HBE data signal channel value transitions into the A increasing state 234. As long as successive, filtered, HBE data signal channel values are increasing, this state is maintained. At the first occurrence of the HBE data signal channel value ch(i, t) going below its previous observed value ch(i, t-1) , then the A magnitude time and value are recorded. The channel transitions to the A decreasing state 236. As the HBE data signal channel value continues to decrease, the HBE data signal channel value remains in the A decreasing state 236. Once the HBE data signal channel value ch(i, t) goes below the recorded A baseline, the A activation time is recorded and the HBE data signal channel value transitions to the A terminating state 238. This state is maintained until two successive inputted HBE data signal channel values, chfi, t-1) and ch(i, t) , are approximately equal. When this occurs, the HBE data signal channel value transitions to a H baselining 240 state described in FIG. 12B.
Similarly, consider the specific algorithm for H component characterization depicted in FIG. 12B. Each H component can exist in one of several states: the H baselining 240, a H increasing 242, a H decreasing 244 and a H terminating 246. These states correspond to the various positions of the H component of the HBE waveform illustrated in FIG. 9B. As long as successive, filtered HBE channel values are approximately equal, the HBE is in the H baselining state 240, the H baseline of the AHV baseline value 190 is recording and the H baselining state 240 is maintained.
When the HBE data signal channel value ch(i, t) first exceeds its previous value ch(i, t-1), the H onset time is recorded and the HBE data signal channel value transitions into the H increasing state 242. As long as successive, filtered, HBE data signal channel values are increasing, this state is maintained. At the first occurrence of the HBE data signal channel value ch(i, t) going below its previous observed value ch(i, t-1), then the H magnitude time and value are recorded. The channel transitions to the H decreasing state 244.
As the HBE data signal channel value continues to decrease, the HBE data signal channel value remains in the H decreasing state 244. Once the HBE data signal channel value ch(i, t) goes below the recorded H baseline, the H activation time is recorded and the HBE data signal channel value transitions to the H terminating state 246. This state is maintained until two successive inputted HBE data signal channel values, ch.i, t-1) and ch(i, t) , are approximately equal. When this occurs, the HBE data signal channel value transitions to a V baselining state 248 described in FIG. 12C.
Finally, the specific algorithm for V component characterization is depicted in FIG. 12C. Again, each V component can exist in one of several states: the V baselining 248, a V increasing 250, a V decreasing 252 and a
V terminating 254. These states correspond to the various positions of the V component of the HBE waveform illustrated in FIG. 9B. As long as successive, filtered HBE channel values are approximately equal, the HBE is in the V baselining state 248, the V baseline of the AHV baseline value 190 is recording, and the V baselining state 254 is maintained. When the HBE data signal channel value ch(i, t) first exceeds its previous value ch(i, t-1) , the V onset time is recorded and the HBE data signal channel value transitions into the V increasing state 250. As long as successive, filtered, HBE data signal channel values are increasing, the V increasing state 250 is maintained. At the first occurrence of the HBE data signal channel value ch(i, t) going below its previous observed value ch(i, t-1), then the
V magnitude time and value are recorded. The channel transitions to the V decreasing state 252. As the HBE data signal channel value continues to decrease, the HBE data signal channel value remains in the V decreasing state 252. Once the HBE data signal channel value ch(i, t) goes below the recorded V baseline, the V activation time is recorded and the HBE data signal channel value transitions to the V terminating state 254. This state is maintained until two successive inputted HBE data signal channel values, ch.i, t-1) and ch(i, t) , are approximately equal. When this occurs, the HBE data signal channel value transitions to an A baselining state 232 described in FIG. 12A.
The algorithms illustrated in Figs. 10, 11 and 12 are used to compute conduction intervals. Five basic phases of activity are performed. First, the noise filter algorithm of FIG. 10 is applied to all analog channel values. Next, the algorithm of FIG. 11 is used to determine the parameters of the EKG channels. Then, the HBE electrogram channel is evaluated using the algorithm in FIGS. 12A, 12B and 12C to determine the components of the HBE electrogram. Fourth, components of the HBE electrogram and the EKG analog channels are correlated to validate the calculated onset times, magnitude times and values, and the activation times. Finally, validated channel components are utilized to determine conduction intervals . The conduction intervals are calculated using the difference in onset times.
The present invention discussed above operates in a multitasking software architecture environment characterized in FIG. 13. In this approach to implementing the invention, these software components are independently executing code modules that share the CPU 20. The core components of the multitasking architecture include a user interface manager 256, a scheduler 266, and a global shared memory 268. The other independent software tasks, i.e., subcomponents, within the architecture include a video display manager 258, an analog physiological display manager 260, an analysis results display manager 262, a backing store manager 264. In the preferred embodiment of the present invention, these tasks or subcomponents are medical application subcomponents . In the preferred embodiment, the architecture of the present invention incorporates a generic architecture consisting of a master controller, a global shared memory and a scheduler as discussed in High Speed Windows Applications : Mul ti tasking Design Methods, by Dr. Bruce
Krell (ISBN 0-553-08992-7, Bantam Professional Books, 1993), which is hereby incorporated by reference.
Each software component manages a specific activity. The user interface manager 256 captures user commands, instructs the scheduler 266 to activate and terminate other tasks (i.e., subcomponents) , and relays user commands to the various application tasks. The scheduler 266 activates application tasks, terminates application tasks, and commands the application tasks to use a limited number of the CPU 20 cycles.
Each of the display manager tasks - the video display manager 258, the analog physiological display manager 260 task or subcomponent, and the analysis results display manager 262 task - collects real-time input from a specific hardware interface, places the input into the global shared memory 268, performs analysis as commanded by the operator of the invention, and updates the assigned display monitor 34.
The backing store manager 264 is a background task that efficiently manages the limited space allocated for backing stores, loading and offloading data from and to the storage device 28. In order to allow multiple tasks to access stored analog and video data and stored analog and video analysis results, the global shared memory 268 is utilized.
A multitasking software architecture is necessary to assure real-time performance by the invention. By having the scheduler 266 assign the CPU 20 segments to the application tasks, each of the real-time interfaces gets its input data partially serviced in a round-robin fashion. Continuously cycling through the application tasks to partially service each of the input interfaces assures that none of the input interfaces is starved for the CPU 20 cycles, resulting in lost data. Time slice sharing of the CPU 20 to obtain high performance throughput is a characteristic commonly utilized by operating systems and other real-time applications. In the preferred embodiment of the present invention the operating environment consisting of Microsoft Windows™, requires task scheduling to be implemented by the scheduler 266. Other operating system environments typically provide task time slicing of the CPU 20.
Each of the specific tasks of the multitasking software architecture have functional processing capabilities assigned to them. The allocation of functional capabilities to tasks enables implementation of the present invention. There are six (6) specific architecture tasks. The functional flows are allocated to specific tasks. The first is the user interface manager 256 task which has functional capability of user interface processing, as shown in FIG. 4, and respond to cmd, as shown in FIG. 7. This is an example of one-one mapping of the architecture where the set of functional capabilities is associated with a single architecture task.
Next, there is the video display manager 258 task whose allocated functional flows include the video data signal 12 processing illustrated in FIG. 2 except the video backing store 56 functions and the raw video data files 64 functions. The analog physiological display manager 260 task allocated functional flows include the amplifier analog physiological data signal processing illustrated in FIG. 3 except for the analog data backing store 88 functions and the raw analog data files 96 functions. The backing store manager 264 architecture task has the allocated functional flows of the video data signal 12 processing with respect to the video backing store 56 functions and the raw video data files 64 functions shown in FIG. 2. In addition, it has allocated the functional flows of the analog physiological data signal 10 processing with respect to the analog data backing store 88 and the raw analog data files 96 functions. The capabilities of the video data signal 12 processing and the analog physiological data signal 10 processing that span multiple architecture tasks are referred to as split mapping situations.
The analysis results display manager 262 task is allocated functional flows of analyzing the frozen video data signal 12 shown in FIG. 2 and analyzing the frozen analog physiological data signal 10 shown in FIG. 3.
Finally, the scheduler 266 architecture task has allocated functional flows that are required to interface with Microsoft Windows™.
The preferred embodiment of the present invention utilizes a layered design within each software task. At the top layer of the design is the control and user interface management layer. The functional processing flow supported by this design layer include interfacing with the operator of the invention and with Microsoft Windows™. The allocated functional flows for this design layer include cyclic executive, window procedure, user interface processing and respond to command shown in FIG. 7.
Application specific functionality appears in the second layer of the internal software task design. The functional processing flow supported by this design layer includes interfacing with application specific analysis functions including the conduction interval and the activation time, illustrated in FIG. 5, and the catheter placement locations and the ventricle wall thickness, illustrated in FIG. 6. This is accomplished through allocation of the processes analyzing frozen video data and frozen analog data.
Finally, interacting with external interfaces is implemented in the bottom layer of the internal task design. The functional processing flow supported by this design layer includes interfacing to the actual analog and video hardware. This is accomplished through allocation of the processes for video data processing and analog physiological data processing. The layered approach to the internal design of each approach allows the reuse of a majority of the invention for multiple medical disciplines. For example, the present invention may be presented in modular components . The modular approach allows for the individual support of electrophysiology, angiography and radiology by using the appropriate application module within the second layer to reflect the diagnostic concerns of the individual medical discipline. Replacement of the application module is easily accomplished since the internal software layers interact through the interfaces of the present invention as described above and that do not change as a result of application specific functionality.
While particular embodiments and applications of the present invention have been illustrated and described, it is to be understood that the invention is not limited to the precise construction and component hardware disclosed herein and that various modifications, changes and variations which will be apparent to those skilled in the art may be made in the arrangement, operation and details of the method and apparatus of the present invention disclosed herein without departing from the spirit and scope of the invention as defined in the appended claims.

Claims

CLAIMSWhat is claimed is:
1. A method for analyzing video data signals and analog physiological data signals in a medical diagnosis system, the method comprising the steps: collecting and correlating a video data signal and an analog physiological data signal from a physiological event of a patient; and outputting for display the correlated video data signal and analog physiological data signal.
2. The method as claimed in claim 1 wherein the collecting and correlating step further comprises the step: calculating a conduction interval and an activation time from the analog physiological data signal.
3. The method as claimed in claim 2 wherein the calculating step further comprises the step: identifying the conduction interval and activation time behavior trends over specific sampling instants in time.
4. The method as claimed in claim 3 wherein the collecting and correlating step further comprises the step: storing the conduction interval, conduction interval behavior trends, the activation time and activation time behavior trends for future retrieval and display.
5. The method as claimed in claim 1 wherein the collecting and correlating step further comprises the step: storing the video data signal and the analog physiological data signal for future retrieval and display.
6. The method as claimed in claim 1 wherein the collecting and correlating step further comprises the step: determining from the video data signal and the analog physiological data signal at least one probe location vector .
7. The method as claimed in claim 6 wherein the outputting step further comprises the step: placing the probe location vector on a three- dimensional representation of the heart to create an overlay to display the overlay on a display monitor and to store the overlay to a storage media.
8. A method for analyzing video data signals and analog physiological data signals in a medical diagnosis, the method comprising the steps: collecting a live video data signal and a live analog physiological data signal from a physiological event of a patient; freezing the live video data signal and the live analog physiological data signal to generate a frozen video data signal and a frozen analog physiological data signal; correlating the frozen video data signal and frozen analog physiological data signal from the same event; processing the live and the frozen video data signal and the live and the frozen analog physiological data signal to generate a live and a frozen probe location vector; calculating a live and a frozen conduction interval and a live and a frozen activation time from the live and the frozen analog physiological data signal; and outputting at least one of the live video data signal the live analog physiological data signal, the frozen video data signal, the frozen analog physiological data signal, the live probe location vector, the frozen probe location vector, the live conduction interval, the frozen conduction interval, and the live activation time and the frozen activation time.
9. The method as claimed in claim 8 wherein the outputting step further comprising the step: displaying at least one display window on a display monitor so that the display window is adapted to receive and display the live video data signal, the frozen video data signal, the live analog physiological data signal, the frozen analog physiological data signal, the conduction interval, the activation time, and the probe location vector.
10. A method for analyzing video data signals and analog physiological data signals in a medical diagnosis system, comprising the steps: inputting a video data signal and an analog physiological data signal; storing the video data signal and the analog physiological data signal; determining a conduction interval and an activation time from the analog physiological data signal; identifying at least one probe location vector from the video data signal and the analog physiological data signal; and outputting the video data signal, the analog physiological data signal, the conduction interval, the activation time, and the probe location vector.
11. The method as claimed in claim 10 wherein the step of inputting the video data signal further comprises the steps: receiving a live video data signal through an input source; sampling the live video data signal into a video sample buffer; processing the live video data signal to generate a frozen video data signal; and displaying the live video data signal in a window on a display monitor.
12. The method as claimed in claim 10 wherein the step of processing the live video data signal further comprises the steps: correlating the live video data signal and a live analog physiological data signal through a live probe location vector; selecting the correlated video data signal to generate a frozen video data signal and a frozen probe location vector; moving the frozen video data signal and the frozen probe location vector to a storage media; and displaying the frozen video data signal in a window on the display monitor.
13. The method as claimed in claim 10 wherein the step of inputting the associated analog physiological data signal further comprises the steps: receiving the live analog physiological data signal through an amplifier analog input source; sampling the live analog physiological data signal into an analog sample buffer; processing the live analog physiological data signal to generate a frozen analog physiological data signal; and displaying the analog physiological data signal in a window on the display monitor.
14. The method as claimed in claim 13 wherein the step of processing of the analog physiological data signal further comprises the steps: tagging specific time segments of the live analog physiological data signal to generate a frozen analog physiological data signal; calculating a live conduction interval and a live activation time from the live analog physiological data signal; selecting the live conduction interval and the live activation time to generate a frozen conduction interval and a frozen activation time; moving the frozen analog physiological data signal, the frozen conduction interval and the frozen activation time to the storage media; and displaying in separate windows of a display monitor the frozen analog physiological data signal, the frozen conduction interval and the frozen activation time.
15. The method as claimed in claim 10 wherein the outputting step further comprises the step: printing the video data signal, the analog physiological data signal, the conduction interval, the activation time, and the probe location vector.
16. The method as claimed in claim 10 wherein the outputting step further comprises the step: displaying at least one window on a display monitor so that the window is adapted to receive the video data signal, analog physiological data signal, the conduction interval, the activation time and the probe location vector.
17. A system for analyzing video data signals and analog physiological data signals in a medical diagnosis, comprising: input means for collection of a video data signal and an analog physiological data signal; processing means for generating an analyzed video data signal and an analyzed analog physiological data signal; and output means for simultaneous display of separate windows of the video data signal, the analog physiological data signal, the analyzed video data signal and the analyzed analog physiological data signal.
18. The system as claimed in claim 17 wherein the processing means comprises: tracking means for identifying at least one probe location vector from the video data signal and the analog physiological data signal input; identifying means to correlate the video data signal and the analog physiological data signal; and calculating means to determine a conduction interval and an activation time.
19. The system as claimed in claim 17 wherein the input means comprises: video data signal receiving means for collecting the video data signal; video data signal sampling means for sampling the video data signal; and video data signal buffering means for storing the sampled video data.
20. The system as claimed in claim 17 wherein the input means comprises: analog physiological data signal receiving means for collecting the analog physiological data signal; analog physiological data signal sampling means for obtaining specific data points of the analog physiological data signal; and analog physiological data signal buffering means for storing the sampled analog physiological data signal .
21. The system as claimed in claim 17 wherein the analog physiological data signal processing means comprises: data bus means for moving the analog physiological data signal to storage; processing means for generating a frozen analog physiological data signal at a specific time; and storage means for storing the frozen analog physiological data signal.
22. A method to filter data signal noise to control data signal flow in a medical diagnosis system, the method comprising the steps: inputting an analog physiological data signal; comparing the analog physiological data signal to determine whether the analog physiological data signal exceeds a minimum threshold value for a required count value; and passing the analog physiological data signal through the system when the analog physiological data signal exceeds the minimum threshold value for the required count value.
23. The method as claimed in claim 22 wherein the comparing step further comprises the step: setting the minimum threshold value to provide a channel comparison value for the analog physiological data signal.
24. The method as claimed in claim 22 wherein the comparing step further comprises the step: setting the required count value to provide a time segment for comparison of the analog physiological data signal.
25. A system for analyzing video data signals and analog physiological data signals in a medical diagnosis, the system comprising: a multitasking core component to schedule and provide processor cycles to at least one subcomponent; and at least one medical application subcomponent for processing a video data signal and an analog physiological data signal.
26. The system as claimed in claim 25 wherein the medical application subcomponent is a video display manager subcomponent for processing a live video data signal.
27. The system as claimed in claim 25 wherein the medical application subcomponent is an amplifier display manager subcomponent for processing a live analog physiological data signal.
28. The system as claimed in claim 25 wherein the medical application subcomponent is an analysis results display manager subcomponent for analyzing a frozen video data signal and a frozen analog physiological data signal.
29. The system as claimed in claim 25 wherein the medical application subcomponent is a backing store manager subcomponent for storage processing of a frozen video data signal and a frozen analog physiological data signal .
30. A system for analyzing video data signals and analog physiological data signals in a medical diagnosis, the system comprising: an input means for receiving a live video data signal and a live analog physiological data signal; a computer processor for executing programmed instructions and for processing the live video data signal and the live analog physiological data signal; a program memory, coupled to the processor, for storing program instruction steps for execution by the processor; a video processing component, coupled to the processor, to analyze the live video data signal and generate and analyze a frozen video data signal; an analog processing component, coupled to the processor, to analyze the live analog physiological data signal and generate and analyze a frozen analog physiological data signal; a conduction interval processing component, coupled to the processor, for validating, computing and displaying a live conduction interval and a frozen conduction interval; an activation time processing component, coupled to the processor, for analyzing and displaying a live activation time and a frozen activation time; a storage device, coupled to the processor, for storing the frozen video data signal, the frozen analog physiological data signal, the frozen conduction interval and the frozen activation time; and an output device, coupled to the processor, for presenting data signals.
31. The system as claimed in claim 30 wherein the output device comprises a display monitor.
32. The system as claimed in claim 30 wherein the output device comprises a printer.
PCT/US1995/008722 1994-07-14 1995-07-11 Video and analog monitoring and diagnosis system WO1996002188A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU29697/95A AU2969795A (en) 1994-07-14 1995-07-11 Video and analog monitoring and diagnosis system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US27483194A 1994-07-14 1994-07-14
US08/274,831 1994-07-14

Publications (1)

Publication Number Publication Date
WO1996002188A1 true WO1996002188A1 (en) 1996-02-01

Family

ID=23049776

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1995/008722 WO1996002188A1 (en) 1994-07-14 1995-07-11 Video and analog monitoring and diagnosis system

Country Status (2)

Country Link
AU (1) AU2969795A (en)
WO (1) WO1996002188A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001027855A2 (en) * 1999-10-12 2001-04-19 The Government Of The United States Of America, As Represented By The Secretary, Department Of Health And Human Services, Centers For Disease Control And Prevention Image-synchronized multichannel biomedical data acquisition system
SG113434A1 (en) * 2002-10-11 2005-08-29 Nat University Hospital Singap An endoscopy treatment management system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5024240A (en) * 1989-01-03 1991-06-18 Mcconnel Fred M S Manofluorography system, method for forming a manofluorogram and method for preparing a swallowing profile
US5433198A (en) * 1993-03-11 1995-07-18 Desai; Jawahar M. Apparatus and method for cardiac ablation

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5024240A (en) * 1989-01-03 1991-06-18 Mcconnel Fred M S Manofluorography system, method for forming a manofluorogram and method for preparing a swallowing profile
US5433198A (en) * 1993-03-11 1995-07-18 Desai; Jawahar M. Apparatus and method for cardiac ablation

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001027855A2 (en) * 1999-10-12 2001-04-19 The Government Of The United States Of America, As Represented By The Secretary, Department Of Health And Human Services, Centers For Disease Control And Prevention Image-synchronized multichannel biomedical data acquisition system
WO2001027855A3 (en) * 1999-10-12 2002-11-07 Us Gov Health & Human Serv Image-synchronized multichannel biomedical data acquisition system
AU779045B2 (en) * 1999-10-12 2005-01-06 Government of the United States of America, as Represented by the Secretary, Department of Health and Human Services, Centers for Disease Control and Prevention, The Image-synchronized multichannel biomedical data acquisition system
SG113434A1 (en) * 2002-10-11 2005-08-29 Nat University Hospital Singap An endoscopy treatment management system

Also Published As

Publication number Publication date
AU2969795A (en) 1996-02-16

Similar Documents

Publication Publication Date Title
US8165368B2 (en) Systems and methods for machine learning based hanging protocols
JP2022523741A (en) ECG processing system for depiction and classification
US4989610A (en) Method and system of ECG data review and analysis
JP5142011B2 (en) Computer-accessible storage medium with instructions for generating a composite severity score indicating progress or under-progression of treatment of disease over a period of time
Takalo-Mattila et al. Inter-patient ECG classification using deep convolutional neural networks
US8331640B2 (en) Information processing apparatus and its control method and data processing system
US20070197909A1 (en) System and method for displaying image studies using hanging protocols with perspectives/views
US20080069397A1 (en) Method and system for evaluation of the behavior of users of a digital image information system
US20070064984A1 (en) System and method for dynamic configuration of PACS workstation displays
US20090138279A1 (en) Systems, methods and apparatus for analysis and visualization of metadata information
JP2004267273A (en) Medical system
US20060161067A1 (en) Complexity scores for electrocardiography reading sessions
JP7299636B2 (en) METHOD AND ELECTRONIC DEVICE FOR PROVIDING ECG SIGNAL CLASSIFICATION DATA
JP3263111B2 (en) Image storage communication system and terminal device thereof
CN111358460A (en) Arrhythmia identification method and device and electronic equipment
EP3467770B1 (en) Method for analysing a medical imaging data set, system for analysing a medical imaging data set, computer program product and a computer-readable medium
US20120099775A1 (en) Methods and Apparatus to Analyze Computed Tomography Scan Data
WO1996002188A1 (en) Video and analog monitoring and diagnosis system
US20180263574A1 (en) System for the capture and combined display of video and analog signals coming from electromedical instruments and equipment
JPH0211129A (en) Clinical diagnostic auxiliary device
US20060036408A1 (en) Method and system for processing evaluation data
CN111753831A (en) Image analysis method and device, image acquisition equipment and storage medium
JP2002032476A (en) Method and device for assisting clinical diagnosis and clinical diagnosis assistance information recording medium
Blum et al. Design and implementation of a hospital wide waveform capture system
CN116798597B (en) Diagnostic information deducing method, device, electronic equipment and storage medium

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AM AT AU BB BG BR BY CA CH CN CZ DE DK EE ES FI GB GE HU IS JP KE KG KP KR KZ LK LR LT LU LV MD MG MN MW MX NO NZ PL PT RO RU SD SE SG SI SK TJ TM TT UA UG UZ VN

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): KE MW SD SZ UG AT BE CH DE DK ES FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: CA

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642