我正在尝试使用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]范围内?
感谢。
答案 0 :(得分:1)
小波变换的输出总是超出输入像素范围。大多数图像处理库(包括Intel IPP和CUVILib将输出存储在32位浮点数中。所以你也应该将输出存储在一个更大的容器中。但是,在逆小波变换中,您始终可以将输出饱和到原始图像范围,在您的情况下为[0,255]
答案 1 :(得分:0)
您可以从滤波器系数中看到小波变换中存在负值 - 在近似值和细节系数中。
我可以想到一个小波对,其中近似系数将是非负的(如果输入信号/图像是):haar小波,
[h0 h1] = [1 1] / 2
和
[g0 g1] = [1 -1] / 2
一般来说,细节系数仍然是部分负数,部分正数(你可能会发现单调递减的信号/图像,其中g总是非负的)。