You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Scipy Butterworth滤波与原厂软件结果存在差异,请求排查

Butterworth滤波结果与数据源软件存在细微差异排查

我有两份CSV样本数据:一份是未滤波原始数据,另一份是数据源软件通过Butterworth滤波器(遵循CFC180标准)得到的滤波后数据。我尝试用Scipy库的Butterworth滤波器自行处理未滤波数据,绘制对比曲线后发现,整体趋势一致,但放大后存在细微差异。

数据说明

  • 数据列:第0列为时间,第1列为X轴加速度,仅使用这两列数据
  • 采样率:20000Hz
  • X轴硬件AA滤波器(-3db)值:4000Hz

我的Python代码

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from scipy import signal

c_data = {}
xmin = -5.00005
xmax = 5
c_filt = 'black'
g = 9.81

# Butterworth Filter
cfc60 = signal.butter(4, 100, output='sos', fs=20000)
cfc180 = signal.butter(4, 300, output='sos', fs=20000)
cfc600 = signal.butter(4, 1000, output='sos', fs=20000)
cfc1000 = signal.butter(4, 1650, output='sos', fs=20000)


def Acceleration(Axis_name, Axis_data, ymin, ymax, nofilter=False):

    if nofilter is True:
        print("Filtered from Software", Axis_data)
        plt.plot(
            c_data["t"], Axis_data/g, c_filt,
            label=f"{Axis_name}"
        )
    else:
        # CFC180
        Axis_data_filtered = signal.sosfilt(cfc180, Axis_data)
        print("Filtered scipy butter", Axis_data_filtered)
        plt.plot(
            c_data["t"], Axis_data_filtered/g, c_filt,
            label=f"{Axis_name}"
        )

    plt.legend(loc="upper right")
    plt.grid(True)

    plt.axis([xmin, xmax, ymin, ymax])
    plt.tick_params(which='minor', width=1, length=3, color='black')
    plt.minorticks_on()

    plt.xlabel("time [s]")
    plt.ylabel(f"{Axis_name} axle")
    plt.show(block=True)


def GetData(File, filtering=False):

    dataframe = pd.read_csv(File, sep=';', skiprows=0, header=None)
    dfvalues = dataframe.values
    c_data["t"] = dfvalues[:, 0]  # time
    c_data["x_acc"] = dfvalues[:, 1]  # x axle
    Acceleration('X', c_data["x_acc"], -25, 20, filtering)
    return


GetData("unfiltered.csv", False)
# GetData("filtered.csv", True)

样本数据

  • 未滤波原始数据
  • 数据源软件滤波后数据

恳请协助排查差异原因,谢谢!

内容的提问来源于stack exchange,提问作者user1701820

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 08:35:00