웨이블릿 변환과 필터 설계

웨이블릿 변환의 기본 개념

계속적으로 변화하는 신호나 데이터를 효율적으로 해석하기 위해서는 국소적 시간-주파수 특성을 동시에 살펴볼 필요가 있다. 푸리에 변환은 신호의 전체적인 주파수 구성을 보여주지만 시간적 변화를 직접적으로 파악하기는 어렵다. 이를 보완하기 위해 도입된 윈도우 푸리에 변환(STFT)은 특정 구간에서만 푸리에 변환을 수행함으로써 어느 정도 시간 국소성과 주파수 해상도를 동시에 얻는다. 그러나 윈도우 크기가 고정되어 있어 스케일 변화에 대한 융통성이 떨어진다.

웨이블릿 변환에서는 스케일 변화가 가능하도록 설계된 웨이블릿 함수를 사용해 신호를 다중해상도에서 해석한다. 모함수(Mother Wavelet)라 불리는 하나의 함수를 적절히 축소·이동하여 얻은 다양한 웨이블릿 함수를 사용함으로써, 저주파 대역에서는 넓은 윈도우를, 고주파 대역에서는 좁은 윈도우를 적용해 신호의 모든 스케일에서 정보를 추출한다.

연속 웨이블릿 변환에서 신호 $f(t)$에 대해 모함수 $\psi(t)$와 스케일 $s>0$, 이동 파라미터 $\tau$에 따라 다음과 같이 정의한다.

Wf(s,τ)=1sf(t)ψ(tτs)dtW_f(s,\tau) = \frac{1}{\sqrt{s}} \int_{-\infty}^{\infty} f(t)\,\psi\Bigl(\frac{t-\tau}{s}\Bigr)\,dt

스케일 $s$가 커질수록 웨이블릿 함수를 늘려서 저주파 대역의 특징을 포착하고, $s$가 작아질수록 웨이블릿 함수를 압축시켜 고주파 대역의 특징을 포착한다. 이러한 연속 웨이블릿 변환은 이론적 분석에 유용하지만, 실제 신호 처리에서는 유한한 표본 데이터에 대해 이산 웨이블릿 변환을 주로 사용한다.

이산 웨이블릿 변환의 필터 구조

이산 웨이블릿 변환은 다중해상도 해석(Multiresolution Analysis, MRA)의 아이디어를 기반으로 한다. 스케일링 함수 $\phi(t)$와 웨이블릿 함수 $\psi(t)$는 다음과 같은 딜레이션 방정식을 만족한다.

ϕ(t)=2khkϕ(2tk)ψ(t)=2kgkϕ(2tk)\phi(t) = \sqrt{2} \sum_{k} h_k \,\phi(2t - k)\psi(t) = \sqrt{2} \sum_{k} g_k \,\phi(2t - k)

여기서 $h_k$는 저주파 통과 필터(Scaling filter)의 계수, $g_k$는 고주파 통과 필터(Wavelet filter)의 계수로 이해할 수 있다. 실제 신호 $f(n)$에 대한 이산 웨이블릿 변환은 필터 계수 $h_k, g_k$로 구성된 필터 뱅크를 이용해 구현된다. 즉, 신호에 저주파 필터와 고주파 필터를 각각 적용한 뒤 이산 다운샘플링을 수행하여 저주파 대역 성분과 고주파 대역 성분을 분리한다.

아래는 필터 뱅크 구조를 단순화하여 표현한 다이어그램이다.

spinner

저주파 필터 통과 대역은 스케일이 늘어난 스케일링 계수를 나타내며, 고주파 필터 통과 대역은 세부적인 주파수 정보를 담는 웨이블릿 계수를 나타낸다. 이러한 과정을 여러 단계로 반복하여, 신호를 다단계로 분해하게 되면 저주파 성분은 더욱 낮은 대역으로, 고주파 성분은 점진적으로 세밀한 부분을 나타내게 된다.

스케일링 함수와 필터 계수의 관계

스케일링 함수는 전체적인 시그널의 구성 요소를 포착하며, 이를 통해 형성되는 저주파 필터 계수 $h_k$는 스케일링 함수의 딜레이션 방정식으로부터 유도된다. 만약 스케일링 함수 $\phi(t)$가 정규직교 웨이블릿을 형성한다면, 필터 계수 또한 정규직교 필터가 되어야 하며, 이때 다음과 같은 직교성 조건을 만족한다.

khkhk2n=δn\sum_{k} h_k \, h_{k - 2n} = \delta_n

여기서 $\delta_n$은 크로네커 델타이다. 이 조건은 필터가 시간 영역에서 에너지 보존 특성을 지니게 함을 의미한다. 즉, 스케일링 필터를 적용했을 때 신호 에너지의 변형이 없도록 설계되어야 한다. 반면 웨이블릿 필터 계수 $g_k$는 $h_k$로부터

gk=(1)kh1kg_k = (-1)^k h_{1-k}

와 같은 형태로 정의되며, 이는 주파수 영역에서 서로 상보적인 특성을 갖도록 고안된다.

필터 뱅크 이론

웨이블릿 변환의 이산 구현에서 필터 뱅크 구조는 매우 중요한 역할을 한다. 필터 뱅크는 일반적으로 분석 필터 뱅크와 합성 필터 뱅크로 구성되며, 각각 신호 분해와 재구성을 담당한다. 분석 필터 뱅크는 입력 신호에 저주파 통과 필터와 고주파 통과 필터를 적용한 후, 다운샘플링을 통해 저주파·고주파 대역의 부반응 신호들을 얻는다. 합성 필터 뱅크는 이와 반대 과정을 수행하여 원 신호를 복원한다.

직교 웨이블릿 변환을 만족하기 위해서는 분석 필터와 합성 필터가 적절한 직교성 조건을 가져야 하며, 이를 위해서 두 계열의 필터가 서로 상보적인 특성을 갖도록 설계된다. 예를 들어, 해석 필터와 합성 필터가 시간 축에서 서로 반전 혹은 시간 이동 관계를 지니거나, 주파수 영역에서 반사나 회전 관계를 만족해야 한다. 이를 푸리에 해석과 $z$-변환을 활용해 정밀하게 설계하면 필터 뱅크를 통해 손실 없는 재구성이 가능하다.

