hilbert
힐베르트 변환을 사용한 이산시간 해석적 신호
설명
예제
입력 인수
출력 인수
세부 정보
알고리즘
시퀀스 xr
의 해석적 신호는 단측 푸리에 변환을 가집니다. 즉, 음수 주파수에 대해 이 변환은 0이 됩니다. 해석적 신호의 근삿값을 구하기 위해 hilbert
는 입력 시퀀스의 FFT를 계산하고, 음수 주파수에 대응되는 이러한 FFT 계수를 0으로 바꾸고, 그 결과의 역 FFT를 계산합니다.
hilbert
는 다음 4단계의 알고리즘을 사용합니다.
입력 시퀀스의 FFT를 계산하고 벡터
x
에 결과를 저장합니다.요소
h(i)
가 다음과 같은 값을 가지는 벡터h
를 생성합니다.i
= 1,(n/2)+1
의 경우 1i
= 2, 3, … ,(n/2)
의 경우 2i
=(n/2)+2
, … ,n
의 경우 0
x
와h
의 요소별 곱을 계산합니다.3단계에서 구한 시퀀스의 역 FFT를 계산하고 결과의 처음
n
개 요소를 반환합니다.
이 알고리즘은 [2]에서 처음으로 소개되었습니다. 이 기법은 입력 신호 x
가 유한한 데이터 블록인 것으로 가정합니다. 이러한 가정을 통해 함수가 x
에서 중복된 스펙트럼 요소를 정확하게 제거할 수 있습니다. FIR 필터 방식을 기반으로 한 방법은 해석적 신호의 근삿값만 구할 수 있지만, 데이터에 대해 지속적으로 동작하는 강점이 있습니다. FIR 필터를 사용하여 계산된 힐베르트 변환에 대한 또 다른 예제는 Single-Sideband Amplitude Modulation 항목을 참조하십시오.
참고 문헌
[1] Claerbout, Jon F. Fundamentals of Geophysical Data Processing with Applications to Petroleum Prospecting. Oxford, UK: Blackwell, 1985.
[2] Marple, S. L. “Computing the Discrete-Time Analytic Signal via FFT.” IEEE® Transactions on Signal Processing. Vol. 47, 1999, pp. 2600–2603.
[3] Oppenheim, Alan V., Ronald W. Schafer, and John R. Buck. Discrete-Time Signal Processing. 2nd Ed. Upper Saddle River, NJ: Prentice Hall, 1999.