OCR

Материал из ALT Linux Wiki

< Soft

Программы для подготовки изображений

Scan Tailor Advanced

Scan Tailor
User-menu-scantailor.png
Разработчик(и) Virgil Grigoras
Первый выпуск 2022
Лицензия GNU GPL v3
Сайт github.com
Репозиторий scantailor

Scantailor.png

ScanTailor - программа для подготовки изображения к распознаванию.

Когда вы отсканировали изображение, оно:

  • цветное
  • может быть не достаточно контрастным
  • с неправильной ориентацией

и пр.

ScanTailor пошагово поможет вам максимально подготовить изображение к тому, чтобы OCR как можно лучше распознал текст.

Установка:

# apt-get install scantailor

Программы для распознавания

Стабильные

Cuneiform-qt

Cuneiform-qt
User-menu-cuneiform-qt.png
Разработчик(и) Андрей Черепанов
Первый выпуск 2009
Лицензия GNU GPL v3
Сайт github.com
Репозиторий cuneiform-qt

Cuneiform-qt.png

Для успешного распознавания подготовьте изображение с помощью Scan Tailor Advanced.

Установка:

# apt-get install cuneiform-qt

gImageReader

gImageReader
User-menu-gImageReader.png
Разработчик(и) Sandro Mani
Первый выпуск 2009
Лицензия GNU GPL v3
Сайт github.com
Репозиторий gimagereader

GImageReader.png

Установка:

# apt-get install gimagereader-qt5

или

# apt-get install gimagereader-gtk
  • Программа корректно распознает скан книги в простой неформатированный текст, если выбрать:
    • режим распознавания "простой текст"
    • русский язык
  • режим hOCR, PDF - как и следует - больше подходит для PDF

OCRFeeder

OCRFeeder
User-menu-ocrfeeder.png
Разработчик(и) Joaquim Rocha
(GNOME)
Первый выпуск 2009
Лицензия GNU GPL
Сайт wiki.gnome.org
Репозиторий ocrfeeder

OCRFeeder.png

Установка:

# apt-get install ocrfeeder

Экспериментальные

VietOCR

VietOCR
User-menu-VietOCR.png
Разработчик(и) Quan Nguyen
Первый выпуск 2008
Лицензия Apache v2.0
Сайт vietocr.sf.net
Репозиторий нет

VietOCR.png

VietOCR - GUI для OCR Tesseract. Имеет интерфейс на Java и .NET. Обе версии имеют схожий графический интерфейс пользователя и способны распознавать текст из изображений распространенных форматов.

Версия Java использует Tess4J - Java JNA wrapper для Tesseract OCR API.

Установка:

  • Посмотрите версию tesseract в вашей платформе
Примечание: Например, на 8.12.24, в платформе P10, доступен tesseract v5.2.0
  • Посмотрите, какая версия Tess4J соответствует версии tesseract
Примечание: Согласно странице выше, версии tesseract v5.2.0 соответствует версия tess4J 5.3
  • Посмотрите, какая версия VietOCR соответствует версии tesseract и tess4J
Примечание: Согласно страницам выше, это Version 6.3.0 (7 July 2022)
  • Скачайте VietOCR с sourceforge под версию
  • Пропишите в файле .bashrc, который находится в домашней папке:
export TESSDATA_PREFIX=/usr/share/tesseract
  • В распакованном каталоге VietOCR3 запустите файл VietOCR.jar
$ java -jar '/home/test/Загрузки/VietOCR3/VietOCR.jar'

OCRmyPDF

OCRmyPDF
User-menu-OCRmyPDF.png
Разработчик(и) James R. Barlow
Первый выпуск 2023
Лицензия MPL v2
Сайт ocrmypdf.readthedocs.io
github.com
Репозиторий ocrmypdf
Примечание: D P10 программа отсутствует, пока есть только в Sisyphus.

OCRmyPDF - консольная утилита, которая получает на вход "pdf с картинками", обрабатывает его с помощью Tesseract и формирует "pdf с текстом". Чем выше разрешение картинки/скана - тем выше точность распознавания.

Установка

Повторюсь, пока есть только в Сизифе!

# apt-get install ocrmypdf
Использование
$ ocrmypdf -l rus '/home/user/Загрузки/praktika dogovor.pdf'  '/home/user/praktika dogovor_fix.pdf
  • -l - язык, в ISO-формате
  • сначала указывается "входной файл", потом "выходной"

Вывод команды:

$ ocrmypdf -l rus '/home/user/Загрузки/praktika dogovor.pdf' /home/user/text-test.pdf
Scanning contents     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 7/7 0:00:00
Start processing 7 pages concurrently                                  ocr.py:96
OCR                   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 7/7 0:00:00
Postprocessing...                                                      ocr.py:144
PDF/A conversion      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 7/7 0:00:00
Linearizing           ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 100/100 0:00:00
Recompressing JPEGs   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━   0% 0/0 -:--:--
Deflating JPEGs       ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 7/7 0:00:00
JBIG2                 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━   0% 0/0 -:--:--
Image optimization ratio: 1.02 savings: 1.6%                    _pipeline.py:994
Total file size ratio: 1.01 savings: 1.1%                       _pipeline.py:997
Output file is a PDF/A-2B (as expected)                         _common.py:474

Сравнение

OCR
Параметры Cuneiform-qt gImageReader OCRFeeder VietOCR OCRmyPDF
Движки Движок Cuneiform
Движок Tesseract
Движок Gocr
Движок Ocrad
Импорт Импорт изображений
Импорт PDF
Экспорт Экспорт в txt
Экспорт в html
Экспорт в rtf
Экспорт в tex
Экспорт в odt
Экспорт в pdf
Возможности Возможность сканирования
Поворот изображения
Автоповорот изображения
Настройка яркости-контраста
Выбор области
Автовыбор области
Unpaper
Устранение перекосов
Ручное удаление переносов
Изменение регистра