일반적으로 이상적인 저주파 통과 필터와 고주파 통과 필터는 이상적 벽 필터(Brick-wall filter) 형태가 되도록 가정되지만, 실제로는 유한 길이 필터를 사용해야 하므로 완벽한 직교성을 만족하기 위해 필터 계수들 간에 엄격한 제약 조건이 존재한다. 이러한 제약을 만족하면서 에너지 보존, 위상 응답, 재구성 왜곡 최소화를 달성하기 위해서 다양한 필터 설계 기법이 제시되었다.

직교성과 바이오직교성

직교 웨이블릿에서는 스케일링 필터와 웨이블릿 필터가 모두 정규직교성을 만족하도록 선택된다. 다만 일부 응용에서는 완전 직교성을 포기하고, 보다 유연한 대역폭 특성을 얻을 수 있는 바이오직교 웨이블릿을 사용하기도 한다. 바이오직교 웨이블릿에서는 분석 필터와 합성 필터가 서로 다른 계수를 가지며, 이로 인해 보다 부드러운 웨이블릿 함수(가령 스플라인 기반)를 구성하기가 수월해진다. 직교 웨이블릿은 신호 에너지를 분해했을 때 중첩되지 않는 장점이 있으나, 미분 가능성이 낮은 경우가 많다. 바이오직교 웨이블릿은 연속성이 높은 스케일링 함수를 제공하지만, 계수 간 위상 보정이 복잡해질 수 있다.

유명한 바이오직교 계열 예로는 Cohen-Daubechies-Feauveau(CDF) 웨이블릿이 있으며, 이들은 영상 압축이나 복원에 자주 사용된다. 데이터 처리에서 다양한 조건에 최적화된 웨이블릿을 설계하기 위해서는, 직교성 혹은 바이오직교성, 필터의 길이, 정지 대역 감쇠율과 같은 여러 설계 변수들을 종합적으로 고려해야 한다.

웨이블릿 필터 설계 방법론

정규직교 또는 바이오직교 웨이블릿에서 요구되는 필터 계수들을 실제로 구하는 과정은 수학적으로 복잡하다. 다우베시(C. Daubechies)가 제안한 웨이블릿 계열은 최소 지지 길이를 가지면서도 최대의 소멸 모멘트(Vanishing Moment)를 가지도록 설계된 대표적인 예이다. 소멸 모멘트가 높다는 것은 시간 영역에서 웨이블릿이 부드럽고, 주파수 영역에서는 보다 급격한 롤오프(roll-off)를 제공한다는 의미이다. 이를 만족하려면 필터 계수들이 높은 차수의 다항식을 적분했을 때 영이 되도록 설계해야 한다.

다우베시 웨이블릿 설계에서는 다음과 같은 방정식을 풀어야 한다. 필터 계수 길이를 $N$이라 할 때, 아래와 같은 직교성 및 스케일링 조건을 만족하는 $h_k$를 찾는다.

k=0N1hk=2k=0N1hkh(k2n)modN=δnk=0N1(1)kkmhk=0form=0,1,,M1\sum_{k=0}^{N-1} h_k = \sqrt{2} \\ \sum_{k=0}^{N-1} h_k \, h_{(k-2n)\,\mathrm{mod}\,N} = \delta_n \\ \sum_{k=0}^{N-1} (-1)^k k^m h_k = 0 \quad \text{for} \quad m=0,1,\dots, M-1

여기서 $M$은 소멸 모멘트의 개수이고, $N$은 필터 계수의 길이와 관련이 있다. 첫 번째 식은 스케일링 함수의 적분 값이 1이 되도록 하는 조건, 두 번째 식은 에너지 보존을 위한 직교성 조건, 세 번째 식은 다항식이 웨이블릿에 의해 소멸되는 조건을 나타낸다. 이 방정식들을 동시에 만족하는 해를 구하면, 해당 계수들이 곧 다우베시 필터 계수가 된다.

이 과정은 보통 해석적 풀이가 아니라 다항 방정식을 푸는 형태로 전개되며, 전산 알고리즘을 활용한다. 간단한 차수에서 시작해 점진적으로 고차수로 확장하여 해를 구하고, 이때 근소한 부동소수점 오차를 최소화하기 위해 정밀도 높은 연산을 수행한다. 실제 구현에서는 $z$-변환과 푸리에 변환을 동원해 필터의 극과 영점을 분석한 뒤, 설계된 필터의 주파수 응답 특성이나 위상 응답을 확인하고 미세 조정을 거친다.

바이오직교 웨이블릿 설계 시에는 해석 필터와 합성 필터가 서로 다른 계수를 가지므로, 이 둘 각각에 대해 유사한 조건을 설정해야 한다. 스케일링 함수와 웨이블릿 함수 각각에 대응하는 필터 쌍을 만들고, 상호 직교성을 만족하도록 복합적인 방정식을 세운다. 계수가 달라짐에 따라 위상 응답이나 시간영역 응답이 직교 웨이블릿과는 다른 양상을 보인다. 예컨대 CDF 9/7 웨이블릿 필터는 해석용 필터 9차, 합성용 필터 7차 계수로 설계되며, JPEG2000 영상 압축 표준 등에서 널리 사용된다.

경계 효과와 필터 설계

웨이블릿 변환을 실제 데이터에 적용할 때, 신호의 양쪽 경계에서 발생하는 왜곡 현상을 어떻게 처리하느냐에 따라 결과 품질이 좌우된다. 유한 길이 신호에 필터를 적용하면 경계 지점에서 필터의 완전한 컨볼루션이 불가능하므로 에너지 손실 또는 위상 왜곡이 생길 수 있다. 이를 보정하기 위해 다양한 경계 연장 모드(Extension Mode)를 사용한다. 예를 들어 신호의 양쪽 끝에 0을 덧붙여 연장하는 방법, 또는 신호 값을 대칭 복사해 경계를 마치 내부 샘플인 것처럼 취급하는 방법 등이 있다. 가장 많이 사용하는 방법은 신호를 대칭으로 연장하는 것이며, 이 경우 경계 근처에서 위상 에러를 어느 정도 줄일 수 있다.

