disp_imageT_disp_imageDispImageDispImage (Operator)

Name

disp_imageT_disp_imageDispImageDispImage — Ausgeben von Grauwertdaten.

Signatur

disp_image(Image : : WindowHandle : )

Herror T_disp_image(const Hobject Image, const Htuple WindowHandle)

void DispImage(const HObject& Image, const HTuple& WindowHandle)

void HImage::DispImage(const HWindow& WindowHandle) const

void HWindow::DispImage(const HImage& Image) const

static void HOperatorSet.DispImage(HObject image, HTuple windowHandle)

void HImage.DispImage(HWindow windowHandle)

void HWindow.DispImage(HImage image)

Beschreibung

disp_imagedisp_imageDispImageDispImageDispImage gibt die Grauwerte von einem Bild auf dem Ausgabefenster aus. Es werden dabei diejenigen Grauwerte verwendet, die innerhalb des Definitionsbereiches (set_comprise(::WindowHandle,'object':)set_comprise(WindowHandle,"object")SetComprise(WindowHandle,"object")SetComprise(WindowHandle,"object")SetComprise(WindowHandle,"object")) oder des gesamten Bildes (set_comprise(::WindowHandle,'image':)set_comprise(WindowHandle,"image")SetComprise(WindowHandle,"image")SetComprise(WindowHandle,"image")SetComprise(WindowHandle,"image")) liegen. Voreingestellt ist, dass nur die definierten Grauwerte verwendet werden.

Bei der Ausgabe von Graubildern wird die Anzahl der Graustufen i.a. reduziert. Dies ist durch die Tastsache bedingt, dass noch Farben für die Darstellung von Graphiken (z.B. set_colorset_colorSetColorSetColorSetColor) und den Windowmanager reserviert werden müssen. Zudem stehen abhängig von den auf der Ausgabemaschine verfügbaren Bitplanes häufig weniger als 256 Farben (acht Bitplanes) zur Verfügung. Die Anzahl der tatsächlich für die Ausgabe von Graustufen reservierten „Farben“ kann mittels get_systemget_systemGetSystemGetSystemGetSystem abgefragt und vor dem Öffnen des ersten Fensters mittels set_systemset_systemSetSystemSetSystemSetSystem auch verändert werden. Für 8 Bitplanes sind beispielsweise 200 reale Graustufen voreingestellt.

Die Reduktion der Anzahl der Graustufen ist unproblematisch, solange nur Grauwertinformation ausgegeben wird, da der Mensch 256 verschiedenen Graustufen ohnehin nicht unterscheiden kann. Sind jedoch bestimmte Grauwerte für die Speicherung von Regioneninformation verwendet worden (was nicht der Vorgehensweise von HALCON entspricht), so kann dies bei der Darstellung zu Verwechslungen führen, da somit unterschiedliche Zahlenwerte mit dem gleichen Grauwert auf dem Bildschirm abgebildet werden. Sollten derartige Bilder vorliegen, empfiehlt es sich, den Operator label_to_regionlabel_to_regionLabelToRegionLabelToRegionLabelToRegion zu verwenden, um das Bild mit den Markierungen in HALCON-Objekte umzuwandeln.

Werden Bilder vom Typ 'int2', 'int4', 'int8', 'real' oder 'complex' ausgegeben, so wird zunächst der kleinste und der größte Grauwert bestimmt. Für Bilder vom Typ 'complex' basiert diese Berechnung auf dem entsprechenden Leistungsspektrum. Danach werden die Bildpunkte auf die zur Verfügung stehende Anzahl von Graustufen (abhängig von der Ausgabemaschine, ca. 200) skaliert. Hierbei kann es vorkommen, dass einige Pixelwerte extrem andere Werte als alle übrigen haben. Dies führt dazu, dass entweder ein ganz weißes oder schwarzes Bild auf dem Fenster erscheint. Um festzustellen, ob es sich um ein binäres Bild handelt, kann man z.B. min_max_graymin_max_grayMinMaxGrayMinMaxGrayMinMaxGray verwenden. Gegebenenfalls kann das Bild vor der Ausgabe mit scale_imagescale_imageScaleImageScaleImageScaleImage und convert_image_typeconvert_image_typeConvertImageTypeConvertImageTypeConvertImageType in der gewünschten Weise angepasst werden.

Achtung

Wurde bei set_paintset_paintSetPaintSetPaintSetPaint ein falscher Ausgabemodus gesetzt, dann erfolgt die Fehlermeldung erst bei disp_imagedisp_imageDispImageDispImageDispImage.

Ausführungsinformationen

Parameter

ImageImageImageImageimage (input_object)  singlechannelimage objectHImageHImageHobject (byte / direction / cyclic / int1 / int2 / uint2 / int4 / int8 / real / complex / vector_field)

Auszugebendes Grauwertbild.

WindowHandleWindowHandleWindowHandleWindowHandlewindowHandle (input_control)  window HWindow, HTupleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Fenster-Handle.

Beispiel (HDevelop)

* Output of a gray image:
read_image(Image,'monkey')
disp_image(Image,WindowHandle)

Beispiel (C)

/* Output of a gray image: */
read_image(&Image,"monkey");
T_disp_image(Image,WindowHandle);

Beispiel (HDevelop)

* Output of a gray image:
read_image(Image,'monkey')
disp_image(Image,WindowHandle)

Beispiel (HDevelop)

* Output of a gray image:
read_image(Image,'monkey')
disp_image(Image,WindowHandle)

Beispiel (HDevelop)

* Output of a gray image:
read_image(Image,'monkey')
disp_image(Image,WindowHandle)

Ergebnis

Falls das übergebene Bild definierte Werte enthält und ein gültiger Ausgabemodus eingestellt ist, dann liefert disp_imagedisp_imageDispImageDispImageDispImage den Wert 2 (H_MSG_TRUE). Andernfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

open_windowopen_windowOpenWindowOpenWindowOpenWindow, set_rgbset_rgbSetRgbSetRgbSetRgb, set_lutset_lutSetLutSetLutSetLut, set_hsiset_hsiSetHsiSetHsiSetHsi, scale_imagescale_imageScaleImageScaleImageScaleImage, convert_image_typeconvert_image_typeConvertImageTypeConvertImageTypeConvertImageType, min_max_graymin_max_grayMinMaxGrayMinMaxGrayMinMaxGray

Alternativen

disp_objdisp_objDispObjDispObjDispObj, disp_colordisp_colorDispColorDispColorDispColor

Siehe auch

open_windowopen_windowOpenWindowOpenWindowOpenWindow, reset_obj_dbreset_obj_dbResetObjDbResetObjDbResetObjDb, set_paintset_paintSetPaintSetPaintSetPaint, set_lutset_lutSetLutSetLutSetLut, paint_graypaint_grayPaintGrayPaintGrayPaintGray, scale_imagescale_imageScaleImageScaleImageScaleImage, convert_image_typeconvert_image_typeConvertImageTypeConvertImageTypeConvertImageType, dump_windowdump_windowDumpWindowDumpWindowDumpWindow

Modul

Foundation