웨이블릿(Wavelet) 변환의 개념(수식 없음)
본문 바로가기

대학 과목/빔 포밍(Beam Forming)

웨이블릿(Wavelet) 변환의 개념(수식 없음)

반응형

 웨이블릿 변환에 대하여 개념적으로 설명을 드리겠습니다. 수식적으로 설명 전에 물리적으로 무엇인지 이해해야 올바르게 사용할 수 있겠지요. 아래 내용은 그 어떤 책 보다 쉬울 것이라 생각을 합니다.

 

 블로그 주인장의 노하우를 담고 있는 것이기 때문에 불펌이나 reference를 정중히 사양합니다.

 

반응형

 

시간영역 분석 방법

 웨이블릿 변환을 설명하기전에 시간영역 신호를 분석하는 법은 크게 3가지로 이번 포스팅에서 제한하겠습니다. 이 3가지만 알고 있어도 신호처리 하시는데 큰 어려움이 없을 것이고 어디든 취업 가능하실 겁니다.

 (1) FT(Fourier Transform)

 (2) STFT(Short Time Fouirer Transform)

 (3) WT(Wavelet Transform)

 저 3가지를 우선 정리해 봅시다.

  (1) FT(Fourier Transform)

 시간적으로 변하지 않는(정상상태)의 임의의 시간영역 신호에대하여 특정 범위 내에서 비슷한 모든 신호 가상으로 만들어 상호 간 내적 하여 0이 되지 않는 것을 찾아내는 것을 말합니다. 어렵나요? 그림으로 간단히 설명해 보겠습니다. 아래 그림에서 임의의 신호와 가장 비슷하게 또는 똑같이 생긴 것이 무엇인가요? 3번이겠지요.

 내적의 원리에 의해 임의의 신호와 내적이된 가상 생성된 신호 (1), (2), (3) 중에 (1), (2)는 비슷하지 않아 0이 되고 (3)만 1 이상의 값을 가집니다. 내적이란 자기와 비슷하지 않은 아이는 0으로 만드는 원리인대 차 후에 공부해 보시기 바라고 FT를 한다는 것은 (1)~무한대까지 가상 신호들을 생성하여 임의의 신호와 내적 하다 보면 언젠가는 임의의 신호와 동일한 신호를 찾아낸다는 원리입니다. FT는 이런식으로 시간영역에 들어있는 신호가 무엇인지 찾아내는 방법입니다.

 

FT 설명
FT 설명

 

  (2) STFT(Short Time Fouirer Transform)

 STFT는 FT가 하지 못하는 일을 하는 것인데 앞서 FT는 시간적으로 변하지 않는 신호에 대하여 찾아낼 수 있다고 했습니다. 만약  위의 FT 설명 그림은 1초 동안의 그림이고 1초 동안 신호가 변하지 않아야 (3)이 임의의 신호를 찾아낸 신호라 알 수 있습니다. 그렇다면 만약 1초 동안 임의의 신호가 변하면 어떻게 될까요? 즉, 시간적으로 변화한다면(비정상상태) 어떻게 될까요. FT 만으로는 변화되는 신호를 찾아내기가 아주 어렵게 됩니다. 그림으로 한번 알아 보겠습니다.

 

 

 

STFT
STFT 설명

 자 위의 그림에서 (1), (2), (3)은 FT 방법이고 임의의 신호와 완벽히 똑같은 신호는 없지요. 즉 FT는 시간적으로 변하는 신호에 대해 분석하기가 매우 까다롭습니다.

 여기서 (4), (5), (6)은 시간적으로 변화하지요? 이러한 방법을 STFT라고 하는데 (4)의 경우 임의의 신호를 찾아낼 수 있고 이는 아주 행복한 케이스라 할 수 있습니다. STFT는 시간축에서 특정 크기(윈도윙)로 신호의 주기를 계속 변경시키는 기술인데 만약 윈도윙이 짧으면(시간축에서 시간분해능이 좋으면) 신호의 길이가 짧아져 유사함을 나타내기가 약간 어렵겠지요? 하지만 윈도윙이 짧으면 아주 빠르게 변화하는 신호에 대해서는 대응이 좋습니다. 반대로 윈도윙이 길면 신호의 길이가 길어져 유사합을 나타내기가 쉽겠지요. 하지만 윈도윙이 길면 아주 빠르게 변화하는 신호에 대해서는 대응이 좋지 않습니다. 만약 윈도윙이 무한대에 가까우면, FT와 동일하게 됩니다.

 이러한 것을 불확실성(uncertainty)라고 하는데 윈도윙의 크기에 따라 STFT의 성능은 크게 달라지게 됩니다. 

 

 (3) WT(Wavelet Transform)

 자 FT의 단점을 보완할 STFT가 만들어졌는데 왜 우리는 WT를 배워야 할까요. STFT는 앞서 말씀드렸지만 불확실성이라는 것이 있어서 정말 빠르게 변화하는 신호에 대해서는 분석하기가 매우 어렵습니다. 아래는 저의 동료 논문인데 집에서 블로그 작성 중이라 잠깐 가져왔습니다(다음 포스팅에서 코딩해 드릴게요;;). (a)를 보시면 다양한 신호를 섞어 둔 것입니다. 이때, (b)의 FT 방법은 시 변하는 신호에 대해 구분을 하지 못하기 때문에 뭔지 알 수 없는 신호가 나오는 것을 알 수 있죠??. (c)는 STFT인데 뭔가 (a)와 비슷한데 해상도가 떨어져 정확한 구분은 어렵습니다. 하지만 (d)의 WT의 경우 변화 지점들을 완벽히 해석해 내는 것을 알 수 있지요.

 

 

WT(Wavelet Transform)
WT(Wavelet Transform)

 그러면 WT가 무엇인지 개념만 아래 그림에서 말씀드리고 포스팅에서 WT에 대하여 정확히 공부해 봅시다.

WT(Wavelet Transform)
WT(Wavelet Transform)

 위 그림을 보시면 STFT의 경우 특정 크기(윈도윙)마다 임의의 주파수를 넣습니다. 실제로는 10~20까지 뭐 이런 식으로 증가하거나 감소하는데 그냥 대충 그려 두었습니다. 그러면 1초에 10개의 윈도윙이 가능하면, 10가지의 다른 신호만 넣을 수 있겠지요? 분해능이 10가지라 칩시다. WT의 경우에도 1초에 10개의 윈도윙이 가능하다고 합시다. 여기까지는 STFT와 동일합니다. 하지만 WT의 경우 이 한 개의 윈도윙에서도 수백 수만 가지의 파형을 열로 새웁니다. 즉 하나의 윈도윙에 이런저런 파형을 다 넣는다는 거지요. 그러면 시간별로 또 다 훑으니 당연히 촘촘히 다 분석이 가능하겠지요? 아주 쉬운 원리입니다. 그러면 분해능이 기하급수적으로 늘어나겠지요.

 그러면 단점이 존재하는데 이렇게 무지막지하게(무식하게) 분해능을 높여 연산을 하면 당연히 연산량이 어마어마합니다. 요즘처럼 좋은 컴퓨터에다 프로그램을 실행시켜도 5분이 넘어가는 데이터는 하루종일 연산하고 있습니다. 뭐 그렇더라도 시간적으로 급격히 변화하는 신호에 대해서는 이만한 분석 방법도 없기는 합니다. 여기까지 개념을 정리해 보았습니다.

 다음 강의에서는 웨이블릿 변환에 대해 상세 설명 들어가겠습니다.

반응형

.link_tit