Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
高级会员
注册日期: 2019-11-21
帖子: 3,006
声望力: 66 ![]() |
![]()
我是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); 更多&回答... |
![]() |
![]() |