🇯🇵

일본어 특화 OCR — 만화, 세로쓰기, 후리가나, 고문서까지

manga-ocr, Sarashina2.2-OCR, PaddleOCR, KuroNet — 일본어 OCR의 모든 선택지

일본어 OCR이 어려운 이유

영어 OCR과 달리 일본어에는 특수한 문제가 있다:

  1. 세로쓰기(縦書き) — 오른쪽에서 왼쪽으로, 위에서 아래로 읽는다. 일반 OCR은 가로쓰기 전제
  2. 후리가나(ふりがな) — 한자 옆/위에 작은 히라가나가 붙는다. 본문과 분리해야 한다
  3. 3종 문자 혼용 — ひらがな + カタカナ + 漢字 + ABC가 한 문장에 섞인다
  4. 만화 폰트 — 손글씨풍, 효과음, 말풍선 안의 불규칙 배치
  5. 고문서(くずし字) — 메이지 이전 문서는 현대 일본인도 못 읽는 서체

도구별 비교

도구 용도 세로쓰기 후리가나 크기 난이도
manga-ocr 만화 400MB ★☆☆☆☆
Sarashina2.2-OCR 문서 (최고 정밀도) 3B ★★★☆☆
PaddleOCR 범용 CJK 10~150MB ★★☆☆☆
EasyOCR 범용 100MB ★☆☆☆☆
KuroNet 고문서(くずし字) 웹API ★★☆☆☆

manga-ocr — 만화 최강

ViT(인코더) + GPT-2(디코더) 구조. 만화의 말풍선 텍스트에 특화.

pip install manga-ocr

from manga_ocr import MangaOcr

mocr = MangaOcr()  # 첫 실행 시 ~400MB 모델 다운로드

# 만화 말풍선 이미지 → 텍스트
text = mocr("speech_bubble.png")
print(text)  # → "お前はもう死んでいる"

특장점:

  • 세로쓰기, 가로쓰기 둘 다 처리

  • 후리가나가 있어도 본문만 추출

  • 다양한 만화 폰트(효과음, 손글씨) 대응

  • 저품질 이미지에서도 작동

  • 소설, 게임 텍스트에도 사용 가능

Sarashina2.2-OCR — 일본어 문서 최고 정밀도

SB Intuitions(소프트뱅크 계열)이 만든 3B 파라미터 End-to-End OCR 모델.

from transformers import AutoProcessor, AutoModelForVision2Seq
from PIL import Image

processor = AutoProcessor.from_pretrained("sbintuitions/sarashina2.2-ocr")
model = AutoModelForVision2Seq.from_pretrained("sbintuitions/sarashina2.2-ocr")

image = Image.open("japanese_document.png")
inputs = processor(images=image, return_tensors="pt")
output = model.generate(**inputs, max_new_tokens=1024)
text = processor.decode(output[0], skip_special_tokens=True)
print(text)  # Markdown 형식 (표→HTML, 수식→LaTeX)

특장점:

  • VJRODa 벤치마크(세로쓰기 일본어) 최고 점수

  • 표를 HTML로, 수식을 LaTeX로 자동 변환

  • 자연스러운 읽기 순서 (세로→가로 혼재 문서도 OK)

  • 3B 파라미터지만 olmOCR-bench에서 경쟁력 있음

PaddleOCR — 범용 CJK

from paddleocr import PaddleOCR

ocr = PaddleOCR(lang='japan', use_textline_orientation=True)  # 세로쓰기 감지
result = ocr.ocr('japanese_doc.png')

for line in result[0]:
    bbox, (text, conf) = line
    print(f"{text} ({conf:.0%})")

use_textline_orientation=True가 핵심 — 세로쓰기 텍스트를 자동 감지한다.

KuroNet — 고문서 OCR

메이지 이전(~1868) 일본 고문서의 くずし字(草書)를 현대 문자로 변환.

くずし字 (초서체, 현대인이 읽기 불가)
  ↓ KuroNet
現代日本語 (현대 일본어)

CODH(인문학 오픈데이터 센터)에서 개발. "miwo" 모바일 앱으로도 사용 가능 — 스마트폰으로 고문서를 찍으면 현대 문자로 변환.

이 분야의 유일한 프로덕션 도구다.

용도별 추천

용도 추천
만화 텍스트 manga-ocr (가장 쉽고 정확)
일본어 비즈니스 문서 Sarashina2.2-OCR (최고 정밀도)
한중일 혼재 문서 PaddleOCR (범용 CJK)
가볍게 시작 EasyOCR (3줄, GPU 불필요)
고문서/くずし字 KuroNet (유일한 선택지)
클라우드 OK Google Cloud Vision (일본어 최고 정확도)

핵심 개념

1

manga-ocr (★☆☆☆☆) — pip install manga-ocr + 2줄. 만화 텍스트 최강

2

Sarashina2.2-OCR (★★★☆☆) — 3B 모델. 일본어 문서 최고 정밀도. GPU 필요

3

PaddleOCR (★★☆☆☆) — use_textline_orientation=True로 세로쓰기 자동 감지

4

KuroNet (★★☆☆☆) — くずし字(고문서) → 현대 일본어. 유일한 도구

사용 사례

만화 번역 — manga-ocr로 텍스트 추출 → 번역 API → 말풍선에 재배치 일본어 비즈니스 문서 디지털화 — Sarashina2.2로 스캔 문서를 Markdown으로 역사 연구 — KuroNet으로 에도/메이지 시대 문서 해독