(1)

다음으로 AI 기술 설명드리겠습니다.

저희 Nengcipe는 2030 자취생들의 냉장고를 더 효율적으로 관리할 수 있도록 OCR기능을 도입했습니다. 먼저, OCR이란, Optical Character Recognition 광학문자 인식으로, 수동으로 텍스트를 입력할 필요없이 컴퓨터가 읽을 수 있는 타이핑으로 만드는 AI기술입니다. 저희는 이 기술을 사용하여 영수증의 재료와 수량을 인식하여 사용자가 재료를 관리할 수 있도록 진행했습니다.

(2)

OCR학습을 위해, 저희는 영어와 한국어를 동시에 인식할 수 있는 무료 OCR 개발 서비스인 EasyOCR을 선택했습니다. 선택 후, 저희는 OpenCV와 EasyOCR을 통해 더욱 더 정확도를 높이기 위해 파인튜닝을 진행했습니다. 처음에는 신경망 모델 학습단계에서 bench-text-recognition-benchmark를 선택했으나, pre-trained 모델이 제공되지 않아 AI Hub에서 한국어 글자체 이미지 모델로 변경하여 학습을 진행했습니다.

본 학습 전, 이미지 1장만을 넣었을 때, 대비가 명확한 경우와 그렇지 않을 경우의 차이가 심하다는 점을 파악하였고 이를 보완하기 위해 더욱 세세한 가공의 필요성을 깨달았습니다.

(3)

데이터는 annotation값을 이용해 bbox위치 정보로 단어 영역을 잘라 train, validation, test 7:2:1로 가공했습니다. 총 2번의 가공을 목표로 하였으나, AI hub측 데이터셋의 결함이 존재하여 이를 해결하기 위해 총 5번의 가공으로 마무리했습니다.

데이터 가공까진 완성할 수 있었으나, 팀원들이 ai 기술을 처음 접했기에 개발 시간이 오래걸렸고, 산학 프로젝트 기간 내에 정확도를 높이기 어려울 것이란 멘토님의 조언에 따라 정확도를 높일 수 있는 방안을 고민하게 됐습니다.

(4)

결과적으로, 저희는 영수증 인식 정확도를 높이기 위해, 현재 한국어 OCR기술이 가장 뛰어난 네이버 CLOVA API를 선택하게 됐습니다. 저희는 영수증이란 특화모델 템플릿을 선택했고, CLOVA에서 제공하는 전처리, 영역 검출, OCR 을 토대로 영수증 인식 기술을 마무리할 수 있었습니다.

(5)

이처럼 저희는 OCR조사 부터 시작해서 EasyOCR, Clova OCR을 사용하며 CLOVA OCR을 선택했고 최종적으로 버그 테스트까지 마무리하여 서비스에 해당 기술을 배포했습니다.