Есть ли способ в OCR / tesseract / OpenCV для извлечения текста из определенной области изображения? - PullRequest
0 голосов
/ 12 июня 2019

Я настраиваю новый метод извлечения счета-фактуры с использованием AI, я могу распознавать «Итого» / «Сведения о компании» из изображений счетов-фактур, но мне нужна помощь в извлечении данных из этого конкретного региона, распознанного в изображении счета-фактуры, путем указания области в изображении (Xmin, Xmax, Ymin, Ymax)?

Ответы [ 2 ]

0 голосов
/ 12 июня 2019

AWS недавно запустил сервис Textract, который делает именно то, что вы пытаетесь достичь.

Сообщение в блоге + пример: https://aws.amazon.com/blogs/machine-learning/automatically-extract-text-and-structured-data-from-documents-with-amazon-textract/

Вы можете предоставлять изображения, PDF-файлы и файлы Excel, а также извлекать и преобразовывать любой текст в объекты. Я еще не пользовался услугой, но планирую на выходных.

Пример Python ниже:

import boto3

# Document
s3BucketName = "ki-textract-demo-docs"
documentName = "simple-document-image.jpg"

# Amazon Textract client
textract = boto3.client('textract')

# Call Amazon Textract
response = textract.detect_document_text(
    Document={
        'S3Object': {
            'Bucket': s3BucketName,
            'Name': documentName
        }
    })

#print(response)

# Print detected text
for item in response["Blocks"]:
    if item["BlockType"] == "LINE":
        print ('\033[94m' +  item["Text"] + '\033[0m')
0 голосов
/ 12 июня 2019

Похоже, вы новичок, поэтому позвольте мне помочь вам быстро разобраться в терминах, используемых в вашем ключевом слове.

OCR - это оптическое распознавание символов, концепция Tesseract - специальная библиотека для обработки OCR.OpenCV помогает в библиотеке обработки изображений, помогает в обнаружении и распознавании объектов.

Да, вы можете извлечь текст из изображения, если его разрешение превышает 300 точек на дюйм, используя библиотеку tesseract, но перед этим вы должны обучить модель tesseract этим шрифтом,если шрифт текста очень новый или неизвестный системе.

Также имейте в виду, что если вы можете нанести изображение текста на экран перед вызовом tesseract, он будет работать более точно.

Определенное слово в виде изображения, dpi создаст оповещение, но это основные понятия вашей работы.

Мое предложение, если вы хотите извлечь цифры из изображения, переходите к шагу.

  • Обработка изображения путем повышения его качества.

  • Определение области, которую требуется извлечь.

  • Найдите контур и область.

  • Передайте его в редактор коробочных изображений и настройте параметры

  • Наконец, отдайте его Тессеракту.

...