【图像评价】图像去雾质量评价【含Matlab源码 066期】

本文介绍了使用Matlab进行图像去雾的技术,包括基于图像增强的Retinex方法和物理模型的He理论。重点讨论了图像质量评价,特别是PSNR和SSIM客观评价方法,以及深度学习驱动的DehazeNet在去雾领域的贡献。
摘要由CSDN通过智能技术生成

✅博主简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,Matlab项目合作可私信。
🍎个人主页:海神之光
🏆代码获取方式:
海神之光Matlab王者学习之路—代码获取方式
⛳️座右铭:行百里者,半于九十。

更多Matlab仿真内容点击👇
Matlab图像处理(进阶版)
路径规划(Matlab)
神经网络预测与分类(Matlab)
优化求解(Matlab)
语音处理(Matlab)
信号处理(Matlab)
车间调度(Matlab)

⛄一、简介

基于matlab图像去雾质量评价: 通过新增可见变比、平均梯度、饱和像素百分比三个指标评价去雾图像质量。

1 图像去雾
早期的雾天图像的去雾处理方法经过多年的发展,逐步演化成两类研究方向,从图像增强的角度来研究以及从大气成像的物理模型的角度来研究。

基于图像增强的去雾方法不考虑雾天成像的影响因素,从图像增强的角度增加图像对比度,模拟人类视觉感知,突出图像的细节以改善图像的视觉效果。Retinex就是一种常用的基于图像增强的去雾方法,其理论基础是图像的色感一致性。

基于物理模型的去雾方法研究大气散射模型,从理论上分析图像在雾的影响下的成像机理,通过构建相应的数学模型进行计算来去除雾气的影响,复原出清晰的图像效果。He等依据大气散射模型提出了暗原色先验理论来估计透射率,算法简单而且非常有效,极大地推动了该研究方向的发展。

随着深度学习理论的发展,通过构建深度网络,图像去雾处理有了更丰富的手段。Cai等提出一种端到端的去雾网络DehazeNet,对其中的卷积神经网络进行特殊设计来提取相关特征,使用局部极值操作抑制透射率的噪声,同时利用新的激活函数 (双边纠正线性单元) 提高透射率的精度,对基于深度学习的图像去雾起到了很好的推动作用。

2 图像质量评价
图像质量评价对图像处理算法的可行性分析以及某类算法达成效果的比较都起着非常重要的指导作用。随着图像处理技术的发展,对于图像质量评价的研究也日益深入,新的评价指标和评价算法不断涌现,共同推动了图像质量评价的进步。

图像质量评价的方法大致可分为两类:主观评价和客观评价[6]。主观评价是由参与者对图像质量进行直接评价,是图像质量评价最直观的方法。但由于个别人对于图像的理解差异性很大,主观评价方法如果要达到预期的评价效果,需要有多人的参与和判断,以群体的形式来消除个体差异性,这就导致主观评价方法受到很大的约束和限制,只能在某些特定的场合下采用。

客观评价通过建立数学模型来模拟人的视觉系统,根据数学公式的推导,采用相应的算法对图像质量进行评价。按照是否需要原始图像作为参考信息,客观评价方法又分为无参考 (No-reference, NR) 评价、部分参考 (Reduced-Reference, RR) 评价和全参考 (Full-Reference, FR) 评价三类。

常见的主观评价和客观评价的分类如图1所示。
在这里插入图片描述
图1 图像质量评价分类

在客观评价中的全参考评价模式下,关于原始图像和处理后的图像之间的比对,通常会采用峰值信噪比 (PSNR) 进行衡量。PSNR从统计学的角度来衡量原始图像和处理后图像的关系,计算原始图像和处理后图像的对应像素点灰度值之间的差异。对于尺寸为M×N的图像,PSNR定义如下:
在这里插入图片描述
其中,处理前图像在坐标空间 (i, j) 的灰度值使用R (i, j) 表示,处理后图像在坐标空间 (i, j) 的灰度值使用F (i, j) 表示。通过计算得出的PSNR值越大,表示处理后图像与原始图像之间的失真越小,图像处理后的质量越好。从公式 (1) 可以看出,PSNR计算非常简单,但是其仅仅是基于统计学的角度来考虑处理后图像和原始图像对应像素点灰度值之间的差异,忽略了图片内部像素点之间的关系,这就导致其会和主观评价产生一定的误差。

