2016-12-08 5 views
1

J'essaye de reconstruire l'image d'entrée avec juste les coefficients horizontaux de la transformée d'ondelette stationnaire.Comment reconstruire une image avec juste le coefficient horizontal de la transformée en ondelettes?

[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% 

Erreur dans iswt2/reconsLOC (ligne 153)
ca(sR,sC), ch(sR,sC,k), cv(sR,sC,k), cd(sR,sC,k) ...
Erreur dans iswt2 (ligne 122) a = reconsLOC(a,h,v,d);

Comment puis-je résoudre ce ?

Répondre

2

Vous avez omis la première ligne de votre message d'erreur, ce qui donne une idée de ce que le problème est:

Index dépasse les dimensions de la matrice.

Le problème est que vous ne pouvez pas définir une matrice à un scalaire 0, vous devez définir toute la matrice à zéros, de sorte qu'il a toujours la même taille que H. Cela fonctionnera:

A(:) = 0; % Fills every element of A with zero 
V(:) = 0; 
D(:) = 0; 
Y = iswt2(A, H, V, D, 'sym4'); 
+0

Merci beaucoup, cela a fonctionné. –