경계 처리(Boundary Handling)

경계 처리의 필요성

웨이블릿 변환에서 신호가 유한 길이를 갖는 경우, 변환 시에 필터 연산 범위가 신호의 끝부분을 넘어가며 정의되지 않은 위치에까지 접근하게 된다. 이때 발생하는 문제를 해결하기 위해서는 인접 구간에 대한 적절한 처리가 필요하다. 신호가 무한 길이라고 가정하는 푸리에 변환과 달리 웨이블릿 변환은 실질적으로 제한된 구간에서 수행되므로, 경계 근처에서 발생하는 정보 손실 및 왜곡 현상을 최소화하기 위해 여러 가지 기법을 적용한다.

경계 확장의 일반적 개념

경계 처리 기법은 신호의 바깥쪽 부분을 어떻게 정의할지에 대한 방법론이다. 필터 기반의 웨이블릿 변환에서 컨볼루션 연산이 신호 양끝에 도달할 때 생기는 불완전 계산을 보완하기 위해, 일정 규칙에 따라 신호를 확장하거나 보간한다. 경계 처리 결과에 따라 세부 계수(세부 스케일)나 스케일링 계수(저주파 성분)의 계산값이 달라지므로, 원하는 분석 결과를 얻기 위해서는 신호의 특성에 맞춘 확장 방식을 신중히 선택하는 것이 중요하다.

순환(Periodic) 확장

순환 확장은 디지털 푸리에 변환에서 흔히 사용하는 주기적 경계 조건을 적용하는 방식이다. 신호의 시작부와 끝부분을 연결하여 동일 신호가 주기적으로 반복된다고 간주한다. 길이가 N인 1차원 신호가 있을 때, 인덱스가 범위를 넘어가면 다음과 같이 순환적으로 접근한다. 신호가 $x[0], x[1], \dots, x[N-1]$로 주어질 경우, $x[n]$의 인덱스가 음수이거나 $N$ 이상의 값을 가질 때

x[nmodN]x[n \bmod N]

으로 정의한다.

이렇게 정의하면 웨이블릿 변환에서 사용하는 필터가 신호 경계를 넘어서는 구간에 대해 순환적으로 연결된 구간을 참고함으로써, 경계에서의 불연속성으로 인한 왜곡이 비교적 적게 발생한다. 다만 원신호가 순환적 성질을 가지지 않을 경우, 인공적인 주기가 생김으로써 경계에서 왜곡이 완전히 제거되지 않을 수 있다는 점에 유의해야 한다.

영(Zero) 패딩

영 패딩은 신호의 경계를 벗어나는 지점부터 0으로 확장하는 가장 간단한 방식이다. 인덱스 범위를 벗어나는 구간을

x~[n]=0\tilde{x}[n] = 0

로 정의한다. 이 방법은 구현이 쉽고 빠르며, 특히 신호가 경계 밖에서 실제로 값이 거의 없는 경우(예: 한정된 구간에서만 특정 이벤트가 발생) 유용하게 활용된다. 그러나 경계 근처에서 급격한 값의 변화(원래 신호가 0이 아닌데도 0으로 설정되는)의 가능성이 있어, 때로는 스펙트럼 측면에서 부정확한 정보를 만들 수 있다.

반사(Reflection) 또는 대칭(Symmetric) 확장

반사 또는 대칭 확장은 신호의 경계를 거울처럼 반사시켜 연장하는 방식이다. 예컨대, 1차원 신호의 우측 경계를 확장한다고 하면, 신호가 $x[0], x[1], \dots, x[N-2], x[N-1]$ 로 정의되어 있을 때, $n \ge N$에서의 값을

x[2(N1)n]x[2(N-1) - n]

으로 설정한다.

좌측 경계 역시 마찬가지로 신호가 인덱스 범위 아래로 내려갈 때, 반사 연산으로 확장한다. 이러한 대칭 확장은 신호가 경계 근처에서도 크게 변하지 않고 완만하게 이어지도록 만들어 주파수 영역에서 경계로 인한 불연속이 최소화된다는 장점이 있다. 특히 이미지 처리에서 이 방식은 경계 근처의 인위적 변화를 줄여주는 효과가 크다.

spinner

