obtaining greyscale image as nxm matrix

조회 수: 4 (최근 30일)
Terry McGinnis
Terry McGinnis 2015년 6월 17일
댓글: Terry McGinnis 2015년 6월 17일
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.

채택된 답변

Guillaume
Guillaume 2015년 6월 17일
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
Guillaume
Guillaume 2015년 6월 17일
It's a completely different question to your original one, so you should start a new question.
Terry McGinnis
Terry McGinnis 2015년 6월 17일
thanks Guillaume

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Matrix Indexing에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by