요새 tesseract5 학습 방법을 보고 찾아오시는 분이 많길래
학습한 모델을 사용하는 방법도 알려드리면 좋을 것 같아 포스팅해봅니다!
windows용 tesseract 5.0 학습방법 : https://wandukong.tistory.com/7
오늘은 tesseract를 파이썬으로 사용할 수 있는 pytesseract 사용방법에 대해 소개해보겠습니다.
(1) Tesseract OCR 설치
https://github.com/UB-Mannheim/tesseract/wiki
위 링크에서 windows용 Tesseract ocr을 설치합니다.
(2) pytesseract 다운로드
https://github.com/madmaze/pytesseract
위 링크에서 코드를 다운로드합니다.
(3) path 설정
3-1) tesseract.exe 경로 설정
pytesseract.py에서 line 31의 tesseract_cmd를 (1)에서 설치한 Tesseract-OCR 경로로 수정해줍니다.
tesseract_cmd = 'C:\Program Files\Tesseract-OCR\tesseract.exe'
3-2) traineddata 위치 설정
학습시켰던 traineddata 파일을 Tesseract-OCR/tessdata 에 옮겨줍니다.
(4) test 코드 작성
아래 script는 pytesseract 루트 폴더에 만들어주었습니다.
import pytesseract
import cv2
oem = 3
psm = 6
traineddata = 'new'
img = cv2.imread('test_img.png')
ocr_result = pytesseract.image_to_data(image=img, lang=traineddata, config='--oem ' + str(oem) + ' --psm ' + str(psm))
print(ocr_result)
oem 과 psm 은 tesseract 실행 시 option입니다. (포스팅 맨 아래 참고)
traineddata에 각자 학습시켰던 traineddata 파일명을 입력하고
테스트하고 싶은 이미지로 위 코드를 실행시키면 됩니다.
위와 같이 결과가 잘 나오는 것을 확인할 수 있습니다.
image_to_data() 대신 image_to_string()을 사용하면
위와 같이 깔끔한 string만을 출력합니다.
이외에도 다양한 함수가 있는데 pytesseract.py 코드를 참고하시면 될 것 같습니다.
+ 참고
- oem, psm option
https://github.com/tesseract-ocr/tesseract/blob/main/doc/tesseract.1.asc
'머신러닝 > OCR' 카테고리의 다른 글
[논문 리뷰] SynthTIGER 리뷰 (0) | 2022.03.18 |
---|---|
EasyOCR 사용 방법 (7) | 2022.01.16 |
EasyOCR 소개 (0) | 2021.10.10 |
Tesseract OCR 5.0 Windows용 학습 방법 (23) | 2021.08.26 |
Tesseract OCR (0) | 2021.05.08 |