我是MATLAB的初学者,我想知道如何以5秒的间隔从相机获取和保存20张图像。非常感谢你。
回答:
要获取图像,相机是否具有某种记录的方法可以从计算机进行控制? MATLAB支持链接到
外部库 。或者,您可以按照MatlabDoug的建议购买合适的MATLAB工具箱。
要保存图像,
IMWRITE可能是最简单的选择。
要重复该操作,只需执行一个带有
暂停的简单
FOR循环,只需很少的工作即可大致获得所需的内容:
for ctr = 1:20 img = AcquireImage(); % your function goes here fname = ['Image' num2str(ctr)]; % make a file name imwrite(img, fname, 'TIFF'); pause(5); % or whatever number suits your needs end 但是,如果需要精确的5秒间隔,则必须深入
TIMER 。这是一个简单的例子:
function AcquireAndSave persistent FileNum; if isempty(FileNum) FileNum = 1; end img = AcquireImage(); fname = ['Image' num2str(FileNum)]; imwrite(img, fname, 'TIFF'); disp(['Just saved image ' fname]); FileNum = FileNum + 1; end >> t = timer('TimerFcn', 'ShowTime', 'Period', 5.0, 'ExecutionMode', 'fixedRate'); >> start(t); ...you should see the disp line from AcquireAndSave repeat every 5 seconds... >> stop(t); >> delete(t);
更多&回答...