-
Notifications
You must be signed in to change notification settings - Fork 0
/
TextScanner.py
59 lines (41 loc) · 1.26 KB
/
TextScanner.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
import easyocr
import cv2
import matplotlib.pyplot as plt
import numpy as np
IMAGE_PATH = "./images/surf.jpg"
reader = easyocr.Reader(['en'])
# Read the image
result = reader.readtext(IMAGE_PATH)
# Display the result
print(result)
# ## 4. Drawing Ressult
top_left = tuple(result[0][0][0])
bottom_right = tuple(result[0][0][2])
text = result[0][1]
# Read the image
img = cv2.imread(IMAGE_PATH)
# Draw the bounding box
img = cv2.rectangle(img, top_left, bottom_right, (0, 255, 0), 5)
# Put the text
img = cv2.putText(img, text, top_left, cv2.FONT_HERSHEY_SIMPLEX,
1, (255, 255, 255), 2, cv2.LINE_AA)
# Display the image
plt.imshow(img)
plt.show()
IMAGE_PATH = "./images/out-of-service.jpg"
# Create a reader
reader = easyocr.Reader(['en'])
# Read the image
result = reader.readtext(IMAGE_PATH)
# Display the result
print(result)
img = cv2.imread(IMAGE_PATH)
for detection in result:
top_left = tuple([int(val) for val in detection[0][0]])
bottom_right = tuple([int(val) for val in detection[0][2]])
text = detection[1]
img = cv2.rectangle(img, top_left, bottom_right, (0, 255, 0), 5)
img = cv2.putText(img, text, top_left, cv2.FONT_HERSHEY_SIMPLEX,
2, (255, 255, 255), 2, cv2.LINE_AA)
plt.imshow(img)
plt.show()