KlassenKlassenKlassenKlassen | | | | Operatoren

get_image_pointer3get_image_pointer3GetImagePointer3get_image_pointer3GetImagePointer3GetImagePointer3 (Operator)

Name

get_image_pointer3get_image_pointer3GetImagePointer3get_image_pointer3GetImagePointer3GetImagePointer3 — Zugriff auf die Zeiger eines Farbbildes.

Signatur

get_image_pointer3(ImageRGB : : : PointerRed, PointerGreen, PointerBlue, Type, Width, Height)

Herror get_image_pointer3(const Hobject ImageRGB, Hlong* PointerRed, Hlong* PointerGreen, Hlong* PointerBlue, char* Type, Hlong* Width, Hlong* Height)

Herror T_get_image_pointer3(const Hobject ImageRGB, Htuple* PointerRed, Htuple* PointerGreen, Htuple* PointerBlue, Htuple* Type, Htuple* Width, Htuple* Height)

Herror get_image_pointer3(Hobject ImageRGB, Hlong* PointerRed, Hlong* PointerGreen, Hlong* PointerBlue, char* Type, Hlong* Width, Hlong* Height)

Herror get_image_pointer3(Hobject ImageRGB, HTuple* PointerRed, HTuple* PointerGreen, HTuple* PointerBlue, HTuple* Type, HTuple* Width, HTuple* Height)

Hlong HImage::GetImagePointer3(Hlong* PointerGreen, Hlong* PointerBlue, char* Type, Hlong* Width, Hlong* Height) const

HTuple HImageArray::GetImagePointer3(HTuple* PointerGreen, HTuple* PointerBlue, HTuple* Type, HTuple* Width, HTuple* Height) const

void GetImagePointer3(const HObject& ImageRGB, HTuple* PointerRed, HTuple* PointerGreen, HTuple* PointerBlue, HTuple* Type, HTuple* Width, HTuple* Height)

void HImage::GetImagePointer3(HTuple* PointerRed, HTuple* PointerGreen, HTuple* PointerBlue, HTuple* Type, HTuple* Width, HTuple* Height) const

void HImage::GetImagePointer3(void** PointerRed, void** PointerGreen, void** PointerBlue, HString* Type, Hlong* Width, Hlong* Height) const

void HOperatorSetX.GetImagePointer3(
[in] IHUntypedObjectX* ImageRGB, [out] VARIANT* PointerRed, [out] VARIANT* PointerGreen, [out] VARIANT* PointerBlue, [out] VARIANT* Type, [out] VARIANT* Width, [out] VARIANT* Height)

VARIANT HImageX.GetImagePointer3(
[out] VARIANT* PointerGreen, [out] VARIANT* PointerBlue, [out] VARIANT* Type, [out] VARIANT* Width, [out] VARIANT* Height)

static void HOperatorSet.GetImagePointer3(HObject imageRGB, out HTuple pointerRed, out HTuple pointerGreen, out HTuple pointerBlue, out HTuple type, out HTuple width, out HTuple height)

void HImage.GetImagePointer3(out HTuple pointerRed, out HTuple pointerGreen, out HTuple pointerBlue, out HTuple type, out HTuple width, out HTuple height)

void HImage.GetImagePointer3(out IntPtr pointerRed, out IntPtr pointerGreen, out IntPtr pointerBlue, out string type, out int width, out int height)

Beschreibung

get_image_pointer3get_image_pointer3GetImagePointer3get_image_pointer3GetImagePointer3GetImagePointer3 liefert einen C-Pointer auf die drei Kanäle eines Farbbildes (ImageRGBImageRGBImageRGBImageRGBImageRGBimageRGB). Außerdem wird der Bildtyp (TypeTypeTypeTypeTypetype = 'byte', 'int2', 'float' etc.) und die Bildgröße (WidthWidthWidthWidthWidthwidth und HeightHeightHeightHeightHeightheight) ausgegeben. In der Folge ist dann über den Zeiger ein direkter Zugriff auf die Bilddaten in der HALCON-Datenbank von der HALCON Wirtssprache aus möglich. Ein Bild ist in HALCON als ein Vektor von Bildzeilen abgelegt. Die Bildtypen 'complex' und 'vector_field' bilden Sonderfälle. Bilder vom Typ 'complex' sind interleaved, d.h., die Real- und Imaginärteile werden abwechselnd abgespeichert. Bilder vom Typ 'vector_field' bestehen dagegen aus zwei Matrizen, eine für die Zeilen und eine für die Spalten, die nacheinander in der HALCON-Datenbank liegen. Die drei Kanäle müssen den gleichen Pixeltyp und die gleiche Größe haben.

