Canmv k230 案例5.3——小波奇异性检测(三)

Canmv k230 案例5.3——应用小波变换—奇异性检测(三)

小波函数
在这里插入图片描述

函数性质
在这里插入图片描述

代码

# 基础示例  奇异性检测
import array
import math
PI = 3.14159265358979323846264338327950288419716939937510

rx = []              # 空列表,用于储存生成的输入数据
def input_data():    # 输入列表,突变信号
    for i in range(200):
        data0 = 50 * math.exp(i/300) * math.sin(2 * PI * i * 0.01)
        rx.append(data0)   # 类型不能转换是为什么?

    for i in range(200,300):
        data1 = 50 * math.exp(i/300) * math.sin(2 * PI * i * 0.01 *200)+30
        rx.append(data1)

    for i in range(300,400):
        data2 = 50 * math.exp(i/300) * math.sin(2 * PI * i * 0.01 *200)+10
        rx.append(data2)

    for i in range(400,500):
        data3 = 50 * math.exp(i/300) * math.sin(2 * PI * i * 0.01 *200)+10 + 250 * math.sin(2*PI *i *0.003)
        rx.append(data3)

input_data()
print(rx)

yy=[]
# 长度为5
# 高斯函数一阶导数
G1=[-0.270670566473225,-0.606530659712633,0,0.606530659712633,0.270670566473225]
y=[0,0,0,0,0]

for i in range(490):
    x=rx[0+i:5+i]
    for i in range(5):
        y[i]=G1[i]*x[i]
    yy.append(sum(y))

print(yy)

设置适当的滤波器实现波形突变检测,实际效果,串口输出结果如下图所示

  • 8
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值