2004年,Wang等人提出了结构相似度 (SSIM) 方法,将图像内部的结构特征和图像的亮度、图像的对比度一起作为重要的参数。因为其考虑了图像的内部结构在人眼视觉上的差异,该方法能和主观评价取得较为一致的结果。假设原始图像和处理后图像分别定义为X和Y,则图像亮度信息L (X, Y) 、图像对比度信息C (X, Y) 和图像结构信息S (X, Y) 分别计算如下:
在这里插入图片描述
其中图像X的均值使用μX表示,图像Y的均值使用μY表示,图像X的标准差使用σX表示,图像Y的标准差使用σY表示,图像X与图像Y的协方差使用σXY表示,而公式中出现的C1、C2和C3是为计算的可靠性而定义的常数。综合公式 (2) 、公式 (3) 和公式 (4) ,定义两幅图像的SSIM如下:
在这里插入图片描述
其中α、β、γ是为了调整亮度信息、对比度信息和结构信息三者所占比重而设定的参数。通过以上公式计算出的SSIM (X, Y) 的取值在0和1之间,越接近1,表示处理后的图像和原始图像失真程度越小。

和PSNR进行对比,SSIM考虑了图像内部的结构相关信息,更加符合人类视觉对图像特征的理解,因此其应用更加广泛。

⛄二、部分源代码

%%%% Cleaning
clc
clear all
close all

%%%% Images reading: the input 2 images must be grayscale

NameOri=‘Original.pgm’;
%NameResto=‘Restored.pgm’;
NameResto=‘Restored2.pgm’;
%NameResto=‘Restored3.pgm’;
%NameResto=‘Restored4.pgm’;
%NameResto=‘Restored5.pgm’;

I1=imread(NameOri);
I1=double(I1);
% if the input image is a color image, use following line
% I1=double(rgb2gray(uint8(I1)));

[nl,nc]=size(I1);

R1=imread(NameResto);
R1=double(R1);
% if the input image is a color image, use following line
% R1=double(rgb2gray(uint8(R1)));

%%%% Figure 1
figure(1)
colormap gray
subplot(1,2,1)
imagesc(I1)
axis image
title(‘Original’)
subplot(1,2,2)
imagesc(R1)
axis image
title(‘Restored’)

function [Mask Crr]=functionContrastAt5PerCent(I1,S,percentage)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Inputs %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% I1 : Original image
% S : SubWindow size (default = 7)
% perCentage : Visibility percentage (default = 5)
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Outputs %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Mask : Mask of the visibility contrast > percentage
% Crr : valeur du contraste visibile (>percentage)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

if nargin<1
error(‘not enough argument’)
end
if nargin<2
S=7;
end
if nargin<3
percentage=5;
end

[nl,nc,dd]=size(I1);

%%% 4-neighborhood pixels
seh=[0 1 0;0 1 0;0 0 0];
seg=[0 0 0;1 1 0;0 0 0];

%%% minimum and maximum calculation
I1pad= padarray(I1,[3 3],‘symmetric’);

Igmin11=imerode(I1pad,seg,‘full’);%腐蚀
Ihmin11=imerode(I1pad,seh,‘full’);
Igmax11=imdilate(I1pad,seg,‘full’);%膨胀
Ihmax11=imdilate(I1pad,seh,‘full’);

Igmin1=Igmin11(3+(1:nl),3+(1:nc));
Ihmin1=Ihmin11(3+(1:nl),3+(1:nc));
Igmax1=Igmax11(3+(1:nl),3+(1:nc));
Ihmax1=Ihmax11(3+(1:nl),3+(1:nc));

%%% pads image and minimum and maximum matrix
I1pad= padarray(I1,[S S],‘symmetric’);

Igmin1pad= padarray(Igmin1,[S S],‘symmetric’);
Ihmin1pad= padarray(Ihmin1,[S S],‘symmetric’);
Igmax1pad= padarray(Igmax1,[S S],‘symmetric’);
Ihmax1pad= padarray(Ihmax1,[S S],‘symmetric’);

