Back to blog

Manga OCR: Setup, Models & Translation

Manga OCR guide: how the manga-ocr model reads Japanese, how to install manga-ocr-base, why full pages fail, and how to go from OCR to a translated page.

Nov 1, 2026AI Manga Translator TeamAI Manga Translator Team
Manga OCR: Setup, Models & Translation

Manga OCR is the job of reading the text inside manga images. Most people searching for it mean one project in particular: manga-ocr, a free Python library by kha-white that reads Japanese from a cropped speech bubble and returns plain text. It does not find bubbles, translate lines, or put text back on the page.

So the right manga OCR setup depends on what you want at the end. For a Japanese sentence to look up, install manga-ocr. For a page you can read in English, you need OCR plus translation and lettering, which is what an OCR manga translator does in one step.

Facts below were checked against the public manga-ocr repository, PyPI listing, and Hugging Face model files on November 1, 2026. We did not run an accuracy benchmark, so this guide quotes no accuracy percentage of its own. The cover is an AI-generated editorial illustration made for this guide.

What is manga OCR?

OCR stands for optical character recognition: turning pixels into text you can copy. Manga OCR applies that to comic pages, where the text sits in bubbles, runs vertically, and overlaps artwork.

The names get confusing because one project appears under several spellings:

  • manga-ocr: the GitHub repository and the package you install from PyPI.
  • manga_ocr: the command you run in a terminal and the Python module you import. The class is MangaOcr.
  • manga-ocr-base: the trained model the library downloads from Hugging Face, published as kha-white/manga-ocr-base.
  • mangaocr: the one-word label many apps and searches use for the same engine.

When a tool's settings list "Manga OCR" as an engine, it usually means this model or a converted copy of it. Generic "manga OCR" on a marketing page may mean something else entirely, so check which engine a product actually names.

Why manga needs its own OCR

Document OCR expects tidy horizontal lines on a plain background. Manga rarely offers that. The manga-ocr project was built around five problems that show up on nearly every page:

  • Vertical and horizontal text, often on the same page.
  • Furigana, the tiny reading aids printed beside kanji.
  • Text overlaid on images, not on clean white space.
  • A wide variety of fonts and styles, from book type to shouted lettering.
  • Low-quality images, such as old scans and compressed screenshots.

It also reads multi-line text in a single pass, so a whole bubble can go in at once without being split into lines. It works as a general printed Japanese OCR too, and the README suggests it should do a decent job on novels and video games. That makes it a useful answer to "image to text Japanese" when the image is a small, tight crop.

How the manga-ocr-base model works

The manga-ocr-base model is an end-to-end vision encoder-decoder. A vision transformer looks at the image, and a BERT-style decoder writes out Japanese text token by token. It was trained on the Manga109-s dataset plus synthetic data.

manga-ocr-base at a glance, from the model files. Scroll the table on a small screen.
PropertyValueWhy it matters
Encoder / decoderViT / BERTReads the image as a whole instead of splitting lines first.
Input size224 × 224 pixelsEverything you send is resized to this square.
ColorConverted to grayscaleColor pages are read as black and white.
Output limit300 tokensEnough for a bubble, not meant for a page of text.
Vocabulary6,144 tokensBuilt for Japanese, not a multi-language model.
Model file444 MBDownloaded on first run, then cached.
License (library)Apache-2.0Free to use, including in other projects.

The input size explains the most common manga OCR mistake: passing a full page. Here is the same page resized two ways, using the model's own preprocessing settings.

A full manga page reduced to 224 by 224 pixels in grayscale, with its Japanese dialogue blurred and fine strokes lost

Full page at model input size: dialogue turns to blur

One cropped speech bubble reduced to 224 by 224 pixels in grayscale, with its Japanese text still sharp

Bubble crop at the same size: every character survives

Our own artwork resized to 224 × 224 in grayscale and shown at 3× zoom, so this is what the model receives. No OCR was run for this figure.

That is why the library has no "upload a page" mode. Something has to find the text regions first, whether that is your hand with a screenshot tool or a detector such as comic-text-detector.

How to install and run manga-ocr

This manga OCR tutorial follows the official README. You need Python 3.9 or newer. The very newest Python release may not work yet, because PyTorch often takes time to catch up.

1. Install the package

pip install manga-ocr

If you use uv, run uv add manga-ocr, or try it without adding it to a project:

uvx manga_ocr

For manga-ocr GPU use, install PyTorch from its official instructions first. The library picks CUDA or Apple MPS when available and otherwise falls back to the CPU.

2. Read images in Python

from manga_ocr import MangaOcr

