SystemError: плитка не может выходить за пределы изображения

Я хочу прочитать другую вкладку Windows на своем компьютере, но, похоже, она не принимает координаты, которые я ввожу, координаты, которые я получил, использовали pyautogui. Я использую jupyter для его кодирования, я новичок в python, поэтому большую часть этого кода я нашел в geeksforgeeks, поэтому есть кое-что, что я до сих пор не понимаю, как это работает, одно из них — почему 'def imToString(): ".

      import numpy as nm 
import pytesseract
import cv2
import time
from PIL import ImageGrab
x = 2
time.sleep(5)
def imToString():
    pytesseract.pytesseract.tesseract_cmd= r'C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Tesseract-OCR'
    while (True):
        cap = ImageGrab.grab(bbox=(220, 370, 335, 330), include_layered_windows=True)
        tesstr = pytesseract.image_to_string(
                cv2.cvtColor(nm.array(cap), cv2.COLOR_BGR2GRAY), 
                lang ='eng')
        print(tesstr)
imToString()
      ---------------------------------------------------------------------------
SystemError                               Traceback (most recent call last)
Input In [21], in <cell line: 21>()
     17         tesstr = pytesseract.image_to_string(
     18                 cv2.cvtColor(nm.array(cap), cv2.COLOR_BGR2GRAY), 
     19                 lang ='eng')
     20         print(tesstr)
---> 21 imToString()

Input In [21], in imToString()
     15 while (True):
     16     cap = ImageGrab.grab(bbox=(220, 370, 335, 330), include_layered_windows=True)
     17     tesstr = pytesseract.image_to_string(
---> 18             cv2.cvtColor(nm.array(cap), cv2.COLOR_BGR2GRAY), 
     19             lang ='eng')
     20     print(tesstr)

File C:\ProgramData\Anaconda3\lib\site-packages\PIL\Image.py:675, in Image.__array__(self, dtype)
    673     new["data"] = self.tobytes("raw", "L")
    674 else:
--> 675     new["data"] = self.tobytes()
    677 return np.array(self._ArrayData(new), dtype)

File C:\ProgramData\Anaconda3\lib\site-packages\PIL\Image.py:722, in Image.tobytes(self, encoder_name, *args)
    720 # unpack data
    721 e = _getencoder(self.mode, encoder_name, args)
--> 722 e.setimage(self.im)
    724 bufsize = max(65536, self.size[0] * 4)  # see RawEncode.c
    726 data = []

SystemError: tile cannot extend outside image

0 ответов

Другие вопросы по тегам