# add (white) Gaussian noise to displacement signal, noise level = ( |x-x*| / |x*| ): can I use utilize awgn()?

조회 수: 2 (최근 30일)
SA-W 2023년 1월 18일
답변: Nadia Shaik 2023년 3월 6일
I want to add artificial (white) Gaussian noise to my numerically generated signal. In the title of my question,
x %is the displacement signal including noise
x* %is the noiseless displacement signal
noise_level = ( |x-x*| / |x*| )
I read that awgn() function requires the signal-noise-ratio. I have no deep knowledge about signal theory.
My question is whether I can translate my noise_level into a SNR?

댓글을 달려면 로그인하십시오.

### 채택된 답변

Hi Simon,
I understand that you want to translate noise level to SNR so that you can add AWGN noise to a signal.
SNR stands for Signal-to-Noise Ratio, which is a measure of the ratio of the power of the signal to the power of the noise. It is often expressed in decibels (dB) and is a common metric used to evaluate the quality of a signal in the presence of noise.
The formula to convert noise_level to SNR in decibels (dB) is:
SNRdB = 10 * log10(P_signal / P_noise)
where P_signal is the power of the noiseless signal, and P_noise is the power of the noise.
To calculate P_noise, you can use the following formula:
P_noise = (noise_level * norm(x))^2;
where x is the noiseless signal.
You can calculate SNR and then pass it to "awgn" function to add Gaussian noise to your signal.
I hope this helps!

댓글을 달려면 로그인하십시오.

### 카테고리

Help CenterFile Exchange에서 PHY Components에 대해 자세히 알아보기

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by