창 함수(Window Function)란?

DFT나 FIR 필터 설계에서 신호나 계수의 유한한 구간에 곱하는 가중 함수. 구간으로 잘라 내기만 하면(직사각형 창) 양 끝이 불연속이 되어 스펙트럼 누설이나 리플이 생기므로, 양 끝을 매끄럽게 0에 가깝게 하는 창을 곱해 억제한다. 대표적인 해닝 창(Hann 창)은 최대 사이드 로브가 약 −31 dB로 직사각형 창의 약 −13 dB보다 낮지만, 메인 로브의 폭은 직사각형 창의 약 2배가 된다. 사이드 로브의 낮음과 메인 로브의 좁음 중 어느 쪽을 중시하는지에 따라 해밍 창·블랙맨 창·플랫톱 창 등을 구분해 사용한다.

일본어 명칭: 窓関数

창 함수(Window Function)은(는) 디지털 신호 처리의 기초 등 1개 분야의 연습 문제 2개에 나와요.

분야: 디지털 신호 처리의 기초

메인 로브와 사이드 로브

창의 스펙트럼은 가운데의 큰 산(메인 로브)과 그 양쪽의 작은 산(사이드 로브)으로 이루어집니다. 메인 로브가 좁을수록 가까운 주파수의 두 성분을 구별하기 쉽고, 사이드 로브가 낮을수록 강한 성분 근처의 약한 성분이 묻히기 어려워집니다. 둘은 트레이드오프 관계에 있으며, 직사각형 창은 메인 로브가 가장 좁은 대신 사이드 로브가 높고, 해닝 창은 그 반대입니다.

진폭 읽기와 보정

창을 곱하면 신호의 진폭이 평균적으로 작아지므로, 진폭을 읽을 때는 창의 평균값(해닝 창에서는 0.5)으로 나누어 보정합니다. 또 주파수가 빈의 중간에 있으면 진폭이 작게 읽히며(스캘러핑 손실), 그 양은 직사각형 창에서 약 3.9 dB, 해닝 창에서 약 1.4 dB입니다. 진폭을 정확하게 측정하고 싶을 때는 메인 로브의 꼭대기가 평평한 플랫톱 창을 사용합니다.

FIR 필터 설계에서의 창

이상적인 저역 통과 필터의 임펄스 응답(sinc 함수)은 무한히 계속되므로, 유한한 탭 수로 잘라 내야 합니다. 단순히 잘라 내면 통과 대역이나 저지 대역에 리플이 생기지만(깁스 현상), 창 함수를 곱한 뒤 사용하면 리플을 억제한 특성을 얻을 수 있습니다. 창의 종류에 따라 저지 대역의 감쇠량과 천이 대역 폭의 균형이 바뀝니다.

도전해 보기: 창 함수(Window Function) 관련 문제

DFT 앞에 곱하는 창 함수에 대해, 직사각형 창(아무것도 곱하지 않는 경우)과 해닝 창(Hann 창)을 비교한 설명으로 올바른 것은?

  1. A해닝 창은 메인 로브의 폭이 직사각형 창의 약 절반이 되고 사이드 로브도 낮아지므로, 모든 점에서 직사각형 창보다 우수하다
  2. B해닝 창은 사이드 로브가 낮아 먼 빈으로의 누설이 작지만, 메인 로브의 폭은 직사각형 창의 약 2배로 넓어진다
  3. C해닝 창은 메인 로브가 좁아지는 대신, 사이드 로브가 직사각형 창보다 높아진다
정답과 해설 보기

정답: B. 해닝 창은 사이드 로브가 낮아 먼 빈으로의 누설이 작지만, 메인 로브의 폭은 직사각형 창의 약 2배로 넓어진다

직사각형 창은 메인 로브의 폭(첫 영점까지)이 ±1빈으로 좁은 반면, 최대 사이드 로브가 약 −13 dB로 높아 누설이 먼 빈까지 퍼집니다. 해닝 창은 구간의 양 끝을 매끄럽게 0으로 만들므로 최대 사이드 로브가 약 −31 dB까지 내려가지만, 메인 로브의 폭은 ±2빈으로 약 2배가 됩니다. 강한 신호 근처에 있는 약한 신호를 보고 싶을 때는 해닝 창 같은 창, 주파수가 가깝고 세기가 비슷한 신호를 구별하고 싶을 때는 직사각형 창이 적합하다는 식으로 목적에 따라 구분해 사용합니다.

자주 묻는 질문

창 함수는 언제 필요한가요?

측정하는 신호의 주기가 관측 구간에 정수 개 들어간다는 보장이 없을 때는 보통 창 함수를 곱합니다. 주기가 구간에 정확히 맞는 경우나, 구간 안에서 완전히 감쇠하는 과도적인 신호에서는 직사각형 창(창 없음) 그대로도 누설이 문제가 되지 않습니다.

해닝 창과 해밍 창은 무엇이 다른가요?

둘 다 코사인 모양의 창이지만, 해닝 창은 양 끝이 정확히 0이 되어 먼 사이드 로브가 빠르게 감쇠합니다. 해밍 창은 양 끝을 0으로 하지 않고 약 0.08을 남김으로써 가장 높은 사이드 로브를 약 −43 dB까지 낮추지만, 먼 사이드 로브의 감쇠는 느려집니다.

해설 속 창 함수(Window Function)

창 함수(Window Function)이(가) 나오는 문제 (2)

  1. DFT 앞에 곱하는 창 함수에 대해, 직사각형 창(아무것도 곱하지 않는 경우)과 해닝 창(Hann 창)을 비교한 설명으로 올바른 것은?
  2. DFT에서 스펙트럼 누설이 생기는 주된 원인으로 올바른 것은?

관련 용어

스펙트럼 누설(Spectral Leakage) 에일리어싱(aliasing) 고속 푸리에 변환(FFT) 군지연(Group Delay) 데시메이션(Decimation) 선형 위상(Linear Phase) 이동 평균 필터(Moving Average Filter) 이산 푸리에 변환(Discrete Fourier Transform) 임펄스 응답(Impulse Response) 주파수 분해능(Frequency Resolution)

용어집으로 돌아가기