滤波

%目的:观察各种噪声对图像的影响
I=imread('eight.tif');%读取图像
J1=imnoise(I,'salt & pepper',0.02);%添加椒盐噪声
J2=imnoise(I,'gaussian',0,0.02);%添加高斯噪声
J3=imnoise(I,'speckle',0.02);%添加乘性噪声
subplot(221);imshow(I);title('源图像')
subplot(222);imshow(J1);title('椒盐噪声')
subplot(223);imshow(J2);title('高斯噪声')
subplot(224);imshow(J3);title('乘性噪声')

%目的:椒盐噪声中值滤波
[I,map]=imread('eight.tif');
noisy=imnoise(I,'salt & pepper',0.05);
subplot(221);imshow(noisy);title('噪声图像');
hood=3;%模板大小
filtered1=medfilt2(noisy,[hood hood]);
subplot(222);imshow(filtered1,map);title('3*3中值滤波图像');
hood=5;
filtered2=medfilt2(noisy,[hood hood]);
subplot(223);imshow(filtered2,map);title('5*5中值滤波图像');
hood=7;
filtered3=medfilt2(noisy,[hood hood]);
subplot(224);imshow(filtered2,map);title('7*7中值滤波图像');

%目的:椒盐噪声均值滤波
[I,map]=imread('eight.tif');
noisy=imnoise(I,'salt & pepper',0.05);
subplot(221);imshow(I);title('原始图像');
subplot(222);imshow(noisy);title('噪声图像');
myfilt1=[0 1 0;1 1 1;0 1 0];%模板
myfilt1=myfilt1/9;
filtered1=filter2(myfilt1,noisy);
subplot(223);imshow(filtered1,map);title('4方向均值滤波图像');
myfilt2=[1 1 1;1 1 1;1 1 1];
myfilt2=myfilt2/9;
filtered2=filter2(myfilt2,noisy);
subplot(224);imshow(filtered2,map);title('8方向均值滤波图像');

%目的:高斯噪声均值滤波
[I,map]=imread('pout.tif');
noisy=imnoise(I,'gaussian',0.05);
subplot(221);imshow(I);title('高斯噪声图像');
myfilt1=[1 1 1;1 1 1;1 1 1];
myfilt1=myfilt1/9;
filtered1=filter2(myfilt1,noisy);
subplot(222);imshow(filtered1,map);title('高斯噪声均值滤波');
myfilt2=[1 1 1;1 2 1;1 1 1];
myfilt2=myfilt1/10;
filtered2=filter2(myfilt2,noisy);
subplot(223);imshow(filtered2,map);title('高斯噪声加权均值滤波');
myfilt3=[1 2 1;2 4 2;1 2 1];
myfilt3=myfilt1/16;
filtered3=filter2(myfilt3,noisy);
subplot(224);imshow(filtered3,map);title('高斯噪声加权均值滤波');

 

 

需要:按照理论公式完成卷积

%按照理论公式法一:

a=[4 5 6 7 8 9];
b=[ 7 5 8 ];

k=length(a);
bk=length(b);
n=length(a)+length(b)-1;

a=[a zeros(1,n-k)];
b=[b zeros(1,n-bk)];
y=zeros(1,n);
for i=1:n
    temp=0;
    for j=1:n
        if i>=j
            temp=temp+a(j).*b(i+1-j)
        else
            break;
        end
    end
    y(i)=temp
end

y
subplot(2,1,1)
stem(y)

 

%按照理论公式法二:

for i=1:n
     j=max(1,i+1-bk):min(i,k);
     y3(i)=sum(a(j).*b(i+1-j));
   end
y3
subplot(3,1,3)
stem(y3)

%利用conv函数
a=[4 5 6 7 8 9];
b=[ 7 5 8 ];
y2=conv(a,b)

subplot(2,1,2)
stem(y2)

内容概要:本文详细探讨了基于MATLAB/SIMULINK的多载波无线通信系统仿真及性能分析,重点研究了以OFDM为代表的多载波技术。文章首先介绍了OFDM的基本原理和系统组成,随后通过仿真平台分析了不同调制方式的抗干扰性能、信道估计算法对系统性能的影响以及同步技术的实现与分析。文中提供了详细的MATLAB代码实现,涵盖OFDM系统的基本仿真、信道估计算法比较、同步算法实现和不同调制方式的性能比较。此外,还讨论了信道特征、OFDM关键技术、信道估计、同步技术和系统级仿真架构,并提出了未来的改进方向,如深度学习增强、混合波形设计和硬件加速方案。; 适合人群:具备无线通信基础知识,尤其是对OFDM技术有一定了解的研究人员和技术人员;从事无线通信系统设计与开发的工程师;高校通信工程专业的高年级本科生和研究生。; 使用场景及目标:①理解OFDM系统的工作原理及其在多径信道环境下的性能表现;②掌握MATLAB/SIMULINK在无线通信系统仿真中的应用;③评估不同调制方式、信道估计算法和同步算法的优劣;④为实际OFDM系统的设计和优化提供理论依据和技术支持。; 其他说明:本文不仅提供了详细的理论分析,还附带了大量的MATLAB代码示例,便于读者动手实践。建议读者在学习过程中结合代码进行调试和实验,以加深对OFDM技术的理解。此外,文中还涉及了一些最新的研究方向和技术趋势,如AI增强和毫米波通信,为读者提供了更广阔的视野。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值