【Python】Python文字识别

匿名 (未验证) 提交于 2019-12-02 22:51:30
1.使用pytesseract和PIL库

(1)安装pytesseract和PIL库:pycharm->settings->project interpreter

(2)安装识别引擎tesseract-ocr:点击打开链接

from PIL import Image import pytesseract text=pytesseract.image_to_string(Image.open('test3.png'),lang='chi_sim') print(text)

但是识别英文和数字效果还可以,识别中文效果较差。

2.利用百度AI提供的python SDK

安装OCR Python SDK:pip install baidu-aip

百度AI python SDK文档中心:点击打开链接

(1)通用文字识别:

# -*- coding: UTF-8 -*- from aip import AipOcr # 定义常量 APP_ID = '11352343' API_KEY = 'Nd5Z1NkGoLDvHwBnD2bFLpCE' SECRET_KEY = 'A9FsnnPj1Ys2Gof70SNgYo23hKOIK8Os' # 初始化AipFace对象 aipOcr = AipOcr(APP_ID, API_KEY, SECRET_KEY) # 读取图片 filePath = "test3.png" def get_file_content(filePath):     with open(filePath, 'rb') as fp:         return fp.read() # 定义参数变量 options = {     'detect_direction': 'true',     'language_type': 'CHN_ENG', } # 调用通用文字识别接口 result = aipOcr.basicGeneral(get_file_content(filePath), options) print(result) words_result=result['words_result'] for i in range(len(words_result)):     print(words_result[i]['words'])
(2)表格文字识别:
# -*- coding: UTF-8 -*- from aip import AipOcr import time # 定义常量 APP_ID = '11352343' API_KEY = 'Nd5Z1NkGoLDvHwBnD2bFLpCE' SECRET_KEY = 'A9FsnnPj1Ys2Gof70SNgYo23hKOIK8Os'  # 初始化AipFace对象 aipOcr = AipOcr(APP_ID, API_KEY, SECRET_KEY)  # 读取图片 filePath = "1-2.png" def get_file_content(filePath):     with open(filePath, 'rb') as fp:         return fp.read()  options1={}  # 调用通用文字识别接口 result1 = aipOcr.tableRecognitionAsync(get_file_content(filePath), options1 )  requestID=result1['result'][0]['request_id']  time.sleep(20)          #为了'ret_msg': '已完成'  options2 = {} options2["result_type"] = "json"  result2=aipOcr.getTableRecognitionResult(requestID,options2) print(result2)  str_result=str(result2)  begin=str_result.find('word') for i in range(str_result.count('word')):     print(str_result[begin+7:str_result.find('"',begin+8)])     begin=str_result.find('word',begin+1)
识别出来的结果需要再处理一下。


易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!