Diagnosis of Chronic Obstructive Pulmonary Disease from Lung Sounds using Support Vector Machine

DOI : 10.17577/IJERTV9IS090203

Download Full-Text PDF Cite this Publication

Text Only Version

Diagnosis of Chronic Obstructive Pulmonary Disease from Lung Sounds using Support Vector Machine

John Amose

Research Scholar, Department of Biomedical Engineering, Karunya

Institute of Technology and Sciences (Deemed to be University) and Assistant Professor, Department of Biomedical Engineering,

Dr.N.G.P Institute of Technology, Coimbatore, India.

Dr. P. Manimegalai

Associate Professor, Department of Biomedical Engineering,

Karunya Institute of Technology and Sciences (Deemed to be University),

Coimbatore, India

R. Dharshini, C. Siva Sastika, J. Vanamali,

B. Stewin Mathew

UG Research Scholar, Department of Biomedical Engineering,

Dr. N.G.P Institute of Technology, Coimbatore, India

AbstractAccording to the World Health Organization, Chronic Obstructive Pulmonary Disease is one of the leading causes of death in countries across all income groups. It is a non- communicable, respiratory disease characterized by persistent reduction of airflow to and from the lungs. A leading cause of COPD is smoking tobacco (active and passive), raising air pollution, and occupational dust and chemicals. Emphysema and chronic bronchitis are the most common conditions that make up COPD. The damage to the lungs from COPD cannot be cured but treatment can relieve symptoms, improve quality of life, and reduce the risk of death. Early diagnosis is an important area of research in recent years. A detailed Pulmonary Function Test and Spirometry can help in the clinical diagnosis of the condition but requires the patient to exhale with force making it inaccessible for heart patients and other conditions. Lung sounds are an excellent way of observing the condition and performing diagnosis that is more patient accessible and friendly. Lung sounds for COPD patients have characteristics of wheeze, Rhonchi, and crackle sounds. To diagnose this condition Mel Frequency Cepstral Coefficients (MFCC) of Lung sounds are extracted and a Support Vector Machine (SVM) based diagnostic model is developed. Experiments were conducted to optimize the performance of SVM by analyzing two parameters during feature extraction, the significance of the Energy Parameter, and by varying the window length and results discussed. A base model was developed using the default settings of MFCC as discussed in the literature. The analysis was done to identify the optimal feature parameters to best diagnose lung sounds. The proposed model was successful in achieving high classification performance accuracy of 92.5% from a base model of 75.9% demonstrating a performance improvement of 16.6%.

