主要内容

像素流对准器

对齐两个像素数据流

  • 库:
  • 视觉HDL工具箱/实用程序

  • 像素流校准器块

描述

像素流对准器块通过延迟一个流来匹配参考流的时间来同步两个像素流。许多Vision HDL Toolbox™算法会延迟像素流,并且延迟量可以随着您调整算法参数而改变。您可以使用此块来对齐流,以便叠加、比较或组合两个流,例如在高斯模糊操作中。将延迟流连接到refPixel而且refCtrl输入端口,而前面的流到像素而且ctrl输入端口。

这个波形图显示了输入流,pixelIn而且refPixelIn,及其相关的控制信号。引用输入帧开始的时间晚于pixelIn框架。输出信号表明块延迟pixelIn匹配参考流,并且两个输出流共享控制信号。波形显示了输入之间的短延迟refCtrl和输出refCtrl.在这个模拟中,为了适应输入流之间的四行延迟,使用最大行数参数必须设置为至少4。

港口

输入

全部展开

这个模块使用流像素接口和用于帧控制信号的总线。这个接口允许块独立于图像大小和格式运行。的像素该块上的端口支持单像素流或多像素流。单像素流在每个时钟周期接受并返回一个单像素值。多像素流接受并返回的向量每个时钟周期像素,以支持高帧率或高分辨率格式。的值对应于数量的像素参数的帧像素块。与像素一起,块接受并返回一个pixelcontrol包含五个控制信号的总线。控制信号表明每个像素的有效性和它们在帧中的位置。对于多像素流,一组控制信号适用于矢量中的所有像素。方法可将帧(像素矩阵)转换为串行像素流和控制信号帧像素块。有关该接口的完整描述,请参见流像素接口

该块还支持多像素多组件流,其中像素输入是的矩阵——- - - - - -N值。像素数和N是组分的数量。这些值对应于数量的像素而且数量的组件参数帧像素块。

对于单像素流,指定像素作为1 × -的标量或向量数量的组件值。对于多像素流,指定像素作为一个矩阵数量的像素——- - - - - -数量的组件像素强度值。数量的像素可以是2、4或8个。

因为块延迟了这个像素流以匹配参考流的控制信号,refPixel像素肯定是两条流中较早的那条。

而且数据类型支持模拟,但不支持HDL代码生成。

数据类型:不动点|使用uint|int|布尔||

pixelcontrol总线包含五个信号。这些信号描述了像素的有效性及其在帧中的位置。有关更多信息,请参见像素控制总线

对于多像素流,每个像素值向量都有一组控制信号。因为向量只有一个有效的信号,向量中的像素必须是全部有效或全部无效的。的hStart而且音速启动信号应用于向量中索引最低的像素。的这个到而且公开发表信号应用于向量中索引最高的像素。

数据类型:公共汽车

指定refPixel作为标量,1 × -的向量数量的组件值,或矩阵数量的像素——- - - - - -数量的组件像素强度值。

允许的尺寸refPixel取决于输入的维度像素流。的数量的像素一定是一样的。

输入像素尺寸 允许refPixel维度
1 -N 1 × 1, 1 × 3, 1 × 4
2 -N 2 × 1, 2 × 3,或2 × 4
4 * -N 4 × 1, 4 × 3, 4 × 4
8 * -N 8 × 1, 8 × 3, 8 × 4

因为阻塞延迟了像素输入流匹配参考控制信号,refPixel肯定是两条流中的后者。参考数据及其控制信号以很小的延迟通过块。

而且数据类型支持模拟,但不支持HDL代码生成。

数据类型:不动点|使用uint|int|布尔||

pixelcontrol总线包含五个信号。这些信号描述了像素的有效性及其在帧中的位置。有关更多信息,请参见像素控制总线

对于多像素流,每个像素值向量都有一组控制信号。因为向量只有一个有效的信号,向量中的像素必须是全部有效或全部无效的。的hStart而且音速启动信号应用于向量中索引最低的像素。的这个到而且公开发表信号应用于向量中索引最高的像素。

块对对齐的输出流使用这些控制信号。

数据类型:公共汽车

输出

全部展开

输出的时间像素流匹配输出的时间refPixel流。输出的维度和数据类型像素流与输入的匹配像素流。

数据类型:不动点|使用uint|int|布尔||

输出的维度和数据类型refPixel流与输入的匹配refPixel流。块将此流以不变的方式通过块。

数据类型:不动点|使用uint|int|布尔||

块传递输入refCtrl信号通过一个小的延迟块。

数据类型:公共汽车

参数

全部展开

选择2的幂,以适应水平线上活动像素的数量。如果指定的值不是2的次幂,则块使用2的第二大次幂。该块实现了一个2的循环缓冲区像素,最大行数+日志2线缓冲区大小).

该块实现了一个2的循环缓冲区像素,最大行数+日志2线缓冲区大小的行地址缓冲区最大行数的位置。循环存储器存储较早的输入行,直到参考控制信号到达。行地址缓冲区存储每行开始的地址。当参考控制信号到达时,块使用存储的地址来读取和发送延迟的线路。此参数必须容纳两个输入流之间的时间差,包括块读取第一行之前的内部延迟。在模拟过程中,当发生溢出时,块会发出警告。为避免溢出情况,增加最大行数.流之间的延迟不能超过整个帧。

当输入像素是一个向量或矩阵,则块为每个元素复制循环缓冲区。对于多像素流,块调整行缓冲区大小以存储1/数量的像素像素。例如,对于4 × 3的输入流,每个缓冲区存储一行的¼个像素,缓冲区是12×2m - 2的位置。行地址缓冲区保持相同的大小。

算法

数据块存储来自像素输入端口到一个循环缓冲区,然后读取行对齐参考控制信号。该块还存储每行开始的地址。为了匹配缓冲数据路径的附加处理延迟,块延迟参考像素数据和控制信号约10个周期。

该图显示了该区块的架构。RAM循环缓冲区的内存为2像素,最大行数+日志2线缓冲区大小).行地址缓冲区有最大行数的位置。如果ctrl。Hstart断言在第一个之前refCtrl。Hstart断言大于行地址缓冲区的大小,块将覆盖这两个缓冲区并破坏输出。在这个图中,最大行数为4,因此存在4个位置用于在缓冲区中存储行地址。帧开始缓冲区是一个单独的存储位置ctrl。音速启动.两个流之间的延迟必须小于帧之间开始的时间。

当输入像素是一个向量或矩阵,则块为每个元素复制RAM循环缓冲区。该图显示了三个RAM循环缓冲区,表示一个三分量像素流。每个RAM循环缓冲区为2内存位置。对于多像素流,块调整行缓冲区大小以存储1/数量的像素像素。例如,对于一个4 × 3的输入流,每个缓冲区存储一行的¼像素,有12个RAM循环缓冲区,每个缓冲区有2个像素m - 2的位置。行地址缓冲区保持相同的大小。

扩展功能

版本历史

介绍了R2017a

全部展开

另请参阅

对象

Baidu
map