mocr = MangaOcr()
text = mocr('/path/to/bubble.png')
print(text)

You can pass a file path or a PIL image. The first run downloads the model, which may take a few minutes. After that, recognition happens on your own machine.

3. Or run it in the background while reading

This is the setup many Japanese learners use. Start the clipboard watcher:

manga_ocr

Capture a region with a tool like ShareX or Flameshot. manga-ocr reads the image from your clipboard and writes the text back, where a dictionary such as Yomitan can pick it up. Wait for the OCR ready message in the log before you start.

To watch a screenshot folder instead:

manga_ocr "/path/to/sharex/screenshot/folder"

Clipboard mode replaces any image you copy with recognized text, so use folder mode if you also need to paste images normally.

Common install problems

  • DLL load failed while importing fugashi: this might come from the Microsoft Store build of Python. Try installing from python.org.
  • manga_ocr command not found: try python -m manga_ocr.
  • mecab-python3 fails on ARM: see the workaround linked in the repository's troubleshooting notes.
  • Clipboard mode on Linux: install wl-copy for Wayland or xclip for X11.

Which manga OCR tool fits your job?

The right tool depends less on the engine and more on what you do with the output. There is no official hosted manga OCR online service from the project, and Hugging Face listed no inference provider for the model when we checked.

Manga OCR tools by goal. Scroll the table on a small screen.
Your goalStart withWhat you getTrade-off
Look up one bubblemanga-ocr + screenshot tool + YomitanText on your clipboardPython setup; you crop by hand
Read a whole volume in JapanesemokuroSelectable text over each page in a readerPython setup; volumes are processed before reading
Pull text from a page without installingA browser OCR with page detection, such as a PaddleOCR manga presetText to copy or downloadBubble order and names still need checking
Build your own pipelinemanga-ocr-base through the Python API or an ONNX exportRaw stringsYou add detection, ordering and translation
Read the page in another languageAI Manga TranslatorA translated page imageOnline; sign-in required; no text export

mokuro is the natural next step for readers. It combines comic-text-detector with manga-ocr, then lets you read in a browser with selectable text. If a forum post recommends an OCR manga reader for study, it is often this.

For manga OCR ONNX builds, community exports exist on Hugging Face for runtimes without PyTorch. Check the model card before you rely on one: some exports build on a retrained manga-ocr-base-2025, whose own card was still an empty template when we looked.

What OCR model does MangaTranslator use?

If you searched for the MangaTranslator OCR model, you probably mean one of several open-source apps. Most of them no longer depend on a single manga OCR engine, as this snapshot from their public READMEs shows.

OCR models in open-source manga translators, as listed on November 1, 2026. Scroll the table on a small screen.
ProjectOCR models listedWorth knowing
MangaTranslator (meangrinch)Manga OCR, PaddleOCR-VL-1.6README describes OCR and translation through a cloud API or local LLM.
KoharuPaddleOCR VL 1.6, Manga OCR, Baberu OCR, Hayai OCRDetection, OCR and inpainting models are chosen separately.
manga-image-translator32px, 48px, 48px_ctc, mocrRecommends 48px for Japanese and Korean; offers Manga OCR box merging.

The takeaway for choosing a manga OCR model: use manga-ocr for tight Japanese crops, and look at PaddleOCR-VL or a multi-language engine when you need several languages or whole-page reading. These projects change quickly, so confirm against the current README before committing.

From manga OCR to translation

OCR is one stage in manga OCR translation. Getting from a raw page to a readable one involves several jobs, and manga-ocr covers exactly one of them.

What each stage of manga translation needs. Scroll the table on a small screen.
StageWhat happensCovered by manga-ocr?
DetectFind bubbles, captions and text on artNo
RecognizeTurn each region into textYes, for Japanese
OrderSort regions into reading order, usually right to leftNo
TranslateConvert text with speaker and panel contextNo
CleanRemove the original lettering from the artNo
LetterFit translated text back into each bubbleNo

You can assemble this yourself: OCR each crop, paste the text into a translator, then erase and re-letter in an image editor. That gives you full control, and it is worthwhile for a release you plan to polish. It is slow if all you want is to read the page.

An OCR manga translator runs those stages for you. Upload a complete page to our single-page manga translator, choose your language, and it detects the text, translates it, cleans the original lettering, and returns the page as an image. It accepts PNG, JPG, JPEG or WebP up to 15 MB, with Japanese, Korean or Chinese source pages.

Original black-and-white manga page with vertical Japanese dialogue in speech bubbles

Source page: Japanese dialogue

The same manga page with English dialogue lettered into the speech bubbles

Reading copy: English dialogue

