我需要做的是使用imfreehand
在MATLAB中预定义大量ROI,然后将这些ROI放入脚本中。这真的不是那么难,因为我可以命名他们并继续绘画。但我失去的是如何在脚本中保存这些投资回报率,而无需重新定义ROIS。
基本上如何在脚本中保存ROI?
答案 0 :(得分:0)
首先,您可以访问您绘制的任何线条的x,y坐标。当您致电imfreehand
时,请保存其句柄并使用它来访问您绘制的行中的x,y数据。
hf = imfreehand;
% draw line, maybe insert pause here
hl = findobj(hf,'Type','line','Tag','top line');
x = get(hl,'XData');
y = get(hl,'YData');
然后你可以使用`mat2str2将变量保存为可以放入脚本的字符串:
>> x = 1:10;
>> sprintf('x = %s',mat2str(x))
ans =
x = [1 2 3 4 5 6 7 8 9 10]
只需将其复制到您的脚本中即可。
答案 1 :(得分:0)
来自MATLAB的文档:
figure, imshow('pout.tif');
h = imfreehand;
position = wait(h); %This blocks until finished
你也可以
pos = getPosition(h) %gets the position
我想你问的是如何在一个变量中存储每组位置。为此,单元阵列可能是最方便的。我希望有所帮助。