2차원 웨이블릿 변환 개요

2차원 웨이블릿 변환의 정의

2차원 웨이블릿 변환은 이차원 신호 혹은 이미지를 스케일 파라미터와 위치 파라미터에 따라 국소적으로 분석하기 위한 방법이다. 일반적으로 1차원 웨이블릿 변환에서 확장한 형태로 볼 수 있으며, 가로축과 세로축 방향으로 각각 웨이블릿 변환을 적용함으로써 수행하는 방식을 자주 사용한다. 예를 들어 어떤 이미지 $f(x,y)$가 있을 때, 2차원 이산 웨이블릿 변환은 대개 수평, 수직 두 축 방향으로 웨이블릿 필터를 분리하여 순차적으로 적용하는 구조로 구성된다. 이러한 변환 과정을 통해 저주파 성분(Approximation)과 고주파 성분(Detail)을 모두 분석할 수 있다.

이산 2차원 웨이블릿 변환의 기본 아이디어

2차원 이산 웨이블릿 변환은 $x$축 방향과 $y$축 방향에 대한 1차원 웨이블릿 변환을 결합하여 수행하는 것이 전형적이다. 이를 분리 가능한(separable) 웨이블릿이라 하며, 임의의 시·공간 좌표에서의 변환 결과는 1차원 변환 결과들을 조합함으로써 얻어진다. 가장 간단한 형태의 모함수는

ψ(x,y)=ψ(x)ψ(y)\psi(x,y) = \psi(x)\,\psi(y)

와 같이 분리 가능 형태를 취할 수 있다.

이산적인 스케일과 이산적인 위치를 사용하여 2차원 변환을 정의한다면, 일정한 해상도의 격자 위에서 스케일 계수를 조정하고 위치를 바꾸어가며 이미지 전체를 커버하는 방식으로 변환을 수행한다. 예를 들어 2차원 이산 웨이블릿 변환 계수는 크게 네 가지의 밴드로 분류된다. 가장 낮은 주파수 성분만을 포함하는 저주파 부분과, 수평·수직·대각선 방향의 차이를 포착하는 세 가지 고주파 부분이다. 이때 이미지를 한 번 변환한 결과를 다시 저주파 부분에만 반복 적용함으로써 다중 해상도 분해(Multi-resolution Decomposition)를 수행한다.

2차원 웨이블릿 변환의 수학적 표현

임의의 2차원 이산 함수 $f(m,n)$에 대해 웨이블릿 필터의 스케일과 위치를 조정해가며 변환 계수를 구하는 과정은 다음과 같은 수식으로 간단히 나타낼 수 있다. 스케일 지수 $j$, 평행이동 지수 $k_1, k_2$에 따라 수평, 수직, 대각선 세 방향의 웨이블릿 계수를 구분할 수도 있다. 다만 분리 가능한 필터뱅크 설계를 전제로 하면,

Aj(k1,k2)=mnf(m,n)ϕj,k1,k2(m,n)Hj(k1,k2)=mnf(m,n)ψj,k1,k2(H)(m,n)Vj(k1,k2)=mnf(m,n)ψj,k1,k2(V)(m,n)Dj(k1,k2)=mnf(m,n)ψj,k1,k2(D)(m,n)A_j(k_1, k_2) = \sum_{m} \sum_{n} f(m,n)\,\phi_{j,k_1,k_2}(m,n) \\ H_j(k_1, k_2) = \sum_{m} \sum_{n} f(m,n)\,\psi_{j,k_1,k_2}^{(H)}(m,n) \\ V_j(k_1, k_2) = \sum_{m} \sum_{n} f(m,n)\,\psi_{j,k_1,k_2}^{(V)}(m,n) \\ D_j(k_1, k_2) = \sum_{m} \sum_{n} f(m,n)\,\psi_{j,k_1,k_2}^{(D)}(m,n)

와 같이 네 가지 계수를 구한다. 여기서 $A_j$는 저주파 성분(Approximation), $H_j$는 수평 차이를 반영하는 디테일 성분(Horizontal detail), $V_j$는 수직 차이를 반영하는 디테일 성분(Vertical detail), $D_j$는 대각선 차이를 반영하는 디테일 성분(Diagonal detail)이다. 필터 형태에 따라 $\phi_{j,k_1,k_2}$는 스케일링 함수, $\psi_{j,k_1,k_2}^{(H)}, \psi_{j,k_1,k_2}^{(V)}, \psi_{j,k_1,k_2}^{(D)}$는 방향 특성을 가지는 웨이블릿 함수를 의미한다.

