ZKX's LAB

matlab方波叠加白噪声 怎么由白噪声产生有色噪声,用matlab实现

2020-10-06知识7

用MATLAB 语言编程, 模拟方波电压信号, 并加入随机信号或者是白噪声, 求实现下图的除噪滤波。

matlab方波叠加白噪声 怎么由白噪声产生有色噪声,用matlab实现

如何用matlab产生一个均值为1,方差为0.2的高斯白噪声 用matlab产生一个均值为1,方差为0.2的高斯白噪声的方法如下:1、R=normrnd(MU,SIGMA)2、R=normrnd(MU,SIGMA,m)3、R=normrnd(MU,SIGMA,m,n)4、假设输入信号e68a847a686964616f31333365643661为X,则给X加上一个均值为0,方差为1的高斯白噪声信号的方法为:Y=X+normrnd(0,1);5、%设置采样区间k=(0:300)'/100;6、%计算采样值x=sin(2*pi*k);7、%施加高斯白噪声y=awgn(x,0);figure(1);8、%设置绘图位置,左下角距屏幕左200像素,下200像素,宽800像素,高300像素set(gcf,'Position',[200,200,800,300]);9、%绘图网格1*2,左图绘制原始信号,右图绘制噪声信号subplot(1,2,1),plot(k,x);subplot(1,2,2),plot(k,y);所谓高斯白噪声中的高斯是指概率分布是正态函数,而白噪声是指它的二阶矩不相关,一阶矩为常数,是指先后信号在时间上的相关性。这是考查一个信号的两个不同方面的问题。高斯白噪声:如果一个噪声,它的幅度分布服从高斯分布,而它的功率谱密度又是均匀分布的,则称它为高斯白噪声。热噪声和散粒噪声是高斯白噪声

matlab方波叠加白噪声 怎么由白噪声产生有色噪声,用matlab实现

怎么由白噪声产生有色噪声,用matlab实现 产生有色噪声e(k)=x(k)+0.5*x(k-1)。其中,x(k)为方差为1的白噪声clear all;close all;clcL=500;仿真长度c=[1-0.5];nc=length(c)-1;xik=zeros(nc,1);白噪声初值xi=randn(L,1);产生均值为0,方差为1的高斯白噪声序列for k=1:Le(k)=c*[xi(k);xik];产生有色噪声数据更新for i=nc:-1:2xik(i)=xik(i-1);endxik(1)=xi(k);endsubplot(2,1,1);plot(xi);xlabel('k');ylabel('噪声幅值');title('白噪声序列');subplot(2,1,2);plot(e);xlabel('k');ylabel('噪声幅值');title('有色噪声序列');测试功率谱[y1,f1]=Spectrum_Calc(xi',512);p1=1/L*y1.*conj(y1);figure(2)subplot(211)plot(f1,p1)[y2,f2]=Spectrum_Calc(e,512);p2=1/L*y2.*conj(y2);subplot(212)plot(f2,p2)

matlab方波叠加白噪声 怎么由白噪声产生有色噪声,用matlab实现

方波信号 随机噪声 matlab x=-8*pi:pi/15:8*pi;y1=sin(x)+1/3*sin(3*x)+1/5*sin(5*x)+1/7*sin(7*x)+1/9*sin(9*x)+1/11*sin(11*x)+1/13*sin(13*x)+1/15*sin(15*x)+1/17*sin(17*x)+1/19*sin(19*x)+1/21*sin(21*x);figure(1);plot(x,y1);n=length(x);r=0.5*(rand(n,1)-0.3);for i=1:ny2(i)=sin(x(i))+1/3*sin(3*x(i))+1/5*sin(5*x(i))+1/7*sin(7*x(i))+1/9*sin(9*x(i))+1/11*sin(11*x(i))+1/13*sin(13*x(i))+1/15*sin(15*x(i))+1/17*sin(17*x(i))+1/19*sin(19*x(i))+1/21*sin(21*x(i))+r(i,1);endfigure(2);plot(x,y2);[c,l]=wavedec(y2,3,'db1');a3=appcoef(c,l,'db1',3);d3=detcoef(c,l,3);d2=detcoef(c,l,2);d1=detcoef(c,l,1);

用matlab,选一幅图像,加入椒盐噪声后,对其进行中值滤波和均值滤波,对比其效果。 %中值I=imread('lena.bmp');读原图J1=imnoise(I,'salt&pepper',0.02);加均值为0,方差为0.02的椒盐噪声J2=imnoise(I,'gaussian',0.02);加均值为0,方差为0.02的高斯噪声。subplot(2,2,1),imshow(J1);显示有椒盐噪声图像subplot(2,2,2),imshow(J2);显示有高斯噪声图像I1=medfilt2(J1,[5,5]);对有椒盐噪声图像进行5×5方形窗口中值滤波I2=medfilt2(J2,[5,5]);对有高斯噪声图像进行5×5方形窗口中值滤波subplot(2,2,3),imshow(I1);显示有椒盐噪声图像的滤波结果subplot(2,2,4),imshow(I2);显示有高斯噪声图像的滤波结果均衡I=imread('lena.bmp');将图读入到Iimshow(I);显示图像figure,imhist(I);直方图I2=histeq(I);均衡化figure;imshow(I2);处理后图像显示figure;imhist(I2);均衡化后直方图imwrite(I2,'lena2.bmp');保存图像

如何用matlab在图像中加入特定频率的二维噪声 首先图像最少是二维的,图像有是有长宽两个属性组成的矩阵。一维信号是向量.MATLAB 给图像添加噪声的命令为imnoise该函数的基本语法为:g=imnoise(f,type,parameters)f为是。

求一个用维纳滤波方法处理噪声的matlab程序,必须是要调试好的,能用的程序有追加的 clear allclck=8;fs=1000;采样率N=1000;采样点数n=0:N-1;t=0:1/fs:1-1/fs;时间序列signal=sin(2*pi*10*t);noise=sin(2*pi*100*t);前500点高斯分部白噪声,后500点均匀分布白噪声xn=signal+k*noise;构造的混合信号figure(1)plot(xn);grid on;title('原始信号 ');Fs=fft(xn,512);将信号变换到频域AFs=abs(Fs);信号频域图的幅值f=(0:255)*fs/512;频率采样figure(2)plot(f,AFs(1:256));滤波前的信号频域图grid on;xlabel('频率/赫兹');ylabel('幅度');title('信号滤波前频域图');figure(3);Rxx=xcorr(xn,xn);得到混合信号的自相关函数M=100;维纳滤波器阶数for i=1:M%得到混合信号的自相关矩阵for j=1:Mrxx(i,j)=Rxx(abs(j-i)+N);endendRxy=xcorr(xn,signal);得到混合信号和原信号的互相关函数for i=1:Mrxy(i)=Rxy(i+N-1);end%得到混合信号和原信号的互相关向量h=inv(rxx)*rxy';得到所要涉及的wiener滤波器系数Signal_Filter=filter(h,1,xn);将输入信号通过维纳滤波器plot(Signal_Filter);grid on;title('维纳滤波后的信号');Fs2=fft(Signal_Filter,512);将信号变换到频域AFs2=abs(Fs2);信号频域图的幅值f=(0:255)*fs/512;频率采样figure(4)。

#图像噪声#sin#matlab#高斯白噪声#白噪声序列

随机阅读

qrcode
访问手机版