首先构建视频输入接口
vid = videoinput('winvideo',1,'RGB24_400x300');
Run Code Online (Sandbox Code Playgroud)
您需要调整网络摄像头的最后一位.要查找网络摄像头设备列表(以及其他内容),请使用:
imaqhwinfo
Run Code Online (Sandbox Code Playgroud)
以下内容使第一个网络摄像头成为一个对象
a=imaqhwinfo('winvideo',1)
Run Code Online (Sandbox Code Playgroud)
查找支持的视频格式列表
a.SupportedFormats
Run Code Online (Sandbox Code Playgroud)
然后,您将要启动界面:
start(vid);
preview(vid);
Run Code Online (Sandbox Code Playgroud)
现在您可以执行以下操作:
pics=cell(1,20)
for i=1:20
pause(5);
pics{i}=getsnapshot(vid);
end
Run Code Online (Sandbox Code Playgroud)
或者,正如其他评论员所指出的那样,您也可以使用Matlab计时器进行间隔.
如果您希望以相当短的间隔(每秒1次或更多)捕获图像,将网络摄像头视为视频源可能更有用.我已经给出了这个问题的答案,该答案列出了实现这一目标的方法.