Я использую PHP / Imagick для преобразования многостраничного PDF в TIFF, чтобы его можно было сканировать с помощью Tesseract OCR. Правильно конвертируется в многостраничный TIFF. (Хотя, всего 6 страниц, но 1,2 ГБ!)
Мой код:
$imagick = new Imagick();
$imagick->setResolution(600,600);
$imagick->readImage(storage_path('app/ocr/'.$fileid.".pdf"));
$imagick->setImageFormat('tiff');
$imagick->setImageDepth(8); //Required for Tesseract
$imagick->writeImage(storage_path('app/ocrtemp/'.$fileid.'.tiff'));
$tesseract = new Tesseract();
$text = $tesseract->recognize(storage_path('app/ocrtemp/'.$fileid.'.tiff'));
OCR работает хорошо и возвращает текст OCR последней страницы TIFF. НО, только последняя страница. Как я могу заставить Тессеракт сканировать многостраничный TIFF для меня?
Есть идеи, что я могу сделать?
Я понимаю, что Imagick должен делать это правильно, но я думаю, что у него также есть функция, с помощью которой он может склеивать изображения — может быть, мне следует сделать это и просто создать один действительно длинный JPG или что-то подобное и OCR?
Большое спасибо,
Сэм
Задача ещё не решена.
Других решений пока нет …