obtaining greyscale image as nxm matrix
3 views (last 30 days)
Show older comments
Terry McGinnis
on 17 Jun 2015
Commented: Terry McGinnis
on 17 Jun 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.
0 Comments
Accepted Answer
Guillaume
on 17 Jun 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 Comments
Guillaume
on 17 Jun 2015
It's a completely different question to your original one, so you should start a new question.
More Answers (0)
See Also
Categories
Find more on Matrix Indexing in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!