标签:
(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);
标签:
原文地址:http://www.cnblogs.com/h1359705211/p/4304331.html