matlab中filtfilt函数解析

紧接上一篇,简单分析matlab中的非常好用的 filtfilt 函数,一款零相移滤波函数。
其matlab中的语法如下:

y = filtfilt(data,x);

非常简单,不是一般的简单!然而,其他语言中,不能用!。。。所以只能深扒matlab代码。。。

 y = filter(b(:,ii),a(:,ii),y,zi(:,ii)*y(1));
 y = y(end:-1:1);
 y = filter(b(:,ii),a(:,ii),y,zi(:,ii)*y(1));
 y = y(end-nfact:-1:nfact+1);

意思即: 滤波–翻转–再滤波–再翻转
所以在c语言的编写中,只

你可能感兴趣的:(学习笔记)