1樓:匿名使用者
y=randn(1,2500);
y=y/std(y);
y=y-mean(y);
a=0;
b=sqrt(5);
y=a+b*y;
就得到了 n ( 0, 5 ) ,均值為0,方差為5的高斯白噪聲序列。
matlab中產生高斯白噪聲的兩個函式
matlab中產生高斯白噪聲非常方便,可以直接應用兩個函式,一個是wgn,另一個是awgn。wgn用於產生高斯白噪聲,awgn則用於在某一訊號中加入高斯白噪聲。
1. wgn:產生高斯白噪聲
y = wgn(m,n,p) 產生一個m行n列的高斯白噪聲的矩陣,p以dbw為單位指定輸出噪聲的強度。
y = wgn(m,n,p,imp) 以歐姆(ohm)為單位指定負載阻抗。
y = wgn(m,n,p,imp,state) 重置randn的狀態。
在數值變數後還可附加一些標誌性引數:
y = wgn(…,powertype) 指定p的單位。powertype可以是'dbw', 'dbm'或'linear'。線性強度(linear power)以瓦特(watt)為單位。
y = wgn(…,outputtype) 指定輸出型別。outputtype可以是'real'或'complex'。
2. awgn:在某一訊號中加入高斯白噪聲
y = awgn(x,snr) 在訊號x中加入高斯白噪聲。訊雜比snr以db為單位。x的強度假定為0dbw。如果x是複數,就加入復噪聲。
y = awgn(x,snr,sigpower) 如果sigpower是數值,則其代表以dbw為單位的訊號強度;如果sigpower為'measured',則函式將在加入噪聲之前測定訊號強度。
y = awgn(x,snr,sigpower,state) 重置randn的狀態。
y = awgn(…,powertype) 指定snr和sigpower的單位。powertype可以是'db'或'linear'。如果powertype是'db',那麼snr以db為單位,而sigpower以dbw為單位。
如果powertype是'linear',那麼snr作為比值來度量,而sigpower以瓦特為單位
matlab中,給一個正弦訊號加上一個均值為0,方差為1的高斯白噪聲訊號,想用awgn函式,怎麼做?
2樓:匿名使用者
可以使用如下的函式實現
r = normrnd(mu,sigma) (生成均值為 mu,標準差為 sigma 的正態隨機數
)r = normrnd(mu,sigma,m) (生成 1× m 個正態隨機數)
r = normrnd(mu,sigma,m,n) (生成 m 行 n 列的 m × n 個正態隨機數)
假設輸入訊號為x,則給x加上一個均值為0,方差為1的高斯白噪聲訊號的方法為
y=x+normrnd(0,1);
3樓:手機使用者
對snr沒有要求的話就把它設成一個隨機數吧,但是什麼情況下你不關心snr呢
matlab對訊號加高斯白噪聲的方法,比如對一個正弦訊號,加入10db的噪聲,是噪聲,不是訊雜比
4樓:我的小名叫仙女
你這個是訊號波形資料嗎? 加噪聲一般是對模擬訊號加噪聲matlab有一個函式很方便加入高斯白噪聲x是訊號序列, y = awgn(x,snr) 在訊號x中加入高斯白噪聲,訊雜比snr以db為單位。x的強度假定為0dbw。
比如:x = sqrt(2)*sin(0:pi/8:6*pi);
y = awgn(x,10);
plot(x,'b');hold on; plot(y,'r')
5樓:匿名使用者
先計算訊號的功率譜密度,然後和10db噪聲一比,就可以求出訊雜比,使用matlab中的函式了
matlab中如何給我的一段訊號加高斯白噪聲
6樓:匿名使用者
你這個是訊號波形資料嗎? 加噪聲一般是對模擬訊號加噪聲matlab有一個函式很方便加入高斯白噪聲x是訊號序列, y = awgn(x,snr) 在訊號x中加入高斯白噪聲,訊雜比snr以db為單位。x的強度假定為0dbw。
比如:x = sqrt(2)*sin(0:pi/8:6*pi);
y = awgn(x,10);
plot(x,'b');hold on; plot(y,'r')
如何在matlab裡面向訊號裡面加入白噪聲?
7樓:go風影
y=awgn(x,snr),加性高斯白du噪函式,x原訊號,zhisnr是訊雜比,不知道你dao這個2%是能量
專還是幅屬值,如果是能量的話,snr=10*log(100/2);如果是幅值,snr=20*log(100/2);
**如下:
clc; clear ;
t=0:0.01:1;
y1=(pi/2)*cos(2*pi*t)+(pi/64)*cos(pi*t/8+pi/3);
snr=10*log(100/2); % 2%是能量比x=awgn(y1,snr);
subplot(211), plot(t,y1);
title('原訊號');
% 加入噪聲後有毛刺,但2%的噪聲有點小,毛刺不明顯。
subplot(212), plot(t,x);
title('加高斯白噪訊號');
8樓:匿名使用者
在matlab中無論是wgn還是baiawgn函式,實質du都是由randn函式產生
zhi的噪聲。即,wgn函式中調
dao用了randn函式,而版awgn函式中呼叫了wgn函式。
權根據awgn的實現**可以知道「向已知訊號新增某個訊雜比(snr)的高斯白噪聲」,
即:awgn(x,snr,』measured』,'linear』),命令的作用是對原訊號x新增訊雜比(比值)為snr的噪聲,在新增之前先估計訊號x的強度。
直接對原始訊號新增噪聲:
y=x+rand(length(x),1)y=x+randn(length(x),1))
9樓:匿名使用者
t=0:0.001:1;
y1=(pi/2)*cos(2*pi*t)+(pi/64)*cos(pi*t/8+pi/3);
temp=y1+0.02*y1.*rand(size(y1));
plot(t,y1,t,temp,'r')
10樓:日向淳正
l=length(y1);
noise=rand(1,l); %生成跟你的訊號一樣長度的白噪聲.
y=y1+noise; %加入白噪聲
matlab陣列中怎麼加入高斯白噪聲
11樓:du瓶邪
matlab中產生高斯白噪聲的兩個函式
matlab中產生高斯白噪聲非常方便,可以直接應用兩個函式,一個是wgn,另一個是awgn。wgn用於產生高斯白噪聲,awgn則用於在某一訊號中加入高斯白噪聲。
1. wgn:產生高斯白噪聲
y = wgn(m,n,p) 產生一個m行n列的高斯白噪聲的矩陣,p以dbw為單位指定輸出噪聲的強度。
y = wgn(m,n,p,imp) 以歐姆(ohm)為單位指定負載阻抗。
y = wgn(m,n,p,imp,state) 重置randn的狀態。
在數值變數後還可附加一些標誌性引數:
y = wgn(…,powertype) 指定p的單位。powertype可以是'dbw', 'dbm'或'linear'。線性強度(linear power)以瓦特(watt)為單位。
y = wgn(…,outputtype) 指定輸出型別。outputtype可以是'real'或'complex'。
2. awgn:在某一訊號中加入高斯白噪聲
y = awgn(x,snr) 在訊號x中加入高斯白噪聲。訊雜比snr以db為單位。x的強度假定為0dbw。如果x是複數,就加入復噪聲。
y = awgn(x,snr,sigpower) 如果sigpower是數值,則其代表以dbw為單位的訊號強度;如果sigpower為'measured',則函式將在加入噪聲之前測定訊號強度。
y = awgn(x,snr,sigpower,state) 重置randn的狀態。
y = awgn(…,powertype) 指定snr和sigpower的單位。powertype可以是'db'或'linear'。如果powertype是'db',那麼snr以db為單位,而sigpower以dbw為單位。
如果powertype是'linear',那麼snr作為比值來度量,而sigpower以瓦特為單位。
12樓:匿名使用者
你的陣列為m
n=randn()命令,產生與你陣列同維的高斯噪聲,然後
x=m+n即可
matlab中做指數擬合,如何輸入x值,得到擬合後的y值
你這個曲線擬合本來就不是簡單的事情。對於這種指數函式的線性組合,一般很難找到合適的變換使其變成多項式。如果你能找到這樣的變換,那麼問題就簡單許多。如果不能,那麼就需要bayesian inference和metropolis hastings來實現較為嚴格的擬合。這種方法較為複雜而且費時,但是如果得...
MATLAB裡求yax1x210bx3中的a,b
提供的求duy a x 1 x 2 10 b x 3 中的a,b的代 zhi碼存在著很多的問題,現dao已將你的 進行了修改回,修改後的 如答下。clear all a xlsread evap.xls 讀資料檔案xdata a 1 ydata a 2 x0 0,0 這裡是a的初值 y x a,x ...
已知9x 8y,已知9x 8y
你好 1。用含y的代數式表示x 9x 10 8y x 10 8y 9 2.用含x的代數式表示y 9x 8y 10 8y 9x 10 y 9x 10 8 1 用含y的代數式表示x x 10 8y 9 2 用含x的代數式表示y y 9x 10 8 1 用含y的代數式表示x為 9x 8y 10 9x 10...