gray_histo — Verteilung der Grauwerte.
gray_histo(Regions, Image : : : AbsoluteHisto, RelativeHisto)
gray_histo berechnet für das übergebene Bild
(Image) innerhalb von Regions das absolute
(AbsoluteHisto) und relative (RelativeHisto)
Histogramm der Grauwerte.
Beide Histogramme sind Tupel von 256 Werten, die (beginnend mit 0) die Häufigkeiten der einzelnen Grauwerte im Bild enthalten.
AbsoluteHisto gibt dabei die absoluten Häufigkeiten der
Grauwerte durch ganze Zahlen an, RelativeHisto die
relativen, d.h. die absoluten Häufigkeiten dividiert durch die
Fläche des Bildes, als Gleitpunktzahlen.
'real'- 'int2'-, 'uint2'- und 'int4'-Bilder
werden in 'byte'-Bilder umgewandelt (zuerst wird der größte und der
kleinste Grauwert im Bild bestimmt und anschließend werden die
Originalgrauwerte linear in den Bereich 0..255 abgebildet) und dann
wie oben verarbeitet. Mit set_paint(::WindowHandle,'histogram':) und
disp_image kann das Histogramm auch direkt als Graphik
ausgegeben werden.
Der Operator gray_histo berücksichtigt nur die mittels
Regions übergebenen Regionen und ignoriert jede Domäne, die zuvor
für das Eingabebild Image festgelegt wurde.
real-, int2, uint2 und int4-Bilder werden auf 256 Grauwerte reduziert.
Für byte-, int1-, direction- und cyclic-Bilder kann gray_histo auf
OpenCL Geräten ausgeführt werden, sofern das Gerät die in OpenCL 1.0
optionalen Erweiterungen cl_khr_local_int32_base_atomics und
cl_khr_global_int32_base_atomics unterstützt. Im Gegensatz zu den meisten
anderen HALCON Operatoren kann gray_histo auf OpenCL Geräten deutlich
langsamer laufen, wenn das Bild Image sich nicht komplett innerhalb
der Regionen Regions befindet.
In HALCON XL ist keine Ausführung mit OpenCL möglich, da atomare 64-Bit-Festkommaarithmetik erforderlich wäre.
Regions (input_object) region(-array) → object
Region, in der das Histogramm berechnet werden soll.
Image (input_object) singlechannelimage → object (byte* / cyclic* / direction* / int1* / int2 / uint2 / int4 / real) *erlaubt für Compute Devices
Bild, dessen Grauwertverteilung berechnet werden soll.
AbsoluteHisto (output_control) histogram-array → (integer)
Absolute Häufigkeiten der Grauwerte.
RelativeHisto (output_control) histogram-array → (real)
Häufigkeiten, normiert auf die Fläche der Region.
Sei F die Fläche der Region, dann beträgt die Laufzeitkomplexität O(F + 255).
gray_histo liefert den Wert 2 (H_MSG_TRUE), falls das Bild definierte
Grauwerte hat und die Parameter korrekt sind. Das Verhalten bei
leerer Eingabe (keine Eingabebilder) wird mit
set_system(::'no_object_result',<Result>:),
das bei leerer Region mit
set_system(::'empty_region_result',<Result>:)
festgelegt. Gegebenenfalls wird eine Fehlerbehandlung
durchgeführt.
histo_to_thresh,
gen_region_histo
min_max_gray,
intensity,
gray_histo_abs,
gray_histo_range
set_paint,
disp_image,
histo_2dim,
scale_image_max,
entropy_gray
Foundation