Module OCR
PDOC 3 demo
pdoc --html --output-dir build lib/OCR.py --force
cp build/OCR.html /var/www/html/index.html
date: 29.05.2022 :+1: Learn Markdown
Expand source code
"""
## PDOC 3 demo
```bash
pdoc --html --output-dir build lib/OCR.py --force
cp build/OCR.html /var/www/html/index.html
```
---
date: 29.05.2022 :+1:
[Learn Markdown](https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet)
---
"""
import os
import time
import telegram
import logging
import random
import sys
import cv2
import pytesseract
from datetime import datetime, timezone
logging.basicConfig( level=logging.INFO, filename='/var/log/oee.log',format='%(asctime)s - %(message)s')
my_token="1260858483:AAFmQBXz1Fsg_JqESNmIv9OtcmozFQ7WUbg"
my_chat_id="-1001284842892"
bot = telegram.Bot(my_token)
chat_id=my_chat_id
sys.path.insert(0,'../')
from laserFeed import CaptureFrontCamera,Dreptunghi
def IsRunningOnMainScreen():
""" Check if Status Running is on screen. Returns True/False depending if Running is on Status MDI"""
print("Pornim captura laser")
if not CaptureFrontCamera():
exit(0)
StatusProgramLocation = Dreptunghi(700, 736, 300, inaltime=50)
original = cv2.imread('capture.jpg')
W = 1400
height, width, depth = original.shape
imgScale = W / width
newX, newY = original.shape[1] * imgScale, original.shape[0] * imgScale
orig = cv2.resize(original, (int(newX), int(newY)))
img = cv2.cvtColor(orig, cv2.COLOR_BGR2GRAY)
height, width = img.shape
size = img.size
# print(DreptunghiAnaliza.PunctX)
cropped = orig[StatusProgramLocation.PunctY:StatusProgramLocation.PunctY + StatusProgramLocation.inaltime,
StatusProgramLocation.PunctX:StatusProgramLocation.PunctX + StatusProgramLocation.lungime]
DenumireIdentificata = pytesseract.image_to_string(cropped, config='--psm 10 --oem 3')
img_marcat = cv2.rectangle(img, (StatusProgramLocation.PunctX, StatusProgramLocation.PunctY), (
StatusProgramLocation.PunctX + StatusProgramLocation.lungime,
StatusProgramLocation.PunctY + StatusProgramLocation.inaltime),
(255, 255, 0), 4)
singles = ["unn", "ing"]
found_a_string = False
for single in singles:
if single in DenumireIdentificata:
found_a_string = True
if (not found_a_string):
print("Not running")
cv2.imwrite("/tmp/aici-snapshots_marcat3.jpg", img_marcat)
bot.sendPhoto(chat_id=chat_id, caption=f"Laser Photo {DenumireIdentificata}",
photo=open('/tmp/aici-snapshots_marcat3.jpg', 'rb'))
return found_a_string
if __name__ == '__main__':
IsRunningOnMainScreen()
Functions
def IsRunningOnMainScreen()-
Check if Status Running is on screen. Returns True/False depending if Running is on Status MDI
Expand source code
def IsRunningOnMainScreen(): """ Check if Status Running is on screen. Returns True/False depending if Running is on Status MDI""" print("Pornim captura laser") if not CaptureFrontCamera(): exit(0) StatusProgramLocation = Dreptunghi(700, 736, 300, inaltime=50) original = cv2.imread('capture.jpg') W = 1400 height, width, depth = original.shape imgScale = W / width newX, newY = original.shape[1] * imgScale, original.shape[0] * imgScale orig = cv2.resize(original, (int(newX), int(newY))) img = cv2.cvtColor(orig, cv2.COLOR_BGR2GRAY) height, width = img.shape size = img.size # print(DreptunghiAnaliza.PunctX) cropped = orig[StatusProgramLocation.PunctY:StatusProgramLocation.PunctY + StatusProgramLocation.inaltime, StatusProgramLocation.PunctX:StatusProgramLocation.PunctX + StatusProgramLocation.lungime] DenumireIdentificata = pytesseract.image_to_string(cropped, config='--psm 10 --oem 3') img_marcat = cv2.rectangle(img, (StatusProgramLocation.PunctX, StatusProgramLocation.PunctY), ( StatusProgramLocation.PunctX + StatusProgramLocation.lungime, StatusProgramLocation.PunctY + StatusProgramLocation.inaltime), (255, 255, 0), 4) singles = ["unn", "ing"] found_a_string = False for single in singles: if single in DenumireIdentificata: found_a_string = True if (not found_a_string): print("Not running") cv2.imwrite("/tmp/aici-snapshots_marcat3.jpg", img_marcat) bot.sendPhoto(chat_id=chat_id, caption=f"Laser Photo {DenumireIdentificata}", photo=open('/tmp/aici-snapshots_marcat3.jpg', 'rb')) return found_a_string