复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17[Lo_D,Hi_D,Lo_R,Hi_R]=wfilters('haar');%获得Haar小波的尺度和小波系数 Lo_D %打印低通分解滤波器系数 Hi_D %打印高通分解滤波器系数 Lo_R %打印低通重构滤波器系数 Hi_R %打印高通重构滤波器系数 waveinfo('haar'); %打印Haar小波相关信息 [phi,psi,xval]=wavefun('haar',10);%wavefun函数产生尺度向量和小波向量 xaxis=zeros(size(xval)); %y轴 axis square; title('Haar Scaling Function'); subplot ( 122 ) ; plot ( xval , psi , ' k ' , xval , xaxis , ' - k ' ) ; % 绘制小波向量 axis ( [ 0 1 -1.5 1.5 ] ) ; % y轴 axis square ; title ( 'Haar Wavelet Function ' ) ;
复制代码
1
2
3
4
5
6
7
8
9f = magic (4 ) ; % f 是4 X 4的魔术矩阵 f % 对f 进行一次小波分解,c1是系数矩阵,s1是c1各分量的维数。 [C1,S1]=wavedec2(f,1,'haar'); C1 S1 [ C2 , S2 ] = wavedec2 ( f , 2 , ' haar ' ) ; C2 S2
复制代码
1
2
3
4
5
6
7
8
9
10
11f = imread ( '你的图 ' ) ; imshow ( f ) ; [C,S] = wavefast( f , 1 ,'sym4' ) ; % 以4格灰度图像方式显示小波分解结果 figure , wave2gray ( C , S , -6 ) ; [ nc , y ] = wavecut ( 'a' , C , S ) ; % 去掉分解结果中的近似系数 figure , wave2gray ( nc , S , -6 ) ; % 显示处理后的小波系数 % 小波反变换,得到边缘图像 edges = abs ( waveback ( nc , S , 'sym4' ) ); figure , imshow ( mat2gray ( edges ) ) ; % 显示边缘图像
复制代码
1
2
3
4
5
6
7
8
9
10
11f = imread ( '你的图' ) ; [ C , S ] = wavefast ( f , 4 , 'sym4' ) ; % 4层小波分解 wave2gray ( C , S , 20 ); % 以图像形式显示小波系数 % 第一层分解的小波系数置为0 ,并显示反变换后的图像 [ C , g8 ] = wavezero ( C , S , 1 , 'sym4' ) ; % wavezero 函数请见7.6节 % 第一,二层分解的小波系数置为0 ,并显示反变换后的图像 [ C , g8 ] = wavezero ( C , S , 2 , 'sym4' ) ; % 第一,二,三层分解的小波系数置为0 ,并显示反变换后的图像 [ C , g8 ] = wavezero ( C , S , 3 , 'sym4' ) ; % 4层分解的小波系数都置为0 ,并显示反变换后的图像 [ C , g8 ] = wavezero ( C , S , 4 , 'sym4' ) ;
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23f = imread ( '你的图' ) ; [ C , S ] = wavefast( f,4,'jpeg9.7') ; % 4层小波分解 wave2gray ( C , S , 8 ); % 显示处理后的小波系数 f = wavecopy ('a', C , S ) ; % f 是第4层分解后的近似系数 figure , imshow ( mat2gray ( f ) ) ; % 显示第4层分解后的近似图像 [ C , S ] = waveback(C,S,'jpeg9.7',1) ; % 一次重构 % f 是第3层分解后的近似图像 f = wavecopy ('a',C,S) ; % 显示第3层分解后的近似图像 figure , imshow ( mat2gray ( f ) ) ; % 二次重构 [ C , S ] = waveback(C,S,'jpeg9.7',1) ; % f 是第2层分解后的近似系数 f = wavecopy ('a',C,S) ; % 显示第2层分解后的近似图像 figure , imshow ( mat2gray ( f ) ) ; [C,S]= waveback(C, S,'jpeg9.7',1);%三次重构 f = wavecopy('a', C, S);%f是第1层分解后的近似函数 figure, imshow(mat2gray(f));%显示第1层分解后的近似图像 [C, S]= waveback(C, S, 'jpeg9.7', 1); %四次重构 f = wavecopy('a', C, S);%f是最终重构后的图像 figure, imshow(mat2gray(f)); %显示重构后的最终图像
复制代码
1
2
3
4
5
6f = imread ( '你的图 ' ) ; [ C , S ] = wavefast( f,2,'db4') ; % 4层小波分解 wave2gray(C,S); % 显示处理后的小波系数 figure,wave2gray(C,S,8); figure,wave2gray(C,S,-8);
最后
以上就是热心铃铛最近收集整理的关于matlab 小波变换的全部内容,更多相关matlab内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复