import pyautogui,cv2,pytesseract,time
import numpy as np
from PIL import Image
f = open('ayar.txt','r')
sure = 1
counter = 0
background_counter = 0
background_value = 0
sozluk = dict()
dosya = f.readlines()
koordinatlar = dosya[0][0:len(dosya[0])].split(',')
h=int(dosya[1]);s=int(dosya[2]);v = int(dosya[3])
lower_color = np.array([h,s,v]);upper_color = np.array([180, 255, 255])
x0 = int(koordinatlar[0])
y0 = int(koordinatlar[1])
x1 = int(koordinatlar[2])
y1 = int(koordinatlar[3])
time.sleep(3)
while True:
img = np.array(pyautogui.screenshot())
img2 = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
roi = img2[y0:y1,x0:x1]
cv2.imwrite('ss.png', roi)
roi_hsv = img[y0:y1, x0:x1]
roi_hsv = cv2.cvtColor(roi_hsv, cv2.COLOR_RGB2HSV)
roi_hsv = cv2.inRange(roi_hsv,lower_color,upper_color)
cv2.imwrite('roi_hsv.png',roi_hsv)
for x in range(roi.shape[1]):
for y in range(roi.shape[0]):
if roi_hsv[y,x] == 255:
background_counter += 1
if background_counter / (roi.shape[1]*roi.shape[0]) > 0.65:
background_value += 1
try:
yazi_sonuc = pytesseract.image_to_string(Image.open('ss.png'))
yazi_liste = yazi_sonuc.split('\n');print(yazi_liste)
for yazi in yazi_liste:
if yazi in sozluk:
deger = sozluk[yazi]
deger += 1
sozluk[yazi] = deger
else:
sozluk[yazi] = 1
counter += 1
print(str(counter)+" Defa çalıştı")
f2 = open('bilgi.txt','w')
for key,value in sozluk.items():
f2.write('%s:%s\n' % (key, value))
f2.write("Arka Plan Sayacı:"+str(background_value))
f2.close()
time.sleep(sure)
except:
print("Hata!")