# qs_ocr_tune2.py - det_db_box_thresh comparison only; results to stdout (redirected to log by wrapper). import time, cv2, glob, json, sys FILES = sorted(glob.glob(r'D:\muse\qingsaoyuzhou\analysis\frames\seg_q5_s02\f_*.png'))[::450][:4] def run(engine, tag): for f in FILES: img = cv2.imread(f) t0 = time.time() res, _ = engine(img) dt = time.time() - t0 texts = sorted([r[1] for r in res]) if res else [] print("%s %s %.2fs n=%d %s" % (tag, f.split('\\')[-1], dt, len(texts), json.dumps(texts, ensure_ascii=False)), flush=True) from rapidocr_onnxruntime import RapidOCR for tag, kw in [("box05", dict(det_db_box_thresh=0.5)), ("box06", dict(det_db_box_thresh=0.6))]: print("== %s ==" % tag, flush=True) try: run(RapidOCR(**kw), tag) except Exception as e: print(tag, "FAILED", str(e)[:200], flush=True) print("TUNE2 DONE", flush=True)