계수 계산과 경계 처리의 상호 의존성

1차원 이산 웨이블릿 변환에서 스케일링 필터를 $h[n]$, 웨이블릿 필터를 $g[n]$라고 할 때, 레벨 1 디컴포지션에서 저주파 서브밴드 $\mathbf{a}^1$와 고주파 서브밴드 $\mathbf{d}^1$의 각 요소는

a1[k]=nx[n]h[2kn]d1[k]=nx[n]g[2kn]a^1[k] = \sum_{n} x[n] \, h[2k - n] \\ d^1[k] = \sum_{n} x[n] \, g[2k - n]

과 같이 계산된다. 여기서 합을 구하는 과정에서 $n$이 신호의 유효 범위를 벗어나면 적절한 경계 처리에 따라 $x[n]$을 확장해야 한다. 이때 어떤 확장 방식을 쓰느냐에 따라 $a^1[k]$와 $d^1[k]$에 반영되는 신호 구조가 달라진다.

예컨대, 반사 확장으로 신호를 정의했다면, $n$이 유효 범위 밖에 있을 때 $x[n]$을 반사 규칙으로 대입해야 하고, 영 패딩을 선택했다면 범위를 넘어서는 구간의 $x[n]$을 0으로 간주하게 된다.

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

이미지에 웨이블릿 변환을 적용할 때는 가로축과 세로축에 각각 1차원 변환을 순차적으로 수행하는 방식이 일반적이다. 먼저 행 방향으로 1차원 필터를 적용하고, 이어서 열 방향으로 필터를 적용한다. 이 과정을 통해 저주파 성분과 세부 성분을 포함한 서브밴드들을 얻을 수 있다.

이때 각 축에서 필터 연산이 경계를 넘어가면, 경계 처리 규칙에 따라 해당 행 혹은 열을 확장한다. 행별 경계 처리와 열별 경계 처리를 분리하여 수행하므로, 이미지의 네 모서리 부분을 어떻게 정의하느냐에 따라 결과가 달라질 수 있다.

예를 들어 대칭 확장 방식을 사용할 경우, 왼쪽 경계와 오른쪽 경계를 각각 반사시킨 뒤, 행 방향 필터링을 실시한다. 그다음 상단 경계와 하단 경계에 대해서도 동일한 규칙으로 반사 확장을 적용한 후, 열 방향으로 필터링을 진행한다.

다중해상도 분석(Multiresolution Analysis)과 경계 조건

다중해상도 분석은 계층적으로 축소된 스케일에서 신호(또는 이미지)를 해석하는 골격을 제공한다. 축소된 스케일로 내려갈수록, 공간 해상도가 절반으로 줄어들지만 주파수 해상도는 상대적으로 높아진다.

웨이블릿 변환을 레벨별로 진행할 때마다 경계 처리를 반복 적용한다. 각 레벨에서 생성되는 저주파 서브밴드(스케일링 계수)는 다음 레벨의 입력 신호가 되고, 경계 또한 새롭게 정의된다. 경계 근처의 해상도가 낮아질수록, 경계에서의 왜곡이 전체 변환 결과에 더 큰 비중으로 반영될 수 있다. 적절한 경계 처리 기법을 선택함으로써 이런 누적 효과를 줄일 수 있다.

모드(mode) 기반 구현 예시

실제 소프트웨어(예: MATLAB Wavelet Toolbox)에서는 경계 처리 방식을 모드(mode)라는 개념으로 지정한다.

zpd 모드는 제로 패딩 방식에 해당하며, sym 혹은 symh 모드는 대칭 확장 방식이다. ppd 모드는 순환 확장 주기(periodic padding)를 의미한다. 사용자나 알고리즘은 이 모드를 명시적으로 지정함으로써, 디지털 필터 연산에서 인덱스 범위를 벗어나는 지점에 대한 처리 과정을 자동화한다. 다음은 MATLAB에서 이미지 신호에 대해 대칭 확장 모드를 적용하고, 2차원 웨이블릿 변환을 수행하는 간단한 예시다.

여기서 'sym' 모드가 활성화되어 있을 때, 내부적으로 경계를 벗어나는 부분은 자동으로 반사 확장 처리된다.

