filtfilt
영위상(Zero-Phase) 디지털 필터링
구문
설명
는 입력 데이터 y = filtfilt(b,a,x)x를 순방향과 역방향 모두로 처리하여 영위상 디지털 필터링을 수행합니다. 이 함수는 데이터를 순방향으로 필터링한 후, 시작 부분과 끝부분의 과도를 최소화하기 위해 초기 조건과 일치하도록 만들고, 필터링된 시퀀스를 역방향으로 뒤집은 다음, 반전된 시퀀스를 다시 필터에 통과시킵니다. 결과는 다음과 같은 특성을 가집니다.
영위상 왜곡
원래 필터 전달 함수 크기의 제곱과 같은 필터 전달 함수
b와a로 지정된 필터 차수의 2배에 해당하는 필터 차수
미분기 FIR 필터와 힐베르트 FIR 필터는 위상 응답에 따라 동작이 크게 달라지므로 이러한 필터와 함께 filtfilt 함수를 사용하지 마십시오.
는 디지털 필터 y = filtfilt(d,x)d를 사용하여 입력 데이터 x를 영위상 필터링합니다. designfilt를 사용하여 주파수-응답 사양을 기반으로 d를 생성합니다.
는 분자 계수 y = filtfilt(B,A,x,"ctf")B와 분모 계수 A로 각각 정의되는 Cascaded Transfer Functions(CTF)를 사용하여 입력 데이터 x를 영위상 필터링합니다. (R2024b 이후)
참고
A를 스칼라 또는 벡터로 지정할 경우, 2차섹션형(SOS) 행렬 입력 sos의 6개 열로 CTF 분자 행렬 B를 명확히 구분하려면 "ctf" 옵션을 지정하십시오.
는 이름-값 인수를 사용하여 추가 옵션을 지정합니다. (R2026a 이후)y = filtfilt(___,Name=Value)
예제
입력 인수
이름-값 인수
출력 인수
세부 정보
팁
스케일링 이득을 포함한 CTF 형식의 필터를 구할 수 있습니다. butter, cheby1, cheby2, ellip와 같은 디지털 IIR 필터 설계 함수의 출력값을 사용하십시오. 이들 함수에서 "ctf" 필터 유형 인수를 지정하고 B, A, g를 반환하도록 지정하여 스케일 값을 구합니다. (R2024b 이후)
참고 문헌
[1] Gustafsson, F. “Determining the initial states in forward-backward filtering.” IEEE® Transactions on Signal Processing. Vol. 44, April 1996, pp. 988–992. https://doi.org/10.1109/78.492552.
[2] Lyons, Richard G. Understanding Digital Signal Processing. Upper Saddle River, NJ: Prentice Hall, 2004.
[3] Mitra, Sanjit K. Digital Signal Processing. 2nd Ed. New York: McGraw-Hill, 2001.
[4] Oppenheim, Alan V., and Ronald W. Schafer, with John R. Buck. Discrete-Time Signal Processing. 2nd Ed. Upper Saddle River, NJ: Prentice Hall, 1999.








