用D4小波进行图像的离散小波变换

时间:2012-05-15 21:18:59

标签: image-processing wavelet dwt

我正在尝试使用D4小波编写前向小波变换。输入数据为24b /像素的彩色.bmp图像。 我采用的小波系数:

h0 = 0.48296
h1 = 0.83652
h2 = 0.22414
h3 = -0.12941

g0 = -0.12941
g1 = -0.22414
g2 = 0.83652
g3 = -0.48296

问题是,在转换过程中,我得到的值大于255或小于0。 我应该怎么做才能留在[0,255]范围内?

感谢。

2 个答案:

答案 0 :(得分:1)

小波变换的输出总是超出输入像素范围。大多数图像处理库(包括Intel IPPCUVILib将输出存储在32位浮点数中。所以你也应该将输出存储在一个更大的容器中。但是,在逆小波变换中,您始终可以将输出饱和到原始图像范围,在您的情况下为[0,255]

答案 1 :(得分:0)

您可以从滤波器系数中看到小波变换中存在负值 - 在近似值和细节系数中。

我可以想到一个小波对,其中近似系数将是非负的(如果输入信号/图像是):haar小波,

[h0 h1] = [1  1] / 2 

[g0 g1] = [1 -1] / 2

一般来说,细节系数仍然是部分负数,部分正数(你可能会发现单调递减的信号/图像,其中g总是非负的)。