matlab读取摄像头
% ******************************************************************************************* % % ---------------------------------*** 模块0: 初始化 ***----------------------------- % % ------------------------------------------------------------------------------------------- % clc clear % 获取摄像头信息(imaqhwinfo) imaqInfo = imaqhwinfo; winvideoinfo = imaqhwinfo('winvideo'); n=length(winvideoinfo.DeviceInfo);% 看系统中有几个摄像头 % 调参数,设置成使用最后一个摄像头 CamNum=n; device = winvideoinfo.DeviceInfo(CamNum) % 分辨率设置,发现320x240时合适,640x480时只能预览(若要处理则会表现出较大的延时) Format=device.SupportedFormats(3); % 'YUY2_320x240' % Format=device.SupportedFormats(1); % 'YUY2_160x120' % Format=device.SupportedFormats(end); % 'YUY2_640x480' Format=char(Format);% 转换成字符串 % 申请内存空间 imaqmem(30000000); % ******************************************************************************************* % % --------------------*** 模块1: 创建视频输入对象,并显示原始视频 ***----------------- % % ------------------------------------------------------------------------------------------- % VID = videoinput('winvideo',CamNum,Format);% 创建视频输入对象(videoinput) preview(VID); % 显示原始视频 % ******************************************************************************************* % % --------------------------*** 模块2: 处理输入视频并显示出来 ***-------------------- % % ------------------------------------------------------------------------------------------- % k=1; start(VID); % 新建窗口, 处理后的图像放在这里边 h=figure('NumberTitle','off','Name','处理后的视频','MenuBar','none', 'Visible', 'on'); set(h,'doublebuffer','on'); while ishandle(h) % 判断是否有效的图像对象句柄 Iyuv=getsnapshot (VID); % 捕获1帧图像 I=ycbcr2rgb(Iyuv); % 将图像从YUV空间转换成RGB空间 flushdata(VID); % 清除数据获取引擎的所有数据、置属性SamplesAvailable为0 imshow(I); % 显示图像 drawnow; % 实时更新图像,这句话很重要 if (k==1) tic; end if (k==100) toc; end k=k+1; disp(k) end % 删除 % delete(VID);
可能的报错
??? Subscript indices must either be real positive integers or logicals. Error in ==> Untitled2 at 14 device = winvideoinfo.DeviceInfo(CamNum)
解释:没有找到摄像头,你的电脑驱动或者摄像头有问题,换别人的电脑试下?
============================找指导老师布置任务吧==============================