경계 처리에서 필터 길이와의 관계

필터 길이가 길수록 필터 연산 시 참조해야 하는 신호 범위가 커지므로, 경계 부분의 데이터가 상대적으로 더 중요해진다. 예컨대, 길이가 짧은 하르(Haar) 웨이블릿 필터를 사용하면 경계 근처의 연산 범위도 짧아 상대적으로 경계 처리의 영향이 작을 수 있다. 반면에 길이가 긴 데베시스(Daubechies) 계열 웨이블릿 필터를 사용하는 경우, 경계 부분에서 더 많은 샘플을 참조하므로, 신호 확장의 품질이 전체 변환 결과에 더욱 큰 차이를 일으킨다.

스테이셔너리 웨이블릿 변환(SWT)과 경계 처리

스테이셔너리 웨이블릿 변환은 이산 웨이블릿 변환(DWT)과 달리 다운샘플링을 수행하지 않는 방식이다. 신호 또는 이미지의 해상도를 유지하면서 다중해상도 계수를 얻으려는 목적으로 사용된다. 이때에도 필터 연산이 경계 부분을 넘어가게 되므로, 적절한 확장이 필요하다.

스테이셔너리 웨이블릿 변환을 구현할 때는 각 스케일마다 필터를 2배씩 업샘플링하여 컨볼루션을 진행한다. 다운샘플링을 하지 않으므로 시간축(또는 공간축) 정렬이 유지되지만, 필터 길이가 늘어나는 효과가 있어 경계 영역에서의 샘플 요구가 커진다. 원하는 모드(대칭, 순환, 영 패딩 등)를 선택하여 신호를 확장함으로써 경계 계산에 필요한 샘플 값을 정의하게 된다.

경계 처리와 임계값(threshold) 기법

웨이블릿 변환 후에 노이즈 제거나 희소화(sparsity) 기법을 적용할 때는 특정 임계값 기법(예: soft thresholding, hard thresholding)을 쓴다.

경계 영역에서 확장된 샘플이 실제 신호가 아닌 인공적 값이므로, 웨이블릿 계수들이 원신호 특성을 완전히 반영하지 못할 수 있다. 이로 인해 임계값 기법에서 “잘못된” 제거 또는 보존이 일어날 우려가 있다.

예컨데 소프트 임계값 기법은

w^i=sgn(wi)max(wiλ,0)\hat{w}_i = \mathrm{sgn}(w_i)\,\max\bigl(|w_i| - \lambda, 0\bigr)

형태로 정의되며, 여기서 wiw_i는 웨이블릿 계수이고 λ\lambda는 임계값이다. 인덱스 ii가 경계 근처 계수를 가리킬 때, wiw_i가 확장 방식에 따라 과대 혹은 과소추정될 수 있으므로, 필터 뱅크나 리프팅 과정에서의 경계 모드를 적절히 골라야 한다.

에너지 보존 관점에서의 경계 처리

이산 웨이블릿 변환은 정규직교(orthonormal) 기반 필터를 사용할 경우, 전체 에너지가 서브밴드 계수 합으로 보존되는 성질이 있다. 그러나 경계 처리로 인해 실제 신호 범위 밖에 인위적인 값이 첨가되면, 이론적으로 예측되는 에너지 보존이 엄밀히 충족되지 않을 수도 있다.

순환 확장은 경계가 이어지므로 에너지 흩어짐이 적고, 대칭 확장은 급격한 변화를 완화시켜 분산을 줄여주지만, 어느 방식도 완벽한 물리적 신호 에너지를 그대로 보존해 주지는 못한다.

데베시스(Daubechies)나 코이프렛스(Coiflets)처럼 지지(support)가 넓은 웨이블릿은 경계 부분에서 더 많은 샘플을 필요로 하므로, 모드 선택에 따라 에너지 분포가 더 크게 달라진다.

실제 예시: 오디오 신호 경계 처리

