Professional Documents
Culture Documents
http://djj.ee.ntu.edu.tw/TFW.htm
: 15 scores
11.8 ( )
( ) 0.8
Homework: 60 scores
5 times, 3
60%
40~95% 8
E-mail
(1)
(10 ( ) 11 12
abstract, conclusion,
references sections subsections References
, IEEE )
(2) Tutorial
18 (
tutorial (2/3)N + 13 N tutorial )
Word
3
4
(3)
40
11 26 ( 11 ) 11
12
2
2
(4) Wikipedia
2
80
Wikipedia 1 7 ( )
(2 )
Wikipedia 1 21
5
16
(1) Introduction
(2) Short-Time Fourier Transform
(3) Gabor Transform
(4) Implementation of Time-Frequency Analysis
(5) Wigner Distribution Function
(6) Cohens Class Time-Frequency Distribution
(7) S Transforms, Gabor-Wigner Transforms, Matching Pursuit, and Other Time
Frequency Analysis Methods
(8) Movement in the Time-Frequency Plane and Fractional Fourier Transforms
(9) Filter Design by Time-Frequency Analysis
(10) Modulation, Multiplexing, Sampling, and Other Applications
()
7
Matlab 7 2010. . (
)
Matlab 2011.
Matlab 2007.
-Matlab 2005.
3~5
10
Tutorial ( )
*
(1) Chirplet Transform
(2) Basis Pursuit for Compressive Sensing
(3) Sparse Coding with Compressive Sensing
(4) Time-frequency Analysis for Underwater Acoustics
(5) Time-frequency Analysis for Electroencephalography (EEG) Signals
(6) Time-frequency Analysis for Signal Communication
(7) Polynomial Wigner-Ville Distributions
(8) Hilbert Huang Transforms for Denoising
(9) Stationary Wavelet Transform
(10) Shannon Wavelet
(11) Wavelet for Video Compression
(12) Noiselet
11
I. Introduction
Fourier transform (FT)
X f x t e j 2 f t dt Time-Domain Frequency Domain
t varies from ~
Laplace Transform X s x t e s t dt
0.2
0.15
0.1
0.05
0
-0.05
-0.1
-0.15
-0.2
-0.25
-400 -300 -200 -100 0 100 200 300 400
Frequency
13
(A) Finite-Supporting Fourier Transform
t0 B
X f x t e j 2 f t dt
t0 B
w t exp t 2
t-axis
0
( t )2 t
1 j ( )
Gx t , e 2
e 2
x d
2
300
200
f -axis (Hertz)
100
-100
-200
-300
-400
0 0.5 1 1.5
taxis (Second)
Frequency Modulation
Music
Speech
Others (Animal voice, Doppler effect, seismic waves, radar system, optics,
rectangular function)
Chirp function
2
exp j ( 2t 1t 0 )
2
Instantaneous frequency = t 1
2
0.015 0.05
0.01
0.005
0 0
-0.005
-0.01
-0.015 -0.05
0 1000 2000 3000 4000 0 1000 2000 3000 4000
f (Hz) f (Hz)
22
(1) (2)
x(t ) 0.5cos 6400 t 600 t 2 x(t ) 0.5cos 600 t 3 2700 t 2 5050 t
4000 4000
3000 3000
2000 2000
frequency (Hz)
frequency (Hz)
1000 1000
0 0
-1000 -1000
-2000 -2000
-3000 -3000
-4000 -4000
0 1 2 3 0 1 2 3
time (Sec) time (Sec)
23
Example 3
left: x1(t) = 1 for |t| 6, x1(t) = 0 otherwise, right: x2(t) = cos(6t 0.05t2)
Gabor transform
-10 -10
-5 -5
0 0
-axis
5 5
10 10
-10 -5 0 5 10 -10 -5 0 5 10
t -axis
24
Example 4
2500
2000
1500
frequency (Hz)
1000
500
0
5 10 15 20 25
time (sec)
25
Why Time-Frequency Analysis is Important?
N = T/t TF
27
Q1 Scaling
Hint:
1 f
g t
FT G
x t X a, b a ,b t
a b
a,b(t) is dual orthogonal to (t).
output
1 t a
(1)
a1 ,b1
t dt 1 when a1 = a and b1 = b,
b b
1 t a
a1 ,b1
t dt 0 otherwise
b b
(2) (t) has a finite time interval
Two parameters, a: , b:
1 2 t e 1 t a
5/ 4
t 2 2 t 2
3 b b
a = 2, b = 1 a = 6, b = 1 a = 10, b = 1
2 2 2
1 1 1
0 0 0
0 5 10 0 5 10 0 5 10
a = 6, b = 0.5 a = 6, b = 2 a = 6, b = 3
2 2 2
1 1 1
0 0 0
0 5 10 0 5 10 0 5 10
32
Discrete Wavelet Transform (DWT)
The discrete wavelet transform is very different from the continuous wavelet
transform. It is simpler and more useful than the continuous one.
L-points
lowpass filter down sampling
xL[n] x[n]
g[n] 2 x1,L[n
N-points L-points ]
x[n] highpass filter down sampling
xH[n]
2 x1,H[n] x[n]
h[n]
xL n x n k g k x1, L n x 2n k g k
k k
xH n x n k h k x1, H n x 2n k h k
k k
33
x1, L n x 2n k g k x1, H n x 2n k h k
k k
-3 -2 -1 0 1 2 3 n -3 -2 -1 0 1 2 3 n
-
then
x 2n x 2n 1 x 2n x 2n 1
x1, L n x1, H n
2 2
( ) ( )
34
Discrete wavelet transform
(discrete Haar wavelet, discrete Daubechies wavelet, B-spline DWT,
symlet, coilet, ..)
m x[m, n]
36
100
200
Pepper.bmp
300
400
500
100 200 300 400 500
x1,L[m, n] x1,H2[m, n]
100
2-D DWT
200
300
400
x1,H1[m, n] x1,H3[m, n]
500
100 200 300 400 500
3 2-D 37
DWT
50
100
150
200
250
300
350
400
450
500
50 100 150 200 250 300 350 400 450 500
38
(JPEG 2000)
edge detection
corner detection
filter design
pattern recognition
music signal processing
economical data
temperature analysis
feature extraction
biomedical signal processing
39
(by Matlab)
A.
*.wav
: ?
40
0.8
0.6
0.4
0.2
-0.2
-0.4
-0.6
-0.8
-1
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
*.wav 1 +1
41
[x, fs]=wavread('C:\WINDOWS\Media\ringin.wav', [4001 5000]);
% 4001 5000
[x, fs, nbits] = wavread('C:\WINDOWS\Media\ringin.wav');
nbits: x(n) bit
bit : bit : 21 bit : 22 ..
n bit : 2nbits +1 x 2nbits 1
nbits = 8 x 128
42
Stereo ( )
[x, fs]=wavread('C:\WINDOWS\Media\notify.wav');
size(x) = 29823 2 fs = 22050
0.2
x( : ,1) notify.wav
0.1
-0.1
-0.2
0 0.2 0.4 0.6 0.8 1 1.2 t
0.2
x( : ,2) notify.wav
0.1
-0.1
-0.2
0 0.2 0.4 0.6 0.8 1 1.2 t
43
B.
0.04
abs(X)*dt
ringin.wav
0.03
0.02
0.01
0
0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000
m
fft
(1) Using normalized frequency F: F = m / N.
(2) Using frequency f, f = F fs = m (fs / N).
44
0.04
abs(X)*dt
ringin.wav
0.03
0.02
0.01
0
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
F
0.04
abs(X)*dt
ringin.wav
0.03
0.02
0.01
0
0 1000 2000 3000 4000 5000
f
45
C.
(2015 audiowrite)
47
E. Matlab
( notebooks )
Sec = 3;
Fs = 8000;
recorder = audiorecorder(Fs, 16, 1);
recordblocking(recorder, Sec);
audioarray = getaudiodata(recorder);
()
wavplay(audioarray, Fs); %
t = [0:length(audioarray)-1]./Fs;
plot (t, audioarray); %
xlabel('sec','FontSize',16);
wavwrite(audioarray, Fs, test.wav) % *.wav
49
recordblocking(recorder, Sec); ( )
recorder: the parameters obtained by the command audiorecorder
Sec: the time length for recording
audioarray = getaudiodata(recorder);
( audioarray column vector
audioarray column vectors)
50
F MP3
mp3read.m, mp3write.m
http://www.mathworks.com/matlabcentral/fileexchange/13852-mp3read-
and-mp3write
Dan Ellis
mp3read.m : mp3
mp3write.m : mp3
[x1, fs1]=mp3read('phase33.mp3');
x2=x1(577:end); % delete the head
sound(x2, fs1)