Pytesseract отказывается считывать восклицательный знак c скриншота( если он конечно должен )

хочу написать программу/код которая будет считывать данные и исходя из них выполнять какие-либо действия

Изначально хотел использовать OpenCV + Pytesseract, чтобы OpenCV анализа определенной области в реальном времени, а Pytesseract для считывания с этой области значений, но Pytesseract отказывается считывать восклицательные знаки ( ниже приведу примеры )

введите сюда описание изображения Вот изображение с которого надо считать восклицательные знаки (image_with_phone.png)

А вот изображение для теставведите сюда описание изображения (image_with_phone1.png)

и изображение получаемое от openCV ,без какой-либо обработкивведите сюда описание изображения

Сам Код

import numpy as np
import time
import pyscreenshot as ImageGrab
import cv2
import pytesseract
from PIL import Image
import os

pytesseract.pytesseract.tesseract_cmd = r"C:\Program Files\Tesseract-OCR\tesseract.exe"
filename = 'Image.png'
x = 1
last_time = time.time()

while(True):
    time.sleep(6)
    screen = np.array(ImageGrab.grab(bbox=(842, 207, 946, 269)))
    print('loop tok {} second'.format(time.time()-last_time))
    last_time = time.time()
    cv2.imshow('window',cv2.cvtColor(screen, cv2.COLOR_BGR2RGB))
    cv2.imwrite(filename, screen)
    x = x + 1
    print(x)
    if x == 2:
        cv2.destroyAllWindows()
        break

img = cv2.imread('Image.png')
text = pytesseract.image_to_string(img)
img1 = Image.open('image_with_phone.png')
text1 = pytesseract.image_to_string(img1)
img2 = Image.open('image_with_phone1.png')
text2 = pytesseract.image_to_string(img2)
print(text)
print(text1)
print(text2)

И результат 

loop tok 6.292342662811279 second
2
непонятный символ
непонятный символ
212311
непонятный символ

Process finished with exit code 0

Ответы (0 шт):