OCR(Optical Character Recognition) 을 이용해 PDF 파일에서 글자를 추출해 보기 위해 OCR에 대해 간단히 알아보았습니다.
OCR (Optical Character Recognition) 이란?
- 광학 문자 인식
- 텍스트 이미지를 기계가 읽을 수 있는 텍스트 포맷으로 변환하는 과정
- 이미지 획득 -> 이미지 전처리 -> 텍스트 인식 -> 후처리
참고: https://aws.amazon.com/ko/what-is/ocr/
Tesseract란?
- OCR 오픈 소스 라이브러리
- Apache license. 2006년부터 구글이 후원함
- 다양한 운영체제에서 사용 가능
- Tesseract는 이미지 포맷만을 지원함
- tessdoc을 참고하여 tesseract가 문자를 인식할 수 있도록 이미지 준비
- ex)DPI(해상도) 300 이상에서 가장 잘 작동함
자료 참고:https://en.wikipedia.org/wiki/Tesseract_(software)
https://wandukong.tistory.com/6
간단하게 Tesseract를 사용해 본 모습
# from PIL import Image
import pytesseract
from pdf2image import convert_from_path
pytesseract.pytesseract.tesseract_cmd = r'C:\Program Files\Tesseract-OCR\tesseract.exe'
#pdf 파일을 이미지로 변환
images = convert_from_path('C:\\Users\\Kakaobank\\StudyProjects\\ocr-practice\\financial_settlement.pdf', dpi=300, poppler_path='C:\\Users\\Kakaobank\\downloadedPrograms\\poppler-24.02.0\\Library\\bin')
#이미지에서 텍스트 추출
text_from_images=[]
for image in images:
text = pytesseract.image_to_string(image, lang='kor')
text_from_images.append(text)
#추출된 텍스트 출력 또는 후처리
for text in text_from_images:
print(text)
실습 참고: https://www.youdad.kr/implementing-python-ocr-with-tesseract/
https://blog.naver.com/chandong83/222262274082
'끝나지 않는 개발스터디' 카테고리의 다른 글
네트워크 장비 정리 (0) | 2024.03.21 |
---|---|
정규표현식(Regular expression/regexp/regex) (0) | 2024.03.06 |
파일 구조(File structure) (0) | 2024.03.02 |
암호화 알고리즘 (0) | 2024.02.29 |
압축(손실압축, 비손실 압축) (0) | 2024.02.25 |
댓글