경계 처리를 어떻게 하든 근본적으로는 필터 계수의 길이와 경계 근처 샘플 수가 어긋나면서 발생하는 문제이므로, 적절한 경계 연장 모드를 적용한 뒤 필터를 컨볼루션하고 다운샘플링·업샘플링·재구성 과정을 수행한다. 재구성 시에도 동일한 경계 모드를 통일성 있게 적용하면, 원 신호에 가까운 형태로 복원이 가능하다. 이러한 경계 처리 문제는 필터 길이가 길어질수록 더 부각되므로, 필터 설계 시에는 경계 조건도 함께 고려한다.

리프팅(Lifting) 스킴을 이용한 필터 설계

웨이블릿 필터를 구현하는 또 다른 접근 방식으로 리프팅 스킴이 있다. 파켓트(P. Sweldens)가 제안한 이 기법은 기존의 필터 뱅크 합성 과정을 단순화하여, 해석과 합성 단계 모두를 정수 연산 기반으로 구성하기가 용이하도록 한다. 각 단계가 예측(Predict)과 업데이트(Update) 연산으로 구성되며, 이를 통해 저주파 성분과 고주파 성분을 분할한다.

해석 과정을 예로 들면, 먼저 입력 신호를 홀수 샘플과 짝수 샘플로 분할한다. 이후 짝수 샘플들을 바탕으로 홀수 샘플을 예측(Predict)하여 고주파 성분을 구하고, 업데이트(Update) 과정을 통해 짝수 샘플에 보정을 가해 저주파 성분을 구한다. 이 과정을 수식으로 표현하면 다음과 같은 형태가 될 수 있다.

dn=x2n+1P(x2n)sn=x2n+U(dn)d_n = x_{2n+1} - P\bigl(x_{2n}\bigr) \\ s_n = x_{2n} + U(d_n)

여기서 $x_{2n}$은 짝수 샘플, $x_{2n+1}$은 홀수 샘플, $P$와 $U$는 각각 예측 및 업데이트 연산이다. 리프팅 스킴은 이러한 예측과 업데이트 단계가 반복되며, 각 단계가 적절히 정의되면 결국 원하는 웨이블릿 계수 분해를 달성한다. 재구성 과정도 예측과 업데이트의 역연산을 순차적으로 수행하는 방식으로 단순화된다.

리프팅 스킴의 가장 큰 장점은 정수 계수로 설계가 가능하다는 점이다. 특히 무손실 압축을 해야 하는 분야에서 정수 연산 기반의 웨이블릿 변환을 적용하면, 양자화 오차 없이 원 신호를 복원할 수 있다. 또한 기존 필터 뱅크 방식보다 연산량이 적어지므로 임베디드 환경에서 실시간 처리를 수행하기에도 유리하다.

웨이블릿 패킷 변환과 필터 설계

일반적인 이산 웨이블릿 변환에서는 신호를 저주파 필터와 고주파 필터로 분해하고, 저주파 계수만을 다시 분해해나가는 방식을 채택한다. 이 방식은 다중해상도 구조를 직관적으로 얻을 수 있지만, 고주파 대역에 대한 세밀한 분해가 제한될 수 있다. 이를 보완하기 위해 웨이블릿 패킷(Wavelet Packet) 변환이 도입되었다. 웨이블릿 패킷 변환에서는 저주파 계수뿐만 아니라 고주파 계수도 다시 분해할 수 있는 옵션을 제공한다.

웨이블릿 패킷 변환 과정에서는 모든 대역(저주파 대역과 고주파 대역)을 동일한 방식으로 분할하여, 보다 세분화된 주파수 대역 해석을 시도한다. 필터 설계 관점에서 보면, 전통적인 웨이블릿 변환은 한 단계마다 두 개의 필터(저주파 통과, 고주파 통과)만 사용하면 되지만, 웨이블릿 패킷 변환은 각 대역이 다시 두 개의 하위 대역으로 분해되므로, 모든 레벨에서 동일한 필터 셋을 동일 구조로 반복 적용하게 된다.

웨이블릿 패킷에서 각 대역은 트리(tree) 형태로 표현되며, 대역 분할 경로에 따라 다양한 해상도 조합을 얻을 수 있다. 분석용 필터와 합성용 필터는 기존 웨이블릿 변환과 동일하게 설계되나, 단지 분해 구조만 더 다양하게 확장된다. 특정 응용에서는 저주파 대역만 세밀하게 분석해도 충분하지만, 다른 응용에서는 고주파 대역에서도 세밀한 정보를 얻어야 하므로, 웨이블릿 패킷 변환이 유리할 수 있다.

웨이블릿 패킷 변환을 구현하기 위해서는 필터를 트리 구조로 반복 적용해야 하며, 각 노드에서 다운샘플링과 업샘플링을 수행해야 한다. 이때 필터 길이와 경계 처리 방법이 트리의 모든 경로에서 동일하게 적용되므로, 에너지 보존이나 위상 왜곡 등의 문제가 누적될 가능성이 있다. 따라서 적절한 필터를 선택하고, 경계 처리를 일정하게 하는 것이 중요하다.

리프팅 스킴을 웨이블릿 패킷 구조와 결합하는 것도 가능하다. 예측과 업데이트 단계를 트리 구조 전체에 일관성 있게 적용하여, 모든 대역에서 정수 변환을 수행하도록 설계할 수 있다. 이렇게 하면 특히 무손실 압축이나 디지털 신호 처리에서 효율적인 결과를 얻는다.

다양한 필터 계수의 선택 기준

웨이블릿 필터 설계에서 필터 계수의 길이, 소멸 모멘트의 수, 직교성 및 바이오직교성 여부는 필터 선택의 핵심 요소로 꼽힌다. 필터 계수가 길어지면 주파수 응답이 예리해지지만, 시간 축에서 웨이블릿의 지지 범위가 커져 경계 처리 부담이 증가한다. 소멸 모멘트가 많아지면 점진적으로 높은 차수의 다항식을 제거할 수 있으므로, 신호의 저주파와 고주파 분해가 더 부드럽고 효율적으로 이뤄진다. 다만 필터 차수가 높아질수록 계산 복잡도가 올라가고, 경계 부근에서 위상 왜곡이 커질 수 있으므로, 응용 목적과 계산 자원의 한계를 고려해 최적의 필터를 선정해야 한다.

