Heart Murmur Detection from Phonocardiogram Based on Continuous Wavelet Transform and 2-D Convolutional Neural Network

Pan Xia, Zhengling He, Yusi Zhu
School of Electronic, Electrical and Communication Engineering, University of Chinese Academy of Sciences


The PCG is a potential diagnostic tool for identifying early heart malfunctioning caused by congenital and acquired heart disease in pediatric populations. Accurate diagnosis and early intervention for heart murmur are of great significance to the prevention and treatment of cardiovascular disease. The goal of the Physionet/CinC Challenge 2022 is to identify the presence, absence, or unclear cases of murmurs from PCG recordings. In this paper, we proposed an approach to identify heart murmurs from PCGs by using continuous wavelet transform (CWT) and a 2-D convolutional neural network. Firstly, the first 30 seconds of the PCG recordings from multiple auscultation locations on the body were transformed into 2-D time-frequency spectrum diagrams using CWT. Secondly, a deep 2-D convolutional neural network with residual connection and attention mechanism was designed to extract the complex pathological patterns of heart murmurs. The demographic data (such as age, sex, height, weight, and pregnancy status) was concatenated into the feature vector before the last fully connected layer. The proposed deep framework adopted 2-D time-frequency spectrum diagrams as input, and the prediction probabilities of 3 categories were outputs. Finally, a custom challenge loss that can force the network to minimize the Challenge score was proposed and the joint loss consisting of the custom challenge loss and binary cross-entropy was adopted to train the total network. The official public dataset was divided into 80%-20% stratified training-test sets and our proposed approach achieved a 5-fold cross-validation score of 954 by using the Challenge burden score metric. Our team, MetaHeart, achieved a Challenge score of 736 on the hidden validation set which placed us 15th out of over 50 teams.