Распознавание текста изображения с помощью Тессеракта

#linux #ubuntu #pdf #tesseract #text-recognition

Вопрос:

Я хотел бы создать pdf-файл с распознаванием текста по отсканированному изображению.

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

Эта команда Тессеракта делает почти то, что я хочу, но текст невидим.

 tesseract -c textonly_pdf=1 test.tif test pdf 
 
  • Как я могу сделать текст видимым?
  • Могу ли я создать pdf-файл с помощью другого инструмента командной строки или python?

Я запускаю Tesseract в Ubuntu.

Ответ №1:

Вот фрагмент кода из сценария, который я сделал на python (в Windows) год назад, чтобы извлечь текст во фрейме данных (который затем можно сохранить в csv или других форматах).

 import cv2
import pytesseract as pya
pya.pytesseract.tesseract_cmd = r'D:ProgramsTesseract_OCRtesseract.exe'
from pytesseract import Output

imgcv = cv2.imread('foo.jpg')
# in text_df you have the extracted text, confidence and so on
text_df = pya.image_to_data(imgcv , output_type='data.frame')
text_df = text_df[text_df.conf != -1]
text_df = text_df[text_df.conf > 50]
conf = text_df['conf'].mean()