这段基于区域方差的小波图像融合的matlab程序帮看下错,谢了。。 10

编译的时候第5行就开始有错,无语了,帮下,万分感谢,图像是lena的那个灰度图像clearall;closeall;x=imread('1.bmp');y=imread(... 编译的时候第5行就开始有错,无语了,帮下,万分感谢,图像是lena的那个灰度图像
clear all;
close all;
x=imread('1.bmp');
y=imread('2.bmp');
a=rgb2gray(x);
b=rgb2gray(y);
a=double(a);
b=double(b);
[aA,aH,aV,aD]=dwt2(a,'bior2.4');
[bA,bH,bV,bD]=dwt2(b,'bior2.4');
newA=zeros(size(aA));
newH=zeros(size(aH));
newV=zeros(size(aV));
newD=zeros(size(aD));
[m,n]=size(aA);
for i=1:m
for j=1:n
newA(i,j)=(aA(i,j)+bA(i,j))/2;
end;
end;
fun=inline('var(x(:))');
Var_aH=nlfilter(aH,[3 3],fun);
Var_aV=nlfilter(aV,[3 3],fun);
Var_aD=nlfilter(aD,[3 3],fun);
Var_bH=nlfilter(bH,[3 3],fun);
Var_bV=nlfilter(bV,[3 3],fun);
Var_bD=nlfilter(bD,[3 3],fun);
for i=1:m
for j=1:n
if Var_aH(i,j)>=Var_bH(i,j);
newH(i,j)=aH(i,j);
else
newH(i,j)=bH(i,j);
end
end
end
for i=1:m
for j=1:n
if Var_aV(i,j)>=Var_bV(i,j);
newV(i,j)=aV(i,j);
else
newV(i,j)=bV(i,j);
end
end
end
for i=1:m
for j=1:n
if Var_aD(i,j)>=Var_bD(i,j);
newD(i,j)=aD(i,j);
else
newD(i,j)=bD(i,j);
end
end
end
new=idwt2(newA,newH,newV,newD,'bior2.4');
new=uint8(new);
figure;
imshow(new);
title('区域方差取大')
展开
 我来答
匿名用户
2011-05-06
展开全部
小波分析后,你也没处理,组合起来依然是原信号啊。方差不会变的。

你用连续小波变换,得到了1:43尺度下的小波基系数组z(i)。

如果你指的是在一定分辨率下,该信号在某个尺度上投射的分量的方差。

就用z(i)乘以这个小波φ(τ,σ)基。在用STD求方差呗。
另外,站长团上有产品团购,便宜有保证
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
VSH艾羽
2025-09-30 广告
上海艾羽信息科技有限公司是一家以CAE软件销售、技术咨询及服务,仿真咨询及规划布局为一体的高科技公司。作为ANSYS的合作伙伴,艾羽致力于将ANSYS推出的产品,通过业界性能颇佳、丰富的工程仿真软件产品组合帮助客户解决复杂的仿真难题。力求与... 点击进入详情页
本回答由VSH艾羽提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式