原文:
RGB-NIR Image Enhancement by Fusing Bilateral and Weighted Least Squares Filters
– 2017
WLS:
Edge-Preserving Decompositions for Multi-Scale Tone and Detail Manipulation
– 2008
将在文末提供所有论文原文及代码下载。
简介
本文利用双边滤波器和加权最小二乘滤波器对RGB图像和NIR图像进行融合,核心思想即提取NIR图像中的细节层,与之将RGB的基础层,即相对平滑的部分相加,得到融合后的图片。
对于BF和WLS不甚了解的,可以自行查找相关资料,加权最小二乘滤波WLS(weighted least squares)加上双边滤波,引导滤波是三种较为经典的边缘保持性滤波算法,其改进方法和相关资料也有很多。本文仅使用BF和WLS。WLS中的数学描述也值得品味,在此贴出几篇关于WLS的参考博文。
[1:https://blog.csdn.net/piaoxuezhong/article/details/78396498]
[2:https://blog.csdn.net/victoriaw/article/details/71171813]
实现
在这两个滤波器的支持下,本文的实现就较为简单了。作者将本文的方法称为
BFWLS
,本质上只是两种方法的结合。作者提出BF在某一尺度上具有很好的提取能力,而WLS在多尺度细节上的提取能力更强,综合两者的优点,可以提取更多潜在的细节。如下是作者在论文中贴出的操作流程。
此处,由于RGB图像是在YCbCr颜色空间上操作了,这里的Y代表了图像的亮度信息。因此,我们可以将NIR图像也视为强度信息或者亮度信息。后面用到的
d
d
d
指图像细节层(detail),
b
b
b
指基础层(base)。
Step1
:此处将NIR图像标记为
Y
n
i
r
Y_{nir}
Y
n
i
r
,分别用两个滤波器对NIR图像滤波,将会得到两张滤波后的平滑图像
Y
W
L
S
b
Y_{WLS}^b
Y
W
L
S
b
和
Y
B
F
b
Y_{BF}^b
Y
B
F
b
。而细节层的图像可以分别简单得通过原图减去基础层的图像得到,即
I
n
i
r
−
Y
?
b
I_{nir}-Y_?^b
I
n
i
r
−
Y
?
b
得到
Y
W
L
S
d
Y_{WLS}^d
Y
W
L
S
d
和
Y
B
F
d
Y_{BF}^d
Y
B
F
d
。对两个细节层做一次平均得到
Y
d
Y^d
Y
d
,这就是我们从NIR图像中提取出来的细节信息。
Step2
:将RGB图像转到YCbCr空间(
YCbCr
),单独拿出Y层,对其做一次WLS滤波,滤波结果为
Y
W
L
S
b
Y_{WLS}^b
Y
W
L
S
b
,与第一步得到的
Y
d
Y^d
Y
d
相加就是我们融合后新图像在YCbCr空间下的Y层。
Step3
:将新的Y层和原先的CbCr层重新组合并转化回RGB空间。就是本算法的结果,下面看一下融合效果。
结果
RGB:
NIR:
融合后:
对比:
可以明显得看到,远山和天空云朵的细节被增强了。
下载
原生链接好像挂了,以下是数据集的度盘链接,自取。如果用到请引用原文
Publications
Multi-spectral SIFT for Scene Category Recognition. M. Brown and S. Susstrunk.
International Conference on Computer Vision and Pattern Recognition (CVPR11). 2011.
链接:https://pan.baidu.com/s/1fouBwJVuIEmmuY_8YgyU-w
提取码:0916