【深度学习】基于形态学的权重自适应图像去噪(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

📋📋📋本文目录如下:🎁🎁🎁

目录

💥1 概述

📚2 运行结果

🎉3 参考文献

🌈4 Matlab代码实现


💥1 概述

针对去除周期性噪声的同时容易造成图像的失真或降噪效果不理想的问题,提出了一种基于权重自适应形态学的周期性噪声去除方法。该方法使用不同尺度的结构元素对图像的周期性噪声进行串行处理,再将串行处理的结果并行处理,并通过自适应权值算法来构建复合级联滤波器,使用该滤波器滤除图像的周期性噪声。为了验证该算法的去噪性能,对周期性噪声及混合噪声进行了常用去噪算法的对比性实验。结果表明,视觉上,使用该算法去噪后的图像去噪效果较好且图像边缘和细节比较清晰;定量评价标准上,使用该算法去噪后的图像的PSNR和SSIM都较高。因此,一方面该算法有效地抑制了图像中的周期性噪声,同时较好地保持了图像的几何特征,具有更好的鲁棒性,另一方面该算法首先在同一尺度下用多个结构元素分别进行边缘检测,并得到该尺度下的边缘图像,利用形态学结构元素"探针"原理和不同尺度结构元素抗噪性能来确定加权值的大小,然后对不同尺度下的边缘图像进行加权求和,再经过二值化、去噪等处理,得到最后的边缘检测结果。仿真结果表明,该方法具有较好的抗干扰性和定位准确性,得到的边缘更为完整。

📚2 运行结果

 

 部分代码:

clc; clear all; close all;
filename = fullfile(pwd, 'images/im.jpg');
Img = imread(filename);
if ndims(Img) == 3
    I = rgb2gray(Img);
else
    I = Img;
end
Ig = imnoise(I,'poisson');
s = GetStrelList();
e = ErodeList(Ig, s);
f = GetRateList(Ig, e);
Igo = GetRemoveResult(f, e);
figure;
subplot(1, 2, 1); imshow(I, []); title('原图像');
subplot(1, 2, 2); imshow(Ig, []); title('噪声图像');
figure;
subplot(2, 2, 1); imshow(e.eroded_co12, []); title('串联1处理结果');
subplot(2, 2, 2); imshow(e.eroded_co22, []); title('串联2处理结果');
subplot(2, 2, 3); imshow(e.eroded_co32, []); title('串联3处理结果');
subplot(2, 2, 4); imshow(e.eroded_co42, []); title('串联4处理结果');
figure;
subplot(1, 2, 1); imshow(Ig, []); title('噪声图像');
subplot(1, 2, 2); imshow(Igo, []); title('并联去噪图像');
psnr1 = PSNR(I, e.eroded_co12);
psnr2 = PSNR(I, e.eroded_co22);
psnr3 = PSNR(I, e.eroded_co32);
psnr4 = PSNR(I, e.eroded_co42);
psnr5 = PSNR(I, Igo);
psnr_list = [psnr1 psnr2 psnr3 psnr4 psnr5];
figure; 
plot(1:5, psnr_list, 'r+-');
axis([0 6 18 24]);
set(gca, 'XTick', 0:6, 'XTickLabel', {'', '串联1', '串联2', '串联3', ...
    '串联4', '并联', ''});
grid on;
title('PSNR曲线比较');

🎉3 参考文献

部分理论来源于网络,如有侵权请联系删除。

[1]戴丹,张兴刚.基于权重自适应形态学的周期性噪声去除方法[J].计算机技术与发展,2018,28(05):9-12.

[2]亢洁,杨刚.自适应权重形态学边缘检测算法仿真研究[J].计算机工程与应用,2010,46(17):163-165+168.

🌈4 Matlab代码实现

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
【项目介绍】 基于MATLAB实现传统图像去噪算法和深度学习DnCNN模型图像去噪源码+项目说明.zip 该资源内项目代码都是经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载使用,也适合小白学习进阶, 或者实际项目借鉴参考! 当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。如果基础还行,也可在此代码基础上进行修改,以实现其他功能。 1. 项目介绍 # 1.1 项目的背景 该项目是为了研究基于深度卷积神经网络的图像去噪算法,是利用DnCNN模型,但是为了比较该算法的效果,另外实现了四种传统的图像去噪算法(均值滤波、中值滤波、非局部均值滤波NLM和三维块匹配滤波BM3D)作为对照组。 # 1.2 噪声强度和类型 项目中实现五种算法对噪声强度为10,15,20...60,65,70的高斯白噪声进行处理。 # 1.3 评价指标 图像去噪后,如何评估算法去噪效果的好坏呢?项目中采用峰值信噪比PSNR和结构相似性SSIM作为评价指标。一般来说,PSNR越大,去噪效果越好。SSIM取值为0到1,越接近1,表示效果越好。 2. 数据集介绍 该项目中只是对Set12数据集进行处理,也就是项目中的Set12目录下的12张图片。如果觉得数据量不够充分,可以自行添加其他数据集,在代码中修改一下数据集的目录即可。 3. 代码介绍 对于均值滤波、中值滤波、和NLM,MATLAB都已经实现了,所以我们直接调用MATLAB自带的函数就可以。 BM3D和DnCNN的代码都是从别人那儿clone下来,做了一些小的修改。 五种算法都是对Set12数据集进行去噪,去噪的结果并没有保存,只是在运行过程中能看到去噪前和去噪后的图像对比,感兴趣的朋友可以自己将图像保存下来观察。 4. 代码运行 五种算法分别在五个不同的目录中,所以你只需要进行对应的目录,运行代码即可。 + 均值滤波、中值滤波、NLM算法对应的目录分别为avefilter、medainfilter、nlm-image-denoising。每个目录下只有一个.m文件,所以只需要运行对应的文件即可。 + BM3D对应的目录是BM3D,运行该目录下的main.m程序即可。 + DnCNN对应的目录是DnCNN,运行该目录下的Demo_test_DnCNN.m程序即可,该算法目录中对应的还有好几个代码,都是原项目中有的,我没有动过,感兴趣的朋友可以自己看看。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

荔枝科研社

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值