다중 해상도 구조

다중 해상도 구조에서는 한 번의 변환으로 얻어진 저주파 성분 $A_j$에 대해서만 다시 웨이블릿 변환을 적용한다. 이를 통해 점진적으로 더 낮은 주파수 대역을 분해해 가며, 그에 대응하는 고주파 성분들을 얻는다. 이때 전체 이미지는 여러 해상도(스케일)에서의 정보를 동시에 얻게 되므로, 영상 처리나 신호 분석에서 효과적으로 사용할 수 있다.

다음 예시 그림은 2차원 이미지에 대해 한 번의 웨이블릿 변환을 수행했을 때의 분해 구조를 개략적으로 나타낸 것이다.

spinner

이 구조를 기반으로 $A$에 대하여 반복적으로 변환을 적용하면 더 많은 스케일에서의 저주파 및 고주파 정보를 추출할 수 있다.

필터뱅크와 완전 재구성

2차원 이산 웨이블릿 변환에서 사용되는 필터뱅크 구조는 특정 스케일에서의 저주파 성분과 고주파 성분을 각각 분리하고, 동시에 역변환을 통해 손실 없이 원본을 재구성할 수 있도록 설계된다. 완전 재구성(Perfect Reconstruction)이 가능하다는 것은 임의의 신호나 이미지를 웨이블릿 도메인으로 변환한 뒤 다시 시간·공간 도메인으로 복원했을 때, 원본과 동일한 결과를 얻을 수 있음을 의미한다. 이를 위해 분리 가능한 2차원 필터가 사용되며, 각각의 필터는 1차원 저역통과 필터와 고역통과 필터의 직교성 혹은 쌍직교성을 만족하도록 고안된다.

일반적으로 2차원 필터뱅크는 먼저 행 방향으로 1차원 웨이블릿 필터를 적용한 뒤, 그 결과에 대해 열 방향으로 다시 웨이블릿 필터를 적용함으로써 저주파, 수평 고주파, 수직 고주파, 대각선 고주파 성분을 얻는다. 원본 영상을 $\mathbf{f}$라 할 때, 이를 한 번 필터링한 결과가 $\mathbf{A}, \mathbf{H}, \mathbf{V}, \mathbf{D}$가 된다면, 역필터링 과정 역시 동일한 분리 방식으로 적용되어 $\mathbf{f}$를 정확히 재구성한다. 이때 필터 계수는 적분 혹은 합성곱 연산을 통한 직교성 조건을 만족해야 하며, 특히 무손실 인코딩이나 영상 압축 분야에서는 이 같은 완전 재구성 특성이 필수적이다.

직교 웨이블릿과 쌍직교 웨이블릿

직교 웨이블릿(Orthogonal Wavelet)은 웨이블릿 함수와 스케일링 함수가 서로 직교(Orthogonality) 관계를 만족하는 경우를 말한다. 이는 필터 계수를 수학적으로 설계할 때 직교성 조건을 명시적으로 반영하여, 변환 후의 중복성을 줄이는 장점이 있다. 반면 쌍직교 웨이블릿(Biorthogonal Wavelet)은 직교성 대신 상호 상보적인 두 쌍의 필터를 사용함으로써 직교보다 더 유연한 디자인이 가능하다. 예를 들어 해석(Decomposition) 필터와 합성(Reconstruction) 필터를 별도로 정의하여, 한쪽에서 짧고 대칭적인 필터를 얻으면서 다른 한쪽에서 긴 직교 필터를 허용할 수 있다. 영상 처리에서의 경계 효과 완화나 미세 디테일 표현에서는 이러한 쌍직교 웨이블릿이 자주 이용된다.

2차원 웨이블릿 변환에서의 경계 처리

