登录论坛

查看完整版本 : [求助]matlab小波变换问题


derrick
2008-11-17, 15:43
以下是小波变换的一个源代码
clear all;clc;
s=imread('lena.jpg');
%colormap(s);
%colorbar;
imshow(s);
%输入源图像


[ca1,ch1,cv1,cd1] = dwt2(double(s),'haar');
% a1=upcoef2('a', ca1, 'haar', 1);
% h1=upcoef2('h', ch1, 'haar', 1);
% v1=upcoef2('v', cv1, 'haar', 1);
% d1=upcoef2('d', cd1, 'haar', 1);
%用haar小波滤波器获得各个分量的系数,其中a是近似分量(低频),其他是高频分量

figure(2);
%colormap(s);
% nbcol=size(double(s),1)
subplot(2,2,1);image(ca1);title('a')
subplot(2,2,2);image(ch1);title('h')
subplot(2,2,3);image(cv1);title('v')
subplot(2,2,4);image(cd1);title('d')
%绘出各个图像分量
问题:
1. 为什么一定要用upcoef2函数?她干啥用的?dwt2中不是已经变换得到ca1等系数了么?
2. 我绘图为什么都是彩色的?看到书上的结果是黑白的。

wangchuan2008888
2008-11-21, 21:06
太难了 看不懂

lywavelet
2008-11-22, 11:51
回答第二个问题,因为你用没有对图像进行图像分解的缘故.

derrick
2008-11-24, 13:40
太难了 看不懂

不难吧。如果做过小波的人应该还好吧~~~

derrick
2008-11-24, 13:41
回答第二个问题,因为你用没有对图像进行图像分解的缘故.第二个问题我知道了,应该是我找的图像本来就是伪彩色图像,所以才是这样的。
找个黑白的就没问题了。

simonimhotep
2008-12-18, 17:17
这有什么难的。学习了就应该会的