autojs之ocr-腾讯

本文涉及的产品
通用文字识别,通用文字识别 200次/月
小语种识别,小语种识别 200次/月
票据凭证识别,票据凭证识别 200次/月
简介: 使用情景安卓手机调用腾讯ocr识别文字

使用情景


安卓手机调用腾讯ocr识别文字

微信图片_20220624134540.png

微信图片_20220624134540.png


难点


签名方法 v3 (TC3-HMAC-SHA256)


代码讲解


  1. 导入java类
importClass(java.nio.charset.Charset);
importClass(java.nio.charset.StandardCharsets);
importClass(java.security.MessageDigest);
importClass(java.text.SimpleDateFormat);
importClass(java.util.TimeZone);
importClass(javax.crypto.Mac);
importClass(javax.crypto.spec.SecretKeySpec);


  1. 初始化所有的参数, SECRET_IDSECRET_KEY请改为自己的.
let SECRET_ID = "XXX";
let SECRET_KEY = "XXX";
let service = "ocr";
let host = "ocr.tencentcloudapi.com";
let region = "ap-guangzhou";
let action = "GeneralAccurateOCR";
let version = "2018-11-19";
let algorithm = "TC3-HMAC-SHA256";
let UTF8 = StandardCharsets.UTF_8;
const timestamp = getTime();


  1. 识别文字
let dataList = ocr(imgPath);


  1. 显示识别的数据
showData(dataList, imgPath, "腾讯");


签名计算过程


  1. 拼接规范请求串
let hashedRequestPayload = sha256Hex(payload);
let canonicalRequest =
  httpRequestMethod +
  "\n" +
  canonicalUri +
  "\n" +
  canonicalQueryString +
  "\n" +
  canonicalHeaders +
  "\n" +
  signedHeaders +
  "\n" +
  hashedRequestPayload;


  1. 拼接待签名字符串
let credentialScope = date + "/" + service + "/" + "tc3_request";
let hashedCanonicalRequest = sha256Hex(canonicalRequest);
let stringToSign = algorithm + "\n" + timestamp + "\n" + credentialScope + "\n" + hashedCanonicalRequest;


  1. 计算签名
let secretDate = hmac256(java.lang.String("TC3" + SECRET_KEY).getBytes(UTF8), date);
let secretService = hmac256(secretDate, service);
let secretSigning = hmac256(secretService, "tc3_request");
let signature = byteArrayToHexString(secretSigning);
signature = hmac256(secretSigning, stringToSign);
signature = byteArrayToHexString(signature);


  1. 拼接 Authorization
let authorization =
algorithm +
" " +
"Credential=" +
SECRET_ID +
"/" +
credentialScope +
", " +
"SignedHeaders=" +
signedHeaders +
", " +
"Signature=" +
signature;

名人名言


思路是最重要的, 其他的百度, bing, stackoverflow, github, 安卓文档, autojs文档, 最后才是群里问问 --- 牙叔教程


声明


部分内容来自网络 本教程仅用于学习, 禁止用于其他用途












相关文章
|
文字识别 JavaScript Go
|
文字识别 Android开发 开发者
autojs识别数字ocr
牙叔教程 简单易懂
537 0
|
文字识别
autojs之浩然ocr-不安装插件就能用ocr
使用场景 不想安装浩然ocr插件
1697 0
|
文字识别 前端开发 JavaScript
autojs之ocr-百度
使用情景 安卓手机调用百度ocr识别文字
387 0
autojs之ocr-百度
|
前端开发 PyTorch 算法框架/工具
autojs之ocr-浩然
使用情景 安卓手机, 不联网, 使用 Pytorch + DbNet + AngleNet + CrnnNet 的训练结果
1040 0
autojs之ocr-浩然
|
7月前
|
文字识别
印刷文字识别使用问题之是否支持非标发票的识别
印刷文字识别产品,通常称为OCR(Optical Character Recognition)技术,是一种将图像中的印刷或手写文字转换为机器编码文本的过程。这项技术广泛应用于多个行业和场景中,显著提升文档处理、信息提取和数据录入的效率。以下是印刷文字识别产品的一些典型使用合集。
|
7月前
|
存储 文字识别 运维
印刷文字识别使用问题之如何开通统一识别
印刷文字识别产品,通常称为OCR(Optical Character Recognition)技术,是一种将图像中的印刷或手写文字转换为机器编码文本的过程。这项技术广泛应用于多个行业和场景中,显著提升文档处理、信息提取和数据录入的效率。以下是印刷文字识别产品的一些典型使用合集。
|
7月前
|
人工智能 文字识别 开发工具
印刷文字识别使用问题之是否支持识别并返回文字在图片中的位置信息
印刷文字识别产品,通常称为OCR(Optical Character Recognition)技术,是一种将图像中的印刷或手写文字转换为机器编码文本的过程。这项技术广泛应用于多个行业和场景中,显著提升文档处理、信息提取和数据录入的效率。以下是印刷文字识别产品的一些典型使用合集。
|
7月前
|
人工智能 JSON 文字识别
印刷文字识别使用问题之如何数电发票进行识别
印刷文字识别产品,通常称为OCR(Optical Character Recognition)技术,是一种将图像中的印刷或手写文字转换为机器编码文本的过程。这项技术广泛应用于多个行业和场景中,显著提升文档处理、信息提取和数据录入的效率。以下是印刷文字识别产品的一些典型使用合集。
|
7月前
|
文字识别 数据安全/隐私保护 iOS开发
印刷文字识别使用问题之如何识别礼品册上的卡号、密码信息
印刷文字识别产品,通常称为OCR(Optical Character Recognition)技术,是一种将图像中的印刷或手写文字转换为机器编码文本的过程。这项技术广泛应用于多个行业和场景中,显著提升文档处理、信息提取和数据录入的效率。以下是印刷文字识别产品的一些典型使用合集。

热门文章

最新文章