What's the problem in my loop?
Afficher commentaires plus anciens
A=imread('cameraman.tif');
B=zeros(255,255);
for j=0:255
for k=0:255
B(j,k)=A(j,k+1)-A(j,k-1);
end
end
figure,imshow(B);
error: Attempted to access A(0,1); index must be a positive integer or logical.
Error in tryfebin (line 6)
B(j,k)=A(j,k+1)-A(j,k-1);
1 commentaire
Jan
le 30 Août 2013
The error message is very meaningful: "index must be a positive integer or logical"
Réponse acceptée
Plus de réponses (1)
ES
le 30 Août 2013
1 vote
Matlab Matrices do not have indices starting at 0. There is nothing like A(0) in MATLAB (But it is so in C or Python though). This is a common issue faced by people migrating from C or Python to MATLAB.
Solution: Your for loop with j should run from 1 to 256.
Catégories
En savoir plus sur Call Python from MATLAB dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!