Effacer les filtres
Effacer les filtres

hello iam getting these type of error for my code iam appl dddt dwt algorithm to get decomposition image please help me to goet output....

1 vue (au cours des 30 derniers jours)
clc;
clear;
close all;
R=imread('img_00155.bmp');
K=rgb2gray(R);
K(K > 255*0.62) = 255;
figure,imshow(K);
K(K < 255*0.30) = 0;
figure,imshow(K);
J = 3;
L = 8*2^(J+1);
[Faf, Fsf] = FSdoubledualfilt;
[af, sf] = doubledualfilt;
w = cplxdoubledual_f2D(double(K), J, Faf, af);
y = cplxdoubledual_i2D(w, J, Fsf, sf);
y = [y; sqrt(y(1:L,:).^2+y(L+[1:L],:).^2)];
figure,
clf
imagesc(y);
title('Complex 2-D Double-Density Dual-Tree Wavelets')
axis image
axis off
colormap(gray(128))
error is
Index in position 1 exceeds array bounds (must not exceed 240).
Error in te1 (line 21)
y = [y; sqrt(y(1:L,:).^2+y(L+[1:L],:).^2)];
>>

Réponse acceptée

KALYAN ACHARJYA
KALYAN ACHARJYA le 17 Mar 2019
Modifié(e) : KALYAN ACHARJYA le 17 Mar 2019
I have tried with different image, hope you facing the same issue. If not, let me know the size of y?
In the code so many nesting custom functions are there. In the following statement
y = [y; sqrt(y(1:L,:).^2+y(L+[1:L],:).^2)];
From the workspace L=128, but the size of the y is
>> size(y)
ans =
96 200
Then if the indexing is y(1:L,:) that means y(1 to 128, all colm element), where no 128 row in the y, definitely it shows error.
Note and Hints: Debug the code in simmilar way by breaking the above y statement in smaller parts, problem will be resolved.
Say
y1= sqrt(y(1:L,:).^2+y(L+[1:L],:).^2); % Break this line also in y1=y11+y12, do the debug one by one
y=[y;y1]
Hope it Helps!

Plus de réponses (1)

krishna kotha
krishna kotha le 17 Mar 2019
clc;
clear;
close all;
R=imread('img_00155.bmp');
K=rgb2gray(R);
K(K > 255*0.62) = 255;
figure,imshow(K);
K(K < 255*0.30) = 0;
figure,imshow(K);
J = 3;
L = 4*2^(J+1);
[Faf, Fsf] = FSdoubledualfilt;
[af, sf] = doubledualfilt;
w = cplxdoubledual_f2D(double(K), J, Faf, af);
y = cplxdoubledual_i2D(w, J, Fsf, sf);
y11 = y(1:L,:).^2;
y12 = y(L+[1:L],:).^2;
y1 = sqrt(y11+y12);
y = [y;y1];
figure,
clf
imagesc(y);
title('Complex 2-D Double-Density Dual-Tree Wavelets')
axis image
axis off
colormap(gray(128))
got it but output is showing like this how i get proper output
ggg.jpg

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by