当前位置:网站首页>【图像去噪】基于三边滤波器实现图像去噪附matlab代码
【图像去噪】基于三边滤波器实现图像去噪附matlab代码
2022-06-12 21:49:00 【Matlab科研工作室】
1 简介
近年来,随着计算机视觉领域的发展,雾天图像的清晰化问题逐渐成为该领域的研究热点。目前对于图像去雾技术的研究大体上可以分为两类[1]:基于大气散射物理模型的图像去雾方法和基于图像增强的去雾方法。基于大气散射物理模型的图像去雾方法从造成图像退化的具体原因角度分析,侧重于考虑大气散射作用对成像过程的影响,对雾天图像的退化过程进行数学建
模,求解模型参数,再通过图像退化的逆过程来恢复原来的真实图像。基于图像增强的去雾方法不考虑图像退化的原因,而是有选择性的突出图像中感兴趣的特征,减弱不需要的特征。一般通过增强图像的对比度和校正图像的颜色以达到图像去雾的目的,从而使处理后的图像更适合人类的视觉特性或计算机识别系统。基于图像增强的去雾方法以其方法简单、有效而得到更为广泛的应用。



2 部分代码
clear all;clc;warning off; close all;foldnumber = 2;linenumber = 150;string = strcat('C:\Users\hehesjtu\Desktop\test\',num2str(foldnumber),'\');Files = dir(strcat(string,'*.bmp'));LengthFiles = length(Files);t = [1:256];for i = 1:LengthFilesstring_GT = Files(i).name(end-5:end-4);if (strcmp(string_GT,'GT'))ygt = getline(imread(strcat(string,Files(i).name)),linenumber);name = strcat(Files(i).name(1:end-6));break;endendpicture = imread(strcat(string,name,'noisy.bmp'));block = ones(5,256,3);block(:,:,1)= block(:,:,1)*255;block(:,:,2) = 0; block(:,:,3) = 0;picture(linenumber-2:linenumber+2,:,:) = block;ynoisy = getline(imread(strcat(string,name,'noisy.bmp')),linenumber);yNLM = getline(imread(strcat(string,name,'NLM.bmp')),linenumber);yBM3D = getline(imread(strcat(string,name,'BM3D.bmp')),linenumber);yDDID = getline(imread(strcat(string,name,'DDID.bmp')),linenumber);yEPLL = getline(imread(strcat(string,name,'EPLL.bmp')),linenumber);yPGPD = getline(imread(strcat(string,name,'PGPD.bmp')),linenumber);yWNNM = getline(imread(strcat(string,name,'WNNM.bmp')),linenumber);yMCWNNM = getline(imread(strcat(string,name,'MCWNNM.bmp')),linenumber);yDnCNN = getline(imread(strcat(string,name,'DnCNN.bmp')),linenumber);yFFDNet = getline(imread(strcat(string,name,'FFDNet.bmp')),linenumber);yOur = getline(imread(strcat(string,name,'Our.bmp')),linenumber);subplot(3,4,1)imshow(picture);subplot(3,4,2)plot(t,ygt,'k','linewidth',2);hold on;plot(t,ynoisy,'r','linewidth',1.5);axis([1 256 50 150]);legend('y_{gt}','y');subplot(3,4,3)plot(t,ygt,'k','linewidth',2);hold on;plot(t,yNLM,'g','linewidth',1.5);axis([1 256 50 150]);legend('y_{gt}','NLM');subplot(3,4,4)plot(t,ygt,'k','linewidth',2);hold on;plot(t,yBM3D,'g','linewidth',1.5);axis([1 256 80 150]);legend('y_{gt}','BM3D');subplot(3,4,5)plot(t,ygt,'k','linewidth',2);hold on;plot(t,yDDID,'g','linewidth',1.5);axis([1 256 80 150]);legend('y_{gt}','DDID');subplot(3,4,6)plot(t,ygt,'k','linewidth',2);hold on;plot(t,yEPLL,'g','linewidth',1.5);axis([1 256 80 150]);legend('y_{gt}','EPLL');subplot(3,4,7)plot(t,ygt,'k','linewidth',2);hold on;plot(t,yPGPD,'g','linewidth',1.5);axis([1 256 80 150]);legend('y_{gt}','PGPD');subplot(3,4,8)plot(t,ygt,'k','linewidth',2);hold on;plot(t,yWNNM,'g','linewidth',1.5);axis([1 256 80 150]);legend('y_{gt}','WNNM');subplot(3,4,9)plot(t,ygt,'k','linewidth',2);hold on;plot(t,yMCWNNM,'g','linewidth',1.5);axis([1 256 80 150]);legend('y_{gt}','MCWNNM');subplot(3,4,10)plot(t,ygt,'k','linewidth',2);hold on;plot(t,yDnCNN,'g','linewidth',1.5);axis([1 256 80 150]);legend('y_{gt}','DnCNN');subplot(3,4,11)plot(t,ygt,'k','linewidth',2);hold on;plot(t,yFFDNet,'g','linewidth',1.5);axis([1 256 80 150]);legend('y_{gt}','FFDNet');subplot(3,4,12)plot(t,ygt,'k','linewidth',2);hold on;plot(t,yOur,'g','linewidth',1.5);axis([1 256 80 150]);legend('y_{gt}','Ours');
3 仿真结果


4 参考文献
[1]吴丽丽. 基于自适应小波与三边滤波的超声图像去噪算法[D]. 浙江工业大学, 2016.
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。
部分理论引用网络文献,若有侵权联系博主删除。
边栏推荐
- JVisualVM初步使用
- SQL调优指南笔记13:Gathering Optimizer Statistics
- gzip压缩解压缩
- The 2023 campus recruitment officially opened! Oceanbase would like to make an interview with you this spring
- Libmysqlclient A static library
- Ansible playbook and ansible roles (III)
- 疼痛分级为什么很重要?
- Lambda expression and flow optimization code
- Oracle数据库中查询执行计划的权限
- How to develop programming learning with zero foundation during college
猜你喜欢

NPOI 创建Word

MySQL architecture and basic management (II)

Design and practice of Hudi bucket index in byte skipping

2021 rust survey results released: 9354 questionnaires collected

MySQL master-slave replication

Ansible foundation and common modules (I)

SQL调优指南笔记8:Optimizer Access Paths

MySQL体系结构及基础管理(二)

Turing prize winner: what should I pay attention to if I want to succeed in my academic career?

MySQL介绍和安装(一)
随机推荐
OceanBase 社区版 OCP 功能解读
Producer consumer model under multithreading model
六月集训(第10天) —— 位运算
June training (day 11) - matrix
“Oracle数据库并行执行”技术白皮书读书笔记
Can tonghuashun open an account? Is it safe to open an account in tonghuashun? How to open a securities account
多线程模型下的生产者消费者模式
What is your understanding of thread priority?
Data batch writing
Xingda easy control ModbusRTU to modbustcp gateway
Role of volatile keyword
CVPR 2022 | 应对噪声标签,西安大略大学、字节跳动等提出对比正则化方法
June training (day 12) - linked list
How do complex systems detect anomalies? North Carolina UNCC and others' latest overview of graph based deep learning anomaly detection methods in complex distributed systems describes the latest prog
Cloning PDB with ADG standby
How to develop programming learning with zero foundation during college
[QNX hypervisor 2.2 user manual] 4.4 build host
Ansible foundation and common modules (I)
2023届校园招聘正式开启!OceanBase 想和你在这个春天约一场面试
SQL tuning guide notes 16:managing historical optimizer statistics