get_image_pointer3 — Access the pointers of a colored image.
The operator get_image_pointer3 returns a C pointer to the three channels of a colored image (ImageRGB). Additionally the image type (Type = 'byte', 'int2','float' etc.) and the image size (Width and Height) are returned. Consequently a direct access to the image data in the HALCON database from the HALCON host language via the pointer is possible. An image is stored in HALCON as a vector of image lines. The image types 'complex' and 'vector_type' are handled in a specific way. In particular, 'complex' images are interleaved, i.e., the real and the imaginary parts are alternating, whereas 'vector_field' images consist of two matrices, one for the rows and one for the columns, which are stored in the HALCON database one after the other. The three channels must have the same pixel type and the same size.
Only one image can be passed. The operator get_image_pointer3 should only be used for entry into newly created images, since otherwise the gray values of other images might be overwritten (see relational structure).
Pointer to the pixels of the first channel.
Pointer to the pixels of the second channel.
Pointer to the pixels of the third channel.
Type of image.
List of values: 'byte', 'complex', 'cyclic', 'direction', 'int1', 'int2', 'int4', 'int8', 'real', 'uint2', 'vector_field_absolute', 'vector_field_relative'
Width of image.
Height of image.
The operator get_image_pointer3 returns the value 2 (H_MSG_TRUE) if exactly one image is passed. The behavior in case of empty input (no input images available) is set via the operator set_system('no_object_result',<Result>). If necessary an exception is raised.
set_grayval, get_grayval, get_image_pointer1