본문 바로가기
끝나지 않는 개발스터디

OCR을 이용해보자

by 행복한집사 2024. 4. 2.

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를 사용해 본 모습

PDF를 이미지로 변환 후 이미지에서 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

 

댓글