我正在寻找时间序列的等价物 idealfilter这是在 Matlab 中为 Python 实现的。
我的目标是使用 Eulerian Video Magnification paper 中使用的离散余弦变换实现理想滤波器在 Python 中,以便从标准视频中获取人类的心跳。我正在使用他们的视频作为我的输入,并且我已经实现了带通滤波器方法,但我一直无法找到在我的脚本中使用的 idealfilter 方法。
他们声称他们使用 0.83 - 1.0Hz 的 DCT 实现了一个理想的滤波器。
我的问题是 Matlab 中的 idealfilter 将截止频率作为输入,但我认为它不是用 dct 实现的。
相比之下,scipy.fftpack 中的 DCT 滤波器不会将截止频率作为输入。
如果我必须在某种类型的继承中使用这些,请告诉我。
如果存在这样的等效函数,我想尝试使用它,看看它是否会产生与他们所获得的结果相似的结果。
最佳答案
非因果意味着您的过滤器取决于 future 的输入。 DCT 是一种变换,而不是过滤器。你想要一个过滤器。
您想对指定范围内的数据应用带通滤波器,因此我会使用巴特沃斯滤波器。
这是一些示例代码:https://stackoverflow.com/a/12233959/1097117
所有这一切中最棘手的部分是根据您的奈奎斯特频率获取所有内容。
关于python - 在 Scipy(或其他库)中是否有等效于 Python 的 matlab 'idealfilter'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12416772/