Python으로 사진에서 문자 인식하는 AI 사용해보기

INGBEEN·2021년 11월 1일
0

오늘의 해보기

목록 보기
2/2
post-thumbnail

[ 오늘의 해보기 ]

OCR AI 사용해보기

OCR(Optical character recognition, 광학 문자 인식)은 이미지(사진) 속 글자 위치를 찾고 어떤 글자인지 자동으로 알아내는 기술이라고 한다.

요즘의 개발 트렌드는 IT 대기업들의 똑똑하신 개발자들이 만든 거 그냥 갖다 쓰면 되는 거라고 하는데, 대표적으로 만들어져 있는 OCR AI로는 Tesseract(by 구글), Google Cloud Vision(by 구글), Clova(by 네이버) 등이 있다.

유튜브 보다가 알게되어서 글을 쓰고 있는데, 실습은 해당 영상을 참고하여 Tesseract를 사용해보는 걸로 진행한다.

출처 : https://youtu.be/L8q-KCbXybc


1. Tesseract 설치

brew install tesseract-lang

2. 파이썬에 tesseract 모듈 설치

pip install pytesseract
pip install Pillow (이건 기본으로 설치되어 있더라)

Pillow는 Python Imaging Library(PIL), 파이썬에서 여러 포맷을 지원하는 이미지 처리 라이브러리의 하나이다.


3. 파이썬 작성하기

import pytesseract
from PIL import Image

pytesseract.pytesseract.tesseract_cmd = r'/opt/homebrew/bin/tesseract'

a = Image.open('img.PNG')
result = pytesseract.image_to_string(a, lang='kor')
print(result)

4. 결과 확인

img.PNG

img2.jpg

쥐크
「 본 286-81~-01771
넌 |] 대 프 이
{ 고양시 일산서구 중앙로1391
| 기이크타문 지하1증
. 전 와 번호:031-916-9200
"
. ㅣ 킴마트를 찾아주셔서 김사합니다.

0,
0
일:20-09-26 18114,토요일
001 공주알밤술 7500!
나 8809409970097 1,300 2 2.600
002 웰치소다포도 1ㅁL
일 8801043034722 _ 1,980 1 580
: 003 상주
| 22001429 1.980 1 1.980#
004 팔도)비빔면멀티팩 5입 재
「 8801128503051 3,980 1 _3.900
. 00면세물품 : 1.980
과세물품: 7,782
. 부가세(031) : 778
1 말 겨|:
, 10
:. 신용카드지불 :


5. 총평

tesseract는 영어나 숫자의 정확도가 높고 한글은 정확도를 기대하기 어렵다고 한다. 한글은 네이버의 클로바가 정확도가 괜찮다고 한다. 근데 영어 영수증도 해봤는데 정확도가 한글보다 조금 나은 정도이지 그렇게 크지는 않았다. 더 궁금하면 다른 AI도 사용해보고 추가해보겠다.

OCR은 뭐 금융권에서 카드 발급이나 본인 인증시 신분증 자동인식 같은 그런 거에 이미 쓰이고 있는 기술이라 이렇게 코드 몇 줄로 바로 시험해볼 수 있다는 게 신기했다.

profile
No Excuses

1개의 댓글

comment-user-thumbnail
2022년 11월 26일

안녕하세요. 잠시 도움을 받고자 댓글을 달게 되었습니다. FileNotFoundError: [Errno 2] No such file or directory: 'recept1.JPG' 이거.. 어떻게 해야 할까요..? 제가 아직 미숙해서 ㅜㅜ....

답글 달기