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

2 ビュー (過去 30 日間)
David Hampton
David Hampton 2015 年 9 月 23 日
編集済み: Jon 2015 年 9 月 23 日
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
img=im2double(imread('axial_CT_slice.bmp'));
[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.

回答 (2 件)

Jon
Jon 2015 年 9 月 23 日
編集済み: Jon 2015 年 9 月 23 日
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 2015 年 9 月 23 日
Why are you calling sub2ind([X Y]) without the expected multiple arguments?

カテゴリ

Help Center および File ExchangeSpecifying Target for Graphics Output についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by