目录

  • 1. 作者介绍
  • 2. 腾讯云英文识别API介绍
    • 2.1 英文识别原理—OCR技术
    • 2.2 腾讯云英文识别API
  • 3. 实验过程
    • 3.1获得API
    • 3.2申请调用接口
    • 3.3调试接口
    • 3.4实验代码
    • 3.5实验结果
    • 3.6 问题分析
  • 4. 参考连接

1. 作者介绍

乔奕婕,女,西安工程大学电子信息学院,2022级研究生
研究方向:机器视觉与人工智能
电子邮件:qyj1558@163.com

王泽宇,男,西安工程大学电子信息学院,2022级研究生,张宏伟人工智能课题组
研究方向:机器视觉与人工智能
电子邮件:2717124491@qq.com

2. 腾讯云英文识别API介绍

2.1 英文识别原理—OCR技术

光学字符识别(Optical Character Recognition, OCR)是指对文本资料的图像文件进行分析识别处理,并以文本的形式返回。基本原理是将文本图像转换为数字信号,通过分析图像中的亮度和颜色进行识别。

图像预处理:对图像进行预处理,包括去除噪声、分割字符、校正图像等。

特征提取:对每个字符进行特征提取,并生成用于识别的特征向量。

分类识别:将每个字符进行分类识别,通过与之前的训练数据进行匹配,确定字符类型。

后处理:对识别结果进行后处理,包括纠正拼写、合并单词等。

2.2 腾讯云英文识别API

1.接口描述:支持图像英文文字的检测和识别,返回文字框位置与文字内容。支持多场景、任意版面下的英文、字母、数字和常见字符的识别,同时覆盖英文印刷体和英文手写体识别。

2.图片格式与大小:要求图片分辨率为 15-4096 像素,支持的图片格式包括 JPG、JPEG、PNG、BMP。图片经过Base64编码后不超过7M,图片下载时间不超过3秒。建议使用清晰度高、光线均匀、背景简单的图片进行识别,以确保识别效果的准确性。

3. 实验过程

3.1获得API

首先进入腾讯云注册账号,之后登录账号提示需要实名认证(认证后可申请API免费调用额度),之后按照下图所示点击页面左上角“云产品”,下滑找到“管理与审计”,点击“访问密钥”,进入页面后点击“新建密钥”。

3.2申请调用接口

依次点击“云产品”—“通用文字识别”—“资源包管理”。之后会有询问是否开通服务,选择开通,等待1~2分钟“资源包管理”栏目下的资源就会刷新出来

3.3调试接口

点击页面左上角“腾讯云”,进入页面后在右上搜索栏搜索“英文识别”,点击搜索结果中的“英文识别”,然后点击“调试”。


进入调试界面选择参数和编程语言,注意ImageBase64和ImageUrl参数任选其一即可
输入参数在每个参数名后的“参数说明”有详细解释。
输出参数:
TextDetection:检测到的文本信息。
Angel:图片旋转角度(角度制),文本的水平方向为0°;顺时针为正,逆时针为负。
RequestId:唯一请求 ID,每次请求都会返回。

利用第三方网站得到输入图片的Base64码或者URL地址输入到参数中,之后发起调用得到识别结果。

上图URL链接:https://www.helloimg.com/images/2023/05/18/oEdI7v.jpg

3.4实验代码

运行程序在使用的环境中下载tencentcloud包

pip install tencentcloud-sdk
import json
from tencentcloud.common import credential
from tencentcloud.common.profile.client_profile import ClientProfile
from tencentcloud.common.profile.http_profile import HttpProfile
from tencentcloud.common.exception.tencent_cloud_sdk_exception import TencentCloudSDKException
from tencentcloud.ocr.v20181119 import ocr_client, models
import base64
# 以二进制方式读取图片,然后对读取的图片进行base64编码和解码
def get_json(img_dir):with open(img_dir, 'rb') as f:base64_data = base64.b64encode(f.read())base64_code = base64_data.decode()try:#实例化一个认证对象#传入腾讯云账户 secretId,secretKeycred = credential.Credential(secretId,secretKey)# 实例化一个http选项,可选的,没有特殊需求可以跳过httpProfile = HttpProfile()httpProfile.endpoint = "iai.tencentcloudapi.com"# 实例化一个客户端配置对象clientProfile = ClientProfile()#clientProfile.httpProfile = httpProfile#若使用ImageURL请释放这行代码# 实例化要请求产品的client对象,clientProfile是可选的client = ocr_client.OcrClient(cred, "ap-beijing", clientProfile)# 实例化一个请求对象,每个接口都会对应一个request对象req = models.EnglishOCRRequest()params = {"ImageBase64": base64_code,#若使用ImageURL请注释掉这行代码,并释放下一行代码#"ImageUrl": "https://www.helloimg.com/images/2023/05/19/oEDha9.md.jpg",#手写happy"EnableCoordPoint": True,"EnableCandWord": True,"Preprocess": True}req.from_json_string(json.dumps(params))# 返回的resp是一个EnglishOCRResponse的实例,与请求对象对应resp = client.EnglishOCR(req)# 输出json格式的字符串回包print(resp.to_json_string())except TencentCloudSDKException as err:print(err)
# 填入自己新建的访问密钥和图片的详细地址
secretId = '替换为自己的secretId'
secretKey = '替换为自己的secretKey'
img_dir = r"替换为输入图片路径"
json_data = get_json(img_dir)
print(json_data)

3.5实验结果

运行图片:

图片URL地址:https://www.helloimg.com/images/2023/05/19/oEDha9.jpg
运行结果:

{"TextDetections": [{"DetectedText": "happy", "Confidence": 99, "Polygon": [{"X": 344, "Y": 256}, {"X": 602, "Y": 256}, {"X": 602, "Y": 433}, {"X": 344, "Y": 433}], "AdvancedInfo": "{}", "WordCoordPoint": [{"WordCoordinate": [{"X": 301, "Y": 444}, {"X": 301, "Y": 245}, {"X": 302, "Y": 245}, {"X": 302, "Y": 444}]}], "CandWord": [{"CandWords": [{"Confidence": 99, "Character": "h"}, {"Confidence": 0, "Character": "㊥"}]}, {"CandWords": [{"Confidence": 99, "Character": "a"}, {"Confidence": 0, "Character": "㊥"}]}, {"CandWords": [{"Confidence": 99, "Character": "p"}, {"Confidence": 0, "Character": "㊥"}]}, {"CandWords": [{"Confidence": 100, "Character": "p"}, {"Confidence": 0, "Character": "㊥"}]}, {"CandWords": [{"Confidence": 99, "Character": "y"}, {"Confidence": 0, "Character": "㊥"}]}], "Words": [{"Confidence": 99, "Character": "happy"}]}], "Angel": 173.99000549316406, "RequestId": "df27956f-1336-4693-9cd1-b85d250432ef"}

3.6 问题分析

(1)下载tencentcloud-sdk包报错

ERROR: Could not find a version that satisfies the requirement tencentcloud (from versions: none)
ERROR: No matching distribution found for tencentcloud

这个错误提示表明在 PyPI 网站中没有找到符合该名称的包,可能是由于 PyPI 上还没有将 tencentcloud 包进行注册。
选择在 tencentcloud 官方 Github 页面下载并手动安装:
①前往 tencentcloud-sdk-python 的 Github 页面:https://github.com/TencentCloud/tencentcloud-sdk-python 。
②点击 “Clone or download” 并选择 “Download ZIP”,下载该项目的压缩文件。
③解压该文件,在使用的环境中进入解压后的 tencentcloud-sdk-python 文件夹。
④在终端中输入以下命令进行手动安装:python setup.py install

显示Finished processing dependencies表示安装完成。
(2)FailedOperation.OcrFailed:OCR识别失败
因为只能识别英文印刷体和手写体,其余字体无法识别。
(3)FailedOperation.DownLoadError:下载失败
使用ImageUrl可能会出现这样的问题,网络速度不高或是托管图片的网站不稳定,换个速度更高的网络。

4. 参考连接

https://blog.csdn.net/m0_37758063/article/details/124026160
https://blog.csdn.net/weixin_40248634/article/details/105938224

