본문으로 건너뛰기

OCR 기능

딸깍문서는 Claude Vision을 활용하여 이미지에서 텍스트를 추출하는 OCR(광학 문자 인식) 기능을 제공합니다.

개요

Claude Vision API를 사용하여 이미지나 PDF에서 텍스트를 정확하게 추출합니다. 특히 한국어, 영어, 터키어 등 다양한 언어의 특수 문자를 정확하게 인식합니다.

지원 형식

이미지 형식

형식MIME 타입지원
PNGimage/png
JPEGimage/jpeg
GIFimage/gif
WebPimage/webp

지원 언어

  • 한국어 (가-힣)
  • 영어 (A-Z, a-z)
  • 터키어 (İ, ı, Ğ, ğ, Ş, ş, Ç, ç 등)
  • 기타 유니코드 언어

사용 방법

단일 이미지 OCR

const response = await fetch("/api/ocr/claude-vision", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
image_base64: "base64_encoded_image",
media_type: "image/png",
language: "ko",
}),
});

const { text } = await response.json();

배치 OCR

여러 이미지를 한 번에 처리:

const response = await fetch("/api/ocr/claude-vision-batch", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
images: [
{ image_base64: "...", media_type: "image/png" },
{ image_base64: "...", media_type: "image/jpeg" },
],
language: "ko",
}),
});

const { results } = await response.json();

API 상세

요청 형식

interface OCRRequest {
image_base64: string;
media_type: "image/png" | "image/jpeg" | "image/gif" | "image/webp";
language?: string;
instructions?: string;
}

응답 형식

interface OCRResponse {
text: string;
confidence?: string;
language_detected?: string;
}

OCR 프롬프트

Claude에게 전달되는 OCR 지시사항:

You are an expert OCR system. Extract ALL text from this image exactly as it appears.

IMPORTANT RULES:
1. Preserve the EXACT characters as they appear, including:
- Turkish characters: İ, ı, Ğ, ğ, Ş, ş, Ç, ç, Ö, ö, Ü, ü
- Korean characters: 가-힣
- Special characters and punctuation
2. Maintain the original formatting (line breaks, spacing)
3. If there are tables, preserve the table structure using | separators
4. Do NOT translate or modify any text
5. Output ONLY the extracted text, nothing else

특수 용도

영역 OCR

PDF의 특정 영역만 OCR 처리:

const response = await fetch("/api/pdf/ocr-region", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
pdf_base64: "...",
page: 1,
region: {
x: 100,
y: 200,
width: 300,
height: 50,
},
}),
});

테이블 인식

테이블 구조가 있는 이미지의 경우 | 구분자로 구조를 보존합니다:

| 이름 | 나이 | 직업 |
| 홍길동 | 30 | 개발자 |
| 김철수 | 25 | 디자이너 |

성능 최적화

이미지 전처리

더 나은 OCR 결과를 위해:

  1. 해상도: 최소 150 DPI
  2. 대비: 텍스트와 배경 간 명확한 대비
  3. 크기: 너무 작은 텍스트는 확대

배치 처리

많은 이미지를 처리할 때는 배치 API를 사용:

  • 단일 요청으로 여러 이미지 처리
  • API 호출 횟수 감소
  • 전체 처리 시간 단축

에러 처리

일반적인 오류

오류원인해결
Invalid media_type지원하지 않는 이미지 형식PNG, JPEG, GIF, WebP 사용
Image too large이미지 크기 초과이미지 리사이즈
OCR failed텍스트 인식 실패이미지 품질 개선

제한사항

항목제한
최대 이미지 크기20MB
최대 해상도8000 x 8000
배치 최대 이미지 수10개

활용 사례

문서 디지털화

스캔된 문서를 편집 가능한 텍스트로 변환:

flowchart LR
A[스캔 문서] --> B[OCR 처리]
B --> C[텍스트 추출]
C --> D[문서 편집기]
D --> E[편집/수정]

PDF 참고자료

PDF 내용을 텍스트로 추출하여 AI 참고자료로 활용:

flowchart LR
A[PDF 업로드] --> B[페이지 이미지화]
B --> C[OCR 처리]
C --> D[텍스트 저장]
D --> E[AI 참고자료]

다음 단계