Keywords COPD, MFCC, SVM, wheeze, Rhonchi, and crackle


    Non-communicable diseases are the leading causes of deaths than all other causes. They are caused by four behavioral risk factors that may affect the economic transition, rapid urbanization, and 21st-century lifestyles: tobacco use,

    unhealthy diet, insufficient physical activity, and therefore the harmful use of alcohol [6]. Some of the non-communicable diseases comprising mainly are cardiovascular diseases, cancers, diabetes, and chronic lung diseases. In that, the World Health Organization (WHO) has reported that Chronic Obstructive Pulmonary disease kills more than four million people every year and affects hundreds of millions more[7]. Women and children are particularly affected, especially those in low and middle-income countries, where they're exposed to pollution from solid fuels for cooking and heating[1]. In 2010, the Global Burden of Disease (GBD) study evaluated that COPD was the third leading cause of death, accounting for 2.1% of total adult deaths. In the next 10 years, Global deaths from COPD are projected to increase by more than 30%. In the European Union, approximately 150,000 adults aged 40 years or older die of COPD each year. Also, total COPD costs are estimated to amount 141.4 billion annually[8].


    Fig:1 Block diagram of Machine Learning

    1. Mel – Frequency Cepstral Coefficient:

      Feature Extraction is used to extract the important, non- redundant features from raw data.

      The Mel-Frequency Cepstrum (MFCC) gives a Discrete cosine transform(DCT) of a real logarithm of the short-term energy displayed on the Mel Frequency Scale. It

      gives a small set of features (about 10-20) describes the overall shape of a spectral envelope. They contain information about the rate changes in different spectrum bands. MFCC extraction takes mainly about the 12-13 feature vector because these cepstral features are favorable on the ability to separate the impact of source and filter in the signal.

    2. Mel – Frequency Cepstral Coefficient Algorithm:

      The MFCC function splits the entire data into overlapping segments. The length of each roll-off segment is determined by the WindowLength. The length of overlap between segments is decided by the OverlapLength. This computes Mel Frequency Cepstral Coefficients, log energy values for each segment [4].

      Fig:2 framing

    3. Computation of Mel-Frequency Cepstral Coefficient:

    Fig:3 Block diagram of feature extraction

    Input (Lung sound):

    The lung sound obtained from the stethoscope or microphone should be fed into the system.


    The goal of the pre-emphasis is to compensate for the higher frequency part that was suppressed. The sound appears to be sharper after completing the emphasis. It is computed by the first-order derivative,

    Sn =Sn KSn-1 (K-emphasis coefficient, Sn-number of samples)


    The emphasized signal is segmented to frames with optimal overlap. The input is given as Window Length and Time Step of the signal.


    Each frame has to be multiplied with Hamming Window to keep the continuity of the first and the last points in the frame. The windowing can be computed by,

    s(n), n=0,N-1,

    Sn= {0.54 – 0.46 [cos (2*3.14(n-1)) }/N-1]Sn

    Fast Fourier Transform:

    The Fast Fourier Transform is performed to obtain the magnitude frequency response of each frame.

    Mel filter bank:

    The triangular filters are spread over the whole frequency range from zero to Nyquist frequency. The magnitude coefficient is binned by correlating them with each triangular filter,

    Binning=Fast Fourier Transform*corresponding filter gain The filter bank amplitude is obtained.

    Cepstral features:

    The Cepstral feature is calculated from a log filter bank amplitude using a Discrete Cosine Transform (DCT).




    The energy of the signal is computed from the logarithm of the signal.

    Given by, E=logSn Output:

    The output is obtained as several Cepstral coefficient, energy parameter based on the settings of window length, time step. The 12 Cepstral coefficient and 1 Energy parameter are extracted.


    1. Support Vector Machine:

      Support Vector Machine (SVM) may be a supervised machine learning algorithm that may be used for both classification and regression challenges. However, it is mostly used in classification problems. In the SVM algorithm, we plot each data item to some extent in n- dimensional space (where n is the number of features you have) with the worth of every feature being the value of a particular coordinate. Then, we perform classification by finding the hyper-plane that differentiates the 2 classes alright.

      Fig:4 classification of data

      Fig:5 graph representing the classification of data

      should have a value that maximizes . So, L can give a solution vector a. From a separating plane will be obtained with maximum margin

    2. Algorithm:

      • In the SVM algorithm, the data points fed into the system are plotted in n-dimensional space (n-no of feature or data) with the value of a particular coordinate.

      • The classification is performed by finding the optimal hyper-plane.

      • The optimal hyperplane is obtain based on maximal marginal distance from the support vector.

      • The support vector is data points that are closer to the decision surface and influence the position and orientation of the hyperplane.


      1. Support Vector Machine:

        Experiments were conducted to optimize the performance of SVM by analyzing two parameters during feature extraction, the significance of the Energy Parameter, and by varying the window length and results discussed. A base model was developed using the default settings of MFCC as discussed in the literature. The analysis was done to identify the optimal feature parameters to best diagnose lung sounds.

        The following analyses were performed to optimize the performance of the system.

        For calculating the recognition accuracy, In a confusion matrix;

        P (PREDICTIVE)

        N (PREDICTIVE)

        P (ACTUAL)

        True Positive

        False Negative

        N (ACTUAL)

        False Positive

        True Negative

        Table:1 Confusion matrix The formulas used for the calculation are: Specificity=TP/(TP+FN)

        Overall accuracy=(TP+TN)/(TP+TN+FP+FN)


      Experiment Set 1: With Energy Parameter (13MFCC Coefficients)

      Window Length(ms)

      Time Step (ms)

      Accuracy (%)

      Base Experiment 1
















      Experiment Set 2: Without Energy Parameter (12MFCC Coefficients)

      Window Length(s)

      Time Step (s)

      Accuracy (%)

      Base Experiment 1
















      1. Inference:

        In the above section, we have shown the recognition performance with the arbitrarily chosen configuration of the Cepstral coefficient for lung sound classification. In addition to that, we have made the optimization of parameters for better classification and analysis.

        1. Firstly, optimization based on window length is analyzed. We have analyzed the performance(accuracy) variation based on varying the window length and the time step of a signal while extracting the MFCC feature. We have experimented with varying the window length between 15ms to 45ms. The best accuracy was found to be 92.5% at 35ms.

          Lung sound is a non-stationary signal. To analysis, the feature component, applying the short term Fourier transform of a signal. At 35ms, the signal is found to be stationary and matches with the breath cycle of lung sound (duration of inspiration (app. 2 Sec) and expiration (app. 3 Sec)). Thus increases the accuracy of the classifier.

        2. Secondly, optimization based on the energy parameter is analyzed. We have analyzed that the performance of the

          classifier is better without using an energy parameter (zeroth coefficient) of the MFCC extraction method.

          The energy parameter values of COPD and healthy sound does not have any distinct values to classify. Thus, the energy parameter acts as a poor support-vector.

      2. Pros:

        • It works well with a clear margin of separation

        • It is effective in high dimensional spaces.

        • It is effective in cases where the number of dimensions is greater than the number of samples.

        • It uses a subset of training points in the decision function (called support vectors), so it is also memory efficient.

      3. Cons:

      • It doesnt perform well when we have a large data set because the required training time is higher

      • It also doesnt perform very well, when the data set has more noise i.e. target classes are overlapping

      • SVM doesnt directly provide probability estimates, these are calculated using an expensive five-fold cross-validation. It is included in the related SVC method of Python sci-kit-learn library.


      This paper presented an overview of the feature extraction and classification technique. SVM are motivated through statistical learning theory. The theory characterizes the performance of learning machines using bounds on their ability to predict future data. SVM is trained by solving a constrained optimization problem. The optimization technique is used to efficiently train SVM with large data sets and has been successfully used for medical diagnosis. The ideas presented in the papers suggest several future research directions, from tuning the basic statistical learning theory results, to developing efficient training methods.


  1. Diego Perna and Andrea Tagarelli, Deep auscultation: Predicting respiratory anomalies and diseases via recurrent neural networks, IEEE 32nd International Symposium on Computer-Based Medical Systems (CBMS), 2019.

  2. Yongli Zhang, Support Vector Machine Classification Algorithm and Its Application, International Conference on Information Computing and Applications, 2012.

  3. Parwinder Pal Singh, et al, An Approach to Extract Feature using MFCC, IOSR Journal of Engineering, 2014.

  4. Theodoros Evgeniou, et al, Support Vector Machines: Theory and Applications, Advances in computational mathematics, 2001.

  5. Virendra Singh, Bharat Bhushan Sharma, et al, Respiratory disease burden in India: Indian chest society SWORD survey, Lung India: Official organ of Indian chest, 2018.

  6. Global status report on the non-communicable disease, World Health Organisation –2010.

  7. Global status report on noncommunicable disease 2010.

  8. Daniel Chamberlain, Rahul Kodgule, et al, Application of Semi- Supervised Deep Learning to Lung Sound Analysis, 38th Annual International Conference of the IEEE Engineering in Medicine and Biology Society (EMBC), 2016.

  9. Bokov P, et al, Wheezing recognition algorithm using recordings of respiratory sounds at the mouth in a pediatric population, Computers in Biology and Medicine, Volume 70, 1 March 2016.

  10. Miguel Angel Fernandez-Granero, et al, A Machine Learning Approach to Prediction of Exacerbations of Chronic Obstructive Pulmonary Disease, Artificial Computation in Biology and Medicine pp 305-311, 2015.

  11. Chamberlain D, et al, Mobile stethoscope and signal processing algorithms for pulmonary screening and diagnostics.,IEEE Global Humanitarian Technology Conference (GHTC), IEEE, 2015.

  12. c¸er S, Gengec¸ , Classification and analysis of non-stationary characteristics of crackle and rhonchus lung adventitious sounds, Digital Signal Processing Volume 28, May 2014.

  13. Lin BS, Yen TS, An FPGA-based rapid wheezing detection system, Int J Environ Res Public Health, 2014.

  14. Samira Abbasi1, Roya Derakhshanfar, Ataollah Abbasi, and Yashar Sarbaz, Classification of Normal and Abnormal Lung Sounds Using Neural Network and Support Vector Machines,21st Iranian Conference on Electrical Engineering (ICEE), 2013.

Leave a Reply