Operator IsFirstPixel

Operator Library: Synchronization

Operator IsFirstPixel marks the first pixel in a line (in line mode) or in a frame (in frame mode). The operator outputs a 1 on its output port IsFirstO for each first pixel of a line/frame.

Empty line: If the operator receives an empty line, it also outputs an empty line. IsFirstO is NOT set to 1 in this case.

Empty frame: If the operator receives an empty frame, it also outputs an empty frame. IsFirstO is NOT set to 1 in this case.

Operator IsFirstPixel is an O-type operator. The pixel values received on the input port I are not interpreted.

Example (parameter Mode = Line):

[Note] Parallelism > 1

If parallelism > 1, only the first pixel in the parallelism is marked with a 1 on output port IsFirstO. All other parallelism components are 0.

Example: If Parallelism = 4, IsFirstO is 0x1 at the first pixel, and in all other cases 0.

I/O Properties

Property Value
Operator Type O
Input Link I, data input
Output Link IsFirstO, output of 1 for first pixel in line/frame and 0 for all other pixels

Supported Link Format

Link Parameter Input Link I Output Link IsFirstO
Bit Width [1, 63] 1
Arithmetic {unsigned, signed} unsigned
Parallelism any as I
Kernel Columns any 1
Kernel Rows any 1
Img Protocol {VALT_PIXEL0D, VALT_LINE1D, VALT_IMAGE2D} as I
Color Format {VAF_COLOR, VAF_GRAY} VAF_GRAY
Color Flavor any FL_NONE
Max. Img Width any1 as I
Max. Img Height any as I

1

The maximum image width must be divisible by the parallelism.

Parameters

Mode
Type static or dynamic write parameter
Default Frame
Range {Line, Frame}

If set to "Line", the operator marks the first pixel in a line. The operator outputs a 1 on its output port IsFirstO for each first pixel of a line.

If set to "Frame", the operator marks the first pixel in a frame. The operator outputs a 1 on its output port IsFirstO for each first pixel of a frame.

This parameter you can set to static or dynamic. When you use the parameter as a dynamic parameter: A shadow register is implemented, and the change is taken over between

  • two images (when I is VALT_IMAGE2D),

  • two lines (when I is I is VALT_ LINE1D),

  • directly (when I is I is VALT_ PIXEL0D),

and always at reset. Until then, the old value is used.

Examples of Use

The use of operator IsFirstPixel is shown in the following examples: