首页 > 其他分享 >【手写文字识别】百度云API实现文字识别

【手写文字识别】百度云API实现文字识别

时间:2024-09-04 14:22:50浏览次数:11  
标签:文字 res image dic API result 识别 百度

调用百度云实现手写识别的方法,准确率佳。

1.搜索“百度云”,打开官网:

进入官网后先登录/注册;

搜索“文字识别”,点击打开,点击“立即使用”:

一定要先领取,再创建应用(需要进行实名认证):

领取“通用场景OCR”即可:

领完点击“去创建”,接口选择文字识别的全部;

这个暂不用选,填写描述就领取成功了,后面用到的就是图上打码的三部分:

以上完成后就可以开始写代码了,首先解释一些部分:

from aip import AipOcr

aip 是百度AI开放平台提供的 Python SDK,AipOcr 是其中用于光学字符识别的类。导入 AipOcr 类,以便后续创建识别客户端实例,使我们能够使用百度云的 OCR 功能。

    with open(picname, 'rb') as fp:
        image = fp.read()

使用 with open 语句打开文件,'rb' 表示以二进制模式读取文件,读取图片文件的内容;将图片的二进制数据加载到变量 image 中。

    dic_result = client.basicAccurate(image)

调用 client.basicAccurate 方法,传入图片的二进制数据。向百度云 OCR 服务发送识别请求,并接收响应结果。获取图片中文字的识别结果。

    res = dic_result.get('words_result', [])

从 dic_result 字典中获取 words_result 键对应的值,如果不存在则返回空列表。

提取识别到的文字内容。将识别结果保存到 res 变量中。

    result = ''
    for m in res:
        result += str(m['words']) + '\n'

初始化一个空字符串 result,然后遍历 res 列表,将每个识别出的词添加到 result 中,并在每个词后添加换行符。格式化识别结果为多行字符串。生成最终的识别文本。

完整代码如下:

from aip import AipOcr
# 这部分改为百度云应用中的
APP_ID = 'XXXXXXXXX'
API_KEY = 'XXXXXXXXXXXXXXXXXXX'
SECRET_KEY = 'XXXXXXXXXXXXXXXXXXXXXX'
client = AipOcr(APP_ID, API_KEY, SECRET_KEY)

def pic_text_recognition(picname):
    with open(picname, 'rb') as fp:
        image = fp.read()
    dic_result = client.basicAccurate(image)
    print(dic_result)
    res = dic_result.get('words_result', [])
    result = ''
    for m in res:
        result += str(m['words']) + '\n'
    return result

def main(image_path):
    try:
        string = pic_text_recognition(image_path)
        print(f"识别结果:\n{string}")
    except Exception as e:
        print(f"处理 {image_path} 时出错: {e}")

# 输入图片路径
image_path = input("请输入图片路径:")
main(image_path)

 运行时,输入图片文件的地址就可以。我为了方便,将图片复制到pycharm中再复制地址:

 随便趴电脑上写了几行:

标签:文字,res,image,dic,API,result,识别,百度
From: https://blog.csdn.net/Eden_Hazard7/article/details/141889006

相关文章

  • 【OpenCV】手势识别实现电脑音量控制
            从AdvanceComputerVisionwithPython-ComputerVisionZone 这个网站上找到了一些有关人脸识别和手势识别的示例代码与课程,记录一下学习的过程和结果,Python初学,写得比较基础。            代码基本是流程类的代码,核心功能在导入的库中......
  • 基于CNN卷积神经网络迁移学习的图像识别实现
    基于CNN卷积神经网络迁移学习的图像识别实现基于CNN卷积神经网络迁移学习的图像识别实现写在前面一,原理介绍迁移学习的基本方法1.样本迁移(InstancebasedTL)2.特征迁移(FeaturebasedTL)3.模型迁移(ParameterbasedTL)4.关系迁移(RelationbasedTL)二.准备工作1.依赖库安......
  • Node.js发票查验接口示例、识别查验接口参数返回
    财务、审计等经常与发票打交道的人员常常会遇到虚假发票、错票、重复报销等一系列问题。对于会计审计、代理记账、电子商务等发票查验量多的企业来说,成千上万张发票如果仅依赖于人工来进行核验,速度慢效率低,准确率也没保障,因此,如何让发票查验工作变得便捷高效,提升发票查验的效......
  • Node.js发票查验接口示例、识别查验接口参数返回
     财务、审计等经常与发票打交道的人员常常会遇到虚假发票、错票、重复报销等一系列问题。对于会计审计、代理记账、电子商务等发票查验量多的企业来说,成千上万张发票如果仅依赖于人工来进行核验,速度慢效率低,准确率也没保障,因此,如何让发票查验工作变得便捷高效,提升发票查验的......
  • API接口的请求方式及其示例代码​
    API的请求方式主要包括以下几种,这些方式分别对应了HTTP协议中的不同方法,用于实现不同的数据交互需求:GET请求:用途:用于从服务器获取数据。特点:将请求的参数包含在URL中,并以键值对的形式进行传输。由于参数暴露在URL中,因此它适用于获取公开的数据,如天气信息、新闻等。GET请求一般是幂......
  • Blazor项目中建立WebApi
    Blazor项目中建立WebApiProgram.cs中添加代码://第一步builder.Services.AddControllers();.....//第二步app.MapControllers(); 创建接口文件 usingMicrosoft.AspNetCore.Mvc;namespaceNiunan.Net.Charge.BlazorWeb.JieKou{[Route("/api/[c......
  • 全面解析淘宝商品详情API接口基本信息
    要快速了解淘宝商品详情API接口基本信息,就要先知道什么是淘宝商品详情API接口。淘宝商品详情API接口是淘宝开放平台提供的一种应用程序接口,通过这些接口,开发者可以获取淘宝商品的详细信息。它允许第三方开发者通过编程方式与淘宝平台进行交互,获取淘宝商品的详细信息。这些信......
  • 电商数据之匙:淘宝-天猫商品详情 API 接口解码商品细节
       淘宝/天猫商品详情API接口是淘宝开放平台提供的一种服务,它允许开发者通过API调用来获取淘宝或天猫商品的详细信息。这些信息通常包括商品的标题、价格、库存、销量、店铺信息、商品描述、图片等。使用这些API,开发者可以构建各种应用,如商品比价工具、商品推荐系统、电......
  • 【在 Apipost 8.1.2 版本上定义全局变量】
    场景:`在Apipost8.1.1版本上定义全局变量问题描述1.在Apipost7.2.6版本上正常运行的脚本,同步到Apipost8.1.1版本上执行报错。提示变量未定义:以下是报错的变量。apt.variables.set("token",response.json.access_token);console.log(response.json.access_......
  • WPS文字——表格设置
    显示需要的标记文件->选项->视图->格式标记->勾选需要的标记->即可只显示勾选的标记文字转化为表格转换之前利用查找替换将需要分割的位置替换为相同的标记插入->文本转换成表格->文字分隔位置表格细节修改点击表格->文件下方表格属性->修改删除、擦除和......