Having family members that suffer chronic respiratory illnesses during a viral pandemic, I need to be hyper vigilant that I keep them safe. A personal self diagnosis capability that encourages social distancing to avoid infection from visiting medical centres unnecessarily would be extremely useful. Visiting a medical professional when obvious signs of respiratory complications are not evident, is not easy accessible or convenient for everyone. A Doctor will often listen to a patients breathing to identify wheezing, crackling or other abnormal sounds as part of their diagnosis. If there are slight signs they would repeat the test periodically to determine if the abnormality is getting better or worse.

What it does

The ResAlert solution aims to slow the spread of CoVID-19 and future respiratory illness epidemics by alerting people when recordings of their breathing presents crackling or wheezing. It could be used in combination with standard self-assessment questions.

How I built it

Architecturally, there are two parts:

  1. A respiratory diagnostic service with an API that services the upload of a short recording of breathing for machine learning to process and classify. The API also services a request for analysis results which could be a) anomaly against individuals previous recording and b) anomaly against general public normal. Anomalies would indicate the individual may have early signs of a respiratory complication and should follow appropriate health advice such as seeking medical attention or socially distancing. There is lots of public data available to initially train a deep neural network.
  2. A front end to demonstrate the diagnostic service. This could be a mobile friendly web page that can record a person’s breathing using their microphone (WebAudioRecorder.js) and call the respiratory diagnostic service API. I believe the benefit is the alert for the individual and their privacy must be preserved, so despite all the other spin-off ideas that could help others use aggregated data. It will be up to the individual user to notify related institutions directly if they feel they have symptoms of concern.

Challenges I ran into

Unfortunately, we did get the prototype fully automated end to end in time. But we achieved anomaly detection with 96% of identifying a wheeze and 85% a crackle. Given ResAlert is a home diagnostic tool it would be presumed a useful aid by itself or in conjunction with other diagnostic tools to help triage the need for seeking medical attention for official diagnosis.

What's next for ResAlert

Get it published as an AI on SingularityNet

Share this project:


posted an update

Idea for ResAlert was conceived 2 April 2020. Train an AI Neural Network to classify respiratory recordings into normal, crackle, wheeze etc.

I will head a team from Perth Internet of Things to progress an open source project to detect anomalies in recordings of human breathing.

So far, I have a 2GB training data set. and sample HTML5 code to record using the device microphone, 330 GPU hours on 2 GPU's, 500 GB Volume Storage, 10 Instance Snapshots.

Thanks so far to Julian Sprung from Genesis Cloud and Deborah Duong from SingularityNet for stepping in to support me and the Perth IoT Community.

Log in or sign up for Devpost to join the conversation.