本文,用python实现图像的小波变换,并分离出高频信息和低频信息。
工具/原料
1
电脑
2
anaconda(python3.6)
方法/步骤
1
读取灰度图:import cv2from pywt import dwt2, idwt2img = cv2.imread('0.png',0)m,n=img.shape图像是512*512 dps的。
2
对img进行haar小波变换:p,(q,r,s)=dwt2(img,'haar')显示小波变换之后,p对应的图像:import numpy as npcv2.imwrite('02.png',np.uint8(p))
3
q对应的图像:
4
r对应的图像:
5
s对应的图像:
6
换个例子:
7
上面的灰度图,经过haar小波变换之后的低频信息是p:
注意事项
1
注意,第一次小波变换之后,得到的小图像恰好是原图的一半尺寸(高和宽各一半)。
2
原图的高和宽都是2的5次方。
3
所谓低频,指的是图像颜色的亮度变换平缓的区域,相反的,颜色变化剧烈,则为高频,例如图片中的噪声。