MATLAB数字图像去雾处理系统

一、课题实现的功能

由于大气的散射作用,雾天的大气退化图像具有对比度低、景物不清晰的特点,给交通系统及户外视觉系统的应用带来严重的影响。但由于成像系统聚焦模糊、拍摄场景存在相对运动以及雾天等不利环境,使得最终获取的图像往往无法使用。为了解决这一问题,设计图像复原处理软件。

二、设计方案

设计原理

在雾、霾等天气条件下, 大气中悬浮的大量微小水滴、气溶胶的散射作用导致捕获的图像严重降质,随着物体到成像设备的距离增大, 大气粒子的散射作用对成像的影响逐渐增加. 这种影响主要由两个散射过程造成: 1) 物体表面的反射光在到达成像设备的过程中, 由于大气粒子的散射而发生衰减;2) 自然光因大气粒子散射而进入成像设备参与成像. 它们的共同作用造成捕获的图像对比度、饱和度降低, 以及色调偏移, 不仅影响图像的视觉效果, 而且影响图像分析和理解的性能.

在计算机视觉领域中, 常用大气散射模型来描述雾、霾天气条件下场景的成像过程.Narasimhan 等给出雾、霾天气条件下单色大气散射模型(Monochrome atmospheric scat-tering model), 即窄波段摄像机所拍摄的图像灰度值可表示为

17c26e5f8487e672444d2a0a4eacb3fa.png

式中, x 为空间坐标, A 表示天空亮度(Skylight), ρ为场景反照率, d 为场景的景深, β为大气反射系数。图像去雾的过程就是根据获得的有降质的图像,即

I(x)来推算出ρ的过程。

但由于该物理模型包含3 个未知参数, 从本质上讲, 这是一个病态反问题.

在只有单幅图像的条件下,我们可以考虑用假设以及推算的方式使其中的几个量固定,然后求解。

设计方案

白平衡

WP (White point) 算法, 也称为Max-RGB 算法, 利用R、G、B 颜色分量的最大值来估计光照的颜色。我们用天空亮度A来取代最大值。对于A,如果直接用图像中最亮的灰度估计的话会受到高亮噪声或白色物体的干扰,因此我们首先对图像颜色分量进行最小滤波,然后选择阀值为,大于此值的认定为天空区域,然后取平均值为我们估计的天空亮度A。然后方程(1)变为

67740b2ad8e8599777d5fcfaf598c487.png


估计大气耗散函数

cec7a5bd61d1668d3c2c14e34f5dcbeb.png

三、设计的步骤和结果

原图像与直方图

global im;
global orig;
[filename, pathname]=uigetfile(['*.jpg'],'insert image');
im=[pathname filename];
orig = imread(im);
Q = rgb2gray(orig);
figure; 
subplot(1, 2, 1); imshow(orig); title('原图像')
subplot(1, 2, 2); imhist(Q, 64); title('原图像直方图')


a216435c4c8d068c4a2780bf09949589.png


原图像与均衡后图像

global orig;
global U;
I = rgb2hsv(orig);
H = I(:,:,1);
S = I(:,:,2);
V = I(:,:,3);
M = histeq(S); % 对饱和度直方图均衡化
N = histeq(V); % 对亮度直方图均衡化
U = hsv2rgb(H, M, N);
figure; 
subplot(2, 2, 1); imshow(orig); title('原图像')
subplot(2, 2, 2); imshow(U); title('均衡后图像')
Q = rgb2gray(orig);
W = rgb2gray(U);
subplot(2, 2, 3); imhist(Q, 64); title('原图像直方图')
subplot(2, 2, 4); imhist(W, 64); title('均衡变换后的直方图')


517a3dfefca6754b9627b3dce1f9a045.png


原图与去雾图像对比

global im; 
im1=double(imread(im))/;
sv=2*floor(max(size(im1))/25)+1;
res=visibresto1(im1,sv,,-1);
figure;imshow([im1, res],[0,1]);


875c296b0b19db40575c394f62c921fb.png




d93ddee4803139b63664c7a31c7bf224.png

  • 0
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

你的matlab大师

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

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

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

打赏作者

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

抵扣说明:

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

余额充值