matlab调用摄像头每隔一段时间捕获一张照片并存储

matlab调用摄像头每隔一段时间捕获一张照片并存储

clear
vid=videoinput('macvideo');      %创建视频输入对象
preview(vid);                    %图像预览和显示
start(vid);
h=figure('NumberTitle','off','Name','视频',...
   'MenuBar','none','color','c',...
   'Position', [0, 0, 1, 1], 'Visible', 'on');         %新建窗口
set(h,'doublebuffer','on','outerposition',get(0,'screensize'));
h1=axes('Position', [0.02, 0.1, 0.4, 0.8],'Parent',h);  %新建显示窗口

hold on;
   for j=1:10            %判断是否有效的图像对象句柄
   a=getsnapshot(vid);           %捕获图像
   flushdata(vid);               %清除数据获取引擎的所有数据
   b=ycbcr2rgb(a);               %ycrcb格式转化为rgb格式
   figure;imshow(b);             %显示图片
   A = getframe;          % 获取矩阵
   imwrite(A.cdata,strcat('/Users/zhangyuhao/Documents/MATLAB/picture/',num2str(j),'.jpg'));%保存路径'F:\matlab\work\picture\
   pause(2); %延时
   end                       
delete(vid);
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容