이미지 변환 시 가장자리(경계) 처리는 알고리즘 구현에서 중요한 문제이다. 대부분의 웨이블릿 필터는 합성곱 연산을 수행할 때 일정 길이 이상의 샘플을 요구하므로, 이미지의 경계부에서 샘플이 부족하게 된다. 이를 해결하기 위해 패딩(Padding) 기법을 적용하여 이미지를 특정 규칙에 따라 확장하거나, 주기적(PERIODIC) 반복을 가정하여 가장자리 샘플을 재활용하기도 한다. 직교성이나 해석적 특성을 보존하기 위해 경계 처리 방식을 어떻게 선택하느냐에 따라 변환 계수의 미세한 차이가 발생할 수 있으며, 이를 적절하게 설정해야만 결과물을 일관성 있게 얻을 수 있다.

이산 2차원 컨벌루션과 다운샘플링

2차원 이산 웨이블릿 변환의 구현은 기본적으로 행렬 형태의 영상에 대해 1차원 컨벌루션(합성곱)과 다운샘플링 과정을 두 번 반복함으로써 이루어진다. 먼저 행 방향으로 저역통과 필터와 고역통과 필터를 각각 컨벌루션 연산한 뒤, 2배율의 다운샘플링을 수행한다. 이어서 이렇게 얻어진 두 개의 영상을 세로 방향으로 다시 각각 저역통과, 고역통과 필터와 컨벌루션하여 다시 다운샘플링한다. 결과적으로 저주파 성분과 고주파 성분이 공간적으로 분리된 네 개의 서브밴드를 얻는다. 이를 식으로 표현하면, 임의의 2차원 영상 $\mathbf{f}$에 대해

fL(m,n)=kf(m,k)g(kn)fH(m,n)=kf(m,k)h(kn)\mathbf{f}_L(m, n) = \sum_k \mathbf{f}(m, k)\,g(k - n) \\ \mathbf{f}_H(m, n) = \sum_k \mathbf{f}(m, k)\,h(k - n)

와 같이 가로 방향으로 저역통과 필터 $g(\cdot)$, 고역통과 필터 $h(\cdot)$를 적용하고 2배율 다운샘플링을 수행한 뒤, 결과인 $\mathbf{f}_L, \mathbf{f}_H$를 다시 세로 방향으로 동일한 필터를 적용한다. 최종적으로 저주파 성분 $\mathbf{A}$, 세 방향의 고주파 성분 $\mathbf{H}, \mathbf{V}, \mathbf{D}$를 얻게 된다. 다운샘플링은

fL(m,n)=fL(2m,2n)\mathbf{f}_L'(m, n) = \mathbf{f}_L(2m, 2n)

와 같이 행과 열 인덱스를 2간격으로 취하는 식으로 정의한다. 같은 방식으로 $\mathbf{f}_H$에 대해서도 다운샘플링을 적용하면, 분리 가능한 2차원 웨이블릿 변환 결과가 완성된다.

서브밴드 구조의 주파수 해석

이렇게 분해된 네 개의 서브밴드는 공간적으로는 이미지의 다양한 방향 성분을, 주파수 영역에서는 서로 다른 대역을 나타낸다. 예를 들어 저역통과 필터를 통과한 $\mathbf{A}$는 원본 영상의 전체적인 윤곽과 저주파 신호를 포함한다. 반면 고역통과 필터를 통과한 세 가지 성분 $\mathbf{H}, \mathbf{V}, \mathbf{D}$는 각각 수평, 수직, 대각선 방향의 경계나 에지 정보를 주로 반영한다. 이러한 특성을 바탕으로 잡음 제거나 특징 추출, 에지 검출 등 다양한 영상 처리 기법에 활용할 수 있다.

다운샘플링을 통해 해상도가 절반으로 줄어드는 과정은 시간·공간 도메인에서의 압축과 유사하게 주파수 도메인에서도 대역폭을 절반씩 줄여주는 역할을 한다. 여러 스케일에 대한 반복 변환을 통해 다중 해상도 분해가 수행되면, 각 스케일에서 더욱 세밀하게 분할된 주파수 정보를 얻을 수 있다. 이와 같은 특징은 이미지를 다차원적으로 분석하는 데 있어 매우 효율적이다.

주파수 영역에서의 다중 해상도 해석

