[python] PyTesseract를 사용하여 실시간 화상 인식 및 텍스트 추출하기

이번 포스트에서는 Python의 PyTesseract 라이브러리를 사용하여 실시간 화상 인식 및 텍스트 추출을 수행하는 방법에 대해 알아보겠습니다.

PyTesseract란 무엇인가요?

PyTesseract는 Google에서 개발한 OCR(광학 문자 인식) 엔진인 Tesseract를 Python에서 사용할 수 있도록 해주는 라이브러리입니다. OCR은 이미지나 스캔된 문서에서 텍스트를 감지하고 인식하는 기술로, 이미지에서 텍스트를 추출하는데 사용됩니다.

필요한 패키지 설치하기

먼저, PyTesseract를 사용하기 위해서는 pytesseract 패키지를 설치해야 합니다. 다음 명령어를 사용하여 설치할 수 있습니다.

pip install pytesseract

또한, OCR 엔진인 Tesseract도 설치해야 합니다. 설치 방법은 운영 체제에 따라 다를 수 있으므로, 해당 운영 체제에 맞는 방법을 찾아 설치해야 합니다.

실시간 화상 인식 및 텍스트 추출하기

이제 PyTesseract를 사용하여 실시간 화상 인식 및 텍스트 추출을 수행하는 방법에 대해 알아보겠습니다. 먼저, 다음과 같은 Python 코드를 작성해주세요.

import cv2
import pytesseract

# 이미지 파일 또는 비디오 스트림에서 이미지 읽어오기
capture = cv2.VideoCapture(0)

while True:
    ret, frame = capture.read()
    
    # 이미지를 회색조로 변환
    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
    
    # 이미지에서 텍스트 추출
    text = pytesseract.image_to_string(gray, lang='eng')
    
    # 이미지에 추출된 텍스트 표시
    cv2.putText(frame, text, (10, 50), cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 255, 0), 2)
    
    # 추출된 텍스트가 콘솔에 출력됩니다.
    print(text)

    # 이미지를 화면에 표시
    cv2.imshow('Frame', frame)
    
    # 'q' 키를 누를 때까지 반복
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

# 리소스 해제
capture.release()
cv2.destroyAllWindows()

위 코드는 웹캠에서 실시간으로 이미지를 읽어와 회색조로 변환한 후, PyTesseract를 사용하여 텍스트를 추출하는 예제입니다. 추출된 텍스트는 이미지 상단에 표시되며, 콘솔에도 출력됩니다.

실행하기

위 코드를 실행하기 전에, cv2.VideoCapture()의 인자로 0 대신에 웹캠 장치의 인덱스를 넣어주세요. 또한, Tesseract 설치 경로를 추가로 지정해야 할 수도 있습니다.

실행하면 웹캠이 열리고, 실시간으로 이미지가 처리되고 텍스트가 추출됩니다. q 키를 누르면 프로그램이 종료됩니다.

결론

이번 포스트에서는 PyTesseract를 사용하여 실시간 화상 인식 및 텍스트 추출을 수행하는 방법에 대해 알아보았습니다. PyTesseract는 강력한 OCR 엔진 Tesseract를 Python에서 사용할 수 있도록 도와주는 라이브러리이며, 다양한 응용 프로그램을 개발할 때 유용하게 사용될 수 있습니다.

더 자세한 내용은 아래의 참고 자료를 확인해 주세요.

문의 사항이 있으시면 언제든지 질문해주세요!