首页 > 行业资讯 > 【图像去噪】基于中值、均值、Lee、Kuan多种算法实现图像去噪含Matlab源码

【图像去噪】基于中值、均值、Lee、Kuan多种算法实现图像去噪含Matlab源码

时间:2022-05-01 来源: 浏览:

【图像去噪】基于中值、均值、Lee、Kuan多种算法实现图像去噪含Matlab源码

天天Matlab 天天Matlab
天天Matlab

TT_Matlab

博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,完整matlab代码或者程序定制加qq1575304183。

收录于合集 #图像处理matlab源码 559个

1 简介

通过对含高斯噪声的图像进行分析和研究,采用中值、均值、Lee、Kuan多种滤波来进行图像去噪。

2 部分代码

clear; A1=imread(’44.jpg’) A=double(A1); figure(1) imshow(A/256) title(’原始图像’); [a,b]=size(A); ASp=imnoise(A/256,’speckle’,0.02); figure(2) imshow(ASp); title(’含散斑噪声的图像’); % imwrite(ASp/256,’55.jpg’); index_ASp=std2(ASp)/mean2(ASp);%散斑指数 潘云《数字全息技术中散斑噪声滤波算法比较》 ENL=mean2(ASp)^2/std2(ASp)^2;%等效视数 psnr=PSNR(A,ASp); %中值滤波 ME=Medf(ASp,3);%邻域 3*3 ENL_Me3=mean2(ME)^2/std2(ME)^2;%等效视数 index_ME3=std2(ME)/mean2(ME);%散斑指数 psnr_ME3=PSNR(A,ME); figure(3) % subplot(2,2,1); imshow(ME); title(’中值滤波后的图像 3*3’); ME=Medf(ASp,5);%邻域 ENL_Me5=mean2(ME)^2/std2(ME)^2;%等效视数 index_ME5=std2(ME)/mean2(ME);%散斑指数 psnr_ME5=PSNR(A,ME); figure(4) % subplot(2,2,2); imshow(ME); title(’中值滤波后的图像 5*5’); ME=Medf(ASp,7);%邻域 ENL_Me7=mean2(ME)^2/std2(ME)^2;%等效视数 index_ME7=std2(ME)/mean2(ME);%散斑指数 psnr_ME7=PSNR(A,ME); figure(5) % subplot(2,2,3); imshow(ME); title(’中值滤波后的图像 7*7’); ME=Medf(ASp,9);%邻域 ENL_Me9=mean2(ME)^2/std2(ME)^2;%等效视数 index_ME9=std2(ME)/mean2(ME);%散斑指数 psnr_ME9=PSNR(A,ME); figure(6) % subplot(2,2,4); imshow(ME); title(’中值滤波后的图像 9*9’); %Lee滤波 LE=Leef(256*ASp,5); ENL_Lee5=mean2(LE)^2/std2(LE)^2;%等效视数 index_LE5=std2(LE)/mean2(LE);%散斑指数 psnr_LE5=PSNR(A,LE); figure(7) imshow(LE); title(’Lee滤波后的图像 5*5’); LE=Leef(256*ASp,7); ENL_Lee7=mean2(LE)^2/std2(LE)^2;%等效视数 index_LE7=std2(LE)/mean2(LE);%散斑指数 psnr_LE7=PSNR(A,LE); figure(8) imshow(LE); title(’Lee滤波后的图像 7*7’); LE=Leef(256*ASp,9); ENL_Lee9=mean2(LE)^2/std2(LE)^2;%等效视数 index_LE9=std2(LE)/mean2(LE);%散斑指数 psnr_LE9=PSNR(A,LE); figure(9) imshow(LE); title(’Lee滤波后的图像 9*9’); %Kuan滤波 KU=Kuanf(256*ASp,5); ENL_Kuan5=mean2(KU)^2/std2(KU)^2;%等效视数 index_Ku5=std2(KU)/mean2(KU);%散斑指数 psnr_Ku5=PSNR(A,KU); figure(10) imshow(KU); title(’Kuan滤波后的图像 5*5’); KU=Kuanf(256*ASp,7); ENL_Kuan7=mean2(KU)^2/std2(KU)^2;%等效视数 index_Ku7=std2(KU)/mean2(KU);%散斑指数 psnr_Ku7=PSNR(A,KU); figure(11) imshow(KU); title(’Kuan滤波后的图像 7*7’); KU=Kuanf(256*ASp,9); ENL_Kuan9=mean2(KU)^2/std2(KU)^2;%等效视数 index_Ku9=std2(KU)/mean2(KU);%散斑指数 psnr_Ku9=PSNR(A,KU); figure(12) imshow(KU); title(’Kuan滤波后的图像 9*9’); %均值滤波 AV=Avef(ASp,3) ENL_Aver3=mean2(AV)^2/std2(AV)^2;%等效视数 index_AV3=std2(AV)/mean2(AV);%散斑指数 psnr_AV3=PSNR(A,AV); figure(13) imshow(AV); title(’均值滤波后的图像 3*3’); AV=Avef(ASp,5) ENL_Aver5=mean2(AV)^2/std2(AV)^2;%等效视数 index_AV5=std2(AV)/mean2(AV);%散斑指数 psnr_AV5=PSNR(A,AV); figure(14) imshow(AV); title(’均值滤波后的图像 5*5’); AV=Avef(ASp,7) ENL_Aver7=mean2(AV)^2/std2(AV)^2;%等效视数 index_AV7=std2(AV)/mean2(AV);%散斑指数 psnr_AV7=PSNR(A,AV); figure(15) imshow(AV); title(’均值滤波后的图像 7*7’); AV=Avef(ASp,9) ENL_Aver9=mean2(AV)^2/std2(AV)^2;%等效视数 index_AV9=std2(AV)/mean2(AV);%散斑指数 psnr_AV9=PSNR(A,AV); figure(16) imshow(AV); title(’均值滤波后的图像 9*9’); %二次去噪 EME=Medf(ME,9);%邻域 ENL_EME=mean2(EME)^2/std2(EME)^2;%等效视数 index_EME=std2(EME)/mean2(EME);%散斑指数 psnr_EME=PSNR(A,EME); figure(17) imshow(EME); title(’二次中值滤波后的图像 9*9’); ELE=Leef(LE,9); ENL_ELE=mean2(ELE)^2/std2(ELE)^2;%等效视数 index_ELE=std2(ELE)/mean2(ELE);%散斑指数 psnr_ELE=PSNR(A,ELE); figure(18) imshow(ELE); title(’二次Lee滤波后的图像 9*9’); EKU=Kuanf(KU,9); ENL_EKU=mean2(EKU)^2/std2(EKU)^2;%等效视数 index_EKU=std2(EKU)/mean2(EKU);%散斑指数 psnr_EKU=PSNR(A,EKU); figure(19) imshow(EKU); title(’二次Kuan滤波后的图像 9*9’); EAV=Avef(256*AV,9); ENL_EAV=mean2(EAV)^2/std2(EAV)^2;%等效视数 index_EAV=std2(EAV)/mean2(EAV);%散斑指数 psnr_EAV=PSNR(A,EAV); figure(20) imshow(EAV/256); title(’二次均值值滤后的图像 9*9 ’); disp(’指标比较’); disp(’ 等效视数 散斑指数 峰值信噪比 ’); fprintf(’含噪图像: %0.5g %0.5g %0.5g ’,ENL,index_ASp,psnr); fprintf(’中值滤波后的图像3*3: %0.5g %0.5g %0.5g ’,ENL_Me3,index_ME3,psnr_ME3); fprintf(’中值滤波后的图像5*5: %0.5g %0.5g %0.5g ’,ENL_Me5,index_ME5,psnr_ME5); fprintf(’中值滤波后的图像7*7: %0.5g %0.5g %0.5g ’,ENL_Me7,index_ME7,psnr_ME7); fprintf(’中值滤波后的图像9*9: %0.5g %0.5g %0.5g ’,ENL_Me9,index_ME9,psnr_ME9); fprintf(’Lee滤波后的图像5*5: %0.5g %0.5g %0.5g ’,ENL_Lee5,index_LE5,psnr_LE5); fprintf(’Lee滤波后的图像7*7: %0.5g %0.5g %0.5g ’,ENL_Lee7,index_LE7,psnr_LE7); fprintf(’Lee滤波后的图像9*9: %0.5g %0.5g %0.5g ’,ENL_Lee9,index_LE9,psnr_LE9); fprintf(’Kuan滤波后的图像5*5: %0.5g %0.5g %0.5g ’,ENL_Kuan5,index_Ku5,psnr_Ku5); fprintf(’Kuan滤波后的图像7*7: %0.5g %0.5g %0.5g ’,ENL_Kuan7,index_Ku5,psnr_Ku7); fprintf(’Kuan滤波后的图像9*9: %0.5g %0.5g %0.5g ’,ENL_Kuan9,index_Ku5,psnr_Ku9); fprintf(’均值滤波后的图像3*3: %0.5g %0.5g %0.5g ’,ENL_Aver3,index_AV3,psnr_AV3); fprintf(’均值滤波后的图像5*5: %0.5g %0.5g %0.5g ’,ENL_Aver5,index_AV5,psnr_AV5); fprintf(’均值滤波后的图像7*7: %0.5g %0.5g %0.5g ’,ENL_Aver7,index_AV7,psnr_AV7); fprintf(’均值滤波后的图像9*9: %0.5g %0.5g %0.5g ’,ENL_Aver9,index_AV9,psnr_AV9); fprintf(’二次中值滤波后 9*9: %0.5g %0.5g %0.5g ’,ENL_EME,index_EME,psnr_EME); fprintf(’二次Lee滤波后 9*9: %0.5g %0.5g %0.5g ’,ENL_ELE,index_ELE,psnr_ELE); fprintf(’二次Kuan滤波后 9*9: %0.5g %0.5g %0.5g ’,ENL_EKU,index_EKU,psnr_EKU); fprintf(’二次均值滤波后 9*9: %0.5g %0.5g %0.5g ’,ENL_EAV,index_EAV,psnr_EAV);

3 仿真结果

4 参考文献

[1]李宸鑫. "基于MATLAB三种滤波算法的图像去噪技术研究." 通讯世界 6(2018):2.

博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

部分理论引用网络文献,若有侵权联系博主删除。

版权:如无特殊注明,文章转载自网络,侵权请联系cnmhg168#163.com删除!文件均为网友上传,仅供研究和学习使用,务必24小时内删除。
相关推荐