Breath Detection from a Microphone Using Machine Learning - Tomasz Sankowski; Piotr Sulewski; Jan Walczak; Aleksandra Bruska (TASK Quarterly)
This project investigates and implements various artificial intelligence techniques for the real-time detection of breath sounds using audio data captured via a computer microphone. The primary objective is to develop and compare methodologies to identify distinct phases of breathing, namely inhalation, exhalation, and the silent intervals between breaths, in order to determine the most accurate, efficient, and practical approach. The study explores three innovative approaches: 1. VGGish Model for Feature Extraction and Classification with Random Forest: This method utilizes the VGGish model to extract sound feature vectors, followed by classification using a random forest classifier. 2. Spectrogram Classification Using Convolutional Neural Networks: This approach involves classifying spectrograms of half-second or quarter-second audio segments using a convolutional neural network adapted for image classification tasks. 3. Mel-Frequency Cepstral Coefficients (MFCC) for Feature Extraction and Neural Network Classification: This method employs MFCCs as set of sound features for classification using a neural network. The experimental results show that methods 1 and 3 achieved an accuracy of 87% in the test data, while method 2 achieved an accuracy of 83%. The dataset comprised approximately 1,000 recordings of inhalations, exhalations, and silences between breaths, collected using four different microphones and recorded by three different individuals. All implementations and training data are available on a public GitHub repository: github.com/tomaszsankowski/Breathing- Classification.