직교 웨이블릿 계열(예: 다우베시 웨이블릿)은 신호 에너지를 분해했을 때 대역 간 중첩이 없어서 해석이 간단하고, 빠른 알고리즘 구현이 용이하다. 반면 바이오직교 웨이블릿 계열(예: CDF 9/7)은 미분 가능성이 높고, 재구성 시 부드러운 결과를 제공하며, 영상 처리 분야에서 우수한 성능을 보인다. 무손실 압축 등을 위해서는 정수 계수 기반의 리프팅 필터 설계가 고려되기도 한다.

폴리페이즈(Polyphase) 표현과 완벽 재구성 조건

필터 뱅크 기반 웨이블릿 변환을 더욱 체계적으로 다루기 위해서는 폴리페이즈 표현을 사용하는 것이 유익하다. 폴리페이즈 표현이란, 신호나 필터를 홀수 샘플과 짝수 샘플로 분할하여 매트릭스 형태로 정리하는 방법이다. 이 기법을 통해 필터 뱅크가 만족해야 하는 완벽 재구성(Perfect Reconstruction) 조건을 간결하게 서술할 수 있다.

분석(Analysis) 필터 계수 ${h_k}$와 ${g_k}$를 폴리페이즈 형태로 정리하면, 보통 다음과 같은 2×2 매트릭스로 표현한다.

H(z)=[Eh(z)Oh(z)],G(z)=[Eg(z)Og(z)]\mathbf{H}(z) = \begin{bmatrix} E_h(z) \\ O_h(z) \end{bmatrix} ,\quad \mathbf{G}(z) = \begin{bmatrix} E_g(z) \\ O_g(z) \end{bmatrix}

여기서 $E_h(z)$와 $O_h(z)$는 각각 필터 $h_k$를 짝수·홀수 샘플 위치로 분할한 뒤, $z$-변환을 취한 폴리페이즈 성분을 의미한다. 합성(Synthesis) 필터 계수 ${\tilde{h}_k}$와 ${\tilde{g}_k}$에 대해서도 같은 방식으로 매트릭스 $\mathbf{\tilde{H}}(z)$, $\mathbf{\tilde{G}}(z)$를 정의한다. 분석·합성 필터를 하나로 묶어서 보면, 2×2 폴리페이즈 행렬 $\mathbf{E}(z)$와 $\mathbf{R}(z)$로 다음과 같이 표현할 수 있다.

E(z)=[Eh(z)Eg(z)Oh(z)Og(z)],R(z)=[E~h(z)E~g(z)O~h(z)O~g(z)]\mathbf{E}(z) = \begin{bmatrix} E_h(z) & E_g(z) \\ O_h(z) & O_g(z) \end{bmatrix} ,\quad \mathbf{R}(z) = \begin{bmatrix} \tilde{E}_h(z) & \tilde{E}_g(z) \\ \tilde{O}_h(z) & \tilde{O}_g(z) \end{bmatrix}

완벽 재구성 조건은 입력 신호의 $z$-변환 $X(z)$가 필터 뱅크를 거쳐 최종적으로 동일한 $X(z)$로 복원되어야 함을 의미한다. 폴리페이즈 표현에서 이 조건은 다음과 같은 행렬 곱 형태로 나타난다.

R(z)E(z)=zkI\mathbf{R}(z)\,\mathbf{E}(z) = z^{-k} \mathbf{I}

여기서 $\mathbf{I}$는 2×2 단위행렬이고, $z^{-k}$는 전체 필터 지연을 나타내는 지수항이다. 즉, 완벽 재구성이 이루어지려면, 분석 폴리페이즈 행렬과 합성 폴리페이즈 행렬의 곱이 단순 지연과 동일해야 한다. 이 조건을 만족하도록 필터 계수를 설계하면, 시간영역에서 손실 없이 원 신호를 복원할 수 있게 된다.

직교 웨이블릿 필터의 경우 $\mathbf{R}(z)$는 $\mathbf{E}^T(z^{-1})$ 형태를 띠거나, 주파수 영역에서 위상 반전을 고려한 형태로 간단히 표현되기도 한다. 바이오직교 웨이블릿은 $\mathbf{E}(z)$와 $\mathbf{R}(z)$가 서로 달라질 수 있어, 그만큼 자유도는 늘어나지만 동시에 매트릭스 곱 관계가 더 복잡해진다. 그럼에도 불구하고 폴리페이즈 매트릭스를 통해 완벽 재구성 조건을 표준화된 방식으로 서술할 수 있으므로, 설계자 입장에서는 이 방법이 필수적이다.

대역 통과 특성과 위상 응답

웨이블릿 변환에서 저주파 필터는 신호의 전반적인 형태와 에너지를 포착하고, 고주파 필터는 급변 구간이나 세부 구조를 포착한다. 이 필터들이 만족해야 하는 주파수 응답 특성은 다음과 같은 사항들을 포함한다.

저주파 통과 필터 $\mathbf{H}(z)$는 대역폭이 낮고, 통과 대역에서 진폭응답이 평탄해야 한다. 이는 스케일링 함수가 신호의 전역 형태를 왜곡 없이 반영하도록 하는 데 중요하다. 고주파 통과 필터 $\mathbf{G}(z)$는 주파수 축에서 저주파 대역과 서로 보완적인 대역으로 설계되어, 전체 범위를 커버하되 중첩이 최소화되도록 해야 한다.

위상 응답은 재구성 품질과 밀접한 연관이 있다. 선형 위상이 아니거나 그룹 지연 특성이 고르지 않으면, 신호의 세부적인 시간 구조가 필터링 과정에서 왜곡될 수 있다. 직교 웨이블릿 필터는 일반적으로 선형 위상을 갖지 않는다. 바이오직교 필터나 정수 리프팅 스킴을 사용하면, 보다 선형에 가까운 위상을 얻거나 위상 왜곡을 일부분 상쇄할 수 있다.

샘플 구현과 주파수 응답 평가

필터 설계가 완료되면, 보통 MATLAB 또는 Python 같은 환경에서 시뮬레이션을 통해 필터 계수의 주파수 응답을 검증한다. 예를 들어 Python에서 $h_k$ 필터 계수를 NumPy 배열로 입력한 뒤 FFT를 수행해 진폭응답과 위상응답을 확인할 수 있다.

