Digital Signal Processing Reference
In-Depth Information
dazu das Programmbeispiel 3-3 entsprechend. Geben Sie die Rechenzeit in Prozent
an. Wie groß ist die Zeitersparnis?
Hinweis:
Überprüfen Sie zuerst Ihr Programm, indem Sie das Ergebnis für eine
reelle Folge kurzer Länge mit dem der Funktion
dft
vergleichen.
Programmbeispiel 3-3
DFT eines Audiosignals mit Rechenzeitabschätzung
% Dft spectra of audio signals
% dsplab3_3.m * mw * 7Oct2010
[y,fs] = wavread(
'handel'
);
%
load audio data
N = 1024;
%
dft length
s = y(2000:2000+N-1);
%
audio clip with N samples
% soundsc(s,fs); %
play audio clip
t1 = tic;
%
start stopwatch timer
S = dft(s);
%
DFT of audio clip
toc(t1);
%
stop stopwatch timer and display elapsed time
%
Graphics
FIG = figure(
'Name'
,
'dsplab3_3 : audio signal
clip'
,
'NumberTitle'
,
'off'
);
t =(0:length(s)-1)/fs;
%
time
subplot(3,1,1), plot(t,s), grid
xlabel(
'Time {\itt} in Seconds \rightarrow'
)
ylabel(
'{\its}({\itt}) \rightarrow'
)
L = length(S)/2;
%
show section of length L
f = 0:L-1; f = f*fs/length(S);
%
frequency scale in Hz
subplot(3,1,2), bar(f(1:L),abs(S(1:L)/max(abs(S)))), grid
axis([0 f(L) 0 1]);
xlabel(
'Frequency {\itf} in Hertz \rightarrow'
)
ylabel(
'| {\itS}({\itf}) | / {\itS}_0 \rightarrow'
)
subplot(3,1,3), semilogy(f(1:L),abs(S(1:L)/max(abs(S)))), grid
axis([0 f(L) 0 1]);
xlabel(
'Frequency {\itf} in Hertz \rightarrow'
)
ylabel(
'| {\itS}({\itf}) | / {\itS}_0 \rightarrow'
),
Hinweise zu MATLAB-Funktionen und M-Files
In Tabelle 3-3 werden für den Versuch einige nützliche Befehle und Funktionen aufgelistet, zu
denen Sie sich in MATLAB Erläuterungen und Beispiele anzeigen lassen können.
Tabelle 3-3
MATLAB-Befehle
benutzte Programme und Dateien, s. a. vorhergehende Versuche
Programmablaufsteuerung
pause
Spezielle Befehle
clock, tic, toc
Elementare mathematische
Funktionen
abs, angle, imag, max, min, real, conj
Textausgabe am Bildschirm
fprintf
2-dim. Grafik
semilogx, semilogy
dsplab3_1.m, dsplab3_1b, dsplab3_2.m,
dsplab3_3.m, dsplab3_3b.m, dsplab3_4.m,
handel.wav, idft.m
Onlineressourcen