sort_region — Sortieren von Regionen aufgrund ihrer relativen Lage.
sort_region(Regions : SortedRegions : SortMode, Order, RowOrCol : )
sort_region ordnet die Regionen bezüglich ihrer
relativen Lage an.
Alle Sortierungen mit Ausnahme von 'character'
verwenden einen Punkt der Region. Diese Punkte werden
bei RowOrCol = 'row'
zuerst bzgl. der Zeile dann bzgl. der Spalte sortiert;
bei 'column' wird zuerst der Spaltenwert verwendet.
Der Parameter SortMode kann mit folgenden Werten belegt werden:
Die Regionen werden wie Buchstaben aufgefasst, die entweder
horizontal oder vertikal gelesen werden. Dabei werden sie in
der durch RowOrCol angegebenen Leserichtung angeordnet,
wobei folgende Spezifikationen gelten:
'row': Als Zeilen aufgefasst ist die Leserichtung zunächst von links nach rechts und anschließend von oben nach unten.
'column': Als Spalten aufgefasst ist die Leserichtung zunächst von oben nach unten und anschließend von links nach rechts.
Für SortMode 'character' kann ein zweiter numerischer
Wert zusätzlich zu 'character' an SortMode übergeben
werden. Dieser Wert spezifiziert den maximalen Prozentsatz an
Überlappung. Diese Überlappung ist von dem Parameter RowOrCol
abhängig und wird folgendermaßen bestimmt:
RowOrCol = 'row': Überlappung der Zeilenkoordinaten
zweier Regionen
RowOrCol = 'column': Überlappung der
Spaltenkoordinaten zweier Regionen,
wobei der Prozentsatz sich auf die kleinere der sich überlappenden Regionen
(bzgl. dieser Achse) bezieht.
Regionen ohne Koordinatenüberlappung oder mit einer Koordinatenüberlappung
kleiner als dem eingestellten Prozentsatz werden als in getrennten Zeilen
bzw. Spalten betrachtet und entsprechend sortiert. Ist die Überlappung
größer, werden sie als in der gleichen Zeile oder Spalte betrachtet und
deswegen innerhalb der Zeile oder Spalte sortiert. Wenn man diesen
zusätzlichen Parameter zum Beispiel auf 0 setzt, werden alle sich bezüglich
der Zeilen- bzw. Spaltenkoordinaten überlappende Regionen als in der gleichen
Zeile bzw. Spalte gesehen und sortiert. Der Defaultwert dieses Parameters beträgt
15. Das heißt, dass benachbarte Zeilen oder Spalten sich maximal um 15%
überlappen dürfen um als getrennt zu gelten.
Es gilt zu beachten, für Order = 'false'
werden die Buchstaben umgekehrt zur oben beschriebenen Leserichtung
sortiert.
Der Punkt mit dem kleinsten Spaltenwert in der ersten Zeile der Region.
Der Punkt mit dem größten Spaltenwert in der letzten Zeile der Region.
Linkes oberes Eck des umschließenden Rechtecks.
Rechtes oberes Eck des umschließenden Rechtecks.
Linkes unteres Eck des umschließenden Rechtecks.
Rechtes unteres Eck des umschließenden Rechtecks.
Der Parameter Order legt fest, ob auf- oder
absteigend sortiert wird. Bei 'true' wird
aufsteigend bei 'false' absteigend sortiert.
Regions (input_object) region-array → object
Anzuordnende Regionen.
SortedRegions (output_object) region-array → object
Angeordnete Regionen.
SortMode (input_control) tuple(-array) → (string / integer / real)
Art der Sortierung.
Defaultwert: 'first_point'
Werteliste: 'character', 'first_point', 'last_point', 'lower_left', 'lower_right', 'upper_left', 'upper_right'
Order (input_control) string → (string)
Aufsteigend oder absteigend sortieren.
Defaultwert: 'true'
Werteliste: 'false', 'true'
RowOrCol (input_control) string → (string)
Anordnung erst nach Zeile oder Spalte.
Defaultwert: 'row'
Werteliste: 'column', 'row'
Sind die Parameter korrekt, dann liefert
sort_region den Wert 2 (H_MSG_TRUE).
Andernfalls wird eine Fehlerbehandlung durchgeführt.
do_ocr_multi_class_mlp,
do_ocr_single_class_mlp
Foundation