本发明涉及人工智能辅助诊断领域,尤其是一种利用咳嗽声检测肺部疾病的方法和装置。
背景技术:
1、随着工业技术的不断发展,通过深度学习进行音频分类的技术不断成熟,人们更加关注相关技术在实际中的应用,利用体音检测疾病成为了目前的研究热点。感染肺部疾病之后,咳嗽是主要的症状之一,研究人员发现不同肺部疾病患者的咳嗽声具有不同的潜在特性,因此利用咳嗽声来检测肺部疾病是一种可以实现的快速检测手段。
2、目前常用的方法主要有以下两种。一是利用在帧级别或者段级别提取咳嗽音频相关的统计特征后利用机器学习算法进行分类。特征通常包括均方根能量、过零率、频谱质心以及它们的均值、方差等参数,之后通过逻辑回归、支持向量机等机器学习算法进行分类。二是提取基于短时傅里叶变换的时频特征输入到深度神经网络进行分类,常用的神经网络包括卷积神经网络、长短时记忆神经网络、transformer等。在所有这些研究中卷积神经网络取得了较好的分类性能,但也存在一定的局限性。
技术实现思路
1、有鉴于此,本发明的主要目的在于提供一种利用咳嗽声检测肺部疾病的方法和装置,能提高分类网络对于差异性特征和位置信息的提取能力,很好地利用咳嗽音频中全部单个咳嗽音片段的差异性特征进行分类,进而提高检测结果的准确度。
2、为达到上述目的,一方面,本申请提供了一种利用咳嗽声检测肺部疾病的方法,包括:
3、去除原始咳嗽音频中非咳嗽音片段,得到咳嗽音频,以及该咳嗽音频中各单个咳嗽片段的起始和结束时间;
4、依据各单个咳嗽片段的起始和结束时间,分别生成各单个咳嗽片段对应的对数梅尔普矩阵,并分别计算各单个咳嗽片段对应的位置编码矩阵;
5、依据各单个咳嗽片段对应的对数梅尔普矩阵和位置编码矩阵,得到所述咳嗽音频的特征矩阵;
6、将咳嗽音频的特征矩阵归一化后乘比例因子,将得到的乘积与咳嗽音频的特征矩阵相加,并将得到的和输入分类网络分类。
7、在一个可能的实现中,所述生成单个咳嗽片段对应的对数梅尔普矩阵为:
8、以该单个咳嗽片段的结束时间和起始时间的差值为该单个咳嗽片段的长度,以该单个咳嗽片段的起始时间为起始点,对该单个咳嗽片段进行分帧加窗,并对得到的每一帧做短时傅里叶变换后求模平方得到功率谱;
9、将功率谱乘以特征维数得到梅尔频谱矩阵,对梅尔频谱矩阵取对数得到对数梅尔普矩阵。
10、在另一个可能的实现中,所述计算单个咳嗽片段对应的位置编码矩阵为:分别计算该单个咳嗽片段对应的对数梅尔谱矩阵中各特征的位置编码,公式如下:
11、
12、
13、其中,pos表示特征的帧序号;2i表示特征维数的序号,i取值从0到d/2-1;d表示特征维数;pe(pos,2i)即表示对数梅尔谱矩阵中第pos帧、第2i维特征的位置编码。
14、在另一个可能的实现中,所述得到所述咳嗽音频的特征矩阵为:分别将各单个咳嗽片段对应的对数梅尔普矩阵和其对应的位置编码矩阵相加,输出各单个咳嗽片段的特征矩阵;将各单个咳嗽片段的特征矩阵在时间维度上拼接,得到所述咳嗽音频的特征矩阵。
15、在另一个可能的实现中,所述得到所述咳嗽音频的特征矩阵为:将各单个咳嗽片段对应的对数梅尔普矩阵在时间维度上拼接,将各单个咳嗽片段对应的位置编码矩阵在时间维度上拼接;将拼接后得到的两矩阵相加,得到所述咳嗽音频的特征矩阵。
16、另一方面,本申请还提供了一种利用咳嗽声检测肺部疾病的装置,包括:咳嗽音检测单元、音频信号处理单元、拼接单元、归一化单元和分类网络单元;其中,
17、咳嗽音检测单元,用于去除原始咳嗽音频中非咳嗽音片段,得到咳嗽音频,以及该咳嗽音频中各单个咳嗽片段的起始和结束时间;
18、音频信号处理单元,用于依据各单个咳嗽片段的起始和结束时间,分别生成各单个咳嗽片段对应的对数梅尔普矩阵;并用于分别计算各单个咳嗽片段对应的位置编码矩阵;
19、拼接单元,用于依据各单个咳嗽片段对应的对数梅尔普矩阵和位置编码矩阵,得到所述咳嗽音频的特征矩阵;
20、归一化单元,用于将咳嗽音频的特征矩阵归一化后乘比例因子,将乘积与咳嗽音频的特征矩阵相加,并将得到的和输入分类网络单元;
21、分类网络单元,用于将所述得到的和分类。
22、在一个可能的实现中,所述生成单个咳嗽片段对应的对数梅尔普矩阵,所述音频信号处理单元,具体用于以该单个咳嗽片段的结束时间和起始时间的差值为该单个咳嗽片段的长度,以该单个咳嗽片段的起始时间为起始点,对该单个咳嗽片段进行分帧加窗,并对得到的每一帧做短时傅里叶变换后求模平方得到功率谱;并用于将功率谱乘以特征维数得到梅尔频谱矩阵,对梅尔频谱矩阵取对数得到对数梅尔普矩阵。
23、在另一个可能的实现中,所述计算单个咳嗽片段对应的位置编码矩阵,所述音频信号处理单元,具体用于分别计算该单个咳嗽片段对应的对数梅尔谱矩阵中各特征的位置编码,公式如下:
24、
25、
26、其中,pos表示特征的帧序号;2i表示特征维数的序号,i取值从0到d/2-1;d表示特征维数;pe(pos,2i)即表示对数梅尔谱矩阵中第pos帧、第2i维特征的位置编码。
27、在另一个可能的实现中,所述得到所述咳嗽音频的特征矩阵,所述拼接单元,具体用于分别将各单个咳嗽片段对应的对数梅尔普矩阵和其对应的位置编码矩阵相加,输出各单个咳嗽片段的特征矩阵;并用于将各单个咳嗽片段的特征矩阵在时间维度上拼接,得到所述咳嗽音频的特征矩阵。
28、在另一个可能的实现中,所述得到所述咳嗽音频的特征矩阵,所述拼接单元,将各单个咳嗽片段对应的对数梅尔普矩阵在时间维度上拼接,将各单个咳嗽片段对应的位置编码矩阵在时间维度上拼接;将拼接后得到的两矩阵相加,得到所述咳嗽音频的特征矩阵。
29、基于上述,本发明提供的一种利用咳嗽声检测肺部疾病的方法和装置,具有以下优点和特点:
30、1、对单个咳嗽片段进行位置编码,得到的位置编码矩阵具有一定的时移不变性,从而实现时域时移的自适应,提升模型的抗干扰能力;
31、2、对单个咳嗽片段的位置编码,使得分类网络具有学习咳嗽音频各单个咳嗽片段时域上相近位置信息的能力,并使得相同频域窗下的特征依然具有相同的位置编码,进而使分类网络对于频域上的差异性特征有更强的区分能力。
1.一种利用咳嗽声检测肺部疾病的方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述生成单个咳嗽片段对应的对数梅尔普矩阵为:
3.根据权利要求2所述的方法,其特征在于,所述计算单个咳嗽片段对应的位置编码矩阵为:分别计算该单个咳嗽片段对应的对数梅尔谱矩阵中各特征的位置编码,公式如下:
4.根据权利要求1、2或3所述的方法,其特征在于,所述得到所述咳嗽音频的特征矩阵为:分别将各单个咳嗽片段对应的对数梅尔普矩阵和其对应的位置编码矩阵相加,输出各单个咳嗽片段的特征矩阵;将各单个咳嗽片段的特征矩阵在时间维度上拼接,得到所述咳嗽音频的特征矩阵。
5.根据权利要求1、2或3所述的方法,其特征在于,所述得到所述咳嗽音频的特征矩阵为:将各单个咳嗽片段对应的对数梅尔普矩阵在时间维度上拼接,将各单个咳嗽片段对应的位置编码矩阵在时间维度上拼接;将拼接后得到的两矩阵相加,得到所述咳嗽音频的特征矩阵。
6.一种利用咳嗽声检测肺部疾病的装置,其特征在于,包括:咳嗽音检测单元、音频信号处理单元、拼接单元、归一化单元和分类网络单元;其中,
7.根据权利要求6所述的装置,其特征在于,所述生成单个咳嗽片段对应的对数梅尔普矩阵,所述音频信号处理单元,具体用于以该单个咳嗽片段的结束时间和起始时间的差值为该单个咳嗽片段的长度,以该单个咳嗽片段的起始时间为起始点,对该单个咳嗽片段进行分帧加窗,并对得到的每一帧做短时傅里叶变换后求模平方得到功率谱;并用于将功率谱乘以特征维数得到梅尔频谱矩阵,对梅尔频谱矩阵取对数得到对数梅尔普矩阵。
8.根据权利要求7所述的装置,其特征在于,所述计算单个咳嗽片段对应的位置编码矩阵,所述音频信号处理单元,具体用于分别计算该单个咳嗽片段对应的对数梅尔谱矩阵中各特征的位置编码,公式如下:
9.根据权利要求6、7或8所述的装置,其特征在于,所述得到所述咳嗽音频的特征矩阵,所述拼接单元,具体用于分别将各单个咳嗽片段对应的对数梅尔普矩阵和其对应的位置编码矩阵相加,输出各单个咳嗽片段的特征矩阵;并用于将各单个咳嗽片段的特征矩阵在时间维度上拼接,得到所述咳嗽音频的特征矩阵。
10.根据权利要求6、7或8所述的装置,其特征在于,所述得到所述咳嗽音频的特征矩阵,所述拼接单元,将各单个咳嗽片段对应的对数梅尔普矩阵在时间维度上拼接,将各单个咳嗽片段对应的位置编码矩阵在时间维度上拼接;将拼接后得到的两矩阵相加,得到所述咳嗽音频的特征矩阵。