2

Я экспериментировал с использованием Tesseract для распознавания моих PDF-файлов, и он был в основном успешным, особенно с текстами немецкого языка Fraktur (готический шрифт старого стиля), которые такие инструменты, как Adobe Acrobat, не могут правильно распознать.

Проблема в том, что выходные файлы из Tesseract довольно большие, и я хочу сжать их после распознавания текста. Однако, когда я использую Ghostscript для сжатия файлов, встроенный текст OCR он испортил. Точно так же, если я использую ImageMagick, встроенный текст удаляется. Это можно обойти? Теоретически я мог бы сжать перед распознаванием, но это ухудшило бы точность распознавания.

Вообще говоря, моя цель состоит в том, чтобы в моих выходных PDF-файлах был встроен высококачественный OCR-текст, а встроенные изображения были бы сильно сжаты, чтобы файлы не занимали почти столько же места. Я обнаружил, что функция Adobe Acrobat Pro «Сохранить как другое> PDF уменьшенного размера» сильно сжимает изображения, но искажает любой текст OCR. Это верно, независимо от того, были ли файлы распознаны в Acrobat или с помощью инструмента, такого как Tesseract.

Вот мой текущий рабочий процесс, используя образец PDF.

Разделить PDF на TIFF файлы

pdftk infile.pdf burst output "temp/page_%03d.pdf"
dpi=130 #this is the dpi of the particular file
parallel convert -verbose -density $dpi "{}" -depth 8 -background white -compress zip "{}.tiff" ::: temp/*.pdf

Запустите Tesseract для каждого из файлов TIFF (см . Вывод файла примера)

language=deu_frak
parallel tesseract {} {} -l $language pdf ::: temp/*.tiff
  • Когда я объединить выходной PDF файлы с Ghostscript, я получаю файл , как этот, который щурит встраиваемой текст
  • Когда я комбинировать их с Pdftk (например Pdftk темп /*. PDF выход кот outfile.pdf`), я получаю файл , как этот, который поддерживает встроенный текст , но каким - то образом делает файл больше
  • И затем, когда я пытаюсь сжать этот файл с помощью ImageMagic (например, convert -density 130x130 -quality 5 -compress jpeg outfile-pdftk.pdf outfile-pdftk-imagemagick.pdf), он удаляет встроенный текст OCR (вывод)

Кажется, что Tesseract не сжимает изображения в выходном PDF, что и следовало ожидать - его работа заключается в том, чтобы распечатывать файлы, а не сжимать вывод.

Например, в начальных файлах Tesseract OCR pdfimages -list temp/page_001.pdf.tiff.pdf создает:

page   num  type   width height color comp bpc  enc interp  object ID x-ppi y-ppi size ratio
--------------------------------------------------------------------------------------------
   1     0 image    1067  1508  rgb     3   8  jpeg   no        11  0   129   130  318K 6.7%

... что указывает на то, что объект изображения в PDF-файле точно не хранится оптимально. Это все еще в RGB, не черно-белом. При сжатии с ImageMagick, напротив, pdfimages -list дает:

  pdfimages -list outfile-pdftk-imagemagick.pdf
page   num  type   width height color comp bpc  enc interp  object ID x-ppi y-ppi size ratio
--------------------------------------------------------------------------------------------
   1     0 image    1075  1520  gray    1   8  jpeg   no         8  0   130   131 54.0K 3.4%
   1     1 smask    1075  1520  gray    1   8  image  no         8  0   130   131 25.1K 1.6%
   2     2 image    1075  1520  gray    1   8  jpeg   no        22  0   130   131 59.9K 3.8%
   2     3 smask    1075  1520  gray    1   8  image  no        22  0   130   131 25.1K 1.6%
   3     4 image    1075  1520  gray    1   8  jpeg   no        36  0   130   131 45.2K 2.8%
   3     5 smask    1075  1520  gray    1   8  image  no        36  0   130   131 25.1K 1.6%
   4     6 image    1075  1520  gray    1   8  jpeg   no        50  0   130   131 62.8K 3.9%
   4     7 smask    1075  1520  gray    1   8  image  no        50  0   130   131 25.1K 1.6%
   5     8 image    1075  1520  gray    1   8  jpeg   no        64  0   130   131 61.1K 3.8%
   5     9 smask    1075  1520  gray    1   8  image  no        64  0   130   131 25.1K 1.6%
   6    10 image    1075  1520  gray    1   8  jpeg   no        78  0   130   131 63.4K 4.0%
   6    11 smask    1075  1520  gray    1   8  image  no        78  0   130   131 25.1K 1.6%
   7    12 image    1075  1520  gray    1   8  jpeg   no        92  0   130   131 65.1K 4.1%
   7    13 smask    1075  1520  gray    1   8  image  no        92  0   130   131 25.1K 1.6%
   8    14 image    1075  1520  gray    1   8  jpeg   no       106  0   130   131 61.0K 3.8%
   8    15 smask    1075  1520  gray    1   8  image  no       106  0   130   131 25.1K 1.6%
   9    16 image    1075  1520  gray    1   8  jpeg   no       120  0   130   131 66.8K 4.2%
   9    17 smask    1075  1520  gray    1   8  image  no       120  0   130   131 25.1K 1.6%
  10    18 image    1075  1520  gray    1   8  jpeg   no       134  0   130   131 65.6K 4.1%
  10    19 smask    1075  1520  gray    1   8  image  no       134  0   130   131 25.1K 1.6%

Как мы видим, изображения занимают меньше места, однако текст, встроенный в OCR, был удален, а файл как-то меньше. Для сравнения, если я возьму исходный файл (без текста, встроенного в OCR) и сожму его, используя Adobe Acrobat «Сохранить как другое> PDF уменьшенного размера», я получу:

  pdfimages -list infile-adobe.pdf 
page   num  type   width height color comp bpc  enc interp  object ID x-ppi y-ppi size ratio
--------------------------------------------------------------------------------------------
   1     0 image    1000  1499  gray    1   8  jpx    no        38  0   129   129 78.1K 5.3%
   2     1 image    1000  1499  gray    1   8  jpx    no         3  0   129   129 89.1K 6.1%
   3     2 image    1000  1499  gray    1   8  jpx    no         6  0   129   129 65.6K 4.5%
   4     3 image    1000  1499  gray    1   8  jpx    no         9  0   129   129 97.7K 6.7%
   5     4 image    1000  1499  gray    1   8  jpx    no        12  0   129   129 95.4K 6.5%
   6     5 image    1000  1499  gray    1   8  jpx    no        15  0   129   129 98.7K 6.7%
   7     6 image    1000  1499  gray    1   8  jpx    no        18  0   129   129  102K 6.9%
   8     7 image    1000  1499  gray    1   8  jpx    no        21  0   129   129 94.6K 6.5%
   9     8 image    1000  1499  gray    1   8  jpx    no        24  0   129   129  105K 7.2%
  10     9 image    1000  1499  gray    1   8  jpx    no        27  0   129   129  103K 7.1%

... Как мы видим, Adobe Acrobat сжимает изображения с помощью JPEG2000 (JPX), который недоступен Ghostscript или ImageMagick из-за проблем с патентами.

В целом, есть ли какие-либо предложения о том, как сжимать файлы PDF Tesseract-OCR?

0