RepResult
typedef struct RepResult_tag {
long left, top;
long width, height;
short rel_deskew;
short rel_char_space;
short rel_blank_width;
short rel_blank_min;
short rel_grid_len;
short rel_graph_len;
short rel_result_len;
short filler1;
RelGrid *rel_grid;
RelGraph *rel_graph;
RelResult *rel_result;
void *filler2;
} RepResult;
Elemente:
left, top
- Position der Zeile im Gesamtbild.
width, height
- Höhe und Breite der Zeile.
rel_deskew
- korrigierte Drehung des Bildes.
rel_char_space
rel_char_space beschreibt den mittleren Abstand zweier aufeinanderfolgender Zeichen
der bearbeiteten Textzeile, also den Abstand vom Anfang eines Zeichens zum Anfang des nächsten
(siehe char_space_min und char_space_max). Man benötigt diese Angaben unter Umständen
für eine vorlagengetreue Wiedergabe des gelesenen Textes, insbesondere bei äquidistanten Schriften.
rel_blank_width
rel_blank_width wird bei äquidistanten Schriften auf Null gesetzt. Sofern
jedoch ermittelt wurde, dass eine Proportionalschrift vorlag, so wird hier die festgestellte mittlere Breite des
Blank-Zeichens zurückgegeben.
rel_blank_min
rel_blank_min wird bei äquidistanten Schriften ebenfalls auf Null gesetzt.
Bei Proportionalschriften wird hier derjenige Grenzwert zurückgeliefert, ab dem Abstände zwischen zwei buchstaben als
Blank zu werten sind.
rel_grid_len
- Dieses Element befindet sich im Resultatteil der Strukturen
RelData und RepResult.
Sofern Informationen über Linien oder Boxen zurückgeliefert werden sollen, muss vor dem Aufruf von
rel_init() oder rep_init() bei rel_grid_maxlen ein Maximalwert eingetragen werden.
rel_grid muss beim Aufruf von rel_do() auf allokierten Speicherplatz verweisen, der entsprechend
viele Strukturen RelGrid aufnehmen kann. Nach dem Aufruf von rel_do() ist unter
rel_grid_len dann die Anzahl der tatsächlich erkannten Strukturelemente abgelegt.
rel_graph_len, rel_result_len
- Diese Elemente befinden sich im Resultatteil der Strukturen
RelData und RepResult
und liefern die Anzahl der erkannten Einzelergebnisse zurück. Die Elemente rel_graph_maxlen
und rel_result_maxlen sind jedoch vor dem Aufruf von rel_init() oder rep_init() mit
den Maximal-Werten zu besetzen, entsprechend der Allokation der beiden Felder rel_graph und
rel_result. Diese Vorab-Information hat den einzigen Zweck zu sichern, dass das Modul rel_do()
auch wirklich nur bis zum Ende des unter rel_graph und rel_result bereitgestellten
Speicherbereiches Eintragungen vornimmt. Nach jedem Aufruf von rel_do() oder rep_do() liefern
rel_graph_len und rel_result_len die Anzahl der in rel_graph und rel_result
aktuell besetzten Feldelemente zurück.
filler1
- 8 byte Alignment.
rel_grid
- Diese Elemente befinden sich im Resultatteil der Strukturen
RelData und RepResult.
Sofern Informationen über Linien oder Boxen zurückgeliefert werden sollen, muss vor dem Aufruf von rel_init()
oder rep_init() bei rel_grid_maxlen ein Maximalwert eingetragen werden. rel_grid
muss beim Aufruf von rel_do() auf allokierten Speicherplatz verweisen, der entsprechend viele Strukturen
RelGrid aufnehmen kann. Nach dem Aufruf von rel_do() ist unter rel_grid_len
dann die Anzahl der tatsächlich erkannten Strukturelemente abgelegt.
rel_graph, rel_result
- Diese beiden Felder verweisen auf die Ergebnisse von Segmentierung und Klassifikation. Die Resultate sind in
Feldern des Typs
RelGraph und RelResult enthalten. rel_graph und rel_result
müssen vor einem Aufruf von rel_do() mit Pointern auf einen Speicherbereich besetzt werden. rel_do()
trägt dann dort die Resultate ein. Siehe auch rel_graph_len, rel_result_len und rel_result_maxlen.
filler2
- 8 byte Alignment.
Verweise: