OCR: различия между версиями

Материал из ALT Linux Wiki
Строка 193: Строка 193:
| нет
| нет
|}
|}
{{Note|Проверялось на P10, с deb-пакетом ocrmypdf_14.0.1+dfsg1-1_all.deb от Debian 12}}
{{Note|На P10 не работает, проверялось в Sisyphus.}}
 
OCRmyPDF - консольная утилита, которая получает на вход "pdf с картинками", обрабатывает его с помощью Tesseract и формирует "pdf с текстом". Чем выше разрешение картинки/скана - тем выше точность распознавания.


=====Установка=====
=====Установка=====
С портала https://pkgs.org/search/?q=ocrmypdf скачайте deb-пакет ocrmypdf. (RPM-пакеты криво перепаковываются)
Повторюсь, заработало только в Сизифе!


Установите с перепаковкой:
Ставим через pip, т.к. в репозитории нет, а перепаковка из других дистрибутивов не работает.
# epm install --repack '/home/user/Загрузки/ocrmypdf_14.0.1+dfsg1-1_all.deb'


Доустановим библиотеки:
  # apt-get install pip
  # apt-get install pip
  # pip3 install coloredlogs pipeline
  # pip install ocrmypdf
# apt-get install img2pdf pdfminersix python3-module-tqdm


=====Использование=====
=====Использование=====
  $ ocrmypdf -l rus '/home/user/Загрузки/praktika dogovor.pdf'  '/home/user/praktika dogovor_fix.pdf
  $ ocrmypdf -l rus '/home/user/Загрузки/praktika dogovor.pdf'  '/home/user/praktika dogovor_fix.pdf
* -l - язык, в ISO-формате
* -l - язык, в ISO-формате
*сначала указывается "входной файл", потом "выходной"
<div class="toccolours mw-collapsible mw-collapsed">
Вывод команды:
<div class="mw-collapsible-content">
<syntaxhighlight lang="bash">
$ 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
</syntaxhighlight>
</div>
===Сравнение===
===Сравнение===



Версия от 22:46, 13 декабря 2024

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

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
Репозиторий нет
Примечание: На P10 не работает, проверялось в Sisyphus.


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

Установка

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

Ставим через pip, т.к. в репозитории нет, а перепаковка из других дистрибутивов не работает.

# apt-get install pip
# pip 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

Сравнение

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