  We present a deep learning based automatic cough classifier which can
discriminate tuberculosis (TB) coughs from COVID-19 coughs and healthy coughs.
Both TB and COVID-19 are respiratory diseases, contagious, have cough as a
predominant symptom and claim thousands of lives each year. The cough audio
recordings were collected at both indoor and outdoor settings and also uploaded
using smartphones from subjects around the globe, thus containing various
levels of noise. This cough data include 1.68 hours of TB coughs, 18.54 minutes
of COVID-19 coughs and 1.69 hours of healthy coughs from 47 TB patients, 229
COVID-19 patients and 1498 healthy patients and were used to train and evaluate
a CNN, LSTM and Resnet50. These three deep architectures were also pre-trained
on 2.14 hours of sneeze, 2.91 hours of speech and 2.79 hours of noise for
improved performance. The class-imbalance in our dataset was addressed by using
SMOTE data balancing technique and using performance metrics such as F1-score
and AUC. Our study shows that the highest F1-scores of 0.9259 and 0.8631 have
been achieved from a pre-trained Resnet50 for two-class (TB vs COVID-19) and
three-class (TB vs COVID-19 vs healthy) cough classification tasks,
respectively. The application of deep transfer learning has improved the
classifiers' performance and makes them more robust as they generalise better
over the cross-validation folds. Their performances exceed the TB triage test
requirements set by the world health organisation (WHO). The features producing
the best performance contain higher order of MFCCs suggesting that the
differences between TB and COVID-19 coughs are not perceivable by the human
ear. This type of cough audio classification is non-contact, cost-effective and
can easily be deployed on a smartphone, thus it can be an excellent tool for
both TB and COVID-19 screening.
