Tesseract usa un modello a AA sorta di "espressione regolare". Può essere utilizzato se lascia dici che dovesse acquisire un libro con i dati che era tutto nello stesso formato un modello può essere utilizzato per raccontare Tesseract quali formati aspettarsi, ike come si aspettano parole utenti parole di seguito si descrive Tesseract describes how to use patterns:..
Ogni modello può contenere qualsiasi carattere non di spaziatura, tuttavia solo gli schemi che contengono caratteri dall'unicorno della lingua corrispondente saranno utile.
L'unico metaprile è \
. Per essere utilizzato in un modello come stringa ordinaria, è necessario eseguire l'escape con \
(ad esempio, la stringa C:\Documents
deve essere scritta nel file di pattern come C:\\Documents
).
Questa funzione supporta una sintassi di espressioni regolari molto limitata. Si può esprimere un carattere, una certa classe di caratteri e un numero di volte in cui l'entità dovrebbe essere ripetuta nel modello.
per indicare una classe di utilizzo carattere uno dei:
\c
- UNICHAR per i quali UNICHARSET::get_isalpha()
è vero (carattere)
\d
- UNICHAR per i quali UNICHARSET::get_isdigit()
vale
\n
- UNICHAR per il quale UNICHARSET::get_isdigit()
e UNICHARSET::isalpha()
sono veri
\p
- unichar per cui UNICHARSET::get_ispunct()
vale
\a
- UNICHAR per cui UNICHARSET::get_islower()
vale
\A
- UNICHAR per cui UNICHARSET::get_isupper()
vale
\*
possono essere specificati dopo ogni carattere o modello per indicare che il carattere/modello può essere ripetuto qualsiasi numero di volte prima che si verifichi il prossimo carattere/modello.
Esempi:
1-8\d\d-GOOG-411
sarà ampliato a stringhe: 1-800-GOOG-411
, 1-801-GOOG-411
, ... 1-899-GOOG-411
.
"ww.\n\*.com"
sarà ampliato a stringhe come: "ww.a.com"
"ww.a123.com"
... "ww.ABCDefgHIJKLMNop.com"
Nota: nella scelta di quali modelli per includere prega di essere consapevole del fatto che fornisce modelli molto generici farà correre tesseract più lento. Ad esempio, \n\*
all'inizio del modello, Tesseract considererà tutte le combinazioni di scelte di carattere proposte per ciascuna segmentazione, il che sarà inaccettabilmente lento.A causa di potenziali problemi di velocità che potrebbero essere difficili da identificare, ogni modello utente deve avere almeno kSaneNumConcreteChars
caratteri in calcestruzzo dallo unicharset
all'inizio.
Hai provato ad aggiungere il file di configurazione 'bazaar'? Vedi [tesseract (1)] (http://tesseract-ocr.googlecode.com/svn/trunk/doc/tesseract.1.html#_config_files_and_augmenting_with_user_data) – pvorb