基于小波的融合(wavelet)
小波变换的固有特性使其在图像处理中有如下优点:完善的重构能力,保证信号在分解过程中没有信息损失和冗余信息;把图像分解成平均图像和细节图像的组合,分别代表了图像的不同结构,因此容易提取原始图像的结构信息和细节信息;小波分析提供了与人类视觉系统方向相吻合的选择性图像。
离散小波变换(Discrete Wavelet Transform, DWT)。DWT的函数基由一个称为母小波或分析小波的单一函数通过膨胀和平移获得。因而,DWT同时具有时域和频域分析能力,与一般的金字塔分解相比,DWT图像分解具有以下优势:
1)具有方向性,在提取图像低频信息的同时,还可获得了水平、垂直和对角三个方向的高频信息;
2)通过合理的选择母小波,可使DWT在压缩噪声的同时更有效的提取纹理、边缘等显著信息;
3)金字塔分解各尺度之间具有信息的相关性,而DWT在不同尺度上具有更高的独立性。
DWT 融合算法基本思想与金字塔算法一致,即:首先对源图像进行小波变换,然后按照一定规则对变换系数进行合并;最后对合并后的系数进行小波逆变换得到融合图像。由于不具有移不变性,基于DWT的标准小波融合算法获取的融合图像通常会存在“振铃”干扰;特别在处理连续的图像序列时,融合结果会出现明显的闪烁和抖动现象。
1、原理阐述
(1)小波的简单计算原理
[x0,x1,x2,x3]=[90,70,100,70] 为达到压缩 我们可取 (x0+x1)/2 (x0-x1)/2 来代表 x0,x1 这样 [90,70] 可表示为 [80,10] 80即平均数 10是小范围波动数(可想象出一种波的形状) [90,70] –〉[80,10] , [100,70] –〉 [85,15] 可以想象80 和85 都是局部的平均值反映大的总体的状态,是变化相对缓慢的值,可以认为他们是低频部分的值。 而10、15是小范围波动的值局部变换较快,可以认为他们是高频部分的值。
1、 FIRST:把[90,70,100,70] 写成 [80,85,10,15] 即把低频部分写在一起(记频率L) 高频部分写在一起(H)
2、 SECOND:而[80,85] 又可经同样的变换–> [82.5, -2.5] 这样 82.5表示更低频的信息(记频率LL) -2.5则表示了频率L上的波动
3、最后[90,70,100,70] –〉[82.5, -2.5, 10, 15] 这样信息就可被压缩了(数字范围小了)
现在再来扩展一下 [90,70]—> [80,10] 写成矩阵 [90,70] * [1/2, 1/2]
[1/2 ,-1/2]
矩阵[1,1;1,-1]/2为haar转换矩阵。
如果是[90,70,100,70]第一步就可以写成矩阵M1:[0.5,0,0.5,0; 0.5,0,-0.5,0; 0,0.5,0,0.5;0,0.5,0,-0.5],第二步只对低频L操作,高频不变可写成M2:
[1/2, 1/2, 0, 0; 1/2, -1/2, 0, 0; 0, 0, 1, 0 ;0, 0, 0, 1]。另M= M1*M2,可得到4*4的点阵操作。
第一步运算后原图像缩小至左边一半了,右边的是对应波动信息;
第二步运算后图像又缩小至左边一半了,对应波动信息。
对一幅图像先进行行变化,在进行列变化,那么就是小波变化了。
LL:水平低频,垂直低频
LH:水平低频,垂直高频
HL:水平高频,垂直低频
HH:水平高频,垂直高频
其中,L表示低频,H表示高频,下标1、2表示一级或二级分解。在每一分解层上,图像均被分解为LL,LH,HH和HL四个频带,下一层的分解仅对低频分量LL进行分解。这四个子图像中的每一个都是由原图与一个小波基函数的内积后,再经过在x和y方向都进行2倍的间隔采样而生成的。这是正变换,也就是图像的分解;逆变换,也就是图像的重建。是通过图像的增频采样和卷积来实现的。这里有个问题进过处理后,数据或超出255或者出现负数,需要将其归一化到0-255之间,方可显示图像。这里介绍的只是简单的小波计算,小波计算的而不同就在于选取不同的小波系数,一般有haar小波,sym2小波等。
资料:http://www.blogbus.com/shijuanfeng-logs/221385402.html
2、融合规则
规则一:系数绝对值较大法
该融合规则适合高频成分比较丰富,亮度、对比度比较高的源图像,否则在融合图像中只保留一幅源图像的特征,其他的特征被覆盖。小波变换的实际作用是对信号解相关,并将信号的全部信息集中到一部分具有大幅值的小波系数中。这些大的小波系数含有的能量远比小系数含有的能量大,从而在信号的重构中,大的系数比小的系数更重要。
规则二:加权平均法
权重系数可调,适用范围广,可消除部分噪声,源图像信息损失较少,但会造成图像对比度的下降,需要增强图像灰度。
规则三:局部方差准则
设A(x,y)和B(x,y)分别为高频子图像数据值,F(x,y)为相应高频子图像融合值,将A(x,y)和B(x,y)分成若干个M×N子块图像。对每个子块图像进行数值分布统计,计算其方差。确定A和B图像每个子块图像加权系数K1和K2。如果A图像子块方差大于B图像子块方差,则K1≥K2,否则K1<K2。确定每个子块图像的数据融合数值为:F(i,j)=K1A(i,j)+K2B(i,j)。
3、融合应用
若对二维图像进行N层的小波分解,最终将有(3N+1)个高低频带,其中包含3N个高频带和一个低频带。图像融合的基本步骤如下。
1)对每一源图像分别进行小波分解,建立图像的小波金字塔分解。
2)对各分解层分别进行融合处理,采用不同的融合算子对各分解层的不同频率分量进行融合处理,最终得到融合后的小波金字塔。低频:加权平均,高频:绝对值取大。
3)对融合后所得的小波金字塔进行小波逆变换,所得到的重构图像即为融合后的图像。
图像的低频部表现的是图像的概貌和平均特性;图像的高频反应的是图像的细节特性,如图像的边缘、区域边界等。
融合规则:
基于局部方差的融合规则:在邻域W中,图像I在以(i ,j)为中心点的局部方差定义:
式中为图像I 的均值,M,N 分别为局部区域的行数和列数,这里取局部区域为3*3,基于局部方差的融合方式常用的方法是选择法,即通常说的局部方差取大法。方差选择法的融合规则:
L为分解尺度, 表示图像小波系数, 表示图像小波系数, =d=H,V,D分别表示的是水平、垂直、对角高频分量。如果两幅图片直接使用局部方差法进行融合,局部方差相差较大时,采用局部方差取大法能够比较完整的存储图像的微小细节。一旦局部方差相差很小时,局部方差取大法会使图像细节失真。
图像融合有一个重要的目的,即将图像的边缘、细节等都包含到融合图像中。一种方法是将图像的边缘提取出来,将它应用到相应的融合算法中。图像边缘检测的最好的算子是 canny 算子,将canny算子和局部方差的融合规则的算法相结合,提出了一种新的改进融合方法。融合步骤如下:
(1)小波分解。对于图像 A,B 分别进行 3 层小波分解,得到低频分量AA、AB和高频分量DLH,DLV,DLD。
(2)低频融合。对低频分量AA 和AB 所有的像素点计算其局部方差Var(i ,j)AA和 Var(i ,j)BA,然后进行归一化:
然后,利用归一化的局部方差,按照如下:
(3)高频融合。在图像 A 和 B 的每一个高频分DLA,DLB中,对每一个高频分量用 canny 算子进行边缘提取,再对边缘图像的每一个元素计算局部方差:
其中,表示源图像的第l层经 canny 算子处理的高频系数,为源图像的第l层经 canny 算子提取后的均值,是对源图
像的第l层高频分量进行边缘提取后求得的局部方差。
(4)小波重构。对融合后的系数进行小波重构,得到融合后的图像。
附:这里介绍的小波是最简单的形式,融合规则也比较常用,很多红外和可见的融合也都用到了这里的规则,所以,实现这里面的算法来适用我们的应用。