Operator DynamicROI

Operator Library: Base

DynamicROI 算子从输入链接 I 中提取矩形感兴趣区域 (ROI)。 输出图像高度和行宽由 ROI 图像参数 Ylength 和 Xlength 定义。 此 ROI 的大小由四个输入链接 Xoffset、Yoffset、Xlength 和 Ylength 动态定义。 该算子的目的是使 ROI 的尺寸和位置适应图像处理步骤的结果。 ROI 的所有参数可能因图像而异。

从 I 到 O 的图像流由四个链接 Xoffset、Yoffset、Xlength 和 Ylength 控制。 这四个链接既可以完全异步工作(由不同的 M 类型算子提供源),也可以完全同步工作(通过 O 类型算子的任意网络 由相同的 M 类型算子 提供源)。 若要在输出 O 处输出 ROI,必须在所有五个输入处提供图像。 在所有输入都提供图像之前,已提供图像的那些输入将被阻塞。 强烈建议在各个输入端、 尤其是输入链接 I 处设置缓冲元件。 您可以将 DynamicROI 的行为想象为一个阀门,只有在所有输入处都提供图像时才会打开。

每当图像到达四个控制输入中的每一个时,DynamicROI 就会捕获每个控制链接的最后一个像素。 一旦 DynamicROI 在控制输入端接收到所有图像,阀门就会打开,并允许图像从 I 传递到 O。 现在,使用捕获的 ROI 坐标来提取 ROI。 将 ROI 图像传输到 O 后,阀门再次关闭,并等待出现在控制链接上的下一组图像 ROI 坐标。

该算子的一个重要用途是与 CreateBlankImage 和 CoefficientBuffer 结合使用,或者与 object detection 实现的结果结合使用。 使用参数控制 ROI 坐标的算子是 SelectROI。

算子限制

  • 如果 Xlength 不是链接 I 和 O 的 Parallelism 的整数倍,算子将扩展 ROI 宽度 以匹配 Parallelism。 虚拟像素会添加到每行的末尾。 该虚拟像素的值未定义。 在 VA 仿真中,为了便于观察,虚拟像素将被设为零。
  • 如果 ROI 坐标非法,即 Xlength 和/或 Ylength 为零或偏移量超出图像边界, 算子将裁剪并输出空图像或移除图像。可以通过参数 SuppressEmptyRoI 来控制此行为。
  • 如果偏移坐标有效,但 Xlength 和/或 Ylength 坐标超出图像边界, 算子会将 ROI 缩减至图像边界。
  • 如果在 ROI 输入端提供了空的坐标集(即高度和宽度均等于 0 的 ROI 帧), 算子 DynamicROI 会将此类空 ROI 视为坐标无效的 ROI。 算子将裁剪并输出空图像或移除图像。可以通过参数 SuppressEmptyRoI 来控制此行为。
  • 不支持端口 I 上的空图像。
  • 端口 I 处每个输入图像的行必须具有相同的长度。因此不允许行长度可变的图像。

I/O Property

Property 值
Operator Type M
输入链路 I,图像输入
Xoffset,x 偏移输入
Yoffset,y 偏移输入
Xlength,x 长度输入
Ylength,y 长度输入
Output Link O,数据输出

同步和异步输入

  • 所有输入都是异步的,即它们可以由不同的 M 类型算子提供源。

Supported Link Format

Link Parameter Input Link I 输入链接 Xoffset 输入链接 Yoffset 输入链接 Xlength 输入链接 Ylength Output Link O
Bit Width [1, 64]1 auto2 auto3 auto4 auto5 as I
Arithmetic {unsigned, signed} unsigned unsigned unsigned unsigned as I
Parallelism any any any any any as I
Kernel Columns any any any any any as I
Kernel Rows any any any any any as I
Img Protocol VALT_IMAGE2D VALT_IMAGE2D VALT_IMAGE2D VALT_IMAGE2D VALT_IMAGE2D as I
Color Format any VAF_GRAY VAF_GRAY VAF_GRAY VAF_GRAY as I
Color Flavor any FL_NONE FL_NONE FL_NONE FL_NONE as I
Max. Img Width any any any any any as I
Max. Img Height any any any any any as I

1

输入 Bit Width 的范围是 [1, 64]。对于有符号输入,范围是 [2, 64]。对于无符号彩色输入,范围是 [3, 63],对于有符号彩色输入,范围是 [6, 63]。

2 3 4 5

控制输入端允许的 Bit Width 是根据输入链接 I 的最大图像尺寸自动确定的

参数

SuppressEmptyRoI
键入 static 参数
默认 开启
范围 {ON, OFF}

如果 ROI 坐标非法,此参数用于控制移除算子输出上的空图像。 有关更多信息,请参阅 Operator Restrictions。

使用示例

算子 DynamicROI 的用法如以下示例所示:

  • “Blob2D ROI Selection”

    示例 - 将斑点分析运算符应用于输入的相机图像。 该小程序展示了斑点数据在小程序中的用法。 在这种情况下,将定位面积最大的对象,并使用其坐标从原始图像中裁剪出该对象。