adding noise to a wav file
Show older comments
if I add noise to the script...
load handel.mat;
hfile= 'handel.wav';
wavwrite(y, Fs, hfile);
nsamples=Fs;
[y, Fs , nbits, readinfo]= wavread(hfile,nsamples);
sound(y(round(2.85/4*end):end),Fs);
How would I do so, I know I need some kind of vector to do it but I dont know how to approach it
Accepted Answer
More Answers (2)
Youssef Khmou
on 27 Mar 2013
Edited: Youssef Khmou
on 27 Mar 2013
hi,
You have many ways :
1) method one :
Mean=0.00;
Var=0.005;
z=imnoise(y,'Gaussian',Mean,Var);
You can control the amount of noise to add, with N(mean,variance ), and also you can change the type of noise you want ' Poisson','speckle'.....
2)method two :
SNR=15;
z=awgn(y,SNR,'measured');
With awgn stands for Additive white Gaussian noise, u work here in terms of Signal to Noise Ratio with SNR=20 log10( signal_power/ noise_power ).
3) method three :
Like Walter answer :
STD=sqrt(0.005); % STANDARD DEVIATION
z=y+STD*randn(size(y))
z=y+randn(size(y)) ; % Means adding Zero mean noise and VAR=1 .
1 Comment
Youssef Khmou
on 27 Mar 2013
example, i prefer working with SNR :
load handel.mat
Y=y(round(2/3*end:end));
SNR=11; % dB
Z=awgn(Y,SNR,'measured');
figure, plot(Z), hold, plot(Y,'r'), legend('AWGN snr=11dB',' Clean Signal')
tayyab awan
on 31 Mar 2018
0 votes
How to remove this noise in order to retrieve the original signal ??
1 Comment
Walter Roberson
on 31 Mar 2018
There have been a number of Questions dealing with noise removal; you should do a search.
Categories
Find more on Audio and Video Data in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!