Original site artwork prepared to show what to compare before and after translation; it is not a live task result.

Pick the workflow by source: use batch translation for up to 20 page images, the CBZ translator for a CBZ or ZIP chapter, or the browser extension for images on a page you are reading. For raw Japanese specifically, the Japanese manga translator guide covers furigana, honorifics and dropped subjects.

Manga OCR limits and how to check results

The most important manga OCR limit is easy to miss. The README warns that the model always tries to recognize something, even on an image with no text, and may "dream up" realistic sentences. Plausible Japanese is not proof of a correct read.

One independent test shows where it breaks. A Rust port of manga-ocr published its results on a real page: 4 of 9 bubbles passed. The failures were a tiny caption, slanted action text, shouted lettering, a neighboring line leaking in, and one wrong character. That is a single page on a port, not a benchmark, and the longest bubble on that page passed, so length alone does not predict failure. The README adds its own cautions: longer text raises the chance of errors, and handwriting probably won't work.

Be careful with published accuracy tables as well. Some manga OCR articles quote figures above 99%, usually with no sample or method. Scores depend on which pages you test, so try your own pages instead.

When you check manga OCR output, look at:

  • Crop edges: tighten the crop if text from a neighboring bubble appears.
  • Long bubbles: split them and run each part again.
  • Similar characters: compare katakana such as ン and ア, or シ and ツ, against the image.
  • Names: check readings in context, since the model sees no surrounding pages.
  • Empty regions: treat any output from a blank or artwork-only crop as invented.
  • Sound effects: read them yourself, as they are often drawn as art rather than lettered.

Translated pages need the same care. A smooth sentence can still come from a misread character. Our guide to translating Japanese manga images lists what to compare before downloading.

Is manga OCR free?

Yes, for the open-source route. manga-ocr is free under Apache-2.0, and once the model is downloaded, recognition runs on your computer, so your pages stay local. What you pay is setup time, disk space and patience on slower hardware.

A free OCR manga translator is a different matter, because translation and image cleanup cost money to run. On AI Manga Translator, starting a translation requires sign-in and uses one credit per page, and failed tasks return their credit. Any trial credits on your account let you test a page; downloading results requires a purchased credit pack. See Pricing for current packs.

Uploading a page to any online service sends it to that service, so read the privacy policy first, and only process pages you own or have permission to translate.

Frequently asked questions

What is manga OCR?

Manga OCR means recognizing the text inside manga images. The name also refers to manga-ocr, an open-source Python library by kha-white, and its manga-ocr-base model. It reads Japanese from a cropped text region and returns plain text.

Can manga-ocr read a whole manga page?

Not reliably. The library has no page or bubble detector, and the model resizes every input to 224 × 224 pixels, so a full page leaves very little detail for each character. Crop one bubble or text block, or use a tool such as mokuro that detects text regions first.

Is manga-ocr free?

Yes. manga-ocr is released under the Apache-2.0 license and runs on your own computer. Your costs are setup time, about 444 MB for the model, and your hardware. Hosted translators are separate services with their own limits.

Does manga-ocr work for Korean manhwa or Chinese manhua?

No. manga-ocr is built for Japanese text. For Korean or Chinese comics, choose an OCR engine with that language, or a translator that accepts those source languages. AI Manga Translator accepts Japanese, Korean and Chinese pages.

Can manga OCR read handwritten text and sound effects?

Treat both as hard cases. The manga-ocr README says it probably cannot handle handwritten text. Stylized sound effects, slanted action lines and tiny captions are also the places where manga OCR output is most likely to be wrong.

Is there a manga OCR app for Android, iPhone or Chrome?

The kha-white library is a desktop Python package, not a phone app or a browser extension. Community apps offer on-device OCR on Android, and our Chromium extension translates manga images in place, but it does not export OCR text.

Is manga-ocr better than Tesseract or Google Translate for manga?

It is designed for a different input. manga-ocr was trained for manga lettering, including vertical text and furigana. Check any accuracy percentage you see online for a stated method and sample, because results depend heavily on the pages used.

Does AI Manga Translator use manga-ocr or export OCR text?

We do not claim a specific OCR model, you cannot select one, and there is no text export. The tool returns a translated page image. If you need the Japanese text itself for study or your own pipeline, use manga-ocr or mokuro.

Choose your next step

If you want the Japanese text, install manga-ocr and crop tightly. If you want to read the page, skip the setup: start with one dialogue-heavy page and compare the result with the original.

Translate one manga page →

Sources: manga-ocr on GitHub, PyPI, Hugging Face model, mokuro, manga-ocr-rs test results. Open-source details change between releases.