GameSentenceMiner 2.12.5__py3-none-any.whl → 2.12.6__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- GameSentenceMiner/ocr/owocr_helper.py +7 -4
- GameSentenceMiner/owocr/owocr/run.py +1 -1
- GameSentenceMiner/wip/get_overlay_coords.py +1 -1
- {gamesentenceminer-2.12.5.dist-info → gamesentenceminer-2.12.6.dist-info}/METADATA +1 -1
- {gamesentenceminer-2.12.5.dist-info → gamesentenceminer-2.12.6.dist-info}/RECORD +9 -9
- {gamesentenceminer-2.12.5.dist-info → gamesentenceminer-2.12.6.dist-info}/WHEEL +0 -0
- {gamesentenceminer-2.12.5.dist-info → gamesentenceminer-2.12.6.dist-info}/entry_points.txt +0 -0
- {gamesentenceminer-2.12.5.dist-info → gamesentenceminer-2.12.6.dist-info}/licenses/LICENSE +0 -0
- {gamesentenceminer-2.12.5.dist-info → gamesentenceminer-2.12.6.dist-info}/top_level.txt +0 -0
@@ -194,19 +194,21 @@ def compare_ocr_results(prev_text, new_text, threshold=90):
|
|
194
194
|
all_cords = None
|
195
195
|
rectangles = None
|
196
196
|
last_ocr2_result = []
|
197
|
+
last_sent_result = ""
|
197
198
|
|
198
199
|
def do_second_ocr(ocr1_text, time, img, filtering, pre_crop_image=None, ignore_furigana_filter=False, ignore_previous_result=False):
|
199
|
-
global twopassocr, ocr2, last_ocr2_result
|
200
|
+
global twopassocr, ocr2, last_ocr2_result, last_sent_result
|
200
201
|
try:
|
201
202
|
orig_text, text = run.process_and_write_results(img, None, last_ocr2_result if not ignore_previous_result else None, filtering, None,
|
202
203
|
engine=get_ocr_ocr2(), furigana_filter_sensitivity=furigana_filter_sensitivity if not ignore_furigana_filter else 0)
|
203
204
|
|
204
|
-
if compare_ocr_results(
|
205
|
+
if compare_ocr_results(last_sent_result, text, threshold=80):
|
205
206
|
if text:
|
206
207
|
logger.info("Seems like Text we already sent, not doing anything.")
|
207
208
|
return
|
208
209
|
save_result_image(img, pre_crop_image=pre_crop_image)
|
209
210
|
last_ocr2_result = orig_text
|
211
|
+
last_sent_result = text
|
210
212
|
asyncio.run(send_result(text, time))
|
211
213
|
except json.JSONDecodeError:
|
212
214
|
print("Invalid JSON received.")
|
@@ -291,7 +293,7 @@ def reset_callback_vars():
|
|
291
293
|
run.set_last_image(None)
|
292
294
|
|
293
295
|
def text_callback(text, orig_text, time, img=None, came_from_ss=False, filtering=None, crop_coords=None):
|
294
|
-
global twopassocr, ocr2, previous_text, last_oneocr_time, text_stable_start_time, previous_orig_text, previous_img, force_stable, previous_ocr1_result, previous_text_list
|
296
|
+
global twopassocr, ocr2, previous_text, last_oneocr_time, text_stable_start_time, previous_orig_text, previous_img, force_stable, previous_ocr1_result, previous_text_list, last_sent_result
|
295
297
|
orig_text_string = ''.join([item for item in orig_text if item is not None]) if orig_text else ""
|
296
298
|
if came_from_ss:
|
297
299
|
save_result_image(img)
|
@@ -304,12 +306,13 @@ def text_callback(text, orig_text, time, img=None, came_from_ss=False, filtering
|
|
304
306
|
line_start_time = time if time else datetime.now()
|
305
307
|
|
306
308
|
if manual or not get_ocr_two_pass_ocr():
|
307
|
-
if compare_ocr_results(
|
309
|
+
if compare_ocr_results(last_sent_result, text, 80):
|
308
310
|
if text:
|
309
311
|
logger.info("Seems like Text we already sent, not doing anything.")
|
310
312
|
return
|
311
313
|
save_result_image(img)
|
312
314
|
asyncio.run(send_result(text, line_start_time))
|
315
|
+
last_sent_result = text
|
313
316
|
previous_orig_text = orig_text_string
|
314
317
|
previous_text = None
|
315
318
|
previous_img = None
|
@@ -900,7 +900,7 @@ class OBSScreenshotThread(threading.Thread):
|
|
900
900
|
logger.error("No active source found in the current scene.")
|
901
901
|
time.sleep(1)
|
902
902
|
continue
|
903
|
-
img = obs.get_screenshot_PIL(source_name=self.current_source_name, width=self.width, height=self.height, img_format='
|
903
|
+
img = obs.get_screenshot_PIL(source_name=self.current_source_name, width=self.width, height=self.height, img_format='png', compression=80)
|
904
904
|
|
905
905
|
if img is not None:
|
906
906
|
if not img.getbbox():
|
@@ -314,7 +314,7 @@ async def get_full_screenshot() -> Image.Image | None:
|
|
314
314
|
else:
|
315
315
|
monitors = [monitors[0]]
|
316
316
|
monitor = monitors[get_config().wip.monitor_to_capture]
|
317
|
-
img = get_screenshot_PIL(compression=
|
317
|
+
img = get_screenshot_PIL(compression=90, img_format='jpg')
|
318
318
|
# Put the image over a transparent background without stretching
|
319
319
|
new_img = Image.new("RGBA", (monitor['width'], monitor['height']), (0, 0, 0, 0))
|
320
320
|
# Calculate coordinates to center img horizontally and vertically
|
@@ -19,14 +19,14 @@ GameSentenceMiner/ocr/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3h
|
|
19
19
|
GameSentenceMiner/ocr/gsm_ocr_config.py,sha256=Ezj-0k6Wo-una91FvYhMp6KGkRhWYihXzLAoh_Wu2xY,5329
|
20
20
|
GameSentenceMiner/ocr/ocrconfig.py,sha256=_tY8mjnzHMJrLS8E5pHqYXZjMuLoGKYgJwdhYgN-ny4,6466
|
21
21
|
GameSentenceMiner/ocr/owocr_area_selector.py,sha256=O8qKOTDglk-D4N-2_ORLeZacXT-OVOCNxUI8sQHAlx4,25538
|
22
|
-
GameSentenceMiner/ocr/owocr_helper.py,sha256=
|
22
|
+
GameSentenceMiner/ocr/owocr_helper.py,sha256=To_tIGPgj68QkEGasQuh5vK6Zg-BLqJmkVHusp-q4Bs,25427
|
23
23
|
GameSentenceMiner/ocr/ss_picker.py,sha256=0IhxUdaKruFpZyBL-8SpxWg7bPrlGpy3lhTcMMZ5rwo,5224
|
24
24
|
GameSentenceMiner/owocr/owocr/__init__.py,sha256=87hfN5u_PbL_onLfMACbc0F5j4KyIK9lKnRCj6oZgR0,49
|
25
25
|
GameSentenceMiner/owocr/owocr/__main__.py,sha256=XQaqZY99EKoCpU-gWQjNbTs7Kg17HvBVE7JY8LqIE0o,157
|
26
26
|
GameSentenceMiner/owocr/owocr/config.py,sha256=qM7kISHdUhuygGXOxmgU6Ef2nwBShrZtdqu4InDCViE,8103
|
27
27
|
GameSentenceMiner/owocr/owocr/lens_betterproto.py,sha256=oNoISsPilVVRBBPVDtb4-roJtAhp8ZAuFTci3TGXtMc,39141
|
28
28
|
GameSentenceMiner/owocr/owocr/ocr.py,sha256=Zii5r15ZlHFJWSbmXpva6QJVGkU3j2wT5Q0izazLyCQ,63021
|
29
|
-
GameSentenceMiner/owocr/owocr/run.py,sha256=
|
29
|
+
GameSentenceMiner/owocr/owocr/run.py,sha256=BvUmJAb1YboDn3FNS6jP92i3gmYjTE_uGJi-_qG_LdY,65962
|
30
30
|
GameSentenceMiner/owocr/owocr/screen_coordinate_picker.py,sha256=Na6XStbQBtpQUSdbN3QhEswtKuU1JjReFk_K8t5ezQE,3395
|
31
31
|
GameSentenceMiner/util/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
32
32
|
GameSentenceMiner/util/audio_offset_selector.py,sha256=8Stk3BP-XVIuzRv9nl9Eqd2D-1yD3JrgU-CamBywJmY,8542
|
@@ -63,10 +63,10 @@ GameSentenceMiner/web/templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm
|
|
63
63
|
GameSentenceMiner/web/templates/index.html,sha256=Gv3CJvNnhAzIVV_QxhNq4OD-pXDt1vKCu9k6WdHSXuA,215343
|
64
64
|
GameSentenceMiner/web/templates/text_replacements.html,sha256=tV5c8mCaWSt_vKuUpbdbLAzXZ3ATZeDvQ9PnnAfqY0M,8598
|
65
65
|
GameSentenceMiner/web/templates/utility.html,sha256=3flZinKNqUJ7pvrZk6xu__v67z44rXnaK7UTZ303R-8,16946
|
66
|
-
GameSentenceMiner/wip/get_overlay_coords.py,sha256=
|
67
|
-
gamesentenceminer-2.12.
|
68
|
-
gamesentenceminer-2.12.
|
69
|
-
gamesentenceminer-2.12.
|
70
|
-
gamesentenceminer-2.12.
|
71
|
-
gamesentenceminer-2.12.
|
72
|
-
gamesentenceminer-2.12.
|
66
|
+
GameSentenceMiner/wip/get_overlay_coords.py,sha256=4tUrNu5_MTVqjYO-oC0seydbwyhLdFJd3fptHx5zjdI,19779
|
67
|
+
gamesentenceminer-2.12.6.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
|
68
|
+
gamesentenceminer-2.12.6.dist-info/METADATA,sha256=JmVROmN8-FTjkvx3Shvya4ac6aHjyZNFAC5FXkiS2ME,7061
|
69
|
+
gamesentenceminer-2.12.6.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
70
|
+
gamesentenceminer-2.12.6.dist-info/entry_points.txt,sha256=2APEP25DbfjSxGeHtwBstMH8mulVhLkqF_b9bqzU6vQ,65
|
71
|
+
gamesentenceminer-2.12.6.dist-info/top_level.txt,sha256=V1hUY6xVSyUEohb0uDoN4UIE6rUZ_JYx8yMyPGX4PgQ,18
|
72
|
+
gamesentenceminer-2.12.6.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|