主要内容

imaq。VideoDevice

每次从视频设备获取一帧

语法

obj = imaq。VideoDevice
obj = imaq.VideoDevice (adaptorname)
obj = imaq。VideoDevice(adaptorname, deviceid)
obj = imaq。VideoDevice(adaptorname, deviceid, format)
obj = imaq。VideoDevice(adaptorname, deviceid, format, P1, V1, ...)
帧=步骤(obj)
[帧元数据] =步骤(obj)

描述

VideoDevice System对象允许从MATLAB中获取单帧图像并生成代码®.你用了imaq。VideoDevice函数创建System对象。它支持金宝app相同的适配器和硬件videoinput对象支持;金宝app但是,它有不同的功能和属性。例如,System对象使用一步函数获取单个帧。

obj = imaq。VideoDevice创建videodevice系统对象,obj,从指定的图像采集设备获取图像。如果不指定参数,默认情况下,它将为返回的第一个适配器选择第一个可用设备imaqhwinfo

obj = imaq.VideoDevice (adaptorname)创建videodevice系统对象,obj,使用指定的第一个设备adaptornameadaptorname字符向量,指定用于与设备通信的适配器的名称。使用imaqhwinfo函数确定系统上可用的适配器。

obj = imaq。VideoDevice(adaptorname, deviceid)创建videodevice系统对象,obj,使用指定的默认格式adaptornameDEVIETID.DEVIETID.标识特定设备的数字标量值是否通过指定可用adaptorname.使用Imaqhwinfo(AdductorName)语法来确定可用的设备和相应的值DEVIETID.

obj = imaq。VideoDevice(adaptorname, deviceid, format)创建videodevice系统对象,obj,在那里格式是指定设备或设备配置文件(也称为摄像机文件)支持的特定视频格式的字符向量。金宝app

obj = imaq。VideoDevice(adaptorname, deviceid, format, P1, V1, ...)创建一个VideoDevice System对象,obj,使用指定的属性值。如果指定了无效的属性名或属性值,则不会创建对象。

在创建对象时指定属性是可选的。它们也可以在对象创建后指定。有关可应用属性的列表,请参见下表。

帧=步骤(obj)从VideoDevice System对象获取单个帧,obj

[帧元数据] =步骤(obj)从VideoDevice System对象获取单个图像帧,obj,以及来自Kinect的元数据®对于Windows®深度传感器。你可以使用Kinect深度传感器上的VideoDevice System对象来返回Kinect的Windows骨架数据。有关如何做到这一点的信息,请参见Kinect的Windows元数据

属性

可以在创建对象时指定属性,也可以在创建对象后指定和更改属性。可以与VideoDevice System对象一起使用的属性包括:

财产 描述
设备 用于获取图像的设备。

指定用于获取帧的图像采集设备。它由设备名称、适配器和设备ID组成。返回的第一个设备为默认设备imaqhwinfo

VideoFormat 图像采集设备所使用的视频格式。

指定获取帧时使用的视频格式。的默认值VideoFormat是否返回默认格式为imaqhwinfo选择的设备。若要使用设备文件指定视频格式,请设置VideoFormat财产“从设备文件”只有当您的设备支持设备配置文件时,此选项才存在。金宝app

DeviceFile 指定视频格式的文件名称。此属性仅在以下情况下可见VideoFormat被设置为“从设备文件”
DeviceProperties 对象,该对象包含特定于图像采集设备的属性。
ROI 收购的地点。这被设置为指定设备的默认ROI值,这是指定格式的最大分辨率。您可以更改值以更改捕获图像的大小。格式为基于1,即,它在1×4元素矢量中以像素中指定[x y宽度高度]

注意,这不同于videoinput对象、图像采集工具和从视频设备块,所有这些都是基于0的。

HardwareTriggering 打开/关闭硬件触发。将此属性设置为“上”使硬件触发获取图像。该属性仅在设备支持硬件触发时可见。金宝app
TriggerConfiguration. 指定采集前的触发源和触发条件。在获取帧之前,触发条件必须通过触发源满足。此属性仅在以下情况下可见HardwareTriggering被设置为“上”
ReturnedColorSpace 指定返回图像的颜色空间。属性的默认值取决于所选的设备和视频格式。可能的值有{rgb|灰度|YCbCr}时,设备的默认返回颜色空间不是灰度.可能的值有{rgb|灰度|YCbCr|拜耳}时,设备的默认返回颜色空间为灰度
BayerSensorAlignment 表示2x2传感器对齐的字符矢量。指定由硬件返回的拜耳模式。指定拜耳脱染料的传感器对齐。此属性的默认值是“grbg”.可能的值有{grbg|gbrg|RGGB.|BGGR.}。可见只有ReturnedColorSpace被设置为“拜耳”
ReturnedDataType 获取帧的返回数据类型。默认的ReturnedDataType
ReadAllFrames 指定是读取一个图像帧还是所有可用帧。设置为“上”以捕获所有可用的图像帧。当设置为默认的“关闭”时,系统对象获取一个帧的快照,这相当于getsnapshot.函数在工具箱中。当该选项开启时,将捕获所有可用的图像帧,这相当于getdata函数在工具箱中。

在MATLAB中编码时,系统对象的设置支持选项卡完成以进行枚举属性。金宝app使用选项卡完成是一种简单的方法,可以看到可用的属性值。键入属性名称后,键入逗号,然后键入一个空格,然后是值的第一个报价标记,然后点击选项卡以查看可能的值。

你也可以用the函数使用对象名称和属性名称获取该属性的可用值列表。例如:

集(obj, ReturnedColorSpace)

获取VideoDevice System对象的可用颜色空间设置列表,obj

注意,一旦完成了某个步骤,为了更改属性或设置新属性,需要使用释放函数,在设置新属性之前。

请注意

要获得可用于某个函数的选项列表,请按选项卡在MATLAB命令行上输入函数后键。列表展开,您可以滚动以选择属性或值。有关使用此高级选项卡完成功能的信息,请参阅使用制表符补全函数

功能

可以与VideoDevice System对象一起使用这些函数。

功能 目的
一步 从图像采集设备获取单个帧。

帧=步骤(obj);

从VideoDevice System对象获取单个帧,obj

注意,第一次调用step时,它会独占使用硬件并开始流数据。

释放 释放VideoDevice资源并允许更改属性值。

发行版(obj)

释放system对象的系统资源(如内存、文件句柄或硬件连接),obj,并允许更改其所有属性和输入特征。

isLocked 返回一个值,该值指示VideoDevice资源是否被锁定。(使用释放解锁)。

L = isLocked (obj)

返回逻辑值,l,表示是否锁定System对象obj的属性。对象在第一次调用时执行内部初始化一步函数执行。这个初始化锁定了属性和输入规范。一旦发生这种情况,isLocked函数返回值为真正的

预览 激活实时图像预览窗口。

预览(obj)

创建视频预览窗口,为VideoDevice System对象显示实时视频数据,obj.视频预览窗口显示100%放大的视频数据。预览图像的大小由VideoDevice System对象的值决定ROI财产。如果不指定,它将使用设备的默认分辨率。

closepreview 关闭实时图像预览窗口。

closepreview (obj)

关闭VideoDevice System对象的实时预览窗口,obj

imaqhwinfo 返回关于对象的信息。

imaqhwinfo (obj)

显示关于VideoDevice System对象的信息,obj

例子

构造一个与Winvideo适配器相关联的VideoDevice System对象,设备ID为1。

vidobj = imaq。VideoDevice('winvideo', 1);

设置对象级属性,例如ReturnedColorSpace.对象级属性的语法使用对象名称、属性名称和属性值。

vidobj。ReturnedColorSpace =“灰度”;

设置特定于设备的属性,例如亮度.指定设备属性的语法使用DeviceProperties对象、属性名和属性值。

vidobj.DeviceProperties.Brightness = 150;

预览图像。

预览(vidobj)

获取单个帧。

帧=步骤(vidobj);

显示获取的帧。

imshow(框架)

释放硬件资源。

释放(vidobj);

清除videodevice系统对象。

清楚vidobj;

扩展功能

介绍了R2012a