图片上面是步骤下面是伪代码,用C++或者python都可以,虽然图片给了步骤但还是不会写
1条回答 默认 最新
- heart_6662 2022-12-27 17:44关注
我会写,但是被骗了几次了,被白嫖钓鱼怕了,若干对你有帮助,希望可以给我个采纳!
这个东西应该是 一个求低通滤波器系数的伪代码,其中 N 是滤波器的阶数,AM 是带通滤波器的最大通带幅度(也称为最大增益),H[k] 是滤波器的频域系数,h[n] 是滤波器的时域系数。
我分析了一下:在这个伪代码中,首先使用 DFT 求出频域系数 H[k],然后使用 IDFT 求出时域系数 h[n]。求出的 h[n] 是一个对称的序列,所以只需要考虑 h[n] 在 n=1 到 n=N/2 的部分,其余部分可以用 h[-n] 的值求出
接下来是我的代码展示import numpy as np # 定义滤波器的阶数 N 和最大通带幅度 AM N = 100 AM = 10 # 求出频域系数 H[k] H = np.zeros(N) # H[k] 的初始值都为 0 for k in range(N): H[k] = H(ej(k)) # 根据伪代码中的公式计算 H[k] # 求出时域系数 h[n] h = np.fft.ifft(H) # 使用 NumPy 库的 ifft 函数求 IDFT # 只需要考虑 h[n] 在 n=1 到 n=N/2 的部分 h = h[:N//2+1] # 对称求出 h[-n] 的值 for n in range(1, N//2): h[-n] = h[n] # 绘制滤波器系数 h[n] 的图像 import matplotlib.pyplot as plt plt.plot(h) plt.show()
其中,H(ej(k)) 是你自己实现的函数,根据伪代码中的公式计算 H[k]。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥17 pro*C预编译“闪回查询”报错SCN不能识别
- ¥15 微信会员卡接入微信支付商户号收款
- ¥15 如何获取烟草零售终端数据
- ¥15 数学建模招标中位数问题
- ¥15 phython路径名过长报错 不知道什么问题
- ¥15 深度学习中模型转换该怎么实现
- ¥15 HLs设计手写数字识别程序编译通不过
- ¥15 Stata外部命令安装问题求帮助!
- ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
- ¥15 TYPCE母转母,插入认方向