经验模态能量提取

在使用pyemd库进行数据可视化时,尝试调用Visualisation.plot_imfs方法绘制IMFs和残差,但遇到了TypeError,问题出在将AxesSubplot对象转换为列表的操作上。这可能是因为预期的输入不正确,导致迭代一个不可迭代的对象。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
Cell In[11], line 10
      7 imfs, res = emd.get_imfs_and_residue()
      9 vis = Visualisation()
---> 10 vis.plot_imfs(imfs=imfs, residue=res, t=time, include_residue=True)
     11 # 绘制并显示所有提供的IMF的瞬时频率
     12 vis.plot_instant_freq(time, imfs=imfs)

File D:\Anaconda3\lib\site-packages\pyemd\visualisation.py:62, in Visualisation.plot_imfs(self, imfs, residue, t, include_residue)
     59 fig, axes = plt.subplots(num_rows, 1, figsize=(self.PLOT_WIDTH, num_rows * self.PLOT_HEIGHT_PER_IMF),dpi=300)
     61 if num_rows == 1:
---> 62     axes = list(axes)
     64 axes[0].set_title("Time series")
     66 for num, imf in enumerate(imfs):

TypeError: 'AxesSubplot' object is not iterable

 

### 使用模态分解方法提取退化指标 #### 技术原理 模态分解是一种用于分析复杂信号的方法,能够将原始信号分离成若干个具有不同频率特性的子信号。这种方法广泛应用于机械健康监测、振动分析等领域,在这些领域中,设备状态的变化通常会反映在其产生的信号特性变化上。 对于退化指标的提取而言,可以通过对采集到的时间序列数据执行模态分解操作,从而获得一系列本征模式函数(IMF),每个IMF代表了原信号的一个特定振荡成分[^1]。通过对各个IMF进一步分析可以得到关于系统性能衰退程度的关键信息。 #### 实现方式 在具体实施过程中,常用的模态分解算法经验模态分解(EMD)[^2]及其变体如集合经验模态分解(EEMD)以及总体平均经验模态分解(MEMD)等。下面给出一段Python代码示例展示如何使用PyEMD库来进行基本的经验模态分解: ```python from pyemd import EMD import numpy as np import matplotlib.pyplot as plt # 创建模拟信号 t = np.linspace(0, 4*np.pi, 800) s = np.sin(t*5.0)*np.exp(-t/7.) + t*t/9. # 初始化EMD对象并进行分解 decomposer = EMD() imfs = decomposer(s) # 绘制结果图 plt.figure(figsize=(10, 6)) for i in range(len(imfs)): plt.subplot(len(imfs)+1, 1, i+1) plt.plot(t, imfs[i], 'r') plt.ylabel('IMF %i'%(i+1)) plt.subplot(len(imfs)+1, 1, len(imfs)+1) plt.plot(t, s,'k') plt.ylabel('Original Signal') plt.show() ``` 此段代码展示了如何创建一个简单的正弦波衰减加二次项作为测试信号,并对其进行EMD分解,最后绘制出所有的IMFs连同原始信号一起显示出来以便观察对比效果。 #### 应用场景 - **机械设备故障诊断**:通过监控旋转部件的工作状况,当发现某些频带内的能量突然增加或减少时,则可能预示着即将发生的磨损或其他形式的老化现象。 - **电力系统稳定性评估**:电网电压波动情况下的稳定裕度预测;电能质量检测中的谐波失真测量等方面也存在大量应用实例。 - **生物医学工程**:心电信号QRS波群形态改变可用于心脏病早期筛查;脑电图EEG异常放电特征捕捉有助于癫痫发作预警等功能开发。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

优化大师傅

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值