>  기사  >  백엔드 개발  >  Python 프로그래밍은 Baidu OCR 인터페이스 도킹 및 이미지 텍스트 추출 기능을 구현합니다.

Python 프로그래밍은 Baidu OCR 인터페이스 도킹 및 이미지 텍스트 추출 기능을 구현합니다.

PHPz
PHPz원래의
2023-08-26 17:28:45852검색

Python 프로그래밍은 Baidu OCR 인터페이스 도킹 및 이미지 텍스트 추출 기능을 구현합니다.

Python 프로그래밍은 이미지 텍스트 추출 기능을 실현하기 위해 Baidu OCR 인터페이스 도킹을 구현합니다.

소개:
딥 러닝의 급속한 발전으로 OCR(광학 문자 인식, 광학 문자 인식) 기술이 점차 해당 분야에서 인기 있는 응용 프로그램이 되었습니다. 컴퓨터 비전 중 하나입니다. Baidu AI 오픈 플랫폼에서 제공하는 OCR 인터페이스는 개발자에게 편리하고 빠른 텍스트 인식 기능을 제공합니다. 이 기사에서는 Python 프로그래밍을 결합하여 Baidu OCR 인터페이스와 인터페이스하여 이미지 텍스트 추출 기능을 실현하는 방법을 보여줍니다.

1단계: Baidu AI Open Platform 계정 신청
먼저 Baidu AI Open Platform 공식 웹사이트(https://ai.baidu.com/)에 계정을 등록해야 합니다. 등록이 완료되면 API Key와 Secret Key를 얻기 위한 애플리케이션을 생성해야 합니다.

2단계: 해당 Python 라이브러리 설치
프로그래밍에는 Python을 사용해야 합니다. 다음 라이브러리를 설치했는지 확인하세요.

  • requests: HTTP 요청을 보내는 데 사용
  • base64: 이미지를 Base64 인코딩으로 변환하는 데 사용
  • hashlib: MD5 서명을 생성하는 데 사용
  • time: 타임스탬프 생성에 사용
  • json: API에서 반환된 JSON 데이터를 구문 분석하는 데 사용

이러한 라이브러리는 다음 명령을 통해 설치할 수 있습니다.

pip install requests

3단계: 인코딩 구현

다음으로는 이미지 텍스트 추출 기능을 구현하기 위한 Python 코드를 작성하겠습니다. 먼저 필요한 라이브러리를 가져와야 합니다.

import requests
import base64
import hashlib
import time
import json

그런 다음 API 키, 비밀 키 및 기타 정보를 저장할 여러 변수를 정의해야 합니다.

API_KEY = 'your_api_key'
SECRET_KEY = 'your_secret_key'
OCR_URL = 'https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic'

다음으로 이미지를 Base64 인코딩으로 변환하는 함수를 작성해야 합니다. 문자열:

def image_to_base64(image_path):
    with open(image_path, 'rb') as image_file:
        return base64.b64encode(image_file.read()).decode('utf-8')

그런 다음 API 요청의 서명 정보를 생성하는 함수를 작성해야 합니다.

def generate_sign(url, params, timestamp, secret_key):
    sorted_params = sorted(params.items(), key=lambda x: x[0])
    sorted_params.append(('timestamp', str(timestamp)))
    raw_sign = ''.join([x[0] + '=' + x[1] for x in sorted_params]) + secret_key
    sign = hashlib.md5(raw_sign.encode('utf-8')).hexdigest()
    return url + '?' + '&'.join([x[0] + '=' + x[1] for x in sorted_params]) + '&sign=' + sign

마지막으로 이미지 텍스트 추출 기능을 구현하기 위해 Baidu OCR 인터페이스를 호출하는 기본 함수를 작성합니다.

def ocr(image_path):
    access_token = get_access_token(API_KEY, SECRET_KEY)
    url_params = {
        'access_token': access_token,
        'image': image_to_base64(image_path)
    }
    timestamp = int(time.time())
    request_url = generate_sign(OCR_URL, url_params, timestamp, SECRET_KEY)
    response = requests.post(request_url)
    result = response.json()
    if 'words_result' in result:
        for word in result['words_result']:
            print(word['words'])
    else:
        print('Error occurred: ' + result['error_msg'])

4단계: 코드 실행
이제 이미지에서 텍스트 정보를 추출하는 코드를 실행할 수 있습니다.

ocr('image.jpg')

실행하기 전에 'image.jpg'를 텍스트를 추출하려는 이미지의 경로로 바꾸세요.

결론:
바이두 OCR 인터페이스의 도킹은 Python 프로그래밍을 통해 구현되었으며, 이미지 텍스트 추출 기능이 구현되었습니다. 이를 통해 개발자는 Baidu AI 플랫폼의 OCR 기술을 쉽고 빠르게 사용하여 다양한 텍스트 인식 애플리케이션 시나리오를 실현할 수 있습니다. 문서 스캔, 인증 코드 인식, 양식 작성 등 OCR 기능을 사용하면 워드 프로세싱 및 분석을 보다 효율적으로 수행할 수 있습니다. 이 기사의 데모를 통해 독자들이 OCR의 작동 원리를 더 깊이 이해하고 실제 프로젝트에서 보다 복잡한 OCR 애플리케이션을 구현할 수 있기를 바랍니다.

위 내용은 Python 프로그래밍은 Baidu OCR 인터페이스 도킹 및 이미지 텍스트 추출 기능을 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.