# 자주 발생하는 문제 및 해결 방안

#### 경계 구간에서의 불연속 처리

웨이블릿 변환 과정에서 신호의 길이가 한정되어 있을 때 경계 지점에서 발생하는 불연속 현상이 문제로 대두된다. 경계 인접 구간에서는 파형의 완전한 분석이 어려워 에너지가 인위적으로 증폭되거나 감소하는 결과가 나타난다. 이러한 현상은 신호의 실제 스펙트럼을 왜곡하고 필터뱅크 연산의 정확도를 떨어뜨린다. 경계 처리를 위해 패딩(padding)을 적용하거나 신호를 주기적으로 확장하여 연산하는 기법이 제안되지만, 이러한 방법 역시 분석 대역별 성능에 차이가 발생한다. 경계 구간에서 발생하는 에너지 손실 혹은 오차를 최소화하기 위해서는 신호의 특성을 반영한 반사(reflection) 기법이나 선택적 윈도잉(windowing) 기법을 고려하기도 한다.

패딩 방식을 적용할 때는 신호의 자취를 되살리기 위해 $x\[n]$을 특정 구간에 대해 미리 정의된 형태로 확장한다. 예를 들어 신호가 $0 \le n < N$인 구간에서 정의되어 있다면, $N \le n < 2N$ 구간에 대해서 $x\[n] = x\[2N - 1 - n]$과 같이 반사(reflect) 기법을 적용하여 경계의 불연속성을 줄이는 방법이 있다. 이러한 기법은 실제 신호가 불연속을 갖지 않는다는 가정하에서만 유효하므로, 신호의 특성과 잡음 분포를 면밀히 검토하여 최적화된 확장 방식을 선택해야 한다.

#### 모함수 선택에 따른 스펙트럼 왜곡 문제

모함수(mother wavelet)의 선택은 변환 성능에 직접적인 영향을 미치는 핵심 요인이다. 어떤 모함수를 선택하느냐에 따라 시간-주파수 해상도가 달라지고, 결과적으로 변환 계수들의 에너지 분포가 크게 달라질 수 있다. 예를 들어 데베쉬스(Daubechies) 계열은 콤팩트 지지(compact support)를 지니기 때문에 신호 처리에 용이하지만, 부드러움(smoothness)이나 대역별 에너지 분해 능력이 제한되는 경우가 존재한다. 반면 스플라인(spline) 계열은 좀 더 부드럽지만, 잡음에 민감하게 반응하는 문제가 발생할 수 있다.

어떤 모함수 $\psi(t)$를 사용할 때, 연속 웨이블릿 변환의 경우

$$
W\_\psi (a, b) = \int\_{-\infty}^{\infty} x(t) \frac{1}{\sqrt{a}} \psi \Bigl(\frac{t - b}{a}\Bigr) , dt
$$

의 정의에 기초하여 스케일 $a$와 위치 $b$에 따라 계수가 달라진다. 모함수가 가진 대역 특성과 제곱 적분 가능성 조건에 의해 특정 구간의 스펙트럼 응답이 지나치게 강조되거나 반대로 무시될 수 있다. 따라서 응용 분야가 이상신호(진동 결함 진단, 이상 패턴 검출 등)인지, 일반 신호(오디오 데이터, 이미지 등)인지에 따라 다른 모함수를 선택하거나 복수의 모함수를 병행 적용하는 방법이 시도된다.

#### 해상도 수준 설정에서의 비선형 왜곡

다중 해상도 분석(multi-resolution analysis)은 웨이블릿 변환의 중요한 장점으로, 서로 다른 스케일 $a$에서 신호를 관찰할 수 있게 한다. 그러나 적절하지 않은 스케일을 선택하면 일부 주파수 대역의 정보를 제대로 포착하지 못하거나, 반대로 지나치게 많은 세분화로 인해 잡음까지 증폭시키는 문제가 발생한다. 특히 이산 웨이블릿 변환에서는 레벨(level)을 어떻게 설정하느냐에 따라 저역 대역은 과도하게 두터워지고 고역 대역은 충분히 분석되지 않는 결과가 나타날 수 있다.

이산 웨이블릿 변환에서 레벨이 증가할 때마다 시간 해상도는 줄어들고 주파수 해상도는 늘어난다. 신호가 $n$개의 샘플로 구성되어 있을 때, $j$번째 레벨에서의 계수를 $c\_{j,k}$라 하면

$$
x(t) \approx \sum\_{j}\sum\_{k} c\_{j,k} ,\psi\_{j,k}(t)
$$

