Operator AppendImage

Operator Library: Synchronization

The operator AppendImage concatenates input images into a larger output image. The number of images assembled at the output link O is defined by the parameter AppendNumber. For example, when AppendNumber is set to 2, the operator will assemble two successive images into a new larger one.

Note that the operator reduces the frame rate on its output by keeping the original bandwidth. The frame rate is reduced by factor AppendNumber.

The output link image protocol of the operator can also be set to VALT_LINE1D. In this case, the operator appends all incoming images into one image of unlimited height. This way, the operator can be used to convert a 2D image stream into a 1D line stream. If the 2D to 1D conversion is used in the VisualApplets simulation, images are not concatenated. In simulation, for every input image, one output image is generated.

When changing the AppendNumber value dynamically while acquisition is running, the operator guarantees image integrity. The operator keeps the old AppendNumber value until the output frame is finished. After the completion of the current output frame the operator will start using the new AppendNumber value for further merging.

[Caution] Exceeded Maximum Image Height

Please note that it is possible to exceed the maximum image height defined in the output link with this operator. Always ensure that the concatenated input images do not exceed the parameterized maximum image height of the output link. Further operators might not work correctly if the image height is exceeded.

For example, 3 input images of height 1024 are concatenated. The output image height will be 3072. Thus, the maximum image height in the output link must be set to 3072 or higher to ensure a correct functionality of the VisualApplets operators.

[Tip] Converting 1D to 2D

If you want to perform a 1D to 2D conversion, you can use operator SplitImage. See documentation on operator SplitImage.

I/O Properties

Property Value
Operator Type P
Input Link I, data input
Output Link O, data output

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_IMAGE2D, VALT_LINE1D
Color Format any as I
Color Flavor any as I
Max. Img Width any as I
Max. Img Height any any2

1

The range of the input bit width is [1, 64] for unsigned inputs. 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].

2

The maximum output image height has to be greater or equal than parameter AppendNumber times the input image height. However, if the output link image protocol is set to VALT_LINE1D, the parameter AppendNumber is deactivated.

Parameters

AppendNumber
Type dynamic read/write parameter
Default 1
Range [1, Max. Image Height(output link)]

The number of input images which are concatenated into a single output image.

This parameter can only be changed if the output link image protocol is set to VALT_IMAGE2D.

LinesToSimulate
Type static read/write parameter
Default 1
Range [1, 2^32 - 1]

The number of lines in the simulated 1D output stream.

This parameter can only be used during simulation if the output protocol is set to VALT_IMAGE1D.

Background information: In VisualApplets simulation, there are always 2-dimensional images created. To be able to simulate lines, this parameter has been created (for simulation only). The parameter allows to specify the number of lines that are to be simulated. During simulation, these lines are put together to one 2-dimensional "image". This way, the individual lines can be simulated. All lines that come in after the number specified in LinesToSimulate has been reached are discarded. Exactly one 2-dimensional output image is generated for simulation.

Examples of Use

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