调用腾讯云API实现英文识别相关推荐

  1. python调用(百度云、腾讯云)API接口表格识别并保存为excel

    Python表格识别 图像识别具有较高的商业价值,本节主要通过python调用(百度云.腾讯云)API接口表格识别并保存为excel分析表格识别的能力: 提示:需分别申请密钥,在相应位置添加自己密钥即 ...

  2. python调用腾讯云API语音识别

    一.登录腾讯云.开通语音识别接口.获取密钥  登录 - 腾讯云 (tencent.com) 二.打开 API Explorer 语音识别 录音文件识别请求 - API 文档 - 文档中心 - 腾讯云 ...

  3. 通用印刷体文字识别_谈谈调用腾讯云【OCR-通用印刷体识别】Api踩的坑

    一.写在前面 最近做项目需要用到识别图片中文字的功能,本来用的Tesseract这个写的,不过效果不是很理想. 随后上网搜了一下OCR接口,就准备使用腾讯云.百度的OCR接口试一下效果.不过这个腾讯云 ...

  4. 【python】调用百度智能云API实现手写文字识别

    注:本文系湛江市第十七中学星火创客团队及岭南师范学院物联网俱乐部原创部分参赛项目,转载请保留声明 文章目录 调用百度智能云API实现python识别手写文字 一.准备工具 电脑端准备: 1.pytho ...

  5. SpringBoot项目H5界面手机拍照调用腾讯云OCR卡证识别接口完整例子

    最近一个微信端项目的功能涉及一个手机拍照上传身份证识别身份证信息回显的功能,调用的接口是腾讯云OCR的卡证识别功能.看了腾讯云的api通俗易懂,本地写好了demo测试可用.H5界面手机拍照调用后台方法 ...

  6. 调用腾讯云OCR接口识别身份证和户口本

    一.添加项目pom文件依赖 <dependency><groupId>com.alibaba</groupId><artifactId>fastjson ...

  7. 小程序智能识别快递收货地址,自动解析出省市区等信息,让地址标准化格式的实现(使用腾讯云api)

    源码直接使用,下载地址 1,下载源码后需要改两个editaddress.js中的参数即可使用. //云市场分配的密钥Id let appKey = "你自己的secretId"; ...

  8. 腾讯云OCR(印刷体识别) API使用

    腾讯云OCR(印刷体识别) API使用 使用背景: 业务部门下载了许多PDF的快递单 上面有联系方式 需要识别手机号码后保存下来 解决思路: 1. 如果是可编辑的pdf文档 可使用pdf 读取jar包 ...

  9. 【文字识别】腾讯云API:提取表格数据并生成Excel文件

    一.使用工具及python包介绍 腾讯云API 国内大型互联网公司都提供云服务,如阿里.百度.腾讯等.本文选择腾讯云服务,是因为提供的API说明比较详细,看一遍就能用.更良心的是,提供了在线测试的功能 ...

最新文章

  1. 【 FPGA 】Vivado中常用的5个Tcl命令
  2. contos LINUX搭建LAMP笔记
  3. uk visa application(bachelor at uk,physically at home,graduate studies uk)
  4. JAVA Web学习篇--Servlet
  5. EasyDarwin开源流媒体服务器如何实现按需推送直播的
  6. python函数递归 字符串反转
  7. 一个简单的Python调度器
  8. arm linux开发板自动配置IP地址
  9. arduino蓝牙主从机通讯
  10. 全国大学生英语竞赛总结
  11. 【UML建模】(5) UML建模之活动图
  12. 业界首个,冲量在线联合海光信息发布异构隐私计算一体机!
  13. 电路邱关源学习笔记——1.7基尔霍夫定律
  14. 无线网卡在服务器上不能启用,解决无线网卡突然不能启用的问题(事件ID4294)...
  15. 【VB6|第17期】16进制颜色值与RGB值互相转换(含源码)
  16. 使用Beaglebone Black的PRU(二)——Hello World!
  17. 数学建模专栏 | 第十篇:MATLAB CUMCM真题求解实例一:数据型
  18. 北风设计模式课程---访问者模式(Visitor)
  19. 1. 服务器端渲染(SSR)简介
  20. Labview汽车齿轮齿条转向器疲劳试验台项目源码

热门文章

  1. 抛弃4S店:快修店终结汽车售后暴利?
  2. linux进程---exec族函数(execl, execlp, execle, execv, execvp, execvpe)
  3. 第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-979 移动
  4. 【IDEA设置字体失败解决方法】IntelliJ IDEA下载主题后设置字体失败,不能成功应用,原因:需要在配色方案里修改该主题的字体,而不是Editor->Font里修改+设置导航栏,菜单字体大小
  5. idea如何设置好看的字体颜色?
  6. 爬虫 代理ip池构建及使用
  7. windows下OpenCV安装教程(小白教程)
  8. Oracle批量执行脚本文件
  9. RNA测序研究现状与发展
  10. php 整百取整,php取整的几种方法