Date: Feb 20, 2013 10:21 AM
Author: Jerome
Subject: Out of bound Error
I get the following error and I am unsure how to fix it. I tried to edit the rows and cols but it seems not to work. Does anyone know a quick fix to this problem:

??? Attempted to access cyy(1,901); index out of bounds because

size(cyy)=[700,900].

Error in ==> snake at 31

eterm(i,j) = (cyy(i,j)*cx(i,j)*cx(i,j) -2

*cxy(i,j)*cx(i,j)*cy(i,j) +

cxx(i,j)*cy(i,j)*cy(i,j))/((1+cx(i,j)*cx(i,j) +

cy(i,j)*cy(i,j))^1.5);

The following code is listed below:

image = imread(image.jpg);

%parameters

N = 100;

smth = rgb2gray(image);

% Calculating size of image

[row col] = size(image);

eline = smth; %eline is simply the image intensities

[grady,gradx] = gradient(double(smth));

eedge = -1 * sqrt ((gradx .* gradx + grady .* grady)); %eedge is measured by gradient in the image

m1 = [-1 1];

m2 = [-1;1];

m3 = [1 -2 1];

m4 = [1;-2;1];

m5 = [1 -1;-1 1];

cx = conv2(smth,m1,'same');

cy = conv2(smth,m2,'same');

cxx = conv2(smth,m3,'same');

cyy = conv2(smth,m4,'same');

cxy = conv2(smth,m5,'same');

for i = 1:row

for j= 1:col-1

% eterm as deined in Kass et al Snakes paper

eterm(i,j) = (cyy(i,j)*cx(i,j)*cx(i,j) -2 *cxy(i,j)*cx(i,j)*cy(i,j) + cxx(i,j)*cy(i,j)*cy(i,j))/((1+cx(i,j)*cx(i,j) + cy(i,j)*cy(i,j))^1.5);

end

end