[pytesseract] python OCR 화면인식 글자 출력하기

about

이미지나 화면의 문자를 읽어 텍스트로 변환해주는 광학 문자 인식(OCR, Optical Character Recognition)을 파이썬에서 사용하기 쉽게 해주는 도구이다. 테서랙트는 오픈소스 OCR 엔진 으로 유명하며 2005년 HP에 의해 오픈소스화 되었으며, 2006년 이후 Google에 의해 개발되고 있다.

공식 홈페이지는 https://github.com/tesseract-ocr/tesseract 이다.

패키지에는 OCR 엔진(libesseract) 및 CLI가 포함되어 있다. Tesseract 4는 라인 인식에 중점을 둔 새로운 신경망 기반 OCR 엔진(LSTM)을 추가했다. 인공지능을 추가한 것이다. Tesseract 3 등 하위 버전과의 호환을 위해 OCR 레거시 엔진 모드(—oem 0)를 옵션을 통해 사용할 수 있도록 하였다.

 

설치

공식 페이지(https://github.com/tesseract-ocr/tesseract)에 자세히 안내되어 있다.

https://tesseract-ocr.github.io/tessdoc/Downloads.html 페이지에서 운영체제에 맞는 테서렉트를 다운받을수 있다.

 

On Linux

sudo apt-get update
sudo apt-get install libleptonica-dev
sudo apt-get install tesseract-ocr tesseract-ocr-dev
sudo apt-get install libtesseract-dev

 

On Mac

 

brew install tesseract

On Windows

https://github.com/UB-Mannheim/tesseract/wiki 에서 설치 파일을 받을 수 있다.

기본 언어는 "영어(English)"이며 한국어 및 기타언어를 사용하기 위해서는 설치 과정 중에 언어팩을 추가로 선택하여 설치할 수 있다.

 

추가 언어 선택

설치를 완료했으면 운영체제별로 맞게 환경변수를 등록해야한다. 기본 경로로 설치를 완료했다면 환경변수를 등록한다. Windows 64bit 기준이다.

C:\\Program Files\\Tesseract-OCR

 

pip install

파이썬을 통해 테서랙트를 사용하려면 pip 패키지 설치가 필요하다. 아래의 과정을 통해 설치한다.

 

pip install tesseract
pip install tesseract-ocr
from PIL import Image
import pytesseract

im = Image.open("sample1.jpg")

text = pytesseract.image_to_string(im, lang = 'eng')

print(text)

“TesseractNotFound Error: tesseract is not installed or it's not in your path”

에러가 발생하는 경우 python 코드 상단에 경로 설정 구문을 추가한다. 기본 경로로 설치했을 경우 다음과 같고 경로를 다르게 설치한 경우 테서랙트가 설치된 경로를 입력한다.

pytesseract.pytesseract.tesseract_cmd = 'C:\\Program Files\\Tesseract-OCR\\tesseract.exe'

두 가지 언어가 포함된 경우 lang 파라미터를 'eng+kor'로 변경하여 선언하면 된다.

 

Testing

 

초기 버전에 비하면 상당히 높은 수준의 인식률을 보여준다. OpenCV나 기타 이미지 처리를 통해 가공한다면 더 정확한 이미지가 나올 수 있을 것이다.

반응형