Operator Register

Operator Library: Accumulator

Register is a data storage element. Input pixels are stored and forwarded to the output while the Capture input is set to 1. If Capture is set to 0, than the previously stored value will be held.

It is possible to reset the register to the initial value at the and of a line, the end of a frame or never. This behavior is controlled using parameter AutoClear. An initial value can be defined using parameter Init. This initial value is applied on start-up.

Register operators are commonly used to store intermediate results.

[Note] Resource Consumption

The operator's FGPA resource consumption strongly increases with the parallelism. We recommend to use low parallelism at this operator.

In many use cases of this operator, the parallelism can be reduced by selecting the last parallel component using operator SelectFromParallel prior to this operator.

I/O Properties

Property Value
Operator Type O
Input Links I, Image Input
Capture, binary input to control the register
Output Link O, Data Output

Supported Link Format

Link Parameter Input Link I Input Link Capture Output Link O
Bit Width [1, 64]1 1 as I
Arithmetic {unsigned, signed} unsigned as I
Parallelism any as I as I
Kernel Columns any 1 as I
Kernel Rows any 1 as I
Color Format any VAF_GRAY as I
Color Flavor any FG_NONE as I
Max. Img Width any as I as I
Max. Img Height any as I as I


The range of the input bit width is [1, 64]. For signed inputs, the range is [2, 64]. For unsigned color inputs, the range is [3, 63] and for signed color, the range is [6, 63].


Type static parameter
Default EoL
Range {EoL, EoF, None}

This parameter selects whether to reset the register to the initial value at end of line (EoL), end of frame (EoF) or never (None).

If image protocol VALT_LINE1D is used, the auto clear at the end of a frame is not possible. For VALT_PIXEL0D or VALT_SIGNAL, the parameter is disabled.

Type static parameter
Default 0
Range [0, 2^InputBitWidth-1]

This parameter defines the initialization value for the register operator at design start up, after a design reset, or after an auto clear event. The minimum value is 0. The maximum value can be derived from the pixel bit width at the input. Currently, no signed values can be edited. To set the parameter to a signed value enter the unsigned two's complements representation. For color and other multi component formats, the parameter Init defines the initialization value for all components, i.e. all components will be initialized with the same value.

Examples of Use

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

  • 'Blob2D ROI Selection'

    Examples - The blob analysis operator is applied to an input camera image. The applet shows the usage of the blob data in the applet. In this case, the object with the maximum are is localized and the coordinates are used to cut out the object from the original image.