主要内容

visionhdl。PixelsToFrame

将像素流转换为基于帧的视频

描述

visionhdl。PixelsToFrame系统对象™将彩色或灰度像素流和控制结构转换为基于帧的视频。控制结构表明每个像素及其在帧中的位置的有效性。像素流格式可以包括活动帧周围的填充像素。您可以通过选择通用视频格式或指定自定义尺寸来配置帧和填充尺寸。有关像素流格式的详细信息,请参见流像素接口

使用此对象将针对HDL代码生成的函数的输出转换回帧。对象本身不支持HDL代码生成。

如果您的设计将帧转换为像素流,然后将流转换回帧,请为FrameToPixels对象和PixelsToFrame对象。

将像素流转换为基于帧的视频。

  1. 创建visionhdl。PixelsToFrame对象并设置其属性。

  2. 调用带有参数的对象,就像调用函数一样。

要了解更多关于System对象如何工作的信息,请参见什么是系统对象?

创建

描述

例子

P2F= visionhdl。PixelsToFrame(的名字价值返回一个将像素流转换为图像帧的System对象。使用一个或多个名值对设置属性。将每个属性名用单引号括起来。

属性

全部展开

除非另有说明,属性为nontunable,这意味着在调用对象后不能更改它们的值。对象在调用时锁定,而释放函数打开它们。

如果属性是可调,您可以随时更改其值。

有关更改属性值的更多信息,请参见在MATLAB中使用系统对象设计系统

用于表示每个像素的值的数目,指定为123.,或4组件。

  • 对于灰度视频,将此属性设置为1

  • 对于彩色视频,例如{R,G,B}或{Y,Cb,Cr},将此属性设置为3.

  • 对于带有alpha通道的彩色视频,将此属性设置为4

visionhdl。PixelsToFrame对象期望的矩阵为P——- - - - - -NumComponents值,P填充帧中的像素总数。

依赖关系

NumComponents大于1时,必须设置NumPixels财产1

每个循环在流媒体接口上传输的像素数,指定为124,或8.若要启用多像素流媒体并提高高分辨率或高帧率视频的吞吐量,请将此属性设置为24,或8.的visionhdl。PixelsToFrame对象预计P——- - - - - -NumPixels矩阵,P填充帧中的像素总数。

请注意

可以使用多像素流接口模拟系统对象,但不能为使用多像素流的系统对象生成HDL代码。要为多像素算法生成HDL代码,请使用等效的Simulink®块。

依赖关系

NumPixels大于1时,必须设置NumComponents财产1

视频帧活动区域的尺寸。要选择预定义的格式,请指定VideoFormat属性作为表第一列中的选项之一。对于自定义格式,请设置VideoFormat“自定义”,并将维度属性指定为整数。

视频格式 每行活动像素 活跃的视频线
240便士 320 240
480便士 640 480
ph值480 720 480
576便士 720 576
720便士 1280 720
768便士 1024 768
1024便士 1280 1024
1080便士(默认) 1920 1080
1200便士 1600 1200
2 kcinema 2048 1080
4 kuhdtv 3840 2160
8 kuhdtv 7680 4320
自定义 用户-
定义
用户-
定义

使用

描述

例子

validOut) = P2F (像素ctrlIn转换表示填充图像的像素值向量,像素,以及控制结构的相关向量,ctrlIn,到图像矩阵,.控制结构表明每个像素及其在帧中的位置的有效性。输出图像,,如果为有效validOut真正的

有关像素流格式的详细信息,请参见流像素接口

输入参数

全部展开

像素值,指定为P——- - - - - -NumComponents矩阵,或P——- - - - - -NumPixels矩阵,地点:

  • P填充图像中的像素总数是多少TotalPixelsPerLine×TotalVideoLines

  • NumComponents表示用于表示单个像素的组件数量。

  • NumPixels是每个周期在流媒体接口上传输的像素数。当NumPixels大于1,必须设置吗NumComponents1

    请注意

    可以使用多像素流接口模拟系统对象,但不能为使用多像素流的系统对象生成HDL代码。要为多像素算法生成HDL代码,请使用等价的Simulink块。

方法设置填充图像的大小VideoFormat财产。如果元素的个数像素与指定的尺寸不符VideoFormat,该对象返回一个警告。

数据类型:使用uint|int|逻辑|fi||

与输入像素相关联的控制结构,指定为P1的向量。P填充图像中的像素总数是多少TotalPixelsPerLine×TotalVideoLines.每个结构包含五个控制信号,指示像素的有效性及其在帧中的位置。对于多像素流,控制信号应用于每一组NumPixels值。看到像素控制结构

输出参数

全部展开

输出图像,返回为ActiveVideoLines——- - - - - -ActivePixelsPerLine——- - - - - -NumComponents矩阵,地点:

  • ActiveVideoLines是活动图像的高度。

  • ActivePixelsPerLine活动图像的宽度。

  • NumComponents表示用于表示单个像素的组件数量。

像素的数据类型与输入相同像素

数据类型:使用uint|int|逻辑|fi||

帧状态,作为逻辑值返回。当validOut为真,框架被重新组装并准备使用。

数据类型:逻辑

对象的功能

要使用对象函数,请将System对象指定为第一个输入参数。例如,释放名为obj,使用以下语法:

发行版(obj)

全部展开

一步 运行系统对象算法
释放 释放资源并允许更改系统对象属性值和输入特征
重置 的内部状态重置系统对象

例子

全部折叠

此示例将自定义大小的灰度图像转换为像素流。它使用visionhdl。LookupTable对象来获取负像。然后它将像素流转换回全帧图像。

从文件加载源图像。选择匹配所需测试大小的图像的一部分。

frmOrig = imread (“rice.png”);frmActivePixels = 64;frmActiveLines = 48;frmInput = frmOrig (1: frmActiveLines, 1: frmActivePixels);图imshow (frmInput,“InitialMagnification”标题,300)输入图像的

图中包含一个axes对象。标题为Input Image的axes对象包含一个Image类型的对象。

创建一个序列化器对象并指定非激活像素区域的大小。

frm2pix = visionhdl。FrameToPixels (...“NumComponents”, 1...“VideoFormat”“自定义”...“ActivePixelsPerLine”frmActivePixels,...“ActiveVideoLines”frmActiveLines,...“TotalPixelsPerLine”frmActivePixels + 10,...“TotalVideoLines”frmActiveLines + 10,...“StartingActiveLine”6...“FrontPorch”5);

创建一个查找表(LUT)对象来生成输入图像的底片。

tabledata = linspace(255、0256);逆变器= visionhdl.LookupTable (tabledata);

通过调用序列化器对象来序列化测试映像。pixIn是强度值的向量。ctrlIn是控制信号结构的矢量。

[pixIn, ctrlIn] = frm2pix (frmInput);

准备通过预分配输出向量来处理像素。

[~, ~, numPixelsPerFrame] = getparamfromfrm2pix (frm2pix);pixOut = 0 (numPixelsPerFrame 1“uint8”);ctrlOut = repmat (pixelcontrolstruct numPixelsPerFrame 1);

对于流中的每个像素,查找像素值的负数。

p = 1:numPixelsPerFrame [pixOut(p),ctrlOut(p)] =逆变器(pixIn(p),ctrlIn(p));结束

创建一个格式与序列化器的格式匹配的反序列化器对象。通过调用反序列化器对象将像素流转换为图像帧。显示结果图像。

pix2frm = visionhdl。PixelsToFrame (...“NumComponents”, 1...“VideoFormat”“自定义”...“ActivePixelsPerLine”frmActivePixels,...“ActiveVideoLines”frmActiveLines,...“TotalPixelsPerLine”, frmActivePixels + 10);[frmOutput, frmValid] = pix2frm (pixOut ctrlOut);如果frmValid图imshow (frmOutput,“InitialMagnification”标题,300)输出图像的结束

图中包含一个axes对象。标题为Output Image的axes对象包含一个Image类型的对象。

版本历史

介绍了R2015a

全部展开

Baidu
map