news 2026/4/16 3:13:24

基于时域特征和频域特征组合的敏感特征集,再利用CNN进行轴承故障诊断(python编程)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
基于时域特征和频域特征组合的敏感特征集,再利用CNN进行轴承故障诊断(python编程)

1.文件夹介绍(使用的是CWRU数据集)

0HP-3HP四个文件夹装载不同工况下的内圈故障、外圈故障、滚动体故障和正常轴承数据。

2.模型

按照1024的长度分割样本,构建内圈故障、外圈故障、滚动体故障和正常轴承样本集

2.1.计算11种时域特征值

# 计算时域特征 def calculate_time_domain_features(signal): features = [] # 均值 features.append(np.mean(signal)) # 标准差 features.append(np.std(signal)) # 方根幅值 features.append(np.sqrt(np.mean(np.square(signal)))) # 均方根值 features.append(np.sqrt(np.mean(np.square(signal)))) # 峰值 features.append(np.max(signal)) # 波形指标 features.append(np.mean(np.abs(signal)) / np.sqrt(np.mean(np.square(signal)))) # 峰值指标 features.append(np.max(np.abs(signal)) / np.mean(np.abs(signal))) # 脉冲指标 features.append(np.max(np.abs(signal))) # 裕度指标 features.append(np.max(np.abs(signal)) / np.sqrt(np.mean(np.square(signal)))) # 偏斜度 features.append(skew(signal)) # 峭度 features.append(kurtosis(signal)) return features

2.2.计算12种频域特征值

# 计算频域特征 def calculate_frequency_domain_features(signal, sample_rate): features = [] # 快速傅里叶变换 spectrum = fft(signal) spectrum = np.abs(spectrum)[:len(spectrum)//2] # 取一半频谱 #频域指标1 features.append(np.mean(spectrum)) # 频域指标2 features.append(np.var(spectrum)) # 频域指标3 features.append(np.sqrt(np.mean(np.square(spectrum)))) # 频域指标4 features.append(np.max(spectrum) / np.sqrt(np.mean(np.square(spectrum)))) # 频域指标5 features.append(kurtosis(spectrum)) # 频域指标6 features.append(skew(spectrum)) # 频域指标7 features.append(np.max(spectrum)) # 频域指标8 features.append(np.min(spectrum)) # 频域指标9 features.append(np.max(spectrum) - np.min(spectrum)) # 频域指标10 features.append(np.max(np.abs(spectrum)) / np.mean(np.abs(spectrum))) # 频域指标11 features.append(np.max(np.abs(spectrum)) / np.sqrt(np.mean(np.square(spectrum)))) # 频域指标12 peak_index = np.argmax(spectrum) peak_frequency = peak_index * sample_rate / len(spectrum) features.append(peak_frequency) return features

2.3.构建评价指标,从时域和频域一共23个指标中选出对故障特征最敏感的前4个特征,这里用的是方差评价指标,也可以选用其它的评价指标

# 选择前4个敏感特征 import numpy as np from sklearn.model_selection import train_test_split # 将特征集转换为NumPy数组 feature_set = np.array(feature_set) # 计算评价指标(这里以方差为例) scores = np.var(feature_set, axis=0) # 选出最敏感的4个特征 selected_indices = np.argsort(scores)[-4:] selected_features = feature_set[:, selected_indices]

最后选出 的敏感特征集

2.4.将每个样本的这4个特征输入CNN模型进行分类(也可以输入给SVM或KNN等分类器)

3.效果

0HP数据集

1HP数据集

2HP数据集

3HP数据集

总的代码和数据集放在了压缩包里

plt.rcParams['font.size'] = 25 # 绘制损失曲线 plt.figure(figsize=(10, 8)) plt.plot(train_loss, label='训练集损失') plt.plot(test_loss, label='测试集损失') plt.xlabel('迭代次数') plt.ylabel('损失') plt.title('1HP训练集与测试集损失') plt.legend() plt.savefig('0.png', dpi=600,bbox_inches = "tight") plt.show() # 绘制准确率曲线 plt.figure(figsize=(10, 8)) plt.plot(train_accuracy, label='训练集准确率') plt.plot(test_accuracy, label='测试集准确率') plt.xlabel('迭代次数') plt.ylabel('准确率') plt.title('1HP训练集与测试集准确率') plt.legend() plt.savefig('1.png', dpi=600,bbox_inches = "tight") plt.show() #可以关注:https://mbd.pub/o/bread/ZJuXmZtt
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 13:04:43

毕业论文神器!千笔·降AI率助手,全网顶尖的降AI率软件

在AI技术迅速渗透学术写作领域的当下,越来越多的研究生开始借助AI工具提升论文撰写效率。然而,随之而来的AI生成内容检测问题也愈发严峻——随着各大查重系统不断升级算法,对AI痕迹的识别能力显著增强,论文中的AI率一旦超标&#…

作者头像 李华
网站建设 2026/4/15 16:58:02

登顶Hugging Face论文热榜,LLM重写数据准备的游戏规则

在企业级系统中,数据团队普遍面临一个困境:模型迭代飞速,但数据准备的「老旧管道」却愈发沉重。清洗、对齐、标注…… 这些工作依然深陷于人工规则与专家经验的泥潭。您的团队是否也为此困扰?数据格式五花八门,正则表达…

作者头像 李华
网站建设 2026/4/16 11:13:59

PCB耐电流测试优选:耐电流测试仪Bamtone HCT系列

在电子制造行业,PCB的可靠性与安全性至关重要,而耐电流能力是评估其性能的关键指标之一。作为国内领先的PCB测量仪器、智能检测设备等专业解决方案供应商,班通科技凭借多年行业深耕和行业创新,自研推出了Bamtone HCT 80系列自动耐…

作者头像 李华
网站建设 2026/4/16 7:48:58

Claude Code提示词案例(添加任务列表)

E:\source\aa2_agent12_020401\ui\app\courses\[id]\page.tsx文件需要开发 目前的业务逻辑: 1. 168行的按钮ButtonAntd,用于AI生成内容,现在暂时称为生成按钮。点击生成按钮,页面显示【正在生成内容...】,生成按钮是通…

作者头像 李华
网站建设 2026/4/16 13:04:53

springboot 整合 springMvc(包含springmvc的拦截器的使用)

文章目录项目目录pom.xmlMain 程序入口配置文件application.yml自定义外部资源文件夹的路径resources / static / login.htmlresources / webapp/ register.html拦截器springMvc配置文件 WebMvcConfig .javacontroller项目目录 pom.xml <?xml version"1.0" enco…

作者头像 李华
网站建设 2026/4/16 10:22:07

金属检测流程更规范:IACheck × AI审核提升硬度检测报告的合规性与一致性

在装备制造、工程结构、汽车零部件及新材料应用等领域&#xff0c;金属材料性能始终是质量控制与安全评估的重要基础。其中&#xff0c;硬度检测作为反映材料力学性能的重要指标&#xff0c;被广泛应用于原材料验收、工艺验证及成品质量判定等多个环节。相比检测操作本身&#…

作者头像 李华