我试图在Matlab中使用imfreehand函数来创建多重ROI。用户选择足够的ROI后,可以通过按ESC键将其停止。这是我的代码,但它有一个错误。
Error: Expected one output from a curly brace or dot indexing expression, but there were 0 results.
有人可以帮助我并指出问题吗?代码从这里修改
由于
I = imread('pout.tif');
totMask = zeros(size(I)); % accumulate all single object masks to this one
f = figure('CurrentCharacter','a');
imshow(I)
h = imfreehand( gca ); setColor(h,'green');
position = wait( h );
BW = createMask( h );
while double(get(f,'CurrentCharacter'))~=27
totMask = totMask | BW; % add mask to global mask
% ask user for another mask
h = imfreehand( gca ); setColor(h,'green');
position = wait( h );
BW = createMask( h );
pause(.1)
end
% show the resulting mask
figure; imshow( totMask ); title('multi-object mask');