Operator SplitLine

运算符 Library: Synchronization

该算子将输入行拆分为多个较短的行。输出行宽由参数 LineLength 指定。例如,如果将 LineLength 设置为 512,输入行长度为 1024 像素,则每 1 个输入行将生成两个长度为 512 的较短新行。

如果输入行的长度不能被 LineLength 参数值整除,输入行将尽可能被拆分为指定长度的行。剩余的像素将产生一个较短的行宽。例如,将 1024 像素的输入行拆分为长度为 400 的子行时,算子将输出 2 个长度为 400 的行和第 3 个长度为 224 的最后一行。

请注意,该算子可能会生成具有多个行长度的输出图像。并非所有的 VisualApplets 算子都能处理使用不同行长度的图像。

SplitLine 算子也可用于执行 0D 到 1D 转换。连接使用图像协议 VALT_PIXEL0D 的链路以执行转换。

如果在图像采集过程中动态更改 LineLength 的值,算子将在内部保留旧的 LineLength 值,直到当前正在处理的行在输出链路 O 上提供。行完成后,下一次拆分操作将使用新的 LineLength 值。

I/O Property

Property 值
Operator Type M
Input Link I,数据输入
Output Link O,数据输出

Supported Link Format

Link Parameter Input Link I Output Link O
Bit Width [1, 64]1 as I
Arithmetic {unsigned, signed} as I
Parallelism any as I
Kernel Columns any as I
Kernel Rows any as I
Img Protocol {VALT_IMAGE2D, VALT_LINE1D, VALT_PIXEL0D} auto2
Color Format any as I
Color Flavor any as I
Max. Img Width any any3
Max. Img Height any any4

1

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

2

如果使用 VALT_IMAGE2D 或 VALT_LINE1D,则输出图像协议与输入图像协议相同。如果在输入端使用 VALT_PIXEL0D 图像协议,算子将执行向 VALT_LINE1D 图像协议的转换。

3

输出最大图像宽度必须小于或等于输入最大图像宽度,且大于或等于参数 LineLength。

4

输出最大图像高度必须大于或等于输入图像高度。

参数

LineLength
键入 动态读/写参数
默认 1
范围 [输入 Parallelism, 最大输出图像宽度], 步长 = 输入 Parallelism

拆分后的输出行的最大行长度。

使用示例

以下示例展示了 SplitLine 算子的使用: