Matlab 的USB摄像头编程

来源:互联网 发布:搜狐网络大厦地址 编辑:程序博客网 时间:2024/05/23 00:06

一 、查询USB2.0Camera 的具体参数(imaqhwinfo)

1.matlab 输入:imaqhwinfo
得到:
ans =

InstalledAdaptors: {'winvideo'}    MATLABVersion: '8.4 (R2014b)'      ToolboxName: 'Image Acquisition Toolbox'   ToolboxVersion: '4.8 (R2014b)'

2.如果出现报错信息:适配器的内容为空(matlab出现如下结果)
警告: No Image Acquisition adaptors found. Image acquisition adaptors may be available as downloadable support packages. Open Support Package Installer to install additional vendors.

这时候Support Package Installer在MATLAB里面有下划线,然后你点开它,MATLAB会提供大概13个软件包,这时候选择OS Generic Video Interface下载安装就OK了。
在安装过程中需要你登陆一下MathWork的账号,去matlab官网注册一个就行(免费的)登陆之后就很简单的安装完成。即可正常使用。

3.查看适配器的具体信息
输入:”’imaqhwinfo(‘winvideo’)”’
得到:
ans =

   AdaptorDllName: 'C:\MATLAB\SupportPackages\R2014b\osgenericvideointerface\toolbox\imaq\supportpack...'AdaptorDllVersion: '4.8 (R2014b)'      AdaptorName: 'winvideo'        DeviceIDs: {[1]}       DeviceInfo: [1x1 struct]

二、创建视频输入对象:
obj = videoinput(adaptorname,deviceID,format)
参数:
adaptorname:适配器名称,首次可以使用不带参数的imaqhwinfo函数获取
deviceID:设备ID号,首次可以通过imaqhwinfo函数获取
format:视频采集格式,可以通过DeviceInfo的SupportedFormats获取,不填写则使用默认格式
其中format可通过XXX.SupportedFormats来查询
代码:
vid = videoinput(‘winvideo’, 1, ‘YUY2_640x480’);

三、视频的预览和显示(preview、stoppreview、closepreview和image)
代码:preview(vid);

四、图像的捕捉、显示与保存
代码:
frame = getsnapshot(vid); %捕捉一副图像
imshow(frame); %显示此图像
imwrite(fame,’snap.jpg’,’jpg’);%保存该图像

五、一个小的测试实验:
代码:

%图片采集close allvidobj = videoinput('winvideo',1,'YUY2_640x480');triggerconfig(vidobj,'manual');start(vidobj);preview(vidobj);tic for i = 1:10     snapshot = getsnapshot(vidobj);     frame = ycbcr2rgb(snapshot);     frame = rgb2gray(frame);     figure;     imshow(frame);     drawnow;     saveas(gcf,['D:\我的文档\MATLAB',num2str(i),'.jpg']);%      pause(0.033);end% elapsedTime = toc;% timePerFrame = elapsedTime/1000;% effectiveFrameRate = 1/timePerFrame;stop(vidobj);delete(vidobj);disp('end');
1 0
原创粉丝点击