金天牛

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

Python通过百度Ai识别图片中的文字

版本:python3.7

工作中有需要识别图片中的汉字,查看了半天大神们的博客,但没找到完全可以用的源码,经过自己的实践,以下源码可以实现:

创建应用 
首先你需要登录百度AI,选择文字识别,创建一个应用,会生成 应用名称、AppID、API Key、Secret Key 这些东西,下面我们代码是需要用到APP_ID、API_Key 和 Secret_Key ,然后安装百度的包:baidu-aip

图片我个人保存在了filePath 路径里,当然这个图片也可以是从其他地方读取。

如果正则表达式不太会,可以参考:http://www.cnblogs.com/wenmaoyu/archive/2011/07/21/2113124.html

# -*- coding: UTF-8 -*-
from aip import AipOcr
import re

# 定义常量
APP_ID = '***' # 百度生成的
API_KEY = '***'
SECRET_KEY = 'g7grgiXHKf9Rbv1u7frxyOsh39mdayYs'

# 初始化AipFace对象
aipOcr = AipOcr(APP_ID, API_KEY, SECRET_KEY)

# 读取图片
filePath = "D:\QQ129.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.basicAccurate(get_file_content(filePath), options) #basicAccurate是高精度版,识别率高, basicGeneral是普通识别版
print(result)

world=re.findall(r'[\u4e00-\u9fa5]',str(result)) #通过正则表达式识别汉字
print(world)
for each in world:
print(each)

posted on   金天牛  阅读(2612)  评论(0编辑  收藏  举报

编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示