Spaces:
Sleeping
Sleeping
found best model
Browse files- .gitignore +2 -0
- app.py +7 -6
- models/__pycache__/best_norm_ED.cpython-310.pyc +0 -0
- models/__pycache__/best_norm_ED.cpython-311.pyc +0 -0
- models/best_norm_ED.pth +2 -2
- models/best_norm_ED.yaml +15 -16
.gitignore
CHANGED
@@ -1 +1,3 @@
|
|
1 |
.idea/
|
|
|
|
|
|
1 |
.idea/
|
2 |
+
# pycache
|
3 |
+
__pycache__/
|
app.py
CHANGED
@@ -13,6 +13,8 @@ from io import BytesIO
|
|
13 |
#import streamlit.components.v1 as components
|
14 |
import base64
|
15 |
|
|
|
|
|
16 |
#def downloadTxt():
|
17 |
def generateTxtLink(result):
|
18 |
result_txt = ""
|
@@ -64,7 +66,6 @@ def generateButtonGroup(result):
|
|
64 |
return txtLink+"\n"+docLink
|
65 |
|
66 |
def generateButtonGroupForPDF(pages_result):
|
67 |
-
#result = "\n\n".join(pages_result)
|
68 |
txtLink = generateMultiPageTxtLink(pages_result)
|
69 |
docLink = generateMultiPageDocLink(pages_result)
|
70 |
return txtLink+"\n"+docLink
|
@@ -84,7 +85,7 @@ for d in dirs:
|
|
84 |
font_path = models_dir + "/Ubuntu-Regular.ttf"
|
85 |
reader = easyocr.Reader(
|
86 |
['en'],
|
87 |
-
gpu=
|
88 |
recog_network='best_norm_ED',
|
89 |
detect_network="craft",
|
90 |
user_network_directory=models_dir,
|
@@ -146,7 +147,7 @@ def process_pdf(uploaded_file):
|
|
146 |
result,time_elapsed = recognize_page_image(image)
|
147 |
expander = col2.expander(f'{result[0][1][:100]} ... **:orange[{time_elapsed:.3f} секундта таңылды]**')
|
148 |
expander.write(f'{result[0][1]}')
|
149 |
-
result_text =
|
150 |
pages_result.append(result_text)
|
151 |
#col2.markdown(result_text)
|
152 |
progress_bar.progress((count + 1) / min(total_pages,max_page),text=f'Жүктеліп жатыр {count+1}/{min(total_pages,max_page)}')
|
@@ -175,7 +176,7 @@ class TextBox:
|
|
175 |
return f"TextBox(text={self.text}, group_id={self.group_id})"
|
176 |
|
177 |
|
178 |
-
def get_paragraph(ocr_results, horizontal_threshold=
|
179 |
# Convert raw OCR results into TextBox objects
|
180 |
text_boxes = [TextBox(box[1], box[0]) for box in ocr_results]
|
181 |
|
@@ -262,9 +263,9 @@ if uploaded_file is not None:
|
|
262 |
image = Image.open(uploaded_file)
|
263 |
#with open(os.path.join("tempDir",image_file))
|
264 |
col1.image(image)
|
265 |
-
result = reader.readtext(np.array(image), batch_size=64, paragraph=False, y_ths=0, width_ths = 0
|
266 |
result = get_paragraph(result)
|
267 |
-
result_text =
|
268 |
button_group_html = generateButtonGroup(result)
|
269 |
col2.write(button_group_html, unsafe_allow_html=True)
|
270 |
col2.markdown(result_text)
|
|
|
13 |
#import streamlit.components.v1 as components
|
14 |
import base64
|
15 |
|
16 |
+
line_separator = "\n\n"
|
17 |
+
|
18 |
#def downloadTxt():
|
19 |
def generateTxtLink(result):
|
20 |
result_txt = ""
|
|
|
66 |
return txtLink+"\n"+docLink
|
67 |
|
68 |
def generateButtonGroupForPDF(pages_result):
|
|
|
69 |
txtLink = generateMultiPageTxtLink(pages_result)
|
70 |
docLink = generateMultiPageDocLink(pages_result)
|
71 |
return txtLink+"\n"+docLink
|
|
|
85 |
font_path = models_dir + "/Ubuntu-Regular.ttf"
|
86 |
reader = easyocr.Reader(
|
87 |
['en'],
|
88 |
+
gpu=False,
|
89 |
recog_network='best_norm_ED',
|
90 |
detect_network="craft",
|
91 |
user_network_directory=models_dir,
|
|
|
147 |
result,time_elapsed = recognize_page_image(image)
|
148 |
expander = col2.expander(f'{result[0][1][:100]} ... **:orange[{time_elapsed:.3f} секундта таңылды]**')
|
149 |
expander.write(f'{result[0][1]}')
|
150 |
+
result_text = line_separator.join([item[1] for item in result])
|
151 |
pages_result.append(result_text)
|
152 |
#col2.markdown(result_text)
|
153 |
progress_bar.progress((count + 1) / min(total_pages,max_page),text=f'Жүктеліп жатыр {count+1}/{min(total_pages,max_page)}')
|
|
|
176 |
return f"TextBox(text={self.text}, group_id={self.group_id})"
|
177 |
|
178 |
|
179 |
+
def get_paragraph(ocr_results, horizontal_threshold=1, vertical_threshold=0.0, reading_mode='ltr'):
|
180 |
# Convert raw OCR results into TextBox objects
|
181 |
text_boxes = [TextBox(box[1], box[0]) for box in ocr_results]
|
182 |
|
|
|
263 |
image = Image.open(uploaded_file)
|
264 |
#with open(os.path.join("tempDir",image_file))
|
265 |
col1.image(image)
|
266 |
+
result = reader.readtext(np.array(image), batch_size=64, paragraph=False, y_ths=0, width_ths = 0)
|
267 |
result = get_paragraph(result)
|
268 |
+
result_text = line_separator.join([item[1] for item in result])
|
269 |
button_group_html = generateButtonGroup(result)
|
270 |
col2.write(button_group_html, unsafe_allow_html=True)
|
271 |
col2.markdown(result_text)
|
models/__pycache__/best_norm_ED.cpython-310.pyc
DELETED
Binary file (18.6 kB)
|
|
models/__pycache__/best_norm_ED.cpython-311.pyc
DELETED
Binary file (40.8 kB)
|
|
models/best_norm_ED.pth
CHANGED
@@ -1,3 +1,3 @@
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
-
oid sha256:
|
3 |
-
size
|
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:a93677c37a1bc9a268eb362df2772fbc9a5237b375740254e63063be2cebf6a4
|
3 |
+
size 15217067
|
models/best_norm_ED.yaml
CHANGED
@@ -1,30 +1,29 @@
|
|
1 |
-
number: 0123456789
|
2 |
-
symbol:
|
3 |
lang_char: 'АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯЁабвгдежзийклмнопрстуфхцчшщъыьэюяёӘҒҚҢӨҰҮІҺәғқңөұүіһABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
|
4 |
-
experiment_name: '
|
5 |
-
train_data: '../../synthtiger_kz/results/
|
6 |
-
valid_data: '../../synthtiger_kz/results/
|
7 |
-
wb: True
|
8 |
manualSeed: 1111
|
9 |
workers: 6
|
10 |
-
batch_size:
|
11 |
-
num_iter:
|
12 |
-
valInterval:
|
13 |
-
saved_model: 'saved_models/
|
14 |
FT: False
|
15 |
optim: False # default is Adadelta
|
16 |
-
lr:
|
17 |
beta1: 0.9
|
18 |
rho: 0.95
|
19 |
eps: 0.00000001
|
20 |
grad_clip: 5
|
21 |
#Data processing
|
22 |
-
select_data: '
|
23 |
batch_ratio: '1'
|
24 |
total_data_usage_ratio: 1.0
|
25 |
-
batch_max_length:
|
26 |
-
imgH:
|
27 |
-
imgW:
|
28 |
rgb: False
|
29 |
sensitive: True
|
30 |
PAD: True
|
@@ -50,4 +49,4 @@ network_params:
|
|
50 |
hidden_size: 256
|
51 |
lang_list:
|
52 |
- 'en'
|
53 |
-
character_list: 0123456789
|
|
|
1 |
+
number: '0123456789'
|
2 |
+
symbol: "!?.,:;'#()<>+-/*=%$»« "
|
3 |
lang_char: 'АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯЁабвгдежзийклмнопрстуфхцчшщъыьэюяёӘҒҚҢӨҰҮІҺәғқңөұүіһABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
|
4 |
+
experiment_name: 'kz_synthtiger_v8'
|
5 |
+
train_data: '../../synthtiger_kz/results/train_v8'
|
6 |
+
valid_data: '../../synthtiger_kz/results/test_v8'
|
|
|
7 |
manualSeed: 1111
|
8 |
workers: 6
|
9 |
+
batch_size: 96 #32
|
10 |
+
num_iter: 100000
|
11 |
+
valInterval: 1000
|
12 |
+
saved_model: 'saved_models/kz_synthtiger_v7_comma/best_norm_ED.pth'
|
13 |
FT: False
|
14 |
optim: False # default is Adadelta
|
15 |
+
lr: 1.
|
16 |
beta1: 0.9
|
17 |
rho: 0.95
|
18 |
eps: 0.00000001
|
19 |
grad_clip: 5
|
20 |
#Data processing
|
21 |
+
select_data: 'images' # this is dataset folder in train_data
|
22 |
batch_ratio: '1'
|
23 |
total_data_usage_ratio: 1.0
|
24 |
+
batch_max_length: 34
|
25 |
+
imgH: 64
|
26 |
+
imgW: 600
|
27 |
rgb: False
|
28 |
sensitive: True
|
29 |
PAD: True
|
|
|
49 |
hidden_size: 256
|
50 |
lang_list:
|
51 |
- 'en'
|
52 |
+
character_list: 0123456789!?.,:;'#()<>+-/*=%$»« АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯЁабвгдежзийклмнопрстуфхцчшщъыьэюяёӘҒҚҢӨҰҮІҺәғқңөұүіһABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
|