안녕하세요! 디지털 시대의 탐험가, [geonho-log]입니다. 오늘은 저의 삽질과 깨달음이 가득했던 개발 공부 일기를 한번 풀어보려고 합니다. 시작은 아주 순수했죠. "AI랑 같이 토익 교재로 공부해볼까?"
1. 시작은 창대했으나: 390MB PDF, 너란 녀석…
제겐 498페이지짜리 토익 RC/LC PDF 파일이 있었습니다. 이걸 똑똑한 AI 친구 Gemini에게 먹여서 같이 공부해 볼 심산이었죠. 하지만 AI에게 파일을 올리려던 순간, 마주한 첫 번째 관문. "파일 크기 15MB 제한"

390MB짜리 제 파일은 문전박대를 당했습니다. 여기서부터 저의 기나긴 여정이 시작됐죠. 목표는 단 하나, "PDF 용량을 줄여라!"
2. 오픈소스로 직접 해결해보자! (feat. OCRmyPDF)
처음엔 iLovePDF 같은 웹사이트에서 압축을 시도했어요. 놀랍게도 390MB가 60MB로 줄더군요! 하지만 문득 궁금해졌습니다. "이거… 그냥 이미지 품질만 낮춘 거 아냐? 글자는 살아있나?"
역시나, 파일은 그냥 저화질 사진 뭉치였습니다. 텍스트 검색(Ctrl+F)이 안 되는 '죽은 PDF'였죠. 개발 공부하는 사람으로서 참을 수 없었습니다. "그래, 내 컴퓨터에서 직접 OCR(광학 문자 인식)을 돌려 텍스트를 심어주자!"
그렇게 OCRmyPDF라는 강력한 오픈소스 도구를 만나게 됐습니다.
- 설치 과정: Python, Tesseract, Ghostscript… 마치 드래곤볼 모으듯 필요한 프로그램을 하나씩 설치했죠. (윈도우에서 PATH 설정 때문에 'ocrmypdf'은(는) 내부 또는 외부 명령... 에러를 만난 건 안 비밀입니다. python -m ocrmypdf로 해결!)
- 명령어 실행: 드디어 cmd 창에 영롱한 명령어를 입력했습니다.
-
python -m ocrmypdf --language kor+eng "내 토익책.pdf" "결과물.pdf" - Bash
- 결과물: 결과는… 처참했습니다. 분명 OCR은 끝났는데, 텍스트가 외계어처럼 깨지고 뒤섞여 나왔어요. 알고 보니 토익 교재의 복잡한 2단 컬럼 구조와 다양한 박스 때문에 OCR 엔진이 길을 잃은 거였죠.
3. 한 걸음 더: 똑똑한 OCR을 위한 여정
실패는 저를 더 똑똑하게 만들었습니다. 더 나은 결과를 위해 OCR 엔진을 튜닝하기로 했죠. --deskew (기울기 보정), --clean (이미지 정돈), --tesseract-oem 1 (최신 엔진 사용) 같은 정밀 스캔 옵션을 추가해봤습니다.
여기서 또 다른 고민에 빠졌습니다. "정밀 스캔을 돌릴 건데, 370MB 원본에 돌려야 할까, 아니면 60MB 압축본에 돌려야 할까?"
이 고민은 저를 LLM의 핵심 원리인 '컨텍스트 윈도우' 개념까지 이끌었습니다. OCR의 정확도를 위해서는, 처리 속도가 좀 느리더라도 정보량이 풍부한 원본이 낫다는 결론을 내렸죠. 마치 흐릿한 사진보다 선명한 사진에서 단서를 찾기 쉬운 것처럼요.
4. 결론: 등잔 밑이 어두웠다
OCRmyPDF 정밀 스캔을 돌리려던 찰나, 문득 현타가 왔습니다. "잠깐, 내가 지금 이 PDF를 누구한테 주려고 이 고생을 하고 있지? 바로 Gemini잖아?"
애초에 목표는 Gemini와 함께 공부하는 것이었습니다. 그런데 저는 로컬 컴퓨터에서 완벽한 OCR PDF를 만들려고 온갖 사투를 벌이고 있었던 거죠. 혹시나 하는 마음에, 그냥 iLovePDF로 압축한 60MB짜리 저화질 파일을 Gemini에게 던져주며 물었습니다.
"이거 글자 읽을 수 있어?"
Gemini는 너무나도 선명하게 파일 속 텍스트를 읽고, 인식하고, 심지어 요약까지 해주었습니다. 네, 그렇습니다. 제가 그 고생을 하는 동안, 최신 AI 모델에 내장된 OCR 기술은 이미 저만치 앞서가고 있었던 겁니다.
결국 저의 기나긴 PDF와의 전쟁은 **"그냥 처음부터 Gemini한테 줄걸"**이라는 허무하지만 값진 깨달음으로 끝이 났습니다.
오늘의 교훈
때로는 가장 복잡한 문제의 해답이 가장 단순한 곳에 있다. 그리고 최신 기술을 적극적으로 믿고 활용하자!
여러분도 혹시 저처럼 파일과 씨름하고 계신가요?
어쩌면 해답은 여러분이 사용하려는 바로 그 도구 안에 이미 있을지도 모릅니다.
오늘의 개발 일기 끝!
'📚 전공or공부 정리' 카테고리의 다른 글
| [논문리뷰]-ComKD-CLIP, 대조적언어이미지모델사전학습을통한포괄적지식증 (0) | 2026.01.19 |
|---|