主要内容

多区测光

这个例子展示了如何使用图像统计块执行多区域测量,以提取感兴趣的区域(ROI)。

在许多应用程序中,输入视频被分成几个区域,然后在每个区域上计算统计数据。例如,许多自动曝光算法计算区域之间的平均强度差。这允许快门控制器逻辑确定图像是曝光不足(总体低照度)、正确曝光(均匀照度)还是过度曝光(一个或多个roi的平均值更大)。

介绍

MultizoneMeteringHDL.slx系统如下所示。

绿色和红线分别代表全帧处理和像素流处理。色差表示模型流分支上的图像速率的变化。该速率转换是因为像素流以与完整视频帧相同的时间发送,因此它以更高的速率传输。

在这个例子中,像素流ROI提取子系统计算一帧中超过12个预定义ROI的平均强度值,并输出最亮ROI对应的索引数(1-12)。下游面具选择子系统接受这个索引号并输出相关联的二进制掩码图像。将二值掩模图像应用于源视频,只显示光照最强烈的感兴趣区域,对其他11个感兴趣区域进行掩模。的延迟模型顶级的块用于匹配像素流处理引入的延迟。

源图像、二值掩模图像和感兴趣区域输出的一帧从左到右如下图所示。

您可以从Pixel-Stream ROI提取子系统。

视频源

视频格式为240p。每帧由240行和320像素每行组成。在本例中,视频帧被划分为12个不重叠的矩形ROI,表示为ROI编号1 ~ 12,如下图所示。每个感兴趣区域包含输入键盘图像的一个键。

ROI编号1的宽度为107像素,高度为60像素,其左上角像素的(x,y)坐标为(1,1)。ROI编号2的宽度为107像素,高度为60像素,其左上角像素坐标为(108,1),以此类推。如图所示,输入视频的第一帧在ROI编号1内有更亮的像素。第二帧在ROI 2内有更亮的像素,以此类推。

框架为像素:生成像素流

帧像素将全帧图像转换为像素流。为了模拟实际硬件视频系统中水平和垂直消隐周期的影响,采用非图像数据对主动图像进行增强。有关流像素协议的更多信息,请参见流媒体像素接口.的帧像素Block的配置如下所示:

数量的组件字段设置为1表示灰度图像输入视频格式视场为240p,以匹配视频源。

在该示例中,活动视频区域对应于源图像的240x320矩阵。六个其他参数,即,每行总像素总视频线起始活跃线结束活跃的行前阳台, 和背门廊指定在活动视频的四个方面将增强多少个非图像数据。有关更多信息,请参阅帧像素块引用页面。

请注意,样本时间视频源是由的乘积决定的每行总像素总视频线

Pixel-Stream ROI提取

Pixel-Stream ROI提取子系统包含两个子系统,即:多区测光ROI索引器

多区测光子系统计算12个预定义的roi上的平均强度值。得到的12个平均值被传递给下游ROI索引器子系统。ROI索引器输出12个候选区域中具有最大平均强度值(或等效为光照程度最高的ROI)的指数(1-12)。

结构的结构多区测光子系统如下图所示。

多区测光子系统包含12个相同的ROIStatistic子系统。每一个例子ROIStatistic计算一个ROI上的平均强度值。所有的12个ROIStatistic子系统将像素和Ctrl作为前两个输入。其余的四个输入指定了该子系统工作的ROI,它们与一个子系统不同于另一个子系统。例如RoistaticStic1.子系统通过接受左上角像素(1,1)的(x,y)坐标,ROI宽度为107,高度为60,聚焦于ROI编号1。类似地,ROIStaticstic12子系统聚焦在ROI号12上,其左上像素的(x,y)坐标是(215,181),其宽度和高度分别为106和60。

Roistatic1.-Roistatistic12.子系统共享相同的结构如下所示。

它包含一个ROI.子系统,然后是图像数据堵塞。的ROI.子系统操纵原始240P图像的控制信号,并且仅使用由(x,y)对,RoiWidth和Roiheight指定的ROI构造的控制信号。

面具选择

结构的结构面具选择子系统如下所示。

有12个掩模图像可用,对应于12个不同的ROI。这些掩模图案在上图中显示为BM {1}至BM {12}。打开模型时,模型将预定义的BM单元格数组加载到工作区中。掩模是具有240p视频格式的二进制图像。对于掩模BM {n}(n = 1,2,...,12),ROI Number N填充有逻辑1像素(白色),所有其他11个ROI都填充有逻辑0像素(黑色)。基于索引输入(1-12),面具选择子系统输出相关联的二进制掩码图像。

HDL代码生成

要检查和生成此示例中引用的HDL代码,必须具有HDL Coder™许可证。

要生成HDL代码,请使用以下命令。

makehdl (“MultizoneMeteringHDL / Pixel-Stream ROI提取”)

要生成测试工作台,请使用以下命令。注意,由于数据量很大,测试台的生成需要很长时间。您可能希望在生成测试台之前减少模拟时间。

makehdltb(“MultizoneMeteringHDL / Pixel-Stream ROI提取”)