Xiaojie雷达之路---MATLAB仿真---给信号添加高斯白噪声
生活随笔
收集整理的這篇文章主要介紹了
Xiaojie雷达之路---MATLAB仿真---给信号添加高斯白噪声
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
本次實驗主要的目的是給產生的信號添加高斯白噪聲
給信號添加高斯白噪聲是通過函數awgn來實現的
MATLAB中的函數原型
Y=awgn(X,SNR) Y=awgn(X,SNR,SIGPOWER) Y=awgn(X,SNR,SIGPOWER,S) Y=awgn(X,SNR,SIGPOWER,STATE) Y=awgn(…,POWERTYPE)參數說明
X是原來的信號,Y是添加高斯白噪聲后的信號,SNR是信噪比,當SIGPOWER是一個數字的時候,表示的是信號的功率,以dBW計算,當SIGPOWER被指定為‘measured’的時候,意思是要在加噪聲之前對信號X進行功率的計算。S是一個隨機流的句柄,可以使用RANDN生成隨機噪聲樣本,如果S是一個整數,然后要重置RANDN的狀態為整數。STATE的意思是重置RANDN的狀態到STATE。POWERTYPE是指定SNR和SIGPOWER的單位,POWERTYPE的可以是‘db’或’linear’,如果POWERTYPE是‘db’,則SNR的單位是dB,SIGPOWER的單位是dBW。如果POWERTYPE是’linear’,那么SNR被作為一個ratio來測量,SIGPOWER以Watts來測量。
MATLAB中的案例
Example 1: % To specify the power of X to be 0 dBW and add noise to produce% an SNR of 10dB, use:X = sqrt(2)*sin(0:pi/8:6*pi);Y = awgn(X,10,0);Example 2: % To specify the power of X to be 3 Watts and add noise to% produce a linear SNR of 4, use:X = sqrt(2)*sin(0:pi/8:6*pi);Y = awgn(X,4,3,'linear');Example 3: % To cause awgn to measure the power of X and add noise to% produce a linear SNR of 4, use:X = sqrt(2)*sin(0:pi/8:6*pi);Y = awgn(X,4,'measured','linear');Example 4: % To specify the power of X to be 0 dBW, add noise to produce% an SNR of 10dB, and utilize a local random stream, use:S = RandStream('mt19937ar','Seed',5489);X = sqrt(2)*sin(0:pi/8:6*pi);Y = awgn(X,10,0,S);Example 5: % To specify the power of X to be 0 dBW, add noise to produce% an SNR of 10dB, and produce reproducible results, use:reset(RandStream.getGlobalStream)X = sqrt(2)*sin(0:pi/8:6*pi);Y = awgn(X,10,0);參考:
總結
以上是生活随笔為你收集整理的Xiaojie雷达之路---MATLAB仿真---给信号添加高斯白噪声的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: numpy提取某行(列)或某几行(列)
- 下一篇: 数据流图、数据流程图、程序流程图的区别与