在这篇文章中,我将详细讲解如何使用百度AI提供的文字识别功能,来实现将图片中的文字信息提取出来并转化成可用的文本数据。
在开始使用百度文字识别功能之前,你需要先申请一个百度开发者账号,并创建一个文字识别应用(即创建一个应用,并获取该应用的 APP_ID、API_KEY 和 SECRET_KEY 参数)。
百度AI提供了 Python SDK,我们可以通过pip安装它。
pip install baidu-aip
在下面的代码中,我将展示如何使用百度文字识别功能,将远程图片的文字信息提取出来。
from aip import AipOcr
# 以下参数均为你申请的文字识别应用的参数
APP_ID = 'your_app_id'
API_KEY = 'your_api_key'
SECRET_KEY = 'your_secret_key'
client = AipOcr(APP_ID, API_KEY, SECRET_KEY)
url = "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1594078087196&di=9c99c9123a1bf8f85f7f6584a5b832e3&imgtype=0&src=http%3A%2F%2Fi1.sinaimg.cn%2FIT%2Fcr%2F2009%2F0531%2Fc155391t10313.jpg"
result = client.basicGeneralUrl(url)
print(result)
输出结果为:
{
'log_id': 793295759404042759,
'words_result_num': 3,
'words_result': [
{
'words': 'KFC烤翅'
},
{
'words': '2 19元\n'
},
{
'words': '图片\n'
}
]
}
百度文字识别功能也支持表格文字的识别,我们可以使用以下示例代码,将图片中的表格文字信息提取出来。
from aip import AipOcr
# 以下参数均为你申请的文字识别应用的参数
APP_ID = 'your_app_id'
API_KEY = 'your_api_key'
SECRET_KEY = 'your_secret_key'
client = AipOcr(APP_ID, API_KEY, SECRET_KEY)
image_path = "table.png"
# 读取图片
with open(image_path, 'rb') as fp:
image = fp.read()
# 表格文字识别
result = client.formRecognition(image)
print(result)
输出结果为:
{
'request_id': '1602149787,550d48af-517e-4c0e-af58-7b055b8c2d4e',
'result': {
'templateSign': 'card_1',
'retData': {
'name': {
'itemStr': 'xxxxx医院'
},
'labor': {
'itemStr': '非住院( 3日),其他'
},
'age': {
'itemStr': '34 岁'
},
'sex': {
'itemStr': '女'
},
'diag': {
'itemStr': '急慢性混合性胃炎'
},
'cardID': {
'itemStr': '3101121982xxxx001X'
}
}
}
}
通过上面的示例代码,我们可以看到,百度文字识别功能非常强大,能够很好地满足我们的实际应用需求。在接下来的开发过程中,你可以根据具体场景需求,进行个性化的开发和调试,来满足你的具体需求。