Matlab直接安装没有摄像头得驱动,需要安装插件
链接:http://blog.xxcxw.cn/2018/07/06/matlab调用系统摄像头/
一、摄像头的属性
imaqhwinfo()可以了解摄像头的属性,他返回一个结构体,结构体中有摄像头的ID——DeviceID,和摄像头的信息——DeviceInfo;
Camera_in=imaqhwinfo('winvideo') Camera_in.DeviceInfo.DeviceID Camera_in.DeviceInfo.SupportedFormats
SupportedFormats储存着摄像头支持的视频格式
我的摄像头支持的格式:1 至 6 列
注解:MJPG、YUY2是两种视频格式,数字表示分辨率。
'MJPG_1280x720' 'MJPG_160x120' 'MJPG_176x144' 'MJPG_320x180' 'MJPG_320x240' 'MJPG_352x288'
7 至 12 列
'MJPG_640x360' 'MJPG_640x480' 'YUY2_1280x720' 'YUY2_160x120' 'YUY2_176x144' 'YUY2_320x180'
13 至 16 列
'YUY2_320x240' 'YUY2_352x288' 'YUY2_640x360' 'YUY2_640x480'
二、读取摄像头
1、MATLAB自带读取摄像头工具箱 点击这个会弹出一个窗口然后选中一个图片格式点击“Start Preview”就会显示图像,点击Stop关闭。
2、调用函数videoinput():
第一步创建视频输入对象:
video=videoinput('winvideo',2);
第一个参数是winvideo是适配器名称,第二个是DeviceID(摄像头ID);
第二步显示所创建的视频对象:
preview(video);
这样摄像头就能够被调出来显示摄像头正在拍摄的画面了。
改变视频格式:
video=videoinput('winvideo',2,'YUY2_1280x720');
改变视频色彩:
set(video,'ReturnedColorSpace','grayscale');%彩色是把grayscale改成rgb
三、读取双目摄像头:
首先查出双目摄像头的ID,我的笔记本内置摄像头ID为 1,双目摄像头的ID分别为2、3;
我想的是重复上面的程序直接调用两个摄像头。
clc;clear;close all;%%1、读取显示摄像头: vid=videoinput('winvideo',2);%创建视频输入对象 set(vid,'ReturnedColorSpace','rgb');%显示灰色图像grayscale,彩色第三个参数为rgb preview(vid);%显示所创建的视频对象%%操作第二个摄像头 vid=videoinput('winvideo',3);%创建视频输入对象 set(vid,'ReturnedColorSpace','rgb');%显示灰色图像grayscale,彩色第三个参数为rgb preview(vid);%显示所创建的视频对象