Computational Cardiology: An Automated Algorithm for Heart Murmur Detection

CSEF · 2015 Mammalian Biology Fourth Award

Overview

Objectives/Goals My eleven-year-old sister, Kate, was born with a heart condition which causes her to have a heart murmur. Kate's pediatrician first diagnosed her by carefully listening to her murmur several times. Even though Kate's pediatrician is a well-trained professional, diagnosing heart murmurs by ear is subject to human error. Most general practitioners aren't able to determine the specific murmur type. Even cardiologists determine the specific murmur type with only 25% accuracy by ear alone. I wondered if an algorithm could be created that could accurately detect the presence and type of a patient's heart murmur and improve the ease and reliability of murmur identification. My objective was to accurately detect and categorize common heart murmurs by employing signal processing methods, such as filtering, convolution, scaling, and thresh-holding. Methods/Materials I implemented and verified my algorithm in FreeMat, a free environment for engineering and scientific prototyping and data processing. I tested the algorithm against seventy-one, pre-recorded heart sounds from anonymous sources publically available on the web. These represented fourteen out of the twenty possible heart murmur types. After months of coding and debugging, I finally created a program that identified and categorized heart murmurs by their timing and shape, two aspects of heart murmurs. Results My algorithm differentiated between heart murmurs and normal heartbeats with zero false positives and only 5% false negatives. Identification rates for the timing and shape of systolic murmurs and the timing and shape of diastolic murmurs were both approximately 70%. Identification of timing for systolic murmurs was approximately 78% accurate, as was the identification of shape for systolic murmurs. In comparison, identification of timing for diastolic murmurs and shape for diastolic murmurs were both approximately 73%. The overall success rate of my algorithm at diagnosing the exact murmur from among the fourteen types in my sample data was 54%, double the accuracy of a trained cardiologist identifying heart murmurs by ear. Conclusions/Discussion My hypothesis was that I would be able to accurately detect and categorize common heart murmurs. I was able to accurately distinguish heart murmurs from normal heartbeats and categorize them with twice the accuracy of trained cardiologists. I believe my hypothesis was supported by my data.

Summary statement

I created an algorithm that could accurately detect and categorize common heart murmurs from pre-recorded heart sounds by employing signal processing methods, such as filtering, convolution, scaling, and thresh-holding.

Help received

My father, Deron Jackson, explained to me some of the more difficult concepts in FreeMat. My teacher, Victoria Evashenk, reviewed my technical paper and recommended that I find experimental studies on related devices.

Awards (1)

Competition history

  • CSEF 2015 Mammalian Biology · Entry S1216

Resources

Related projects

Closest projects by meaning, across every fair and year in the corpus.

Browse more like this

Source: California Science & Engineering Fair public projects

Save projects to your library

Sign in with Google to keep track of projects you find interesting, organized into folders. An account also raises your daily allowance for “Has this been done?”, and lets you create a key for the MCP server with a much higher limit than anonymous use. Browsing stays public.

Continue with Google