오디오 신호는 일반적으로 파일 단위로 저장되며, 파일 끝부분에서 필터 계수가 남거나 부족한 상황이 발생한다. 음악이나 음성의 경우 대역 제한이지만 신호가 완전히 주기적이지는 않으므로, 순환 확장 모드는 파일 시작 부분과 끝부분이 어색하게 이어질 수 있다. 실제로, 파일 전후가 무음(0에 가까운 값)이라면 영 패딩이 적절할 수 있으나, 음악 파일처럼 자연스러운 연결이 중요할 때는 대칭 모드가 더 좋은 청각적 결과를 낳기도 한다. 예시 코드 구조는 다음과 유사할 수 있다.

위 코드에서 mode 파라미터가 경계 확장 방식을 결정한다. 음악 감상이나 음성 인식 등 최종 목표에 따라 대칭(symmetric), 주기(periodic), 영(zpd) 등이 구분되어 활용된다.

이미지 압축에서의 시각적 효과

이미지 압축 시, 블록 기반(DCT 등)에서는 경계부 블록 아티팩트가 발생하기 쉽다. 웨이블릿 기반 압축은 블록 단위가 아닌 다중해상도 단위로 정보를 표현하기 때문에, 경계선 형태의 인공 패턴이 비교적 적게 생긴다는 장점이 있다.

다만 여전히 변환 과정에서 경계를 어떻게 처리하느냐에 따라, 이미지 가장자리에서 인위적 무늬가 나타날 수 있다. 특히 스캔 영역(ROI)이나 관심 객체(segmentation) 기반으로 처리할 때는 경계부가 부자연스러워 보일 가능성이 높다. 이때 대칭 확장을 적용하면 경계 근처 픽셀이 갑작스런 값 변화를 겪지 않으므로 시각 품질이 개선되는 경향이 있다.

파라메트릭 경계 처리 기법

웨이블릿 변환에서 경계 처리를 단순히 모드로 설정하는 것 외에, 보간(interpolation) 또는 추정(approximation)에 기반한 파라메트릭 방식도 존재한다. 예를 들어 경계 근방의 짧은 구간을 다항(polynomial) 함수로 근사하거나, 스플라인(spline) 기법을 이용하여 경계를 부드럽게 연결하는 방법이 제안되기도 한다.

이런 파라메트릭 기법은 신호의 통계적 특성(예: 음성 신호에서 포만코드(formant code)나, 이미지에서 텍스처 특성)을 추정하여 경계 부분을 확장함으로써, 단순 모드 처리보다 더 자연스러운 변환 결과를 얻을 수 있다는 장점이 있다. 반면 계산량과 구현 복잡도가 증가하기 때문에, 단순 모드보다 실시간 처리가 어려울 수 있다.

복소 웨이블릿 변환(CWT, Complex Wavelet Transform)에서의 경계 처리

복소 웨이블릿 변환(CWT)은 실수 웨이블릿 변환과 달리, 위상 정보를 포함하는 계수를 생성한다. 일반적으로 복소 웨이블릿은 이동불변성(shift-invariance)과 방향성(directionality) 측면에서 이점을 제공하나, 경계에서의 위상 불연속 문제가 더 복잡해질 수 있다.

복소 필터뱅크를 구현할 때, 실수부와 허수부를 각각 별도의 신호로 보고 경계 처리를 동일하게 적용하거나, 한꺼번에 복소 계수에 대해 확장 규칙을 정하는 방식을 사용한다.

예컨대 순환 확장 모드는 실수부와 허수부를 동일하게 주기적으로 연결하고, 대칭 확장은 해당 복소값의 실수부와 허수부를 동시에 반사하는 식으로 정의할 수 있다. 위상 왜곡(phase distortion)을 최소화하기 위해선 인위적 절단보다는 대칭 확장이 상대적으로 안정적인 결과를 낳는다는 보고도 있다.

부분 영역(partial region) 변환에서의 경계 처리

이미지의 특정 영역(ROI: Region of Interest)만 변환하거나, 오디오 신호의 특정 구간만 웨이블릿 분석을 수행해야 하는 상황에서는 내부 경계(inner boundary) 처리 역시 고려해야 한다. 예를 들어 커다란 이미지에서 작은 직사각형 영역만 추출 후 해당 영역에 2차원 웨이블릿 변환을 적용한다면, 그 영역의 사방이 사실상 경계를 이룬다.

