Grösste, aber am wenigsten sichtbare Änderung ist die Umstellung auf 64-Bit-Variablen in KADMOS sowie in allen Programmen, die zur Datensammlung und Klassifikator-Berechnung benötigt werden.
rep_do()
).GENERAL_REPMULTITHREADING
und GENERAL_MULTITHREADING
kann das Multithreading deaktiviert werden. rec_value
, der Vertrauenswert der Erkennung, hat jetzt eine inhaltlich klare Bedeutung. Bei den
einzelnen Basis-Klassifikatoren werden 99% aller Zeichen aus unserem riesigen Datenfundus mit einem rec_value
unter 32 erkannt. 99,9% haben einen rec_value unter 64, 99,99% einen rec_value
unter 96.
Bei Klassifikatoren mit etwa 100 oder 150 Zeichenklassen gilt Verhältnis analog: 90% haben einen rec_value
unter 32, 99% unter 64, 99,9% unter 96. Ein Absenken der Rückweisungs-Schwelle um 32 führt also in etwa zu einer
zehnfachen Menge an Rückweisungen. Dies alles gilt natürlich nur für die Einzelzeichen-Erkennung REC
.
Bei der Zeilen-Erkennung REL
verschieben sich diese Werte dadurch, dass rec_value
kombiniert wird mit Bewertungen der Lage des Zeichen in der Zeile, mit Bewertungen des fonts des Zeichens im
Verhältnis zum font des umliegenden Wortes sowie weiterer Bewertungen. Durch diese Zuordnung von Rückweisungs-Schwelle
und dem Prozentsatz rückgewiesener Zeichen ist eine einfache Regel ableitbar: Beträgt der Anteil rückgewiesener Zeichen
bei der Schwelle 64 mehr als 5 oder 10 Prozent, so macht eine Datensammlung zur Nachbelehrung des Klassifikators
unbedingt Sinn.parm.reject_limit
auf 128 gesetzt.
Trotz Verkleinerung bei diesem Wert werden mit der neuen Version mehr Alternativen generiert als mit der
alten Version und dem früheren Wert 150. Um ein vergleichbares Verhalten mit der alten Version zu erreichen,
sollte reject_limit
auf einen Wert von etwa 110 gesetzt werden.
Im Programm Famulus.exe wurde im Resultat-Fenster ein zusätzlicher Menü-Punkt "Rückweisungs-Raten" eingerichtet, unter dem nach jeder Erkennung die betreffenden Rückweisungs-Raten angezeigt werden.
Es wurden Vorbereitungen getroffen, dass KADMOS im Laufe des nächsten Jahres intern komplett auf die Verwendung von Unicode© umgestellt werden kann. Das ermöglicht dann die Einbeziehung von Schriften, für die keine Codepage existiert (zum Beispiel Koreanisch).
Zwei neue Funktionen Funktionen rel_find()
und rel_findg()
wurden bereitgestellt.
rel_find()
sucht in Schwarz-Weiss-Bildern nach einer vernünftig erkennbaren Text-Zeile.
rel_findg()
tut das Gleiche für Maschinenschrift in Graubildern, die oftmals Probleme bei der
Binarisierung bereiten. Als Beispiel sei hier die Erkennung von Seriennummern auf Banknoten genannt.
Bei den Funktionen re_(w)readparm()
, re_(w)writeparm()
und GetPrivateFileName()
wurde für Windows die Voreinstellung des Verzeichnisses geändert, falls kein Pfad beim angegebenen Dateinamen
spezifiziert wurde. Das war notwendig, weil Windows Vista und Windows 7 mit der bisherigen Voreinstellung
(Windows-Verzeichnis) nicht mehr korrekt arbeiten. Die neue Voreinstellung bei Windows ist jetzt -
wie schon bisher bei Linux - das Arbeits-Verzeichnis (WorkDir). Will man dies ändern, so kann man die neue
Umgebungsvariale KADMOS_inifiles
verwenden und mit dem Namen eines anderen, gewünschten
Verzeichnises besetzten.
In KADMOS.h wurde REC_CHAR_SIZE
von 8 auf 16 Byte erweitert, um den späteren Einsatz von Unicode©
32-Bit Codierungen vorzubereiten.
Bei den Maschinenschrift-Klassifikatoren wurden die beiden Doppelakzente Unicode© 0x201C
und
0x201D
mit den Ersatz-Kennungen "[
und "]
hinzugefügt. Der Thai-Klassifikator
wurde um die Kennungen T2
und U2
(Ersatz) erweitert. Es sind spezielle Formklassen der
Zeichen Unicode© 0x0E14
und 0x0E15
.
rel_find()
sucht in Schwarz-Weiss-Bildern eine gut lesbare Textzeile mit der vogegebenen Anzahl von Buchstaben. 🗏
rel_findg()
sucht in Graubildern eine gut lesbare Textzeile mit der vogegebenen Anzahl von Buchstaben. 🗏
re_layout()
analysiert die Struktur und den Inhalt eines gegebenen Dokumentes. 🗏 ab version 5.0o
Für Windows wurde die Voreinstellung des Verzeichnisses geändert, falls kein Pfad beim angegebenen Dateinamen spezifiziert wurde.
re_readparm(), re_wreadparm()
🗏
re_writeparm(), re_wwriteparm()
🗏
GetPrivateFileName()
🗏
ReLayoutResult, ReLayoutData
🗏
ReParm
🗏
RecData
🗏