主要内容

imreducehaze

减少大气雾霾

描述

例子

JTl] = imreducehaze(减少大气雾霾在彩色或灰度图像.该函数返回去雾化后的图像J,估计T每个像素的雾霾厚度,以及估计的大气光l

___] = imreducehaze(另外指定要去除的雾霾量。

例子

___] = imreducehaze(___名称,值使用名称-值参数更改去雾算法的行为。

例子

全部折叠

把模糊的图像读入工作空间。

A = imread(“foggysf1.jpg”);

减少雾霾和显示结果旁边的原始图像在蒙太奇。

B =减霾(A);蒙太奇({B})标题(“雾霾图(左)与减霾图(右)”

图中包含一个轴对象。标题为Hazy Image(左)和Reduced Haze Image(右)的坐标轴对象包含一个Image类型的对象。

把模糊的图像读入工作空间。

A = imread(“foggysf2.jpg”);

减少90%的雾霾使用approxdcp方法。

B = imreducehaze(A,0.9,“方法”“approxdcp”);

以蒙太奇方式显示原始雾霾图像和减少雾霾的图像。

蒙太奇({B})

图中包含一个轴对象。axis对象包含一个image类型的对象。

阅读和显示一个模糊的图像。

A = imread(“foggyroad.jpg”);imshow (A)标题(“朦胧的形象”

图中包含一个轴对象。标题为Hazy Image的坐标轴对象包含一个Image类型的对象。

使用默认参数值减少图像中的雾霾。返回雾霾厚度的估计值。

[~,T] = imreducehaze(A);

显示雾霾厚度测量。

imshow (T)标题(“霾厚度”

图中包含一个轴对象。标题为Haze Thickness的坐标轴对象包含一个图像类型的对象。

雾霾厚度T提供深度的粗略近似D场景,定义到一个未知的乘法因子。添加每股收益为了避免日志(0)

D = -log(1-T+eps);

以假颜色显示估计深度。

imshow (D,[])标题(“深度估计”) colormap

图中包含一个轴对象。标题为Depth Estimate的axes对象包含一个image类型的对象。

输入参数

全部折叠

模糊图像,指定为RGB或灰度图像。

数据类型:||uint8|uint16

要去除的雾霾量,指定为范围[0,1]中的数字。当值为1imreducehaze减少最大数量的雾霾。当值为0imreducehaze不减少雾霾和输入图像不变。较大的值会导致更严重的颜色失真。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

名称-值参数

指定可选参数对为Name1 = Value1,…,以=家,在那里的名字参数名称和价值对应的值。名称-值参数必须出现在其他参数之后,但对的顺序无关紧要。

例子:B = imreducehaze(A,0.9,method="approxdcp");利用近似暗通道先验方法减少雾霾。

在R2021a之前,使用逗号分隔每个名称和值,并将其括起来的名字在报价。

例子:B = imreducehaze(A,0.9,"method","approxdcp");

用于减少雾霾的技术,指定为以下值之一:

  • “simpledcp”-简单的暗通道先验方法[2].该技术使用每像素暗通道估计雾霾和四叉树分解估计大气光。

  • “approxdcp”-近似暗通道先验法[1].该技术在计算暗通道时同时使用像素块和空间块,并且不使用四叉树分解。

有关更多信息,请参见算法

数据类型:字符|字符串

将被视为雾霾的最大值,为RGB图像指定为1 × 3的数值向量,为灰度图像指定为数值标量。取值范围必须为[0,1]。大气光值大于0.5往往能得到更好的结果。

如果您没有指定AtmosphericLight,则imreduzehaze函数根据的值估计值方法

数据类型:

对比增强技术,具体为“全球”“提升”,或“没有”

数据类型:字符|字符串

应用于后处理的逐像素增益量,指定为范围(0,1]中的正数。这个论点只有在以下情况下才成立万博1manbetxContrastEnhancement指定为“提升”

数据类型:

输出参数

全部折叠

去雾图像,作为与输入雾图像大小相同的数字数组返回

雾霾厚度估计在每个像素,返回作为一个数字数组。

估计的大气光,作为数字数组返回。l表示最亮的非镜面霾的值。

算法

描述模糊图像的模型

I(x) = J(x)T(x) + L(1-T(x))
是观测到的强度,J是景色的光辉,l大气是光,和T是一种传输图,描述到达相机的光的部分。

去雾算法恢复场景亮度(去雾图像)J从透射图和大气光的估计,根据:

J(x) = (I(x)-A)/(max(t(x),t0)) + A

imreducehaze使用两种不同的去雾算法,simpledcp而且approxdcp.这些方法都依赖于暗通道先验,该方法是基于对非雾霾户外场景图像的观察,通常在一个或多个颜色通道中包含一些低信号的像素。这些方法的不同之处在于他们如何估计暗通道先验和大气光。

的去雾算法imreducehaze以下五个步骤:

  1. 估算大气光l使用暗通道先验。

  2. 估计传播图T

  3. 改进估计的传输图。

  4. 恢复映像。

  5. 执行可选的对比度增强。

参考文献

[1]贺,开明。“使用暗通道先验去除单幅图像雾霾。”论文,香港中文大学.2011.

[2] Dubok等。“基于图像熵和信息保真度的单幅图像去雾”ICIP.2014,第4037-4041页。

扩展功能

版本历史

在R2017b中引入

全部展开