zdly.net
当前位置:首页 >> noisE=0.05*rAnDn(N,1); 在mAtlAB里是什么意思啊 >>

noisE=0.05*rAnDn(N,1); 在mAtlAB里是什么意思啊

%在噪声环境下语音信号的增强%语音信号为读入的声音文件%噪声为正态随机噪声sound=wavread('c12345.wav');count1=length(sound);noise=0.05*randn(1,count1);for i=1:count1signal(i)=sound(i);endfor i=1:count1y(i)=signal(i)+noise(i);end%在

randn(n,1)就是产生服从方差为1,均值为0 ( 即n(0,1) )的gaussian分布的随机噪音根据gaussian概率密度函数的特性,a+b*n(miu, sigma) = n(a+miu, b*sigma) 所以你就明白了为什么0.05是标准差了,或者,如果你如果想让均值为5就是noise=5+randn(n,1);

这是一个数学函数 noise=random(1,5000)噪声=随机函数(1,5000)

点运算是处理的元素之间的运算,而直接的/在矩阵计算中只能处理符合矩阵运算法则的运算.比如作图时的运算用的都是点运算.在对数值计算时,“./”和“/”其实是没有区别的.例如对于矩阵A=[a b c d],1./A=[1/a 1/b 1/c 1/d],而1/A表示的是A的逆

就是设定一个噪声范围

选出n维1列正态排列随机数中大于0.5的数的位置

在Matlab中,rand是0-1的均匀随机分布,而randn是均值为0方差为1的正态分布.举个例子:X = rand 产生一个在(0,1)区间内的随机数.X = rand(n)或X = randn(n)产生一个n*n的随机变量矩阵.X = rand(m,n)或X = randn(m,n)产生一个m*n的

楼上说的有一定道理,但理论性太强,楼主可以这么理解吧,5%就是说你有5%的概率加入噪声.实现方法:产生0到1均匀分布随机数,如果产生的随机数小于0.05,那就加噪声,否则不加实现:a = rand; %%%%产生随机数if a<=0.05 ******* %%%%%加噪声的代码end

clear; clc; N=1000; Fs=1000; t=0:(1/Fs):缉唬光舅叱矫癸蝎含莽(N-1)*(1/Fs); f=[50 100 150 200 250]; s=zeros(1,N); for i=1:length(f) s=s+sin(2*pi*f(i)*t); end noise=0.1*randn(1,N); r=s+noise; plot(t,r);

randn(m,n)表示产生m*n的随机数,随机数服从标准正态分布,0均值,方差为1在你的问题中,noise_real=0.1*(randn(1,6)+1);如果要产生复数的随机噪声,用randn分别构造实部与虚部,即:A=randn(2,6)+1;n_real=A(1,:);n_imag=A(2,:);noise_comp=0.1/sqrt(2)*(n_real+j*n_imag);%%可以用着两行来验证均值跟方差% M=mean(noise_comp);% N=var(noise_comp);%%你可以注册一些Matlab的论坛,之后下点别人共享的代码,多读就会了哈!祝好!

相关文档
网站首页 | 网站地图
All rights reserved Powered by www.zdly.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com