Clear Filters
Clear Filters

Error: The expression to the left of the equals sign is not a valid target for an assignment.

1 view (last 30 days)
For some unknown reason I am getting this error on every line past line 14 (deleting the line causes the error to jump to the next line). Any help would be very much appreciated.
clear, clc
%Read image
[X, Y]=size(img);
%Set two seeds
s1x=130; s1y=150; %Note that seed location is not central to object
s2x=200; s2y=200;
seeds = [sub2ind([X Y],s1y,s1x),sub2ind([X Y]);
%Apply the random walker algorithms
%Build graph
%Generate points
rangex = 0:(X-1); %<- where the error is now
rangey = 0:(Y-1);
[x, y]=meshgrid(rangey,rangex);
points=[x(:),y(:)]; %cont.

Answers (2)

Jon on 23 Sep 2015
Edited: Jon on 23 Sep 2015
I can't figure out why you're getting an error, but it works if you put square brackets around the expression, like this
rangex = [0:(X-1)];
EDIT: that actually doesn't work. You're not closing your seeds = [stuffhere bracket. Ie, it should read
seeds = [sub2ind([X Y],s1y,s1x),sub2ind([X Y])];

Walter Roberson
Walter Roberson on 23 Sep 2015
Why are you calling sub2ind([X Y]) without the expected multiple arguments?

Community Treasure Hunt

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

Start Hunting!