È Tesseract (un motore OCR) da rientro?
-
26-10-2019 - |
Domanda
Sto facendo OCR Tesseract usando su un processore quad-core. Per una migliore velocità, voglio leggere 4 parole alla volta, utilizzando 4 thread. E 'sicuro per chiamare Tesseract da più thread contemporaneamente?
Nota:. Ogni thread lavorerà un'immagine diversa, non condivisa
. Nota: la guardia con le serrature non è ok a causa della velocità
Soluzione
Non credo che Tesseract è attualmente parallelizzabile (vedi questo filetto ), anche se uno degli obiettivi principali per v3.0 è quello renderlo più thread-safe .
Tuttavia, si potrebbe sempre parallelizzare eseguendo n concomitante processi di Tesseract. Se si vuole parallelizzare l'OCR di una singola immagine, sarebbe a voi per dividere ed alimentare ogni parte a ciascuno di questi n i processi (in pratica un MapReduce).
Altri suggerimenti
le note di rilascio , Tesseract è (per lo più, e per nella misura in cui si descrivono bisogno) thread-safe, come di 3.01 (21 ottobre 2011)
Discussione di sicurezza! È andato all globali critici e statica ai membri del la classe appropriata. Tesseract è ora thread-safe (multiplo istanze possono essere usati in parallelo in più thread.) con il minore eccezione che alcuni parametri di controllo sono ancora globali e riguardano tutti fili.
Sono stato con successo lo utilizzo su più core per così tanto tempo (o più a lungo, dal ramo dev).