Изменить размер скриншота с помощью mss для лучшего чтения с помощью pytesseract - PullRequest
0 голосов
/ 06 июня 2018

Мне нужно изменить размер скриншота, сделанного mss, чтобы лучше читать с помощью pytesseract, и я сделал это с помощью pil + pyscreenshot, но не могу сделать это с помощью mss.

from numpy import array, flip
from mss import mss
from pytesseract import image_to_string
from time import sleep

def screenshot():
    cap = array(mss().grab({'top': 171, 'left': 1088, 'width': 40, 'height': 17}))
    cap = flip(cap[:, :, :3], 2)
    return cap

def read(param):
    tesseract = image_to_string(param)
    return tesseract

while True:
    print(read(screenshot()))
    sleep(2)

здесь егоработа с pyscreenshot

from time import sleep
from PIL import Image, ImageOps
import pyscreenshot as ImageGrab
import pytesseract

while 1:
    test = ImageGrab.grab(bbox=(1088,171,1126,187))
    testt = ImageOps.fit(test, (50, 28), method=Image.ANTIALIAS)
    testt.save('result.png')
    read = pytesseract.image_to_string(testt)
    print(read)
    sleep(2)

И, мне не важно поддерживать аспектное радио, лучше работает с pytesseract.

...