OCR(Optical Character Recognition)

SUNGYOON LEE·2022년 11월 8일
0

OCR이란 무엇인가?

  • AWS의 정의에 따르면, 광학 문자 인식(OCR)은 텍스트 이미지를 기계가 읽을 수 있는 텍스트 포맷으로 변환하는 과정.
  • 예를 들어, 양식이나 영수증의 스캔본 또는 사진 파일이 있을 때, 단순히 이미지 파일로는 텍스트 문서로 변환하여 편집할 수 없지만, OCR을 활용한다면 이를 가능하게 한다.

그렇다면 OCR의 원리는 어떻게 되는가?

  • OCR을 아주 대략적으로 큰 범주로 나눈 단계로 본다면, Text Detection과 Text Recognition 두 단계가 존재한다.

  • Text Detection

    • Text Detection은 분류적으로는 object detection의 하위로 포함되기도 한다.
    • Text를 Detection하는 방법론으로는 여러 가지 방법론이 있는데 그 중에 대표적인 방법론은 다음과 같다.
      • object detection을 활용한 방법론
      • Sub-Text Component를 활용한 방법론
    • Object Detection을 활용한 방법론의 세부사항은 다음과 같다.
    • 위의 그림을 간단히라도 이해하기 위해서는 anchor box에 대한 개념과 ROI pooling에 대한 개념 정도는 알고 있어야 한다.
    • Object Detection을 활용하는 방법은 여러가지가 있는데, Object Detection에서 사용하는 anchor box를 활용하여 Text Detection을 수행한다.
    • Sub-Text Components를 활용하는 방법론의 세부사항은 다음과 같다.
    • 위와 같은 방식은 단어 내부에서 각각의 글자를 Detection한 뒤 재구성하는 방식으로 진행된다.
    • 또는 pixel 단위를 예측하여, 지정된 pixel이 글자에 포함되는지 안 포함되는지에 따라 Detection하는 방식이 된다.
  • Text Recognition

    • Text Recognition에는 대표적으로 2가지 방법이 있다.

      • CTC-based decoding 방식
      • Encoder-Decoder 방식
    • CTC-based decoding 방식은 Convolutional layer를 통해 feature를 추출하고, CNN 레이어 상단에 RNN 레이어를 쌓은 방식이다.

    • 이러한 방식은 input image들을 vertical pixel frame들의 sequence로 보는 방식이다. 또한 이러한 방식은 speech recognition에서 활용되던 방식이다.

    • Encoder-Decoder 방식은 언어 모델을 조금 더 활용하는 방식으로 진행된다.

    • 구조는 Transformer의 형태로, input sequence와 ouput sequence 간에 attention 메커니즘을 활용하여 attention 스코어를 구하는 방식으로 결합된다.

    • CTC-based decoding 방식과 Encoder-Decoder 방식은 character 레벨이 아닌 word레벨로 진행된다.

References

https://arxiv.org/pdf/1811.04256.pdf

profile
매일 매일 한 걸음씩 나아가고자 합니다.

0개의 댓글