🇯🇵
Japanese-Specialized OCR — Manga, Vertical Text, Furigana, and Historical Documents
manga-ocr, Sarashina2.2-OCR, PaddleOCR, KuroNet — every option for Japanese OCR
Why Japanese OCR Is Hard
Unlike English, Japanese has: vertical text (tategaki), furigana (small reading aids), 3 scripts mixed (hiragana + katakana + kanji), manga fonts, historical cursive (kuzushiji).
Tool Comparison
| Tool | Use Case | Vertical | Size |
|---|---|---|---|
| manga-ocr | Manga | Yes | 400MB |
| Sarashina2.2-OCR | Documents (best) | Yes | 3B |
| PaddleOCR | General CJK | Yes | 10-150MB |
| KuroNet | Historical (kuzushiji) | Yes | Web API |
manga-ocr — Manga Best
from manga_ocr import MangaOcr
mocr = MangaOcr()
text = mocr("speech_bubble.png") # → "お前はもう死んでいる"
Handles vertical/horizontal, furigana, various manga fonts, low-quality images.
KuroNet — Historical Documents
The only production tool for pre-Meiji kuzushiji (cursive) → modern Japanese conversion.
Key Concepts
1
manga-ocr (★☆☆☆☆) — pip install + 2 lines. Best for manga text
2
Sarashina2.2-OCR (★★★☆☆) — 3B model. Best Japanese document accuracy. GPU needed
3
PaddleOCR (★★☆☆☆) — use_textline_orientation=True for vertical text auto-detection
4
KuroNet (★★☆☆☆) — kuzushiji (historical) → modern Japanese. Only tool
Use Cases
Manga translation — extract text with manga-ocr → translate → replace in speech bubbles
Japanese business doc digitization — Sarashina2.2 to convert scanned docs to Markdown
Historical research — decode Edo/Meiji era documents with KuroNet