图像增强算法:SSR,MSR,MSRCR

Retinex算法的改进:SSR -> MSR -> MSRCR。

 Retinex是一种常用的建立在科学实验和科学分析基础上的图像增强方法。
 Retinex模式是建立在以下三个假设之上的:

  1. 真实世界是无颜色的,我们所感知的颜色是光与物质的相互作用的结果。我们见到的水是无色的,但是水膜—肥皂膜却是显现五彩缤纷,那是薄膜表面光干涉的结果。
  2. 每一颜色区域由给定波长的红、绿、蓝三原色构成的;
  3. 三原色决定了每个单位区域的颜色。

 不同于传统的线性、非线性的只能增强图像某一类特征的方法,Retinex可以在动态范围压缩、边缘增强和颜色恒常三个方面达到平衡,因此可以对各种不同类型的图像进行自适应的增强。

SSR(Single Scale Retinex)

 SSR认为一副图像S可以分解为反射图像R 和 入射图像L(也称亮度图像):
图像增强算法:SSR,MSR,MSRCR_第1张图片
 如上图,入射光照在物体上,通过反射物体的反射形成反射光进入人眼,即可看到成像图像。
用公式表示为:
在这里插入图片描述
入射图像L:它决定的是图像中像素所能达到的动态范围。
反射图像R:它是表示物体的反射性质的图像,反映图像的内在属性。
SSR的思想:在原始图像中,通过某种办法抑制入射图像L的影响,尽可能保留反映物体本质特征的反射属性。
 SSR假设原始图像中光照图像是缓慢变换的,即入射图像L可以看做图像的低频成分(使用高斯低通滤波将低频成分滤出)。用原始图像减去入射图像即可得到表明图像内在属性的发射图像。
即如下公式所示(so easy):
图像增强算法:SSR,MSR,MSRCR_第2张图片
公式说明:

  1. 公式中的F(x, y) * S(x, y)这个卷积运算从物理意义上说可以表示为通过计算图像中像素点与周围区域的加权平均来估计图像中照度的变化。(即得到亮度图像L—>低频成分)其实就是高斯模糊咯,得到低频成分。
  2. 先将像素值转到对数域是为了方便计算,最后计算完再转为实数域即可。
  3. 若为多通道图像,则每个通道都会有一个r(x, y)

 去除了原始图像中的低频成分,自然而然剩下的就是原始图像中的高频成分。我们知道,在人类的视觉系统中,对高频信息如边缘等是很敏感的。所以,SSR能够较好的增强图像中的高频信息

 由于SSR采用了高斯核函数的特点,所以增强后的图像对动态范围大幅度压缩和对比度增强不能同时保证。为了平衡两者,需要选择一个较为恰当的尺度c,一般取值为80-100。

 SSR小结:

1.将图像进行log变换
2.然后将log图像进行高斯模糊 (即得到低频成分)
3.利用原图和模糊之后的log图像做差分

MSR(Multi Scale Retinex)

 在SSR基础上改进,能够保持图像的高保真度和对图像的动态范围进行压缩。在一定情况下,MSR可实现色彩增强、颜色恒常性、局部动态范围压缩、全局动态范围压缩。
其实就是将多个SSR做平均,没啥特别的。区别在于高斯模糊部分选择了不同的sigma。
图像增强算法:SSR,MSR,MSRCR_第3张图片
在这里插入图片描述
 此外,实验表明,ci即上面说的sigma分别取15,80,120可以得到较好效果。

MSR小结:

1.原始图像进行三次SSR
2.高斯模糊选择15,80,200作为高斯模糊sigma参数
3.对三次的SSR结果做平均即为MSR图像

说个问题:

 一般的Retinex算法在对光照图像估计的时候,都会假设初始光照图像是缓慢变换的,即光照图像是平滑的。即图像中的低频成分。但实际并非如此,在亮度相差很大区域的边缘处,图像的光照变化并不平滑。此时,Retinex算法在这个亮度差异很大的区域会产生光晕效果。此外,边缘锐化不足,阴影边界突兀,部分颜色发生扭曲,纹理不清晰,高光区域细节信息并没有得到明细改善,对高光区域的敏感度小等也是较为常见的缺点。

MSRCR(Multi-Scale Retinex with Color Restoration)

 MSRCR在MSR的基础上,加入了色彩恢复因子C来调节由于图像局部区域对比度增强而导致颜色失真的缺陷。

对MSR的结果做了色彩平衡,归一化,增益和偏差线性加权。

 MSRCR的参数说明:

{
“sigma_list”: [15, 80, 200],多尺度高斯模糊sigma值
“G” : 5.0,增益
“b” : 25.0,偏差
“alpha” : 125.0,受控制的非线性强度
“beta” : 46.0,增益常数
“low_clip” : 0.01,
“high_clip” : 0.99
}

 公式如下:
图像增强算法:SSR,MSR,MSRCR_第4张图片
在这里插入图片描述

图像增强算法:SSR,MSR,MSRCR_第5张图片
总结MSRCR算法流程:

1.使用高斯函数对原始图像进行低通滤波
2.将原始图像与滤波后图像转换到对数域做差(即将图像中的低频成分减掉),得到对数域的反射图像
3.多尺度重复1,2步骤,将对数域的反射图像在像素层面上进行图像求和(即MSR的步骤),得到MSR结果

4.颜色恢复:
4.1.在通道层面,对原始图像求和,作为各个通道的归一化因子
4.2.权重矩阵归一化,并转换到对数域,得到图像颜色增益。(原始图像乘以颜色修复的非线性因子,这里取2.0,再除以归一化因子)
4.3.MSR结果按照权重矩阵与颜色增益重新组合(连乘)

5. 图像恢复:颜色恢复后的图像乘以图像像素值改变范围的增益,加图像像素值改变范围的偏移量,得到最终结果

 MSRCR算法利用彩色恢复因子C,调节原始图像中3个颜色通道之间的比例关系,从而把相对较暗区域的信息凸显出来,达到了消除图像色彩失真的缺陷。
处理后的图像局部对比度提高,亮度与真实场景相似,在人们视觉感知下,图像显得更加逼真。

 注:对于MSRCR,尺度数对结果的影像不是特别大,但是随着尺度数的增加,算法耗时会线性增加,因此,一般尺度数取3就较为合适了。

你可能感兴趣的:(图像处理,图像处理,人工智能)