Indexing cannot yield multiple results.

Hello, so I have this code, for a 3x3 rgb image:
[nRows, nCols, nCh] = size(image);
%I have 100 3x3 squares of the image:
p = zeros(3,3,3)
P = cell(100,1);
k = 0;
for i=1:3:nRows
for j=1:3:nCols
k = k+1;
p = image(i:i+2, j:j+2, :);
P{k} = p;
if k>=100
break;
end
end
end
%average for the 67th square:
p = P{67};
m(67) = [sum(sum(p(:,:,1))/9), sum(sum(p(:,:,2))/9), sum(sum(p(:,:,3))/9)];
And at the first row [nRows, nCols, nCh] = size(image) I get the Indexing error. Any ideas? Thank you

Answers (1)

Check if size was not used as a variable. For example
size=2
[n,m]=size(rand(4))
To resolve the problem type
clear size
[n,m]=size(rand(4))

2 Comments

it's not used at all, only in that line
In Matlab Windows Command, type
which size

Sign in to comment.

Asked:

on 17 Apr 2016

Commented:

on 17 Apr 2016

Community Treasure Hunt

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

Start Hunting!