2011-09-06 15 views
5

Ho un'app OCR molto semplice basata su Tesseract. Dopo il riconoscimento , fornisco anche un passaggio di verifica utente che consente la correzione nel caso in cui l'OCR sia errato. Per migliorare l'interfaccia utente, ho intenzione di disegnare un rettangolo sopra il carattere OCR-ed sull'immagine di input originale, e metterlo parallelamente all'uscita OCR. Per arrivare a questo, ho bisogno di le coordinate dei personaggi riconosciuti.Come ottenere le coordinate dei caratteri riconosciuti

Ho provato qualcosa di simile, ma mi sembra dare senza senso:

ETEXT_DESC output; 
    tess->Recognize(&output); 
    text = tess->GetUTF8Text(); 

Ora, se accedo output-> conte, mi dà un po 'di valore superiore a 10.000, che è ovviamente sbagliato, perché l'intera immagine ha solo 20 o più caratteri.

Sono sulla buona strada? Posso avere qualche direzione per favore?

risposta

5

Forse è utile ottenere le coordinate delle caselle. Prova l'eseguibile di tesseract. Utilizzare il comando

"tesseract.exe [immagine] [uscita] makebox"

Dopotutto si ottiene le coordinate di ogni personaggio, uno per riga. Allora sei in grado di confrontare.

+5

Come ottenere informazioni a livello di programmazione? – Haoest

1

Il tesseract eseguibile ha un'opzione hocr a personaggi di uscita riconosciuti e le loro coordiantes in formato HTML. Per ottenere questo a livello di programmazione, il FAQ dice di fare riferimento a baseapi.h.

Problemi correlati