我刚刚完成了我的小波理论,并决定使用 matlab 进行测试。但是,我无法解释 dwt2 和 idwt2 的结果。当我使用 imshow 显示我的结果时,我没有得到任何图像。
[ca,ch,cv,cd] = dwt2(I_gray,'haar');
I_regray = idwt2(ca,ch,cv,cd,'haar');
figure(1);
imshow(I_regray);
figure(2);
imshow(ca);
这两个数字都是空白的。我也无法查看缩小的图像。你能告诉我正确的查看方式吗?matlab 帮助讲述了某种绘图方法。不过我不清楚。请帮助我。如果这个问题很简陋,我深表歉意。提前谢谢。
您应该读取图像并将其转换为双精度。然后打电话给dwt2
.
dwt2
的结果将是双倍的,因此请检查这些结果的范围。如果你有超出 [0,1] 范围的内容,那么你需要将其转换为 uint8。