원본 게시물: https://baxin.netlify.app/build-text-extractor-python-under-30-lines/
광학 문자 인식(OCR)으로 알려진 이미지에서 텍스트를 추출하는 것은 문서 처리, 데이터 추출 및 접근성 분야의 애플리케이션에 유용한 기능입니다. 이 가이드에서는 OCR용 pytesseract, 이미지 처리용 Pillow, 대화형 UI 구축용 Gradio와 같은 Python 라이브러리를 사용하여 OCR 앱을 만듭니다. Hugging Face Spaces에 이 앱을 배포하겠습니다.
시작하기 전에 Hugging Face 계정이 필요하고 Docker에 대한 기본적인 지식이 필요합니다.
OCR용 Tesseract와 같은 필수 시스템 종속성을 갖춘 Hugging Face Spaces에 배포하려면 환경을 구성하는 Dockerfile이 필요합니다.
다음 콘텐츠로 Dockerfile을 만듭니다.
# Use an official Python runtime as a parent image FROM python:3.12 ENV PIP_ROOT_USER_ACTION=ignore # Set the working directory in the container WORKDIR $HOME/app # Install system dependencies RUN apt-get update && apt-get install -y RUN apt-get install -y tesseract-ocr RUN apt-get install -y libtesseract-dev RUN apt-get install -y libgl1-mesa-glx RUN apt-get install -y libglib2.0-0 RUN pip install --upgrade pip # Copy requirements and install dependencies COPY requirements.txt requirements.txt RUN pip install --no-cache-dir -r requirements.txt # Copy the app code COPY app.py ./ # Expose the port for Gradio EXPOSE 7860 # Run the application CMD ["python", "app.py"]
import gradio as gr import pytesseract from PIL import Image import os def extract_text(image_path): if not image_path: return "No image uploaded. Please upload an image." if not os.path.exists(image_path): return f"Error: File not found at {image_path}" try: img = Image.open(image_path) text = pytesseract.image_to_string(img) return text if text.strip() else "No text detected in the image." except Exception as e: return f"An error occurred: {str(e)}" iface = gr.Interface( fn=extract_text, inputs=gr.Image(type="filepath", label="Upload an image"), outputs=gr.Textbox(label="Extracted Text"), title="Image Text Extractor", description="Upload an image and extract text from it using OCR." ) iface.launch(server_name="0.0.0.0", server_port=7860)
gradio pytesseract Pillow
이 설정에는 다음이 포함됩니다.
모든 파일이 생성되면 Hugging Face Space로 푸시하세요
위 내용은 Gradio 및 Hugging Face를 사용하여 줄 아래 Python 코드로 텍스트 추출기 앱 구축의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!