Python 은 바 이 두 API 를 기반 으로 그림 의 문 자 를 식별 하고 추출 합 니 다.

바 이 두 AI 개발 플랫폼 의 OCR 문 자 를 활용 해 API 인식 을 하고 그림 속 문 자 를 추출한다.먼저 API 호출 ID 와 key 를 등록 해 야 합 니 다.절 차 는 다음 과 같 습 니 다.
바 이 두 AI 오픈 플랫폼을 열 고 콘 솔 에 들 어 가 는 문자 인식 애플 리 케 이 션(바 이 두 계 정 이 필요 합 니 다).
文字识别
애플 리 케 이 션 을 만 들 고 관리 애플 리 케 이 션 에 들 어가 AppID,API Key,Secrect Key 를 기록 하고 API 를 호출 합 니 다.
管理应用
AppID
마지막 으로 python 의 바 이 두 ai 인 터 페 이 스 를 설치 한 라 이브 러 리

pip install baidu-aip
다음은 코드 구현 입 니 다.모든 식 별 된 그림 을 picture 라 는 폴 더 에 넣 어야 합 니 다.

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Created on Tue Jun 12 09:37:38 2018
    api        
@author: XnCSD
"""

import glob
from os import path
import os
from aip import AipOcr
from PIL import Image

def convertimg(picfile, outdir):
    '''      ,           
    picfile:        
    outdir:          
    '''
    img = Image.open(picfile)
    width, height = img.size
    while(width*height > 4000000):  #                k
        width = width // 2
        height = height // 2
    new_img=img.resize((width, height),Image.BILINEAR)
    new_img.save(path.join(outdir,os.path.basename(picfile)))
    
def baiduOCR(picfile, outfile):
    """    api    ,        
    picfile:         
    outfile:        
    """
    filename = path.basename(picfile)
    
    APP_ID = '******' #       ID,  
    API_KEY = '******'
    SECRECT_KEY = '******'
    client = AipOcr(APP_ID, API_KEY, SECRECT_KEY)
    
    i = open(picfile, 'rb')
    img = i.read()
    print("      :\t" + filename)
    message = client.basicGeneral(img)   #       ,   50 000    
    #message = client.basicAccurate(img)   #          ,   800    
    print("    !")
    i.close();
    
    with open(outfile, 'a+') as fo:
        fo.writelines("+" * 60 + '
') fo.writelines(" :\t" + filename + "
" * 2) fo.writelines(" :
") # for text in message.get('words_result'): fo.writelines(text.get('words') + '
') fo.writelines('
'*2) print(" !") print() if __name__ == "__main__": outfile = 'export.txt' outdir = 'tmp' if path.exists(outfile): os.remove(outfile) if not path.exists(outdir): os.mkdir(outdir) print(" ...") // , , for picfile in glob.glob("picture/*"): convertimg(picfile, outdir) print(" ...") for picfile in glob.glob("tmp/*"): baiduOCR(picfile, outfile) os.remove(picfile) print(' ! %s 。' % outfile) os.removedirs(outdir)
파 이 썬 이 바 이 두 API 를 기반 으로 이미지 의 문 자 를 인식 하고 추출 하 는 것 에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 파 이 썬 바 이 두 API 인식 이미지 문자 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 많은 지원 을 바 랍 니 다!

좋은 웹페이지 즐겨찾기