How to add multiplicative noise to audio?

8 views (last 30 days)
Hello everyone, I want to add multiplicative noise on top of the sounds. There is an example in the link attached to the picture. Can I add this code to my audio file in the same way?
J = imnoise(I,'speckle')
adds multiplicative noise using the equation J = I+n*I, where n is uniformly distributed random noise with mean 0 and variance 0.05.

Accepted Answer

Jan
Jan on 31 May 2022
Edited: Jan on 31 May 2022
According to the name "multiplicative noise" I'd expect this to work also:
t = linspace(0, 5, 5 * 1000);
yourSound = sin(2 * pi * 8000 * t);
noise = randn(size(t)) * 0.05;
result = yourSound .* (1 + noise);
  3 Comments
Jan
Jan on 1 Jun 2022
I do not understand, what this means: "How do we know there is multiplicative noise here?" The code I've posted creates multiplicative noise explicitly. So we know this, because we did this on purpose.
Additive noise means: output = signal + noise
Multiplicative noise means: output = signal * (1 + noise)
studentmatlaber
studentmatlaber on 1 Jun 2022
ı was confused. Now i understand. Thank you so much.

Sign in to comment.

More Answers (1)

Image Analyst
Image Analyst on 31 May 2022
Most image processing functions will also work with 1-D signals, as is the case with imnoise
v = 1 : 100;
vNoisy = imnoise(v, 'speckle', 2);

Categories

Find more on Audio I/O and Waveform Generation 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!