本文主要阐明两个问题,第一,什么是拉普拉斯金字塔,第二,如何用拉普拉斯金字塔做图像的细节增强。
1、拉普拉斯金字塔是如何构建的
G0是原始图像,Gn是上一层Gn-1层图像高斯模糊下采样的图像。在构建拉普拉斯金字塔时,最顶层LPn就是高斯金字塔的最顶层Gn。其他层图像LPn-1是Gn-1图像减去Gn插值后的图像,插值后图像大小与Gn-1相同。那么问题来了,为什么这样就是拉普拉斯金字塔呢,好像跟拉普拉斯变换也没有什么关系嘛。
首先,拉普拉斯变换其主要目标是得到图像的高频细节信息,当Gn-1层经过插值后,虽然图像的尺寸和Gn相同,但是,相比于Gn层图像,图像的细节信息明显丢失了。那么,当用Gn减去插值后的图像时,剩下的就是Gn的高频细节信息。用此来代替拉普拉斯变换结果。
其次,为什么要代替,而不是直接用拉普拉斯变换的结果呢?
个人觉得有几点,一,Gn层图像减去Gn-1差值的结果是深度方向的差分,类似于平面上相邻像素的差分。其结果具有相似性。第二,直接用拉普拉斯变换不能体现不同分辨率下信息。
2、如何用构建好的拉普拉斯金字塔增强图像
根据第一节的描述,可以得到拉普拉斯金字塔的构建公式为:
LPn=Gn—G’n+1
LPN =GN
反过来,
GN=LPN
Gn=LPn+G’n+1
也就是说,根据拉普拉斯金字塔,可以逐层恢复高斯金字塔,最终可以得到原始图像G0。
图像增强的目的就是对细节等进行突出,这就需要在不同频率层上增强细节,对应的也就是金字塔的不同层。
现在,假设有两幅图像A和B,我们想融合为一幅图像,同时增强细节。就可以采用如下的步骤:
第一步,将两幅图像分别做n变换,得到拉普拉斯金字塔。拉普拉斯金字塔最顶层的图像分别为LPAN和LPBN。取一个大小为m*m的邻域,分别计算LPAN和LPBN中,以每个像素为中心,邻域大小为m*m的梯度均值。由于梯度反映了图像中细节变化和纹理变化特征,那么,梯度越大,图像也就越清晰。所以,对于最终融合图像LPN中
(i,j)位置处的值就可以用如下的公式来表示:
LPN(i,j)=LPAN(i,j) if LPAN(i,j) >LPBN(i,j)
LPN(i,j)=LPBN (i,j) if LPBN (i,j) >LPAN (i,j)
这样,拉普拉斯金字塔最上面的就搞定了。
第二步,对于其他层的图像,用相同的方法,就可以得到最终要融合图像的拉普拉斯金字塔的各层图像。
第三步,根据拉普拉斯金字塔,由上面的重构公式进行重构。另外,对于多幅图像的情况,可以选择一幅图像作为目标图像,先构建此图像的高斯金字塔,得到GN,然后,根据融合的拉普拉斯金字塔,得到最终增强的图像。