위 코드를 통해 필터의 주파수 응답 곡선을 그릴 수 있다. 저주파 통과 필터의 통과 대역 특성, 스톱 밴드 감쇠, 그리고 위상 응답의 변화를 살펴보고, 설계 목표와 부합하는지 확인한다. 이어서 합성 필터에 대해서도 같은 작업을 수행하여 완벽 재구성 조건에 부합하는지 시뮬레이션으로 검증한다.

주파수 도메인 해석과 웨이블릿 필터의 스펙트럼

웨이블릿 변환의 필터 설계는 주파수 도메인에서의 해석을 통해 더욱 명확하게 이해할 수 있다. 저주파 통과 필터와 고주파 통과 필터가 각각 어떤 주파수 대역을 차단하거나 통과시키는지, 그리고 그 대역에서 얼마나 급격하게 감쇠시키는지가 파악의 핵심이다. 푸리에 변환 관점에서 스케일링 함수의 푸리에 스펙트럼은 대역 제한(low-pass)된 형태를 보이며, 웨이블릿 함수의 푸리에 스펙트럼은 이와 보완적인 대역(high-pass) 특성을 가진다.

연속 웨이블릿 변환의 경우 모함수 $\psi(t)$가 주파수 축에서 중심주파수와 관련된 특정 대역을 담당하고, 스케일 $s$가 달라질 때마다 해당 대역이 확장·축소되어 다중해상도 분석이 이루어진다. 이산 웨이블릿 변환 역시 필터 뱅크 구조로 구현되므로, 각 계수의 스펙트럼 특성을 합성함으로써 전체 스펙트럼을 복원한다.

직교 웨이블릿 필터에서 스케일링 필터 $H(\omega)$와 웨이블릿 필터 $G(\omega)$는 종종 다음 조건을 만족한다.

H(ω)2+G(ω)2=1|H(\omega)|^2 + |G(\omega)|^2 = 1

이는 주파수 축 전체에서 에너지가 보존되어야 함을 암시하며, 두 필터가 서로 상보적인 통과대역을 갖도록 설계되었음을 의미한다. 바이오직교 웨이블릿 필터인 경우에도 유사한 에너지 분할 특성을 유지하지만, 정확한 직교성 대신 두 쌍의 필터 $(H_1, G_1)$, $(H_2, G_2)$가 서로 상보적인 형태를 갖도록 설계된다.

주파수 스펙트럼으로 필터 특성을 검증할 때, 통과 대역의 평탄성과 스톱 밴드에서의 감쇠율, 그리고 공진(Peak)이나 링잉(Ringing) 현상이 발생하지 않는지 확인하는 것이 중요하다. 필터 차수가 높아질수록 스톱 밴드 감쇠가 커지지만, 그만큼 시간영역에서의 지지 길이가 길어져 경계 처리 부담이나 연산량이 증가한다.

다중해상도 해석(MRA)의 스케일 공간

다중해상도 해석 관점에서 웨이블릿 변환은 스케일링 공간과 웨이블릿 공간의 직합(direct sum)으로 구성된 공간 분해를 수행한다. 스케일링 공간 $V_j$는 스케일 $2^j$에서 신호의 전반적인 형태를 나타내며, 웨이블릿 공간 $W_j$는 그 스케일에서 세부적인 변동을 포착한다. 완벽 재구성이 가능하려면 모든 스케일에 대해

Vj+1=VjWjV_{j+1} = V_j \oplus W_j

관계가 성립해야 하고, 무한 스케일에 걸쳐 전체 신호 공간을 잘 분해·합성할 수 있어야 한다. 이 식에서 $\oplus$는 직합을 의미한다.

필터 설계는 이러한 MRA 구조를 위배하지 않도록, 즉 스케일링 함수와 웨이블릿 함수가 올바른 계층을 형성하도록 진행된다. 구체적으로는, 스케일링 함수 $\phi(t)$가 두 배의 스케일로 확장되었을 때, 그 확장된 공간을 원래 공간과 직교하는 새 웨이블릿 공간의 합으로 분해할 수 있어야 한다. 이러한 요구 사항이 필터의 직교성·완벽 재구성 조건·소멸 모멘트 조건 등으로 나타난다.

복소 웨이블릿과 이중트리 필터 뱅크

실제 응용에서는 실수 웨이블릿 변환만으로는 방향성이나 위상 정보를 포착하기에 부족할 때가 있다. 이를 보완하기 위해 복소 웨이블릿(Complex Wavelet)을 고려하기도 한다. 복소 웨이블릿은 실수부와 허수부로 이루어진 두 개의 필터가 필요하며, 시간·주파수·위상 정보를 모두 반영해 더욱 풍부한 해석이 가능하다. 다만 이때는 필터 길이가 2배가 되고, 설계 과정에서 추가적인 직교성 조건이 생기므로 복잡도가 상승한다.

이중트리(dual-tree) 복소 웨이블릿 변환은 두 세트의 실수 웨이블릿 필터 뱅크를 병렬로 구성해, 복소 웨이블릿과 유사한 효과를 내는 방법이다. 두 트리는 각각 서로 위상이 90도씩 어긋나도록 설계되어, 합성 신호가 마치 복소 신호의 실수부와 허수부처럼 동작한다. 이중트리 구조는 필터 설계 자유도가 크게 늘어나며, 영상이나 2차원 신호에서 방향성을 분석하는 데 이점이 있다.

2차원 확장과 방향성 필터 설계

영상 처리 분야에서 웨이블릿 변환을 적용할 때는 1차원 필터를 행·열 방향으로 각각 적용해 2차원 분해를 수행한다. 예를 들어, 먼저 행 방향으로 저주파·고주파 성분을 분해한 후, 열 방향으로 다시 저주파·고주파 필터를 적용하면, 저주파-저주파(LL), 저주파-고주파(LH), 고주파-저주파(HL), 고주파-고주파(HH)의 4개 서브밴드를 얻는다. 이를 다단계로 반복 적용해 영상의 다중해상도 표현을 얻는다.

