Cough sound recognition method for health monitoring
By using sound acquisition equipment and deep neural network models in health monitoring, we realize all-weather contactless cough sound acquisition and recognition, solving the problems of inconvenience in monitoring and privacy leakage in the existing technology, and improving the accuracy and applicability of monitoring .
Patent Information
- Application Number
- CN202411556637.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-04
- Publication Date
- 2025-02-11
AI Technical Summary
Existing health monitoring methods are difficult to achieve all-weather contactless cough sound collection and analysis, and are prone to leakage of privacy of monitoring personnel, and are unable to effectively monitor special groups such as infants and young children and the elderly.
The external sound is continuously collected through the sound acquisition device, and noise reduction is used to use a Wiener filter to segment the cough sound, and identify it by extracting MFCC features and deep neural network models to determine the diseases that monitors may suffer from.
It realizes all-weather contactless cough sound collection and recognition, improves monitoring accuracy and privacy protection, and is suitable for a wide range of people and scenarios.
Smart Images

Figure CN119418728A_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the fields of health monitoring, auxiliary diagnosis and treatment, and medical data processing, and in particular relates to a cough sound recognition method for health monitoring. Background Art
[0002] Coughing is a common physiological phenomenon. It may be a physiological stress response caused by the external environment, or it may be a symptom of diseases such as colds, bronchitis, pharyngitis, asthma, and tuberculosis. For some serious diseases, if they are not treated in time, they may cause serious consequences such as heart failure and respiratory failure. The coughs caused by different diseases are different. For infants, young children, or the elderly, who need to be monitored, they may not be able to accurately describe their coughs. It is also difficult for guardians to fully record the coughing conditions, which may easily lead to consequences such as medical treatment without illness, private medication, and delayed illness. Although clinicians can assist in diagnosis through the characteristics of patients' coughs, it is difficult for doctors to fully understand the characteristics of patients' cough symptoms within a short period of diagnosis and treatment. Therefore, in order to comprehensively record the coughing conditions of the monitored subjects, intelligent technology and equipment are needed to collect and analyze cough sounds around the clock to ensure timely discovery and comprehensive recording of coughing symptoms, so as to facilitate more efficient and accurate health monitoring.
[0003] Existing health monitoring mainly relies on contact-type physiological signal acquisition equipment or image acquisition equipment. Contact-type monitoring, such as smart watches and bracelets, blood pressure monitors, blood glucose meters, and traditional Chinese medicine four-diagnosis equipment, collects the heart rate, pulse, blood pressure, blood sugar and other physiological information of the monitored object through continuous wearing or special contact, providing data support for health monitoring. However, this method requires the subjective cooperation of the monitored object, and information such as blood pressure and blood sugar requires professional testing equipment, while special monitoring groups such as infants, young children, and the elderly cannot wear equipment with subjective cooperation. Image acquisition equipment collects pictures or videos of the whole body or face of the guardian, and uses image analysis algorithms to identify the physical health status of the monitored person. This method has high monitoring accuracy, but the collection of images or videos requires the collection of facial information of the monitored person, and inevitably collects external environmental information, which is very likely to cause privacy leakage of the monitored person.
[0004] The goal of the cough sound recognition method for health monitoring is to collect the cough sounds of specific people around the clock and analyze their health conditions without contact, so as to solve the problems of insufficient subjective cooperation of monitoring personnel, round-the-clock monitoring, and privacy leakage. The present invention collects external sounds and segments the cough sounds of the monitored person, removes all irrelevant sounds, and then models and identifies the cough sounds to determine what diseases the monitored person may suffer from. This method can be used for personnel health monitoring in different environments such as homes, schools, hospitals, and nursing homes, and can also be integrated into different smart devices such as smart speakers and smart watches. Summary of the invention
[0005] The present invention provides a cough sound recognition method for health monitoring, which continuously collects external sounds, performs noise reduction processing, and then segments the cough sounds. The cough sounds of the monitored object are extracted according to the voiceprint features of the monitored object. Finally, the possible disease of the monitored person is determined according to the cough sound recognition model.
[0006] The technical solution adopted by the present invention is as follows:
[0007] A cough sound recognition method for health monitoring comprises the following steps:
[0008] Step 1, sound collection and noise reduction processing: continuously collect external sounds through the sound collection device, and use the Wiener filter to perform noise reduction processing on the collected sounds;
[0009] Step 2, cough sound segmentation: According to the short-time zero-crossing rate and short-time energy of the sound signal, endpoint detection is performed on the denoised sound data to remove the silent part and the part that is obviously not a cough sound, and each possible cough sound is segmented;
[0010] Step 3, cough sound feature extraction: extract MFCC features for each segmented possible cough sound, and fuse the MFCC features with its first-order and second-order differences to form a fusion feature; where MFCC is the Mel frequency cepstrum coefficient;
[0011] Step 4, cough sound confirmation: Use the deep neural network ResNet to further filter out all possible cough sounds;
[0012] Step 5, monitoring object identification: Use the GMM-UBM method to score the extracted cough sound to determine whether the cougher is the monitoring object; where GMM-UBM is a Gaussian mixture model-universal background model;
[0013] Step 6, cough sound recognition: Use two pre-trained BotNet models to extract the emotion and relevant features of cough sounds respectively, then train the cough sound recognition model based on the fusion features of the monitored object’s cough sounds, and finally fuse the features of the pre-trained model with the features of the recognition model to determine what disease the monitored object’s cough sound may be.
[0014] As a cough sound recognition method for health monitoring of the present invention, the specific steps of step 1 are as follows:
[0015] Step 1.1, sound collection: Use a sound collection device to automatically collect external sounds, and the collected sounds are an audio file every 30 seconds;
[0016] Step 1.2, noise reduction: for each audio file collected, use Wiener filter to reduce the background noise in the audio file;
[0017] Step 1.3, local storage: store the denoised audio file in the local storage space of the acquisition device.
[0018] As a cough sound recognition method for health monitoring of the present invention, the specific steps of step 2 are as follows:
[0019] Step 2.1, frame calculation: for the denoised audio file AudioFile i Each frame of AudioFrame j Calculate short-time energy and short-time zero-crossing rate Where i>0 is the serial number of the audio file, j>0 is the audio file AudioFile i The sequence number of the audio frame, x j,n and x j,n-1 AudioFrame j The signal value of the nth and n-1th sampling points in the time window, N is the audio frame AudioFrame j The number of sampling points contained in the time window, sgn(x j,n ) is the audio frame AudioFrame j The sign of the signal value of the nth sampling point in the time window. If x j,n ≥0 then sgn(x j,n )=1, otherwise sgn(x j,n )=-1;
[0020] Step 2.2, setting thresholds: according to the characteristics of cough sound, set the lower threshold Denlw and upper threshold Denhg of the short-time energy value, and the lower threshold Dzcrlw and upper threshold Dzcrhg of the short-time zero-crossing rate:
[0021] Denlw=max(max(2.5*(max(E[:10])),en),0.1)
[0022] Denhg=3.1*Denlw
[0023] Dzcrlw=min(28,Mzcr+Vzcr)
[0024] Dzcrhg=max(Dzcrlw,15)
[0025] Among them, E[:10] represents the energy values of the first 10 frames before the current frame, en = sum(E[:10]) / 9, max() and sum() represent the maximum value and cumulative sum functions respectively, and Mzcr and Vzcr represent the average zero-crossing rate and standard deviation of the first 10 frames before the current frame;
[0026] Step 2.3, determining the starting point: Starting from the first frame, compare the short-time energy value of each frame with Denlw frame by frame. If the short-time energy value E j of a certain frame AudioFrame j > Denlw, then mark this frame as ST 1 , and then start comparing the short-time energy of each frame with Denhg from ST 1 after it; if the subsequent frame drops below Denlw before exceeding Denhg, then ST 1 is not used as the starting point, and start looking for the starting point again from the next frame AudioFrame j+1 , otherwise set ST 1 as the starting point;
[0027] Step 2.4, determining the ending point: After the starting point ST 1 , compare the short-time energy value of each frame with Denlw. If it is found that the short-time energy E h of a certain frame AudioFrame h < Denlw, then tentatively mark AudioFrame h as the ending point ST 2 ; starting from the ST 2 frame, search backward with a window of 15 frames, and compare the short-time zero-crossing rates of each frame in the window in turn. If at least 3 frames in the 15 frames of the window are found to satisfy Dzcr lw ≥ Dzcr hg, then set the starting frame of the window at this time as the ending point, otherwise use ST 2 as the ending point;
[0028] Step 2.5, audio segmentation: All audio frames between the starting frame ST 1 and the ending frame ST 2 form an audio segment AudioSeg, and starting from the next frame of the ending frame ST 2 , repeat steps 2.3 to 2.5 until the current audio file is segmented.
[0029] As a cough sound recognition method for health monitoring according to the present invention, the specific steps of step 3 are as follows:
[0030] Step 3.1, for each segmented audio segment AudioSeg k , use Fourier transform to transform the audio segment AudioSeg kConvert from time domain to frequency domain;
[0031] Step 3.2: Set the frequency value f of each frame i Transformed into Mel frequency Mel(f i )=2595*lg(1+f i / 700), using a Mel filter bank consisting of 24 Mel filters, and calculating the logarithmic frequency s(m) of each filter output, where represents the audio segment AudioSeg k The frequency of the i-th frame in , 1≤m≤24 represents the sequence number of the filter;
[0032] Step 3.3, the logarithmic frequency is transformed through discrete cosine transform to obtain MFCC features, the nth order MFCC features Where 1≤n≤12, represents the 12th-order MFCC features, N represents the number of sampling points in each frame of audio, and M represents the number of filters in the Mel filter bank;
[0033] Step 3.4, solve the first-order difference d of MFCC respectively 1 and the second-order difference d 2 ;
[0034] Step 3.5: Combine MFCC features and their first-order and second-order differences as the fusion features of the audio segment (C(n), d 1 ,d 2 ), where C(n) represents the nth-order MFCC feature, 1≤n≤12, d 1 and d 2 They represent the first-order difference and second-order difference of MFCC features respectively.
[0035] As a cough sound recognition method for health monitoring of the present invention, the specific steps of step 4 are as follows:
[0036] Step 4.1: Use the deep neural network ResNet to extract the fusion features (C(n), d 1 ,d 2 ), train the audio clips generated in step 2 to build a cough sound confirmation model CoughModel;
[0037] Step 4.2, use the model CoughModel to monitor each audio clip generated in step 2, determine whether it is a cough sound, and finally find the cough sound set CoughSet.
[0038] As a cough sound recognition method for health monitoring of the present invention, the specific steps of step 5 are as follows:
[0039] Step 5.1: Use a large number of public audio datasets containing coughs, readings, conversations, noises, etc., extract fusion features using the method described in step 3, and use the EM iterative algorithm to train the UBM model UModel for general background audio. 1 , where the E step uses the Bayesian formula to find the posterior probability of the implicit variable, and the M step uses the posterior probability to update the weights, mean, and variance;
[0040] Step 5.2: Use a small amount of speech data sets containing target person labels, based on the general background UBM model trained in step 5.1, and use the MAP adaptive algorithm to adaptively obtain the UBM model UModel for the target person audio. 2 ;
[0041] Step 5.3, extract the cough sound segment of the monitored object, extract the fusion features according to step 3, and use UModel 1 and UModel 2 Test score 1 and score 2 , if |score 1 -score 2 |>threshold, the cough sound segment is determined as a monitoring object, where threshold is the determination threshold, which is set according to actual experience.
[0042] As a cough sound recognition method for health monitoring of the present invention, the specific steps of step 6 are as follows:
[0043] Step 6.1, build a pre-trained model: use the public dataset to train two BotNet models based on MFCC features, including the voice emotion recognition model BModel 1 , cough sound classification model BModel 2 , BModel 1 and BModel 2 The two models do not contain the final fully connected layer, which is used to extract features related to the emotion and cough classification of the monitored object. 1 and BModel 2 The feature dimension of the output of both models is 2048;
[0044] Step 6.2, build a cough recognition model: Use the cough dataset CoughDisease with annotated disease diagnosis results, and build a cough recognition model BModel based on the BotNet model according to the MFCC features of each cough sound segment and the fusion features composed of the first-order and second-order differences. 3 , whose final fully connected layer also receives BModel 1 and BModel2 Features of the two model outputs;
[0045] Step 6.3, cough recognition results: cough recognition model BModel 3 The output is the probability that the target cough sound may have each disease {p 1 ,p 2 ,…,p a}, and finally determine that the monitored target may have the highest probability p i The corresponding diseases, where 1≤i≤a, represent the serial number of the disease, 1 represents no disease, and each serial number from 2 to a represents a disease with cough symptoms.
[0046] The beneficial effects of the present invention are:
[0047] 1. The present invention realizes health monitoring through all-weather, contactless cough sound collection and recognition, without the need for subjective cooperation of monitoring personnel and special equipment support, and is applicable to a wide range of people and application scenarios;
[0048] 2. The present invention ensures the accuracy of cough sound extraction and recognition of the monitored object through methods such as fusion of multiple sound features and fusion of multiple deep neural networks;
[0049] 3. After the sound is collected, the present invention only retains the coughing sound of the monitored object, thereby realizing privacy protection from a technical point of view. BRIEF DESCRIPTION OF THE DRAWINGS
[0050] Attached Figure 1 This is the specific process of the cough sound recognition method for health monitoring of the present invention.
[0051] Attached Figure 2 It is a schematic diagram of the sound segmentation operation flow of the present invention.
[0052] Attached Figure 3 It is a schematic diagram of the monitoring object identification operation flow of the present invention.
[0053] Attached Figure 4 It is a schematic diagram of the cough sound recognition operation flow of the present invention.
[0054] Attached Figure 5 This is the cough sound recognition process of an embodiment of the present invention. DETAILED DESCRIPTION
[0055] The technical solution of the present invention is further described below based on embodiments.
[0056] The cough sound recognition method for health monitoring proposed in the present invention mainly realizes health monitoring of the monitored object by collecting, extracting and identifying cough sounds. At present, health monitoring mainly uses contact-type physiological signal acquisition equipment or image acquisition equipment, which requires the subjective cooperation of the monitored object and is prone to privacy leakage. The process of the cough sound recognition method for health monitoring proposed in the present invention is as shown in the attached figure. Figure 1 As shown. The present invention collects cough sounds around the clock and in a non-contact manner, extracts the fusion features of cough sounds and uses a fusion model of multiple deep neural networks to accurately extract and identify the cough sounds of the monitored target. The specific method includes the following six steps:
[0057] 1. Sound collection and noise reduction processing
[0058] The external sound is automatically collected using a sound collection device, and the collected sound is an audio file every 30 seconds. After each audio file is collected, the background noise in the audio file is reduced using a Wiener filter to obtain a reduced-noise audio file to improve the clarity of the sound.
[0059] 2. Sound segmentation
[0060] Use the double threshold endpoint detection method to detect each denoised audio file AudioFile i Perform preliminary processing from AudioFile i Remove all audio segments that may be coughing sounds. The specific process is as follows Figure 2 As shown, the steps are as follows:
[0061] (1) AudioFile after noise reduction i Each frame of AudioFrame j Calculate short-time energy and short-time zero-crossing rate Where i>0 is the serial number of the audio file, j>0 is the audio file AudioFile i The sequence number of the audio frame, x j,n and x j,n-1 AudioFrame j The signal value of the nth and n-1th sampling points in the time window, N is the audio frame AudioFrame j The number of sampling points contained in the time window, sgn(x j,n ) is the audio frame AudioFrame j The sign of the signal value of the nth sampling point in the time window. If x j,n ≥0 then sgn(x j,n )=1, otherwise sgn(x j,n )=-1.
[0062] (2) Set the lower threshold Denlw and upper threshold Denhg of the short-time energy value, and the lower threshold Dzcrlw and upper threshold Dzcrhg of the short-time zero-crossing rate according to the cough sound characteristics:
[0063] Denlw = max(max(2.5 * (max(E[:10])), en), 0.1)
[0064] Denhg = 3.1 * Denlw
[0065] Dzcrlw = min(28, Mzcr + Vzcr)
[0066] Dzcrhg = max(Dzcrlw, 15)
[0067] Among them, E[:10] represents the energy values of the first 10 frames before the current frame, en = sum(E[:10]) / 9, max() and sum() represent the maximum value and cumulative sum functions respectively, and Mzcr and Vzcr represent the average zero-crossing rate and standard deviation of the first 10 frames before the current frame.
[0068] (3) Determine the starting point: Starting from the first frame, compare the short-time energy value of each frame with Denlw frame by frame. If the short-time energy value E of a certain frame AudioFrame j > Denlw, then mark this frame as ST j , and then start comparing the short-time energy of each frame with Denhg from ST 1 ; if the subsequent frame drops below Denlw before exceeding Denhg, then ST 1 is not used as the starting point, and start looking for the starting point again from the next frame AudioFrame 1 , otherwise set ST j+1 as the starting point. 1
[0069] (4) Determine the end point: After the starting point ST 1 , compare the short-time energy value of each frame with Denlw. If it is found that the short-time energy E of a certain frame AudioFrame h < Denlw, then tentatively set AudioFrame h as the end point ST h ; start searching backward from the ST 2 frame with a window of 15 frames. Compare the short-time zero-crossing rates of each frame in the window in turn. If at least 3 frames in the 15 frames in the window satisfy Dzcrlw ≥ Dzcrhg, then set the starting frame of the window at this time as the end point, otherwise use ST 2 as the end point. 2
[0070] (5) From the starting frame ST 1 To the end frame ST 2 All audio frames between form an audio segment AudioSeg, and end with the end frame ST 2 Starting from the next frame, steps (3) to (5) are repeated until the current audio file segmentation is completed.
[0071] 3. Cough sound feature extraction
[0072] For each audio segment AudioSeg k Extract audio features. The specific steps include:
[0073] (1) Use Fourier transform to transform the audio segment AudioSeg k Convert from time domain to frequency domain;
[0074] (2) The frequency value f of each frame i Transformed into Mel frequency Mel(f i )=2595*lg(1+f i / 700), using a Mel filter bank consisting of 24 Mel filters, and calculating the logarithmic frequency s(m) of each filter output, where represents the audio segment AudioSeg k The frequency of the i-th frame in , 1≤m≤24 represents the sequence number of the filter;
[0075] (3) The logarithmic frequency is transformed through discrete cosine transform to obtain MFCC features, the nth order MFCC features Where 1≤n≤12, represents the 12th-order MFCC features, N represents the number of sampling points in each frame of audio, and M represents the number of filters in the Mel filter bank;
[0076] (4) Solve the first-order difference d of MFCC 1 and the second-order difference d 2 ;
[0077] (5) Combining MFCC features and their first-order and second-order differences as the fusion features of the audio clip (C(n),d 1 ,d 2 ), where C(n) represents the nth-order MFCC feature, 1≤n≤12, d 1 and d 2 They represent the first-order difference and second-order difference of MFCC features respectively.
[0078] 4. Cough sound confirmation: Use the deep neural network ResNet to extract the fusion features (C(n), d 1 ,d 2), train the audio clips generated in step 2, build a cough sound confirmation model CoughModel, and further filter out all cough sounds from the audio clips generated in step 2 to form a cough sound set CoughSet.
[0079] 5. Monitoring object identification
[0080] Use the GMM-UBM method to model the cough sound set CoughSet generated in step 4, and then extract the cough sound set MCoughSet of the monitored object, where GMM-UBM is Gaussian Mixture Model-Universal Background Model.
[0081] The specific process is as attached Figure 3 As shown, the steps are as follows:
[0082] (1) Use a large amount of audio data including coughing, reading, conversation, noise, etc., use the method described in step 3 to extract fusion features, and use the EM iterative algorithm to train the UBM model UModel for general background audio 1 , where the E step uses the Bayesian formula to find the posterior probability of the implicit variable, and the M step uses the posterior probability to update the weights, mean, and variance;
[0083] (2) Using a small amount of speech data sets containing target person labels, based on the general background UBM model trained in step (1), the MAP adaptive algorithm is used to adaptively obtain the UBM model UModel for the target person audio. 2 ;
[0084] (3) Extract the cough sound segment of the subject to be monitored, extract the fusion features according to step 3, and use UModel 1 and UModel 2 Test score 1 and score 2 , if |score 1 -score 2 |>threshold, the cough sound segment is determined as a monitoring object, where threshold is the determination threshold, which is set according to actual experience.
[0085] 6. Cough sound recognition
[0086] Use the fine-tuned BotNet model to identify the coughing sound of the monitored object and determine what disease the monitored object may have. The specific process is as follows: Figure 4 As shown, the steps are as follows:
[0087] (1) Using open source datasets, two BotNet models are trained based on MFCC features, including the voice emotion recognition model BModel 1 , cough sound classification model BModel 2 , BModel 1 and BModel 2 The two models do not contain the final fully connected layer, which is used to extract features related to the emotion and cough classification of the monitored object. 1 and BModel 2 The feature dimension of the output of the two models is 2048; MFCC is Mel Frequency Cepstrum Coefficient, the full spelling is Mel Frequency Cepstrum Coefficient;
[0088] (2) Using the cough dataset CoughDisease with annotated disease diagnosis results, we constructed a cough recognition model BModel based on the BotNet model according to the MFCC features of each cough sound segment and the fusion features composed of the first-order and second-order differences. 3 , whose final fully connected layer also receives BModel 1 and BModel 2 Features of the two model outputs;
[0089] (3) Cough recognition model BModel 3 The output is the probability that the target cough sound may have each disease {p 1 ,p 2 ,…,p a}, and finally determine that the monitored target may have the highest probability p i The corresponding diseases, where 1≤i≤a, represent the serial number of the disease, 1 represents no disease, and each serial number from 2 to a represents a disease with cough symptoms.
[0090] Example
[0091] The voice recognition process of this embodiment is shown in the attached Figure 5 , the model training of cough sound confirmation, monitoring object identification, and cough sound recognition is carried out on the server, and the sound collection, sound segmentation, feature extraction operations, as well as the testing operations of cough sound confirmation, monitoring object sound extraction, and cough sound recognition are carried out on the development board. Public data sets and real data sets are used for model training and testing. The implementation results are as follows:
[0092] ① Use public datasets to train cough sound confirmation models, general audio models, and pre-trained emotion models; use real datasets to train target audio models, pre-trained cough models, and cough recognition models.
[0093] ② Using real data sets to conduct step sound cutting tests, the accuracy of sound cutting is 96.58%.
[0094] ③Using real data sets to conduct cough sound confirmation tests, the recognition accuracy rate reached 93.93%.
[0095] ④ Using public data sets to conduct monitoring object recognition tests, the recognition accuracy rate reaches more than 90%; using real data sets to conduct monitoring object recognition tests, the recognition accuracy rate can reach 100%.
[0096] ⑤ A cough sound recognition test was conducted on a real data set. When the labeled disease categories were no disease, bronchitis cough, pneumonia cough, and respiratory cough, the recognition accuracy reached 78%.
[0097] The experimental results show that the cough sound recognition method for health monitoring of the present invention can accurately perform sound segmentation and extract the cough sound of the monitored target. The accuracy of cough sound recognition is high and can meet the health detection needs of various different application scenarios.
[0098] What is introduced in this embodiment is only an exemplary implementation. However, the present invention can be implemented in many different forms and is not limited to the embodiments described herein. These embodiments are provided to disclose the present invention in detail and completely and to fully convey the scope of the present invention to those skilled in the art. The terms used in the exemplary implementations shown in the drawings of the specification are not limitations of the present invention. In the drawings of the specification, the same units / elements are marked with the same figure.
[0099] Unless otherwise specified, the terms (including technical terms) used herein have the commonly understood meanings to technicians in the relevant technical field; in addition, it is understood that the terms defined in commonly used dictionaries should be understood to have a consistent meaning in the context of their relevant fields, and should not be understood as idealized or overly formal meanings.
Claims
1. A cough sound recognition method for health monitoring, characterized in that: The specific steps include: Step 1, sound collection and noise reduction processing: continuously collect external sounds through the sound collection device, and use the Wiener filter to perform noise reduction processing on the collected sounds; Step 2, cough sound segmentation: According to the short-time zero-crossing rate and short-time energy of the sound signal, endpoint detection is performed on the denoised sound data to remove the silent part and the part that is obviously not a cough sound, and each possible cough sound is segmented; Step 3, cough sound feature extraction: extract MFCC features for each segmented possible cough sound, and fuse the MFCC features with its first-order and second-order differences to form a fusion feature; where MFCC is the Mel frequency cepstrum coefficient; Step 4, cough sound confirmation: Use the deep neural network ResNet to further filter out all possible cough sounds; Step 5, monitoring object identification: Use the GMM-UBM method to score the extracted cough sound to determine whether the cougher is the monitoring object; where GMM-UBM is a Gaussian mixture model-universal background model; Step 6, cough sound recognition: Use two pre-trained BotNet models to extract the emotion and relevant features of cough sounds respectively, then train the cough sound recognition model based on the fusion features of the monitored object’s cough sounds, and finally fuse the features of the pre-trained model with the features of the recognition model to determine what disease the monitored object’s cough sound may be.
2. A cough sound recognition method for health monitoring according to claim 1, characterized in that: The specific steps of step 1 are as follows: Step 1.1, sound collection: Use a sound collection device to automatically collect external sounds, and the collected sounds are an audio file every 30 seconds; Step 1.2, noise reduction: for each audio file collected, use Wiener filter to reduce the background noise in the audio file; Step 1.3, local storage: store the denoised audio file in the local storage space of the acquisition device.
3. A cough sound recognition method for health monitoring according to claim 1, characterized in that: The specific steps of step 2 are as follows: Step 2.1, frame calculation: for the denoised audio file AudioFile i Each frame of AudioFrame j Calculate short-time energy and short-time zero-crossing rate Where i>0 is the serial number of the audio file, j>0 is the audio file AudioFile i The sequence number of the audio frame, x j,n and x j,n-1 AudioFrame j The signal value of the nth and n-1th sampling points in the time window, N is the audio frame AudioFrame j The number of sampling points contained in the time window, sgn(x j,n ) is the audio frame AudioFrame j The sign of the signal value of the nth sampling point in the time window. If x j,n ≥0 then sgn(x j,n )=1, otherwise sgn(x j,n )=-1; Step 2.2, setting thresholds: according to the characteristics of cough sound, set the lower threshold Denlw and upper threshold Denhg of the short-time energy value, and the lower threshold Dzcrlw and upper threshold Dzcrhg of the short-time zero-crossing rate: Denlw=max(max(2.5*(max(E[:10])),en),0.1) Denhg=3.1*Denlw Dzcrlw=min(28,Mzcr+Vzcr) Dzrch=max(Dzcrlw,15) Wherein, E[:10] represents the energy value of the 10 frames before the current frame, en=sum(E[:10]) / 9, max() and sum() represent the maximum value and cumulative sum function, Mzcr and Vzcr represent the average zero-crossing rate and standard deviation of the 10 frames before the current frame, respectively; Step 2.3, determine the starting point: starting from the first frame, compare the short-time energy value of each frame with the Denlw value. If a frame AudioFrame j The short-time energy value E j >Denlw, the frame is recorded as ST1, and then the short-time energy of each frame is compared with Denhg from ST1 onwards; if the subsequent frame has fallen below Denlw before exceeding Denhg, ST1 is not used as the starting point, and the next frame AudioFrame j+1 Start looking for the starting point again, otherwise set ST1 as the starting point; Step 2.4, Determine the end point: After the starting point ST1, compare the short-time energy value of each frame with Denlw. If it is found that the short-time energy E of a certain frame AudioFrame h is less than h Denlw, then tentatively set AudioFrame h as the end point ST2; Starting from the ST2 frame, search backward with a window of 15 frames, and successively compare the short-time zero-crossing rates of each frame within the window. If at least 3 frames in the 15 frames within the window satisfy Dzcrlw≥Dzcrhg, then set the starting frame of the window at this time as the end point, otherwise set ST2 as the end point; Step 2.5, audio segmentation: All audio frames between the starting frame ST1 and the ending frame ST2 form an audio segment AudioSeg, and repeat steps 2.3 to 2.5 starting from the next frame of the ending frame ST2 until the current audio file segmentation is completed.
4. A cough sound recognition method for health monitoring according to claim 1, characterized in that: The specific steps of step 3 are as follows: Step 3.1: for each segmented audio segment AudioSeg k , use Fourier transform to convert the audio segment AudioSeg k Convert from time domain to frequency domain; Step 3.2: Set the frequency value f of each frame i Transformed into Mel frequency Mel(f i )=2595*lg(1+f i / 700), using a Mel filter bank consisting of 24 Mel filters, and calculating the logarithmic frequency s(m) of each filter output, where represents the audio segment AudioSeg k The frequency of the i-th frame in , 1≤m≤24 represents the sequence number of the filter; Step 3.3, the logarithmic frequency is transformed through discrete cosine transform to obtain MFCC features, the nth order MFCC features Where 1≤n≤12, represents the 12th-order MFCC features, N represents the number of sampling points in each frame of audio, and M represents the number of filters in the Mel filter bank; Step 3.4, solve the first-order difference d1 and the second-order difference d2 of MFCC respectively; In step 3.5, the MFCC features and their first-order and second-order differences are combined as the fusion features of the audio clip (C(n), d1, d2), where C(n) represents the n-th order MFCC feature, 1≤n≤12, and d1 and d2 represent the first-order and second-order differences of the MFCC features, respectively.
5. The cough sound recognition method for health monitoring according to claim 1, characterized in that: The specific steps of step 4 are as follows: Step 4.1, using the deep neural network ResNet, the fusion features (C(n), d1, d2) extracted in step 3 are used to train the audio clips generated in step 2 to construct a cough sound confirmation model CoughModel; Step 4.2, use the model CoughModel to monitor each audio clip generated in step 2, determine whether it is a cough sound, and finally find the cough sound set CoughSet.
6. A cough sound recognition method for health monitoring according to claim 1, characterized in that: The specific steps of step 5 are as follows: Step 5.1: Use a large number of public audio data sets containing coughs, readings, conversations, noises, etc., extract fusion features using the method described in step 3, and use the EM iterative algorithm to train the UBM model UModel1 for general background audio. The E step uses the Bayesian formula to calculate the posterior probability of the implicit variable, and the M step uses the posterior probability to update the weight, mean, and variance; Step 5.2: Use a small amount of speech data sets containing target person labels, and based on the general background UBM model trained in step 5.1, use the MAP adaptive algorithm to adaptively obtain the UBM model UModel2 for the target person audio; Step 5.3, extract the cough sound segment of the monitored object, extract the fusion features according to step 3, use UModel1 and UModel2 to test score1 and score2 respectively, if |score1-score2|>threshold, then determine that the cough sound segment is a monitored object, where threshold is the judgment threshold, which is set according to actual experience.
7. A cough sound recognition method for health monitoring according to claim 1, characterized in that: The specific steps of step 6 are as follows: Step 6.1, build a pre-trained model: use the public data set to train two BotNet models based on MFCC features, including the voice emotion recognition model BModel1 and the cough sound classification model BModel2. The two models BModel1 and BModel2 do not contain the final fully connected layer, which is used to extract features related to the monitored object's emotion and cough classification. The feature dimension of the output of the two models BModel1 and BModel2 is 2048; Step 6.2, build a cough recognition model: Use the cough dataset CoughDisease with annotated disease diagnosis results, and build a cough recognition model BModel3 based on the BotNet model according to the MFCC features of each cough sound segment and the fusion features composed of the first-order and second-order differences. The last fully connected layer receives the features output by both BModel1 and BModel2. Step 6.3, cough recognition result: The output of cough recognition model BModel3 is the probability {p1,p2,…,p a }, and finally determine that the monitored target may have the highest probability p i The corresponding diseases, where 1≤i≤a, represent the serial number of the disease, 1 represents no disease, and each serial number from 2 to a represents a disease with cough symptoms.
Citation Information
Cited By
Cough sound recognition method based on PSO-GBDT-LR model
CN120388587A
A cough sound recognition method based on a PSO-GBDT-LR model
CN120388587B
Cough detection and data management method and system based on deep learning and mahalanobis distance modeling
CN121483624A
A cough detection and data management method and system based on deep learning and mahalanobis distance modeling
CN121483624B