import numpy as np
import math
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False #用来正常显示负号
2. 自定义函数
# 一维时序信号赋值归一化
def normalized(origin_signal):
y = origin_signal - np.mean(origin_signal) # 消除直流分量
y = y / np.max(np.abs(y)) # 幅值归一化
return y
3. 完整代码
import numpy as np
import math
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False # 用来正常显示负号
# 一维时序信号赋值归一化
def normalized(origin_signal):
y = origin_signal - np.mean(origin_signal) # 消除直流分量
y = y / np.max(np.abs(y)) # 幅值归一化
return y
data = [1,2,4,3,5,2,7,5,2,6,5,9,10,2,5,4,3]
origin_signal = np.array(data)
normalized_data = normalized(origin_signal)
plt.plot(origin_signal)
legend = "原始数据"
plt.legend(legend)
plt.show()
plt.plot(normalized_data)
legend = "幅值归一化"
plt.legend(legend)
plt.show()
4. 效果展示
原始信号:
幅值归一化信号:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)