Achtung

Es darf nur ein Bild übergeben werden. get_image_pointer3get_image_pointer3GetImagePointer3get_image_pointer3GetImagePointer3GetImagePointer3 sollte nur zum Eintragen in neu erzeugte Bilder verwendet werden, da sonst die Grauwerte von anderen Bildern überschrieben werden könnten (siehe Relationale Struktur).

Parallelisierung

Parameter

ImageRGBImageRGBImageRGBImageRGBImageRGBimageRGB (input_object)  multichannel-image(-array) objectHImageHImageHImageHImageXHobject (byte / direction / cyclic / int1 / int2 / uint2 / int4 / int8 / real / complex / vector_field)

Eingabebild.

PointerRedPointerRedPointerRedPointerRedPointerRedpointerRed (output_control)  pointer(-array) HTupleHTupleHTupleVARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong) (Hlong)

Zeiger auf die Pixel des ersten Kanals.

PointerGreenPointerGreenPointerGreenPointerGreenPointerGreenpointerGreen (output_control)  pointer(-array) HTupleHTupleHTupleVARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong) (Hlong)

Zeiger auf die Pixel des zweiten Kanals.

PointerBluePointerBluePointerBluePointerBluePointerBluepointerBlue (output_control)  pointer(-array) HTupleHTupleHTupleVARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong) (Hlong)

Zeiger auf die Pixel des dritten Kanals.

TypeTypeTypeTypeTypetype (output_control)  string(-array) HTupleHTupleHTupleVARIANTHtuple (string) (string) (HString) (char*) (BSTR) (char*)

Typ des Bildes.

Werteliste: 'byte'"byte""byte""byte""byte""byte", 'complex'"complex""complex""complex""complex""complex", '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", 'int8'"int8""int8""int8""int8""int8", 'real'"real""real""real""real""real", 'uint2'"uint2""uint2""uint2""uint2""uint2", 'vector_field_absolute'"vector_field_absolute""vector_field_absolute""vector_field_absolute""vector_field_absolute""vector_field_absolute", 'vector_field_relative'"vector_field_relative""vector_field_relative""vector_field_relative""vector_field_relative""vector_field_relative"

WidthWidthWidthWidthWidthwidth (output_control)  extent.x(-array) HTupleHTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong) (Hlong)

Breite des Bildes.

HeightHeightHeightHeightHeightheight (output_control)  extent.y(-array) HTupleHTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong) (Hlong)

Höhe des Bildes.

Ergebnis

get_image_pointer3get_image_pointer3GetImagePointer3get_image_pointer3GetImagePointer3GetImagePointer3 liefert den Wert 2 (H_MSG_TRUE), falls genau ein Bild übergeben wird. Das Verhalten bei leerer Eingabe (keine Eingabebilder vorhanden) lässt sich mittels set_system('no_object_result',<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>) festlegen. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

read_imageread_imageReadImageread_imageReadImageReadImage

Alternativen

set_grayvalset_grayvalSetGrayvalset_grayvalSetGrayvalSetGrayval, get_grayvalget_grayvalGetGrayvalget_grayvalGetGrayvalGetGrayval, get_image_pointer1get_image_pointer1GetImagePointer1get_image_pointer1GetImagePointer1GetImagePointer1

Siehe auch

paint_regionpaint_regionPaintRegionpaint_regionPaintRegionPaintRegion, paint_graypaint_grayPaintGraypaint_grayPaintGrayPaintGray

Modul

Foundation


KlassenKlassenKlassenKlassen | | | | Operatoren