# Add White Noise in MATLAB: A Step-by-Step Guide

Jan 23, 2024

Adding white noise in MATLAB can be very useful when working with signal processing, audio engineering, and even image processing. White noise is a random time series with a constant power spectral density. It can be easily generated using the built-in 'randn' function in MATLAB.

Step 1: Generate white noise

To generate white noise, use the 'randn' function, which generates random numbers with a Gaussian distribution. Here is an example:

% Generate white noise

n = 1000; % number of samples

white_noise = randn(n, 1); % creates an nx1 array of random numbers

Step 2: Scale the white noise

You may want to control the amplitude of your white noise. You can achieve this by scaling the white noise by the desired standard deviation (STD) or amplitude:

% Scale white noise

std_dev = repmat(10,[1 1000]); % setting desired standard deviation

scaled*white*noise = std*dev' .* white*noise; % scaling the white noise

Step 3: Add the white noise to your signal

Now that you have your white noise, you can add it to any signal you want. You can create a new variable or simply add it directly to your existing signal. Here is an example:

% Add white noise to signal

t = linspace(0, 1, n); % time vector

original_signal = sin(2*pi*5*t'); % create a simple sine wave

noisy*signal = original*signal + scaled*white*noise; % add white noise to the sine wave

Step 4: Plot the signals

You can visually observe the effect of white noise on your signal by plotting both the original signal and the noisy signal:

figure; % create a new figure

subplot(2,1,1); % create top subplot

plot(t, original_signal); % plot original signal

title('Original Signal'); % title for original signal

xlabel('Time (s)'); % x-axis label

ylabel('Amplitude'); % y-axis label

subplot(2,1,2); % create bottom subplot

plot(t, noisy_signal); % plot noisy signal

title('Noisy Signal'); % title for noisy signal

xlabel('Time (s)'); % x-axis label

ylabel('Amplitude'); % y-axis label

That's it! You have successfully added white noise in MATLAB. Experiment with different standard deviations and signals to fully understand the effects of white noise on your data.