、读取摄像头
3.默认显示彩色rgb图像,可用下面代码转换为灰度图像:
若要还原为彩色图像,即把上面的grayscale换成rgb
1.首先保证摄像头及其驱动正确在电脑上安装
2.简单的代码显示驱动摄像头,并显示:
vid = videoinput('winvideo',1);
preview(vid);
3.默认显示彩色rgb图像,可用下面代码转换为灰度图像:
set(vid,'ReturnedColorSpace','grayscale');
若要还原为彩色图像,即把上面的grayscale换成rgb
二、获取摄像头图像
image = getsnapshot(vid);%获得图像矩阵
figure;
imshow(image);%显示该幅图片
三、保存视频
- writerObj = VideoWriter( [filename '.avi'] );%创建.avi文件
- writerObj.FrameRate = N;%设置视频帧率
- open(writerObj);
- figure;
- for ii = 1: nframe
- frame = getsnapshot(vid);
- imshow(frame);
- f.cdata = frame;
- f.colormap = [];
- writeVideo(writerObj,f);
- end
- close(writerObj);
writerObj = VideoWriter( [filename '.avi'] );%创建.avi文件
writerObj.FrameRate = N;%设置视频帧率
open(writerObj);
figure;
for ii = 1: nframe
frame = getsnapshot(vid);
imshow(frame);
f.cdata = frame;
f.colormap = [];
writeVideo(writerObj,f);
end
close(writerObj);
四、摄像头深刻理解
imaqhwinfo()函数返回一个结构体,里面包含DeviceID和DeviceInfo,DeviceID存储着电脑上所有可用摄像头的ID,每个ID对应一个摄像头。DeviceInfo中存储着每个摄像头的信息,最主要的就是摄像头所支持的视频格式。通过下面代码可以得到DeviceID和DeviceInfo中支持的格式信息:
- cam_info = imaqhwinfo('winvideo');
- cam_info.DeviceInfo.DeviceID
- cam_info.DeviceInfo.SupportedFormats
cam_info = imaqhwinfo('winvideo');
cam_info.DeviceInfo.DeviceID
cam_info.DeviceInfo.SupportedFormats
得到支持的格式信息后,即可加到第一个代码中去了:
vid = videoinput('winvideo',1,'Formats');