在Matlab图像处理中,小波变换对应的函数都有下面这些:
1、
dwt2二维离散小波变换
[cA,cH,cV,cD]=dwt2(X,’wname’)%使用指定的小波基函数对矩阵X进行二维离散小波变换
[cA,cH,cV,cD]=dwt2(X,Lo_D,Hi_D) %使用指定的低通滤波器Lo_D和高通滤波器Hi_D分解信号
%cA–近似分量(低频分量);cH–水平方向细节分量
cV–垂直方向细节分量;cD–对角方向细节分量
这个代码写起来就很简单啦~~~奉上代码
A=imread(‘lena.png’);
[cA,cH,cV,cD]=dwt2(A,’haar’);%使用haar小波
figure,imshow(A);title(‘原图’);
figure,subplot(2,2,1),imshow(uint8(cA)),title(‘低频分量’);
subplot(2,2,2),imshow(uint8(cH)),title(‘水平细节分量’);
subplot(2,2,3),imshow(uint8(cV)),title(‘垂直细节分量’);
subplot(2,2,4),imshow(uint8(cD)),title(‘对角线细节分量’);
2、
wavedec2 二维多尺度分解
[C,S]=wavedec2(X,N,’wname’)%使用指定的小波基函数对矩阵X进行N层分解
[C,S]=wavedec2(X,N,Lo_D,Hi_D)%使用指定的低通滤波器Lo_D和高通滤波器Hi_D分解信号为N