news 2026/5/17 7:27:31

基于深度学习的肺音分类算法研究

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
基于深度学习的肺音分类算法研究

摘要:肺部听诊是临床诊断呼吸系统疾病的重要手段,但传统人工听诊依赖医生经验,存在主观性强、效率低等问题。本文提出一种基于卷神经网络(CNN)的肺音自动分类方法,实现对异常呼吸音的智能识别。

项目方案:基于深度学习的肺音分类算法研究

项目简介

本系统是一个基于卷积神经网络的肺部听诊音智能分类平台,通过分析梅尔频谱图特征自动识别啰音和哮鸣音等异常呼吸音,辅助医进行肺部疾病的初步筛查。

系统概述

肺部听诊是临床诊断呼吸系统疾病的重要手段,但传统人工听诊依赖医生经验,存在主观性强、效率低等问题。本文提出一种基于卷神经网络(CNN)的肺音自动分类方法,实现对异常呼吸音的智能识别。

本研究首先对原始肺音信号进行预处理,包括重采样至7000Hz、80-3000Hz带通滤波去除环境噪声、对数压缩及音量归一化。随后,采 用基于频谱功率包络的峰值检测算法自动识别呼吸周期,并提取梅尔频谱图(Mel Spectrogram)作为深度学习模型的输入特征。针对 医学数据样本不平衡问题,引入时间畸变、频率掩蔽、时间掩蔽等数据增强策略,并采用过采样技术平衡各类别样本。

在模型设计上,构建了一个轻量级CNN网络,包含两层卷积模块(卷积-批归一化-ReLU-池化)和全局平均池化层,实现对正常呼吸音啰音(Crackles)、哮鸣音(Wheezes)及混合异常音的四分类任务。模型采用带类别权重的交叉熵损失函数和Adam优化器进行训练。

实验结果表明,该方法能够有效识别肺音中的异常特征,为计算机辅助肺部疾病筛查提供了可行的技术方案。本文同时开发了基于PySide6的可视化系统,集成数据处理、模型训练、结果分析和实时预测功能,具有良好的实用价值。

系统架构

PySide6 GUI 前端 + PyTorch CNN 后端,通过 Librosa 提取肺音梅尔频谱图特征,实现四分类(正常/啰音/哮鸣音/两者)的深度学习肺音诊断系统。

项目结构

PySide6 GUI主程序(main.py) + Librosa音频处理模块(data_processing.py) + PyTorch CNN训练模块(model_training.py) 三层架构,配合示例肺音数据(audio_some/)和预训练模型(model.pth)。

目录结构

核心模块

系统采用模块化设计,由音频预处理、特征提取、模型训练和结果输出四大核心模块组成。音频预处理模块通过重采样至7kHz、80-3000Hz带通滤波和对数压缩消除噪声并归一化音量;特征提取模块基于呼吸周期峰值检测切分音频片段,利用Librosa计算梅尔谱图并进行类别不平衡过采样;模型训练模块采用轻量级CNN(Conv2d+BatchNorm+全局平均池化)结合加权交叉熵损失和数据增──(时间畸变/频率掩蔽),实现四分类学习;结果输出模块支持QChart训练曲线可视化、分类报告表格和混淆矩阵展示,实现从肺音采集到智能诊断的完整闭环。

快速开始

运行 python main.py 启动系统,依次完成”数据处理”→”模型训练”→”训练结果”→”肺音预测”四步操作即可。

环境要求

Python 3.8+,依赖 PyTorch(深度学习)、PySide6(GUI界面)、Librosa(音频处理)、NumPy/SciPy(数值计算)、scikit-le arn(评估指标),支持CPU和CUDA GPU加速。

运行实验

启动系统后,在”数据处理”页面选择肺音数据目录(含.wav音频和.txt标注文件)点击”开始处理数据”提取梅尔频谱图特征;跳”模型训练”页面配置训练轮数(100)、学习率(0.001)、批次大小(8)后点击”开始训练”;训练完成后在”训练结果”页面查看准确率/损失曲线、混淆矩阵和分类报告;最后在”肺音预测”页面加载模型、添加待测音频,点击”开始智能预测”获取四分类结果及概率

查看结果

训练完成后,”训练结果”页面展示训练集/验证集的准确率和损失曲线,评估报告表格显示各类别(正常/啰音/哮鸣音/两者)的确率、召回率、F1分数和样本数,混淆矩阵直观呈现分类效果;预测结果显示每个音频文件的分类类别及各类别概率百分比。

实验结果

系统能够准确识别肺音中的异常呼吸音,通过CNN模型对梅尔频谱图特征学习实现正常/啰音/哮鸣音/两者的四分类,训练曲线收稳定,可辅助肺部疾病初步筛查。

识别效果

图1 系统界面

图2 数据处理

图3 模型训练

图4 训练结果

图5 使用当前训练模型

图6 肺音正常

图7 肺音正常

图8 肺音正常

图9 肺音正常

图10 哮鸣音

图11 肺音正常

图12 肺音正常

图13 肺音正常

图14 肺音正常

图15 哮鸣音

结果点评

系统整体运行稳定,轻量级CNN配合数据增强和类别过采样有效应对小样本不平衡问题,分类结果准确可靠,满足肺音智能诊断的实际需求。

项目资源

项目包含3个Python源文件(共约2589行代码)、9对示例肺音音频及标注文件、1个预训练模型文件,开箱即用。

关于项目

本项目为基于深度学习的肺音分类研究系统,通过分析肺部听诊音频自动识别异常呼吸音(啰音/哮鸣音),可辅助医生进行肺部疾病的初步筛查和诊断。

项目背景

肺部听诊是呼吸系统疾病诊断的重要手段,传统人工听诊依赖医生经验且效率有限,本系统采用CNN对梅尔频谱图特征学习实现肺音智能分类,为计算机辅助诊断提供技术支持。

作者信息

作者:Bob (张家梁)
原创声明:本项目为原创作品

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/16 19:46:09

Kotlin编程语言入门与常见问题

麻烦点赞: https://t.csdn.cn/ThlhE 谢谢!接下来,正片开始。 Kotlin是一种具有显著特性的编程语言,新手入门可先了解其入门知识,以及新手可能遇到的常见问题。 入门知识 与Java的关系:Kotlin与Java语言具…

作者头像 李华
网站建设 2026/5/15 11:26:01

三角形正反面之谜:三个点如何决定朝向?

你在做 3D 的时候,迟早会遇到一个“灵异事件”: 模型明明在眼前,结果转个角度它就消失了 开了背面剔除(Backface Culling),模型像被削了一层皮 做了镜像(Scale = -1),整个模型忽然“里外翻转” 阴影破洞、轮廓闪烁、某些面忽隐忽现 这时候很多人第一反应是:法线坏了?…

作者头像 李华
网站建设 2026/5/16 19:01:38

同花顺 app 设置技巧

自选分添加,是在右下就 同顺商城里面设置,搜索添加横屏日线操作:长按是日线游走。否则是日线时间滑动。

作者头像 李华