그러나 단순한 2차원 분해 방식으로는 방향성이 분명치 않은 LH, HL, HH 계수 대역이 생겨, 에지나 텍스처 등의 방향별 특성을 세밀하게 구분하기가 어려울 수 있다. 이를 개선하기 위해 contourlet, curvelet, shearlet 같은 다양한 방향성 필터뱅크 기법이 고안되었다. 이 기법들은 웨이블릿 변환의 다중해상도 특징은 유지하면서, 여러 방향 대역분할을 추가로 수행해 영상에서 방향성 특징을 보다 효과적으로 뽑아낸다.

필터 설계 측면에서도, 2차원 혹은 다차원 방향성 필터를 구성하려면 회전 대칭성을 유지하거나, 일정한 스케일에서 다중 방향 대역을 확보하기 위한 행렬 구조를 설계해야 한다. 이러한 필터를 구현하기 위해서는 $z_1, z_2$ 같은 다변량 $z$-변환 이론과 다변량 폴리페이즈 행렬이 사용되며, 설계 난이도가 훨씬 높아진다. 실제로는 근사 해법이나 수치적 최적화 방법을 통해 적절한 필터 계수를 구하는 경우가 많다.

신호 처리 응용과 필터 구성 예시

웨이블릿 변환은 신호의 국소적인 변화와 주파수 특성을 동시에 파악하기에 적합하므로, 여러 분야에서 다양한 응용 사례가 제시되었다. 예컨대 1차원 음성 신호에 웨이블릿 변환을 적용하면, 시간축에서 순간적으로 발생하는 잡음 혹은 잡음이 몰려 있는 특정 주파수 대역을 손쉽게 검출하고 제거할 수 있다. 영상에서도 웨이블릿 변환을 활용해 국소 영역에서의 경계선을 포착하거나, 특정 스케일의 에지나 텍스처를 추출하여 물체 인식과 같은 상위 레벨 분석에 활용할 수 있다.

신호 분류나 패턴 인식에 웨이블릿 변환을 적용할 때, 미리 설계된 필터(예: 다우베시 4, 8, 16 계수)를 사용할 수도 있지만, 특정 데이터셋 특성에 최적화된 맞춤형 필터를 설계하기도 한다. 예컨대 생체신호(EEG, ECG 등) 분석에서는 진폭이 급격히 변하는 구간을 효과적으로 검출하는 필터를 원할 수 있고, 지진파나 진동신호 분석에서는 저주파 대역의 미세 변화를 잘 포착하면서도 고주파 잡음을 효과적으로 차단하는 필터가 유리할 수 있다. 이런 상황에서 사용자 정의 웨이블릿 필터를 설계하려면, 소멸 모멘트와 주파수 응답, 필터 차수를 종합적으로 검토해야 한다.

시간-주파수 해석 관점에서의 웨이블릿

웨이블릿 변환은 기본적으로 스케일(또는 주파수) 축과 시간 축을 동시에 다룬다. 푸리에 변환처럼 전체 신호에 대해 일괄적인 주파수 분석을 하는 대신, 스케일별로 신호에 가변 창을 적용하는 식이다. 저주파 영역에서 긴 시간 창을, 고주파 영역에서 짧은 시간 창을 사용하므로, 고주파 영역에서 발생하는 순간적인 이벤트를 정교하게 분석하고, 저주파 영역에서는 전체적인 에너지 변화를 놓치지 않는다.

필터 설계 관점에서도, 저주파 필터가 너무 짧으면 낮은 대역 정보를 충분히 포착하기 어렵고, 너무 길면 경계 처리나 실시간 처리에 부담이 생긴다. 반대로 고주파 필터는 급격한 변화에 민감해야 하므로 짧게 설계하는 것이 일반적이다. 결국 스케일링 필터와 웨이블릿 필터 모두 시간-주파수 절충점을 어떻게 설정하느냐가 핵심이라 할 수 있다.

노이즈 제거와 임계값 기법

웨이블릿 변환의 대표적인 응용 중 하나는 노이즈 제거(denoising)이다. 웨이블릿 계수는 특정 스케일에 집중된 신호 특성을 분리해내므로, 잡음이 상대적으로 고주파 대역에 작게 분산되어 있을 때, 해당 계수를 간단히 임계값(threshold)으로 제거하면 노이즈가 줄어든 신호를 얻을 수 있다. 임계값 노이즈 제거 과정에서는 적절한 임계값 $\lambda$를 선정한 뒤, 웨이블릿 고주파 계수 중 $|\mathrm{coeff}| \lt \lambda$ 인 계수를 0으로 만드는 소프트 혹은 하드 스레숄딩(thresholding)을 적용한다. 이후 역웨이블릿 변환을 통해 시간 영역 혹은 공간 영역으로 되돌아가면, 잡음이 억제된 결과를 얻게 된다. 이때 필터 특성이 좋을수록, 즉 웨이블릿 분해가 잘 이루어질수록 신호 부분과 잡음 부분을 구분하기가 쉬워지는 장점이 있다.

데이터 압축과 스파스 표현

웨이블릿 변환은 신호나 영상 데이터를 스파스(sparse)한 형태로 표현하는 데 효과적이다. 많은 자연 신호는 대부분의 에너지가 저주파 대역에 집중되고, 세부적인 구조만 고주파 계수로 나타난다. 따라서 저주파 계수와 일부 중요한 고주파 계수만으로 원 신호를 근사할 수 있게 된다. 이는 손실 압축 알고리즘에서 매우 유용하다.

대표적인 예가 JPEG2000 영상 압축인데, 전통 JPEG의 DCT 기반 블록 변환 방식과 달리, 전체 이미지를 웨이블릿 변환으로 분해한 뒤 계수들을 양자화·부호화한다. 다중해상도 구조는 낮은 대역부터 점진적으로 영상을 복원할 수 있게 하며, 고주파 대역에서의 스파스 특성 덕에 높은 압축 효율을 달성한다. 필터 설계 차원에서는 직교 또는 바이오직교 필터를 활용해 손실 없는(또는 매우 적은) 재구성을 지원해야 하므로, 완벽 재구성 조건을 충실히 만족하는 웨이블릿 계열이 선호된다.

복합 시스템에서의 필터 체인

