가볍게 skim through했는데, 아직 딥러닝이 활용되지 않던 2009년에 발표된 논문이라 그런지 규칙과 통계 기반의 원리가 많이 설명되어 있다 (hard-coding 되어 있기도 했다). 즉, 이 논문은 traditional한 방식의 OCR의 workflow를 볼 수 있는 자료이다.
그럼에도 불구하고, 한 가지 얻어갈 수 있는 것은 그런 전통적인 방식에서 preprocessing에 대한 insight을 얻을 수도 있다. 특히 내가 좀 흥미롭게 본 부분은, page-layout analysis 이후에 글의 line을 찾는 과정에서 x-height에 대한 추론을 위해 histogram sum에서 가장 자주 발생하는 것을 line으로 간주하는 방식이다. OCR하려고 하는 대상이 print된 정형적인 형식의, 한 줄 한 줄 잘 typing된 형식의 data라면 상당히 간단한 방식으로 그 글의 line height을 추론할 수 있다고 생각한다.
제 목: Tesseract OCR: Text localization and detection (reference [1] 참고)
2020년 5월 25일 포스팅
텍스트 탐지의 개념
텍스트 탐지는 이미지 텍스트가 있는 구역을 찾는(localization) 과정이다. 텍스트 탐지는 객체 탐지의 특수한 종류라고도 생각할 수 있다. 객체 탐지에서의 목표는 아래 <그림 1>과 같이 (1) 이미지 내부에 있는 모든 객체의 바운딩 박스를 탐지하는 것과 (2) 각 바운딩 박스의 클래스 레이블을 판단하는 것이다.
텍스트 탐지에서 우리의 목표는 자옹적으로 이미지 내부에서 모든 텍스트의 바운딩 박스를 탐지하는 것이다.
이미지 내부에서 텍스트가 탐지되고 나면, 우리는 OCR 프로그램을 활용하여 어떤 글자인지 해독할 수 있다.
Reference
[1] Tesseract OCR: Text localization and detection - PyImageSearch