이 경우 일반적인 경계 처리 모드를 그대로 적용할 수도 있지만, ROI 주변 픽셀이 원본 이미지의 일부라는 점을 반영하여, ROI가 아닌 영역을 “참조”만 하되 변환 계산에는 포함하지 않는 방식을 구현하기도 한다. 이는 ROI 내부 정보를 보존하면서도, 경계부에서의 불연속을 최소화하기 위함이다.

불규칙 격자에서의 경계 처리

디지털 신호나 영상은 일반적으로 균일한 격자(uniform grid)로 샘플링되어 있으나, 상황에 따라 불규칙(non-uniform)하게 샘플링된 데이터를 웨이블릿 변환해야 할 수도 있다. 이때 이산 샘플이 경계 근방에서 희소하게 분포하면, 확장 규칙 또한 재정의가 필요하다.

불규칙 격자에서의 경계 처리는 샘플 간격에 맞춰 스플라인 계수를 추정하거나, 최근접 이웃 보간(nearest neighbor interpolation)을 통해 유효 범위를 연장하는 식으로 구현하기도 한다. 특히 지리 정보 시스템(GIS) 등에서 공간적으로 불규칙 샘플링된 데이터를 다중해상도로 분석할 때 이런 방법이 쓰인다.

웨이블릿 패킷(Wavelet Packet) 변환과 경계 처리

웨이블릿 패킷 변환은 저주파 서브밴드뿐 아니라 고주파 서브밴드도 재귀적으로 분할하는 방식이다. 서브밴드 구조가 유연해지는 만큼, 각 단계의 필터 적용에서 경계 처리를 어떻게 하느냐에 따라 최종 패킷 트리(packet tree)의 특성이 달라진다.

반사 확장이나 순환 확장 같은 방식을 단계마다 동일하게 적용할 수도 있고, 서브밴드별 특성에 맞춰 상이한 모드를 사용하기도 한다. 예컨대 저주파 성분에서는 대칭 확장이 효과적이지만, 특정 고주파 대역은 영 패딩으로 처리해도 큰 손실이 없다고 판단될 수 있다. 이런 선택은 결과적으로 패킷 분해 기반의 분류나 탐색 알고리즘 성능에 영향을 줄 수 있다.

정방향·역방향 변환에서의 경계 처리 일관성

웨이블릿 변환은 정방향(forward) 변환과 역방향(inverse) 변환을 통해 원 신호(또는 영상)를 완벽하게 복원할 수 있어야 한다. 이를 위해서는 정방향 변환에서 적용한 경계 처리 방식을 역방향 변환에서도 동일하게 유지함이 원칙이다. 예컨대 정방향 변환에서 신호의 양끝을 대칭 확장했다면, 역변환 시에도 동일한 방식으로 확장 규칙을 적용해야 필터 연산의 시간축(or 공간축) 정렬이 맞아떨어지고, 재구성이 오차 없이 이뤄진다.

이와 달리, 정방향 변환에서는 영 패딩을 썼는데 역방향 변환에서 순환 확장을 적용한다면, 경계 근방에서 필터 계수의 대응 관계가 바뀌어 완전한 복원이 불가능해진다. 따라서 실질적인 구현에서는 변환 함수와 역변환 함수를 한 세트로 묶어 동일 모드를 적용하도록 설계하거나, 모드별 호환성을 정교하게 관리하는 과정을 거친다.

경계 처리와 부분 재구성(Partial Reconstruction)

원 신호의 특정 구간이나 특정 밴드(서브밴드)만 역변환하여 재구성하는 부분 재구성 기법을 쓸 때도, 해당 구간 또는 밴드에서의 경계 처리가 일관되게 유지되어야 한다. 예컨대 특정 서브밴드만 역변환하는 과정에서도 경계 필터 연산이 요구되며, 이때 경계 확장 모드를 제대로 맞춰 주지 않으면 신호가 어긋나거나 에너지가 왜곡될 수 있다.

부분 재구성을 통해 특정 특징만 복원하거나 잡음 성분을 제거하려는 응용에서, 경계 처리를 소홀히 하면 오히려 재구성된 신호가 경계 근처에서 왜곡된 형태를 보일 위험이 크다. 때문에, 이 분야에서도 모드 설정과 구현 로직이 긴밀히 연동되어야 한다.

Last updated