Как определить PDF-файлы, которые нуждаются в OCR?


У меня есть более 30 000 pdf-файлов. Некоторые файлы уже являются OCR, а некоторые нет. Есть ли способ узнать, какие файлы уже распознаны, а какие PDF - файлы-только изображения?

Это займет целую вечность, если я прогоню каждый файл через OCR-процессор.

3 6
ocr

3 ответа:

Я бы написал небольшой скрипт, чтобы извлечь текст из PDF-файлов и посмотреть, является ли он "пустым". Если есть текст PDF уже был OCRed. Для извлечения текста можно использовать ghostscript или XPDF.

Править: Это должно помочь вам начать:

foreach ($pdffile in get-childitem -filter *.pdf){
    $pdftext=invoke-expression ("\path\to\xpdf\pdftotext.exe '"+$pdffile.fullname+"' -");
    write-host $pdffile.fullname
    write-host $pdftext.length;
    write-host $pdftext;
    write-host "-------------------------------";
}

К сожалению, даже если у вас есть только изображения в PDF pdftotext будет извлекать некоторый текст, так что вам придется сделать еще несколько работ, чтобы проверить, нужно ли вам OCR pdf.

XPDF работал для меня по-другому. Но не уверен, что это правильный путь.

Мои PDF-файлы с изображением также давали текстовое содержимое. Поэтому я использовал pdffonts.ехе, чтобы проверить, если шрифты внедрены в документ или нет.В моем случае все файлы изображений показал 'нет' для встраиваемых значение.

> Config Error: No display font for 'Symbol' 
> Config Error: No display font for 'ZapfDingbats' 
> name                                 type              emb sub uni object ID
> ------------------------------------ ----------------- --- --- --- --------- 
> Helvetica                            Type 1            no  no  no       7  0

Где как все доступные для поиска PDF-файлы дали " да "

> Config Error: No display font for 'Symbol'
> Config Error: No display font for 'ZapfDingbats'
> name                                 type              emb sub uni object ID
> ------------------------------------ ----------------- --- --- --- ---------
> ABCDEE+Calibri                       TrueType          yes yes no       7  0
> ABCDEE+Calibri,Bold                  TrueType          yes yes no       9  0

Я обнаружил, что TotalCmd имеет плагин, который обрабатывает это: https://totalcmd.net/plugring/pdfOCR.html

PdfOCR-это wdx плагин, который обнаруживает, сколько страниц PDF-файла в текущий каталог нуждается в распознавании символов (OCR), т. е. сколько страницы в PDF-файле не имеют текста для поиска в их макете. Это в основном это необходимо, когда вы готовите PDF-файлы для своей документации или система архивирования. Как правило, в работе с PDF-файлами они нуждаются быть преобразовано из сканированной версии в текстовую форму с возможностью поиска до они включены в любую документацию, чтобы обеспечить ручное или автоматический поиск текста. Плагин pdfOCR для Total Commander выполняет потребность библиотекаря, представляя количество страниц, которые являются изображениями только без текста внутри. Представлено количество отсканированных страниц в графе "needOCR". Сравнивая needOCR количество страниц с общее количество страниц, на которых можно решить, нужен ли файл PDF дополнительное распознавание текста обработка.