函数 > 图像处理 > 变换域 > 示例:小波变换滤波
  
示例:小波变换滤波
使用 wave2diwave2d 函数分别计算 n 阶小波变换及其逆变换。所使用的小波是源于 Burt-Adelson 拉普拉斯金字塔的双正交小波基。
使用 wavescale 函数在变换域中更好地查看图像。
* 
使用小波变换表示图像有时比使用标准傅立叶变换更为简洁。
有关使用此示例的信息,请参考 关于图像处理示例
计算 n 阶小波变换
1. 读入木星紫外线图片的蓝色子图像。
单击复制此表达式
(jupiter2.gif)
2. 提取并显示压缩 3 色矩阵的第 3 个颜色分量。
单击复制此表达式
单击复制此表达式
(jup2_ext3.bmp)
3. 设置阶数,然后应用变换。
单击复制此表达式
单击复制此表达式
单击复制此表达式
单击复制此表达式
(jup2_scaled.bmp)
您所看到的是典型的小波变换:该区域被分成四个不同的区域,在图像的水平和竖直方向上分别对应于低通和带通滤波的不同组合。仅左上角区域 (低通/低通部分) 有意义,这是由变换图像该部分中的系数所造成的,该部分的系数往往大于其他部分的系数,因此在缩放之后掩盖了较小的系数。要对此屏蔽效果进行修复,需要进行例行处理,即独立于其他子图像而单独缩放变换中的每个子图像。
4. 应用反函数,然后校验重建的图像是否与原始图像相同。
单击复制此表达式
单击复制此表达式
单击复制此表达式
(jup2_rabs.bmp)
在查看前取重建图像的绝对值。即使小波变换理论上可确保获得完美的重建图像,但仍会有因计算机的舍入而造成的误差。
5. 校验舍入误差是否很小。
单击复制此表达式
单击复制此表达式
由于小波变换既具有正值也具有负值,因此在查看前进行重新调整会很有帮助。但是,这样做经常会导致信息隐藏,如上面缩放后的变换图像所示。
在变换域中查看图像
1. 应用 wavescale 函数以矢量化 N
单击复制此表达式
2. 缩放并显示结果图像。
单击复制此表达式
单击复制此表达式
(jup2_scaled2.bmp)
您可以清楚地看到保持子图像间的独立性对于显示结果的改善。如果提高了小波变换的阶数,则使用函数 wavescale 来代替 scale 会使效果变得更加明显。