gen_image1gen_image1GenImage1GenImage1gen_image1 (算子)

名称

gen_image1gen_image1GenImage1GenImage1gen_image1 — 从指向像素的指针创建图像。

签名

gen_image1( : Image : Type, Width, Height, PixelPointer : )

Herror gen_image1(Hobject* Image, const char* Type, const Hlong Width, const Hlong Height, const Hlong PixelPointer)

Herror T_gen_image1(Hobject* Image, const Htuple Type, const Htuple Width, const Htuple Height, const Htuple PixelPointer)

void GenImage1(HObject* Image, const HTuple& Type, const HTuple& Width, const HTuple& Height, const HTuple& PixelPointer)

void HImage::HImage(const HString& Type, Hlong Width, Hlong Height, void* PixelPointer)

void HImage::HImage(const char* Type, Hlong Width, Hlong Height, void* PixelPointer)

void HImage::HImage(const wchar_t* Type, Hlong Width, Hlong Height, void* PixelPointer)   ( Windows only)

void HImage::GenImage1(const HString& Type, Hlong Width, Hlong Height, void* PixelPointer)

void HImage::GenImage1(const char* Type, Hlong Width, Hlong Height, void* PixelPointer)

void HImage::GenImage1(const wchar_t* Type, Hlong Width, Hlong Height, void* PixelPointer)   ( Windows only)

static void HOperatorSet.GenImage1(out HObject image, HTuple type, HTuple width, HTuple height, HTuple pixelPointer)

public HImage(string type, int width, int height, IntPtr pixelPointer)

void HImage.GenImage1(string type, int width, int height, IntPtr pixelPointer)

def gen_image1(type: str, width: int, height: int, pixel_pointer: int) -> HObject

描述

算子 gen_image1gen_image1GenImage1GenImage1GenImage1gen_image1 creates an image of the size WidthWidthWidthWidthwidthwidth * HeightHeightHeightHeightheightheight. The pixels in PixelPointerPixelPointerPixelPointerPixelPointerpixelPointerpixel_pointer are stored line-sequentially. The type of the given pixels (PixelPointerPixelPointerPixelPointerPixelPointerpixelPointerpixel_pointer) must correspond to TypeTypeTypeTypetypetype (see gen_image_constgen_image_constGenImageConstGenImageConstGenImageConstgen_image_const for a more detailed description of the pixel types). The storage for the new image is newly created by HALCON. Thus, the storage on the PixelPointerPixelPointerPixelPointerPixelPointerpixelPointerpixel_pointer can be released after the call. Note that how to pass a pointer value depends on the used operator signature and programming environment. Make sure to pass the actual memory address where the image data is stored, not the address of a pointer variable. Care must be taken not to truncate 64-bit pointers on 64-bit architectures.

注意

gen_image1gen_image1GenImage1GenImage1GenImage1gen_image1 does not check whether the PixelPointerPixelPointerPixelPointerPixelPointerpixelPointerpixel_pointer is valid or not. Thus, it must be ensured by the user that it is valid. Otherwise, the program may crash!

执行信息

参数

ImageImageImageImageimageimage (输出对象)  image objectHImageHObjectHImageHobject * (byte / direction / cyclic / int1 / int2 / uint2 / int4 / real)

Created image with new image matrix.

TypeTypeTypeTypetypetype (输入控制)  string HTuplestrHTupleHtuple (string) (string) (HString) (char*)

Pixel type.

默认值: 'byte' "byte" "byte" "byte" "byte" "byte"

值列表: 'byte'"byte""byte""byte""byte""byte", 'cyclic'"cyclic""cyclic""cyclic""cyclic""cyclic", 'direction'"direction""direction""direction""direction""direction", 'int1'"int1""int1""int1""int1""int1", 'int2'"int2""int2""int2""int2""int2", 'int4'"int4""int4""int4""int4""int4", 'real'"real""real""real""real""real", 'uint2'"uint2""uint2""uint2""uint2""uint2"

WidthWidthWidthWidthwidthwidth (输入控制)  extent.x HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Width of image.

默认值: 512

建议值: 128, 256, 512, 1024

值范围: 1 ≤ Width Width Width Width width width (lin)

最小增量: 1

建议增量: 10

HeightHeightHeightHeightheightheight (输入控制)  extent.y HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Height of image.

默认值: 512

建议值: 128, 256, 512, 1024

值范围: 1 ≤ Height Height Height Height height height (lin)

最小增量: 1

建议增量: 10

PixelPointerPixelPointerPixelPointerPixelPointerpixelPointerpixel_pointer (输入控制)  pointer HTupleintHTupleHtuple (integer) (IntPtr) (Hlong) (Hlong)

Pointer to first gray value.

示例(C)

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,(Hlong)image);
}

结果

如果参数值正确,算子 gen_image1gen_image1GenImage1GenImage1GenImage1gen_image1 返回值 2 ( H_MSG_TRUE )。否则将抛出异常。

可能的前趋

gen_image_constgen_image_constGenImageConstGenImageConstGenImageConstgen_image_const, get_image_pointer1get_image_pointer1GetImagePointer1GetImagePointer1GetImagePointer1get_image_pointer1

替代

gen_image3gen_image3GenImage3GenImage3GenImage3gen_image3, gen_image1_externgen_image1_externGenImage1ExternGenImage1ExternGenImage1Externgen_image1_extern, gen_image_constgen_image_constGenImageConstGenImageConstGenImageConstgen_image_const, get_image_pointer1get_image_pointer1GetImagePointer1GetImagePointer1GetImagePointer1get_image_pointer1

另见

reduce_domainreduce_domainReduceDomainReduceDomainReduceDomainreduce_domain, paint_graypaint_grayPaintGrayPaintGrayPaintGraypaint_gray, paint_regionpaint_regionPaintRegionPaintRegionPaintRegionpaint_region, set_grayvalset_grayvalSetGrayvalSetGrayvalSetGrayvalset_grayval

模块

基础