Python ускорить Pytesseract / Использовать нативную библиотеку tesseract в Python - PullRequest
0 голосов
/ 25 марта 2020

Я использую команду

import cv2,pyautogui,numpy as np
img=np.array(pyautogui.screenshot())
pytesseract.image_to_string(img, lang='eng')

, чтобы получить оболочку python для tesseract, чтобы получить текст из изображения для меня, который проходит через интерфейс cli в основном для сохранения изображения в файл, а затем конвертируйте его, что по понятным причинам медленно (0,2 секунды на P C, 3 секунды на Raspberry Pi на изображение).

Как я могу вызвать нативную библиотеку тессеракта (предпочтительно в python) для прямого обрабатывать образ OpenCV / PIL без прохождения через CLI?

Я посмотрел код здесь: https://groups.google.com/forum/?utm_medium=email&utm_source=footer#! msg / tesseract-ocr / xvTFjYCDRQU / rCEwjZL3BQAJ , как предложено Pytesseract слишком медленный. Как я могу заставить его обрабатывать изображения быстрее? , и я не могу получить никакого вывода, даже с улучшениями, чтобы получить код от начала до конца sh:

  1. add locale:

    импортировать locale locale.setlocale (locale.LC_ALL, 'C')

  2. изменить все tess.set_variable ("tessedit_pageseg_mode", str (frame_piece. psm)) входные значения в байтах:

    tess.set_variable (b "tessedit_pageseg_mode", str.encode (str (frame_piece.psm))) *

У любого есть любой идеи? Хотелось бы что-то, что работает на windows, а также linux, но я, вероятно, могу работать со всем, что работает.

PS Я пробовал image> grayscale> threshold> binarization перед передачей изображения в pytesseract и это дает приличный прирост скорости по сравнению с использованием цветных изображений, но даже в этом случае медленная запись ввода-вывода.

...