名称
gen_image3 - 从三个指向像素的指针(红/绿/蓝)创建一个图像。
用法
gen_image3( : ImageRGB : Type, Width, Height, PixelPointerRed, PixelPointerGreen, PixelPointerBlue : )
描述
算子gen_image3创建Width*Height大小的三通道图像。 PixelPointerRed,PixelPointerGreen和PixelPointerBlue中的像素按照顺序存储。 给定像素的类型(PixelPointerRed等)必须对应于Type(请参见gen_image_const以获取更详细的像素类型描述)。 新图像的内存是由HALCON新创建的。 因此,可以在调用结束后释放内存。 请注意,如何传递一个指针值取决于所使用的算子和编程环境。 确保传递存储图像数据的实际内存地址,而不是指针变量的地址。 必须注意不要在64位体系结构上截断64位指针。
并行
● 多线程类型:可重入(与非独占算子并行运行)。
● 多线程范围:全局(可以从任何线程调用)。
● 不并行化处理。
参数
ImageRGB (output_object) image → object (byte / direction / cyclic / int1 / int2 / uint2 / int4 / real)
创建的新的图像矩阵。
Type (input_control) string → (string)
像素类型。
Default value: 'byte'
List of values: 'byte', 'cyclic', 'direction', 'int1', 'int2', 'int4', 'real', 'uint2'
Width (input_control) extent.x → (integer)
图像宽度。
Default value: 512
Suggested values: 128, 256, 512, 1024
Typical range of values: 1 ≤ Width ≤ 512 (lin)
Minimum increment: 1
Recommended increment: 10
Height (input_control) extent.y → (integer)
图像高度
Default value: 512
Suggested values: 128, 256, 512, 1024
Typical range of values: 1 ≤ Height ≤ 512 (lin)
Minimum increment: 1
Recommended increment: 10
PixelPointerRed (input_control) pointer → (integer)
指向第一个红色值的指针(通道1)。
PixelPointerGreen (input_control) pointer → (integer)
指向第一个绿色值的指针(通道2)。
PixelPointerBlue (input_control) pointer → (integer)
指向第一个蓝色值的指针(通道3)。
Example (C)
void NewRGBImage(Hobject *new) { unsigned char red[768*525]; unsigned char green[768*525]; unsigned char blue[768*525]; int r,c; for (r=0; r<525; r++) for (c=0; c<768; c++) { red[r*768+c] = c % 255; green[r*768+c] = (767 - c) % 255; blue[r*768+c] = r % 255; } gen_image3(new,"byte",768,525,(Hlong)red,(long)green,(long)blue); } main() { Hobject rgb; open_window(0,0,768,525,0,"","",&WindowHandle); NewRGBImage(&rgb); disp_color(rgb,WindowHandle); clear_obj(rgb); }
结果
如果参数值正确,则算子gen_image3返回值2(H_MSG_TRUE)。 否则会引发异常。
Possible Predecessors
gen_image_const, get_image_pointer1
Possible Successors
disp_color
Alternatives
gen_image1, compose3, gen_image_const
See also
reduce_domain, paint_gray, paint_region, set_grayval, get_image_pointer1, decompose3
模块
Foundation