diff --git a/src/ocr.js b/src/ocr.js index bd5e8dd..a73222a 100644 --- a/src/ocr.js +++ b/src/ocr.js @@ -117,8 +117,19 @@ function getWorker() { workerPromise = createWorker('eng') .then(async (worker) => { await worker.setParameters({ - // Etiketten enthalten nur Grossbuchstaben, Ziffern und wenige Sonderzeichen. - tessedit_char_whitelist: 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-/. x', + // Der Nutzer will den vollstaendigen Etikettentext sehen, nicht nur + // die von der App verstandenen Felder (die ohnehin nur Grossbuch- + // staben, Ziffern und wenige Zeichen brauchen) - deshalb Gross- UND + // Kleinbuchstaben, Ziffern sowie die auf Etiketten ueblichen Satz- + // und Sonderzeichen. Das kann die Genauigkeit bei den Codeteilen + // (Kapazitaet, Rank, Geschwindigkeit, Teilenummer) etwas verringern, + // weil Tesseract nun z.B. zwischen "O" und "o" unterscheiden muss - + // hingenommen, weil extractFields() ohnehin verwechslungstolerant + // gegen die bekannten Werte prueft (siehe spec.js/CONFUSIONS) und + // der Nutzer diesen Tausch ausdruecklich will. + tessedit_char_whitelist: + 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789' + + ' -/.,:;()+*_#%&', }); return worker; })