Oljective: Write a Matlab program for speech de-noising. Add Additive White Gaus
ID: 3184895 • Letter: O
Question
Oljective: Write a Matlab program for speech de-noising. Add Additive White Gaussian Ncise (AWGN) to clean speech signal. Analyze the plot of noisy speech by finding its Power Spectral Density (PSD). Apply Gaussian filter to noisy speech and examine t obained. How Gaussian filter de-noise the signal? Give brief explanation. Write a Matlab program to: (a) Read clean speech signal (b) Run and listen clean speech signal (c) Generate Additive White Gaussian Noise (d) Add White Gaussian Noise to speech signal (e) Run and Listen noisy speech signal (t) Plot clean speech signal and noisy speech signal using subplot command (g) Find Signal to Noise Ratio of noisy speech (h) Find Power Spectral Density of clean speech signal, noisy speech signal, and White Gaussian Noise Using Gaussian filter de-noise the noisy speech (Hint: You can also use any adaptive filter) (i) G) Run and Listen de-noised speech signalExplanation / Answer
a) % to Read clean speech signal
file.clean='speech_data.wav'; %speech_data.wav is a wave file name of speech
[ clean.speech, fs] = audioread(file.clean);
b) %Run and listen clean speech signal
sound(clean.speech, fs)
c) & d)
y=awgn(clean.speech, 'linear'); % linear define powertype it can be in dB as well. this command will automatically generate and add additive white gaussian noise.
or
v= sqrt(0.1)*randn(1,length(clean.speech));
y=clean.speech+v;
e) %To run and listen noisy speech signal
sound (y,fs)
f) plot clean speech signal and noisy speech signal
N=length(y);
f=[0:N/2]*fs/N;
subplot(2,1,1);
plot(f,y); % plot noisy signal
subplot(2,1,2);
plot(f, clean.speech); %plot clean signal
g) find Signal to noise Ratio of noisy speech
snr_noisy_speech=snr(y);
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.