[Theory]OCR_summary
OCR Technology and Services
OCR Technology
OCR : Optical Character Recognition(글자 인식 시스템)
사람이 글자를 읽을 때
- 글자를 찾고
- 찾은 글자를 인식
OCR Process
- 글자 영역 찾기
- 영역 내 글자 인식
Offline handwriting VS Online handwriting
- offline handwriting
- 입력 : 이미지
- online handwriting
- 입력 : 좌표 시퀀스
Object Detection VS Text Detection
Object detection
- 단일 객체 검출 : 이미지 내에 객체가 하나 있다고 가정하고 객체의 위치를 찾아낸다
- 다수 객체 검출 : 이미지 내에 여러개의 객체의 위치 찾아낸다
Text Detection
- 글자 영역 다수 검출
영역이 있으면 class 는 글자이기 때문에 class 가 무엇인지는 구분할 필요 없다 -> 단일 클래스
글자 검출기
이미지가 입력으로 들어왔을 떄 글자 영역 위치를 출력하는 모델
객체 검출과의 차이점
- 영역의 종횡비
- 글자이기 떄문에 글자의 특성상 가로 or 세로가 긴 영역이 많다
- 객체 밀도
- 밀도가 높다
detector
글자 영역 감지
recognizer
영역 내에서 글자를 인식한다
serializer
recognizer 결과를 사람이 읽는 순서로 정렬해 최종 문자열을 만든다
이 serializer 를 사용하면 모듈 뒤에 자연어 처리 모듈을 쉽게 사용할 수 있다
text parser
정의된 key 들에 대한 value 추출
ex) 회사명, 이름, 전화번호 등등
-
BIO 태깅
자연어 처리에서 많이 사용하는 기술
-
입력을 글자단위로 쪼개어 토큰화
-
BIO 태깅 : Begin / Inside / Outside
Begin : 객체명의 시작
Inside : 객체의 중간에 해당되는 토큰
Outside : 정의된 객체와 상관없는 토큰
-
후처리
-
OCR Services
text extractor
- copy and paste
text extractor + NLP
- google photo( + search )
- 번역
- 금칙어 처리
key-value extractor
- 신용카드
- 신분증
- 명함(수기 입력 대체)