신호 처리 시스템이 복합화될수록, 웨이블릿 필터와 다른 종류의 필터(예: 일반 FIR/IIR 필터, 적응 필터, 공분산 필터 등)를 동시에 사용하는 일이 잦아진다. 이 경우, 각 필터 단계가 초래하는 위상 지연과 진폭 왜곡이 누적되므로, 전체 시스템의 응답을 정확히 파악해야 한다. 웨이블릿 필터가 기본적인 주파수 분해를 담당하고, 이후 단계에서 노이즈 억제나 특성 추출을 수행한다면, 각각의 필터가 서로 어떤 대역 정보를 주고받는지 면밀한 검토가 필요하다.

특히 바이오직교 웨이블릿 필터는 위상 왜곡이 상대적으로 적다는 이점이 있어, 추가 필터링 단계를 거쳐도 신호 복원이 크게 훼손되지 않는다. 정수 기반 리프팅 필터를 사용하면, 무손실 변환과 함께 후속 처리를 정밀하게 진행할 수 있으므로, 오디오·영상 코덱이나 하드웨어 DSP 응용에서 유리하다.

구현과 최적화 전략

대규모 데이터(고해상도 영상, 대용량 신호)를 실시간 혹은 준실시간으로 처리하려면, 웨이블릿 필터 단계별로 최적화된 구현이 필수적이다. FFT 기반 컨볼루션 가속 기법(오버랩-세이브, 오버랩-애드) 등을 활용하거나, SIMD 명령어 집합을 사용해 필터 연산을 병렬화함으로써 처리 속도를 높일 수 있다.

리프팅 스킴 구현에서도 정수 연산이 가능하다는 점을 활용해, 하드웨어 고정소수점 환경에서 연산 복잡도를 낮추면서 정확도를 확보할 수 있다. 다만 주파수 응답 측면에서 세밀한 미세 조정이 필요할 때는, 리프팅 방정식을 수정해가며 필터 계수를 재설계하거나, 오차 보정 루틴을 포함시키기도 한다.

고차원 데이터와 확장 가능성

이미지나 영상보다 더 높은 차원의 데이터(예: 3차원 CT 영상, 4차원 시공간 데이터)를 다룰 때는, 웨이블릿 변환의 차원 확장이 필요하다. 3차원 경우에는 가로·세로·높이 축 각각에 대해 웨이블릿 필터를 적용하여 8개 서브밴드를 얻고, 이를 여러 레벨로 반복한다. 4차원 이상도 마찬가지 개념을 그대로 확장할 수 있으나, 차원이 올라갈수록 계수의 총 개수가 급증하므로 효율적인 메모리 관리를 고려해야 한다.

차원 확장 시에는 시간 축의 특성과 공간 축의 특성이 서로 다를 수 있으므로, 특정 축에만 웨이블릿 필터를 적용하거나, 다른 축에는 저차 필터나 별도의 다운샘플링을 적용하는 하이브리드 방식도 쓰인다. 이때 각 축에서의 스케일링·웨이블릿 함수를 어떻게 설정하느냐가 필터 설계의 핵심이 된다.

실제 예제 시각화

아래는 Python 환경에서 2차원 이미지에 간단한 디스크릿 웨이블릿 변환을 적용해보고, 각 서브밴드를 시각화하는 코드 샘플이다.

해당 코드에서 Daubechies 2 웨이블릿 필터가 사용되며, 신호(이미지)를 저주파 성분(LL)과 세 종류의 고주파 성분(LH, HL, HH)으로 분해한다. 실제 응용에서는 이를 여러 레벨로 반복 분해하여 보다 세밀한 해상도를 얻을 수 있다. 고차원 데이터에도 동일한 원리가 적용되지만, 서브밴드가 기하급수적으로 늘어나므로 가시화와 저장, 그리고 효율적 연산 기법이 필요하다.

웨이블릿 변환과 필터 설계

웨이블릿 프레임과 과완비성(over-completeness)

직교 혹은 바이오직교 웨이블릿 변환에서는 보통 웨이블릿 계수가 상호 직교하거나, 아니면 일부 직교성을 완화하되 완벽 재구성에 필요한 조건을 만족하도록 설계한다. 그러나 신호 해석 측면에서 직교성 대신 중첩(overlap)을 어느 정도 허용하면, 더 풍부한 표현 능력을 얻을 수 있다. 이를 웨이블릿 프레임(Wavelet Frames)이라 부르며, 과완비성(over-completeness)을 가진 웨이블릿 계열이다.

웨이블릿 프레임은 동일 스케일에서 여러 개의 웨이블릿을 사용하거나, 시간 이동 스텝을 조밀하게 설정해 신호를 세밀히 해석한다. 직교 변환의 경우 각 계수마다 고유한 정보를 갖고 중복이 없지만, 웨이블릿 프레임에서는 여러 계수가 유사한 정보를 공유할 수 있다. 그 결과, 잡음을 억제하거나 일부 계수만 골라 재구성할 때 보다 탄력적인 처리가 가능해진다.

필터 설계의 측면에서는 과완비 웨이블릿 변환을 구현하기 위해 분석 필터 뱅크를 더 많이 배치하거나, 다운샘플링 비율을 줄여서 중첩도를 높이는 방법 등을 고려한다. 이 경우 원본 신호를 재구성하기 위해선 기존보다 많은 계수를 합성해야 하지만, 에너지 분산이 더욱 고르게 이루어져 노이즈 제거나 특정 특징량 추출에서 유리해지는 장점이 있다.

웨이블릿 스캐터링 변환

머신러닝과 딥러닝 분야에서 웨이블릿을 활용하려는 시도가 오랫동안 이어져 왔는데, 그중 스캐터링 변환(Scattering Transform)은 전통적인 컨볼루션 신경망(CNN)과 웨이블릿 변환을 절충한 방식으로 주목받는다. 스캐터링 변환은 고정된 웨이블릿 필터를 단계적으로 적용해 계층적 특징을 추출하되, 신호의 지역적 변화에 강인한 불변 특성을 확보한다.

스캐터링 변환에서 첫 번째 단계는 웨이블릿 변환과 유사하다. 다양한 스케일의 웨이블릿 필터를 입력에 컨볼루션하고 모듈러스 연산을 취해 비선형성을 부여한다. 그런 뒤 저주파 부분은 그대로 보존하면서, 고주파 부분은 다시 웨이블릿 필터를 적용해 다음 층의 특징량을 구한다. 이 과정을 반복하여 여러 계층에서 특징량을 뽑은 후, 최종적으로 단순 통계(평균 풀링 등)를 취해 스캐터링 계수를 형성한다.

