네팔어 PDF 추출 최적화 파서와 OCR 비교 연구
초록
본 연구는 네팔어 PDF 문서에서 텍스트를 추출하기 위해 PDF 파싱과 OCR(특히 PyTesseract)을 비교한다. 파서는 속도가 빠르지만 비유니코드 폰트에서는 정확도가 떨어지고, OCR은 다소 시간이 오래 걸리지만 폰트와 스캔 여부에 관계없이 일관된 정확도를 제공한다. 최종적으로 프로젝트 요구에 가장 적합한 도구는 PyTesseract로 판단된다.
상세 분석
이 논문은 저자들이 네팔어 PDF 문서 5종(유니코드 텍스트 PDF 2개, 비유니코드 폰트 PDF 2개, 이미지 내 텍스트 PDF 1개)를 대상으로 네 가지 라이브러리(PyMuPDF, PyPDF2, PyTesseract, EasyOCR)를 실험한 결과를 상세히 제시한다. PDF 파싱 라이브러리인 PyMuPDF와 PyPDF2는 유니코드 기반 PDF에서 99 % 이상의 정확도를 보이며 추출 시간도 0.0060.474초로 매우 빠르다. 그러나 비유니코드 폰트(Preeti, Sagarmatha 등)에서는 파서가 라틴 문자 대응값을 반환해 후처리 매핑이 필요하고, 이 과정에서 오류가 누적돼 정확도가 8696 % 수준으로 떨어진다. 이미지 기반 PDF에서는 파서가 텍스트를 전혀 추출하지 못한다.
OCR 측면에서 PyTesseract는 PDF 페이지를 이미지로 변환한 뒤 텍스트를 인식한다. 비유니코드 폰트 PDF에서도 99.8 %에 달하는 높은 정확도를 기록했으며, 이미지 PDF에서도 97.7 %의 정확도를 보였다. 다만 이미지 변환 및 OCR 처리 때문에 전체 추출 시간은 0.76.0초(유니코드 PDF)와 1.01.5초(비유니코드 PDF)로 파서에 비해 현저히 길다. EasyOCR는 GPU 가속 시에는 속도가 개선될 수 있으나 CPU 환경에서는 14~23초로 매우 느리며, 정확도도 97 % 이하에 머문다.
결과 표와 그래프는 시간 대비 정확도의 트레이드오프를 명확히 보여준다. 파서는 특정 상황(유니코드 PDF)에서 최적이지만, 네팔어와 같이 비유니코드 폰트가 널리 사용되는 환경에서는 후처리 비용이 크게 증가한다. 반면 OCR은 폰트와 문서 형식에 독립적인 일관된 성능을 제공한다. 저자들은 프로젝트 목표가 “네팔어 PDF → 텍스트 → 음성”인 점을 고려해, 약간의 시간 손해를 감수하고도 정확도가 높은 PyTesseract를 최종 선택으로 제시한다. 또한, EasyOCR는 GPU 환경에서만 경쟁력이 있음을 언급하며, 향후 하드웨어 자원 확보 시 재평가 가능성을 남긴다.
이 연구는 저자들이 사용한 데이터와 코드가 공개되어 있어 재현 가능성을 높였으며, 저리소스 언어 PDF 추출에 대한 실용적인 벤치마크를 제공한다. 향후 연구에서는 폰트 인식 전용 사전 학습 모델을 구축하거나, 파서와 OCR을 결합한 하이브리드 파이프라인을 설계해 속도와 정확도 모두를 최적화하는 방안을 모색할 수 있다.
댓글 및 학술 토론
Loading comments...
의견 남기기