Skip to content

LumiRead v3.1.0 — silent OCR calibration + offline dictionary

Latest

Choose a tag to compare

@LagrangeNSS LagrangeNSS released this 11 Jun 08:28

v3.1.0 — silent OCR calibration + real offline dictionary (backend only, UI unchanged)

Silent OCR calibration

Every photo now passes through a calibration pipeline that is completely invisible to the child:

  • LayoutNormalizer — picture-book reading order (left page before right on spreads), page-number exclusion, skewed-decoration filtering
  • OcrQualityGate — confidence thresholds (accept ≥0.88 / silently correct 0.40–0.88 / silently drop <0.40), with automatic heuristic fallback when ML Kit reports no usable confidence
  • OcrCorrectionStage — Gemma fixes obvious OCR errors ("litt1e → little") via JSON-constrained structured generation; malformed output always degrades to the raw text, never crashes
  • OcrCorrectionValidator + ProtectedTokenDetector — deterministic guards: numbers, names, dates and quoted text can never be "corrected"; rewrites and fabrications are rejected

No retake prompts, no error bubbles — bad text is silently repaired or silently dropped and the companion talks about the picture instead.

Real offline dictionary for lookup_word

  • WordNet 3.1 (≈147k English entries) + CC-CEDICT (≈188k Chinese entries) compiled into a ~31 MB SQLite database bundled in the APK
  • Definitions are age-shaped (toddler gets one sentence; preadolescent gets the full gloss); misses degrade gracefully — the model never fabricates a definition
  • Hard-verified by JVM and on-device tests that exercise the exact production query

More

  • 4th fallback level: deterministic template reading when the model is unavailable — the app never dead-ends
  • Self-made 8-category picture-book OCR test set + on-device CER/WER metrics (clear pages: 0–6% CER)
  • Richer OCR structure (bounding boxes, corner points, angles, per-line language)
  • UI, the 3-tool set, settings, TTS, and privacy posture are all unchanged; models still download on first launch

Install

  1. Download LumiRead-v3.1.0.apk below and install it (signed with the same key as v3.0.0 — installs as an update).
  2. Models are not bundled. Follow README §6 to download Gemma 4 E2B/E4B and the TTS model, or adb push them to /sdcard/Android/data/com.lumiread/files/.

⚠ The offline dictionary is bundled — no extra download needed for lookup_word.

Full changelog: see README §13.