Create an image from a pointer to the pixels.
The operator gen_image1 creates an image of the size Width * Height. The pixels in PixelPointer are stored line-sequentially. The type of the given pixels (PixelPointer) must correspond to Type. The storage for the new image is newly created by HALCON . Thus, the storage on the PixelPointer can be released after the call. Since the type of the parameter PixelPointer is generic (long) a cast has to be used for the call.
|
Image (output_object) |
image -> object : byte / direction / cyclic / int1 / int2 / uint2 / int4 / real |
| Created image with new image matrix. | |
|
Type (input_control) |
string -> string |
| Pixel type. | |
| Default value: 'byte' | |
| List of values: 'byte', 'direction', 'cyclic', 'int1', 'int2', 'uint2', 'int4', 'real' | |
|
Width (input_control) |
extent.x -> integer |
| Width of image. | |
| Default value: 512 | |
| Suggested values: 128, 256, 512, 1024 | |
| Typical range of values: 1 <= Width <= 512 (lin) | |
| Minimum increment: 1 | |
|
Recommended increment: 10 | |
| Restriction: Width >= 1 | |
|
Height (input_control) |
extent.y -> integer |
| Height of image. | |
| Default value: 512 | |
| Suggested values: 128, 256, 512, 1024 | |
| Typical range of values: 1 <= Height <= 512 (lin) | |
| Minimum increment: 1 | |
|
Recommended increment: 10 | |
| Restriction: Height >= 1 | |
|
PixelPointer (input_control) |
integer -> integer |
| Pointer to first gray value. | |
void NewImage(Hobject *new)
{
unsigned char image[768*525];
int r,c;
for (r=0; r<525; r++)
for (c=0; c<768; c++)
image[r*768+c] = c % 255;
gen_image1(new,"byte",768,525,(long)image);
}If the parameter values are correct, the operator gen_image1 returns the value 2 (H_MSG_TRUE). Otherwise an exception handling is raised.
gen_image1 is reentrant and processed without parallelization.
gen_image_const, get_image_pointer1
gen_image3, gen_image_const, get_image_pointer1
reduce_domain, paint_gray, paint_region, set_grayval
Foundation