ltmx01 发表于 2008-2-27 14:17

关于图像小波重构的问题

利用小波将图像进行三层分解后得到高频和低频系数,对系数进行加权后如何利用这些系数重建图像,程序如下,清高手指教,不胜感激!!
clear all;
clc;
RGB=imread('D:\yuantu\1.jpg');
HSV=rgb2hsv(RGB);
figure(1);
subplot(121);imshow(RGB);title('原始图像');
subplot(122);imshow(HSV);title('HSV图像');
H=HSV(:,:,1);
S=HSV(:,:,2);
V=HSV(:,:,3);
lv=length(V);

=wavedec2(V,3,'bior3.5'); %多尺度二维分解
cA3=appcoef2(C,L,'bior3.5',3); %从上面的C中提取第三层的低频系数
cD3=detcoef2('h',C,L,3); %从上面的C中提取第1、2、3层的高频系数
cD2=detcoef2('v',C,L,2);
cD1=detcoef2('d',C,L,1);

cA31=1.1*cA3;%低频系数加权
cD31=1.1*cD3;
cD21=1.1*cD2;
cD11=1.1*cD1;

下面如何重构图像请大侠赐教,最好是代码说明,谢谢

[ 本帖最后由 eight 于 2008-2-27 19:31 编辑 ]

znhchz 发表于 2008-2-28 09:45

也遇到了类似的问题,请指教

whatman 发表于 2008-3-3 11:37

你都把重构系数求出来了,waverec2应该可以,再查查类似的函数可以不

yulong_02 发表于 2008-3-4 21:36

回复 楼主 的帖子

首先要提出的是你在提取高频系数时可能出了点问题,你应该在各尺度上都进行三方向提取,即v垂直方向,h水平方向,d对角线方向.
接着你可以用 wrcoef2或upcoef2 小波函数进行重构
其中wrcoef2重构的结果要更好点
调用格式为:
x=wrcoef2('type',c,l,'wname',N);
y=upcoef2('type',ca,'wname',N,s);
其中type='a' 、'h''d''v'
是信号的分解结构
wname是所要用重构小波函数
N为重构的节尺
ca为你所提取的小波分解系数.
例如:你对你所提取的三节低频系数重构可以
s=L(size(L,1),:);
CA3=upcoef2('a',cA3,'bior3.5',3,s);
如果想直接用wrcoef2重构可以为
CA3=wrcoef2('a',C,L,'bior3.5',3);
高频的重构也是雷同的.

[ 本帖最后由 yulong_02 于 2008-3-4 21:51 编辑 ]
页: [1]
查看完整版本: 关于图像小波重构的问题