Spaces:
Running
Running
| <html lang="en"> | |
| <head> | |
| <meta charset="utf-8"> | |
| <meta name="viewport" content="width=device-width, initial-scale=1"> | |
| <meta name="description" content="Experimental Kashmiri Perso-Arabic OCR by Kash Labs AI"> | |
| <meta http-equiv="Content-Security-Policy" content="default-src 'self'; img-src 'self' blob: data:; style-src 'self'; script-src 'self'; connect-src 'self' https://kash-ai-labs--koshur-ocr-backend-api.modal.run;"> | |
| <title>Koshur OCR · Kash Labs AI</title> | |
| <link rel="stylesheet" href="style.css"> | |
| <script src="app.js" defer></script> | |
| </head> | |
| <body> | |
| <main class="shell"> | |
| <header class="topbar"> | |
| <div class="brand"><span class="mark" aria-hidden="true">ک</span><span>Kash Labs AI</span></div> | |
| <div class="service" aria-live="polite"><span id="service-dot" class="service-dot"></span><span id="service-text">Checking inference</span></div> | |
| </header> | |
| <section class="hero" aria-labelledby="page-title"> | |
| <div> | |
| <p class="eyebrow">Kashmiri language technology · Research preview</p> | |
| <h1 id="page-title">Koshur<br>OCR</h1> | |
| </div> | |
| <p class="lede">Turn a printed Kashmiri Perso-Arabic line image into editable Unicode text. Built as a compact, transparent research baseline—not a black box.</p> | |
| </section> | |
| <section class="metrics" aria-label="Model metrics"> | |
| <div class="metric"><strong>28.13%</strong><span>Deduplicated CER</span></div> | |
| <div class="metric"><strong>15.11%</strong><span>Exact match</span></div> | |
| <div class="metric"><strong>4.47M</strong><span>Parameters</span></div> | |
| <div class="metric"><strong>10K</strong><span>Training lines</span></div> | |
| </section> | |
| <section class="workspace" aria-label="OCR workspace"> | |
| <article class="panel"> | |
| <div class="panel-heading"><span class="step">01 · Source line</span><button id="clear" class="text-button" type="button">Clear</button></div> | |
| <div id="drop-zone" class="drop-zone"> | |
| <input id="image-file" type="file" accept="image/png,image/jpeg,image/webp"> | |
| <label for="image-file" aria-label="Choose a single-line text image"></label> | |
| <img id="preview" class="preview" alt="Selected OCR line preview" hidden> | |
| <div id="preview-placeholder" class="preview-placeholder"> | |
| <span class="upload-icon" aria-hidden="true">↑</span> | |
| <strong>Drop a line image here</strong> | |
| <span>or tap to choose · PNG, JPEG, WebP · max 10 MB</span> | |
| </div> | |
| </div> | |
| <button id="recognize" class="primary" type="button" disabled>Recognize Kashmiri</button> | |
| </article> | |
| <article class="panel"> | |
| <div class="panel-heading"><span class="step">02 · Unicode result</span><button id="copy" class="text-button" type="button">Copy text</button></div> | |
| <textarea id="result" class="result" lang="ks-Arab" dir="rtl" aria-label="OCR transcription" placeholder="نتیجہ یِتھ پٮ۪ٹھ ظٲہِر گژھِ…" readonly></textarea> | |
| <p id="status" class="status" data-kind="neutral" aria-live="polite">Upload a tightly cropped single-line image to begin.</p> | |
| </article> | |
| </section> | |
| <aside class="notice"> | |
| <strong>Research limitation</strong> | |
| <span>This epoch-47 checkpoint was trained on synthetic printed lines with the established Kashmiri diacritic set removed from its targets. It is not a full-page, handwriting, or diacritic-restoration system. Review predictions before reuse.</span> | |
| </aside> | |
| <footer class="footer"> | |
| <span>CRNN · temporal dropout · BiGRU · CTC</span> | |
| <span><a href="https://huggingface.co/KashlabsAI/Koshur-OCR" target="_blank" rel="noreferrer">Model files & documentation</a></span> | |
| </footer> | |
| </main> | |
| </body> | |
| </html> | |