小马哥这些年来的学习笔记陆续推出,与同行共同成长,共同进步。
小马哥特别申明:
本篇文章部分内容来自于网络,可能抄袭了网页,如有侵权,请联系我删除。谢谢。
Matlab摄像头基本操作
利用OS Generic Video Interface安装包调用摄像头:
Ø 硬件信息:imaqhwinfo,注意适配器名,ID,生成文件的格式。
Ø 生成摄像头:vedioinput,可从硬件信息中知道该函数。
Ø 图片操作:预览(preview)、截图(getsnapshot)、显示(imshow)、保存(imwrite)。
Matlab中的图像获取工具箱给我们提供了必要的函数,我们直接调用就可以了。在这帖中我们主要就是简单的介绍如何使用该工具箱进行对USB2.0摄像头的编程。
必须安装了PC摄像头才可以,首次安装最好重启,否则可能出现没法识别摄像头。
整个过程我们需要做如下几件事情:
1、查询USB2.0Camera 的具体参数(imaqhwinfo)
2、创建视频输入对象(videoinput)
3、图像预览和显示(preview、stoppreview、closepreview和image)
4、获取视频图像(getsnapshot)
5、图像获取设备的获取和设置(get和set)
6、关闭视频对象(delete)
硬件信息:
1) Imaqhwinfo:
InstalledAdaptors: 安装的摄像头适配器
2) win_info=imaqhwinfo('winvideo')%适配器具体参数
AdaptorDllName:dll文件路径
AdaptorDllVersion:dll版本号
AdaptorName:适配器名称
DeviceIDs:适配器ID号,经常用到
DeviceInfo:设备参数,重要
3) dev_win_info=win_info.DeviceInfo %设备详细参数
DefaultFormat:图片默认格式
DeviceFileSupported:
DeviceName:设备名
DeviceID:ID号
VideoInputConstructor:视频输入构建
VideoDeviceConstructor: 视频设备构建
SupportedFormats: {'YUY2_320x240' 'YUY2_640x480'};视频文件格式
创建摄像头
1) Camera=videoinput(adaptorname,deviceID,format);
视频预览
2) himage=preview(Camera,himage) %obj,摄像头;himage,图像显示窗口句柄。
截图、显示和保存
3) frame=getsnapshot(Camera); imshow(frame); imwrite(frame,’snap.jpg’,’jpg’)
适配器:通过驱动在matlab和图像获取设备之间传递信息。个人理解为matlab的驱动。作用是连接摄像头。
ROI:region-of-interest感兴趣区域
常用函数:
Getselectedsource
Imaqfind
Isvalid
Peekdata
Getdata
Imaqmontage
利用MATLAB Support Package for USB Webcams安装包调用摄像头:
cam=webcam(1);
preview(cam)
snapshot(cam);