와 같이 표현되는데, 레벨 $j$가 증가하면 높은 주파수 성분에 대한 정보가 줄어드는 식으로 해석된다. 이는 구간별로 중요한 세부 주파수 성분을 지나치게 필터링할 가능성을 높이므로, 레벨 선택 시 신호의 에너지 스펙트럼을 미리 살펴보고 특정 주파수 구간이 어떤 레벨에 위치하는지를 확인할 필요가 있다.

{% @mermaid/diagram content="graph LR
A("입력 신호 x\[n]") --> B(고역 필터 H)
A --> C(저역 필터 G)
B --> D(다운샘플링)
C --> E(다운샘플링)" %}

#### Shift-Invariance 부족에 따른 오차 발생

이산 웨이블릿 변환은 임계샘플링(critical sampling) 구조로 인해 신호가 일정 구간만큼 평행 이동했을 때 변환 계수가 동일하게 변환되지 않는 현상을 보인다. 이를 일반적으로 Shift-Invariance가 결여되어 있다고 표현한다. Shift-Invariance가 없으면 신호분석에 있어서 매우 미세한 시점 변화가 분석 결과를 바꿀 수 있어, 이상 징후 검출과 같은 민감한 작업을 수행하기 어렵다. 이런 문제를 완화하기 위해서는 레드던던트(undecimated) 웨이블릿 변환을 고려할 수 있지만, 샘플링을 줄이지 않고 각 스케일마다 모든 시간축 계수를 유지하기 때문에 메모리 사용량과 계산량이 크게 늘어나는 단점이 있다. 신호 성격에 따라 Shift-Invariance가 필수적인 경우에는 레드던던트 변환 기법 또는 복합 변환 접근 방식을 택해야 한다.

Shift-Invariance 문제는 위상(phase) 왜곡과도 밀접한 관련이 있어, 특정 시점에서의 에너지 분포가 변환 계수에서 적절히 반영되지 못할 수 있다. 특히 짧은 시간 구간에서 발생하는 이벤트(스파이크, 충격파, 결함 신호 등)에 대한 검출이 중요한 응용에서는 Shift-Invariance를 확보하지 못할 경우 놓치는 이벤트가 발생하거나 반대로 잡음이 증폭되는 현상이 심화된다. 이를 방지하기 위해 필터뱅크 설계 시 위상 응답 특성을 고려한 선택 또는 여분의 채널을 두는 기법이 제안되기도 한다.

#### 완전 재구성(perfect reconstruction) 구현의 제약

웨이블릿 변환을 사용해 신호의 특정 대역만을 재구성하거나, 결함 검출 후 나머지 성분을 재구성하려면 변환 계수를 정확히 역변환할 수 있어야 한다. 이를 완전 재구성(perfect reconstruction)이라고 하며, 고역 필터와 저역 필터의 조합을 어떻게 설계하느냐가 핵심이다. 데베쉬스 계열, 바이오정규(biorthogonal) 계열 등은 이산 웨이블릿 변환에서 완전 재구성을 보장하지만, 필터 계수가 유리수나 정수로 떨어지지 않는 경우 구현 단에서 부동소수점 연산의 정밀도가 요구된다. 특히 신호 처리 하드웨어나 임베디드 환경에서 정수 계수만을 사용하려고 하면 재구성 과정에서 작은 양자화 오차(quantization error)가 축적되어 왜곡을 일으킬 수 있다.

완전 재구성을 성능적으로 보장하기 위해 설계된 필터쌍 $(g, h)$에 대하여 상호직교성을 만족하면, 해석(analysis) 필터뱅크와 합성(synthesis) 필터뱅크가 완전 재구성을 유지한다. 이산 웨이블릿 변환에서 레벨 $J$까지 수행했다면, 역변환 과정은

$$
x\[n] = \sum\_{j=1}^{J} \Bigl( \sum\_{k} d\_{j,k} , \psi\_{j,k}\[n] \Bigr) + \Bigl( \sum\_{k} a\_{J,k} , \phi\_{J,k}\[n] \Bigr)
$$

과 같은 형태로 진행된다. 여기서 $d\_{j,k}$는 세부(detail) 계수, $a\_{J,k}$는 최저 주파수 성분의 근사(approximation) 계수이며, $\psi\_{j,k}$와 $\phi\_{J,k}$는 해당 레벨에서의 웨이블릿 및 스케일링 함수의 이산 형태다. 다만 이 식은 이론적으로는 완전 재구성을 보장하지만, 실제 구현 시 필터 계수와 데이터가 모두 유한 정밀도를 갖는 연산 환경에서는 수치적 에러가 누적될 수 있음을 주의해야 한다.

#### 잡음 억제와 세부 구조 손실의 상충

웨이블릿 기반의 잡음 제거(denoising)는 다양한 응용분야에서 중요한 이슈이다. 특정 대역(고주파 대역 등)에서 계수의 임계값(threshold)을 설정하여 잡음을 억제한 뒤 역변환을 수행하는 기법이 널리 사용되지만, 잘못된 임계값 설정이나 모함수 선택에 따라 유익한 세부 신호마저 잡음으로 간주되어 소실되는 문제가 발생한다. 예컨대 미세한 피크나 반복 주기 정보를 보존해야 하는 응용에서는 threshold를 무작정 높게 설정하면 세부 구조가 급격히 사라질 수 있고, 너무 낮게 설정하면 잡음이 적절히 제거되지 않는다.

특히 신호의 에너지 분포가 특정 주파수 대역에 몰려 있지 않고 광범위하게 분포되어 있으면, 웨이블릿 변환 후 여러 레벨에서 잡음과 유용 신호가 섞여 나타날 수 있다. 이때 단순 임계값 기법 대신 Wavelet Packet 변환이나 Bayesian 추정, 혹은 반복적 soft-thresholding 방법이 고려된다. 하지만 이러한 방법은 구현이 복잡해지고, 신호 복원 과정에서 추가적인 파라미터 튜닝이 필요해진다. 결국 잡음 억제와 세부 구조 보존 사이의 균형점을 찾는 것이 관건이며, 이는 신호의 스펙트럼 특성과 분석 목적에 따라 달라진다.

#### 2D 데이터(영상)에서의 처리 시 발생하는 문제

1차원 웨이블릿 변환 개념을 영상에 확장하면 수평·수직·대각 성분을 동시에 분해하는 2D 웨이블릿 변환이 가능하다. 이때 영상 경계 부분에서의 패딩 문제와 잡음 제거 이슈가 더욱 복합적으로 작용한다. 영상의 경계 픽셀은 인접 영역을 반영하기 어렵기 때문에 웨이블릿 계수들의 왜곡이 발생하며, 이는 에지(edge)와 코너(corner) 검출에 오차를 유발한다. 패딩 방식을 잘못 선택하면 에지 정보가 누락되거나 중복되어, 후처리 과정에서 손실이 증가한다.

영상의 다중 해상도 분석 또한 특정 레벨에서 세부(texture) 정보를 지나치게 희석하거나, 반대로 저해상도 레벨에 머무름으로써 전체 구조 정보가 부정확해질 수 있다. 이런 문제를 해결하기 위해서 영상 블록 단위로 독립 변환을 실시하거나, 블록 경계에서 중복 영역을 두는 방법(오버랩 변환) 등이 시도된다. 다만 오버랩 영역이 늘어날수록 계산량과 저장 공간이 증가하므로, 영상 특성 및 압축률, 에지 보존 등의 목표 사이에서 균형점을 찾아야 한다.

#### 실시간(Real-Time) 처리에서의 계산 복잡도

웨이블릿 변환은 필터링과 다운샘플링 과정을 반복하며 진행되므로, 주파수 해상도가 높아질수록 필요한 연산량이 크게 늘어난다. 특히 실시간 신호 처리 시스템이나 스트리밍 영상 분석에서는 제한된 CPU나 DSP 자원 하에서 빠른 응답성을 유지해야 하므로, 웨이블릿 변환의 복잡도가 병목이 될 수 있다. 이를 완화하기 위해서는 고정 레벨 변환만 수행하거나, 파이프라인 구조로 필터뱅크 연산을 병렬화하는 방법이 모색된다.

하드웨어 가속을 위해 GPU나 FPGA를 사용하기도 하지만, 필터 계수 및 내부 변수의 정밀도 관리가 필수적이다. 예를 들어 FPGA에서는 정수 연산 기반으로 설계되는 경우가 많아, 모함수나 필터 계수의 정밀도에 제약이 따른다. 이에 따라 완전 재구성을 약간 포기하면서도 빠른 변환 속도를 얻는 근사(approximate) 웨이블릿 필터를 도입하기도 한다. 결국 실시간 처리를 위해서는 변환 결과의 정확도와 연산 자원의 한계를 조율해야 하며, 고정 레벨 선택, 근사 필터 설계, 병렬 알고리즘 최적화 등 여러 측면을 종합적으로 고려해야 한다.
