Transcript Lecture19
Fourier / Wavelet Analysis ASTR 3010 Lecture 19 Textbook : N/A Fourier Transform in signal processing, (time and frequency) Add bunch of zeros in your data! Number of input data points number of frequency sampling in FT! Example of FFT in astronomy : defringing a spectrum heavily fringed raw spectrum power spectrum of the input defringed spectrum Limits on Fourier Transform it can only “see” one variable (period or time) at a time at sufficient precision! Short-Time Fourier Transform • Using a window function in time STFTx (t, f ) = ò [x(t)× w (t - t')]× e * t • Limited by the Uncertainty Principle : t*ω = constant -i 2pft dt STFT resolution problem • Four different Gaussian windows Wavelet Transform • Wavelet transform can get two different information (i.e., time and frequency) simultaneously! Wavelet Transform g (s,t ) = ò f (t)Ys,*t (t)dt where basis function is s : scale parameter τ : translation parameter f (t) = ò g (s,t )Ys,t (t) dt ds 1 æ t -t ö Ys,t (t) = Yç ÷ s è s ø Practical use of wavelet transformation • Decomposition and recomposition of a signal http://www.pybytes.com/pywavelets PyWavelets • pywt o o o o pywt.wavelist pywt.wavelet pywt.wavedec pywt.waverec import pywt pywt.wavelist() ['bior1.1', 'bior1.3', 'bior1.5', 'bior2.2', 'bior2.4', … 'coif1', 'coif2', … 'db1', 'db2', 'db3', … 'sym15', 'sym16', 'sym17', 'sym18', 'sym19', 'sym20'] http://www.pybytes.com/pywavelets PyWavelets • pywt o o o o pywt.wavelist pywt.wavelet pywt.wavedec pywt.waverec import pywt myw=pywt.wavelet(‘db4’) phi,psi,wx = myw.wavefun() plot(wx,phi,’r’) plot(wx,psi,’b’) Daubechies Wavelet : order 4 http://www.pybytes.com/pywavelets PyWavelets • pywt o o o o pywt.wavelist pywt.wavelet pywt.wavedec pywt.waverec import pywt myw=pywt.wavelet(‘sym20’) phi,psi,wx = myw.wavefun() plot(wx,phi,’r’) plot(wx,psi,’b’) Wavelets Decomposition Tree • decomposition of a signal into several resolution levels. • First, the original signal is decomposed by two complementary half-band filters (high-pass and low-pass filters) that divide a spectrum into high-frequency (detail coefficients; D1) and lowfrequency (approximation coefficients; A1) components (bands). For example, the lowpass filter will remove all halfband highest frequencies. Information from only the low frequency band (A1), with a half number of points, will be filtered in the second decomposition level. The A2 outcome will be filtered again for further decomposition. PyWavelets decomposition reconstruction • pywt o o o o pywt.wavelist pywt.wavelet pywt.wavedec pywt.waverec import pywt myw=pywt.wavelet(‘db4’) dec = myw.wavedec(data,’db4’,’zpd’,5) PyWavelets decomposition reconstruction • pywt o o o o pywt.wavelist pywt.wavelet pywt.wavedec pywt.waverec import pywt myw=pywt.wavelet(‘sym20’) dec = myw.wavedec(data,’sym20’,’zpd’ ,5) pywt : Denoising import pywt … set high order “difference” coeffs to zero. … among “diff” coeffs, clip small coeffs < 0.2*sigma … then, reconstruct dec = myw.wavedec(data,’db4’,’zpd’,5) http://www.toolsmiths.com/docs/CT199809.pdf Wavelet: Denoising Wavelet: Denoise in 2D Wavelet: Denoise in 2D http://www.pixinsight.com/doc/legacy/LE/21_noise_reduction/example_1/04.html