obtaining greyscale image as nxm matrix

4 vues (au cours des 30 derniers jours)
Terry McGinnis
Terry McGinnis le 17 Juin 2015
Commenté : Terry McGinnis le 17 Juin 2015
i have a gray scale image and wish to obtain values in matrix form.(as in an n x m matrix).This is what i have attempted :
I = imread('cameraman.tiff');
[xmax,ymax]=size(I)
for x=0:1:xmax
for y=0:1:ymax
I(x,y)
end
end
but am getting an error:
??? Subscript indices must either be real positive integers or logicals.

Réponse acceptée

Guillaume
Guillaume le 17 Juin 2015
I is already a matrix, so what do you mean by obtain values in matrix form?
Matrix indexing in matlab starts at 1, so your loops should be
for x = 1:xmax
for y = 1:ymax
%whatever you want to do
end
end
Note that if indexing started at 0, then your loop would have to terminate at xmax-1, not xmax.
Also note that indexing is in the form (row, column), so if you use the standard convention that x is horizontal and y vertical, then your indexing should be:
I(y, x)
  7 commentaires
Guillaume
Guillaume le 17 Juin 2015
It's a completely different question to your original one, so you should start a new question.
Terry McGinnis
Terry McGinnis le 17 Juin 2015
thanks Guillaume

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Matrix Indexing dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by