Past Projects – Vetronics

What I Did

Refactored and reengineered the Vetronics ECG expert system diagnostic engine to be more dynamic for expanding the range of diagnosis for a given animal and ability to add capabilities for more species.

I ported the FORTRAN code to C language using modular programming techniques.  Functionality was added to have the diagnostic patterns stored externally in a database.   This allowed for the ability to update the capability range without having to revise and re-validate the software.  I also constructed basic build infrastructure using  make utility and version control system.

Who is Vetronics

Vetronics was the first company to develop and market an automated electrocardiograms analyzer.   Initially developed by Vetronics founder Professors Jorge Aunon and Clare McGillem of the Purdue University School of Electrical Engineering and Professor Walter Weirich of the Purdue School of Veterinary Medicine. The software was written in FORTRAN and initial diagnostic patterns were hard-coded in the program.   There were 20 canine diagnostic patterns and 17 feline diagnostic patterns  available with the initial commercial version.

The company has since been acquired BASi.

 

How It Works:

Starting with an ECG, the software  encodes each waveform segments and then attempts to pattern match them against all known patterns.  It then weights how close the pattern matches the known patterns  to give a statistical confidence with it’s analysis. Initially,  each pattern was hard-code in the FORTRAN source.

 

The ECG the heart’s electrical activity.

ECG Components

P is the waveform generated by the firing of the pacemaker and depolarization of the atria.

Q is the first phase of ventricular depolarization and represents the electrical activity coming from the ventricular system. Not all normal ECGs will have a visible Q wave.

R is the largest waveform in most ECG leads and represents the electrical activity of the apex and free walls of the ventricles.

S is the first phase of depolarization of the ventricles and originates from the muscle at the base of the heart. Not all normal ECGs will have an S wave.

T is the repolarization of the ventricles.

 

Currently they support the following diagnostics:

Canine Diagnosis 42 Total Feline Diagnosis 33 Total
Accelerated Idioventricular Rhythm Accelerated Idioventricular Rhythm
All ECG Parameters Within Normal Limits All ECG Parameters Within Normal Limits
Atrial Fibrillation Atrial Enlargement
Atrial Premature Contraction (APC’s) Atrial Fibrillation
Atrial Standstill/Possible High Serum Potassium Atrial Premature Contractions May Be Occurring
Atrial Tachycardia Atrial Standstill/Possible High Serum Potassium
AV Nodal Beats AV Nodal Beats
Biatrial Enlargement First Degree Heart Block
Biventricular Enlargement Left Anterior Fascicular Block
First Degree Heart Block Left Bundle Branch Block
Fusion Beats Have Occurred Left Ventricular Enlargement
Left Anterior Fascicular Block Left Ventricular Enlargement May Be Developing
Left Bundle Branch Block Normal Sinus Rhythm
Left Ventricular Dilatation Pre-Excitation Syndrome
Left Ventricular Hypertrophy Prolonged Q-T Interval
Low Amplitude QRS Complexes PVC’s Found
Multifocal Premature Ventricular Contractions PVC’s May Be Occurring–Repeat Measurement To Verify
Normal Sinus Rhythm Right Bundle Branch Block
P-Mitrale Right Ventricular Enlargement
P-Pulmonale Second Degree Heart Block, Mobitz Type I
Paroxysmal Ventricular Tachycardia Second Degree Heart Block, Mobitz Type II
Prolonged Q-T Interval Shortened Q-T Interval
PVC’s Found Sinus Arrest
PVC’s May Be Occurring–Repeat Measurement To Verify Sinus Arrhythmia
Right Bundle Branch Block Sinus Bradycardia
Right Ventricular Enlargement Sinus Tachycardia
Second Degree Heart Block, Mobitz Type IA Some ECG Parameters Outside Normal Limits
Second Degree Heart Block, Mobitz Type IB Supraventricular Tachycardia
Second Degree Heart Block, Mobitz Type IIA Third Degree Heart Block
Second Degree Heart Block, Mobitz Type IIB Ventricular Bigeminy
Shortened Q-T Interval Ventricular Escape Beats
Sinus Arrest Ventricular Escape Rhythm
Sinus Arrhythmia Ventricular Tachycardia
Sinus Bradycardia
Sinus Tachycardia
Some ECG Parameters Outside Normal Limits
Supraventricular Tachycardia
Third Degree Heart Block
Ventricular Bigeminy
Ventricular Escape Beats
Ventricular Escape Rhythm
Ventricular Tachycardia