一维振动信号变为二维灰度图,利用局部二值模式(LBP)深化灰度图特征,然后利用CNN进行特征提取,最后使用softmax分类器和SVM进行分类对比(Python代码,解压缩后直接运行)

运行效果:一维振动信号变为二维灰度图,利用局部二值模式(LBP)深化灰度图特征,然后利用CNN进行特征提取,最后使用softmax分类器和SVM进行分类对比(Python_哔哩哔哩_bilibili

所有用到的库的版本

 

1.数据集(凯斯西储大学CWRU数据集),四种负载下数据集,每种负载下分别有内圈故障,外圈故障,滚动体故障和正常四种状态。

2.项目流程

以0HP文件夹为例,打开后如下图所示

create_picture.py是将一维信号转成二维灰度图像的程序,

code.py是主程序,主要功能:读取灰度图像数据集,利用局部二值模式(LBP)对灰度图像特征提取,突出故障特征,分成训练集和测试集(4:1),再利用 CNN进行特征提取。针对CNN提取到的特征,第一种方法是利用softmax进行分类,获得测试准确率;第二种方式是,利用SVM(又分了两种不同核参数)进行分类,获得测试准确率。

3.效果图

0HP数据集

随意选取一张灰度图像的原始图像和经局部二值模式处理后的照片展示

softmax分类器下结果可视化

 

 

 SVM分类器下结果可视化

C=1

 C=100

CNN提取的训练集特征可视化(softmax/svm分类器前一层的特征) 

CNN提取的测试集特征可视化(softmax/svm分类器前一层的特征)

1HP数据集

softmax分类器

训练集和测试集的准确率曲线

 

 

 SVM分类器

C=1

C=100

 

 CNN提取的训练集特征可视化(softmax/svm分类器前一层的特征) 

CNN提取的测试集特征可视化(softmax/svm分类器前一层的特征)

 

2HP数据集 

softmax分类器

   

 

 

 

 SVM分类器

C=1

 

C=100 

CNN提取的训练集特征可视化(softmax/svm分类器前一层的特征)  

CNN提取的测试集特征可视化(softmax/svm分类器前一层的特征) 

 

 3HP数据集

 

softmax分类器 

 

 

 SVM分类器

C=1

 

C=100 

 

CNN提取的训练集特征可视化(softmax/svm分类器前一层的特征)   

CNN提取的测试集特征可视化(softmax/svm分类器前一层的特征)  

 

 4种负载下的平均测试集准确率(每个实验跑5次)

0HP1HP2HP3HP
softmax分类器100%99.37%99.27%99.68%
SVM(C=1)分类器100%99.69%99.27%100%
SVM(C=100)分类器99.69%99.69%99.27%100%

实验结果为,softmax分类器在四种负载下的平均准确率为99.58%,svm分类器在四种负载下的平均准确率为99.74%(C=1),99.66(C=100)。

效果最好的是SVM(C=1),但是也没高出softmax分类器太多,因为从CNN提取的特征可视化可以看出,经LBP深化灰度图像特征,再经CNN提取的特征已经有很好的可区分性了。

对项目感兴趣的,可以关注最后一行

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import cv2
import os
import keras
import tensorflow as tf
from tqdm import tqdm
from sklearn import __version__ as sklearn_version
from matplotlib import __version__ as matplotlib_version
#数据和代码的压缩包:https://mbd.pub/o/bread/ZJ6bkp1p

  • 1
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

深度学习的奋斗者

你的鼓励是我努力的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值