码迷,mamicode.com
首页 > 其他好文 > 详细

使用usb摄像头

时间:2015-02-27 21:24:05      阅读:230      评论:0      收藏:0      [点我收藏+]

标签:

(1)基础:

  1.在附加功能里添加OS Generic Video Interface

  2.查询电脑摄像头参数imaqhwinfo   有时适配器可能是同一个,

    RGB颜色空间中,每种颜色都可以用三个变量来表示,为红色、绿色、蓝色的强度
    YUV颜色空间中,“Y”代表明亮度(Luma);“U”和“V”表示色度(Chroma),作用是描述影像色彩及饱和度,用于指定像素的颜色;在YUV颜色空间中,图片是通过复合模式存储的.由于不同颜色空间的存储量不同,因此运算速度也不相同;RGB24最慢,应必避免使用;最快为YV12,其次是YUY2,YV12的数据存储量仅占RGB32的一半

(2)创建对象:
  obj = videoinput(adaptorname,deviceID,format)
(3)显示视频:

  vidRes = get(obj, ‘VideoResolution‘); 

  nBands = get(obj, ‘NumberOfBands‘); 

  figure()%指定预览窗体显示的figure

  axes()%指定预览窗口显示的坐标系

  hImage = image( zeros(vidRes(2), vidRes(1), nBands) ); 

  preview(obj, hImage);

(4)保存图片:

  frame = getsnapshot(obj);%获取视频的一帧

  imshow(frame);%显示获取那一帧

  imwrite(frame,‘snap.jpg‘,‘jpg‘);

(5)整个小程序:

numofshot=int8(1);
obj=videoinput(‘winvideo‘,2,‘YUY2_640x480‘);
set(obj,‘TriggerRepeat‘,Inf);
set(obj,‘FramesPerTrigger‘,1);
objres=get(obj,‘VideoResolution‘);
nBands=get(obj,‘NumberOfBands‘);
hImage=image(zeros(objres(2),objres(1),nBands));
preview(obj,hImage);
frame=getsnapshot(obj);
a=ycbcr2rgb(frame);
str=[‘capture‘,num2str(numofshot),‘.jpg‘];
imwrite(a,str,‘jpg‘);
numofshot=numofshot+1;
imshow(a);

 

 

使用usb摄像头

标签:

原文地址:http://www.cnblogs.com/h1359705211/p/4304331.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!