Оптичне розпізнавання українського тексту на PHP
У світі цифрових даних інформація все частіше надходить до нас не у вигляді документів, а у вигляді зображень — сканів, фотографій або скріншотів. Але що, якщо потрібно швидко витягти текст з такого файлу і обробити його далі?
Рішення просте — використовувати Tesseract OCR, потужну утиліту з відкритим вихідним кодом, яка перетворює зображення в редагований текст за пару секунд.
Що таке Tesseract
Tesseract — це інструмент для оптичного розпізнавання тексту (OCR), створений Google і активно розвинений спільнотою. Він підтримує більшість популярних форматів зображень — PNG, JPEG, TIFF та інші.
На серверах вже встановлені мовні пакети:
- англійська
eng), - російський
rus), - український
ukr).
Якщо потрібна інша мова, можна звернутися до технічної підтримки — доступно понад 100 мов для встановлення.
Що вміє Tesseract
За допомогою Tesseract ви можете:
✅ Розпізнавати текст із зображень будь-якого формату.
✅ Працювати з декількома мовами одночасно.
✅ Зберігати результат у текстовому.txt) або PDF-файлі.
✅ Вбудовувати OCR безпосередньо у свої додатки на PHP, Python, Go, Node.js та інших мовах.
Як запустити розпізнавання через консоль
Розглянемо базовий приклад: потрібно витягти текст із зображення image.png українською та англійською мовами.
Достатньо виконати команду:
$ tesseract image.png output -l ukr+engРезультат з'явиться у файлі output.txt.
Приклад використання в PHP
Tesseract легко інтегрується з PHP. Нижче наведено приклад коду, який запускає OCR і виводить текст безпосередньо в браузері:
<?php
$text = shell_exec('tesseract image.png - -l ukr+eng');
echo "<pre>{$text}</pre>";
?>
Як зберегти результат у PDF
Щоб результат зберігався не тільки в текстовому файлі, але і в PDF, можна використовувати наступну команду:
<?php
shell_exec('tesseract image.png output pdf txt -l ukr+eng');
?>Після виконання з'являться файли output.txt і output.pdf, де текст буде доступний для копіювання та пошуку.
Чому варто використовувати Tesseract
- Безкоштовно та з відкритим вихідним кодом.
- Підтримує понад 100 мов.
- Легко інтегрується з будь-якими серверними мовами — PHP, Python, Node.js, Go та іншими.
- Працює швидко і надійно навіть на великих зображеннях.
Де прочитати детальніше
Повна документація та приклади доступні на офіційному сайті проекту:
👉 Tesseract OCR Documentation