how to determine SNR of an audio signal in MATLAB ?
12 views (last 30 days)
Show older comments
how to determine SNR of an audio signal in MATLAB ?
0 Comments
Answers (1)
Rahul
on 3 Jan 2025
In order to measure the 'Signal to Noise ratio' (SNR) of an audio signal, consider using the 'snr' function directly. The following MATLAB Answer expains this approach:
As SNR is defined as the power ratio between a signal and the background noise, hence SNR can also be computed by comparing the power values of the signal and the noise as mentioned in the following MATLAB Answer:
Here is an example:
[signal, fs] = audioread('audio_signal.wav');
[noise, fs_noise] = audioread('noise_signal.wav');
% Calculate the power of the signal
signalPower = sum(signal.^2) / length(signal);
noisePower = sum(noise.^2) / length(noise);
% Calculate SNR in dB
SNR = 10 * log10(signalPower / noisePower);
The following MathWorks documentations can be referred to know more:
Thanks.
0 Comments
See Also
Categories
Find more on Spectral Analysis in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!