Skip to content

Commit 1bbdc8d

Browse files
authored
Tesseract OCR 사용법
1 parent cb0c578 commit 1bbdc8d

File tree

1 file changed

+54
-0
lines changed

1 file changed

+54
-0
lines changed

tesseract_ocr.py

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
"""
2+
Tesseract 다운로드
3+
https://tesseract-ocr.github.io/tessdoc/Installation.html
4+
5+
윈도우 OS 사용자의 경우 아래 링크에서 다운받으세요.
6+
https://github.com/UB-Mannheim/tesseract/wiki
7+
https://digi.bib.uni-mannheim.de/tesseract/tesseract-ocr-w64-setup-5.3.0.20221222.exe
8+
9+
OS에 맞는 설치 파일을 다운로드 후 설치하세요.
10+
11+
설치 후 Tesseract 설치 경로를 Path에 추가합니다.
12+
Tesseract 설치 경로 기본값: C:\Program Files\Tesseract-OCR
13+
Path 설치 방법: https://blog.naver.com/oralol/222472012941
14+
15+
[파이썬]
16+
* opencv 설치: pip install opencv-python
17+
* pytesseract 설치: pip install pytesseract
18+
pip 실행이 안될 경우 python -m pip 으로 해보시기 바랍니다.
19+
20+
* OEM(OCR Engine Mode)
21+
0 레거시 엔진
22+
1 신경망 LSTM 엔진
23+
2 레거시+LSTM
24+
3 기본값
25+
26+
* PSM(Page Segmentation Mode)
27+
0 방향 및 스크립트 감지(OSD) 전용.
28+
1 OSD를 통한 자동 페이지 분할.
29+
2 자동 페이지 분할, OSD 또는 OCR 없음.
30+
3 완전 자동 페이지 분할이지만 OSD는 없습니다. (기본값)
31+
4 다양한 크기의 단일 텍스트 열을 가정합니다.
32+
5 세로로 정렬된 텍스트의 단일 균일 블록을 가정합니다.
33+
6 하나의 균일한 텍스트 블록을 가정합니다.
34+
7 이미지를 단일 텍스트 줄로 처리합니다.
35+
8 이미지를 한 단어로 취급합니다.
36+
9 이미지를 원 안의 한 단어로 취급합니다.
37+
10 이미지를 단일 문자로 처리합니다.
38+
11 희소 텍스트. 특정 순서 없이 가능한 한 많은 텍스트를 찾습니다.
39+
12 OSD가 포함된 희소 텍스트.
40+
13 원시 라인. 이미지를 단일 텍스트 줄로 취급하여 Tesseract에 특정한 핵을 우회합니다.
41+
"""
42+
43+
import cv2
44+
import pytesseract
45+
46+
pytesseract.pytesseract.tesseract_cmd = r'C:/Program Files/Tesseract-OCR/tesseract.exe'
47+
img = cv2.imread('test.png')
48+
my_config = "-l eng+kor --oem 3 --psm 6"
49+
# my_config = "--oem 3 --psm 6 outputbase digits"
50+
# my_config = "-c tessedit_char_whitelist=0123456789 --oem 3 --psm 6"
51+
# my_config = "-c tessedit_char_whitelist=abcdefghijklmnopqrstuvwxyz --oem 3 --psm 6"
52+
# my_config = "-c tessedit_char_blacklist=0123456789 --oem 3 --psm 6"
53+
result = pytesseract.image_to_string(img, config=my_config)
54+
print(result)

0 commit comments

Comments
 (0)