我试图仅使用平稳小波变换的水平系数来重建输入图像。
[A,H,V,D ] = swt2(x,1,'sym4');
A = 0; V = 0; D = 0; %i am setting other co-efficents to zero since i am only intersted in the values of H %
Y = iswt2(A,H,V,D,'sym4') ; %this gives the following error below%
出错
iswt2/reconsLOC
中的错误(第153行)
ca(sR,sC)
,ch(sR,sC,k)
,cv(sR,sC,k)
,cd(sR,sC,k)
,...
iswt2
(第122行)a = reconsLOC(a,h,v,d);
我该如何解决这个问题?
答案 0 :(得分:2)
您已经省略了错误消息的第一行,这样就可以找出问题所在:
指数超出矩阵维度。
问题在于您无法将矩阵设置为标量0
,您必须将整个矩阵设置为零,以便它仍然具有相同的值大小为H
。这将有效:
A(:) = 0; % Fills every element of A with zero
V(:) = 0;
D(:) = 0;
Y = iswt2(A, H, V, D, 'sym4');