1.supported multiple file uploads
Browse files2. added image refresh after information extraction
3. removed some error on extractor html
- Layoutlmv3_inference/__pycache__/__init__.cpython-310.pyc +0 -0
- Layoutlmv3_inference/__pycache__/annotate_image.cpython-310.pyc +0 -0
- Layoutlmv3_inference/__pycache__/inference_handler.cpython-310.pyc +0 -0
- Layoutlmv3_inference/__pycache__/ocr.cpython-310.pyc +0 -0
- Layoutlmv3_inference/__pycache__/ocr.cpython-311.pyc +0 -0
- Layoutlmv3_inference/__pycache__/utils.cpython-310.pyc +0 -0
- Layoutlmv3_inference/annotate_image.py +47 -47
- Layoutlmv3_inference/ocr.py +36 -3
- __pycache__/app.cpython-310.pyc +0 -0
- __pycache__/app.cpython-311.pyc +0 -0
- __pycache__/app.cpython-38.pyc +0 -0
- app.py +11 -10
- exp2.ipynb +183 -0
- experiment.ipynb +1337 -0
- inferenced/csv_files/Output_0.csv +3 -0
- inferenced/output.csv +3 -0
- log/error_output.log +319 -0
- sample_711.jpg +0 -0
- templates/extractor.html +205 -121
Layoutlmv3_inference/__pycache__/__init__.cpython-310.pyc
CHANGED
Binary files a/Layoutlmv3_inference/__pycache__/__init__.cpython-310.pyc and b/Layoutlmv3_inference/__pycache__/__init__.cpython-310.pyc differ
|
|
Layoutlmv3_inference/__pycache__/annotate_image.cpython-310.pyc
CHANGED
Binary files a/Layoutlmv3_inference/__pycache__/annotate_image.cpython-310.pyc and b/Layoutlmv3_inference/__pycache__/annotate_image.cpython-310.pyc differ
|
|
Layoutlmv3_inference/__pycache__/inference_handler.cpython-310.pyc
CHANGED
Binary files a/Layoutlmv3_inference/__pycache__/inference_handler.cpython-310.pyc and b/Layoutlmv3_inference/__pycache__/inference_handler.cpython-310.pyc differ
|
|
Layoutlmv3_inference/__pycache__/ocr.cpython-310.pyc
CHANGED
Binary files a/Layoutlmv3_inference/__pycache__/ocr.cpython-310.pyc and b/Layoutlmv3_inference/__pycache__/ocr.cpython-310.pyc differ
|
|
Layoutlmv3_inference/__pycache__/ocr.cpython-311.pyc
CHANGED
Binary files a/Layoutlmv3_inference/__pycache__/ocr.cpython-311.pyc and b/Layoutlmv3_inference/__pycache__/ocr.cpython-311.pyc differ
|
|
Layoutlmv3_inference/__pycache__/utils.cpython-310.pyc
CHANGED
Binary files a/Layoutlmv3_inference/__pycache__/utils.cpython-310.pyc and b/Layoutlmv3_inference/__pycache__/utils.cpython-310.pyc differ
|
|
Layoutlmv3_inference/annotate_image.py
CHANGED
@@ -4,53 +4,53 @@ from .utils import image_label_2_color
|
|
4 |
|
5 |
|
6 |
def get_flattened_output(docs):
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
|
29 |
|
30 |
def annotate_image(image_path, annotation_object):
|
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 |
-
|
|
|
4 |
|
5 |
|
6 |
def get_flattened_output(docs):
|
7 |
+
print("Running Flattened Output")
|
8 |
+
flattened_output = []
|
9 |
+
annotation_key = 'output'
|
10 |
+
for doc in docs:
|
11 |
+
flattened_output_item = {annotation_key: []}
|
12 |
+
doc_annotation = doc[annotation_key]
|
13 |
+
for i, span in enumerate(doc_annotation):
|
14 |
+
if len(span['words']) > 1:
|
15 |
+
for span_chunk in span['words']:
|
16 |
+
flattened_output_item[annotation_key].append(
|
17 |
+
{
|
18 |
+
'label': span['label'],
|
19 |
+
'text': span_chunk['text'],
|
20 |
+
'words': [span_chunk]
|
21 |
+
}
|
22 |
+
)
|
23 |
+
|
24 |
+
else:
|
25 |
+
flattened_output_item[annotation_key].append(span)
|
26 |
+
flattened_output.append(flattened_output_item)
|
27 |
+
return flattened_output
|
28 |
|
29 |
|
30 |
def annotate_image(image_path, annotation_object):
|
31 |
+
print("Annotating Images")
|
32 |
+
img = None
|
33 |
+
image = Image.open(image_path).convert('RGBA')
|
34 |
+
tmp = image.copy()
|
35 |
+
label2color = image_label_2_color(annotation_object)
|
36 |
+
overlay = Image.new('RGBA', tmp.size, (0, 0, 0)+(0,))
|
37 |
+
draw = ImageDraw.Draw(overlay)
|
38 |
+
font = ImageFont.load_default()
|
39 |
+
|
40 |
+
predictions = [span['label'] for span in annotation_object['output']]
|
41 |
+
boxes = [span['words'][0]['box'] for span in annotation_object['output']]
|
42 |
+
for prediction, box in zip(predictions, boxes):
|
43 |
+
draw.rectangle(box, outline=label2color[prediction],
|
44 |
+
width=3, fill=label2color[prediction]+(int(255*0.33),))
|
45 |
+
draw.text((box[0] + 10, box[1] - 10), text=prediction,
|
46 |
+
fill=label2color[prediction], font=font)
|
47 |
+
|
48 |
+
img = Image.alpha_composite(tmp, overlay)
|
49 |
+
img = img.convert("RGB")
|
50 |
+
|
51 |
+
image_name = os.path.basename(image_path)
|
52 |
+
image_name = image_name[:image_name.find('.')]
|
53 |
+
output_folder = 'static/temp/img_display/'
|
54 |
+
os.makedirs(output_folder, exist_ok=True)
|
55 |
+
|
56 |
+
img.save(os.path.join(output_folder, f'{image_name}.jpg_inference.jpg'))
|
Layoutlmv3_inference/ocr.py
CHANGED
@@ -7,6 +7,7 @@ import requests
|
|
7 |
import traceback
|
8 |
import tempfile
|
9 |
|
|
|
10 |
from PIL import Image
|
11 |
|
12 |
def preprocess_image(image_path, max_file_size_mb=1, target_file_size_mb=0.5):
|
@@ -75,8 +76,41 @@ def enhance_txt(img, intensity_increase=20, bilateral_filter_diameter=9, bilater
|
|
75 |
img = cv2.bilateralFilter(img, bilateral_filter_diameter, bilateral_filter_sigma_color, bilateral_filter_sigma_space)
|
76 |
|
77 |
_, binary = cv2.threshold(blurred, threshold, 255, cv2.THRESH_BINARY)
|
78 |
-
return binary
|
79 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
80 |
|
81 |
def run_tesseract_on_preprocessed_image(preprocessed_image, image_path):
|
82 |
try:
|
@@ -92,8 +126,7 @@ def run_tesseract_on_preprocessed_image(preprocessed_image, image_path):
|
|
92 |
url = "https://api.ocr.space/parse/image"
|
93 |
|
94 |
# Define the API key and the language
|
95 |
-
|
96 |
-
api_key = os.getenv("ocr_space")
|
97 |
language = "eng"
|
98 |
|
99 |
# Save the preprocessed image
|
|
|
7 |
import traceback
|
8 |
import tempfile
|
9 |
|
10 |
+
FLASK_DEBUG=1
|
11 |
from PIL import Image
|
12 |
|
13 |
def preprocess_image(image_path, max_file_size_mb=1, target_file_size_mb=0.5):
|
|
|
76 |
img = cv2.bilateralFilter(img, bilateral_filter_diameter, bilateral_filter_sigma_color, bilateral_filter_sigma_space)
|
77 |
|
78 |
_, binary = cv2.threshold(blurred, threshold, 255, cv2.THRESH_BINARY)
|
|
|
79 |
|
80 |
+
# Find contours in the edged image, keep only the largest ones, and initialize our screen contour
|
81 |
+
contours, _ = cv2.findContours(edged.copy(), cv2.RETR_LIST, cv2.CHAIN_APPROX_SIMPLE)
|
82 |
+
contours = sorted(contours, key = cv2.contourArea, reverse = True)[:5]
|
83 |
+
|
84 |
+
# Initialize a variable to hold the screen contour
|
85 |
+
screenContour = None
|
86 |
+
|
87 |
+
# Loop over the contours
|
88 |
+
for c in contours:
|
89 |
+
# Approximate the contour
|
90 |
+
peri = cv2.arcLength(c, True)
|
91 |
+
approx = cv2.approxPolyDP(c, 0.02 * peri, True)
|
92 |
+
|
93 |
+
# If our approximated contour has four points, then we can assume that we have found our screen
|
94 |
+
if len(approx) == 4:
|
95 |
+
screenContour = approx
|
96 |
+
break
|
97 |
+
|
98 |
+
# If no contour is found or the contour is small, use the whole image
|
99 |
+
if screenContour is None or cv2.contourArea(screenContour) < 500:
|
100 |
+
screenContour = np.array([[[0, 0]], [[w-1, 0]], [[w-1, h-1]], [[0, h-1]]])
|
101 |
+
|
102 |
+
# Get the bounding rectangle around the contour
|
103 |
+
x, y, w, h = cv2.boundingRect(screenContour)
|
104 |
+
|
105 |
+
# Check if the bounding rectangle is within the image boundaries
|
106 |
+
if x >= 0 and y >= 0 and x + w <= img.shape[1] and y + h <= img.shape[0]:
|
107 |
+
# Crop the image using the bounding rectangle
|
108 |
+
cropped_img = img[y:y+h, x:x+w]
|
109 |
+
else:
|
110 |
+
print("Bounding rectangle is out of image boundaries")
|
111 |
+
cropped_img = img
|
112 |
+
|
113 |
+
return cropped_img
|
114 |
|
115 |
def run_tesseract_on_preprocessed_image(preprocessed_image, image_path):
|
116 |
try:
|
|
|
126 |
url = "https://api.ocr.space/parse/image"
|
127 |
|
128 |
# Define the API key and the language
|
129 |
+
api_key = "K88232854988957" # Replace with your actual OCR Space API key
|
|
|
130 |
language = "eng"
|
131 |
|
132 |
# Save the preprocessed image
|
__pycache__/app.cpython-310.pyc
DELETED
Binary file (4.49 kB)
|
|
__pycache__/app.cpython-311.pyc
DELETED
Binary file (12.4 kB)
|
|
__pycache__/app.cpython-38.pyc
DELETED
Binary file (1.58 kB)
|
|
app.py
CHANGED
@@ -1,8 +1,3 @@
|
|
1 |
-
# import warnings
|
2 |
-
|
3 |
-
# # Ignore SourceChangeWarning
|
4 |
-
# warnings.filterwarnings("ignore", category=DeprecationWarning)
|
5 |
-
# warnings.filterwarnings("ignore", category=SourceChangeWarning)
|
6 |
|
7 |
# Dependencies
|
8 |
from flask import Flask, request, render_template, jsonify, send_file, redirect, url_for, flash, send_from_directory, session
|
@@ -29,6 +24,7 @@ import signal
|
|
29 |
import shutil
|
30 |
from datetime import datetime
|
31 |
import zipfile
|
|
|
32 |
# LLM
|
33 |
import argparse
|
34 |
from asyncio.log import logger
|
@@ -39,12 +35,14 @@ import os
|
|
39 |
import copy
|
40 |
|
41 |
|
|
|
42 |
UPLOAD_FOLDER = 'static/temp/uploads'
|
43 |
if not os.path.exists(UPLOAD_FOLDER):
|
44 |
os.makedirs(UPLOAD_FOLDER)
|
45 |
|
46 |
ALLOWED_EXTENSIONS = {'png', 'jpg', 'jpeg'}
|
47 |
|
|
|
48 |
app = Flask(__name__)
|
49 |
app.config['UPLOAD_FOLDER'] = UPLOAD_FOLDER
|
50 |
app.config['SECRET_KEY'] = 'supersecretkey'
|
@@ -107,8 +105,8 @@ def make_predictions(image_paths):
|
|
107 |
temp = None
|
108 |
try:
|
109 |
# For Windows OS
|
110 |
-
|
111 |
-
|
112 |
|
113 |
model_path = Path(r'model/export')
|
114 |
learner = load_learner(model_path)
|
@@ -132,12 +130,14 @@ def make_predictions(image_paths):
|
|
132 |
except Exception as e:
|
133 |
return {"error in make_predictions": str(e)}
|
134 |
|
135 |
-
|
136 |
-
|
137 |
|
138 |
|
139 |
@app.route('/predict/<filenames>', methods=['GET', 'POST'])
|
140 |
def predict_files(filenames):
|
|
|
|
|
141 |
prediction_results = []
|
142 |
image_paths = eval(filenames) # Convert the filenames string back to a list
|
143 |
|
@@ -178,8 +178,9 @@ def predict_files(filenames):
|
|
178 |
file_to_remove = os.path.join('static', 'temp', 'uploads', image_paths[index])
|
179 |
if os.path.exists(file_to_remove):
|
180 |
os.remove(file_to_remove)
|
|
|
181 |
|
182 |
-
return render_template('extractor.html', image_paths=image_paths, prediction_results = prediction_results, predictions=dict(zip(image_paths, prediction_results_copy)))
|
183 |
|
184 |
|
185 |
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
2 |
# Dependencies
|
3 |
from flask import Flask, request, render_template, jsonify, send_file, redirect, url_for, flash, send_from_directory, session
|
|
|
24 |
import shutil
|
25 |
from datetime import datetime
|
26 |
import zipfile
|
27 |
+
|
28 |
# LLM
|
29 |
import argparse
|
30 |
from asyncio.log import logger
|
|
|
35 |
import copy
|
36 |
|
37 |
|
38 |
+
# Upload Folder
|
39 |
UPLOAD_FOLDER = 'static/temp/uploads'
|
40 |
if not os.path.exists(UPLOAD_FOLDER):
|
41 |
os.makedirs(UPLOAD_FOLDER)
|
42 |
|
43 |
ALLOWED_EXTENSIONS = {'png', 'jpg', 'jpeg'}
|
44 |
|
45 |
+
|
46 |
app = Flask(__name__)
|
47 |
app.config['UPLOAD_FOLDER'] = UPLOAD_FOLDER
|
48 |
app.config['SECRET_KEY'] = 'supersecretkey'
|
|
|
105 |
temp = None
|
106 |
try:
|
107 |
# For Windows OS
|
108 |
+
temp = pathlib.PosixPath # Save the original state
|
109 |
+
pathlib.PosixPath = pathlib.WindowsPath # Change to WindowsPath temporarily
|
110 |
|
111 |
model_path = Path(r'model/export')
|
112 |
learner = load_learner(model_path)
|
|
|
130 |
except Exception as e:
|
131 |
return {"error in make_predictions": str(e)}
|
132 |
|
133 |
+
finally:
|
134 |
+
pathlib.PosixPath = temp
|
135 |
|
136 |
|
137 |
@app.route('/predict/<filenames>', methods=['GET', 'POST'])
|
138 |
def predict_files(filenames):
|
139 |
+
index_url = url_for('index')
|
140 |
+
|
141 |
prediction_results = []
|
142 |
image_paths = eval(filenames) # Convert the filenames string back to a list
|
143 |
|
|
|
178 |
file_to_remove = os.path.join('static', 'temp', 'uploads', image_paths[index])
|
179 |
if os.path.exists(file_to_remove):
|
180 |
os.remove(file_to_remove)
|
181 |
+
|
182 |
|
183 |
+
return render_template('extractor.html', index_url=index_url, image_paths=image_paths, prediction_results = prediction_results, predictions=dict(zip(image_paths, prediction_results_copy)))
|
184 |
|
185 |
|
186 |
|
exp2.ipynb
ADDED
@@ -0,0 +1,183 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"cells": [
|
3 |
+
{
|
4 |
+
"cell_type": "code",
|
5 |
+
"execution_count": 1,
|
6 |
+
"metadata": {},
|
7 |
+
"outputs": [],
|
8 |
+
"source": [
|
9 |
+
"# import the necessary packages\n",
|
10 |
+
"from imutils.perspective import four_point_transform\n",
|
11 |
+
"import pytesseract\n",
|
12 |
+
"import argparse\n",
|
13 |
+
"import imutils\n",
|
14 |
+
"import cv2\n",
|
15 |
+
"import re"
|
16 |
+
]
|
17 |
+
},
|
18 |
+
{
|
19 |
+
"cell_type": "code",
|
20 |
+
"execution_count": 13,
|
21 |
+
"metadata": {},
|
22 |
+
"outputs": [
|
23 |
+
{
|
24 |
+
"name": "stderr",
|
25 |
+
"output_type": "stream",
|
26 |
+
"text": [
|
27 |
+
"usage: ipykernel_launcher.py [-h] -i INPUT [-d DEBUG]\n",
|
28 |
+
"ipykernel_launcher.py: error: the following arguments are required: -i/--input\n"
|
29 |
+
]
|
30 |
+
},
|
31 |
+
{
|
32 |
+
"ename": "SystemExit",
|
33 |
+
"evalue": "2",
|
34 |
+
"output_type": "error",
|
35 |
+
"traceback": [
|
36 |
+
"An exception has occurred, use %tb to see the full traceback.\n",
|
37 |
+
"\u001b[1;31mSystemExit\u001b[0m\u001b[1;31m:\u001b[0m 2\n"
|
38 |
+
]
|
39 |
+
}
|
40 |
+
],
|
41 |
+
"source": [
|
42 |
+
"input= \"sample_711.jpg\"\n",
|
43 |
+
"\n",
|
44 |
+
"# Construct the argument parser\n",
|
45 |
+
"ap = argparse.ArgumentParser()\n",
|
46 |
+
"ap.add_argument(\"-i\", \"--input\", required=True,\n",
|
47 |
+
"\thelp=\"path to input receipt image\")\n",
|
48 |
+
"ap.add_argument(\"-d\", \"--debug\", type=int, default=-1,\n",
|
49 |
+
"\thelp=\"whether or not we are visualizing each step of the pipeline\")\n",
|
50 |
+
"\n",
|
51 |
+
"# Parse the arguments\n",
|
52 |
+
"args = vars(ap.parse_args())\n"
|
53 |
+
]
|
54 |
+
},
|
55 |
+
{
|
56 |
+
"cell_type": "code",
|
57 |
+
"execution_count": 14,
|
58 |
+
"metadata": {},
|
59 |
+
"outputs": [
|
60 |
+
{
|
61 |
+
"ename": "NameError",
|
62 |
+
"evalue": "name 'args' is not defined",
|
63 |
+
"output_type": "error",
|
64 |
+
"traceback": [
|
65 |
+
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
|
66 |
+
"\u001b[1;31mNameError\u001b[0m Traceback (most recent call last)",
|
67 |
+
"Cell \u001b[1;32mIn[14], line 4\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[38;5;66;03m# load the input image from disk, resize it, and compute the ratio\u001b[39;00m\n\u001b[0;32m 2\u001b[0m \u001b[38;5;66;03m# of the *new* width to the *old* width\u001b[39;00m\n\u001b[0;32m 3\u001b[0m image\u001b[38;5;241m=\u001b[39m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124msample_711.jpg\u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[1;32m----> 4\u001b[0m orig \u001b[38;5;241m=\u001b[39m cv2\u001b[38;5;241m.\u001b[39mimread(\u001b[43margs\u001b[49m[\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mimage\u001b[39m\u001b[38;5;124m\"\u001b[39m])\n\u001b[0;32m 5\u001b[0m image \u001b[38;5;241m=\u001b[39m orig\u001b[38;5;241m.\u001b[39mcopy()\n\u001b[0;32m 6\u001b[0m image \u001b[38;5;241m=\u001b[39m imutils\u001b[38;5;241m.\u001b[39mresize(image, width\u001b[38;5;241m=\u001b[39m\u001b[38;5;241m500\u001b[39m)\n",
|
68 |
+
"\u001b[1;31mNameError\u001b[0m: name 'args' is not defined"
|
69 |
+
]
|
70 |
+
}
|
71 |
+
],
|
72 |
+
"source": [
|
73 |
+
"# load the input image from disk, resize it, and compute the ratio\n",
|
74 |
+
"# of the *new* width to the *old* width\n",
|
75 |
+
"image= \"sample_711.jpg\"\n",
|
76 |
+
"orig = cv2.imread(args[\"image\"])\n",
|
77 |
+
"image = orig.copy()\n",
|
78 |
+
"image = imutils.resize(image, width=500)\n",
|
79 |
+
"ratio = orig.shape[1] / float(image.shape[1])"
|
80 |
+
]
|
81 |
+
},
|
82 |
+
{
|
83 |
+
"cell_type": "code",
|
84 |
+
"execution_count": null,
|
85 |
+
"metadata": {},
|
86 |
+
"outputs": [],
|
87 |
+
"source": [
|
88 |
+
"# convert the image to grayscale, blur it slightly, and then apply\n",
|
89 |
+
"# edge detection\n",
|
90 |
+
"gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)\n",
|
91 |
+
"blurred = cv2.GaussianBlur(gray, (5, 5,), 0)\n",
|
92 |
+
"edged = cv2.Canny(blurred, 75, 200)\n",
|
93 |
+
"# check to see if we should show the output of our edge detection\n",
|
94 |
+
"# procedure\n",
|
95 |
+
"if args[\"debug\"] > 0:\n",
|
96 |
+
"\tcv2.imshow(\"Input\", image)\n",
|
97 |
+
"\tcv2.imshow(\"Edged\", edged)\n",
|
98 |
+
"\tcv2.waitKey(0)"
|
99 |
+
]
|
100 |
+
},
|
101 |
+
{
|
102 |
+
"cell_type": "code",
|
103 |
+
"execution_count": null,
|
104 |
+
"metadata": {},
|
105 |
+
"outputs": [],
|
106 |
+
"source": [
|
107 |
+
"# find contours in the edge map and sort them by size in descending\n",
|
108 |
+
"# order\n",
|
109 |
+
"cnts = cv2.findContours(edged.copy(), cv2.RETR_EXTERNAL,\n",
|
110 |
+
"\tcv2.CHAIN_APPROX_SIMPLE)\n",
|
111 |
+
"cnts = imutils.grab_contours(cnts)\n",
|
112 |
+
"cnts = sorted(cnts, key=cv2.contourArea, reverse=True)"
|
113 |
+
]
|
114 |
+
},
|
115 |
+
{
|
116 |
+
"cell_type": "code",
|
117 |
+
"execution_count": null,
|
118 |
+
"metadata": {},
|
119 |
+
"outputs": [],
|
120 |
+
"source": [
|
121 |
+
"# initialize a contour that corresponds to the receipt outline\n",
|
122 |
+
"receiptCnt = None\n",
|
123 |
+
"# loop over the contours\n",
|
124 |
+
"for c in cnts:\n",
|
125 |
+
"\t# approximate the contour\n",
|
126 |
+
"\tperi = cv2.arcLength(c, True)\n",
|
127 |
+
"\tapprox = cv2.approxPolyDP(c, 0.02 * peri, True)\n",
|
128 |
+
"\t# if our approximated contour has four points, then we can\n",
|
129 |
+
"\t# assume we have found the outline of the receipt\n",
|
130 |
+
"\tif len(approx) == 4:\n",
|
131 |
+
"\t\treceiptCnt = approx\n",
|
132 |
+
"\t\tbreak\n",
|
133 |
+
"# if the receipt contour is empty then our script could not find the\n",
|
134 |
+
"# outline and we should be notified\n",
|
135 |
+
"if receiptCnt is None:\n",
|
136 |
+
"\traise Exception((\"Could not find receipt outline. \"\n",
|
137 |
+
"\t\t\"Try debugging your edge detection and contour steps.\"))"
|
138 |
+
]
|
139 |
+
},
|
140 |
+
{
|
141 |
+
"cell_type": "code",
|
142 |
+
"execution_count": null,
|
143 |
+
"metadata": {},
|
144 |
+
"outputs": [],
|
145 |
+
"source": [
|
146 |
+
"# check to see if we should draw the contour of the receipt on the\n",
|
147 |
+
"# image and then display it to our screen\n",
|
148 |
+
"if args[\"debug\"] > 0:\n",
|
149 |
+
"\toutput = image.copy()\n",
|
150 |
+
"\tcv2.drawContours(output, [receiptCnt], -1, (0, 255, 0), 2)\n",
|
151 |
+
"\tcv2.imshow(\"Receipt Outline\", output)\n",
|
152 |
+
"\tcv2.waitKey(0)\n",
|
153 |
+
"# apply a four-point perspective transform to the *original* image to\n",
|
154 |
+
"# obtain a top-down bird's-eye view of the receipt\n",
|
155 |
+
"receipt = four_point_transform(orig, receiptCnt.reshape(4, 2) * ratio)\n",
|
156 |
+
"# show transformed image\n",
|
157 |
+
"cv2.imshow(\"Receipt Transform\", imutils.resize(receipt, width=500))\n",
|
158 |
+
"cv2.waitKey(0)"
|
159 |
+
]
|
160 |
+
}
|
161 |
+
],
|
162 |
+
"metadata": {
|
163 |
+
"kernelspec": {
|
164 |
+
"display_name": "mlenv",
|
165 |
+
"language": "python",
|
166 |
+
"name": "python3"
|
167 |
+
},
|
168 |
+
"language_info": {
|
169 |
+
"codemirror_mode": {
|
170 |
+
"name": "ipython",
|
171 |
+
"version": 3
|
172 |
+
},
|
173 |
+
"file_extension": ".py",
|
174 |
+
"mimetype": "text/x-python",
|
175 |
+
"name": "python",
|
176 |
+
"nbconvert_exporter": "python",
|
177 |
+
"pygments_lexer": "ipython3",
|
178 |
+
"version": "3.11.4"
|
179 |
+
}
|
180 |
+
},
|
181 |
+
"nbformat": 4,
|
182 |
+
"nbformat_minor": 2
|
183 |
+
}
|
experiment.ipynb
ADDED
@@ -0,0 +1,1337 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"cells": [
|
3 |
+
{
|
4 |
+
"cell_type": "code",
|
5 |
+
"execution_count": 17,
|
6 |
+
"metadata": {},
|
7 |
+
"outputs": [],
|
8 |
+
"source": [
|
9 |
+
"# defining inference parameters\n",
|
10 |
+
"model_path = r\"C:\\Users\\Ayoo\\Desktop\\webapp\\model\" # path to Layoutlmv3 model\n",
|
11 |
+
"imag_path = r\"C:\\Users\\Ayoo\\Desktop\\webapp\\predictions\\imgs\" # images folder"
|
12 |
+
]
|
13 |
+
},
|
14 |
+
{
|
15 |
+
"cell_type": "code",
|
16 |
+
"execution_count": 33,
|
17 |
+
"metadata": {},
|
18 |
+
"outputs": [
|
19 |
+
{
|
20 |
+
"name": "stdout",
|
21 |
+
"output_type": "stream",
|
22 |
+
"text": [
|
23 |
+
"^C\n"
|
24 |
+
]
|
25 |
+
},
|
26 |
+
{
|
27 |
+
"name": "stderr",
|
28 |
+
"output_type": "stream",
|
29 |
+
"text": [
|
30 |
+
"2023-12-16 02:35:50.587274: I tensorflow/core/util/port.cc:113] oneDNN custom operations are on. You may see slightly different numerical results due to floating-point round-off errors from different computation orders. To turn them off, set the environment variable `TF_ENABLE_ONEDNN_OPTS=0`.\n",
|
31 |
+
"WARNING:tensorflow:From C:\\Users\\Ayoo\\AppData\\Roaming\\Python\\Python311\\site-packages\\keras\\src\\losses.py:2976: The name tf.losses.sparse_softmax_cross_entropy is deprecated. Please use tf.compat.v1.losses.sparse_softmax_cross_entropy instead.\n",
|
32 |
+
"\n",
|
33 |
+
"c:\\Users\\Ayoo\\anaconda3\\envs\\mlenv\\Lib\\site-packages\\transformers\\modeling_utils.py:881: FutureWarning: The `device` argument is deprecated and will be removed in v5 of Transformers.\n",
|
34 |
+
" warnings.warn(\n"
|
35 |
+
]
|
36 |
+
},
|
37 |
+
{
|
38 |
+
"name": "stdout",
|
39 |
+
"output_type": "stream",
|
40 |
+
"text": [
|
41 |
+
"Preparing for Inference\n",
|
42 |
+
"Starting\n",
|
43 |
+
"Preprocessing\n",
|
44 |
+
"Preprocessing done. Running OCR\n",
|
45 |
+
"JSON file saved\n",
|
46 |
+
"OCR done\n",
|
47 |
+
"Run Done\n",
|
48 |
+
"Cleaned Tesseract output done\n",
|
49 |
+
"Word list done\n",
|
50 |
+
"Box list done\n",
|
51 |
+
"Prepared for Inference Batch\n",
|
52 |
+
"Running Flattened Output\n",
|
53 |
+
"Ready for Annotation\n",
|
54 |
+
"Annotating Images\n"
|
55 |
+
]
|
56 |
+
}
|
57 |
+
],
|
58 |
+
"source": [
|
59 |
+
"! python predictions\\inference\\run_inference.py --model_path {model_path} --images_path {imag_path}"
|
60 |
+
]
|
61 |
+
},
|
62 |
+
{
|
63 |
+
"cell_type": "code",
|
64 |
+
"execution_count": 20,
|
65 |
+
"metadata": {},
|
66 |
+
"outputs": [
|
67 |
+
{
|
68 |
+
"name": "stdout",
|
69 |
+
"output_type": "stream",
|
70 |
+
"text": [
|
71 |
+
"Looking for C:\\Users\\Ayoo\\.keras-ocr\\craft_mlt_25k.h5\n"
|
72 |
+
]
|
73 |
+
},
|
74 |
+
{
|
75 |
+
"ename": "KeyboardInterrupt",
|
76 |
+
"evalue": "",
|
77 |
+
"output_type": "error",
|
78 |
+
"traceback": [
|
79 |
+
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
|
80 |
+
"\u001b[1;31mKeyboardInterrupt\u001b[0m Traceback (most recent call last)",
|
81 |
+
"Cell \u001b[1;32mIn[20], line 2\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mkeras_ocr\u001b[39;00m\n\u001b[1;32m----> 2\u001b[0m pipeline\u001b[38;5;241m=\u001b[39m\u001b[43mkeras_ocr\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mpipeline\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mPipeline\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n",
|
82 |
+
"File \u001b[1;32mc:\\Users\\Ayoo\\anaconda3\\envs\\mlenv\\Lib\\site-packages\\keras_ocr\\pipeline.py:20\u001b[0m, in \u001b[0;36mPipeline.__init__\u001b[1;34m(self, detector, recognizer, scale, max_size)\u001b[0m\n\u001b[0;32m 18\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21m__init__\u001b[39m(\u001b[38;5;28mself\u001b[39m, detector\u001b[38;5;241m=\u001b[39m\u001b[38;5;28;01mNone\u001b[39;00m, recognizer\u001b[38;5;241m=\u001b[39m\u001b[38;5;28;01mNone\u001b[39;00m, scale\u001b[38;5;241m=\u001b[39m\u001b[38;5;241m2\u001b[39m, max_size\u001b[38;5;241m=\u001b[39m\u001b[38;5;241m2048\u001b[39m):\n\u001b[0;32m 19\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m detector \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[1;32m---> 20\u001b[0m detector \u001b[38;5;241m=\u001b[39m \u001b[43mdetection\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mDetector\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 21\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m recognizer \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[0;32m 22\u001b[0m recognizer \u001b[38;5;241m=\u001b[39m recognition\u001b[38;5;241m.\u001b[39mRecognizer()\n",
|
83 |
+
"File \u001b[1;32mc:\\Users\\Ayoo\\anaconda3\\envs\\mlenv\\Lib\\site-packages\\keras_ocr\\detection.py:686\u001b[0m, in \u001b[0;36mDetector.__init__\u001b[1;34m(self, weights, load_from_torch, optimizer, backbone_name)\u001b[0m\n\u001b[0;32m 682\u001b[0m \u001b[38;5;28;01massert\u001b[39;00m (\n\u001b[0;32m 683\u001b[0m pretrained_key \u001b[38;5;129;01min\u001b[39;00m PRETRAINED_WEIGHTS\n\u001b[0;32m 684\u001b[0m ), \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mSelected weights configuration not found.\u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[0;32m 685\u001b[0m weights_config \u001b[38;5;241m=\u001b[39m PRETRAINED_WEIGHTS[pretrained_key]\n\u001b[1;32m--> 686\u001b[0m weights_path \u001b[38;5;241m=\u001b[39m \u001b[43mtools\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mdownload_and_verify\u001b[49m\u001b[43m(\u001b[49m\n\u001b[0;32m 687\u001b[0m \u001b[43m \u001b[49m\u001b[43murl\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mweights_config\u001b[49m\u001b[43m[\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43murl\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m]\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 688\u001b[0m \u001b[43m \u001b[49m\u001b[43mfilename\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mweights_config\u001b[49m\u001b[43m[\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mfilename\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m]\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 689\u001b[0m \u001b[43m \u001b[49m\u001b[43msha256\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mweights_config\u001b[49m\u001b[43m[\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43msha256\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m]\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 690\u001b[0m \u001b[43m \u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 691\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[0;32m 692\u001b[0m weights_path \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mNone\u001b[39;00m\n",
|
84 |
+
"File \u001b[1;32mc:\\Users\\Ayoo\\anaconda3\\envs\\mlenv\\Lib\\site-packages\\keras_ocr\\tools.py:527\u001b[0m, in \u001b[0;36mdownload_and_verify\u001b[1;34m(url, sha256, cache_dir, verbose, filename)\u001b[0m\n\u001b[0;32m 525\u001b[0m \u001b[38;5;28mprint\u001b[39m(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mDownloading \u001b[39m\u001b[38;5;124m\"\u001b[39m \u001b[38;5;241m+\u001b[39m filepath)\n\u001b[0;32m 526\u001b[0m urllib\u001b[38;5;241m.\u001b[39mrequest\u001b[38;5;241m.\u001b[39murlretrieve(url, filepath)\n\u001b[1;32m--> 527\u001b[0m \u001b[38;5;28;01massert\u001b[39;00m sha256 \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m \u001b[38;5;129;01mor\u001b[39;00m sha256 \u001b[38;5;241m==\u001b[39m \u001b[43msha256sum\u001b[49m\u001b[43m(\u001b[49m\n\u001b[0;32m 528\u001b[0m \u001b[43m \u001b[49m\u001b[43mfilepath\u001b[49m\n\u001b[0;32m 529\u001b[0m \u001b[43m\u001b[49m\u001b[43m)\u001b[49m, \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mError occurred verifying sha256.\u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[0;32m 530\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m filepath\n",
|
85 |
+
"File \u001b[1;32mc:\\Users\\Ayoo\\anaconda3\\envs\\mlenv\\Lib\\site-packages\\keras_ocr\\tools.py:491\u001b[0m, in \u001b[0;36msha256sum\u001b[1;34m(filename)\u001b[0m\n\u001b[0;32m 489\u001b[0m \u001b[38;5;28;01mwith\u001b[39;00m \u001b[38;5;28mopen\u001b[39m(filename, \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mrb\u001b[39m\u001b[38;5;124m\"\u001b[39m, buffering\u001b[38;5;241m=\u001b[39m\u001b[38;5;241m0\u001b[39m) \u001b[38;5;28;01mas\u001b[39;00m f:\n\u001b[0;32m 490\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m n \u001b[38;5;129;01min\u001b[39;00m \u001b[38;5;28miter\u001b[39m(\u001b[38;5;28;01mlambda\u001b[39;00m: f\u001b[38;5;241m.\u001b[39mreadinto(mv), \u001b[38;5;241m0\u001b[39m): \u001b[38;5;66;03m# type: ignore\u001b[39;00m\n\u001b[1;32m--> 491\u001b[0m h\u001b[38;5;241m.\u001b[39mupdate(mv[:n])\n\u001b[0;32m 492\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m h\u001b[38;5;241m.\u001b[39mhexdigest()\n",
|
86 |
+
"\u001b[1;31mKeyboardInterrupt\u001b[0m: "
|
87 |
+
]
|
88 |
+
}
|
89 |
+
],
|
90 |
+
"source": [
|
91 |
+
"import keras_ocr\n",
|
92 |
+
"pipeline=keras_ocr.pipeline.Pipeline()"
|
93 |
+
]
|
94 |
+
},
|
95 |
+
{
|
96 |
+
"cell_type": "code",
|
97 |
+
"execution_count": 4,
|
98 |
+
"metadata": {},
|
99 |
+
"outputs": [
|
100 |
+
{
|
101 |
+
"name": "stdout",
|
102 |
+
"output_type": "stream",
|
103 |
+
"text": [
|
104 |
+
"1/1 [==============================] - 34s 34s/step\n",
|
105 |
+
"7/7 [==============================] - 94s 13s/step\n"
|
106 |
+
]
|
107 |
+
},
|
108 |
+
{
|
109 |
+
"data": {
|
110 |
+
"text/plain": [
|
111 |
+
"[[('feleven',\n",
|
112 |
+
" array([[212.58102 , 34.90136 ],\n",
|
113 |
+
" [577.45886 , 34.901367],\n",
|
114 |
+
" [577.45886 , 114.22263 ],\n",
|
115 |
+
" [212.58102 , 114.22263 ]], dtype=float32)),\n",
|
116 |
+
" ('es',\n",
|
117 |
+
" array([[574.28613, 82.49414],\n",
|
118 |
+
" [593.32324, 82.49414],\n",
|
119 |
+
" [593.32324, 107.87695],\n",
|
120 |
+
" [574.28613, 107.87695]], dtype=float32)),\n",
|
121 |
+
" ('store',\n",
|
122 |
+
" array([[453.71777, 203.0625 ],\n",
|
123 |
+
" [567.9404 , 203.0625 ],\n",
|
124 |
+
" [567.9404 , 253.82812],\n",
|
125 |
+
" [453.71777, 253.82812]], dtype=float32)),\n",
|
126 |
+
" ('nahj',\n",
|
127 |
+
" array([[120.56836, 209.4082 ],\n",
|
128 |
+
" [187.19824, 209.4082 ],\n",
|
129 |
+
" [187.19824, 253.82812],\n",
|
130 |
+
" [120.56836, 253.82812]], dtype=float32)),\n",
|
131 |
+
" ('conveni',\n",
|
132 |
+
" array([[203.0625 , 209.4082 ],\n",
|
133 |
+
" [352.18652, 209.4082 ],\n",
|
134 |
+
" [352.18652, 253.82812],\n",
|
135 |
+
" [203.0625 , 253.82812]], dtype=float32)),\n",
|
136 |
+
" ('enco',\n",
|
137 |
+
" array([[352.18652, 209.4082 ],\n",
|
138 |
+
" [441.02637, 209.4082 ],\n",
|
139 |
+
" [441.02637, 253.82812],\n",
|
140 |
+
" [352.18652, 253.82812]], dtype=float32)),\n",
|
141 |
+
" ('qwned',\n",
|
142 |
+
" array([[ 34.901367, 260.17383 ],\n",
|
143 |
+
" [149.12402 , 260.17383 ],\n",
|
144 |
+
" [149.12402 , 304.59375 ],\n",
|
145 |
+
" [ 34.901367, 304.59375 ]], dtype=float32)),\n",
|
146 |
+
" ('operated',\n",
|
147 |
+
" array([[203.0625 , 260.17383],\n",
|
148 |
+
" [377.56934, 260.17383],\n",
|
149 |
+
" [377.56934, 307.7666 ],\n",
|
150 |
+
" [203.0625 , 307.7666 ]], dtype=float32)),\n",
|
151 |
+
" ('nancy',\n",
|
152 |
+
" array([[475.92773, 260.17383],\n",
|
153 |
+
" [586.97754, 260.17383],\n",
|
154 |
+
" [586.97754, 304.59375],\n",
|
155 |
+
" [475.92773, 304.59375]], dtype=float32)),\n",
|
156 |
+
" ('byl',\n",
|
157 |
+
" array([[393.4336 , 263.34668],\n",
|
158 |
+
" [456.89062, 263.34668],\n",
|
159 |
+
" [456.89062, 307.7666 ],\n",
|
160 |
+
" [393.4336 , 307.7666 ]], dtype=float32)),\n",
|
161 |
+
" ('a',\n",
|
162 |
+
" array([[602.8418 , 263.34668],\n",
|
163 |
+
" [634.5703 , 263.34668],\n",
|
164 |
+
" [634.5703 , 301.4209 ],\n",
|
165 |
+
" [602.8418 , 301.4209 ]], dtype=float32)),\n",
|
166 |
+
" ('cl',\n",
|
167 |
+
" array([[244.30957, 314.1123 ],\n",
|
168 |
+
" [288.7295 , 314.1123 ],\n",
|
169 |
+
" [288.7295 , 355.35938],\n",
|
170 |
+
" [244.30957, 355.35938]], dtype=float32)),\n",
|
171 |
+
" ('inacosa',\n",
|
172 |
+
" array([[291.90234, 314.1123 ],\n",
|
173 |
+
" [437.85352, 314.1123 ],\n",
|
174 |
+
" [437.85352, 355.35938],\n",
|
175 |
+
" [291.90234, 355.35938]], dtype=float32)),\n",
|
176 |
+
" ('tregtin',\n",
|
177 |
+
" array([[123.74121, 358.53223],\n",
|
178 |
+
" [276.0381 , 358.53223],\n",
|
179 |
+
" [276.0381 , 406.125 ],\n",
|
180 |
+
" [123.74121, 406.125 ]], dtype=float32)),\n",
|
181 |
+
" ('va',\n",
|
182 |
+
" array([[ 76.14844, 361.70508],\n",
|
183 |
+
" [123.74121, 361.70508],\n",
|
184 |
+
" [123.74121, 406.125 ],\n",
|
185 |
+
" [ 76.14844, 406.125 ]], dtype=float32)),\n",
|
186 |
+
" ('hssysigm',\n",
|
187 |
+
" array([[285.55664, 361.70508],\n",
|
188 |
+
" [485.4463 , 361.70508],\n",
|
189 |
+
" [485.4463 , 406.125 ],\n",
|
190 |
+
" [285.55664, 406.125 ]], dtype=float32)),\n",
|
191 |
+
" ('gbsr0o2',\n",
|
192 |
+
" array([[475.92773, 361.70508],\n",
|
193 |
+
" [631.39746, 361.70508],\n",
|
194 |
+
" [631.39746, 406.125 ],\n",
|
195 |
+
" [475.92773, 406.125 ]], dtype=float32)),\n",
|
196 |
+
" ('pobli',\n",
|
197 |
+
" array([[ 98.3584 , 412.4707 ],\n",
|
198 |
+
" [187.19824, 412.4707 ],\n",
|
199 |
+
" [187.19824, 460.06348],\n",
|
200 |
+
" [ 98.3584 , 460.06348]], dtype=float32)),\n",
|
201 |
+
" ('acii',\n",
|
202 |
+
" array([[180.85254, 415.64355],\n",
|
203 |
+
" [250.65527, 415.64355],\n",
|
204 |
+
" [250.65527, 460.06348],\n",
|
205 |
+
" [180.85254, 460.06348]], dtype=float32)),\n",
|
206 |
+
" ('leons',\n",
|
207 |
+
" array([[326.8037 , 415.64355],\n",
|
208 |
+
" [434.68066, 415.64355],\n",
|
209 |
+
" [434.68066, 460.06348],\n",
|
210 |
+
" [326.8037 , 460.06348]], dtype=float32)),\n",
|
211 |
+
" ('ilulos',\n",
|
212 |
+
" array([[456.89062, 415.64355],\n",
|
213 |
+
" [602.8418 , 415.64355],\n",
|
214 |
+
" [602.8418 , 460.06348],\n",
|
215 |
+
" [456.89062, 460.06348]], dtype=float32)),\n",
|
216 |
+
" ('ors',\n",
|
217 |
+
" array([[241.13672, 418.8164 ],\n",
|
218 |
+
" [304.59375, 418.8164 ],\n",
|
219 |
+
" [304.59375, 456.89062],\n",
|
220 |
+
" [241.13672, 456.89062]], dtype=float32)),\n",
|
221 |
+
" ('fit',\n",
|
222 |
+
" array([[225.27246, 466.40918],\n",
|
223 |
+
" [291.90234, 466.40918],\n",
|
224 |
+
" [291.90234, 510.8291 ],\n",
|
225 |
+
" [225.27246, 510.8291 ]], dtype=float32)),\n",
|
226 |
+
" ('ipp',\n",
|
227 |
+
" array([[314.1123 , 469.58203],\n",
|
228 |
+
" [380.7422 , 469.58203],\n",
|
229 |
+
" [380.7422 , 514.00195],\n",
|
230 |
+
" [314.1123 , 514.00195]], dtype=float32)),\n",
|
231 |
+
" ('ines',\n",
|
232 |
+
" array([[374.39648, 469.58203],\n",
|
233 |
+
" [463.23633, 469.58203],\n",
|
234 |
+
" [463.23633, 510.8291 ],\n",
|
235 |
+
" [374.39648, 510.8291 ]], dtype=float32)),\n",
|
236 |
+
" ('tel',\n",
|
237 |
+
" array([[225.27246, 517.1748 ],\n",
|
238 |
+
" [288.7295 , 517.1748 ],\n",
|
239 |
+
" [288.7295 , 561.5947 ],\n",
|
240 |
+
" [225.27246, 561.5947 ]], dtype=float32)),\n",
|
241 |
+
" ('null',\n",
|
242 |
+
" array([[371.22363, 517.1748 ],\n",
|
243 |
+
" [466.40918, 517.1748 ],\n",
|
244 |
+
" [466.40918, 561.5947 ],\n",
|
245 |
+
" [371.22363, 561.5947 ]], dtype=float32)),\n",
|
246 |
+
" ('h',\n",
|
247 |
+
" array([[307.7666 , 520.34766],\n",
|
248 |
+
" [339.49512, 520.34766],\n",
|
249 |
+
" [339.49512, 558.4219 ],\n",
|
250 |
+
" [307.7666 , 558.4219 ]], dtype=float32)),\n",
|
251 |
+
" ('osd1',\n",
|
252 |
+
" array([[ 98.3584 , 618.70605],\n",
|
253 |
+
" [206.23535, 618.70605],\n",
|
254 |
+
" [206.23535, 663.126 ],\n",
|
255 |
+
" [ 98.3584 , 663.126 ]], dtype=float32)),\n",
|
256 |
+
" ('fzozx',\n",
|
257 |
+
" array([[203.0625 , 618.70605],\n",
|
258 |
+
" [314.1123 , 618.70605],\n",
|
259 |
+
" [314.1123 , 663.126 ],\n",
|
260 |
+
" [203.0625 , 663.126 ]], dtype=float32)),\n",
|
261 |
+
" ('leoost',\n",
|
262 |
+
" array([[434.68066, 618.70605],\n",
|
263 |
+
" [609.1875 , 618.70605],\n",
|
264 |
+
" [609.1875 , 663.126 ],\n",
|
265 |
+
" [434.68066, 663.126 ]], dtype=float32)),\n",
|
266 |
+
" ('smony',\n",
|
267 |
+
" array([[314.1123 , 621.8789 ],\n",
|
268 |
+
" [415.64355, 621.8789 ],\n",
|
269 |
+
" [415.64355, 663.126 ],\n",
|
270 |
+
" [314.1123 , 663.126 ]], dtype=float32)),\n",
|
271 |
+
" ('rcpt',\n",
|
272 |
+
" array([[ 12.691406, 723.41016 ],\n",
|
273 |
+
" [101.53125 , 723.41016 ],\n",
|
274 |
+
" [101.53125 , 767.8301 ],\n",
|
275 |
+
" [ 12.691406, 767.8301 ]], dtype=float32)),\n",
|
276 |
+
" ('h2a81',\n",
|
277 |
+
" array([[117.39551, 723.41016],\n",
|
278 |
+
" [228.44531, 723.41016],\n",
|
279 |
+
" [228.44531, 767.8301 ],\n",
|
280 |
+
" [117.39551, 767.8301 ]], dtype=float32)),\n",
|
281 |
+
" ('3a7',\n",
|
282 |
+
" array([[218.92676, 723.41016],\n",
|
283 |
+
" [291.90234, 723.41016],\n",
|
284 |
+
" [291.90234, 767.8301 ],\n",
|
285 |
+
" [218.92676, 767.8301 ]], dtype=float32)),\n",
|
286 |
+
" ('rcft',\n",
|
287 |
+
" array([[475.92773, 723.41016],\n",
|
288 |
+
" [567.9404 , 723.41016],\n",
|
289 |
+
" [567.9404 , 767.8301 ],\n",
|
290 |
+
" [475.92773, 767.8301 ]], dtype=float32)),\n",
|
291 |
+
" ('cnt',\n",
|
292 |
+
" array([[580.63184, 723.41016],\n",
|
293 |
+
" [647.2617 , 723.41016],\n",
|
294 |
+
" [647.2617 , 764.6572 ],\n",
|
295 |
+
" [580.63184, 764.6572 ]], dtype=float32)),\n",
|
296 |
+
" ('ho',\n",
|
297 |
+
" array([[637.74316, 723.41016],\n",
|
298 |
+
" [694.8545 , 723.41016],\n",
|
299 |
+
" [694.8545 , 767.8301 ],\n",
|
300 |
+
" [637.74316, 767.8301 ]], dtype=float32)),\n",
|
301 |
+
" ('storehsise',\n",
|
302 |
+
" array([[ 12.691406, 774.1758 ],\n",
|
303 |
+
" [231.61816 , 774.1758 ],\n",
|
304 |
+
" [231.61816 , 818.5957 ],\n",
|
305 |
+
" [ 12.691406, 818.5957 ]], dtype=float32)),\n",
|
306 |
+
" ('snit',\n",
|
307 |
+
" array([[434.68066, 774.1758 ],\n",
|
308 |
+
" [504.4834 , 774.1758 ],\n",
|
309 |
+
" [504.4834 , 818.5957 ],\n",
|
310 |
+
" [434.68066, 818.5957 ]], dtype=float32)),\n",
|
311 |
+
" ('xtiakt',\n",
|
312 |
+
" array([[520.34766, 774.1758 ],\n",
|
313 |
+
" [650.4346 , 774.1758 ],\n",
|
314 |
+
" [650.4346 , 818.5957 ],\n",
|
315 |
+
" [520.34766, 818.5957 ]], dtype=float32)),\n",
|
316 |
+
" ('70',\n",
|
317 |
+
" array([[647.2617, 774.1758],\n",
|
318 |
+
" [694.8545, 774.1758],\n",
|
319 |
+
" [694.8545, 818.5957],\n",
|
320 |
+
" [647.2617, 818.5957]], dtype=float32)),\n",
|
321 |
+
" ('091',\n",
|
322 |
+
" array([[326.8037 , 821.76855],\n",
|
323 |
+
" [396.60645, 821.76855],\n",
|
324 |
+
" [396.60645, 869.3613 ],\n",
|
325 |
+
" [326.8037 , 869.3613 ]], dtype=float32)),\n",
|
326 |
+
" ('min',\n",
|
327 |
+
" array([[ 15.864258, 824.9414 ],\n",
|
328 |
+
" [ 85.66699 , 824.9414 ],\n",
|
329 |
+
" [ 85.66699 , 869.3613 ],\n",
|
330 |
+
" [ 15.864258, 869.3613 ]], dtype=float32)),\n",
|
331 |
+
" ('1811201',\n",
|
332 |
+
" array([[161.81543, 824.9414 ],\n",
|
333 |
+
" [310.93945, 824.9414 ],\n",
|
334 |
+
" [310.93945, 869.3613 ],\n",
|
335 |
+
" [161.81543, 869.3613 ]], dtype=float32)),\n",
|
336 |
+
" ('105s1',\n",
|
337 |
+
" array([[437.85352, 824.9414 ],\n",
|
338 |
+
" [520.34766, 824.9414 ],\n",
|
339 |
+
" [520.34766, 869.3613 ],\n",
|
340 |
+
" [437.85352, 869.3613 ]], dtype=float32)),\n",
|
341 |
+
" ('ha',\n",
|
342 |
+
" array([[ 98.3584 , 828.11426],\n",
|
343 |
+
" [139.60547, 828.11426],\n",
|
344 |
+
" [139.60547, 869.3613 ],\n",
|
345 |
+
" [ 98.3584 , 869.3613 ]], dtype=float32)),\n",
|
346 |
+
" ('41',\n",
|
347 |
+
" array([[393.4336 , 828.11426],\n",
|
348 |
+
" [441.02637, 828.11426],\n",
|
349 |
+
" [441.02637, 869.3613 ],\n",
|
350 |
+
" [393.4336 , 869.3613 ]], dtype=float32)),\n",
|
351 |
+
" ('staff',\n",
|
352 |
+
" array([[ 12.691406, 878.8799 ],\n",
|
353 |
+
" [126.91406 , 878.8799 ],\n",
|
354 |
+
" [126.91406 , 923.2998 ],\n",
|
355 |
+
" [ 12.691406, 923.2998 ]], dtype=float32)),\n",
|
356 |
+
" ('angel',\n",
|
357 |
+
" array([[142.77832, 878.8799 ],\n",
|
358 |
+
" [247.48242, 878.8799 ],\n",
|
359 |
+
" [247.48242, 923.2998 ],\n",
|
360 |
+
" [142.77832, 923.2998 ]], dtype=float32)),\n",
|
361 |
+
" ('duantle',\n",
|
362 |
+
" array([[329.97656, 878.8799 ],\n",
|
363 |
+
" [463.23633, 878.8799 ],\n",
|
364 |
+
" [463.23633, 923.2998 ],\n",
|
365 |
+
" [329.97656, 923.2998 ]], dtype=float32)),\n",
|
366 |
+
" ('i',\n",
|
367 |
+
" array([[250.65527, 885.2256 ],\n",
|
368 |
+
" [266.51953, 885.2256 ],\n",
|
369 |
+
" [266.51953, 916.9541 ],\n",
|
370 |
+
" [250.65527, 916.9541 ]], dtype=float32)),\n",
|
371 |
+
" ('ca',\n",
|
372 |
+
" array([[263.34668, 885.2256 ],\n",
|
373 |
+
" [314.1123 , 885.2256 ],\n",
|
374 |
+
" [314.1123 , 923.2998 ],\n",
|
375 |
+
" [263.34668, 923.2998 ]], dtype=float32)),\n",
|
376 |
+
" ('fkoreanbun',\n",
|
377 |
+
" array([[ 15.864258, 980.41113 ],\n",
|
378 |
+
" [ 250.65527 , 980.41113 ],\n",
|
379 |
+
" [ 250.65527 , 1024.831 ],\n",
|
380 |
+
" [ 15.864258, 1024.831 ]], dtype=float32)),\n",
|
381 |
+
" ('s5',\n",
|
382 |
+
" array([[ 561.5947 , 980.41113],\n",
|
383 |
+
" [ 612.36035, 980.41113],\n",
|
384 |
+
" [ 612.36035, 1021.6582 ],\n",
|
385 |
+
" [ 561.5947 , 1021.6582 ]], dtype=float32)),\n",
|
386 |
+
" ('oflj',\n",
|
387 |
+
" array([[ 621.8789 , 980.41113],\n",
|
388 |
+
" [ 694.8545 , 980.41113],\n",
|
389 |
+
" [ 694.8545 , 1021.6582 ],\n",
|
390 |
+
" [ 621.8789 , 1021.6582 ]], dtype=float32)),\n",
|
391 |
+
" ('nis',\n",
|
392 |
+
" array([[ 15.864258, 1031.1768 ],\n",
|
393 |
+
" [ 60.28418 , 1031.1768 ],\n",
|
394 |
+
" [ 60.28418 , 1075.5967 ],\n",
|
395 |
+
" [ 15.864258, 1075.5967 ]], dtype=float32)),\n",
|
396 |
+
" ('inyasabeetig',\n",
|
397 |
+
" array([[ 104.7041 , 1031.1768 ],\n",
|
398 |
+
" [ 377.56934, 1031.1768 ],\n",
|
399 |
+
" [ 377.56934, 1078.7695 ],\n",
|
400 |
+
" [ 104.7041 , 1078.7695 ]], dtype=float32)),\n",
|
401 |
+
" ('40',\n",
|
402 |
+
" array([[ 561.5947, 1031.1768],\n",
|
403 |
+
" [ 615.5332, 1031.1768],\n",
|
404 |
+
" [ 615.5332, 1072.4238],\n",
|
405 |
+
" [ 561.5947, 1072.4238]], dtype=float32)),\n",
|
406 |
+
" ('oov',\n",
|
407 |
+
" array([[ 621.8789, 1031.1768],\n",
|
408 |
+
" [ 694.8545, 1031.1768],\n",
|
409 |
+
" [ 694.8545, 1072.4238],\n",
|
410 |
+
" [ 621.8789, 1072.4238]], dtype=float32)),\n",
|
411 |
+
" ('ss',\n",
|
412 |
+
" array([[ 53.938477, 1034.3496 ],\n",
|
413 |
+
" [ 104.7041 , 1034.3496 ],\n",
|
414 |
+
" [ 104.7041 , 1075.5967 ],\n",
|
415 |
+
" [ 53.938477, 1075.5967 ]], dtype=float32)),\n",
|
416 |
+
" ('behotogcremychees',\n",
|
417 |
+
" array([[ 12.691406, 1081.9424 ],\n",
|
418 |
+
" [ 399.7793 , 1081.9424 ],\n",
|
419 |
+
" [ 399.7793 , 1129.5352 ],\n",
|
420 |
+
" [ 12.691406, 1129.5352 ]], dtype=float32)),\n",
|
421 |
+
" ('19',\n",
|
422 |
+
" array([[ 139.60547, 1132.708 ],\n",
|
423 |
+
" [ 190.3711 , 1132.708 ],\n",
|
424 |
+
" [ 190.3711 , 1177.1279 ],\n",
|
425 |
+
" [ 139.60547, 1177.1279 ]], dtype=float32)),\n",
|
426 |
+
" ('do',\n",
|
427 |
+
" array([[ 203.0625 , 1135.8809 ],\n",
|
428 |
+
" [ 250.65527, 1135.8809 ],\n",
|
429 |
+
" [ 250.65527, 1177.1279 ],\n",
|
430 |
+
" [ 203.0625 , 1177.1279 ]], dtype=float32)),\n",
|
431 |
+
" ('a',\n",
|
432 |
+
" array([[ 266.51953, 1139.0537 ],\n",
|
433 |
+
" [ 288.7295 , 1139.0537 ],\n",
|
434 |
+
" [ 288.7295 , 1173.9551 ],\n",
|
435 |
+
" [ 266.51953, 1173.9551 ]], dtype=float32)),\n",
|
436 |
+
" ('b',\n",
|
437 |
+
" array([[ 368.05078, 1135.8809 ],\n",
|
438 |
+
" [ 396.60645, 1135.8809 ],\n",
|
439 |
+
" [ 396.60645, 1173.9551 ],\n",
|
440 |
+
" [ 368.05078, 1173.9551 ]], dtype=float32)),\n",
|
441 |
+
" ('1544',\n",
|
442 |
+
" array([[ 539.38477, 1135.8809 ],\n",
|
443 |
+
" [ 615.5332 , 1135.8809 ],\n",
|
444 |
+
" [ 615.5332 , 1177.1279 ],\n",
|
445 |
+
" [ 539.38477, 1177.1279 ]], dtype=float32)),\n",
|
446 |
+
" ('oou',\n",
|
447 |
+
" array([[ 621.8789, 1135.8809],\n",
|
448 |
+
" [ 694.8545, 1135.8809],\n",
|
449 |
+
" [ 694.8545, 1177.1279],\n",
|
450 |
+
" [ 621.8789, 1177.1279]], dtype=float32)),\n",
|
451 |
+
" ('choeog',\n",
|
452 |
+
" array([[ 266.51953, 1183.4736 ],\n",
|
453 |
+
" [ 399.7793 , 1183.4736 ],\n",
|
454 |
+
" [ 399.7793 , 1231.0664 ],\n",
|
455 |
+
" [ 266.51953, 1231.0664 ]], dtype=float32)),\n",
|
456 |
+
" ('chocvronz',\n",
|
457 |
+
" array([[ 12.691406, 1186.6465 ],\n",
|
458 |
+
" [ 209.4082 , 1186.6465 ],\n",
|
459 |
+
" [ 209.4082 , 1231.0664 ],\n",
|
460 |
+
" [ 12.691406, 1231.0664 ]], dtype=float32)),\n",
|
461 |
+
" ('in1',\n",
|
462 |
+
" array([[ 206.23535, 1186.6465 ],\n",
|
463 |
+
" [ 269.69238, 1186.6465 ],\n",
|
464 |
+
" [ 269.69238, 1227.8936 ],\n",
|
465 |
+
" [ 206.23535, 1227.8936 ]], dtype=float32)),\n",
|
466 |
+
" ('1s',\n",
|
467 |
+
" array([[ 142.77832, 1237.4121 ],\n",
|
468 |
+
" [ 206.23535, 1237.4121 ],\n",
|
469 |
+
" [ 206.23535, 1281.832 ],\n",
|
470 |
+
" [ 142.77832, 1281.832 ]], dtype=float32)),\n",
|
471 |
+
" ('0',\n",
|
472 |
+
" array([[ 203.0625 , 1237.4121 ],\n",
|
473 |
+
" [ 250.65527, 1237.4121 ],\n",
|
474 |
+
" [ 250.65527, 1281.832 ],\n",
|
475 |
+
" [ 203.0625 , 1281.832 ]], dtype=float32)),\n",
|
476 |
+
" ('x',\n",
|
477 |
+
" array([[ 263.34668, 1237.4121 ],\n",
|
478 |
+
" [ 291.90234, 1237.4121 ],\n",
|
479 |
+
" [ 291.90234, 1275.4863 ],\n",
|
480 |
+
" [ 263.34668, 1275.4863 ]], dtype=float32)),\n",
|
481 |
+
" ('l',\n",
|
482 |
+
" array([[ 371.22363, 1237.4121 ],\n",
|
483 |
+
" [ 396.60645, 1237.4121 ],\n",
|
484 |
+
" [ 396.60645, 1275.4863 ],\n",
|
485 |
+
" [ 371.22363, 1275.4863 ]], dtype=float32)),\n",
|
486 |
+
" ('50',\n",
|
487 |
+
" array([[ 561.5947, 1237.4121],\n",
|
488 |
+
" [ 615.5332, 1237.4121],\n",
|
489 |
+
" [ 615.5332, 1278.6592],\n",
|
490 |
+
" [ 561.5947, 1278.6592]], dtype=float32)),\n",
|
491 |
+
" ('doq',\n",
|
492 |
+
" array([[ 621.8789, 1237.4121],\n",
|
493 |
+
" [ 694.8545, 1237.4121],\n",
|
494 |
+
" [ 694.8545, 1278.6592],\n",
|
495 |
+
" [ 621.8789, 1278.6592]], dtype=float32)),\n",
|
496 |
+
" ('total',\n",
|
497 |
+
" array([[ 15.864258, 1338.9434 ],\n",
|
498 |
+
" [ 120.56836 , 1338.9434 ],\n",
|
499 |
+
" [ 120.56836 , 1386.5361 ],\n",
|
500 |
+
" [ 15.864258, 1386.5361 ]], dtype=float32)),\n",
|
501 |
+
" ('10',\n",
|
502 |
+
" array([[ 145.95117, 1338.9434 ],\n",
|
503 |
+
" [ 225.27246, 1338.9434 ],\n",
|
504 |
+
" [ 225.27246, 1383.3633 ],\n",
|
505 |
+
" [ 145.95117, 1383.3633 ]], dtype=float32)),\n",
|
506 |
+
" ('3599',\n",
|
507 |
+
" array([[ 558.4219 , 1338.9434 ],\n",
|
508 |
+
" [ 637.74316, 1338.9434 ],\n",
|
509 |
+
" [ 637.74316, 1383.3633 ],\n",
|
510 |
+
" [ 558.4219 , 1383.3633 ]], dtype=float32)),\n",
|
511 |
+
" ('oq',\n",
|
512 |
+
" array([[ 640.916 , 1342.1162],\n",
|
513 |
+
" [ 694.8545, 1342.1162],\n",
|
514 |
+
" [ 694.8545, 1383.3633],\n",
|
515 |
+
" [ 640.916 , 1383.3633]], dtype=float32)),\n",
|
516 |
+
" ('cash',\n",
|
517 |
+
" array([[ 53.938477, 1389.709 ],\n",
|
518 |
+
" [ 149.12402 , 1389.709 ],\n",
|
519 |
+
" [ 149.12402 , 1434.1289 ],\n",
|
520 |
+
" [ 53.938477, 1434.1289 ]], dtype=float32)),\n",
|
521 |
+
" ('dool',\n",
|
522 |
+
" array([[ 558.4219, 1389.709 ],\n",
|
523 |
+
" [ 647.2617, 1389.709 ],\n",
|
524 |
+
" [ 647.2617, 1434.1289],\n",
|
525 |
+
" [ 558.4219, 1434.1289]], dtype=float32)),\n",
|
526 |
+
" ('o0',\n",
|
527 |
+
" array([[ 640.916 , 1389.709 ],\n",
|
528 |
+
" [ 691.68164, 1389.709 ],\n",
|
529 |
+
" [ 691.68164, 1434.1289 ],\n",
|
530 |
+
" [ 640.916 , 1434.1289 ]], dtype=float32)),\n",
|
531 |
+
" ('change',\n",
|
532 |
+
" array([[ 53.938477, 1440.4746 ],\n",
|
533 |
+
" [ 187.19824 , 1440.4746 ],\n",
|
534 |
+
" [ 187.19824 , 1484.8945 ],\n",
|
535 |
+
" [ 53.938477, 1484.8945 ]], dtype=float32)),\n",
|
536 |
+
" ('841',\n",
|
537 |
+
" array([[ 558.4219, 1440.4746],\n",
|
538 |
+
" [ 628.2246, 1440.4746],\n",
|
539 |
+
" [ 628.2246, 1484.8945],\n",
|
540 |
+
" [ 558.4219, 1484.8945]], dtype=float32)),\n",
|
541 |
+
" ('sdo',\n",
|
542 |
+
" array([[ 625.05176, 1440.4746 ],\n",
|
543 |
+
" [ 694.8545 , 1440.4746 ],\n",
|
544 |
+
" [ 694.8545 , 1484.8945 ],\n",
|
545 |
+
" [ 625.05176, 1484.8945 ]], dtype=float32)),\n",
|
546 |
+
" ('vatable',\n",
|
547 |
+
" array([[ 53.938477, 1545.1787 ],\n",
|
548 |
+
" [ 209.4082 , 1545.1787 ],\n",
|
549 |
+
" [ 209.4082 , 1589.5986 ],\n",
|
550 |
+
" [ 53.938477, 1589.5986 ]], dtype=float32)),\n",
|
551 |
+
" ('szos',\n",
|
552 |
+
" array([[ 558.4219 , 1545.1787 ],\n",
|
553 |
+
" [ 644.08887, 1545.1787 ],\n",
|
554 |
+
" [ 644.08887, 1589.5986 ],\n",
|
555 |
+
" [ 558.4219 , 1589.5986 ]], dtype=float32)),\n",
|
556 |
+
" ('54',\n",
|
557 |
+
" array([[ 640.916 , 1545.1787 ],\n",
|
558 |
+
" [ 691.68164, 1545.1787 ],\n",
|
559 |
+
" [ 691.68164, 1589.5986 ],\n",
|
560 |
+
" [ 640.916 , 1589.5986 ]], dtype=float32)),\n",
|
561 |
+
" ('vat',\n",
|
562 |
+
" array([[ 53.938477, 1595.9443 ],\n",
|
563 |
+
" [ 145.95117 , 1595.9443 ],\n",
|
564 |
+
" [ 145.95117 , 1646.71 ],\n",
|
565 |
+
" [ 53.938477, 1646.71 ]], dtype=float32)),\n",
|
566 |
+
" ('8b',\n",
|
567 |
+
" array([[ 580.63184, 1595.9443 ],\n",
|
568 |
+
" [ 644.08887, 1595.9443 ],\n",
|
569 |
+
" [ 644.08887, 1640.3643 ],\n",
|
570 |
+
" [ 580.63184, 1640.3643 ]], dtype=float32)),\n",
|
571 |
+
" ('tax',\n",
|
572 |
+
" array([[ 139.60547, 1599.1172 ],\n",
|
573 |
+
" [ 209.4082 , 1599.1172 ],\n",
|
574 |
+
" [ 209.4082 , 1640.3643 ],\n",
|
575 |
+
" [ 139.60547, 1640.3643 ]], dtype=float32)),\n",
|
576 |
+
" ('4g',\n",
|
577 |
+
" array([[ 644.08887, 1599.1172 ],\n",
|
578 |
+
" [ 691.68164, 1599.1172 ],\n",
|
579 |
+
" [ 691.68164, 1640.3643 ],\n",
|
580 |
+
" [ 644.08887, 1640.3643 ]], dtype=float32)),\n",
|
581 |
+
" ('zerd',\n",
|
582 |
+
" array([[ 53.938477, 1646.71 ],\n",
|
583 |
+
" [ 149.12402 , 1646.71 ],\n",
|
584 |
+
" [ 149.12402 , 1694.3027 ],\n",
|
585 |
+
" [ 53.938477, 1694.3027 ]], dtype=float32)),\n",
|
586 |
+
" ('ra',\n",
|
587 |
+
" array([[ 158.64258, 1649.8828 ],\n",
|
588 |
+
" [ 209.4082 , 1649.8828 ],\n",
|
589 |
+
" [ 209.4082 , 1694.3027 ],\n",
|
590 |
+
" [ 158.64258, 1694.3027 ]], dtype=float32)),\n",
|
591 |
+
" ('ted',\n",
|
592 |
+
" array([[ 203.0625 , 1649.8828 ],\n",
|
593 |
+
" [ 272.86523, 1649.8828 ],\n",
|
594 |
+
" [ 272.86523, 1691.1299 ],\n",
|
595 |
+
" [ 203.0625 , 1691.1299 ]], dtype=float32)),\n",
|
596 |
+
" ('0',\n",
|
597 |
+
" array([[ 599.66895, 1649.8828 ],\n",
|
598 |
+
" [ 628.2246 , 1649.8828 ],\n",
|
599 |
+
" [ 628.2246 , 1687.957 ],\n",
|
600 |
+
" [ 599.66895, 1687.957 ]], dtype=float32)),\n",
|
601 |
+
" ('00',\n",
|
602 |
+
" array([[ 640.916 , 1649.8828],\n",
|
603 |
+
" [ 694.8545, 1649.8828],\n",
|
604 |
+
" [ 694.8545, 1691.1299],\n",
|
605 |
+
" [ 640.916 , 1691.1299]], dtype=float32)),\n",
|
606 |
+
" ('vat',\n",
|
607 |
+
" array([[ 53.938477, 1700.6484 ],\n",
|
608 |
+
" [ 123.74121 , 1700.6484 ],\n",
|
609 |
+
" [ 123.74121 , 1745.0684 ],\n",
|
610 |
+
" [ 53.938477, 1745.0684 ]], dtype=float32)),\n",
|
611 |
+
" ('mexept',\n",
|
612 |
+
" array([[ 117.39551, 1700.6484 ],\n",
|
613 |
+
" [ 257.00098, 1700.6484 ],\n",
|
614 |
+
" [ 257.00098, 1748.2412 ],\n",
|
615 |
+
" [ 117.39551, 1748.2412 ]], dtype=float32)),\n",
|
616 |
+
" ('ted',\n",
|
617 |
+
" array([[ 247.48242, 1700.6484 ],\n",
|
618 |
+
" [ 314.1123 , 1700.6484 ],\n",
|
619 |
+
" [ 314.1123 , 1745.0684 ],\n",
|
620 |
+
" [ 247.48242, 1745.0684 ]], dtype=float32)),\n",
|
621 |
+
" ('0',\n",
|
622 |
+
" array([[ 602.8418, 1703.8213],\n",
|
623 |
+
" [ 628.2246, 1703.8213],\n",
|
624 |
+
" [ 628.2246, 1738.7227],\n",
|
625 |
+
" [ 602.8418, 1738.7227]], dtype=float32)),\n",
|
626 |
+
" ('od',\n",
|
627 |
+
" array([[ 640.916 , 1703.8213 ],\n",
|
628 |
+
" [ 691.68164, 1703.8213 ],\n",
|
629 |
+
" [ 691.68164, 1741.8955 ],\n",
|
630 |
+
" [ 640.916 , 1741.8955 ]], dtype=float32)),\n",
|
631 |
+
" ('7616664',\n",
|
632 |
+
" array([[ 329.97656, 1799.0068 ],\n",
|
633 |
+
" [ 482.27344, 1799.0068 ],\n",
|
634 |
+
" [ 482.27344, 1846.5996 ],\n",
|
635 |
+
" [ 329.97656, 1846.5996 ]], dtype=float32)),\n",
|
636 |
+
" ('sol',\n",
|
637 |
+
" array([[ 12.691406, 1802.1797 ],\n",
|
638 |
+
" [ 79.32129 , 1802.1797 ],\n",
|
639 |
+
" [ 79.32129 , 1846.5996 ],\n",
|
640 |
+
" [ 12.691406, 1846.5996 ]], dtype=float32)),\n",
|
641 |
+
" ('d',\n",
|
642 |
+
" array([[ 79.32129, 1805.3525 ],\n",
|
643 |
+
" [ 101.53125, 1805.3525 ],\n",
|
644 |
+
" [ 101.53125, 1843.4268 ],\n",
|
645 |
+
" [ 79.32129, 1843.4268 ]], dtype=float32)),\n",
|
646 |
+
" ('tos',\n",
|
647 |
+
" array([[ 120.56836, 1802.1797 ],\n",
|
648 |
+
" [ 184.02539, 1802.1797 ],\n",
|
649 |
+
" [ 184.02539, 1846.5996 ],\n",
|
650 |
+
" [ 120.56836, 1846.5996 ]], dtype=float32)),\n",
|
651 |
+
" ('hobos',\n",
|
652 |
+
" array([[ 203.0625, 1802.1797],\n",
|
653 |
+
" [ 333.1494, 1802.1797],\n",
|
654 |
+
" [ 333.1494, 1846.5996],\n",
|
655 |
+
" [ 203.0625, 1846.5996]], dtype=float32)),\n",
|
656 |
+
" ('name',\n",
|
657 |
+
" array([[ 12.691406, 1852.9453 ],\n",
|
658 |
+
" [ 104.7041 , 1852.9453 ],\n",
|
659 |
+
" [ 104.7041 , 1897.3652 ],\n",
|
660 |
+
" [ 12.691406, 1897.3652 ]], dtype=float32)),\n",
|
661 |
+
" ('eeten',\n",
|
662 |
+
" array([[ 126.91406, 1887.8467 ],\n",
|
663 |
+
" [ 199.88965, 1887.8467 ],\n",
|
664 |
+
" [ 199.88965, 1897.3652 ],\n",
|
665 |
+
" [ 126.91406, 1897.3652 ]], dtype=float32)),\n",
|
666 |
+
" ('addr',\n",
|
667 |
+
" array([[ 12.691406, 1906.8838 ],\n",
|
668 |
+
" [ 104.7041 , 1906.8838 ],\n",
|
669 |
+
" [ 104.7041 , 1948.1309 ],\n",
|
670 |
+
" [ 12.691406, 1948.1309 ]], dtype=float32)),\n",
|
671 |
+
" ('ess',\n",
|
672 |
+
" array([[ 98.3584 , 1910.0566 ],\n",
|
673 |
+
" [ 168.16113, 1910.0566 ],\n",
|
674 |
+
" [ 168.16113, 1951.3037 ],\n",
|
675 |
+
" [ 98.3584 , 1951.3037 ]], dtype=float32)),\n",
|
676 |
+
" ('tins',\n",
|
677 |
+
" array([[ 12.691406, 1954.4766 ],\n",
|
678 |
+
" [ 98.3584 , 1954.4766 ],\n",
|
679 |
+
" [ 98.3584 , 1998.8965 ],\n",
|
680 |
+
" [ 12.691406, 1998.8965 ]], dtype=float32)),\n",
|
681 |
+
" ('fpti',\n",
|
682 |
+
" array([[ 13.045723, 2057.3926 ],\n",
|
683 |
+
" [ 81.36672 , 2062.2727 ],\n",
|
684 |
+
" [ 78.322716, 2104.889 ],\n",
|
685 |
+
" [ 10.001719, 2100.0088 ]], dtype=float32)),\n",
|
686 |
+
" ('ippl',\n",
|
687 |
+
" array([[ 101.53125, 2059.1807 ],\n",
|
688 |
+
" [ 171.33398, 2059.1807 ],\n",
|
689 |
+
" [ 171.33398, 2106.7734 ],\n",
|
690 |
+
" [ 101.53125, 2106.7734 ]], dtype=float32)),\n",
|
691 |
+
" ('seven',\n",
|
692 |
+
" array([[ 241.13672, 2059.1807 ],\n",
|
693 |
+
" [ 355.35938, 2059.1807 ],\n",
|
694 |
+
" [ 355.35938, 2103.6006 ],\n",
|
695 |
+
" [ 241.13672, 2103.6006 ]], dtype=float32)),\n",
|
696 |
+
" ('corpor',\n",
|
697 |
+
" array([[ 371.50757, 2057.8103 ],\n",
|
698 |
+
" [ 499.50806, 2065.8103 ],\n",
|
699 |
+
" [ 496.71796, 2110.4524 ],\n",
|
700 |
+
" [ 368.7175 , 2102.4526 ]], dtype=float32)),\n",
|
701 |
+
" ('s',\n",
|
702 |
+
" array([[ 164.98828, 2065.5264 ],\n",
|
703 |
+
" [ 180.85254, 2065.5264 ],\n",
|
704 |
+
" [ 180.85254, 2100.4277 ],\n",
|
705 |
+
" [ 164.98828, 2100.4277 ]], dtype=float32)),\n",
|
706 |
+
" ('ne',\n",
|
707 |
+
" array([[ 177.67969, 2062.3535 ],\n",
|
708 |
+
" [ 228.44531, 2062.3535 ],\n",
|
709 |
+
" [ 228.44531, 2103.6006 ],\n",
|
710 |
+
" [ 177.67969, 2103.6006 ]], dtype=float32)),\n",
|
711 |
+
" ('at',\n",
|
712 |
+
" array([[ 494.96484, 2062.3535 ],\n",
|
713 |
+
" [ 542.5576 , 2062.3535 ],\n",
|
714 |
+
" [ 542.5576 , 2103.6006 ],\n",
|
715 |
+
" [ 494.96484, 2103.6006 ]], dtype=float32)),\n",
|
716 |
+
" ('on',\n",
|
717 |
+
" array([[ 558.4219, 2065.5264],\n",
|
718 |
+
" [ 609.1875, 2065.5264],\n",
|
719 |
+
" [ 609.1875, 2103.6006],\n",
|
720 |
+
" [ 558.4219, 2103.6006]], dtype=float32)),\n",
|
721 |
+
" ('jth',\n",
|
722 |
+
" array([[ 12.691406, 2109.9463 ],\n",
|
723 |
+
" [ 82.49414 , 2109.9463 ],\n",
|
724 |
+
" [ 82.49414 , 2154.3662 ],\n",
|
725 |
+
" [ 12.691406, 2154.3662 ]], dtype=float32)),\n",
|
726 |
+
" ('the',\n",
|
727 |
+
" array([[ 225.27246, 2109.9463 ],\n",
|
728 |
+
" [ 291.90234, 2109.9463 ],\n",
|
729 |
+
" [ 291.90234, 2154.3662 ],\n",
|
730 |
+
" [ 225.27246, 2154.3662 ]], dtype=float32)),\n",
|
731 |
+
" ('co',\n",
|
732 |
+
" array([[ 304.59375, 2109.9463 ],\n",
|
733 |
+
" [ 355.35938, 2109.9463 ],\n",
|
734 |
+
" [ 355.35938, 2154.3662 ],\n",
|
735 |
+
" [ 304.59375, 2154.3662 ]], dtype=float32)),\n",
|
736 |
+
" ('tower',\n",
|
737 |
+
" array([[ 498.1377 , 2109.9463 ],\n",
|
738 |
+
" [ 606.01465, 2109.9463 ],\n",
|
739 |
+
" [ 606.01465, 2154.3662 ],\n",
|
740 |
+
" [ 498.1377 , 2154.3662 ]], dtype=float32)),\n",
|
741 |
+
" ('f',\n",
|
742 |
+
" array([[ 95.18555, 2113.1191 ],\n",
|
743 |
+
" [ 120.56836, 2113.1191 ],\n",
|
744 |
+
" [ 120.56836, 2151.1934 ],\n",
|
745 |
+
" [ 95.18555, 2151.1934 ]], dtype=float32)),\n",
|
746 |
+
" ('t',\n",
|
747 |
+
" array([[ 352.18652, 2116.292 ],\n",
|
748 |
+
" [ 368.05078, 2116.292 ],\n",
|
749 |
+
" [ 368.05078, 2151.1934 ],\n",
|
750 |
+
" [ 352.18652, 2151.1934 ]], dtype=float32)),\n",
|
751 |
+
" ('iqor',\n",
|
752 |
+
" array([[ 120.56836, 2116.292 ],\n",
|
753 |
+
" [ 206.23535, 2116.292 ],\n",
|
754 |
+
" [ 206.23535, 2154.3662 ],\n",
|
755 |
+
" [ 120.56836, 2154.3662 ]], dtype=float32)),\n",
|
756 |
+
" ('umb',\n",
|
757 |
+
" array([[ 368.05078, 2116.292 ],\n",
|
758 |
+
" [ 441.02637, 2116.292 ],\n",
|
759 |
+
" [ 441.02637, 2154.3662 ],\n",
|
760 |
+
" [ 368.05078, 2154.3662 ]], dtype=float32)),\n",
|
761 |
+
" ('id',\n",
|
762 |
+
" array([[ 434.68066, 2116.292 ],\n",
|
763 |
+
" [ 479.1006 , 2116.292 ],\n",
|
764 |
+
" [ 479.1006 , 2154.3662 ],\n",
|
765 |
+
" [ 434.68066, 2154.3662 ]], dtype=float32)),\n",
|
766 |
+
" ('avenues',\n",
|
767 |
+
" array([[ 203.0625 , 2160.712 ],\n",
|
768 |
+
" [ 349.01367, 2160.712 ],\n",
|
769 |
+
" [ 349.01367, 2208.3047 ],\n",
|
770 |
+
" [ 203.0625 , 2208.3047 ]], dtype=float32)),\n",
|
771 |
+
" ('ort',\n",
|
772 |
+
" array([[ 31.728516, 2163.8848 ],\n",
|
773 |
+
" [ 101.53125 , 2163.8848 ],\n",
|
774 |
+
" [ 101.53125 , 2205.1318 ],\n",
|
775 |
+
" [ 31.728516, 2205.1318 ]], dtype=float32)),\n",
|
776 |
+
" ('i',\n",
|
777 |
+
" array([[ 101.53125, 2167.0576 ],\n",
|
778 |
+
" [ 114.22266, 2167.0576 ],\n",
|
779 |
+
" [ 114.22266, 2198.7861 ],\n",
|
780 |
+
" [ 101.53125, 2198.7861 ]], dtype=float32)),\n",
|
781 |
+
" ('manda',\n",
|
782 |
+
" array([[ 368.05078, 2163.8848 ],\n",
|
783 |
+
" [ 479.1006 , 2163.8848 ],\n",
|
784 |
+
" [ 479.1006 , 2205.1318 ],\n",
|
785 |
+
" [ 368.05078, 2205.1318 ]], dtype=float32)),\n",
|
786 |
+
" ('gas',\n",
|
787 |
+
" array([[ 117.39551, 2167.0576 ],\n",
|
788 |
+
" [ 187.19824, 2167.0576 ],\n",
|
789 |
+
" [ 187.19824, 2211.4775 ],\n",
|
790 |
+
" [ 117.39551, 2211.4775 ]], dtype=float32)),\n",
|
791 |
+
" ('l',\n",
|
792 |
+
" array([[ 479.1006 , 2170.2305 ],\n",
|
793 |
+
" [ 488.61914, 2170.2305 ],\n",
|
794 |
+
" [ 488.61914, 2195.6133 ],\n",
|
795 |
+
" [ 479.1006 , 2195.6133 ]], dtype=float32)),\n",
|
796 |
+
" ('lyonig',\n",
|
797 |
+
" array([[ 494.96484, 2170.2305 ],\n",
|
798 |
+
" [ 606.01465, 2170.2305 ],\n",
|
799 |
+
" [ 606.01465, 2211.4775 ],\n",
|
800 |
+
" [ 494.96484, 2211.4775 ]], dtype=float32)),\n",
|
801 |
+
" ('ci',\n",
|
802 |
+
" array([[ 31.728516, 2214.6504 ],\n",
|
803 |
+
" [ 79.32129 , 2214.6504 ],\n",
|
804 |
+
" [ 79.32129 , 2259.0703 ],\n",
|
805 |
+
" [ 31.728516, 2259.0703 ]], dtype=float32)),\n",
|
806 |
+
" ('ty',\n",
|
807 |
+
" array([[ 76.14844, 2217.8232 ],\n",
|
808 |
+
" [ 123.74121, 2217.8232 ],\n",
|
809 |
+
" [ 123.74121, 2259.0703 ],\n",
|
810 |
+
" [ 76.14844, 2259.0703 ]], dtype=float32)),\n",
|
811 |
+
" ('sgrooo',\n",
|
812 |
+
" array([[ 304.59375, 2262.2432 ],\n",
|
813 |
+
" [ 441.02637, 2262.2432 ],\n",
|
814 |
+
" [ 441.02637, 2309.836 ],\n",
|
815 |
+
" [ 304.59375, 2309.836 ]], dtype=float32)),\n",
|
816 |
+
" ('tins',\n",
|
817 |
+
" array([[ 15.864258, 2265.416 ],\n",
|
818 |
+
" [ 98.3584 , 2265.416 ],\n",
|
819 |
+
" [ 98.3584 , 2309.836 ],\n",
|
820 |
+
" [ 15.864258, 2309.836 ]], dtype=float32)),\n",
|
821 |
+
" ('doo',\n",
|
822 |
+
" array([[ 117.39551, 2265.416 ],\n",
|
823 |
+
" [ 203.0625 , 2265.416 ],\n",
|
824 |
+
" [ 203.0625 , 2309.836 ],\n",
|
825 |
+
" [ 117.39551, 2309.836 ]], dtype=float32)),\n",
|
826 |
+
" ('sioul',\n",
|
827 |
+
" array([[ 199.88965, 2265.416 ],\n",
|
828 |
+
" [ 310.93945, 2265.416 ],\n",
|
829 |
+
" [ 310.93945, 2309.836 ],\n",
|
830 |
+
" [ 199.88965, 2309.836 ]], dtype=float32)),\n",
|
831 |
+
" ('bir',\n",
|
832 |
+
" array([[ 12.691406, 2316.1816 ],\n",
|
833 |
+
" [ 82.49414 , 2316.1816 ],\n",
|
834 |
+
" [ 82.49414 , 2360.6016 ],\n",
|
835 |
+
" [ 12.691406, 2360.6016 ]], dtype=float32)),\n",
|
836 |
+
" ('accr',\n",
|
837 |
+
" array([[ 95.18555, 2319.3545 ],\n",
|
838 |
+
" [ 187.19824, 2319.3545 ],\n",
|
839 |
+
" [ 187.19824, 2363.7744 ],\n",
|
840 |
+
" [ 95.18555, 2363.7744 ]], dtype=float32)),\n",
|
841 |
+
" ('h',\n",
|
842 |
+
" array([[ 203.0625 , 2322.5273 ],\n",
|
843 |
+
" [ 225.27246, 2322.5273 ],\n",
|
844 |
+
" [ 225.27246, 2357.4287 ],\n",
|
845 |
+
" [ 203.0625 , 2357.4287 ]], dtype=float32)),\n",
|
846 |
+
" ('smooojso1',\n",
|
847 |
+
" array([[ 72.975586, 2366.9473 ],\n",
|
848 |
+
" [ 263.34668 , 2366.9473 ],\n",
|
849 |
+
" [ 263.34668 , 2411.3672 ],\n",
|
850 |
+
" [ 72.975586, 2411.3672 ]], dtype=float32)),\n",
|
851 |
+
" ('sjuousa',\n",
|
852 |
+
" array([[ 263.34668, 2366.9473 ],\n",
|
853 |
+
" [ 479.1006 , 2366.9473 ],\n",
|
854 |
+
" [ 479.1006 , 2411.3672 ],\n",
|
855 |
+
" [ 263.34668, 2411.3672 ]], dtype=float32)),\n",
|
856 |
+
" ('96oz',\n",
|
857 |
+
" array([[ 494.96484, 2366.9473 ],\n",
|
858 |
+
" [ 586.97754, 2366.9473 ],\n",
|
859 |
+
" [ 586.97754, 2411.3672 ],\n",
|
860 |
+
" [ 494.96484, 2411.3672 ]], dtype=float32)),\n",
|
861 |
+
" ('11',\n",
|
862 |
+
" array([[ 34.901367, 2370.12 ],\n",
|
863 |
+
" [ 79.32129 , 2370.12 ],\n",
|
864 |
+
" [ 79.32129 , 2411.3672 ],\n",
|
865 |
+
" [ 34.901367, 2411.3672 ]], dtype=float32)),\n",
|
866 |
+
" ('accrdater',\n",
|
867 |
+
" array([[ 12.691406, 2417.713 ],\n",
|
868 |
+
" [ 203.0625 , 2417.713 ],\n",
|
869 |
+
" [ 203.0625 , 2465.3057 ],\n",
|
870 |
+
" [ 12.691406, 2465.3057 ]], dtype=float32)),\n",
|
871 |
+
" ('d8i01',\n",
|
872 |
+
" array([[ 222.09961, 2417.713 ],\n",
|
873 |
+
" [ 329.97656, 2417.713 ],\n",
|
874 |
+
" [ 329.97656, 2462.1328 ],\n",
|
875 |
+
" [ 222.09961, 2462.1328 ]], dtype=float32)),\n",
|
876 |
+
" ('220',\n",
|
877 |
+
" array([[ 329.97656, 2417.713 ],\n",
|
878 |
+
" [ 441.02637, 2417.713 ],\n",
|
879 |
+
" [ 441.02637, 2462.1328 ],\n",
|
880 |
+
" [ 329.97656, 2462.1328 ]], dtype=float32)),\n",
|
881 |
+
" ('17',\n",
|
882 |
+
" array([[ 31.728516, 2471.6514 ],\n",
|
883 |
+
" [ 85.66699 , 2471.6514 ],\n",
|
884 |
+
" [ 85.66699 , 2512.8984 ],\n",
|
885 |
+
" [ 31.728516, 2512.8984 ]], dtype=float32)),\n",
|
886 |
+
" ('151',\n",
|
887 |
+
" array([[ 76.14844, 2471.6514 ],\n",
|
888 |
+
" [ 139.60547, 2471.6514 ],\n",
|
889 |
+
" [ 139.60547, 2516.0713 ],\n",
|
890 |
+
" [ 76.14844, 2516.0713 ]], dtype=float32)),\n",
|
891 |
+
" ('izoz5',\n",
|
892 |
+
" array([[ 139.60547, 2471.6514 ],\n",
|
893 |
+
" [ 250.65527, 2471.6514 ],\n",
|
894 |
+
" [ 250.65527, 2516.0713 ],\n",
|
895 |
+
" [ 139.60547, 2516.0713 ]], dtype=float32)),\n",
|
896 |
+
" ('fermi',\n",
|
897 |
+
" array([[ 12.691406, 2519.2441 ],\n",
|
898 |
+
" [ 120.56836 , 2519.2441 ],\n",
|
899 |
+
" [ 120.56836 , 2566.837 ],\n",
|
900 |
+
" [ 12.691406, 2566.837 ]], dtype=float32)),\n",
|
901 |
+
" ('t',\n",
|
902 |
+
" array([[ 117.39551, 2525.5898 ],\n",
|
903 |
+
" [ 142.77832, 2525.5898 ],\n",
|
904 |
+
" [ 142.77832, 2563.664 ],\n",
|
905 |
+
" [ 117.39551, 2563.664 ]], dtype=float32)),\n",
|
906 |
+
" ('hs',\n",
|
907 |
+
" array([[ 158.64258, 2525.5898 ],\n",
|
908 |
+
" [ 199.88965, 2525.5898 ],\n",
|
909 |
+
" [ 199.88965, 2563.664 ],\n",
|
910 |
+
" [ 158.64258, 2563.664 ]], dtype=float32)),\n",
|
911 |
+
" ('fpzoirtias',\n",
|
912 |
+
" array([[ 31.728516, 2570.0098 ],\n",
|
913 |
+
" [ 479.1006 , 2570.0098 ],\n",
|
914 |
+
" [ 479.1006 , 2617.6025 ],\n",
|
915 |
+
" [ 31.728516, 2617.6025 ]], dtype=float32)),\n",
|
916 |
+
" ('dooniz',\n",
|
917 |
+
" array([[ 469.58203, 2573.1826 ],\n",
|
918 |
+
" [ 586.97754, 2573.1826 ],\n",
|
919 |
+
" [ 586.97754, 2617.6025 ],\n",
|
920 |
+
" [ 469.58203, 2617.6025 ]], dtype=float32)),\n",
|
921 |
+
" ('get',\n",
|
922 |
+
" array([[ 31.728516, 2674.7139 ],\n",
|
923 |
+
" [ 101.53125 , 2674.7139 ],\n",
|
924 |
+
" [ 101.53125 , 2719.1338 ],\n",
|
925 |
+
" [ 31.728516, 2719.1338 ]], dtype=float32)),\n",
|
926 |
+
" ('for',\n",
|
927 |
+
" array([[ 602.8418, 2674.7139],\n",
|
928 |
+
" [ 669.4717, 2674.7139],\n",
|
929 |
+
" [ 669.4717, 2719.1338],\n",
|
930 |
+
" [ 602.8418, 2719.1338]], dtype=float32)),\n",
|
931 |
+
" ('chance',\n",
|
932 |
+
" array([[ 158.87543, 2676.548 ],\n",
|
933 |
+
" [ 292.87747, 2680.6086 ],\n",
|
934 |
+
" [ 291.59088, 2723.0664 ],\n",
|
935 |
+
" [ 157.58882, 2719.0059 ]], dtype=float32)),\n",
|
936 |
+
" ('to',\n",
|
937 |
+
" array([[ 304.59375, 2677.8867 ],\n",
|
938 |
+
" [ 355.35938, 2677.8867 ],\n",
|
939 |
+
" [ 355.35938, 2719.1338 ],\n",
|
940 |
+
" [ 304.59375, 2719.1338 ]], dtype=float32)),\n",
|
941 |
+
" ('win',\n",
|
942 |
+
" array([[ 368.05078, 2677.8867 ],\n",
|
943 |
+
" [ 441.02637, 2677.8867 ],\n",
|
944 |
+
" [ 441.02637, 2722.3066 ],\n",
|
945 |
+
" [ 368.05078, 2722.3066 ]], dtype=float32)),\n",
|
946 |
+
" ('trip',\n",
|
947 |
+
" array([[ 494.96484, 2677.8867 ],\n",
|
948 |
+
" [ 586.97754, 2677.8867 ],\n",
|
949 |
+
" [ 586.97754, 2722.3066 ],\n",
|
950 |
+
" [ 494.96484, 2722.3066 ]], dtype=float32)),\n",
|
951 |
+
" ('t',\n",
|
952 |
+
" array([[ 114.22266, 2681.0596 ],\n",
|
953 |
+
" [ 139.60547, 2681.0596 ],\n",
|
954 |
+
" [ 139.60547, 2715.961 ],\n",
|
955 |
+
" [ 114.22266, 2715.961 ]], dtype=float32)),\n",
|
956 |
+
" ('a',\n",
|
957 |
+
" array([[ 453.71777, 2687.4053 ],\n",
|
958 |
+
" [ 475.92773, 2687.4053 ],\n",
|
959 |
+
" [ 475.92773, 2719.1338 ],\n",
|
960 |
+
" [ 453.71777, 2719.1338 ]], dtype=float32)),\n",
|
961 |
+
" ('f',\n",
|
962 |
+
" array([[ 57.11133, 2731.8252 ],\n",
|
963 |
+
" [ 79.32129, 2731.8252 ],\n",
|
964 |
+
" [ 79.32129, 2769.8994 ],\n",
|
965 |
+
" [ 57.11133, 2769.8994 ]], dtype=float32)),\n",
|
966 |
+
" ('to',\n",
|
967 |
+
" array([[ 95.18555, 2728.6523 ],\n",
|
968 |
+
" [ 142.77832, 2728.6523 ],\n",
|
969 |
+
" [ 142.77832, 2773.0723 ],\n",
|
970 |
+
" [ 95.18555, 2773.0723 ]], dtype=float32)),\n",
|
971 |
+
" ('kored',\n",
|
972 |
+
" array([[ 158.64258, 2728.6523 ],\n",
|
973 |
+
" [ 269.69238, 2728.6523 ],\n",
|
974 |
+
" [ 269.69238, 2773.0723 ],\n",
|
975 |
+
" [ 158.64258, 2773.0723 ]], dtype=float32)),\n",
|
976 |
+
" ('pis0',\n",
|
977 |
+
" array([[ 558.4219, 2728.6523],\n",
|
978 |
+
" [ 650.4346, 2728.6523],\n",
|
979 |
+
" [ 650.4346, 2773.0723],\n",
|
980 |
+
" [ 558.4219, 2773.0723]], dtype=float32)),\n",
|
981 |
+
" ('when',\n",
|
982 |
+
" array([[ 285.55664, 2731.8252 ],\n",
|
983 |
+
" [ 377.56934, 2731.8252 ],\n",
|
984 |
+
" [ 377.56934, 2773.0723 ],\n",
|
985 |
+
" [ 285.55664, 2773.0723 ]], dtype=float32)),\n",
|
986 |
+
" ('buy',\n",
|
987 |
+
" array([[ 472.75488, 2731.8252 ],\n",
|
988 |
+
" [ 542.5576 , 2731.8252 ],\n",
|
989 |
+
" [ 542.5576 , 2773.0723 ],\n",
|
990 |
+
" [ 472.75488, 2773.0723 ]], dtype=float32)),\n",
|
991 |
+
" ('you',\n",
|
992 |
+
" array([[ 390.26074, 2734.998 ],\n",
|
993 |
+
" [ 460.06348, 2734.998 ],\n",
|
994 |
+
" [ 460.06348, 2776.245 ],\n",
|
995 |
+
" [ 390.26074, 2776.245 ]], dtype=float32)),\n",
|
996 |
+
" ('of',\n",
|
997 |
+
" array([[ 158.64258, 2779.418 ],\n",
|
998 |
+
" [ 206.23535, 2779.418 ],\n",
|
999 |
+
" [ 206.23535, 2823.838 ],\n",
|
1000 |
+
" [ 158.64258, 2823.838 ]], dtype=float32)),\n",
|
1001 |
+
" ('jel',\n",
|
1002 |
+
" array([[ 225.27246, 2779.418 ],\n",
|
1003 |
+
" [ 307.7666 , 2779.418 ],\n",
|
1004 |
+
" [ 307.7666 , 2823.838 ],\n",
|
1005 |
+
" [ 225.27246, 2823.838 ]], dtype=float32)),\n",
|
1006 |
+
" ('worth',\n",
|
1007 |
+
" array([[ 31.728516, 2782.5908 ],\n",
|
1008 |
+
" [ 145.95117 , 2782.5908 ],\n",
|
1009 |
+
" [ 145.95117 , 2830.1836 ],\n",
|
1010 |
+
" [ 31.728516, 2830.1836 ]], dtype=float32)),\n",
|
1011 |
+
" ('tens',\n",
|
1012 |
+
" array([[ 434.68066, 2782.5908 ],\n",
|
1013 |
+
" [ 533.03906, 2782.5908 ],\n",
|
1014 |
+
" [ 533.03906, 2820.665 ],\n",
|
1015 |
+
" [ 434.68066, 2820.665 ]], dtype=float32)),\n",
|
1016 |
+
" ('ean',\n",
|
1017 |
+
" array([[ 558.4219, 2782.5908],\n",
|
1018 |
+
" [ 650.4346, 2782.5908],\n",
|
1019 |
+
" [ 650.4346, 2823.838 ],\n",
|
1020 |
+
" [ 558.4219, 2823.838 ]], dtype=float32)),\n",
|
1021 |
+
" ('even',\n",
|
1022 |
+
" array([[ 304.59375, 2785.7637 ],\n",
|
1023 |
+
" [ 396.60645, 2785.7637 ],\n",
|
1024 |
+
" [ 396.60645, 2823.838 ],\n",
|
1025 |
+
" [ 304.59375, 2823.838 ]], dtype=float32)),\n",
|
1026 |
+
" ('s',\n",
|
1027 |
+
" array([[ 31.728516, 2830.1836 ],\n",
|
1028 |
+
" [ 57.11133 , 2830.1836 ],\n",
|
1029 |
+
" [ 57.11133 , 2871.4307 ],\n",
|
1030 |
+
" [ 31.728516, 2871.4307 ]], dtype=float32)),\n",
|
1031 |
+
" ('era',\n",
|
1032 |
+
" array([[ 72.975586, 2830.1836 ],\n",
|
1033 |
+
" [ 142.77832 , 2830.1836 ],\n",
|
1034 |
+
" [ 142.77832 , 2877.7764 ],\n",
|
1035 |
+
" [ 72.975586, 2877.7764 ]], dtype=float32)),\n",
|
1036 |
+
" ('ffle',\n",
|
1037 |
+
" array([[ 139.60547, 2830.1836 ],\n",
|
1038 |
+
" [ 228.44531, 2830.1836 ],\n",
|
1039 |
+
" [ 228.44531, 2877.7764 ],\n",
|
1040 |
+
" [ 139.60547, 2877.7764 ]], dtype=float32)),\n",
|
1041 |
+
" ('entr',\n",
|
1042 |
+
" array([[ 241.13672, 2833.3564 ],\n",
|
1043 |
+
" [ 336.32227, 2833.3564 ],\n",
|
1044 |
+
" [ 336.32227, 2874.6035 ],\n",
|
1045 |
+
" [ 241.13672, 2874.6035 ]], dtype=float32)),\n",
|
1046 |
+
" ('ies',\n",
|
1047 |
+
" array([[ 329.97656, 2836.5293 ],\n",
|
1048 |
+
" [ 393.4336 , 2836.5293 ],\n",
|
1049 |
+
" [ 393.4336 , 2871.4307 ],\n",
|
1050 |
+
" [ 329.97656, 2871.4307 ]], dtype=float32)),\n",
|
1051 |
+
" ('aphen',\n",
|
1052 |
+
" array([[ 412.4707 , 2836.5293 ],\n",
|
1053 |
+
" [ 501.31055, 2836.5293 ],\n",
|
1054 |
+
" [ 501.31055, 2877.7764 ],\n",
|
1055 |
+
" [ 412.4707 , 2877.7764 ]], dtype=float32)),\n",
|
1056 |
+
" ('duy',\n",
|
1057 |
+
" array([[ 596.4961, 2836.5293],\n",
|
1058 |
+
" [ 669.4717, 2836.5293],\n",
|
1059 |
+
" [ 669.4717, 2877.7764],\n",
|
1060 |
+
" [ 596.4961, 2877.7764]], dtype=float32)),\n",
|
1061 |
+
" ('you',\n",
|
1062 |
+
" array([[ 517.1748 , 2839.7021 ],\n",
|
1063 |
+
" [ 586.97754, 2839.7021 ],\n",
|
1064 |
+
" [ 586.97754, 2877.7764 ],\n",
|
1065 |
+
" [ 517.1748 , 2877.7764 ]], dtype=float32)),\n",
|
1066 |
+
" ('dis',\n",
|
1067 |
+
" array([[ 31.728516, 2884.122 ],\n",
|
1068 |
+
" [ 79.32129 , 2884.122 ],\n",
|
1069 |
+
" [ 79.32129 , 2925.3691 ],\n",
|
1070 |
+
" [ 31.728516, 2925.3691 ]], dtype=float32)),\n",
|
1071 |
+
" ('scdunted',\n",
|
1072 |
+
" array([[ 76.14844, 2884.122 ],\n",
|
1073 |
+
" [ 250.65527, 2884.122 ],\n",
|
1074 |
+
" [ 250.65527, 2928.542 ],\n",
|
1075 |
+
" [ 76.14844, 2928.542 ]], dtype=float32)),\n",
|
1076 |
+
" ('booster',\n",
|
1077 |
+
" array([[ 263.34668, 2884.122 ],\n",
|
1078 |
+
" [ 415.64355, 2884.122 ],\n",
|
1079 |
+
" [ 415.64355, 2928.542 ],\n",
|
1080 |
+
" [ 263.34668, 2928.542 ]], dtype=float32)),\n",
|
1081 |
+
" ('tenss',\n",
|
1082 |
+
" array([[ 453.71777, 2884.122 ],\n",
|
1083 |
+
" [ 548.9033 , 2884.122 ],\n",
|
1084 |
+
" [ 548.9033 , 2928.542 ],\n",
|
1085 |
+
" [ 453.71777, 2928.542 ]], dtype=float32)),\n",
|
1086 |
+
" ('fper',\n",
|
1087 |
+
" array([[ 577.459 , 2884.122 ],\n",
|
1088 |
+
" [ 647.2617, 2884.122 ],\n",
|
1089 |
+
" [ 647.2617, 2928.542 ],\n",
|
1090 |
+
" [ 577.459 , 2928.542 ]], dtype=float32)),\n",
|
1091 |
+
" ('dii',\n",
|
1092 |
+
" array([[ 31.728516, 2934.8877 ],\n",
|
1093 |
+
" [ 101.53125 , 2934.8877 ],\n",
|
1094 |
+
" [ 101.53125 , 2979.3076 ],\n",
|
1095 |
+
" [ 31.728516, 2979.3076 ]], dtype=float32)),\n",
|
1096 |
+
" ('fair',\n",
|
1097 |
+
" array([[ 117.39551, 2934.8877 ],\n",
|
1098 |
+
" [ 209.4082 , 2934.8877 ],\n",
|
1099 |
+
" [ 209.4082 , 2979.3076 ],\n",
|
1100 |
+
" [ 117.39551, 2979.3076 ]], dtype=float32)),\n",
|
1101 |
+
" ('trade',\n",
|
1102 |
+
" array([[ 222.09961, 2934.8877 ],\n",
|
1103 |
+
" [ 333.1494 , 2934.8877 ],\n",
|
1104 |
+
" [ 333.1494 , 2979.3076 ],\n",
|
1105 |
+
" [ 222.09961, 2979.3076 ]], dtype=float32)),\n",
|
1106 |
+
" ('permt',\n",
|
1107 |
+
" array([[ 346.57706, 2933.5906 ],\n",
|
1108 |
+
" [ 458.4858 , 2939.4805 ],\n",
|
1109 |
+
" [ 456.2683 , 2981.6128 ],\n",
|
1110 |
+
" [ 344.35956, 2975.7231 ]], dtype=float32)),\n",
|
1111 |
+
" ('nunbers',\n",
|
1112 |
+
" array([[ 494.96484, 2934.8877 ],\n",
|
1113 |
+
" [ 644.08887, 2934.8877 ],\n",
|
1114 |
+
" [ 644.08887, 2979.3076 ],\n",
|
1115 |
+
" [ 494.96484, 2979.3076 ]], dtype=float32)),\n",
|
1116 |
+
" ('t',\n",
|
1117 |
+
" array([[ 453.71777, 2941.2334 ],\n",
|
1118 |
+
" [ 475.92773, 2941.2334 ],\n",
|
1119 |
+
" [ 475.92773, 2976.1348 ],\n",
|
1120 |
+
" [ 453.71777, 2976.1348 ]], dtype=float32)),\n",
|
1121 |
+
" ('18015',\n",
|
1122 |
+
" array([[ 117.39551, 2985.6533 ],\n",
|
1123 |
+
" [ 247.48242, 2985.6533 ],\n",
|
1124 |
+
" [ 247.48242, 3030.0732 ],\n",
|
1125 |
+
" [ 117.39551, 3030.0732 ]], dtype=float32)),\n",
|
1126 |
+
" ('series',\n",
|
1127 |
+
" array([[ 263.34668, 2985.6533 ],\n",
|
1128 |
+
" [ 396.60645, 2985.6533 ],\n",
|
1129 |
+
" [ 396.60645, 3030.0732 ],\n",
|
1130 |
+
" [ 263.34668, 3030.0732 ]], dtype=float32)),\n",
|
1131 |
+
" ('of',\n",
|
1132 |
+
" array([[ 409.29785, 2985.6533 ],\n",
|
1133 |
+
" [ 456.89062, 2985.6533 ],\n",
|
1134 |
+
" [ 456.89062, 3030.0732 ],\n",
|
1135 |
+
" [ 409.29785, 3030.0732 ]], dtype=float32)),\n",
|
1136 |
+
" ('edz5',\n",
|
1137 |
+
" array([[ 472.75488, 2985.6533 ],\n",
|
1138 |
+
" [ 571.1133 , 2985.6533 ],\n",
|
1139 |
+
" [ 571.1133 , 3026.9004 ],\n",
|
1140 |
+
" [ 472.75488, 3026.9004 ]], dtype=float32)),\n",
|
1141 |
+
" ('facebooks',\n",
|
1142 |
+
" array([[ 53.938477, 3036.419 ],\n",
|
1143 |
+
" [ 234.79102 , 3036.419 ],\n",
|
1144 |
+
" [ 234.79102 , 3080.8389 ],\n",
|
1145 |
+
" [ 53.938477, 3080.8389 ]], dtype=float32)),\n",
|
1146 |
+
" ('71',\n",
|
1147 |
+
" array([[ 329.97656, 3036.419 ],\n",
|
1148 |
+
" [ 371.22363, 3036.419 ],\n",
|
1149 |
+
" [ 371.22363, 3077.666 ],\n",
|
1150 |
+
" [ 329.97656, 3077.666 ]], dtype=float32)),\n",
|
1151 |
+
" ('iphi',\n",
|
1152 |
+
" array([[ 371.22363, 3036.419 ],\n",
|
1153 |
+
" [ 456.89062, 3036.419 ],\n",
|
1154 |
+
" [ 456.89062, 3080.8389 ],\n",
|
1155 |
+
" [ 371.22363, 3080.8389 ]], dtype=float32)),\n",
|
1156 |
+
" ('comf',\n",
|
1157 |
+
" array([[ 241.13672, 3039.5918 ],\n",
|
1158 |
+
" [ 333.1494 , 3039.5918 ],\n",
|
1159 |
+
" [ 333.1494 , 3080.8389 ],\n",
|
1160 |
+
" [ 241.13672, 3080.8389 ]], dtype=float32)),\n",
|
1161 |
+
" ('l',\n",
|
1162 |
+
" array([[ 456.89062, 3042.7646 ],\n",
|
1163 |
+
" [ 469.58203, 3042.7646 ],\n",
|
1164 |
+
" [ 469.58203, 3071.3203 ],\n",
|
1165 |
+
" [ 456.89062, 3071.3203 ]], dtype=float32)),\n",
|
1166 |
+
" ('pp',\n",
|
1167 |
+
" array([[ 491.792 , 3039.5918],\n",
|
1168 |
+
" [ 542.5576, 3039.5918],\n",
|
1169 |
+
" [ 542.5576, 3080.8389],\n",
|
1170 |
+
" [ 491.792 , 3080.8389]], dtype=float32)),\n",
|
1171 |
+
" ('fes',\n",
|
1172 |
+
" array([[ 552.0762 , 3039.5918 ],\n",
|
1173 |
+
" [ 631.39746, 3039.5918 ],\n",
|
1174 |
+
" [ 631.39746, 3077.666 ],\n",
|
1175 |
+
" [ 552.0762 , 3077.666 ]], dtype=float32)),\n",
|
1176 |
+
" ('this',\n",
|
1177 |
+
" array([[ 53.938477, 3137.9502 ],\n",
|
1178 |
+
" [ 142.77832 , 3137.9502 ],\n",
|
1179 |
+
" [ 142.77832 , 3185.543 ],\n",
|
1180 |
+
" [ 53.938477, 3185.543 ]], dtype=float32)),\n",
|
1181 |
+
" ('is',\n",
|
1182 |
+
" array([[ 158.64258, 3137.9502 ],\n",
|
1183 |
+
" [ 206.23535, 3137.9502 ],\n",
|
1184 |
+
" [ 206.23535, 3185.543 ],\n",
|
1185 |
+
" [ 158.64258, 3185.543 ]], dtype=float32)),\n",
|
1186 |
+
" ('official',\n",
|
1187 |
+
" array([[ 282.3838 , 3137.9502 ],\n",
|
1188 |
+
" [ 456.89062, 3137.9502 ],\n",
|
1189 |
+
" [ 456.89062, 3185.543 ],\n",
|
1190 |
+
" [ 282.3838 , 3185.543 ]], dtype=float32)),\n",
|
1191 |
+
" ('receift',\n",
|
1192 |
+
" array([[ 472.75488, 3137.9502 ],\n",
|
1193 |
+
" [ 628.2246 , 3137.9502 ],\n",
|
1194 |
+
" [ 628.2246 , 3185.543 ],\n",
|
1195 |
+
" [ 472.75488, 3185.543 ]], dtype=float32)),\n",
|
1196 |
+
" ('in',\n",
|
1197 |
+
" array([[ 222.09961, 3141.123 ],\n",
|
1198 |
+
" [ 269.69238, 3141.123 ],\n",
|
1199 |
+
" [ 269.69238, 3182.37 ],\n",
|
1200 |
+
" [ 222.09961, 3182.37 ]], dtype=float32))]]"
|
1201 |
+
]
|
1202 |
+
},
|
1203 |
+
"execution_count": 4,
|
1204 |
+
"metadata": {},
|
1205 |
+
"output_type": "execute_result"
|
1206 |
+
}
|
1207 |
+
],
|
1208 |
+
"source": [
|
1209 |
+
"pipeline.recognize([r\"temp\\20230508_122035_preprocessed.png\"])"
|
1210 |
+
]
|
1211 |
+
},
|
1212 |
+
{
|
1213 |
+
"cell_type": "code",
|
1214 |
+
"execution_count": 5,
|
1215 |
+
"metadata": {},
|
1216 |
+
"outputs": [
|
1217 |
+
{
|
1218 |
+
"name": "stdout",
|
1219 |
+
"output_type": "stream",
|
1220 |
+
"text": [
|
1221 |
+
"Requirement already satisfied: requests in c:\\users\\ayoo\\anaconda3\\envs\\mlenv\\lib\\site-packages (2.31.0)\n",
|
1222 |
+
"Requirement already satisfied: charset-normalizer<4,>=2 in c:\\users\\ayoo\\anaconda3\\envs\\mlenv\\lib\\site-packages (from requests) (3.2.0)\n",
|
1223 |
+
"Requirement already satisfied: idna<4,>=2.5 in c:\\users\\ayoo\\anaconda3\\envs\\mlenv\\lib\\site-packages (from requests) (3.4)\n",
|
1224 |
+
"Requirement already satisfied: urllib3<3,>=1.21.1 in c:\\users\\ayoo\\anaconda3\\envs\\mlenv\\lib\\site-packages (from requests) (1.26.16)\n",
|
1225 |
+
"Requirement already satisfied: certifi>=2017.4.17 in c:\\users\\ayoo\\anaconda3\\envs\\mlenv\\lib\\site-packages (from requests) (2023.7.22)\n"
|
1226 |
+
]
|
1227 |
+
}
|
1228 |
+
],
|
1229 |
+
"source": [
|
1230 |
+
"!pip install requests"
|
1231 |
+
]
|
1232 |
+
},
|
1233 |
+
{
|
1234 |
+
"cell_type": "code",
|
1235 |
+
"execution_count": 16,
|
1236 |
+
"metadata": {},
|
1237 |
+
"outputs": [
|
1238 |
+
{
|
1239 |
+
"name": "stdout",
|
1240 |
+
"output_type": "stream",
|
1241 |
+
"text": [
|
1242 |
+
"{'ParsedResults': [{'TextOverlay': {'Lines': [{'LineText': '7-ELEVEN.', 'Words': [{'WordText': '7', 'Left': 205.0, 'Top': 38.0, 'Height': 84.0, 'Width': 398.0}, {'WordText': '-', 'Left': 205.0, 'Top': 38.0, 'Height': 84.0, 'Width': 398.0}, {'WordText': 'ELEVEN', 'Left': 205.0, 'Top': 38.0, 'Height': 84.0, 'Width': 398.0}, {'WordText': '.', 'Left': 205.0, 'Top': 38.0, 'Height': 84.0, 'Width': 398.0}], 'MaxHeight': 84.0, 'MinTop': 38.0}, {'LineText': 'NHJ Convenience Store', 'Words': [{'WordText': 'NHJ', 'Left': 117.0, 'Top': 215.0, 'Height': 36.0, 'Width': 76.0}, {'WordText': 'Convenience', 'Left': 198.0, 'Top': 215.0, 'Height': 36.0, 'Width': 247.0}, {'WordText': 'Store', 'Left': 450.0, 'Top': 215.0, 'Height': 36.0, 'Width': 114.0}], 'MaxHeight': 36.0, 'MinTop': 215.0}, {'LineText': 'Owned & Operated by: Nancy A.', 'Words': [{'WordText': 'Owned', 'Left': 33.0, 'Top': 260.0, 'Height': 52.0, 'Width': 117.0}, {'WordText': '&', 'Left': 156.0, 'Top': 261.0, 'Height': 52.0, 'Width': 32.0}, {'WordText': 'Operated', 'Left': 195.0, 'Top': 261.0, 'Height': 52.0, 'Width': 182.0}, {'WordText': 'by', 'Left': 384.0, 'Top': 261.0, 'Height': 52.0, 'Width': 71.0}, {'WordText': ':', 'Left': 384.0, 'Top': 261.0, 'Height': 52.0, 'Width': 71.0}, {'WordText': 'Nancy', 'Left': 462.0, 'Top': 261.0, 'Height': 52.0, 'Width': 130.0}, {'WordText': 'A', 'Left': 598.0, 'Top': 260.0, 'Height': 52.0, 'Width': 47.0}, {'WordText': '.', 'Left': 598.0, 'Top': 260.0, 'Height': 52.0, 'Width': 47.0}], 'MaxHeight': 52.0, 'MinTop': 260.0}, {'LineText': 'Climacosa', 'Words': [{'WordText': 'Climacosa', 'Left': 244.0, 'Top': 315.0, 'Height': 38.0, 'Width': 193.0}], 'MaxHeight': 38.0, 'MinTop': 315.0}, {'LineText': 'VATREGTIN #933-598-685-002', 'Words': [{'WordText': 'VATREGTIN', 'Left': 75.0, 'Top': 361.0, 'Height': 43.0, 'Width': 204.0}, {'WordText': '#', 'Left': 285.0, 'Top': 361.0, 'Height': 43.0, 'Width': 347.0}, {'WordText': '933', 'Left': 285.0, 'Top': 361.0, 'Height': 43.0, 'Width': 347.0}, {'WordText': '-', 'Left': 285.0, 'Top': 361.0, 'Height': 43.0, 'Width': 347.0}, {'WordText': '598', 'Left': 285.0, 'Top': 361.0, 'Height': 43.0, 'Width': 347.0}, {'WordText': '-', 'Left': 285.0, 'Top': 361.0, 'Height': 43.0, 'Width': 347.0}, {'WordText': '685', 'Left': 285.0, 'Top': 361.0, 'Height': 43.0, 'Width': 347.0}, {'WordText': '-', 'Left': 285.0, 'Top': 361.0, 'Height': 43.0, 'Width': 347.0}, {'WordText': '002', 'Left': 285.0, 'Top': 361.0, 'Height': 43.0, 'Width': 347.0}], 'MaxHeight': 43.0, 'MinTop': 361.0}, {'LineText': 'Poblacion, Leon, Iloilo,', 'Words': [{'WordText': 'Poblacion', 'Left': 94.0, 'Top': 417.0, 'Height': 49.0, 'Width': 220.0}, {'WordText': ',', 'Left': 94.0, 'Top': 417.0, 'Height': 49.0, 'Width': 220.0}, {'WordText': 'Leon', 'Left': 321.0, 'Top': 417.0, 'Height': 49.0, 'Width': 122.0}, {'WordText': ',', 'Left': 321.0, 'Top': 417.0, 'Height': 49.0, 'Width': 122.0}, {'WordText': 'Iloilo', 'Left': 449.0, 'Top': 417.0, 'Height': 49.0, 'Width': 154.0}, {'WordText': ',', 'Left': 449.0, 'Top': 417.0, 'Height': 49.0, 'Width': 154.0}], 'MaxHeight': 49.0, 'MinTop': 417.0}, {'LineText': 'Philippines', 'Words': [{'WordText': 'Philippines', 'Left': 225.0, 'Top': 468.0, 'Height': 44.0, 'Width': 238.0}], 'MaxHeight': 44.0, 'MinTop': 468.0}, {'LineText': 'lel #: NULL', 'Words': [{'WordText': 'lel', 'Left': 221.0, 'Top': 524.0, 'Height': 40.0, 'Width': 78.0}, {'WordText': '#:', 'Left': 304.0, 'Top': 524.0, 'Height': 39.0, 'Width': 59.0}, {'WordText': 'NULL', 'Left': 368.0, 'Top': 523.0, 'Height': 40.0, 'Width': 89.0}], 'MaxHeight': 41.0, 'MinTop': 523.0}, {'LineText': '05/01/2023 (Mon) 23:00:57', 'Words': [{'WordText': '05', 'Left': 98.0, 'Top': 622.0, 'Height': 42.0, 'Width': 216.0}, {'WordText': '/', 'Left': 98.0, 'Top': 622.0, 'Height': 42.0, 'Width': 215.0}, {'WordText': '01', 'Left': 98.0, 'Top': 622.0, 'Height': 42.0, 'Width': 216.0}, {'WordText': '/', 'Left': 98.0, 'Top': 622.0, 'Height': 42.0, 'Width': 215.0}, {'WordText': '2023', 'Left': 98.0, 'Top': 622.0, 'Height': 42.0, 'Width': 216.0}, {'WordText': '(', 'Left': 319.0, 'Top': 622.0, 'Height': 42.0, 'Width': 105.0}, {'WordText': 'Mon', 'Left': 319.0, 'Top': 622.0, 'Height': 42.0, 'Width': 105.0}, {'WordText': ')', 'Left': 319.0, 'Top': 622.0, 'Height': 42.0, 'Width': 105.0}, {'WordText': '23', 'Left': 429.0, 'Top': 622.0, 'Height': 42.0, 'Width': 181.0}, {'WordText': ':', 'Left': 429.0, 'Top': 622.0, 'Height': 42.0, 'Width': 181.0}, {'WordText': '00', 'Left': 429.0, 'Top': 622.0, 'Height': 42.0, 'Width': 181.0}, {'WordText': ':', 'Left': 429.0, 'Top': 622.0, 'Height': 42.0, 'Width': 181.0}, {'WordText': '57', 'Left': 429.0, 'Top': 622.0, 'Height': 42.0, 'Width': 181.0}], 'MaxHeight': 42.0, 'MinTop': 622.0}, {'LineText': 'RCPT #2481347', 'Words': [{'WordText': 'RCPT', 'Left': 13.0, 'Top': 723.0, 'Height': 42.0, 'Width': 94.0}, {'WordText': '#', 'Left': 113.0, 'Top': 723.0, 'Height': 42.0, 'Width': 184.0}, {'WordText': '2481347', 'Left': 113.0, 'Top': 723.0, 'Height': 42.0, 'Width': 184.0}], 'MaxHeight': 42.0, 'MinTop': 723.0}, {'LineText': 'ROPT CNTHO', 'Words': [{'WordText': 'ROPT', 'Left': 472.0, 'Top': 723.0, 'Height': 49.0, 'Width': 96.0}, {'WordText': 'CNTHO', 'Left': 574.0, 'Top': 722.0, 'Height': 49.0, 'Width': 120.0}], 'MaxHeight': 50.0, 'MinTop': 722.0}, {'LineText': 'STORE#3058', 'Words': [{'WordText': 'STORE', 'Left': 13.0, 'Top': 771.0, 'Height': 47.0, 'Width': 219.0}, {'WordText': '#', 'Left': 13.0, 'Top': 771.0, 'Height': 47.0, 'Width': 219.0}, {'WordText': '3058', 'Left': 13.0, 'Top': 771.0, 'Height': 47.0, 'Width': 219.0}], 'MaxHeight': 47.0, 'MinTop': 771.0}, {'LineText': 'SN# :XTI43170', 'Words': [{'WordText': 'SN', 'Left': 433.0, 'Top': 771.0, 'Height': 49.0, 'Width': 66.0}, {'WordText': '#', 'Left': 433.0, 'Top': 771.0, 'Height': 49.0, 'Width': 66.0}, {'WordText': ':', 'Left': 505.0, 'Top': 771.0, 'Height': 50.0, 'Width': 189.0}, {'WordText': 'XTI43170', 'Left': 505.0, 'Top': 771.0, 'Height': 50.0, 'Width': 189.0}], 'MaxHeight': 50.0, 'MinTop': 771.0}, {'LineText': 'MIN #: 18112011091411051', 'Words': [{'WordText': 'MIN', 'Left': 13.0, 'Top': 830.0, 'Height': 39.0, 'Width': 73.0}, {'WordText': '#:', 'Left': 91.0, 'Top': 830.0, 'Height': 39.0, 'Width': 58.0}, {'WordText': '18112011091411051', 'Left': 154.0, 'Top': 830.0, 'Height': 39.0, 'Width': 360.0}], 'MaxHeight': 39.0, 'MinTop': 830.0}, {'LineText': 'STAFF: Angelica Duante', 'Words': [{'WordText': 'STAFF', 'Left': 13.0, 'Top': 879.0, 'Height': 43.0, 'Width': 124.0}, {'WordText': ':', 'Left': 13.0, 'Top': 879.0, 'Height': 43.0, 'Width': 124.0}, {'WordText': 'Angelica', 'Left': 142.0, 'Top': 879.0, 'Height': 43.0, 'Width': 177.0}, {'WordText': 'Duante', 'Left': 325.0, 'Top': 879.0, 'Height': 43.0, 'Width': 138.0}], 'MaxHeight': 43.0, 'MinTop': 879.0}, {'LineText': '7FKoreanßun', 'Words': [{'WordText': '7FKoreanßun', 'Left': 16.0, 'Top': 979.0, 'Height': 45.0, 'Width': 235.0}], 'MaxHeight': 45.0, 'MinTop': 979.0}, {'LineText': 'NissinYaSaBeet77g', 'Words': [{'WordText': 'NissinYaSaBeet77g', 'Left': 13.0, 'Top': 1032.0, 'Height': 42.0, 'Width': 365.0}], 'MaxHeight': 42.0, 'MinTop': 1032.0}, {'LineText': 'BBHOTDOGCREMYCHEES', 'Words': [{'WordText': 'BBHOTDOGCREMYCHEES', 'Left': 13.0, 'Top': 1084.0, 'Height': 39.0, 'Width': 384.0}], 'MaxHeight': 39.0, 'MinTop': 1084.0}, {'LineText': '39.00 Х 6', 'Words': [{'WordText': '39.00', 'Left': 140.0, 'Top': 1136.0, 'Height': 43.0, 'Width': 116.0}, {'WordText': 'Х', 'Left': 261.0, 'Top': 1136.0, 'Height': 43.0, 'Width': 100.0}, {'WordText': '6', 'Left': 366.0, 'Top': 1135.0, 'Height': 42.0, 'Width': 29.0}], 'MaxHeight': 44.0, 'MinTop': 1135.0}, {'LineText': 'chocvron? in1Ch020g', 'Words': [{'WordText': 'chocvron', 'Left': 13.0, 'Top': 1185.0, 'Height': 43.0, 'Width': 193.0}, {'WordText': '?', 'Left': 13.0, 'Top': 1185.0, 'Height': 43.0, 'Width': 193.0}, {'WordText': 'in1Ch020g', 'Left': 212.0, 'Top': 1185.0, 'Height': 43.0, 'Width': 186.0}], 'MaxHeight': 43.0, 'MinTop': 1185.0}, {'LineText': '15.00 X', 'Words': [{'WordText': '15.00', 'Left': 140.0, 'Top': 1240.0, 'Height': 43.0, 'Width': 116.0}, {'WordText': 'X', 'Left': 261.0, 'Top': 1240.0, 'Height': 42.0, 'Width': 42.0}], 'MaxHeight': 43.0, 'MinTop': 1240.0}, {'LineText': '2', 'Words': [{'WordText': '2', 'Left': 355.0, 'Top': 1240.0, 'Height': 39.0, 'Width': 39.0}], 'MaxHeight': 39.0, 'MinTop': 1240.0}, {'LineText': '55.004', 'Words': [{'WordText': '55.004', 'Left': 557.0, 'Top': 979.0, 'Height': 47.0, 'Width': 137.0}], 'MaxHeight': 47.0, 'MinTop': 979.0}, {'LineText': '40.000', 'Words': [{'WordText': '40.000', 'Left': 560.0, 'Top': 1031.0, 'Height': 48.0, 'Width': 134.0}], 'MaxHeight': 48.0, 'MinTop': 1031.0}, {'LineText': '234.000', 'Words': [{'WordText': '234.000', 'Left': 534.0, 'Top': 1135.0, 'Height': 47.0, 'Width': 160.0}], 'MaxHeight': 47.0, 'MinTop': 1135.0}, {'LineText': '30.000', 'Words': [{'WordText': '30.000', 'Left': 557.0, 'Top': 1237.0, 'Height': 46.0, 'Width': 137.0}], 'MaxHeight': 46.0, 'MinTop': 1237.0}, {'LineText': 'Total (10)', 'Words': [{'WordText': 'Total', 'Left': 13.0, 'Top': 1340.0, 'Height': 44.0, 'Width': 121.0}, {'WordText': '(', 'Left': 139.0, 'Top': 1342.0, 'Height': 44.0, 'Width': 86.0}, {'WordText': '10', 'Left': 139.0, 'Top': 1342.0, 'Height': 44.0, 'Width': 86.0}, {'WordText': ')', 'Left': 139.0, 'Top': 1342.0, 'Height': 44.0, 'Width': 86.0}], 'MaxHeight': 46.0, 'MinTop': 1340.0}, {'LineText': 'CASH', 'Words': [{'WordText': 'CASH', 'Left': 55.0, 'Top': 1390.0, 'Height': 43.0, 'Width': 91.0}], 'MaxHeight': 43.0, 'MinTop': 1390.0}, {'LineText': 'CHANGE', 'Words': [{'WordText': 'CHANGE', 'Left': 52.0, 'Top': 1442.0, 'Height': 43.0, 'Width': 137.0}], 'MaxHeight': 43.0, 'MinTop': 1442.0}, {'LineText': '359.00', 'Words': [{'WordText': '359.00', 'Left': 557.0, 'Top': 1341.0, 'Height': 47.0, 'Width': 137.0}], 'MaxHeight': 47.0, 'MinTop': 1341.0}, {'LineText': '1000.00', 'Words': [{'WordText': '1000.00', 'Left': 537.0, 'Top': 1389.0, 'Height': 48.0, 'Width': 154.0}], 'MaxHeight': 48.0, 'MinTop': 1389.0}, {'LineText': '641.00', 'Words': [{'WordText': '641.00', 'Left': 557.0, 'Top': 1442.0, 'Height': 46.0, 'Width': 134.0}], 'MaxHeight': 46.0, 'MinTop': 1442.0}, {'LineText': 'VATable', 'Words': [{'WordText': 'VATable', 'Left': 52.0, 'Top': 1546.0, 'Height': 40.0, 'Width': 157.0}], 'MaxHeight': 40.0, 'MinTop': 1546.0}, {'LineText': 'VAT_Tax', 'Words': [{'WordText': 'VAT_Tax', 'Left': 52.0, 'Top': 1598.0, 'Height': 50.0, 'Width': 157.0}], 'MaxHeight': 50.0, 'MinTop': 1598.0}, {'LineText': 'Zero_Rated', 'Words': [{'WordText': 'Zero_Rated', 'Left': 52.0, 'Top': 1649.0, 'Height': 48.0, 'Width': 219.0}], 'MaxHeight': 48.0, 'MinTop': 1649.0}, {'LineText': 'VAT_Exempted', 'Words': [{'WordText': 'VAT_Exempted', 'Left': 52.0, 'Top': 1699.0, 'Height': 50.0, 'Width': 264.0}], 'MaxHeight': 50.0, 'MinTop': 1699.0}, {'LineText': '320.54', 'Words': [{'WordText': '320.54', 'Left': 557.0, 'Top': 1546.0, 'Height': 46.0, 'Width': 134.0}], 'MaxHeight': 46.0, 'MinTop': 1546.0}, {'LineText': '38.46', 'Words': [{'WordText': '38.46', 'Left': 577.0, 'Top': 1598.0, 'Height': 43.0, 'Width': 114.0}], 'MaxHeight': 43.0, 'MinTop': 1598.0}, {'LineText': '0.00', 'Words': [{'WordText': '0.00', 'Left': 600.0, 'Top': 1651.0, 'Height': 42.0, 'Width': 91.0}], 'MaxHeight': 42.0, 'MinTop': 1651.0}, {'LineText': '0.00', 'Words': [{'WordText': '0.00', 'Left': 599.0, 'Top': 1702.0, 'Height': 43.0, 'Width': 95.0}], 'MaxHeight': 43.0, 'MinTop': 1702.0}, {'LineText': 'Sold To: 9906087698684', 'Words': [{'WordText': 'Sold', 'Left': 13.0, 'Top': 1803.0, 'Height': 42.0, 'Width': 94.0}, {'WordText': 'To', 'Left': 113.0, 'Top': 1803.0, 'Height': 42.0, 'Width': 79.0}, {'WordText': ':', 'Left': 113.0, 'Top': 1803.0, 'Height': 42.0, 'Width': 79.0}, {'WordText': '9906087698684', 'Left': 197.0, 'Top': 1803.0, 'Height': 42.0, 'Width': 285.0}], 'MaxHeight': 42.0, 'MinTop': 1803.0}, {'LineText': 'Name:', 'Words': [{'WordText': 'Name', 'Left': 10.0, 'Top': 1856.0, 'Height': 39.0, 'Width': 111.0}, {'WordText': ':', 'Left': 10.0, 'Top': 1856.0, 'Height': 39.0, 'Width': 111.0}], 'MaxHeight': 39.0, 'MinTop': 1856.0}, {'LineText': 'Address:', 'Words': [{'WordText': 'Address', 'Left': 13.0, 'Top': 1907.0, 'Height': 40.0, 'Width': 170.0}, {'WordText': ':', 'Left': 13.0, 'Top': 1907.0, 'Height': 40.0, 'Width': 170.0}], 'MaxHeight': 40.0, 'MinTop': 1907.0}, {'LineText': 'TIN:', 'Words': [{'WordText': 'TIN', 'Left': 13.0, 'Top': 1957.0, 'Height': 39.0, 'Width': 85.0}, {'WordText': ':', 'Left': 13.0, 'Top': 1957.0, 'Height': 39.0, 'Width': 85.0}], 'MaxHeight': 39.0, 'MinTop': 1957.0}, {'LineText': 'Philippine Seven Corporation', 'Words': [{'WordText': 'Philippine', 'Left': 10.0, 'Top': 2060.0, 'Height': 43.0, 'Width': 226.0}, {'WordText': 'Seven', 'Left': 241.0, 'Top': 2060.0, 'Height': 43.0, 'Width': 118.0}, {'WordText': 'Corporation', 'Left': 365.0, 'Top': 2060.0, 'Height': 43.0, 'Width': 241.0}], 'MaxHeight': 43.0, 'MinTop': 2060.0}, {'LineText': '7th Floor The Columbia Tower', 'Words': [{'WordText': '7th', 'Left': 13.0, 'Top': 2116.0, 'Height': 36.0, 'Width': 72.0}, {'WordText': 'Floor', 'Left': 90.0, 'Top': 2116.0, 'Height': 36.0, 'Width': 126.0}, {'WordText': 'The', 'Left': 220.0, 'Top': 2116.0, 'Height': 36.0, 'Width': 76.0}, {'WordText': 'Columbia', 'Left': 301.0, 'Top': 2116.0, 'Height': 36.0, 'Width': 189.0}, {'WordText': 'Tower', 'Left': 495.0, 'Top': 2116.0, 'Height': 36.0, 'Width': 108.0}], 'MaxHeight': 36.0, 'MinTop': 2116.0}, {'LineText': 'Ortigas Avenue, Mandaluyong', 'Words': [{'WordText': 'Ortigas', 'Left': 33.0, 'Top': 2161.0, 'Height': 49.0, 'Width': 154.0}, {'WordText': 'Avenue', 'Left': 192.0, 'Top': 2161.0, 'Height': 49.0, 'Width': 159.0}, {'WordText': ',', 'Left': 192.0, 'Top': 2161.0, 'Height': 49.0, 'Width': 159.0}, {'WordText': 'Mandaluyong', 'Left': 358.0, 'Top': 2161.0, 'Height': 49.0, 'Width': 248.0}], 'MaxHeight': 49.0, 'MinTop': 2161.0}, {'LineText': 'City', 'Words': [{'WordText': 'City', 'Left': 29.0, 'Top': 2214.0, 'Height': 42.0, 'Width': 94.0}], 'MaxHeight': 42.0, 'MinTop': 2214.0}, {'LineText': 'TIN: 000-390-189-000', 'Words': [{'WordText': 'TIN', 'Left': 13.0, 'Top': 2266.0, 'Height': 46.0, 'Width': 90.0}, {'WordText': ':', 'Left': 13.0, 'Top': 2266.0, 'Height': 46.0, 'Width': 90.0}, {'WordText': '000', 'Left': 109.0, 'Top': 2266.0, 'Height': 46.0, 'Width': 331.0}, {'WordText': '-', 'Left': 109.0, 'Top': 2266.0, 'Height': 46.0, 'Width': 331.0}, {'WordText': '390', 'Left': 109.0, 'Top': 2266.0, 'Height': 46.0, 'Width': 331.0}, {'WordText': '-', 'Left': 109.0, 'Top': 2266.0, 'Height': 46.0, 'Width': 331.0}, {'WordText': '189', 'Left': 109.0, 'Top': 2266.0, 'Height': 46.0, 'Width': 331.0}, {'WordText': '-', 'Left': 109.0, 'Top': 2266.0, 'Height': 46.0, 'Width': 331.0}, {'WordText': '000', 'Left': 109.0, 'Top': 2266.0, 'Height': 46.0, 'Width': 331.0}], 'MaxHeight': 46.0, 'MinTop': 2266.0}, {'LineText': 'BIR ACCI #', 'Words': [{'WordText': 'BIR', 'Left': 10.0, 'Top': 2318.0, 'Height': 39.0, 'Width': 78.0}, {'WordText': 'ACCI', 'Left': 93.0, 'Top': 2318.0, 'Height': 39.0, 'Width': 98.0}, {'WordText': '#', 'Left': 195.0, 'Top': 2318.0, 'Height': 39.0, 'Width': 30.0}], 'MaxHeight': 40.0, 'MinTop': 2318.0}, {'LineText': '116-000390189-000346 19602', 'Words': [{'WordText': '116', 'Left': 33.0, 'Top': 2366.0, 'Height': 43.0, 'Width': 430.0}, {'WordText': '-', 'Left': 33.0, 'Top': 2366.0, 'Height': 43.0, 'Width': 430.0}, {'WordText': '000390189', 'Left': 33.0, 'Top': 2366.0, 'Height': 43.0, 'Width': 430.0}, {'WordText': '-', 'Left': 33.0, 'Top': 2366.0, 'Height': 43.0, 'Width': 430.0}, {'WordText': '000346', 'Left': 33.0, 'Top': 2366.0, 'Height': 43.0, 'Width': 430.0}, {'WordText': '19602', 'Left': 468.0, 'Top': 2366.0, 'Height': 43.0, 'Width': 118.0}], 'MaxHeight': 43.0, 'MinTop': 2366.0}, {'LineText': 'AcciDate: 08/01/2020', 'Words': [{'WordText': 'AcciDate', 'Left': 13.0, 'Top': 2419.0, 'Height': 42.0, 'Width': 194.0}, {'WordText': ':', 'Left': 13.0, 'Top': 2419.0, 'Height': 42.0, 'Width': 194.0}, {'WordText': '08', 'Left': 212.0, 'Top': 2419.0, 'Height': 42.0, 'Width': 266.0}, {'WordText': '/', 'Left': 213.0, 'Top': 2419.0, 'Height': 42.0, 'Width': 266.0}, {'WordText': '01', 'Left': 212.0, 'Top': 2419.0, 'Height': 42.0, 'Width': 266.0}, {'WordText': '/', 'Left': 213.0, 'Top': 2419.0, 'Height': 42.0, 'Width': 266.0}, {'WordText': '2020', 'Left': 212.0, 'Top': 2419.0, 'Height': 42.0, 'Width': 266.0}], 'MaxHeight': 42.0, 'MinTop': 2419.0}, {'LineText': '07/31/2025', 'Words': [{'WordText': '07', 'Left': 29.0, 'Top': 2470.0, 'Height': 44.0, 'Width': 219.0}, {'WordText': '/', 'Left': 29.0, 'Top': 2470.0, 'Height': 44.0, 'Width': 219.0}, {'WordText': '31', 'Left': 29.0, 'Top': 2470.0, 'Height': 44.0, 'Width': 219.0}, {'WordText': '/', 'Left': 29.0, 'Top': 2470.0, 'Height': 44.0, 'Width': 219.0}, {'WordText': '2025', 'Left': 29.0, 'Top': 2470.0, 'Height': 44.0, 'Width': 219.0}], 'MaxHeight': 44.0, 'MinTop': 2470.0}, {'LineText': 'Permit #:', 'Words': [{'WordText': 'Permit', 'Left': 10.0, 'Top': 2526.0, 'Height': 40.0, 'Width': 142.0}, {'WordText': '#:', 'Left': 156.0, 'Top': 2527.0, 'Height': 39.0, 'Width': 46.0}], 'MaxHeight': 40.0, 'MinTop': 2526.0}, {'LineText': 'FP112018-074-0194656-00002', 'Words': [{'WordText': 'FP112018', 'Left': 33.0, 'Top': 2572.0, 'Height': 39.0, 'Width': 554.0}, {'WordText': '-', 'Left': 33.0, 'Top': 2572.0, 'Height': 39.0, 'Width': 554.0}, {'WordText': '074', 'Left': 33.0, 'Top': 2572.0, 'Height': 39.0, 'Width': 554.0}, {'WordText': '-', 'Left': 33.0, 'Top': 2572.0, 'Height': 39.0, 'Width': 554.0}, {'WordText': '0194656', 'Left': 33.0, 'Top': 2572.0, 'Height': 39.0, 'Width': 554.0}, {'WordText': '-', 'Left': 33.0, 'Top': 2572.0, 'Height': 39.0, 'Width': 554.0}, {'WordText': '00002', 'Left': 33.0, 'Top': 2572.0, 'Height': 39.0, 'Width': 554.0}], 'MaxHeight': 39.0, 'MinTop': 2572.0}, {'LineText': 'Get a chance to win a trip for', 'Words': [{'WordText': 'Get', 'Left': 29.0, 'Top': 2679.0, 'Height': 39.0, 'Width': 78.0}, {'WordText': 'a', 'Left': 112.0, 'Top': 2679.0, 'Height': 39.0, 'Width': 34.0}, {'WordText': 'chance', 'Left': 151.0, 'Top': 2679.0, 'Height': 39.0, 'Width': 146.0}, {'WordText': 'to', 'Left': 302.0, 'Top': 2679.0, 'Height': 39.0, 'Width': 54.0}, {'WordText': 'win', 'Left': 361.0, 'Top': 2679.0, 'Height': 39.0, 'Width': 83.0}, {'WordText': 'a', 'Left': 448.0, 'Top': 2679.0, 'Height': 39.0, 'Width': 34.0}, {'WordText': 'trip', 'Left': 487.0, 'Top': 2679.0, 'Height': 39.0, 'Width': 107.0}, {'WordText': 'for', 'Left': 599.0, 'Top': 2679.0, 'Height': 39.0, 'Width': 69.0}], 'MaxHeight': 39.0, 'MinTop': 2679.0}, {'LineText': '2 to Korea when you buy PISO', 'Words': [{'WordText': '2', 'Left': 52.0, 'Top': 2731.0, 'Height': 39.0, 'Width': 34.0}, {'WordText': 'to', 'Left': 91.0, 'Top': 2731.0, 'Height': 39.0, 'Width': 58.0}, {'WordText': 'Korea', 'Left': 154.0, 'Top': 2731.0, 'Height': 39.0, 'Width': 122.0}, {'WordText': 'when', 'Left': 281.0, 'Top': 2731.0, 'Height': 39.0, 'Width': 102.0}, {'WordText': 'you', 'Left': 388.0, 'Top': 2731.0, 'Height': 39.0, 'Width': 78.0}, {'WordText': 'buy', 'Left': 471.0, 'Top': 2731.0, 'Height': 39.0, 'Width': 78.0}, {'WordText': 'PISO', 'Left': 554.0, 'Top': 2731.0, 'Height': 39.0, 'Width': 91.0}], 'MaxHeight': 39.0, 'MinTop': 2731.0}, {'LineText': 'worth of 7-Eleven items. Earn', 'Words': [{'WordText': 'worth', 'Left': 29.0, 'Top': 2783.0, 'Height': 49.0, 'Width': 116.0}, {'WordText': 'of', 'Left': 152.0, 'Top': 2783.0, 'Height': 49.0, 'Width': 61.0}, {'WordText': '7', 'Left': 219.0, 'Top': 2783.0, 'Height': 49.0, 'Width': 184.0}, {'WordText': '-', 'Left': 219.0, 'Top': 2783.0, 'Height': 49.0, 'Width': 184.0}, {'WordText': 'Eleven', 'Left': 219.0, 'Top': 2783.0, 'Height': 49.0, 'Width': 184.0}, {'WordText': 'items', 'Left': 409.0, 'Top': 2783.0, 'Height': 49.0, 'Width': 135.0}, {'WordText': '.', 'Left': 409.0, 'Top': 2783.0, 'Height': 49.0, 'Width': 135.0}, {'WordText': 'Earn', 'Left': 550.0, 'Top': 2783.0, 'Height': 49.0, 'Width': 99.0}], 'MaxHeight': 49.0, 'MinTop': 2783.0}, {'LineText': '3 eRaffle entries when you buy', 'Words': [{'WordText': '3', 'Left': 29.0, 'Top': 2832.0, 'Height': 39.0, 'Width': 34.0}, {'WordText': 'eRaffle', 'Left': 68.0, 'Top': 2832.0, 'Height': 39.0, 'Width': 166.0}, {'WordText': 'entries', 'Left': 239.0, 'Top': 2832.0, 'Height': 39.0, 'Width': 161.0}, {'WordText': 'when', 'Left': 404.0, 'Top': 2832.0, 'Height': 39.0, 'Width': 102.0}, {'WordText': 'you', 'Left': 512.0, 'Top': 2832.0, 'Height': 39.0, 'Width': 78.0}, {'WordText': 'buy', 'Left': 594.0, 'Top': 2832.0, 'Height': 39.0, 'Width': 70.0}], 'MaxHeight': 39.0, 'MinTop': 2832.0}, {'LineText': 'discounted booster Items. Per', 'Words': [{'WordText': 'discounted', 'Left': 33.0, 'Top': 2888.0, 'Height': 42.0, 'Width': 221.0}, {'WordText': 'booster', 'Left': 259.0, 'Top': 2888.0, 'Height': 42.0, 'Width': 168.0}, {'WordText': 'Items', 'Left': 432.0, 'Top': 2888.0, 'Height': 42.0, 'Width': 137.0}, {'WordText': '.', 'Left': 432.0, 'Top': 2888.0, 'Height': 42.0, 'Width': 137.0}, {'WordText': 'Per', 'Left': 574.0, 'Top': 2888.0, 'Height': 42.0, 'Width': 68.0}], 'MaxHeight': 42.0, 'MinTop': 2888.0}, {'LineText': 'DTI FAIR TRADE Permit Number:', 'Words': [{'WordText': 'DTI', 'Left': 29.0, 'Top': 2933.0, 'Height': 42.0, 'Width': 78.0}, {'WordText': 'FAIR', 'Left': 113.0, 'Top': 2933.0, 'Height': 42.0, 'Width': 100.0}, {'WordText': 'TRADE', 'Left': 218.0, 'Top': 2933.0, 'Height': 42.0, 'Width': 121.0}, {'WordText': 'Permit', 'Left': 344.0, 'Top': 2933.0, 'Height': 42.0, 'Width': 142.0}, {'WordText': 'Number', 'Left': 491.0, 'Top': 2933.0, 'Height': 42.0, 'Width': 151.0}, {'WordText': ':', 'Left': 491.0, 'Top': 2933.0, 'Height': 42.0, 'Width': 151.0}], 'MaxHeight': 42.0, 'MinTop': 2933.0}, {'LineText': '163019 Series of 2023..', 'Words': [{'WordText': '163019', 'Left': 117.0, 'Top': 2988.0, 'Height': 40.0, 'Width': 135.0}, {'WordText': 'Series', 'Left': 257.0, 'Top': 2988.0, 'Height': 40.0, 'Width': 145.0}, {'WordText': 'of', 'Left': 407.0, 'Top': 2988.0, 'Height': 40.0, 'Width': 55.0}, {'WordText': '2023', 'Left': 467.0, 'Top': 2988.0, 'Height': 40.0, 'Width': 165.0}, {'WordText': '..', 'Left': 467.0, 'Top': 2988.0, 'Height': 40.0, 'Width': 165.0}], 'MaxHeight': 40.0, 'MinTop': 2988.0}, {'LineText': 'facebook.com/711philippines.', 'Words': [{'WordText': 'facebook.com', 'Left': 52.0, 'Top': 3037.0, 'Height': 42.0, 'Width': 590.0}, {'WordText': '/', 'Left': 52.0, 'Top': 3037.0, 'Height': 42.0, 'Width': 590.0}, {'WordText': '711philippines', 'Left': 52.0, 'Top': 3037.0, 'Height': 42.0, 'Width': 590.0}, {'WordText': '.', 'Left': 52.0, 'Top': 3037.0, 'Height': 42.0, 'Width': 590.0}], 'MaxHeight': 42.0, 'MinTop': 3037.0}, {'LineText': '- THIS IS AN OFFICIAL RECEIPT -', 'Words': [{'WordText': '-', 'Left': 0.0, 'Top': 3138.0, 'Height': 46.0, 'Width': 46.0}, {'WordText': 'THIS', 'Left': 52.0, 'Top': 3138.0, 'Height': 46.0, 'Width': 98.0}, {'WordText': 'IS', 'Left': 155.0, 'Top': 3138.0, 'Height': 46.0, 'Width': 57.0}, {'WordText': 'AN', 'Left': 219.0, 'Top': 3138.0, 'Height': 46.0, 'Width': 52.0}, {'WordText': 'OFFICIAL', 'Left': 276.0, 'Top': 3138.0, 'Height': 46.0, 'Width': 184.0}, {'WordText': 'RECEIPT', 'Left': 466.0, 'Top': 3138.0, 'Height': 46.0, 'Width': 167.0}, {'WordText': '-', 'Left': 638.0, 'Top': 3138.0, 'Height': 46.0, 'Width': 30.0}], 'MaxHeight': 46.0, 'MinTop': 3138.0}], 'HasOverlay': True}, 'TextOrientation': '0', 'FileParseExitCode': 1, 'ParsedText': '7-ELEVEN.\\nNHJ Convenience Store\\nOwned & Operated by: Nancy A.\\nClimacosa\\nVATREGTIN #933-598-685-002\\nPoblacion, Leon, Iloilo,\\nPhilippines\\nlel #: NULL\\n05/01/2023 (Mon) 23:00:57\\nRCPT #2481347\\nROPT CNTHO\\nSTORE#3058\\nSN# :XTI43170\\nMIN #: 18112011091411051\\nSTAFF: Angelica Duante\\n7FKoreanßun\\nNissinYaSaBeet77g\\nBBHOTDOGCREMYCHEES\\n39.00 Х 6\\nchocvron? in1Ch020g\\n15.00 X\\n2\\n55.004\\n40.000\\n234.000\\n30.000\\nTotal (10)\\nCASH\\nCHANGE\\n359.00\\n1000.00\\n641.00\\nVATable\\nVAT_Tax\\nZero_Rated\\nVAT_Exempted\\n320.54\\n38.46\\n0.00\\n0.00\\nSold To: 9906087698684\\nName:\\nAddress:\\nTIN:\\nPhilippine Seven Corporation\\n7th Floor The Columbia Tower\\nOrtigas Avenue, Mandaluyong\\nCity\\nTIN: 000-390-189-000\\nBIR ACCI #\\n116-000390189-000346 19602\\nAcciDate: 08/01/2020\\n07/31/2025\\nPermit #:\\nFP112018-074-0194656-00002\\nGet a chance to win a trip for\\n2 to Korea when you buy PISO\\nworth of 7-Eleven items. Earn\\n3 eRaffle entries when you buy\\ndiscounted booster Items. Per\\nDTI FAIR TRADE Permit Number:\\n163019 Series of 2023..\\nfacebook.com/711philippines.\\n- THIS IS AN OFFICIAL RECEIPT -', 'ErrorMessage': '', 'ErrorDetails': ''}], 'OCRExitCode': 1, 'IsErroredOnProcessing': False, 'ProcessingTimeInMilliseconds': '2593', 'SearchablePDFURL': 'Searchable PDF not generated as it was not requested.'}\n"
|
1243 |
+
]
|
1244 |
+
}
|
1245 |
+
],
|
1246 |
+
"source": [
|
1247 |
+
"# Import requests library\n",
|
1248 |
+
"import requests\n",
|
1249 |
+
"\n",
|
1250 |
+
"# Define the OCR API endpoint\n",
|
1251 |
+
"url = \"https://api.ocr.space/parse/image\"\n",
|
1252 |
+
"\n",
|
1253 |
+
"# Define the API key and the language\n",
|
1254 |
+
"api_key = \"K88232854988957\"\n",
|
1255 |
+
"language = \"eng\"\n",
|
1256 |
+
"\n",
|
1257 |
+
"# Define the image file path\n",
|
1258 |
+
"image_file = r\"C:\\Users\\Ayoo\\Desktop\\webapp\\predictions\\imgs\\20230508_122035.jpg\"\n",
|
1259 |
+
"\n",
|
1260 |
+
"# Open the image file as binary\n",
|
1261 |
+
"with open(image_file, \"rb\") as f:\n",
|
1262 |
+
" # Define the payload for the API request\n",
|
1263 |
+
" payload = {\n",
|
1264 |
+
" \"apikey\": api_key,\n",
|
1265 |
+
" \"language\": language,\n",
|
1266 |
+
" \"isOverlayRequired\": True, # Optional, set to True if you want the coordinates of the words\n",
|
1267 |
+
" \"OCREngine\": 2 # OCR Engine 2 for Layoutlmv3\n",
|
1268 |
+
" }\n",
|
1269 |
+
" # Define the file parameter for the API request\n",
|
1270 |
+
" file = {\n",
|
1271 |
+
" \"file\": f\n",
|
1272 |
+
" }\n",
|
1273 |
+
" # Send the POST request to the OCR API\n",
|
1274 |
+
" response = requests.post(url, data=payload, files=file)\n",
|
1275 |
+
"\n",
|
1276 |
+
"# Check the status code of the response\n",
|
1277 |
+
"if response.status_code == 200:\n",
|
1278 |
+
" # Parse the JSON response\n",
|
1279 |
+
" result = response.json()\n",
|
1280 |
+
" # Print the parsed text\n",
|
1281 |
+
" print(result)\n",
|
1282 |
+
"else:\n",
|
1283 |
+
" # Print the error message\n",
|
1284 |
+
" print(\"Error: \" + response.text)\n"
|
1285 |
+
]
|
1286 |
+
},
|
1287 |
+
{
|
1288 |
+
"cell_type": "code",
|
1289 |
+
"execution_count": 13,
|
1290 |
+
"metadata": {},
|
1291 |
+
"outputs": [
|
1292 |
+
{
|
1293 |
+
"ename": "TypeError",
|
1294 |
+
"evalue": "Object of type Response is not JSON serializable",
|
1295 |
+
"output_type": "error",
|
1296 |
+
"traceback": [
|
1297 |
+
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
|
1298 |
+
"\u001b[1;31mTypeError\u001b[0m Traceback (most recent call last)",
|
1299 |
+
"Cell \u001b[1;32mIn[13], line 4\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mjson\u001b[39;00m\n\u001b[0;32m 3\u001b[0m \u001b[38;5;66;03m# Assuming 'response' is the JSON response from the OCR API\u001b[39;00m\n\u001b[1;32m----> 4\u001b[0m \u001b[38;5;28mprint\u001b[39m(\u001b[43mjson\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mdumps\u001b[49m\u001b[43m(\u001b[49m\u001b[43mresponse\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mindent\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;241;43m4\u001b[39;49m\u001b[43m)\u001b[49m)\n",
|
1300 |
+
"File \u001b[1;32mc:\\Users\\Ayoo\\anaconda3\\envs\\mlenv\\Lib\\json\\__init__.py:238\u001b[0m, in \u001b[0;36mdumps\u001b[1;34m(obj, skipkeys, ensure_ascii, check_circular, allow_nan, cls, indent, separators, default, sort_keys, **kw)\u001b[0m\n\u001b[0;32m 232\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mcls\u001b[39m \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[0;32m 233\u001b[0m \u001b[38;5;28mcls\u001b[39m \u001b[38;5;241m=\u001b[39m JSONEncoder\n\u001b[0;32m 234\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43mcls\u001b[39;49m\u001b[43m(\u001b[49m\n\u001b[0;32m 235\u001b[0m \u001b[43m \u001b[49m\u001b[43mskipkeys\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mskipkeys\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mensure_ascii\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mensure_ascii\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 236\u001b[0m \u001b[43m \u001b[49m\u001b[43mcheck_circular\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mcheck_circular\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mallow_nan\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mallow_nan\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mindent\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mindent\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 237\u001b[0m \u001b[43m \u001b[49m\u001b[43mseparators\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mseparators\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mdefault\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mdefault\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43msort_keys\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43msort_keys\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m--> 238\u001b[0m \u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mkw\u001b[49m\u001b[43m)\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mencode\u001b[49m\u001b[43m(\u001b[49m\u001b[43mobj\u001b[49m\u001b[43m)\u001b[49m\n",
|
1301 |
+
"File \u001b[1;32mc:\\Users\\Ayoo\\anaconda3\\envs\\mlenv\\Lib\\json\\encoder.py:202\u001b[0m, in \u001b[0;36mJSONEncoder.encode\u001b[1;34m(self, o)\u001b[0m\n\u001b[0;32m 200\u001b[0m chunks \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39miterencode(o, _one_shot\u001b[38;5;241m=\u001b[39m\u001b[38;5;28;01mTrue\u001b[39;00m)\n\u001b[0;32m 201\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28misinstance\u001b[39m(chunks, (\u001b[38;5;28mlist\u001b[39m, \u001b[38;5;28mtuple\u001b[39m)):\n\u001b[1;32m--> 202\u001b[0m chunks \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mlist\u001b[39m(chunks)\n\u001b[0;32m 203\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;124m'\u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;241m.\u001b[39mjoin(chunks)\n",
|
1302 |
+
"File \u001b[1;32mc:\\Users\\Ayoo\\anaconda3\\envs\\mlenv\\Lib\\json\\encoder.py:439\u001b[0m, in \u001b[0;36m_make_iterencode.<locals>._iterencode\u001b[1;34m(o, _current_indent_level)\u001b[0m\n\u001b[0;32m 437\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mValueError\u001b[39;00m(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mCircular reference detected\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n\u001b[0;32m 438\u001b[0m markers[markerid] \u001b[38;5;241m=\u001b[39m o\n\u001b[1;32m--> 439\u001b[0m o \u001b[38;5;241m=\u001b[39m \u001b[43m_default\u001b[49m\u001b[43m(\u001b[49m\u001b[43mo\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 440\u001b[0m \u001b[38;5;28;01myield from\u001b[39;00m _iterencode(o, _current_indent_level)\n\u001b[0;32m 441\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m markers \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n",
|
1303 |
+
"File \u001b[1;32mc:\\Users\\Ayoo\\anaconda3\\envs\\mlenv\\Lib\\json\\encoder.py:180\u001b[0m, in \u001b[0;36mJSONEncoder.default\u001b[1;34m(self, o)\u001b[0m\n\u001b[0;32m 161\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mdefault\u001b[39m(\u001b[38;5;28mself\u001b[39m, o):\n\u001b[0;32m 162\u001b[0m \u001b[38;5;250m \u001b[39m\u001b[38;5;124;03m\"\"\"Implement this method in a subclass such that it returns\u001b[39;00m\n\u001b[0;32m 163\u001b[0m \u001b[38;5;124;03m a serializable object for ``o``, or calls the base implementation\u001b[39;00m\n\u001b[0;32m 164\u001b[0m \u001b[38;5;124;03m (to raise a ``TypeError``).\u001b[39;00m\n\u001b[1;32m (...)\u001b[0m\n\u001b[0;32m 178\u001b[0m \n\u001b[0;32m 179\u001b[0m \u001b[38;5;124;03m \"\"\"\u001b[39;00m\n\u001b[1;32m--> 180\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mTypeError\u001b[39;00m(\u001b[38;5;124mf\u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mObject of type \u001b[39m\u001b[38;5;132;01m{\u001b[39;00mo\u001b[38;5;241m.\u001b[39m\u001b[38;5;18m__class__\u001b[39m\u001b[38;5;241m.\u001b[39m\u001b[38;5;18m__name__\u001b[39m\u001b[38;5;132;01m}\u001b[39;00m\u001b[38;5;124m \u001b[39m\u001b[38;5;124m'\u001b[39m\n\u001b[0;32m 181\u001b[0m \u001b[38;5;124mf\u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mis not JSON serializable\u001b[39m\u001b[38;5;124m'\u001b[39m)\n",
|
1304 |
+
"\u001b[1;31mTypeError\u001b[0m: Object of type Response is not JSON serializable"
|
1305 |
+
]
|
1306 |
+
}
|
1307 |
+
],
|
1308 |
+
"source": [
|
1309 |
+
"import json\n",
|
1310 |
+
"\n",
|
1311 |
+
"# Assuming 'response' is the JSON response from the OCR API\n",
|
1312 |
+
"print(json.dumps(response, indent=4))\n"
|
1313 |
+
]
|
1314 |
+
}
|
1315 |
+
],
|
1316 |
+
"metadata": {
|
1317 |
+
"kernelspec": {
|
1318 |
+
"display_name": "mlenv",
|
1319 |
+
"language": "python",
|
1320 |
+
"name": "python3"
|
1321 |
+
},
|
1322 |
+
"language_info": {
|
1323 |
+
"codemirror_mode": {
|
1324 |
+
"name": "ipython",
|
1325 |
+
"version": 3
|
1326 |
+
},
|
1327 |
+
"file_extension": ".py",
|
1328 |
+
"mimetype": "text/x-python",
|
1329 |
+
"name": "python",
|
1330 |
+
"nbconvert_exporter": "python",
|
1331 |
+
"pygments_lexer": "ipython3",
|
1332 |
+
"version": "3.11.5"
|
1333 |
+
}
|
1334 |
+
},
|
1335 |
+
"nbformat": 4,
|
1336 |
+
"nbformat_minor": 2
|
1337 |
+
}
|
inferenced/csv_files/Output_0.csv
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
RECEIPTNUMBER,MERCHANTNAME,MERCHANTADDRESS,TRANSACTIONDATE,TRANSACTIONTIME,ITEMS,PRICE,TOTAL,VATTAX
|
2 |
+
# 1457229,7 - ELEVEN �,"Poblacion , Leon , Iloilo ,",05 / 01 / 2023 ( Mon ),16 : 54 : 23,NESTEALEMICET500ML,35.000,76.00,8.14
|
3 |
+
# 1457229,7 - ELEVEN �,"Poblacion , Leon , Iloilo ,",05 / 01 / 2023 ( Mon ),16 : 54 : 23,ArlaGStrwbryT200ml,41.000,76.00,8.14
|
inferenced/output.csv
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
RECEIPTNUMBER,MERCHANTNAME,MERCHANTADDRESS,TRANSACTIONDATE,TRANSACTIONTIME,ITEMS,PRICE,TOTAL,VATTAX
|
2 |
+
# 1457229,7 - ELEVEN �,"Poblacion , Leon , Iloilo ,",05 / 01 / 2023 ( Mon ),16 : 54 : 23,NESTEALEMICET500ML,35.000,76.00,8.14
|
3 |
+
# 1457229,7 - ELEVEN �,"Poblacion , Leon , Iloilo ,",05 / 01 / 2023 ( Mon ),16 : 54 : 23,ArlaGStrwbryT200ml,41.000,76.00,8.14
|
log/error_output.log
CHANGED
@@ -326,3 +326,322 @@ Traceback (most recent call last):
|
|
326 |
TypeError: The view function for 'create_csv' did not return a valid response. The function either returned None or ended without a return statement.
|
327 |
2024-02-22 17:02:51,766 INFO werkzeug 127.0.0.1 - - [22/Feb/2024 17:02:51] "[35m[1mGET /create_csv HTTP/1.1[0m" 500 -
|
328 |
2024-02-22 17:02:52,348 INFO werkzeug 127.0.0.1 - - [22/Feb/2024 17:02:52] "[33mGET /get_data HTTP/1.1[0m" 404 -
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
326 |
TypeError: The view function for 'create_csv' did not return a valid response. The function either returned None or ended without a return statement.
|
327 |
2024-02-22 17:02:51,766 INFO werkzeug 127.0.0.1 - - [22/Feb/2024 17:02:51] "[35m[1mGET /create_csv HTTP/1.1[0m" 500 -
|
328 |
2024-02-22 17:02:52,348 INFO werkzeug 127.0.0.1 - - [22/Feb/2024 17:02:52] "[33mGET /get_data HTTP/1.1[0m" 404 -
|
329 |
+
2024-05-14 23:17:20,132 ERROR app 'NoneType' object is not iterable
|
330 |
+
2024-05-14 23:17:20,132 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:17:20] "[32mGET /run_inference HTTP/1.1[0m" 302 -
|
331 |
+
2024-05-14 23:17:20,211 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:17:20] "[35m[1mGET /create_csv HTTP/1.1[0m" 500 -
|
332 |
+
2024-05-14 23:17:21,304 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:17:21] "[33mGET /static/temp/img_display/sample_coop.jpg_inference.jpg HTTP/1.1[0m" 404 -
|
333 |
+
2024-05-14 23:17:21,304 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:17:21] "[33mGET /get_data HTTP/1.1[0m" 404 -
|
334 |
+
2024-05-14 23:17:21,320 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:17:21] "[33mGET /static/temp/img_display/sample_711.jpg_inference.jpg HTTP/1.1[0m" 404 -
|
335 |
+
2024-05-14 23:17:21,320 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:17:21] "[33mGET /static/temp/img_display/sample_grace.jpg_inference.jpg HTTP/1.1[0m" 404 -
|
336 |
+
2024-05-14 23:17:21,335 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:17:21] "[33mGET /static/temp/img_display/sample1_711.jpg_inference.jpg HTTP/1.1[0m" 404 -
|
337 |
+
2024-05-14 23:17:21,367 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:17:21] "[33mGET /static/temp/img_display/sample1_grace.jpg_inference.jpg HTTP/1.1[0m" 404 -
|
338 |
+
2024-05-14 23:19:04,201 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:04] "[33mGET /static/temp/img_display/sample1_grace.jpg_inference.jpg HTTP/1.1[0m" 404 -
|
339 |
+
2024-05-14 23:19:06,397 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:06] "GET / HTTP/1.1" 200 -
|
340 |
+
2024-05-14 23:19:06,524 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:06] "[33mGET /styles.css HTTP/1.1[0m" 404 -
|
341 |
+
2024-05-14 23:19:06,659 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:06] "[36mGET /static/css/style.css HTTP/1.1[0m" 304 -
|
342 |
+
2024-05-14 23:19:06,712 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:06] "[36mGET /static/css/color.css HTTP/1.1[0m" 304 -
|
343 |
+
2024-05-14 23:19:06,719 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:06] "[36mGET /static/css/font-awesome.min.css HTTP/1.1[0m" 304 -
|
344 |
+
2024-05-14 23:19:06,723 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:06] "[36mGET /static/css/animate.css HTTP/1.1[0m" 304 -
|
345 |
+
2024-05-14 23:19:06,788 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:06] "[36mGET /static/images/logo.png HTTP/1.1[0m" 304 -
|
346 |
+
2024-05-14 23:19:06,825 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:06] "[36mGET /static/images/uplogo.gif HTTP/1.1[0m" 304 -
|
347 |
+
2024-05-14 23:19:06,869 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:06] "[36mGET /static/js/jquery.1.8.3.min.js HTTP/1.1[0m" 304 -
|
348 |
+
2024-05-14 23:19:06,875 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:06] "[36mGET /static/js/wow.min.js HTTP/1.1[0m" 304 -
|
349 |
+
2024-05-14 23:19:06,900 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:06] "[36mGET /static/js/featherlight.min.js HTTP/1.1[0m" 304 -
|
350 |
+
2024-05-14 23:19:06,950 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:06] "[36mGET /static/js/featherlight.gallery.min.js HTTP/1.1[0m" 304 -
|
351 |
+
2024-05-14 23:19:06,975 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:06] "[36mGET /static/js/jquery.enllax.min.js HTTP/1.1[0m" 304 -
|
352 |
+
2024-05-14 23:19:06,987 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:06] "[36mGET /static/js/jquery.scrollUp.min.js HTTP/1.1[0m" 304 -
|
353 |
+
2024-05-14 23:19:07,025 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:07] "[33mGET /static/static/js/jquery.stickyNavbar.min.js HTTP/1.1[0m" 404 -
|
354 |
+
2024-05-14 23:19:07,033 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:07] "[36mGET /static/js/jquery.easing.min.js HTTP/1.1[0m" 304 -
|
355 |
+
2024-05-14 23:19:07,074 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:07] "[36mGET /static/js/jquery.waypoints.min.js HTTP/1.1[0m" 304 -
|
356 |
+
2024-05-14 23:19:07,097 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:07] "[36mGET /static/js/images-loaded.min.js HTTP/1.1[0m" 304 -
|
357 |
+
2024-05-14 23:19:07,107 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:07] "[36mGET /static/js/lightbox.min.js HTTP/1.1[0m" 304 -
|
358 |
+
2024-05-14 23:19:07,139 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:07] "[36mGET /static/js/site.js HTTP/1.1[0m" 304 -
|
359 |
+
2024-05-14 23:19:07,946 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:07] "[36mGET /static/images/favicon.ico HTTP/1.1[0m" 304 -
|
360 |
+
2024-05-14 23:19:27,049 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:27] "[32mPOST /upload HTTP/1.1[0m" 302 -
|
361 |
+
2024-05-14 23:19:35,432 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:35] "GET /predict/%5B'sample_grace.jpg',%20'sample1_711.jpg',%20'sample1_grace.jpg'%5D HTTP/1.1" 200 -
|
362 |
+
2024-05-14 23:19:35,609 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:35] "[33mGET /predict/css/animate.css HTTP/1.1[0m" 404 -
|
363 |
+
2024-05-14 23:19:35,623 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:35] "[36mGET /static/css/style.css HTTP/1.1[0m" 304 -
|
364 |
+
2024-05-14 23:19:35,641 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:35] "[36mGET /static/css/color.css HTTP/1.1[0m" 304 -
|
365 |
+
2024-05-14 23:19:35,751 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:35] "[36mGET /static/css/font-awesome.min.css HTTP/1.1[0m" 304 -
|
366 |
+
2024-05-14 23:19:35,765 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:35] "GET /static/temp/img_display/sample1_711.jpg HTTP/1.1" 200 -
|
367 |
+
2024-05-14 23:19:35,780 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:35] "GET /static/temp/img_display/sample_grace.jpg HTTP/1.1" 200 -
|
368 |
+
2024-05-14 23:19:35,989 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:35] "[36mGET /static/js/jquery.1.8.3.min.js HTTP/1.1[0m" 304 -
|
369 |
+
2024-05-14 23:19:36,035 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:36] "[36mGET /static/images/logo.png HTTP/1.1[0m" 304 -
|
370 |
+
2024-05-14 23:19:36,089 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:36] "[36mGET /static/images/avatar.gif HTTP/1.1[0m" 304 -
|
371 |
+
2024-05-14 23:19:36,101 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:36] "GET /static/temp/img_display/sample1_grace.jpg HTTP/1.1" 200 -
|
372 |
+
2024-05-14 23:19:36,191 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:36] "[36mGET /static/js/wow.min.js HTTP/1.1[0m" 304 -
|
373 |
+
2024-05-14 23:19:36,201 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:36] "[36mGET /static/js/featherlight.min.js HTTP/1.1[0m" 304 -
|
374 |
+
2024-05-14 23:19:36,230 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:36] "[36mGET /static/js/featherlight.gallery.min.js HTTP/1.1[0m" 304 -
|
375 |
+
2024-05-14 23:19:36,264 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:36] "[36mGET /static/js/jquery.enllax.min.js HTTP/1.1[0m" 304 -
|
376 |
+
2024-05-14 23:19:36,299 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:36] "[36mGET /static/js/jquery.scrollUp.min.js HTTP/1.1[0m" 304 -
|
377 |
+
2024-05-14 23:19:36,340 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:36] "[36mGET /static/js/jquery.easing.min.js HTTP/1.1[0m" 304 -
|
378 |
+
2024-05-14 23:19:36,350 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:36] "[36mGET /static/js/jquery.stickyNavbar.min.js HTTP/1.1[0m" 304 -
|
379 |
+
2024-05-14 23:19:36,386 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:36] "[36mGET /static/js/jquery.waypoints.min.js HTTP/1.1[0m" 304 -
|
380 |
+
2024-05-14 23:19:36,398 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:36] "[36mGET /static/js/images-loaded.min.js HTTP/1.1[0m" 304 -
|
381 |
+
2024-05-14 23:19:36,451 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:36] "[36mGET /static/js/lightbox.min.js HTTP/1.1[0m" 304 -
|
382 |
+
2024-05-14 23:19:36,538 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:36] "[36mGET /static/js/site.js HTTP/1.1[0m" 304 -
|
383 |
+
2024-05-14 23:19:37,526 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:19:37] "[36mGET /static/images/favicon.ico HTTP/1.1[0m" 304 -
|
384 |
+
2024-05-14 23:21:37,313 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:21:37] "[32mGET /run_inference HTTP/1.1[0m" 302 -
|
385 |
+
2024-05-14 23:21:37,413 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:21:37] "[35m[1mGET /create_csv HTTP/1.1[0m" 204 -
|
386 |
+
2024-05-14 23:21:38,013 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:21:38] "GET /get_data HTTP/1.1" 200 -
|
387 |
+
2024-05-14 23:21:38,068 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:21:38] "GET /static/temp/img_display/sample_grace.jpg_inference.jpg HTTP/1.1" 200 -
|
388 |
+
2024-05-14 23:21:38,119 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:21:38] "GET /static/temp/img_display/sample1_711.jpg_inference.jpg HTTP/1.1" 200 -
|
389 |
+
2024-05-14 23:21:38,197 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:21:38] "GET /static/temp/img_display/sample1_grace.jpg_inference.jpg HTTP/1.1" 200 -
|
390 |
+
2024-05-14 23:28:11,969 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:28:11] "GET / HTTP/1.1" 200 -
|
391 |
+
2024-05-14 23:28:12,118 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:28:12] "[33mGET /styles.css HTTP/1.1[0m" 404 -
|
392 |
+
2024-05-14 23:28:12,143 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:28:12] "[36mGET /static/css/style.css HTTP/1.1[0m" 304 -
|
393 |
+
2024-05-14 23:28:12,211 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:28:12] "[36mGET /static/css/color.css HTTP/1.1[0m" 304 -
|
394 |
+
2024-05-14 23:28:12,277 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:28:12] "[36mGET /static/css/font-awesome.min.css HTTP/1.1[0m" 304 -
|
395 |
+
2024-05-14 23:28:12,338 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:28:12] "[36mGET /static/images/logo.png HTTP/1.1[0m" 304 -
|
396 |
+
2024-05-14 23:28:12,341 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:28:12] "[36mGET /static/css/animate.css HTTP/1.1[0m" 304 -
|
397 |
+
2024-05-14 23:28:12,488 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:28:12] "[36mGET /static/images/uplogo.gif HTTP/1.1[0m" 304 -
|
398 |
+
2024-05-14 23:28:12,500 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:28:12] "[36mGET /static/js/jquery.1.8.3.min.js HTTP/1.1[0m" 304 -
|
399 |
+
2024-05-14 23:28:12,526 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:28:12] "[36mGET /static/js/wow.min.js HTTP/1.1[0m" 304 -
|
400 |
+
2024-05-14 23:28:12,541 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:28:12] "[36mGET /static/js/featherlight.min.js HTTP/1.1[0m" 304 -
|
401 |
+
2024-05-14 23:28:12,583 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:28:12] "[36mGET /static/js/featherlight.gallery.min.js HTTP/1.1[0m" 304 -
|
402 |
+
2024-05-14 23:28:12,589 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:28:12] "[36mGET /static/js/jquery.enllax.min.js HTTP/1.1[0m" 304 -
|
403 |
+
2024-05-14 23:28:12,698 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:28:12] "[36mGET /static/js/jquery.scrollUp.min.js HTTP/1.1[0m" 304 -
|
404 |
+
2024-05-14 23:28:12,738 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:28:12] "[33mGET /static/static/js/jquery.stickyNavbar.min.js HTTP/1.1[0m" 404 -
|
405 |
+
2024-05-14 23:28:12,741 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:28:12] "[36mGET /static/js/jquery.easing.min.js HTTP/1.1[0m" 304 -
|
406 |
+
2024-05-14 23:28:12,763 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:28:12] "[36mGET /static/js/jquery.waypoints.min.js HTTP/1.1[0m" 304 -
|
407 |
+
2024-05-14 23:28:12,773 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:28:12] "[36mGET /static/js/images-loaded.min.js HTTP/1.1[0m" 304 -
|
408 |
+
2024-05-14 23:28:12,786 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:28:12] "[36mGET /static/js/lightbox.min.js HTTP/1.1[0m" 304 -
|
409 |
+
2024-05-14 23:28:12,834 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:28:12] "[36mGET /static/js/site.js HTTP/1.1[0m" 304 -
|
410 |
+
2024-05-14 23:28:14,617 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:28:14] "[36mGET /static/images/favicon.ico HTTP/1.1[0m" 304 -
|
411 |
+
2024-05-14 23:29:07,771 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:07] "[32mPOST /upload HTTP/1.1[0m" 302 -
|
412 |
+
2024-05-14 23:29:11,451 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:11] "GET /predict/%5B'Screenshot_22.png'%5D HTTP/1.1" 200 -
|
413 |
+
2024-05-14 23:29:11,635 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:11] "[33mGET /predict/css/animate.css HTTP/1.1[0m" 404 -
|
414 |
+
2024-05-14 23:29:11,661 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:11] "GET /static/temp/img_display/Screenshot_22.png HTTP/1.1" 200 -
|
415 |
+
2024-05-14 23:29:11,764 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:11] "[36mGET /static/css/color.css HTTP/1.1[0m" 304 -
|
416 |
+
2024-05-14 23:29:11,784 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:11] "[36mGET /static/css/style.css HTTP/1.1[0m" 304 -
|
417 |
+
2024-05-14 23:29:11,797 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:11] "[36mGET /static/css/font-awesome.min.css HTTP/1.1[0m" 304 -
|
418 |
+
2024-05-14 23:29:11,947 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:11] "[36mGET /static/images/logo.png HTTP/1.1[0m" 304 -
|
419 |
+
2024-05-14 23:29:12,120 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:12] "[36mGET /static/images/avatar.gif HTTP/1.1[0m" 304 -
|
420 |
+
2024-05-14 23:29:12,175 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:12] "[36mGET /static/js/featherlight.gallery.min.js HTTP/1.1[0m" 304 -
|
421 |
+
2024-05-14 23:29:12,283 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:12] "[36mGET /static/js/jquery.1.8.3.min.js HTTP/1.1[0m" 304 -
|
422 |
+
2024-05-14 23:29:12,285 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:12] "[36mGET /static/js/wow.min.js HTTP/1.1[0m" 304 -
|
423 |
+
2024-05-14 23:29:12,307 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:12] "[36mGET /static/js/featherlight.min.js HTTP/1.1[0m" 304 -
|
424 |
+
2024-05-14 23:29:12,344 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:12] "[36mGET /static/js/jquery.enllax.min.js HTTP/1.1[0m" 304 -
|
425 |
+
2024-05-14 23:29:12,391 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:12] "[36mGET /static/js/jquery.scrollUp.min.js HTTP/1.1[0m" 304 -
|
426 |
+
2024-05-14 23:29:12,459 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:12] "[36mGET /static/js/jquery.easing.min.js HTTP/1.1[0m" 304 -
|
427 |
+
2024-05-14 23:29:12,503 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:12] "[36mGET /static/js/images-loaded.min.js HTTP/1.1[0m" 304 -
|
428 |
+
2024-05-14 23:29:12,538 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:12] "[36mGET /static/js/jquery.waypoints.min.js HTTP/1.1[0m" 304 -
|
429 |
+
2024-05-14 23:29:12,547 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:12] "[36mGET /static/js/jquery.stickyNavbar.min.js HTTP/1.1[0m" 304 -
|
430 |
+
2024-05-14 23:29:12,563 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:12] "[36mGET /static/js/lightbox.min.js HTTP/1.1[0m" 304 -
|
431 |
+
2024-05-14 23:29:12,595 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:12] "[36mGET /static/js/site.js HTTP/1.1[0m" 304 -
|
432 |
+
2024-05-14 23:29:13,408 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:13] "[36mGET /static/images/favicon.ico HTTP/1.1[0m" 304 -
|
433 |
+
2024-05-14 23:29:16,302 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:16] "GET / HTTP/1.1" 200 -
|
434 |
+
2024-05-14 23:29:16,446 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:16] "[36mGET /static/css/style.css HTTP/1.1[0m" 304 -
|
435 |
+
2024-05-14 23:29:16,521 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:16] "[36mGET /static/css/animate.css HTTP/1.1[0m" 304 -
|
436 |
+
2024-05-14 23:29:16,540 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:16] "[36mGET /static/css/font-awesome.min.css HTTP/1.1[0m" 304 -
|
437 |
+
2024-05-14 23:29:16,636 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:16] "[36mGET /static/css/color.css HTTP/1.1[0m" 304 -
|
438 |
+
2024-05-14 23:29:16,678 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:16] "[36mGET /static/images/logo.png HTTP/1.1[0m" 304 -
|
439 |
+
2024-05-14 23:29:16,693 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:16] "[36mGET /static/js/jquery.1.8.3.min.js HTTP/1.1[0m" 304 -
|
440 |
+
2024-05-14 23:29:16,727 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:16] "[33mGET /styles.css HTTP/1.1[0m" 404 -
|
441 |
+
2024-05-14 23:29:16,761 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:16] "[36mGET /static/js/wow.min.js HTTP/1.1[0m" 304 -
|
442 |
+
2024-05-14 23:29:16,794 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:16] "[36mGET /static/js/featherlight.min.js HTTP/1.1[0m" 304 -
|
443 |
+
2024-05-14 23:29:16,844 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:16] "[36mGET /static/images/uplogo.gif HTTP/1.1[0m" 304 -
|
444 |
+
2024-05-14 23:29:16,971 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:16] "[36mGET /static/js/featherlight.gallery.min.js HTTP/1.1[0m" 304 -
|
445 |
+
2024-05-14 23:29:16,975 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:16] "[36mGET /static/js/jquery.enllax.min.js HTTP/1.1[0m" 304 -
|
446 |
+
2024-05-14 23:29:17,096 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:17] "[36mGET /static/js/jquery.scrollUp.min.js HTTP/1.1[0m" 304 -
|
447 |
+
2024-05-14 23:29:17,146 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:17] "[36mGET /static/js/jquery.easing.min.js HTTP/1.1[0m" 304 -
|
448 |
+
2024-05-14 23:29:17,164 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:17] "[33mGET /static/static/js/jquery.stickyNavbar.min.js HTTP/1.1[0m" 404 -
|
449 |
+
2024-05-14 23:29:17,176 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:17] "[36mGET /static/js/jquery.waypoints.min.js HTTP/1.1[0m" 304 -
|
450 |
+
2024-05-14 23:29:17,238 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:17] "[36mGET /static/js/images-loaded.min.js HTTP/1.1[0m" 304 -
|
451 |
+
2024-05-14 23:29:17,242 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:17] "[36mGET /static/js/lightbox.min.js HTTP/1.1[0m" 304 -
|
452 |
+
2024-05-14 23:29:17,250 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:17] "[36mGET /static/js/site.js HTTP/1.1[0m" 304 -
|
453 |
+
2024-05-14 23:29:17,920 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:17] "[36mGET /static/images/favicon.ico HTTP/1.1[0m" 304 -
|
454 |
+
2024-05-14 23:29:26,116 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:26] "[32mPOST /upload HTTP/1.1[0m" 302 -
|
455 |
+
2024-05-14 23:29:30,688 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:30] "GET /predict/%5B'Screenshot_24.png'%5D HTTP/1.1" 200 -
|
456 |
+
2024-05-14 23:29:30,889 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:30] "[36mGET /static/css/style.css HTTP/1.1[0m" 304 -
|
457 |
+
2024-05-14 23:29:30,926 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:30] "[36mGET /static/css/color.css HTTP/1.1[0m" 304 -
|
458 |
+
2024-05-14 23:29:30,958 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:30] "[36mGET /static/css/font-awesome.min.css HTTP/1.1[0m" 304 -
|
459 |
+
2024-05-14 23:29:31,008 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:31] "GET /static/temp/img_display/Screenshot_24.png HTTP/1.1" 200 -
|
460 |
+
2024-05-14 23:29:31,106 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:31] "[36mGET /static/images/logo.png HTTP/1.1[0m" 304 -
|
461 |
+
2024-05-14 23:29:31,125 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:31] "[33mGET /predict/css/animate.css HTTP/1.1[0m" 404 -
|
462 |
+
2024-05-14 23:29:31,318 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:31] "[36mGET /static/images/avatar.gif HTTP/1.1[0m" 304 -
|
463 |
+
2024-05-14 23:29:31,332 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:31] "[36mGET /static/js/jquery.enllax.min.js HTTP/1.1[0m" 304 -
|
464 |
+
2024-05-14 23:29:31,398 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:31] "[36mGET /static/js/featherlight.gallery.min.js HTTP/1.1[0m" 304 -
|
465 |
+
2024-05-14 23:29:31,459 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:31] "[36mGET /static/js/featherlight.min.js HTTP/1.1[0m" 304 -
|
466 |
+
2024-05-14 23:29:31,487 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:31] "[36mGET /static/js/wow.min.js HTTP/1.1[0m" 304 -
|
467 |
+
2024-05-14 23:29:31,526 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:31] "[36mGET /static/js/jquery.1.8.3.min.js HTTP/1.1[0m" 304 -
|
468 |
+
2024-05-14 23:29:31,606 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:31] "[36mGET /static/js/jquery.scrollUp.min.js HTTP/1.1[0m" 304 -
|
469 |
+
2024-05-14 23:29:31,643 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:31] "[36mGET /static/js/jquery.easing.min.js HTTP/1.1[0m" 304 -
|
470 |
+
2024-05-14 23:29:31,688 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:31] "[36mGET /static/js/jquery.stickyNavbar.min.js HTTP/1.1[0m" 304 -
|
471 |
+
2024-05-14 23:29:31,729 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:31] "[36mGET /static/js/jquery.waypoints.min.js HTTP/1.1[0m" 304 -
|
472 |
+
2024-05-14 23:29:31,760 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:31] "[36mGET /static/js/images-loaded.min.js HTTP/1.1[0m" 304 -
|
473 |
+
2024-05-14 23:29:31,795 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:31] "[36mGET /static/js/lightbox.min.js HTTP/1.1[0m" 304 -
|
474 |
+
2024-05-14 23:29:31,813 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:31] "[36mGET /static/js/site.js HTTP/1.1[0m" 304 -
|
475 |
+
2024-05-14 23:29:32,091 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:32] "[36mGET /static/images/favicon.ico HTTP/1.1[0m" 304 -
|
476 |
+
2024-05-14 23:29:33,924 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:33] "GET / HTTP/1.1" 200 -
|
477 |
+
2024-05-14 23:29:34,375 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:34] "[36mGET /static/css/style.css HTTP/1.1[0m" 304 -
|
478 |
+
2024-05-14 23:29:34,551 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:34] "[36mGET /static/css/color.css HTTP/1.1[0m" 304 -
|
479 |
+
2024-05-14 23:29:34,606 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:34] "[36mGET /static/css/font-awesome.min.css HTTP/1.1[0m" 304 -
|
480 |
+
2024-05-14 23:29:34,641 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:34] "[36mGET /static/css/animate.css HTTP/1.1[0m" 304 -
|
481 |
+
2024-05-14 23:29:34,873 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:34] "[33mGET /styles.css HTTP/1.1[0m" 404 -
|
482 |
+
2024-05-14 23:29:34,994 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:34] "[36mGET /static/images/logo.png HTTP/1.1[0m" 304 -
|
483 |
+
2024-05-14 23:29:35,156 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:35] "[36mGET /static/images/uplogo.gif HTTP/1.1[0m" 304 -
|
484 |
+
2024-05-14 23:29:35,181 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:35] "[36mGET /static/js/jquery.1.8.3.min.js HTTP/1.1[0m" 304 -
|
485 |
+
2024-05-14 23:29:35,209 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:35] "[36mGET /static/js/wow.min.js HTTP/1.1[0m" 304 -
|
486 |
+
2024-05-14 23:29:35,243 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:35] "[36mGET /static/js/featherlight.min.js HTTP/1.1[0m" 304 -
|
487 |
+
2024-05-14 23:29:35,293 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:35] "[36mGET /static/js/featherlight.gallery.min.js HTTP/1.1[0m" 304 -
|
488 |
+
2024-05-14 23:29:35,398 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:35] "[36mGET /static/js/jquery.enllax.min.js HTTP/1.1[0m" 304 -
|
489 |
+
2024-05-14 23:29:35,424 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:35] "[36mGET /static/js/jquery.scrollUp.min.js HTTP/1.1[0m" 304 -
|
490 |
+
2024-05-14 23:29:35,457 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:35] "[36mGET /static/js/jquery.easing.min.js HTTP/1.1[0m" 304 -
|
491 |
+
2024-05-14 23:29:35,537 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:35] "[33mGET /static/static/js/jquery.stickyNavbar.min.js HTTP/1.1[0m" 404 -
|
492 |
+
2024-05-14 23:29:35,546 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:35] "[36mGET /static/js/jquery.waypoints.min.js HTTP/1.1[0m" 304 -
|
493 |
+
2024-05-14 23:29:35,554 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:35] "[36mGET /static/js/images-loaded.min.js HTTP/1.1[0m" 304 -
|
494 |
+
2024-05-14 23:29:35,579 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:35] "[36mGET /static/js/lightbox.min.js HTTP/1.1[0m" 304 -
|
495 |
+
2024-05-14 23:29:35,610 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:35] "[36mGET /static/js/site.js HTTP/1.1[0m" 304 -
|
496 |
+
2024-05-14 23:29:36,187 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:29:36] "[36mGET /static/images/favicon.ico HTTP/1.1[0m" 304 -
|
497 |
+
2024-05-14 23:30:51,152 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:30:51] "[32mPOST /upload HTTP/1.1[0m" 302 -
|
498 |
+
2024-05-14 23:30:58,321 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:30:58] "GET /predict/%5B'images.png',%20'sample_711.jpg',%20'sample_coop.jpg'%5D HTTP/1.1" 200 -
|
499 |
+
2024-05-14 23:30:58,535 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:30:58] "[33mGET /predict/css/animate.css HTTP/1.1[0m" 404 -
|
500 |
+
2024-05-14 23:30:58,535 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:30:58] "[36mGET /static/css/style.css HTTP/1.1[0m" 304 -
|
501 |
+
2024-05-14 23:30:58,553 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:30:58] "GET /static/temp/img_display/images.png HTTP/1.1" 200 -
|
502 |
+
2024-05-14 23:30:58,586 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:30:58] "[36mGET /static/css/color.css HTTP/1.1[0m" 304 -
|
503 |
+
2024-05-14 23:30:58,628 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:30:58] "[36mGET /static/css/font-awesome.min.css HTTP/1.1[0m" 304 -
|
504 |
+
2024-05-14 23:30:58,745 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:30:58] "GET /static/temp/img_display/sample_711.jpg HTTP/1.1" 200 -
|
505 |
+
2024-05-14 23:30:58,887 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:30:58] "GET /static/temp/img_display/sample_coop.jpg HTTP/1.1" 200 -
|
506 |
+
2024-05-14 23:30:58,968 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:30:58] "[36mGET /static/js/jquery.1.8.3.min.js HTTP/1.1[0m" 304 -
|
507 |
+
2024-05-14 23:30:58,974 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:30:58] "[36mGET /static/images/logo.png HTTP/1.1[0m" 304 -
|
508 |
+
2024-05-14 23:30:58,987 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:30:58] "[36mGET /static/images/avatar.gif HTTP/1.1[0m" 304 -
|
509 |
+
2024-05-14 23:30:58,996 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:30:58] "[36mGET /static/js/wow.min.js HTTP/1.1[0m" 304 -
|
510 |
+
2024-05-14 23:30:59,143 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:30:59] "[36mGET /static/js/jquery.enllax.min.js HTTP/1.1[0m" 304 -
|
511 |
+
2024-05-14 23:30:59,149 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:30:59] "[36mGET /static/js/featherlight.min.js HTTP/1.1[0m" 304 -
|
512 |
+
2024-05-14 23:30:59,150 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:30:59] "[36mGET /static/js/featherlight.gallery.min.js HTTP/1.1[0m" 304 -
|
513 |
+
2024-05-14 23:30:59,156 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:30:59] "[36mGET /static/js/jquery.scrollUp.min.js HTTP/1.1[0m" 304 -
|
514 |
+
2024-05-14 23:30:59,181 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:30:59] "[36mGET /static/js/jquery.easing.min.js HTTP/1.1[0m" 304 -
|
515 |
+
2024-05-14 23:30:59,295 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:30:59] "[36mGET /static/js/jquery.stickyNavbar.min.js HTTP/1.1[0m" 304 -
|
516 |
+
2024-05-14 23:30:59,309 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:30:59] "[36mGET /static/js/jquery.waypoints.min.js HTTP/1.1[0m" 304 -
|
517 |
+
2024-05-14 23:30:59,317 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:30:59] "[36mGET /static/js/lightbox.min.js HTTP/1.1[0m" 304 -
|
518 |
+
2024-05-14 23:30:59,393 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:30:59] "[36mGET /static/js/images-loaded.min.js HTTP/1.1[0m" 304 -
|
519 |
+
2024-05-14 23:30:59,403 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:30:59] "[36mGET /static/js/site.js HTTP/1.1[0m" 304 -
|
520 |
+
2024-05-14 23:31:00,089 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:31:00] "[36mGET /static/images/favicon.ico HTTP/1.1[0m" 304 -
|
521 |
+
2024-05-14 23:31:12,060 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:31:12] "GET / HTTP/1.1" 200 -
|
522 |
+
2024-05-14 23:31:12,238 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:31:12] "[33mGET /styles.css HTTP/1.1[0m" 404 -
|
523 |
+
2024-05-14 23:31:12,310 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:31:12] "[36mGET /static/css/style.css HTTP/1.1[0m" 304 -
|
524 |
+
2024-05-14 23:31:12,324 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:31:12] "[36mGET /static/css/color.css HTTP/1.1[0m" 304 -
|
525 |
+
2024-05-14 23:31:12,342 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:31:12] "[36mGET /static/images/logo.png HTTP/1.1[0m" 304 -
|
526 |
+
2024-05-14 23:31:12,397 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:31:12] "[36mGET /static/css/font-awesome.min.css HTTP/1.1[0m" 304 -
|
527 |
+
2024-05-14 23:31:12,408 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:31:12] "[36mGET /static/css/animate.css HTTP/1.1[0m" 304 -
|
528 |
+
2024-05-14 23:31:12,469 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:31:12] "[36mGET /static/images/uplogo.gif HTTP/1.1[0m" 304 -
|
529 |
+
2024-05-14 23:31:12,514 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:31:12] "[36mGET /static/js/jquery.1.8.3.min.js HTTP/1.1[0m" 304 -
|
530 |
+
2024-05-14 23:31:12,529 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:31:12] "[36mGET /static/js/wow.min.js HTTP/1.1[0m" 304 -
|
531 |
+
2024-05-14 23:31:12,558 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:31:12] "[36mGET /static/js/featherlight.min.js HTTP/1.1[0m" 304 -
|
532 |
+
2024-05-14 23:31:12,629 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:31:12] "[36mGET /static/js/featherlight.gallery.min.js HTTP/1.1[0m" 304 -
|
533 |
+
2024-05-14 23:31:12,631 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:31:12] "[36mGET /static/js/jquery.enllax.min.js HTTP/1.1[0m" 304 -
|
534 |
+
2024-05-14 23:31:12,641 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:31:12] "[36mGET /static/js/jquery.scrollUp.min.js HTTP/1.1[0m" 304 -
|
535 |
+
2024-05-14 23:31:12,669 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:31:12] "[36mGET /static/js/jquery.easing.min.js HTTP/1.1[0m" 304 -
|
536 |
+
2024-05-14 23:31:12,721 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:31:12] "[33mGET /static/static/js/jquery.stickyNavbar.min.js HTTP/1.1[0m" 404 -
|
537 |
+
2024-05-14 23:31:12,748 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:31:12] "[36mGET /static/js/jquery.waypoints.min.js HTTP/1.1[0m" 304 -
|
538 |
+
2024-05-14 23:31:12,795 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:31:12] "[36mGET /static/js/lightbox.min.js HTTP/1.1[0m" 304 -
|
539 |
+
2024-05-14 23:31:12,803 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:31:12] "[36mGET /static/js/images-loaded.min.js HTTP/1.1[0m" 304 -
|
540 |
+
2024-05-14 23:31:12,810 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:31:12] "[36mGET /static/js/site.js HTTP/1.1[0m" 304 -
|
541 |
+
2024-05-14 23:31:13,327 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:31:13] "[36mGET /static/images/favicon.ico HTTP/1.1[0m" 304 -
|
542 |
+
2024-05-14 23:31:53,017 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:31:53] "[32mPOST /upload HTTP/1.1[0m" 302 -
|
543 |
+
2024-05-14 23:31:53,356 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:31:53] "[35m[1mGET /predict/%5B%5D HTTP/1.1[0m" 500 -
|
544 |
+
2024-05-14 23:31:55,576 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:31:55] "GET /predict/%5B%5D?__debugger__=yes&cmd=resource&f=style.css HTTP/1.1" 200 -
|
545 |
+
2024-05-14 23:31:55,580 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:31:55] "GET /predict/%5B%5D?__debugger__=yes&cmd=resource&f=debugger.js HTTP/1.1" 200 -
|
546 |
+
2024-05-14 23:31:55,844 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:31:55] "GET /predict/%5B%5D?__debugger__=yes&cmd=resource&f=console.png HTTP/1.1" 200 -
|
547 |
+
2024-05-14 23:31:56,026 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:31:56] "[36mGET /predict/%5B%5D?__debugger__=yes&cmd=resource&f=console.png HTTP/1.1[0m" 304 -
|
548 |
+
2024-05-14 23:32:36,479 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:32:36] "[33mGET /styles.css HTTP/1.1[0m" 404 -
|
549 |
+
2024-05-14 23:32:39,383 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:32:39] "[36mGET /static/images/favicon.ico HTTP/1.1[0m" 304 -
|
550 |
+
2024-05-14 23:32:52,950 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:32:52] "[32mPOST /upload HTTP/1.1[0m" 302 -
|
551 |
+
2024-05-14 23:32:55,357 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:32:55] "GET /predict/%5B'images.png'%5D HTTP/1.1" 200 -
|
552 |
+
2024-05-14 23:32:55,513 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:32:55] "[33mGET /predict/css/animate.css HTTP/1.1[0m" 404 -
|
553 |
+
2024-05-14 23:32:55,585 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:32:55] "[36mGET /static/css/style.css HTTP/1.1[0m" 304 -
|
554 |
+
2024-05-14 23:32:55,654 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:32:55] "[36mGET /static/css/color.css HTTP/1.1[0m" 304 -
|
555 |
+
2024-05-14 23:32:55,711 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:32:55] "[36mGET /static/images/logo.png HTTP/1.1[0m" 304 -
|
556 |
+
2024-05-14 23:32:55,712 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:32:55] "[36mGET /static/css/font-awesome.min.css HTTP/1.1[0m" 304 -
|
557 |
+
2024-05-14 23:32:55,772 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:32:55] "GET /static/temp/img_display/images.png HTTP/1.1" 200 -
|
558 |
+
2024-05-14 23:32:55,991 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:32:55] "[36mGET /static/js/jquery.1.8.3.min.js HTTP/1.1[0m" 304 -
|
559 |
+
2024-05-14 23:32:56,106 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:32:56] "[36mGET /static/js/wow.min.js HTTP/1.1[0m" 304 -
|
560 |
+
2024-05-14 23:32:56,129 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:32:56] "[36mGET /static/js/featherlight.min.js HTTP/1.1[0m" 304 -
|
561 |
+
2024-05-14 23:32:56,177 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:32:56] "[36mGET /static/js/featherlight.gallery.min.js HTTP/1.1[0m" 304 -
|
562 |
+
2024-05-14 23:32:56,178 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:32:56] "[36mGET /static/images/avatar.gif HTTP/1.1[0m" 304 -
|
563 |
+
2024-05-14 23:32:56,218 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:32:56] "[36mGET /static/js/jquery.enllax.min.js HTTP/1.1[0m" 304 -
|
564 |
+
2024-05-14 23:32:56,274 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:32:56] "[36mGET /static/js/jquery.scrollUp.min.js HTTP/1.1[0m" 304 -
|
565 |
+
2024-05-14 23:32:56,327 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:32:56] "[36mGET /static/js/jquery.easing.min.js HTTP/1.1[0m" 304 -
|
566 |
+
2024-05-14 23:32:56,340 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:32:56] "[36mGET /static/js/jquery.stickyNavbar.min.js HTTP/1.1[0m" 304 -
|
567 |
+
2024-05-14 23:32:56,371 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:32:56] "[36mGET /static/js/jquery.waypoints.min.js HTTP/1.1[0m" 304 -
|
568 |
+
2024-05-14 23:32:56,397 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:32:56] "[36mGET /static/js/images-loaded.min.js HTTP/1.1[0m" 304 -
|
569 |
+
2024-05-14 23:32:56,419 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:32:56] "[36mGET /static/js/lightbox.min.js HTTP/1.1[0m" 304 -
|
570 |
+
2024-05-14 23:32:56,443 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:32:56] "[36mGET /static/js/site.js HTTP/1.1[0m" 304 -
|
571 |
+
2024-05-14 23:32:57,068 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:32:57] "[36mGET /static/images/favicon.ico HTTP/1.1[0m" 304 -
|
572 |
+
2024-05-14 23:33:00,355 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:00] "GET / HTTP/1.1" 200 -
|
573 |
+
2024-05-14 23:33:00,945 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:00] "[36mGET /static/css/style.css HTTP/1.1[0m" 304 -
|
574 |
+
2024-05-14 23:33:00,994 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:00] "[36mGET /static/css/color.css HTTP/1.1[0m" 304 -
|
575 |
+
2024-05-14 23:33:01,048 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:01] "[33mGET /styles.css HTTP/1.1[0m" 404 -
|
576 |
+
2024-05-14 23:33:01,115 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:01] "[36mGET /static/css/animate.css HTTP/1.1[0m" 304 -
|
577 |
+
2024-05-14 23:33:01,165 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:01] "[36mGET /static/css/font-awesome.min.css HTTP/1.1[0m" 304 -
|
578 |
+
2024-05-14 23:33:01,257 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:01] "[36mGET /static/images/logo.png HTTP/1.1[0m" 304 -
|
579 |
+
2024-05-14 23:33:01,290 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:01] "[36mGET /static/images/uplogo.gif HTTP/1.1[0m" 304 -
|
580 |
+
2024-05-14 23:33:01,391 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:01] "[36mGET /static/js/jquery.1.8.3.min.js HTTP/1.1[0m" 304 -
|
581 |
+
2024-05-14 23:33:01,429 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:01] "[36mGET /static/js/wow.min.js HTTP/1.1[0m" 304 -
|
582 |
+
2024-05-14 23:33:01,487 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:01] "[36mGET /static/js/featherlight.min.js HTTP/1.1[0m" 304 -
|
583 |
+
2024-05-14 23:33:01,540 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:01] "[36mGET /static/js/featherlight.gallery.min.js HTTP/1.1[0m" 304 -
|
584 |
+
2024-05-14 23:33:01,603 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:01] "[36mGET /static/js/jquery.enllax.min.js HTTP/1.1[0m" 304 -
|
585 |
+
2024-05-14 23:33:01,654 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:01] "[36mGET /static/js/jquery.scrollUp.min.js HTTP/1.1[0m" 304 -
|
586 |
+
2024-05-14 23:33:01,691 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:01] "[36mGET /static/js/jquery.easing.min.js HTTP/1.1[0m" 304 -
|
587 |
+
2024-05-14 23:33:01,726 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:01] "[33mGET /static/static/js/jquery.stickyNavbar.min.js HTTP/1.1[0m" 404 -
|
588 |
+
2024-05-14 23:33:01,763 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:01] "[36mGET /static/js/jquery.waypoints.min.js HTTP/1.1[0m" 304 -
|
589 |
+
2024-05-14 23:33:01,804 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:01] "[36mGET /static/js/images-loaded.min.js HTTP/1.1[0m" 304 -
|
590 |
+
2024-05-14 23:33:01,840 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:01] "[36mGET /static/js/lightbox.min.js HTTP/1.1[0m" 304 -
|
591 |
+
2024-05-14 23:33:01,873 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:01] "[36mGET /static/js/site.js HTTP/1.1[0m" 304 -
|
592 |
+
2024-05-14 23:33:02,194 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:02] "[36mGET /static/images/favicon.ico HTTP/1.1[0m" 304 -
|
593 |
+
2024-05-14 23:33:13,871 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:13] "[32mPOST /upload HTTP/1.1[0m" 302 -
|
594 |
+
2024-05-14 23:33:23,234 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:23] "GET /predict/%5B'images.png',%20'sample_711.jpg',%20'sample_coop.jpg'%5D HTTP/1.1" 200 -
|
595 |
+
2024-05-14 23:33:23,428 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:23] "[33mGET /predict/css/animate.css HTTP/1.1[0m" 404 -
|
596 |
+
2024-05-14 23:33:23,441 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:23] "[36mGET /static/css/style.css HTTP/1.1[0m" 304 -
|
597 |
+
2024-05-14 23:33:23,452 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:23] "[36mGET /static/css/color.css HTTP/1.1[0m" 304 -
|
598 |
+
2024-05-14 23:33:23,558 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:23] "[36mGET /static/css/font-awesome.min.css HTTP/1.1[0m" 304 -
|
599 |
+
2024-05-14 23:33:23,708 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:23] "GET /static/temp/img_display/images.png HTTP/1.1" 200 -
|
600 |
+
2024-05-14 23:33:23,717 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:23] "GET /static/temp/img_display/sample_711.jpg HTTP/1.1" 200 -
|
601 |
+
2024-05-14 23:33:23,933 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:23] "[36mGET /static/js/jquery.1.8.3.min.js HTTP/1.1[0m" 304 -
|
602 |
+
2024-05-14 23:33:23,958 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:23] "[36mGET /static/js/wow.min.js HTTP/1.1[0m" 304 -
|
603 |
+
2024-05-14 23:33:23,998 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:23] "[36mGET /static/images/logo.png HTTP/1.1[0m" 304 -
|
604 |
+
2024-05-14 23:33:24,057 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:24] "[36mGET /static/images/avatar.gif HTTP/1.1[0m" 304 -
|
605 |
+
2024-05-14 23:33:24,116 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:24] "GET /static/temp/img_display/sample_coop.jpg HTTP/1.1" 200 -
|
606 |
+
2024-05-14 23:33:24,139 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:24] "[36mGET /static/js/featherlight.min.js HTTP/1.1[0m" 304 -
|
607 |
+
2024-05-14 23:33:24,213 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:24] "[36mGET /static/js/featherlight.gallery.min.js HTTP/1.1[0m" 304 -
|
608 |
+
2024-05-14 23:33:24,244 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:24] "[36mGET /static/js/jquery.enllax.min.js HTTP/1.1[0m" 304 -
|
609 |
+
2024-05-14 23:33:24,362 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:24] "[36mGET /static/js/jquery.scrollUp.min.js HTTP/1.1[0m" 304 -
|
610 |
+
2024-05-14 23:33:24,422 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:24] "[36mGET /static/js/jquery.easing.min.js HTTP/1.1[0m" 304 -
|
611 |
+
2024-05-14 23:33:24,459 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:24] "[36mGET /static/js/jquery.stickyNavbar.min.js HTTP/1.1[0m" 304 -
|
612 |
+
2024-05-14 23:33:24,521 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:24] "[36mGET /static/js/jquery.waypoints.min.js HTTP/1.1[0m" 304 -
|
613 |
+
2024-05-14 23:33:24,537 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:24] "[36mGET /static/js/images-loaded.min.js HTTP/1.1[0m" 304 -
|
614 |
+
2024-05-14 23:33:24,557 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:24] "[36mGET /static/js/lightbox.min.js HTTP/1.1[0m" 304 -
|
615 |
+
2024-05-14 23:33:24,580 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:24] "[36mGET /static/js/site.js HTTP/1.1[0m" 304 -
|
616 |
+
2024-05-14 23:33:25,667 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:33:25] "[36mGET /static/images/favicon.ico HTTP/1.1[0m" 304 -
|
617 |
+
2024-05-14 23:34:47,610 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:34:47] "[32mGET /run_inference HTTP/1.1[0m" 302 -
|
618 |
+
2024-05-14 23:34:47,749 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:34:47] "[35m[1mGET /create_csv HTTP/1.1[0m" 204 -
|
619 |
+
2024-05-14 23:34:48,414 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:34:48] "GET /get_data HTTP/1.1" 200 -
|
620 |
+
2024-05-14 23:34:48,429 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:34:48] "[33mGET /static/temp/img_display/images.png_inference.jpg HTTP/1.1[0m" 404 -
|
621 |
+
2024-05-14 23:34:48,432 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:34:48] "GET /static/temp/img_display/sample_711.jpg_inference.jpg HTTP/1.1" 200 -
|
622 |
+
2024-05-14 23:34:48,437 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:34:48] "GET /static/temp/img_display/sample_coop.jpg_inference.jpg HTTP/1.1" 200 -
|
623 |
+
2024-05-14 23:35:56,707 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:35:56] "[33mGET /static/temp/img_display/images.png_inference.jpg HTTP/1.1[0m" 404 -
|
624 |
+
2024-05-14 23:35:57,943 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:35:57] "[33mGET /static/temp/img_display/images.png_inference.jpg HTTP/1.1[0m" 404 -
|
625 |
+
2024-05-14 23:36:03,801 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:36:03] "[33mGET /static/temp/img_display/images.png_inference.jpg HTTP/1.1[0m" 404 -
|
626 |
+
2024-05-14 23:36:05,354 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:36:05] "GET / HTTP/1.1" 200 -
|
627 |
+
2024-05-14 23:36:05,498 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:36:05] "[36mGET /static/css/style.css HTTP/1.1[0m" 304 -
|
628 |
+
2024-05-14 23:36:05,644 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:36:05] "[33mGET /styles.css HTTP/1.1[0m" 404 -
|
629 |
+
2024-05-14 23:36:05,712 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:36:05] "[36mGET /static/css/color.css HTTP/1.1[0m" 304 -
|
630 |
+
2024-05-14 23:36:05,761 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:36:05] "[36mGET /static/css/font-awesome.min.css HTTP/1.1[0m" 304 -
|
631 |
+
2024-05-14 23:36:05,797 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:36:05] "[36mGET /static/css/animate.css HTTP/1.1[0m" 304 -
|
632 |
+
2024-05-14 23:36:05,907 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:36:05] "[36mGET /static/images/logo.png HTTP/1.1[0m" 304 -
|
633 |
+
2024-05-14 23:36:05,952 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:36:05] "[36mGET /static/images/uplogo.gif HTTP/1.1[0m" 304 -
|
634 |
+
2024-05-14 23:36:05,975 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:36:05] "[36mGET /static/js/jquery.1.8.3.min.js HTTP/1.1[0m" 304 -
|
635 |
+
2024-05-14 23:36:06,002 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:36:06] "[36mGET /static/js/wow.min.js HTTP/1.1[0m" 304 -
|
636 |
+
2024-05-14 23:36:06,138 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:36:06] "[36mGET /static/js/featherlight.min.js HTTP/1.1[0m" 304 -
|
637 |
+
2024-05-14 23:36:06,196 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:36:06] "[36mGET /static/js/featherlight.gallery.min.js HTTP/1.1[0m" 304 -
|
638 |
+
2024-05-14 23:36:06,242 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:36:06] "[36mGET /static/js/jquery.easing.min.js HTTP/1.1[0m" 304 -
|
639 |
+
2024-05-14 23:36:06,249 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:36:06] "[33mGET /static/static/js/jquery.stickyNavbar.min.js HTTP/1.1[0m" 404 -
|
640 |
+
2024-05-14 23:36:06,285 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:36:06] "[36mGET /static/js/jquery.enllax.min.js HTTP/1.1[0m" 304 -
|
641 |
+
2024-05-14 23:36:06,302 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:36:06] "[36mGET /static/js/jquery.scrollUp.min.js HTTP/1.1[0m" 304 -
|
642 |
+
2024-05-14 23:36:06,356 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:36:06] "[36mGET /static/js/images-loaded.min.js HTTP/1.1[0m" 304 -
|
643 |
+
2024-05-14 23:36:06,358 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:36:06] "[36mGET /static/js/jquery.waypoints.min.js HTTP/1.1[0m" 304 -
|
644 |
+
2024-05-14 23:36:06,430 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:36:06] "[36mGET /static/js/lightbox.min.js HTTP/1.1[0m" 304 -
|
645 |
+
2024-05-14 23:36:06,565 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:36:06] "[36mGET /static/js/site.js HTTP/1.1[0m" 304 -
|
646 |
+
2024-05-14 23:36:08,126 INFO werkzeug 127.0.0.1 - - [14/May/2024 23:36:08] "[36mGET /static/images/favicon.ico HTTP/1.1[0m" 304 -
|
647 |
+
2024-05-14 23:36:39,815 INFO werkzeug * Detected change in 'C:\\Users\\Ayoo\\Desktop\\bewwebapp\\app.py', reloading
|
sample_711.jpg
ADDED
templates/extractor.html
CHANGED
@@ -24,19 +24,20 @@
|
|
24 |
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,300,600,700,800' rel='stylesheet' type='text/css'>
|
25 |
<link rel="preconnect" href="https://fonts.googleapis.com">
|
26 |
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
27 |
-
<link href="https://fonts.googleapis.com/css2?family=Poppins:wght@100;200;300;400;500;600&display=swap"
|
|
|
28 |
<title>ExCeipt | Extractor</title>
|
29 |
<style>
|
30 |
body {
|
31 |
background-color: #ddd;
|
32 |
}
|
33 |
-
|
34 |
.containerz {
|
35 |
display: flex;
|
36 |
width: 100vw;
|
37 |
height: 100vh;
|
38 |
}
|
39 |
-
|
40 |
.left-column {
|
41 |
padding-top: 100px;
|
42 |
flex: 2;
|
@@ -48,28 +49,39 @@
|
|
48 |
box-shadow: inset 0 15px 30px rgba(0, 0, 0, 0.1);
|
49 |
overflow-y: auto;
|
50 |
}
|
|
|
51 |
#canvas-container {
|
52 |
display: flex;
|
53 |
-
flex-wrap: wrap;
|
54 |
-
|
55 |
-
|
56 |
-
|
|
|
|
|
|
|
|
|
57 |
margin-top: 70px;
|
58 |
}
|
59 |
-
|
60 |
.image-container {
|
61 |
-
width: 200px;
|
62 |
-
|
63 |
-
|
64 |
-
|
|
|
|
|
|
|
|
|
65 |
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
|
66 |
-
border-radius:10px;
|
67 |
}
|
68 |
-
|
|
|
69 |
transition: all 0.3s;
|
70 |
transform: translateY(1.5px);
|
71 |
box-shadow: 0 6px 8px rgba(0, 0, 0, 0.4);
|
72 |
}
|
|
|
73 |
.image-container img {
|
74 |
width: 100%;
|
75 |
height: 100%;
|
@@ -77,16 +89,17 @@
|
|
77 |
box-shadow: 0 6px 8px rgba(0, 0, 0, 0.1);
|
78 |
transition: all 0.3s;
|
79 |
}
|
|
|
80 |
p.images-name {
|
81 |
text-overflow: ellipsis;
|
82 |
white-space: nowrap;
|
83 |
overflow: hidden;
|
84 |
font-size: 10px;
|
85 |
-
margin: 5px 0 0 0
|
86 |
text-align: center;
|
87 |
padding: 0;
|
88 |
}
|
89 |
-
|
90 |
.right-column {
|
91 |
flex: 2;
|
92 |
background-color: #ffffff;
|
@@ -94,7 +107,7 @@
|
|
94 |
overflow-y: auto;
|
95 |
max-height: 100vh;
|
96 |
}
|
97 |
-
|
98 |
.backbutton {
|
99 |
box-sizing: border-box;
|
100 |
border-radius: 10px;
|
@@ -112,7 +125,7 @@
|
|
112 |
position: fixed;
|
113 |
z-index: 999;
|
114 |
}
|
115 |
-
|
116 |
.backbutton span {
|
117 |
text-decoration: none;
|
118 |
color: black;
|
@@ -120,78 +133,78 @@
|
|
120 |
font-size: 14px;
|
121 |
font-weight: 300;
|
122 |
}
|
123 |
-
|
124 |
.backbutton:hover {
|
125 |
background: linear-gradient(45deg, #FF6347, #FFA07A);
|
126 |
transition: all .3s ease-in-out;
|
127 |
}
|
128 |
-
|
129 |
.backbutton:hover span {
|
130 |
color: white;
|
131 |
transition: all .3s ease-in-out;
|
132 |
}
|
133 |
-
|
134 |
.backbutton:hover i {
|
135 |
color: white;
|
136 |
transition: all .3s ease-in-out;
|
137 |
}
|
138 |
-
|
139 |
.left-column h1 {
|
140 |
padding-top: 45px;
|
141 |
}
|
142 |
-
|
143 |
#canvas-container {
|
144 |
position: relative;
|
145 |
width: 100%;
|
146 |
height: 100%;
|
147 |
}
|
148 |
-
|
149 |
#canvas {
|
150 |
cursor: grab;
|
151 |
user-select: none;
|
152 |
}
|
153 |
-
|
154 |
#upload-input {
|
155 |
margin-top: 10px;
|
156 |
object-position: center;
|
157 |
}
|
158 |
-
|
159 |
.bordered-table {
|
160 |
justify-content: center;
|
161 |
display: flex;
|
162 |
padding: 0px 30px;
|
163 |
}
|
164 |
-
|
165 |
.bordered-table tbody td.full-width {
|
166 |
display: flex;
|
167 |
flex-wrap: wrap;
|
168 |
align-items: center;
|
169 |
}
|
170 |
-
|
171 |
.bordered-table tbody td.full-width .label {
|
172 |
width: 100px;
|
173 |
text-align: right;
|
174 |
margin-right: 5px;
|
175 |
}
|
176 |
-
|
177 |
.bordered-table tbody td .full-width input {
|
178 |
flex-grow: 1;
|
179 |
}
|
180 |
-
|
181 |
.bordered-table tbody td.full-width {
|
182 |
display: grid;
|
183 |
grid-template-columns: 100px 1fr;
|
184 |
}
|
185 |
-
|
186 |
.bordered-table tbody td.full-width .label {
|
187 |
justify-self: end;
|
188 |
}
|
189 |
-
|
190 |
#logox {
|
191 |
display: flex;
|
192 |
justify-content: center;
|
193 |
}
|
194 |
-
|
195 |
#logox img {
|
196 |
position: relative;
|
197 |
object-position: center;
|
@@ -199,60 +212,63 @@
|
|
199 |
height: 25%;
|
200 |
padding: 10px 10px 10px 10px;
|
201 |
}
|
202 |
-
|
203 |
.receipt {
|
204 |
margin: 20px 20px;
|
205 |
}
|
206 |
-
|
207 |
.receipt1 {
|
208 |
margin: 20px 20px;
|
209 |
font: 14px;
|
210 |
}
|
211 |
-
|
212 |
.receipt1 table {
|
213 |
border-radius: 10px;
|
214 |
}
|
215 |
-
|
216 |
.receipt h1 {
|
217 |
text-align: center;
|
218 |
}
|
219 |
-
|
220 |
.receipt .details {
|
221 |
margin: 0px 0px 0px 15px;
|
222 |
}
|
223 |
-
|
224 |
.receipt table {
|
225 |
width: 100%;
|
226 |
border-collapse: collapse;
|
227 |
margin-bottom: 20px;
|
228 |
}
|
|
|
229 |
.receipt table {
|
230 |
border-radius: 10px;
|
231 |
}
|
|
|
232 |
.receipt table th,
|
233 |
.receipt table td {
|
234 |
border: 1px solid #ccc;
|
235 |
padding: 5px;
|
236 |
}
|
237 |
-
|
238 |
.receipt table th {
|
239 |
background-color: #f0f0f0;
|
240 |
text-align: left;
|
241 |
-
font-size:16px;
|
242 |
-
font-weight:500;
|
243 |
-
text-align:center;
|
244 |
}
|
245 |
-
|
246 |
.receipt table td {
|
247 |
-
text-align:center;
|
248 |
font-size: 14px;
|
249 |
-
max-width: 150px;
|
|
|
250 |
overflow: hidden;
|
251 |
text-overflow: ellipsis;
|
252 |
white-space: nowrap;
|
253 |
-
padding: 0 20px
|
254 |
}
|
255 |
-
|
256 |
#dataTable {
|
257 |
border-radius: 10px;
|
258 |
border-collapse: collapse;
|
@@ -262,22 +278,22 @@
|
|
262 |
table-layout: fixed;
|
263 |
overflow-x: auto;
|
264 |
}
|
265 |
-
|
266 |
#receiptdiv {
|
267 |
display: none;
|
268 |
}
|
269 |
-
|
270 |
#dataTable th,
|
271 |
#dataTable td {
|
272 |
font-size: 12px;
|
273 |
text-align: center;
|
274 |
padding: 3px;
|
275 |
}
|
276 |
-
|
277 |
#downloadbutton {
|
278 |
display: none;
|
279 |
}
|
280 |
-
|
281 |
#loadingSpinner {
|
282 |
position: relative;
|
283 |
top: 20%;
|
@@ -292,26 +308,27 @@
|
|
292 |
display: none;
|
293 |
/* Hide initially */
|
294 |
}
|
295 |
-
|
296 |
@keyframes spin {
|
297 |
0% {
|
298 |
transform: rotate(0deg);
|
299 |
}
|
|
|
300 |
100% {
|
301 |
transform: rotate(360deg);
|
302 |
}
|
303 |
}
|
304 |
-
|
305 |
#uploadbutton:disabled {
|
306 |
cursor: not-allowed;
|
307 |
background-color: #dddddd;
|
308 |
}
|
309 |
-
|
310 |
.labels {
|
311 |
margin: 0 0 0 20px;
|
312 |
font-weight: 500;
|
313 |
}
|
314 |
-
|
315 |
.labels p {
|
316 |
font-size: 14px;
|
317 |
padding-top: 8px;
|
@@ -320,25 +337,25 @@
|
|
320 |
padding: 8px 0 0 0;
|
321 |
text-align: left;
|
322 |
}
|
323 |
-
|
324 |
#filenm {
|
325 |
position: relative;
|
326 |
z-index: 999;
|
327 |
}
|
328 |
-
|
329 |
.valid {
|
330 |
padding-left: 8px;
|
331 |
font-weight: 300;
|
332 |
font-size: 14px;
|
333 |
}
|
334 |
-
|
335 |
.details1 {
|
336 |
border-radius: 10px;
|
337 |
z-index: -1;
|
338 |
}
|
339 |
-
.details{
|
340 |
|
341 |
-
}
|
|
|
342 |
.exportbutton {
|
343 |
margin-right: 17px;
|
344 |
box-sizing: border-box;
|
@@ -355,14 +372,14 @@
|
|
355 |
color: white;
|
356 |
cursor: pointer;
|
357 |
}
|
358 |
-
|
359 |
.exportbutton:hover {
|
360 |
border: 2px solid #FF8B4A;
|
361 |
background: #f5f5f5;
|
362 |
color: #000;
|
363 |
transition: all .3s ease-in-out;
|
364 |
}
|
365 |
-
|
366 |
@media (max-width: 1024px) {
|
367 |
.filenm {
|
368 |
border-radius: 10px;
|
@@ -371,40 +388,49 @@
|
|
371 |
padding: 9px 11px;
|
372 |
margin: 0;
|
373 |
}
|
|
|
374 |
.filenm span {
|
375 |
text-overflow: ellipsis;
|
376 |
white-space: nowrap;
|
377 |
overflow: hidden;
|
378 |
}
|
|
|
379 |
.backbutton span {
|
380 |
font-size: 9px;
|
381 |
}
|
|
|
382 |
.backbutton {
|
383 |
padding: 12px 14px;
|
384 |
border-radius: 10px;
|
385 |
}
|
|
|
386 |
.receipt {
|
387 |
margin: 15px 15px;
|
388 |
}
|
|
|
389 |
p {
|
390 |
padding: 10px;
|
391 |
font-size: 13px;
|
392 |
}
|
|
|
393 |
p.desc {
|
394 |
font-size: 8px;
|
395 |
text-align: left;
|
396 |
}
|
|
|
397 |
.labels {
|
398 |
text-align: left;
|
399 |
}
|
|
|
400 |
.labels p {
|
401 |
padding: 8px 0 8px 0;
|
402 |
}
|
|
|
403 |
.avatargif img {
|
404 |
margin-top: 1.5em;
|
405 |
}
|
406 |
}
|
407 |
-
|
408 |
@media (max-width: 768px) {
|
409 |
#logox img {
|
410 |
position: relative;
|
@@ -413,6 +439,7 @@
|
|
413 |
height: 30%;
|
414 |
padding: 10px 10px 10px 10px;
|
415 |
}
|
|
|
416 |
.filenm {
|
417 |
border-radius: 6px;
|
418 |
gap: 0.3em;
|
@@ -420,48 +447,59 @@
|
|
420 |
padding: 10px 12px;
|
421 |
margin: 0;
|
422 |
}
|
|
|
423 |
.filenm span {
|
424 |
text-overflow: ellipsis;
|
425 |
white-space: nowrap;
|
426 |
overflow: hidden;
|
427 |
}
|
|
|
428 |
.backbutton span {
|
429 |
font-size: 10px;
|
430 |
}
|
|
|
431 |
.backbutton {
|
432 |
padding: 12px 14px;
|
433 |
border-radius: 6px;
|
434 |
}
|
|
|
435 |
.labels {
|
436 |
padding: 0 0 5px 0;
|
437 |
margin: 0;
|
438 |
}
|
|
|
439 |
p {
|
440 |
padding: 8px;
|
441 |
font-size: 12px;
|
442 |
}
|
|
|
443 |
.uploadbutton {
|
444 |
padding: 8px 24px;
|
445 |
font-size: 14px;
|
446 |
font-weight: 300;
|
447 |
}
|
|
|
448 |
p.desc {
|
449 |
font-size: 6px;
|
450 |
line-height: 12px;
|
451 |
}
|
|
|
452 |
.valid {
|
453 |
padding-left: 5px;
|
454 |
font-size: 12px;
|
455 |
}
|
|
|
456 |
.labels p {
|
457 |
padding: 8px 0 8px 0;
|
458 |
}
|
|
|
459 |
#dataTable th,
|
460 |
#dataTable td {
|
461 |
font-size: 6px;
|
462 |
text-align: left;
|
463 |
padding: 1px;
|
464 |
}
|
|
|
465 |
.exportbutton {
|
466 |
margin-left: 17px;
|
467 |
border-radius: 5px;
|
@@ -469,29 +507,35 @@
|
|
469 |
font-weight: 300;
|
470 |
font-size: 12px;
|
471 |
}
|
|
|
472 |
.avatargif img {
|
473 |
margin-top: 1.25em;
|
474 |
}
|
475 |
}
|
476 |
-
|
477 |
@media screen and (max-width: 576px) {
|
|
|
478 |
/* Styles for screens up to 576px wide */
|
479 |
.containerz {
|
480 |
flex-direction: column;
|
481 |
}
|
|
|
482 |
.left-column,
|
483 |
.right-column {
|
484 |
flex: 1;
|
485 |
width: 100%;
|
486 |
}
|
|
|
487 |
.left-column {
|
488 |
box-shadow: inset 0 15px 30px rgba(0, 0, 0, 0.1);
|
489 |
padding: 10px;
|
490 |
}
|
|
|
491 |
.right-column {
|
492 |
border-radius: 20px;
|
493 |
flex: 1.2;
|
494 |
}
|
|
|
495 |
.filenm {
|
496 |
border-radius: 7px;
|
497 |
gap: 0.3em;
|
@@ -502,40 +546,49 @@
|
|
502 |
padding: 8px 10px;
|
503 |
margin: 0;
|
504 |
}
|
|
|
505 |
.backbutton span {
|
506 |
font-size: 12px;
|
507 |
}
|
|
|
508 |
.backbutton {
|
509 |
padding: 8px 10px;
|
510 |
border-radius: 7px;
|
511 |
}
|
|
|
512 |
.labels {
|
513 |
padding: 0 0 5px 0;
|
514 |
margin: 0;
|
515 |
}
|
|
|
516 |
.uploadbutton {
|
517 |
padding: 6px 22px;
|
518 |
font-size: 12px;
|
519 |
font-weight: 300;
|
520 |
}
|
|
|
521 |
p.desc {
|
522 |
font-size: 4px;
|
523 |
text-align: left;
|
524 |
line-height: 10px;
|
525 |
}
|
|
|
526 |
.valid {
|
527 |
padding-left: 5px;
|
528 |
font-size: 10px;
|
529 |
}
|
|
|
530 |
.labels p {
|
531 |
padding: 8px 0 8px 0;
|
532 |
}
|
|
|
533 |
#dataTable th,
|
534 |
#dataTable td {
|
535 |
font-size: 6px;
|
536 |
text-align: left;
|
537 |
padding: 1px;
|
538 |
}
|
|
|
539 |
.exportbutton {
|
540 |
margin-left: 17px;
|
541 |
border-radius: 5px;
|
@@ -543,11 +596,12 @@
|
|
543 |
font-weight: 300;
|
544 |
font-size: 10px;
|
545 |
}
|
|
|
546 |
.avatargif img {
|
547 |
margin-top: 1em;
|
548 |
}
|
549 |
}
|
550 |
-
|
551 |
p.desc {
|
552 |
font-size: 10px;
|
553 |
font-family: 'Poppins';
|
@@ -557,26 +611,27 @@
|
|
557 |
line-height: 12px;
|
558 |
font-style: italic;
|
559 |
}
|
560 |
-
|
561 |
.fa-spinner {
|
562 |
font-size: 16px;
|
563 |
}
|
564 |
-
|
565 |
.avatargif {
|
566 |
display: flex;
|
567 |
justify-content: center;
|
568 |
align-items: center;
|
569 |
}
|
570 |
-
|
571 |
.avatargif img {
|
572 |
margin-top: 3.5em;
|
573 |
width: 40%;
|
574 |
height: 40%;
|
575 |
}
|
|
|
576 |
.red-border {
|
577 |
border: 2px solid red;
|
578 |
}
|
579 |
-
|
580 |
.green-border {
|
581 |
border: 2px solid green;
|
582 |
}
|
@@ -607,7 +662,7 @@
|
|
607 |
opacity: 0;
|
608 |
transition: opacity 0.3s;
|
609 |
}
|
610 |
-
|
611 |
.tooltiptext::after {
|
612 |
content: "";
|
613 |
position: absolute;
|
@@ -618,6 +673,7 @@
|
|
618 |
border-style: solid;
|
619 |
border-color: #333 transparent transparent transparent;
|
620 |
}
|
|
|
621 |
.zoomed-image-container {
|
622 |
position: fixed;
|
623 |
top: 0;
|
@@ -630,12 +686,13 @@
|
|
630 |
align-items: center;
|
631 |
z-index: 999;
|
632 |
}
|
633 |
-
|
634 |
.zoomed-image-container img {
|
635 |
max-width: 90%;
|
636 |
max-height: 90%;
|
637 |
object-fit: contain;
|
638 |
}
|
|
|
639 |
@media (max-width: 576px) {
|
640 |
.zoomed-image-container {
|
641 |
position: fixed;
|
@@ -648,10 +705,10 @@
|
|
648 |
justify-content: center;
|
649 |
align-items: center;
|
650 |
z-index: 999;
|
|
|
|
|
651 |
}
|
652 |
}
|
653 |
-
/* Optional: If you want to hide the scrollbar in Firefox */
|
654 |
-
scrollbar-width: none;
|
655 |
</style>
|
656 |
<script src="https://cdn.lordicon.com/lordicon.js"></script>
|
657 |
</head>
|
@@ -662,23 +719,26 @@
|
|
662 |
</div>
|
663 |
<div class="containerz">
|
664 |
<div class="left-column">
|
665 |
-
<button class="backbutton" id="submitButton" onclick="window.location.href='{{
|
666 |
<i class="fa-solid fa-arrow-left"></i>
|
667 |
<span>Back</span>
|
668 |
</button>
|
669 |
<div id="canvas-container">
|
670 |
{% if image_paths %}
|
671 |
-
|
672 |
-
|
673 |
-
|
674 |
-
|
675 |
-
|
676 |
-
|
677 |
-
|
678 |
-
|
679 |
-
|
|
|
|
|
|
|
680 |
{% else %}
|
681 |
-
|
682 |
{% endif %}
|
683 |
</div>
|
684 |
</div>
|
@@ -692,44 +752,50 @@
|
|
692 |
<hr style="color: #ccc; width:95%; opacity:0.35;">
|
693 |
<div class="labels" style="margin: 0 0 0 20px;">
|
694 |
<p>Receipt Verification</p>
|
695 |
-
<p class="desc">Verify receipt details attentively, acknowledging occasional misclassification, which
|
|
|
696 |
</div>
|
697 |
<div class="receipt">
|
698 |
-
|
699 |
-
|
700 |
-
|
701 |
-
|
702 |
-
|
703 |
-
|
704 |
-
|
705 |
-
|
706 |
-
|
707 |
-
|
708 |
-
|
709 |
-
|
710 |
-
|
711 |
-
|
712 |
-
|
713 |
-
|
714 |
-
|
715 |
-
|
716 |
-
|
717 |
-
|
718 |
-
|
719 |
-
|
720 |
-
|
|
|
|
|
|
|
|
|
|
|
721 |
</div>
|
722 |
-
</
|
723 |
-
</
|
724 |
-
|
725 |
-
|
726 |
-
</
|
727 |
-
</table>
|
728 |
</div>
|
729 |
<hr style="color: #ccc; width:95%; opacity:0.35;">
|
730 |
<div class="labels" style="margin: 0 0 0 20px;">
|
731 |
<p>Text Extraction</p>
|
732 |
-
<p class="desc">Ensure optimal text extraction accuracy from receipts by making sure that the receipt
|
|
|
733 |
</div>
|
734 |
<div style="text-align: center; margin-top: 25px;">
|
735 |
<button id="uploadbutton" class="uploadbutton" type="submit">
|
@@ -766,7 +832,7 @@
|
|
766 |
<a href="{{ url_for('download_csv') }}">
|
767 |
<button class="exportbutton" type="submit"><i class="fa-solid fa-download"></i>Download CSV</button>
|
768 |
</a>
|
769 |
-
<button class="exportbutton" onclick="window.location.href='{{
|
770 |
<span id="uploadIcon"><i class="fas fa-upload"></i></span>
|
771 |
<span>Upload again</span>
|
772 |
</button>
|
@@ -777,14 +843,14 @@
|
|
777 |
</div>
|
778 |
<a href="https://lordicon.com/" hidden>Icons by Lordicon.com</a>
|
779 |
<script>
|
780 |
-
document.addEventListener('DOMContentLoaded', function() {
|
781 |
const dataTable = document.getElementById('receiptdiv');
|
782 |
const loadingSpinner = document.getElementById('loadingIcon');
|
783 |
const extractingText = document.getElementById('extractingText');
|
784 |
const runInferenceButton = document.getElementById('uploadbutton');
|
785 |
const exportCSVButton = document.getElementById('downloadbutton');
|
786 |
|
787 |
-
document.getElementById('uploadbutton').addEventListener('click', function() {
|
788 |
loadingSpinner.style.display = 'inline-block'; // Show loading spinner
|
789 |
extractingText.textContent = 'Extracting...'; // Change text to "Extracting..."
|
790 |
runInferenceButton.disabled = true;
|
@@ -802,24 +868,42 @@
|
|
802 |
// Show the table when data is updated
|
803 |
dataTable.style.display = 'table';
|
804 |
}
|
|
|
|
|
805 |
|
806 |
async function runInference() {
|
807 |
await fetch('/run_inference');
|
808 |
|
809 |
-
setTimeout(function() {
|
810 |
loadingSpinner.style.display = 'none';
|
811 |
runInferenceButton.style.display = 'none';
|
812 |
exportCSVButton.style.display = 'flex';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
813 |
|
|
|
|
|
|
|
|
|
|
|
|
|
814 |
getData();
|
815 |
}, 500);
|
816 |
}
|
817 |
|
|
|
818 |
function updateTable(data) {
|
819 |
Papa.parse(data, {
|
820 |
header: true,
|
821 |
skipEmptyLines: true,
|
822 |
-
complete: function(results) {
|
823 |
const tbody = document.querySelector('#dataTable tbody');
|
824 |
tbody.innerHTML = ''; // Clear existing rows
|
825 |
|
|
|
24 |
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,300,600,700,800' rel='stylesheet' type='text/css'>
|
25 |
<link rel="preconnect" href="https://fonts.googleapis.com">
|
26 |
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
27 |
+
<link href="https://fonts.googleapis.com/css2?family=Poppins:wght@100;200;300;400;500;600&display=swap"
|
28 |
+
rel="stylesheet">
|
29 |
<title>ExCeipt | Extractor</title>
|
30 |
<style>
|
31 |
body {
|
32 |
background-color: #ddd;
|
33 |
}
|
34 |
+
|
35 |
.containerz {
|
36 |
display: flex;
|
37 |
width: 100vw;
|
38 |
height: 100vh;
|
39 |
}
|
40 |
+
|
41 |
.left-column {
|
42 |
padding-top: 100px;
|
43 |
flex: 2;
|
|
|
49 |
box-shadow: inset 0 15px 30px rgba(0, 0, 0, 0.1);
|
50 |
overflow-y: auto;
|
51 |
}
|
52 |
+
|
53 |
#canvas-container {
|
54 |
display: flex;
|
55 |
+
flex-wrap: wrap;
|
56 |
+
/* Wrap items to next line when they exceed the container width */
|
57 |
+
justify-content: center;
|
58 |
+
/* Center items horizontally */
|
59 |
+
gap: 10px;
|
60 |
+
/* Add some space between images */
|
61 |
+
max-width: 100%;
|
62 |
+
/* Ensure images don't exceed the container width */
|
63 |
margin-top: 70px;
|
64 |
}
|
65 |
+
|
66 |
.image-container {
|
67 |
+
width: 200px;
|
68 |
+
/* Set your desired width */
|
69 |
+
height: 300px;
|
70 |
+
/* Set your desired height */
|
71 |
+
background-color: white;
|
72 |
+
/* White background */
|
73 |
+
padding: 30px 30px 40px 30px;
|
74 |
+
/* Add padding */
|
75 |
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
|
76 |
+
border-radius: 10px;
|
77 |
}
|
78 |
+
|
79 |
+
.image-container:hover {
|
80 |
transition: all 0.3s;
|
81 |
transform: translateY(1.5px);
|
82 |
box-shadow: 0 6px 8px rgba(0, 0, 0, 0.4);
|
83 |
}
|
84 |
+
|
85 |
.image-container img {
|
86 |
width: 100%;
|
87 |
height: 100%;
|
|
|
89 |
box-shadow: 0 6px 8px rgba(0, 0, 0, 0.1);
|
90 |
transition: all 0.3s;
|
91 |
}
|
92 |
+
|
93 |
p.images-name {
|
94 |
text-overflow: ellipsis;
|
95 |
white-space: nowrap;
|
96 |
overflow: hidden;
|
97 |
font-size: 10px;
|
98 |
+
margin: 5px 0 0 0;
|
99 |
text-align: center;
|
100 |
padding: 0;
|
101 |
}
|
102 |
+
|
103 |
.right-column {
|
104 |
flex: 2;
|
105 |
background-color: #ffffff;
|
|
|
107 |
overflow-y: auto;
|
108 |
max-height: 100vh;
|
109 |
}
|
110 |
+
|
111 |
.backbutton {
|
112 |
box-sizing: border-box;
|
113 |
border-radius: 10px;
|
|
|
125 |
position: fixed;
|
126 |
z-index: 999;
|
127 |
}
|
128 |
+
|
129 |
.backbutton span {
|
130 |
text-decoration: none;
|
131 |
color: black;
|
|
|
133 |
font-size: 14px;
|
134 |
font-weight: 300;
|
135 |
}
|
136 |
+
|
137 |
.backbutton:hover {
|
138 |
background: linear-gradient(45deg, #FF6347, #FFA07A);
|
139 |
transition: all .3s ease-in-out;
|
140 |
}
|
141 |
+
|
142 |
.backbutton:hover span {
|
143 |
color: white;
|
144 |
transition: all .3s ease-in-out;
|
145 |
}
|
146 |
+
|
147 |
.backbutton:hover i {
|
148 |
color: white;
|
149 |
transition: all .3s ease-in-out;
|
150 |
}
|
151 |
+
|
152 |
.left-column h1 {
|
153 |
padding-top: 45px;
|
154 |
}
|
155 |
+
|
156 |
#canvas-container {
|
157 |
position: relative;
|
158 |
width: 100%;
|
159 |
height: 100%;
|
160 |
}
|
161 |
+
|
162 |
#canvas {
|
163 |
cursor: grab;
|
164 |
user-select: none;
|
165 |
}
|
166 |
+
|
167 |
#upload-input {
|
168 |
margin-top: 10px;
|
169 |
object-position: center;
|
170 |
}
|
171 |
+
|
172 |
.bordered-table {
|
173 |
justify-content: center;
|
174 |
display: flex;
|
175 |
padding: 0px 30px;
|
176 |
}
|
177 |
+
|
178 |
.bordered-table tbody td.full-width {
|
179 |
display: flex;
|
180 |
flex-wrap: wrap;
|
181 |
align-items: center;
|
182 |
}
|
183 |
+
|
184 |
.bordered-table tbody td.full-width .label {
|
185 |
width: 100px;
|
186 |
text-align: right;
|
187 |
margin-right: 5px;
|
188 |
}
|
189 |
+
|
190 |
.bordered-table tbody td .full-width input {
|
191 |
flex-grow: 1;
|
192 |
}
|
193 |
+
|
194 |
.bordered-table tbody td.full-width {
|
195 |
display: grid;
|
196 |
grid-template-columns: 100px 1fr;
|
197 |
}
|
198 |
+
|
199 |
.bordered-table tbody td.full-width .label {
|
200 |
justify-self: end;
|
201 |
}
|
202 |
+
|
203 |
#logox {
|
204 |
display: flex;
|
205 |
justify-content: center;
|
206 |
}
|
207 |
+
|
208 |
#logox img {
|
209 |
position: relative;
|
210 |
object-position: center;
|
|
|
212 |
height: 25%;
|
213 |
padding: 10px 10px 10px 10px;
|
214 |
}
|
215 |
+
|
216 |
.receipt {
|
217 |
margin: 20px 20px;
|
218 |
}
|
219 |
+
|
220 |
.receipt1 {
|
221 |
margin: 20px 20px;
|
222 |
font: 14px;
|
223 |
}
|
224 |
+
|
225 |
.receipt1 table {
|
226 |
border-radius: 10px;
|
227 |
}
|
228 |
+
|
229 |
.receipt h1 {
|
230 |
text-align: center;
|
231 |
}
|
232 |
+
|
233 |
.receipt .details {
|
234 |
margin: 0px 0px 0px 15px;
|
235 |
}
|
236 |
+
|
237 |
.receipt table {
|
238 |
width: 100%;
|
239 |
border-collapse: collapse;
|
240 |
margin-bottom: 20px;
|
241 |
}
|
242 |
+
|
243 |
.receipt table {
|
244 |
border-radius: 10px;
|
245 |
}
|
246 |
+
|
247 |
.receipt table th,
|
248 |
.receipt table td {
|
249 |
border: 1px solid #ccc;
|
250 |
padding: 5px;
|
251 |
}
|
252 |
+
|
253 |
.receipt table th {
|
254 |
background-color: #f0f0f0;
|
255 |
text-align: left;
|
256 |
+
font-size: 16px;
|
257 |
+
font-weight: 500;
|
258 |
+
text-align: center;
|
259 |
}
|
260 |
+
|
261 |
.receipt table td {
|
262 |
+
text-align: center;
|
263 |
font-size: 14px;
|
264 |
+
max-width: 150px;
|
265 |
+
/* Set the maximum width */
|
266 |
overflow: hidden;
|
267 |
text-overflow: ellipsis;
|
268 |
white-space: nowrap;
|
269 |
+
padding: 0 20px;
|
270 |
}
|
271 |
+
|
272 |
#dataTable {
|
273 |
border-radius: 10px;
|
274 |
border-collapse: collapse;
|
|
|
278 |
table-layout: fixed;
|
279 |
overflow-x: auto;
|
280 |
}
|
281 |
+
|
282 |
#receiptdiv {
|
283 |
display: none;
|
284 |
}
|
285 |
+
|
286 |
#dataTable th,
|
287 |
#dataTable td {
|
288 |
font-size: 12px;
|
289 |
text-align: center;
|
290 |
padding: 3px;
|
291 |
}
|
292 |
+
|
293 |
#downloadbutton {
|
294 |
display: none;
|
295 |
}
|
296 |
+
|
297 |
#loadingSpinner {
|
298 |
position: relative;
|
299 |
top: 20%;
|
|
|
308 |
display: none;
|
309 |
/* Hide initially */
|
310 |
}
|
311 |
+
|
312 |
@keyframes spin {
|
313 |
0% {
|
314 |
transform: rotate(0deg);
|
315 |
}
|
316 |
+
|
317 |
100% {
|
318 |
transform: rotate(360deg);
|
319 |
}
|
320 |
}
|
321 |
+
|
322 |
#uploadbutton:disabled {
|
323 |
cursor: not-allowed;
|
324 |
background-color: #dddddd;
|
325 |
}
|
326 |
+
|
327 |
.labels {
|
328 |
margin: 0 0 0 20px;
|
329 |
font-weight: 500;
|
330 |
}
|
331 |
+
|
332 |
.labels p {
|
333 |
font-size: 14px;
|
334 |
padding-top: 8px;
|
|
|
337 |
padding: 8px 0 0 0;
|
338 |
text-align: left;
|
339 |
}
|
340 |
+
|
341 |
#filenm {
|
342 |
position: relative;
|
343 |
z-index: 999;
|
344 |
}
|
345 |
+
|
346 |
.valid {
|
347 |
padding-left: 8px;
|
348 |
font-weight: 300;
|
349 |
font-size: 14px;
|
350 |
}
|
351 |
+
|
352 |
.details1 {
|
353 |
border-radius: 10px;
|
354 |
z-index: -1;
|
355 |
}
|
|
|
356 |
|
357 |
+
.details {}
|
358 |
+
|
359 |
.exportbutton {
|
360 |
margin-right: 17px;
|
361 |
box-sizing: border-box;
|
|
|
372 |
color: white;
|
373 |
cursor: pointer;
|
374 |
}
|
375 |
+
|
376 |
.exportbutton:hover {
|
377 |
border: 2px solid #FF8B4A;
|
378 |
background: #f5f5f5;
|
379 |
color: #000;
|
380 |
transition: all .3s ease-in-out;
|
381 |
}
|
382 |
+
|
383 |
@media (max-width: 1024px) {
|
384 |
.filenm {
|
385 |
border-radius: 10px;
|
|
|
388 |
padding: 9px 11px;
|
389 |
margin: 0;
|
390 |
}
|
391 |
+
|
392 |
.filenm span {
|
393 |
text-overflow: ellipsis;
|
394 |
white-space: nowrap;
|
395 |
overflow: hidden;
|
396 |
}
|
397 |
+
|
398 |
.backbutton span {
|
399 |
font-size: 9px;
|
400 |
}
|
401 |
+
|
402 |
.backbutton {
|
403 |
padding: 12px 14px;
|
404 |
border-radius: 10px;
|
405 |
}
|
406 |
+
|
407 |
.receipt {
|
408 |
margin: 15px 15px;
|
409 |
}
|
410 |
+
|
411 |
p {
|
412 |
padding: 10px;
|
413 |
font-size: 13px;
|
414 |
}
|
415 |
+
|
416 |
p.desc {
|
417 |
font-size: 8px;
|
418 |
text-align: left;
|
419 |
}
|
420 |
+
|
421 |
.labels {
|
422 |
text-align: left;
|
423 |
}
|
424 |
+
|
425 |
.labels p {
|
426 |
padding: 8px 0 8px 0;
|
427 |
}
|
428 |
+
|
429 |
.avatargif img {
|
430 |
margin-top: 1.5em;
|
431 |
}
|
432 |
}
|
433 |
+
|
434 |
@media (max-width: 768px) {
|
435 |
#logox img {
|
436 |
position: relative;
|
|
|
439 |
height: 30%;
|
440 |
padding: 10px 10px 10px 10px;
|
441 |
}
|
442 |
+
|
443 |
.filenm {
|
444 |
border-radius: 6px;
|
445 |
gap: 0.3em;
|
|
|
447 |
padding: 10px 12px;
|
448 |
margin: 0;
|
449 |
}
|
450 |
+
|
451 |
.filenm span {
|
452 |
text-overflow: ellipsis;
|
453 |
white-space: nowrap;
|
454 |
overflow: hidden;
|
455 |
}
|
456 |
+
|
457 |
.backbutton span {
|
458 |
font-size: 10px;
|
459 |
}
|
460 |
+
|
461 |
.backbutton {
|
462 |
padding: 12px 14px;
|
463 |
border-radius: 6px;
|
464 |
}
|
465 |
+
|
466 |
.labels {
|
467 |
padding: 0 0 5px 0;
|
468 |
margin: 0;
|
469 |
}
|
470 |
+
|
471 |
p {
|
472 |
padding: 8px;
|
473 |
font-size: 12px;
|
474 |
}
|
475 |
+
|
476 |
.uploadbutton {
|
477 |
padding: 8px 24px;
|
478 |
font-size: 14px;
|
479 |
font-weight: 300;
|
480 |
}
|
481 |
+
|
482 |
p.desc {
|
483 |
font-size: 6px;
|
484 |
line-height: 12px;
|
485 |
}
|
486 |
+
|
487 |
.valid {
|
488 |
padding-left: 5px;
|
489 |
font-size: 12px;
|
490 |
}
|
491 |
+
|
492 |
.labels p {
|
493 |
padding: 8px 0 8px 0;
|
494 |
}
|
495 |
+
|
496 |
#dataTable th,
|
497 |
#dataTable td {
|
498 |
font-size: 6px;
|
499 |
text-align: left;
|
500 |
padding: 1px;
|
501 |
}
|
502 |
+
|
503 |
.exportbutton {
|
504 |
margin-left: 17px;
|
505 |
border-radius: 5px;
|
|
|
507 |
font-weight: 300;
|
508 |
font-size: 12px;
|
509 |
}
|
510 |
+
|
511 |
.avatargif img {
|
512 |
margin-top: 1.25em;
|
513 |
}
|
514 |
}
|
515 |
+
|
516 |
@media screen and (max-width: 576px) {
|
517 |
+
|
518 |
/* Styles for screens up to 576px wide */
|
519 |
.containerz {
|
520 |
flex-direction: column;
|
521 |
}
|
522 |
+
|
523 |
.left-column,
|
524 |
.right-column {
|
525 |
flex: 1;
|
526 |
width: 100%;
|
527 |
}
|
528 |
+
|
529 |
.left-column {
|
530 |
box-shadow: inset 0 15px 30px rgba(0, 0, 0, 0.1);
|
531 |
padding: 10px;
|
532 |
}
|
533 |
+
|
534 |
.right-column {
|
535 |
border-radius: 20px;
|
536 |
flex: 1.2;
|
537 |
}
|
538 |
+
|
539 |
.filenm {
|
540 |
border-radius: 7px;
|
541 |
gap: 0.3em;
|
|
|
546 |
padding: 8px 10px;
|
547 |
margin: 0;
|
548 |
}
|
549 |
+
|
550 |
.backbutton span {
|
551 |
font-size: 12px;
|
552 |
}
|
553 |
+
|
554 |
.backbutton {
|
555 |
padding: 8px 10px;
|
556 |
border-radius: 7px;
|
557 |
}
|
558 |
+
|
559 |
.labels {
|
560 |
padding: 0 0 5px 0;
|
561 |
margin: 0;
|
562 |
}
|
563 |
+
|
564 |
.uploadbutton {
|
565 |
padding: 6px 22px;
|
566 |
font-size: 12px;
|
567 |
font-weight: 300;
|
568 |
}
|
569 |
+
|
570 |
p.desc {
|
571 |
font-size: 4px;
|
572 |
text-align: left;
|
573 |
line-height: 10px;
|
574 |
}
|
575 |
+
|
576 |
.valid {
|
577 |
padding-left: 5px;
|
578 |
font-size: 10px;
|
579 |
}
|
580 |
+
|
581 |
.labels p {
|
582 |
padding: 8px 0 8px 0;
|
583 |
}
|
584 |
+
|
585 |
#dataTable th,
|
586 |
#dataTable td {
|
587 |
font-size: 6px;
|
588 |
text-align: left;
|
589 |
padding: 1px;
|
590 |
}
|
591 |
+
|
592 |
.exportbutton {
|
593 |
margin-left: 17px;
|
594 |
border-radius: 5px;
|
|
|
596 |
font-weight: 300;
|
597 |
font-size: 10px;
|
598 |
}
|
599 |
+
|
600 |
.avatargif img {
|
601 |
margin-top: 1em;
|
602 |
}
|
603 |
}
|
604 |
+
|
605 |
p.desc {
|
606 |
font-size: 10px;
|
607 |
font-family: 'Poppins';
|
|
|
611 |
line-height: 12px;
|
612 |
font-style: italic;
|
613 |
}
|
614 |
+
|
615 |
.fa-spinner {
|
616 |
font-size: 16px;
|
617 |
}
|
618 |
+
|
619 |
.avatargif {
|
620 |
display: flex;
|
621 |
justify-content: center;
|
622 |
align-items: center;
|
623 |
}
|
624 |
+
|
625 |
.avatargif img {
|
626 |
margin-top: 3.5em;
|
627 |
width: 40%;
|
628 |
height: 40%;
|
629 |
}
|
630 |
+
|
631 |
.red-border {
|
632 |
border: 2px solid red;
|
633 |
}
|
634 |
+
|
635 |
.green-border {
|
636 |
border: 2px solid green;
|
637 |
}
|
|
|
662 |
opacity: 0;
|
663 |
transition: opacity 0.3s;
|
664 |
}
|
665 |
+
|
666 |
.tooltiptext::after {
|
667 |
content: "";
|
668 |
position: absolute;
|
|
|
673 |
border-style: solid;
|
674 |
border-color: #333 transparent transparent transparent;
|
675 |
}
|
676 |
+
|
677 |
.zoomed-image-container {
|
678 |
position: fixed;
|
679 |
top: 0;
|
|
|
686 |
align-items: center;
|
687 |
z-index: 999;
|
688 |
}
|
689 |
+
|
690 |
.zoomed-image-container img {
|
691 |
max-width: 90%;
|
692 |
max-height: 90%;
|
693 |
object-fit: contain;
|
694 |
}
|
695 |
+
|
696 |
@media (max-width: 576px) {
|
697 |
.zoomed-image-container {
|
698 |
position: fixed;
|
|
|
705 |
justify-content: center;
|
706 |
align-items: center;
|
707 |
z-index: 999;
|
708 |
+
/* Optional: If you want to hide the scrollbar in Firefox */
|
709 |
+
scrollbar-width: none;
|
710 |
}
|
711 |
}
|
|
|
|
|
712 |
</style>
|
713 |
<script src="https://cdn.lordicon.com/lordicon.js"></script>
|
714 |
</head>
|
|
|
719 |
</div>
|
720 |
<div class="containerz">
|
721 |
<div class="left-column">
|
722 |
+
<button class="backbutton" id="submitButton" onclick="window.location.href='{{ index_url }}'">
|
723 |
<i class="fa-solid fa-arrow-left"></i>
|
724 |
<span>Back</span>
|
725 |
</button>
|
726 |
<div id="canvas-container">
|
727 |
{% if image_paths %}
|
728 |
+
{% for image_path, prediction_results_copy in predictions.items() %}
|
729 |
+
<div
|
730 |
+
class="image-container {% if prediction_results_copy == 'non-receipt' %}red-border{% elif prediction_results_copy == 'receipt' %}green-border{% endif %}">
|
731 |
+
<div class="tooltiptext">Click to view fullscreen</div>
|
732 |
+
<img src="{{ url_for('static', filename='temp/img_display/' + image_path) }}" id="my-image"
|
733 |
+
alt="uploads"
|
734 |
+
data-img-path="{{ url_for('static', filename='temp/img_display/' + image_path) }}" />
|
735 |
+
<div class="image-name">
|
736 |
+
<p class="images-name">{{image_path}}</p>
|
737 |
+
</div>
|
738 |
+
</div>
|
739 |
+
{% endfor %}
|
740 |
{% else %}
|
741 |
+
<p>No files uploaded.</p>
|
742 |
{% endif %}
|
743 |
</div>
|
744 |
</div>
|
|
|
752 |
<hr style="color: #ccc; width:95%; opacity:0.35;">
|
753 |
<div class="labels" style="margin: 0 0 0 20px;">
|
754 |
<p>Receipt Verification</p>
|
755 |
+
<p class="desc">Verify receipt details attentively, acknowledging occasional misclassification, which
|
756 |
+
may arise from variations in image quality or format.</p>
|
757 |
</div>
|
758 |
<div class="receipt">
|
759 |
+
<table>
|
760 |
+
<thead>
|
761 |
+
<tr>
|
762 |
+
<th>File Name</th>
|
763 |
+
<th>Prediction Result</th>
|
764 |
+
</tr>
|
765 |
+
</thead>
|
766 |
+
<tbody>
|
767 |
+
{% for image_path, prediction_results_copy in predictions.items() %}
|
768 |
+
<tr>
|
769 |
+
<td>{{ image_path }}</td>
|
770 |
+
<td>
|
771 |
+
<div class="details">
|
772 |
+
<div style="display: flex; align-items: center; justify-content: center;">
|
773 |
+
{% if prediction_results_copy.lower() == 'receipt' %}
|
774 |
+
<lord-icon src="https://cdn.lordicon.com/lomfljuq.json" trigger="in"
|
775 |
+
delay="1500" colors="primary:#16c72e" state="morph-check-in-1"
|
776 |
+
style="width:25px;height:25px">
|
777 |
+
</lord-icon>
|
778 |
+
<p class="valid">Valid Receipt</p>
|
779 |
+
{% else %}
|
780 |
+
<lord-icon src="https://cdn.lordicon.com/zxvuvcnc.json" trigger="in"
|
781 |
+
delay="1500" state="morph-cross-in" colors="primary:#e83a30"
|
782 |
+
style="width:25px;height:25px">
|
783 |
+
</lord-icon>
|
784 |
+
<p class="valid">Not a Receipt</p>
|
785 |
+
{% endif %}
|
786 |
+
</div>
|
787 |
</div>
|
788 |
+
</td>
|
789 |
+
</tr>
|
790 |
+
{% endfor %}
|
791 |
+
</tbody>
|
792 |
+
</table>
|
|
|
793 |
</div>
|
794 |
<hr style="color: #ccc; width:95%; opacity:0.35;">
|
795 |
<div class="labels" style="margin: 0 0 0 20px;">
|
796 |
<p>Text Extraction</p>
|
797 |
+
<p class="desc">Ensure optimal text extraction accuracy from receipts by making sure that the receipt
|
798 |
+
image is clear, well-lit, and after extraction review the extracted text and edit.</p>
|
799 |
</div>
|
800 |
<div style="text-align: center; margin-top: 25px;">
|
801 |
<button id="uploadbutton" class="uploadbutton" type="submit">
|
|
|
832 |
<a href="{{ url_for('download_csv') }}">
|
833 |
<button class="exportbutton" type="submit"><i class="fa-solid fa-download"></i>Download CSV</button>
|
834 |
</a>
|
835 |
+
<button class="exportbutton" onclick="window.location.href='{{ index_url }}'">
|
836 |
<span id="uploadIcon"><i class="fas fa-upload"></i></span>
|
837 |
<span>Upload again</span>
|
838 |
</button>
|
|
|
843 |
</div>
|
844 |
<a href="https://lordicon.com/" hidden>Icons by Lordicon.com</a>
|
845 |
<script>
|
846 |
+
document.addEventListener('DOMContentLoaded', function () {
|
847 |
const dataTable = document.getElementById('receiptdiv');
|
848 |
const loadingSpinner = document.getElementById('loadingIcon');
|
849 |
const extractingText = document.getElementById('extractingText');
|
850 |
const runInferenceButton = document.getElementById('uploadbutton');
|
851 |
const exportCSVButton = document.getElementById('downloadbutton');
|
852 |
|
853 |
+
document.getElementById('uploadbutton').addEventListener('click', function () {
|
854 |
loadingSpinner.style.display = 'inline-block'; // Show loading spinner
|
855 |
extractingText.textContent = 'Extracting...'; // Change text to "Extracting..."
|
856 |
runInferenceButton.disabled = true;
|
|
|
868 |
// Show the table when data is updated
|
869 |
dataTable.style.display = 'table';
|
870 |
}
|
871 |
+
const imageElement = document.getElementById('my-image'); // replace 'my-image' with the id of your image element
|
872 |
+
|
873 |
|
874 |
async function runInference() {
|
875 |
await fetch('/run_inference');
|
876 |
|
877 |
+
setTimeout(function () {
|
878 |
loadingSpinner.style.display = 'none';
|
879 |
runInferenceButton.style.display = 'none';
|
880 |
exportCSVButton.style.display = 'flex';
|
881 |
+
var imageElements = document.querySelectorAll('[data-img-path]');
|
882 |
+
|
883 |
+
// Iterate over each image
|
884 |
+
imageElements.forEach(function (imageElement) {
|
885 |
+
var imagePath = imageElement.dataset.imgPath;
|
886 |
+
// Remove the 'temp/img_display/' part from the imagePath
|
887 |
+
// var newImagePath = imagePath.replace('temp/img_display/', '');
|
888 |
+
// Update the image source
|
889 |
+
imageElement.src = imagePath + "_inference.jpg";
|
890 |
|
891 |
+
// Add an error handler
|
892 |
+
imageElement.onerror = function () {
|
893 |
+
// Hide the image's container if the image fails to load
|
894 |
+
this.parentElement.style.display = 'none';
|
895 |
+
};
|
896 |
+
});
|
897 |
getData();
|
898 |
}, 500);
|
899 |
}
|
900 |
|
901 |
+
|
902 |
function updateTable(data) {
|
903 |
Papa.parse(data, {
|
904 |
header: true,
|
905 |
skipEmptyLines: true,
|
906 |
+
complete: function (results) {
|
907 |
const tbody = document.querySelector('#dataTable tbody');
|
908 |
tbody.innerHTML = ''; // Clear existing rows
|
909 |
|