Tesseract hocr и txt одновременно, или преобразование из Tesseracts hocr в txt

1875
PSkocik

Я играл с программным обеспечением Linux OCR, и мне очень нравится Tesseract, особенно в сочетании с gsan2pdf. Tesseract v3 или более поздней версии поддерживает вывод в формате hocr, и gscan2pdf может использовать его для создания отсканированных документов PDF с возможностью поиска.

Иногда, однако, я также хотел бы получить текстовую версию. pdftotext в доступном для поиска pdf, сгенерированном gscan2pdf, как описано выше, не так хорош для этого, так как даже с опцией -raw компоновка вывода плохо копирует исходную физическую компоновку. Я могу настроить пользовательскую команду в gscan2pdf, которая будет вызывать tesseract для исходного отсканированного изображения без опции hocr, так что генерируется только простой текст, однако ocr оказывается довольно трудоемким, чтобы сделать это дважды для каждой страницы. Разве нет рабочего способа преобразования из hocr в обычный текст (с тем же макетом, что и сгенерированный tesseract при вызове без параметра hocr), или способ заставить tesseract одновременно выводить как простой текст, так и hocr?

https://github.com/jbrinley/HocrConverter выглядит многообещающе, но у меня это не работает.

2

1 ответ на вопрос

0
juanmf
<?php /** * Cli process that gets as 1st argument the output of tesseract ... hocr and dumps * its text nodes * Usage: script.php in.tif.html out.txt */ $inFile = $argv[1]; $outFile = $argv[2]; $stream = file_get_contents($inFile); $dom = DOMDocument::loadHTML($stream); $out = array(); foreach ($dom->getElementsByTagName('p') as $tag) { $out[] = $tag->nodeValue; } file_put_contents($outFile, implode("\n", $out)); 

Похожие вопросы