2차원 웨이블릿 변환을 여러 단계 반복하면, 저주파 성분에 대해 다시 한 번 변환을 적용해 더욱 낮은 주파수 대역을 분해하고 고주파 대역도 여러 방향으로 세분화할 수 있다. 이러한 다중 해상도 구조는 이미지를 매우 낮은 주파수 대역부터 매우 높은 주파수 대역까지 효율적으로 분석할 수 있게 하며, 각각의 대역에서는 이미지가 서로 다른 특징(예: 에지, 텍스처, 전체적인 윤곽 등)을 띠게 된다. 이를 통해 원하는 스케일에서만 정보를 취사선택하거나, 특정 방향의 디테일을 강조·억제할 수 있는 방법들이 개발되어 왔다. 예를 들어 영상 압축에서 비가시적(Perceptually less sensitive) 영역을 강하게 양자화하거나, 노이즈 제거 과정에서 특정 주파수 대역을 선택적으로 감쇠시키는 기법이 대표적이다.

단계별 분해 결과 시각화

일반적인 2차원 웨이블릿 변환에서 한 단계의 분해가 수행되면, 원본 영상은 저주파 서브밴드와 세 가지 방향성 고주파 서브밴드로 나뉜다. 이 저주파 서브밴드에 대해 동일한 변환을 반복 적용하면, 각각 더 낮은 해상도의 저주파 성분과 그에 대응하는 고주파 성분들을 획득한다. 이 과정을 트리 구조로 표현하면, 루트 노드가 원본 영상을, 각 레벨에서 자식 노드들이 분해된 서브밴드를 나타낸다. 다중 해상도 분해의 깊이를 $L$이라 할 때, 최종적으로 가장 낮은 주파수 대역에 대한 저주파 서브밴드 하나와 여러 레벨에 걸친 고주파 서브밴드들이 함께 구성되는 형태가 된다.

spinner

위 그림에서 $A_i, H_i, V_i, D_i$는 각각 $i$번째 단계에서의 저주파 및 세 방향의 고주파 성분을 의미하며, $i$가 높을수록 더 낮은 해상도로 분해되었다고 볼 수 있다.

계수 크기를 통한 에너지 분포 파악

각 서브밴드에 해당하는 계수의 크기는 특정 방향과 스케일 대역에 분포된 에너지를 나타낸다. 예를 들어 고주파 서브밴드에서 계수 크기가 큰 위치는 해당 화소 주변에 뚜렷한 에지나 세부 구조가 존재함을 의미한다. 반면 저주파 서브밴드에서의 계수 크기는 이미지 전체의 평균적 밝기나 대략적 윤곽을 반영하므로, 대체로 큰 에너지 값들이 저주파 성분에 모이게 된다. 이처럼 2차원 웨이블릿 변환 계수들을 분석함으로써 이미지를 다중 스케일·다중 방향에서 해석할 수 있으며, 특정 방향이나 스케일의 특징만 골라서 강조 혹은 제거하는 작업도 가능하다.

역변환을 통한 부분 재구성

2차원 웨이블릿 역변환(Inverse Wavelet Transform)을 수행하면, 원본 이미지를 손실 없이 복원할 수 있다. 하지만 특정 서브밴드를 제거하거나 변경한 뒤에 역변환을 수행하면, 그에 대응하는 주파수 대역의 특징을 없애거나 수정한 이미지를 얻는다. 예컨대 노이즈 제거를 위해 노이즈가 주로 존재하는 고주파 서브밴드에서 작은 크기의 계수를 임계값(Threshold) 이하로 소거한 후 재구성하면, 전체적인 윤곽을 유지하면서도 잡음이 줄어든 영상을 얻을 수 있다. 이처럼 서브밴드별 처리와 역변환 과정을 통해 직접 공간 도메인에서 하기 어려웠던 다양한 영상 보정 및 편집 기법을 구현할 수 있다.

스케일에 따른 국소 분석과 응용

2차원 웨이블릿 변환은 국소 분석(Local Analysis)에 유리하며, 스케일을 달리함으로써 이미지를 미세한 구조와 거시적 구조로 분리해서 볼 수 있다. 각 스케일에서의 해석적 의미가 분명하기 때문에, 영상의 스펙트럼 특성을 알아보기 쉽고 처리 과정도 직관적이다. 이러한 특성은 영상 압축, 특징 검출, 분할(Segmentation), 변형 감지(Change Detection) 등에 광범위하게 이용되지만, 본서는 이러한 응용보다는 2차원 웨이블릿 변환 자체의 개념을 정리하는 데 초점을 두므로 상세한 응용 절차는 다루지 않는다.

Last updated