get_image_pointer1 ( Image : : : Pointer, Type, Width, Height )

Access the pointer of a channel.

The operator get_image_pointer1 returns a C pointer to the first channel of the image Image. Additionally the image type (Type = 'byte', 'integer', 'float' etc.) and the image size (width and height) are returned. Consequently a direct access to the image data in the HALCON databank from the HALCON host language via the pointer is possible. An image is stored in HALCON as a vector of image lines.


Attention

The operator get_image_pointer1 should only be used for entry into newly created images, since otherwise the gray values of other images might be overwritten (see relational structure).


Parameters

Image (input_object)
image -> object : byte / direction / cyclic / int1 / int2 / uint2 / int4 / real / complex / dvf
Input image.

Pointer (output_control)
pointer -> integer
Pointer to the image data in the HALCON databank.

Type (output_control)
string -> string
Type of image.
List of values: 'int1', 'int2', 'uint2', 'int4', 'byte', 'real', 'direction', 'cyclic', 'complex', 'dvf', 'lut'

Width (output_control)
extent.x -> integer
Width of image.

Height (output_control)
extent.y -> integer
Height of image.


Example
Hobject  Bild;
char     typ[128];
long     width,height;
unsigned char *ptr;

read_image(&Bild,"fabrik");
get_image_pointer1(Bild,(long*)&ptr,typ,&width,&height);

Result

The operator get_image_pointer1 returns the value 2 (H_MSG_TRUE) if exactly one image was 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 handling is raised.


Parallelization Information

get_image_pointer1 is reentrant and processed without parallelization.


Possible Predecessors

read_image


Alternatives

set_grayval, get_grayval, get_image_pointer3


See also

paint_region, paint_gray


Module

Image / region / XLD management



Copyright © 1996-2005 MVTec Software GmbH