%%% Initialization
Is=zeros(S,S);
Mask=false(nl+2S,nc+2S);
Crr=zeros(nl+2S,nc+2S);
s=1;
percentage=percentage/2;

h = waitbar(0,‘Please wait…’);

%%% subwindow of size S*S
for ii=1:round(S/2):nl
for jj=1:round(S/2):nc

    Is=double(I1pad(S+ii:2*S+ii-1,S+jj:2*S+jj-1));

    Isgmin=double(Igmin1pad(S+ii:2*S+ii-1,S+jj:2*S+jj-1));
    Ishmin=double(Ihmin1pad(S+ii:2*S+ii-1,S+jj:2*S+jj-1));
    Isgmax=double(Igmax1pad(S+ii:2*S+ii-1,S+jj:2*S+jj-1));
    Ishmax=double(Ihmax1pad(S+ii:2*S+ii-1,S+jj:2*S+jj-1));

    %%% horizontal and vertical contrasts
    Cgxx1=zeros(1,S^2);
    Chxx1=zeros(1,S^2);

    Ismin=round(min(Is(:)));
    Ismax=round(max(Is(:)));

    if(Ismin<=0) Ismin=1;end
    if(Ismin>256) Ismin=256;end
    if(Ismax<=0) Ismax=1; end
    if(Ismax>256) Ismax=256;end

    Fcube=false(S,S,Ismax-Ismin+1);

    C=zeros(1,Ismax);

    G=zeros(1,Ismax);

    for s=Ismin:Ismax  %%% we vary the threshold

        Fg=0;   %%% Pixels cardinal separated by s
        pg=1;   %%% Contrast indice
        Fh=0;
        ph=1;

⛄三、运行结果

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

⛄四、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1]韦忠亮,许光宇,张顺香.基于MATLAB的去雾图像质量评价系统[J].黑龙江工业学院学报(综合版). 2019,19(08)

3 备注
简介此部分摘自互联网,仅供参考,若侵权,联系删除

🍅 仿真咨询
1 各类智能优化算法改进及应用

生产调度、经济调度、装配线调度、充电优化、车间调度、发车优化、水库调度、三维装箱、物流选址、货位优化、公交排班优化、充电桩布局优化、车间布局优化、集装箱船配载优化、水泵组合优化、解医疗资源分配优化、设施布局优化、可视域基站和无人机选址优化

2 机器学习和深度学习方面
卷积神经网络(CNN)、LSTM、支持向量机(SVM)、最小二乘支持向量机(LSSVM)、极限学习机(ELM)、核极限学习机(KELM)、BP、RBF、宽度学习、DBN、RF、RBF、DELM、XGBOOST、TCN实现风电预测、光伏预测、电池寿命预测、辐射源识别、交通流预测、负荷预测、股价预测、PM2.5浓度预测、电池健康状态预测、水体光学参数反演、NLOS信号识别、地铁停车精准预测、变压器故障诊断

3 图像处理方面
图像识别、图像分割、图像检测、图像隐藏、图像配准、图像拼接、图像融合、图像增强、图像压缩感知

4 路径规划方面
旅行商问题(TSP)、车辆路径问题(VRP、MVRP、CVRP、VRPTW等)、无人机三维路径规划、无人机协同、无人机编队、机器人路径规划、栅格地图路径规划、多式联运运输问题、车辆协同无人机路径规划、天线线性阵列分布优化、车间布局优化

5 无人机应用方面
无人机路径规划、无人机控制、无人机编队、无人机协同、无人机任务分配

6 无线传感器定位及布局方面
传感器部署优化、通信协议优化、路由优化、目标定位优化、Dv-Hop定位优化、Leach协议优化、WSN覆盖优化、组播优化、RSSI定位优化

7 信号处理方面
信号识别、信号加密、信号去噪、信号增强、雷达信号处理、信号水印嵌入提取、肌电信号、脑电信号、信号配时优化

8 电力系统方面
微电网优化、无功优化、配电网重构、储能配置

9 元胞自动机方面
交通流 人群疏散 病毒扩散 晶体生长

10 雷达方面
卡尔曼滤波跟踪、航迹关联、航迹融合

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值