이 방식은 파라미터 학습 없이도 특정 응용에서 CNN과 견줄 만한 분류 성능을 보이는 경우가 보고되었다. 필터 설계 관점에서는 다우베시 웨이블릿이나 가보(가버) 계열 필터를 주로 사용하며, 각 스케일에서 모듈러스 연산을 통해 비선형성을 부여해 신호의 위상 변동에 대한 민감도를 줄인다. 스캐터링 변환은 딥러닝보다 구조가 간단하고, 신경망의 학습 단계를 생략할 수 있어 계산량을 줄이면서도 시간-주파수 해석의 장점을 취할 수 있다는 특징이 있다.

웨이블릿 기반 특징 추출

신호 분류나 이상 탐지 문제 등에서, 웨이블릿 변환은 강력한 특징 추출 도구로 쓰인다. 특정 스케일 대역에 집중된 계수를 통계량(평균, 분산, 엔트로피 등)으로 요약하거나, 웨이블릿 공간에서의 에너지를 분석해 분류에 활용할 수 있다.

필터를 설계할 때, 관심 대역(또는 관심 스케일)을 강조하는 식으로 웨이블릿 함수를 선택하거나, 소멸 모멘트를 늘려서 특정 형태의 잡음을 쉽게 제거하도록 할 수 있다. 예컨대 구조물 진단 분야에서 나타나는 진동 신호는 회전 기계 결함이나 베어링 이상 등이 일정 주파수 대역에 집중되므로, 그 대역을 선명하게 분리할 수 있는 웨이블릿 필터를 쓰면 결함 진단에 유리하다.

영상 처리에서도 웨이블릿 계수의 국소 에너지를 통해 에지나 텍스처를 잘 구분할 수 있으며, 이를 기반으로 영상 분할, 객체 탐지, 초점 품질 평가 등 다양한 알고리즘이 제안되었다. 필터 계수를 적절히 튜닝해 특정 형태(방향성·곡률 등)에 반응이 극대화되도록 만들면, 신호 분석 효율을 크게 높일 수 있다.

다단계 필터링과 어댑티브 파라미터

웨이블릿 변환은 보통 한 번 필터링 후 다운샘플링을 진행하고, 그 결과를 다시 필터링해 더 낮은 스케일로 분해한다. 이 다단계 필터링 과정에서 각 레벨별 필터 계수나 임계값을 동적으로 조정하는 방식(어댑티브 웨이블릿 변환)이 연구되고 있다.

예컨대 1레벨에서 고주파 대역 잡음이 심한 경우, 2레벨 이상으로 분해를 더 진행하기 전에 필터 계수나 노이즈 추정값을 갱신해 더 나은 잡음 제거 성능을 얻도록 설계할 수 있다. 다단계 필터링 중간 단계마다 에너지를 재분배하거나, 미리 정의된 사전지식(특정 스케일에서 이상패턴 발생 등)을 활용해 필터를 선택적으로 적용하는 기법도 가능하다.

이러한 어댑티브 방식은 필터 계수를 고정하지 않고, 데이터 특성에 따라 단계별로 계수를 조금씩 수정해간다는 점에서 구현이 복잡할 수 있으나, 고정 필터보다 효율적인 해상도 분해를 달성할 수 있다. 특히 실시간 이상 탐지, 동적 신호 처리 분야에서 한층 향상된 성능을 제공할 수 있다.

고급 하드웨어 구현

웨이블릿 변환이 DSP나 FPGA, ASIC 같은 하드웨어에서 구현될 때는 필터 계수를 고정소수점으로 표현하고, 컨볼루션을 고속 실행하는 구조가 필요하다. 이를 위해 필터 계수 길이와 정밀도를 최소화하면서도 이상적인 주파수 응답을 근사할 수 있는 설계가 중요하다.

리프팅 스킴을 활용하면 필터 계수를 정수 형태로 관리하기 쉬우므로, 곱셈-덧셈 연산을 줄일 수 있어 저전력·고효율 구현이 가능하다. 또한 파이프라인(pipeline) 구조를 통해 다단계 분해를 병렬 처리하거나, DMA를 통해 대용량 신호를 스트리밍 입력받으면서 실시간 변환을 수행할 수 있다.

고정소수점 연산에서는 필터 계수를 최적화할 때 오차 분석과 라운딩 모드를 세심히 고려해야 한다. 예컨대 필터 계수의 스케일이 너무 크면 넘침(overflow)이 발생할 수 있고, 반대로 스케일이 너무 작으면 잡음 민감도가 올라간다. 따라서 최적의 비트폭(bit-width)과 스케일링 인자를 찾아내는 것이 하드웨어 웨이블릿 설계의 핵심 과제다.

결합 변환과 융합 기법

복잡한 신호나 영상에서는 웨이블릿 변환만으로 모든 특성을 효과적으로 포착하기 어려울 때가 있다. 이를 위해 웨이블릿 변환과 다른 변환(예: 단식 푸리에 변환, S-transform, STFT 등)을 결합하거나, 군집 분석, 스펙트럼 분석 등과 융합하는 기법이 시도되고 있다.

필터 설계 면에서, 먼저 웨이블릿 변환으로 대역분할을 수행한 후 특정 대역에서 추가적으로 STFT나 적응 필터를 적용해 세밀하게 분석하는 방식이 대표적이다. 이렇게 하면 저주파 영역은 웨이블릿으로 전역적 특성을 파악하면서, 고주파 영역에서만 추가 변환을 가동해 분석 혹은 노이즈 제거 성능을 높일 수 있다.

융합 기법에서는 각 변환 단계마다 서로 다른 요구 사항(직교성, 시간 해상도, 주파수 해상도, 위상 특성 등)이 존재하므로, 필터 계수를 설계할 때 이들 변환의 상호 영향을 면밀히 검토해야 한다. 여러 변환이 순차적으로 중첩되는 경우, 전체 시스템의 에너지 보존이나 위상 왜곡 문제가 복잡해질 수 있기 때문이다.

\

Last updated