本帖最后由 792858525 于 2019-11-8 16:16 编辑

之前弄服务器的时候无意间看到腾讯云有文字识别类的产品,在好奇的驱动下我点了进去,让就一发不可收拾。。。。。。。

废话不多说,直接开整

首先打开腾讯云的官网:https://cloud.tencent.com/

在云产品里找到文字识别

界面.jpg (144.2 KB, 下载次数: 0)

2019-11-8 14:02 上传

开通业务后,可以在右上角找到武林秘籍(开发文档)

界面2.jpg (86.12 KB, 下载次数: 1)

2019-11-8 14:07 上传

大致内容就是以下几部分,其实大致看看就好了,不想看的也可以直接掠过(重点)。

通用印刷体识别(精简版)(免费公测版)

在这篇文章中:1. 接口描述

2. 输入参数

3. 输出参数

4. 示例

示例1 通用印刷体识别(精简版)示例代码

5. 开发者资源

API Explorer

SDK

命令行工具

6. 错误码

1. 接口描述

接口请求域名: ocr.tencentcloudapi.com 。

本接口支持多场景、任意版面下整图文字的识别。相较于“通用印刷体识别”接口,精简版接口在准召率有一定损失的情况下,耗时更短。适用于对接口耗时较为敏感的客户。

默认接口请求频率限制:10次/秒。2. 输入参数

以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。[td]参数名称必选类型描述

Action是String公共参数,本接口取值:GeneralEfficientOCR

Version是String公共参数,本接口取值:2018-11-19

Region是String公共参数,详见产品支持的 地域列表,本接口仅支持其中的: ap-beijing, ap-guangzhou, ap-hongkong, ap-shanghai, na-toronto

ImageBase64否String图片的 Base64 值。

支持的图片格式:PNG、JPG、JPEG,暂不支持 GIF 格式。

支持的图片大小:所下载图片经Base64编码后不超过 3M。图片下载时间不超过 3 秒。

图片的 ImageUrl、ImageBase64 必须提供一个,如果都提供,只使用 ImageUrl。

ImageUrl否String图片的 Url 地址。

支持的图片格式:PNG、JPG、JPEG,暂不支持 GIF 格式。

支持的图片大小:所下载图片经 Base64 编码后不超过 3M。图片下载时间不超过 3 秒。

图片存储于腾讯云的 Url 可保障更高的下载速度和稳定性,建议图片存储于腾讯云。

非腾讯云存储的 Url 速度和稳定性可能受一定影响。

3. 输出参数[td]参数名称类型描述

TextDetectionsArray of TextDetection检测到的文本信息,具体内容请点击左侧链接。

RequestIdString唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。文档中心  文字识别  API 文档  通用文字识别相关接口  通用印刷体识别(精简版)(免费公测版)

通用印刷体识别(精简版)(免费公测版)

在这篇文章中:1. 接口描述

2. 输入参数

3. 输出参数

4. 示例

示例1 通用印刷体识别(精简版)示例代码

5. 开发者资源

API Explorer

SDK

命令行工具

6. 错误码

1. 接口描述

接口请求域名: ocr.tencentcloudapi.com 。

本接口支持多场景、任意版面下整图文字的识别。相较于“通用印刷体识别”接口,精简版接口在准召率有一定损失的情况下,耗时更短。适用于对接口耗时较为敏感的客户。

默认接口请求频率限制:10次/秒。2. 输入参数

以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。[td]参数名称必选类型描述

Action是String公共参数,本接口取值:GeneralEfficientOCR

Version是String公共参数,本接口取值:2018-11-19

Region是String公共参数,详见产品支持的 地域列表,本接口仅支持其中的: ap-beijing, ap-guangzhou, ap-hongkong, ap-shanghai, na-toronto

ImageBase64否String图片的 Base64 值。

支持的图片格式:PNG、JPG、JPEG,暂不支持 GIF 格式。

支持的图片大小:所下载图片经Base64编码后不超过 3M。图片下载时间不超过 3 秒。

图片的 ImageUrl、ImageBase64 必须提供一个,如果都提供,只使用 ImageUrl。

ImageUrl否String图片的 Url 地址。

支持的图片格式:PNG、JPG、JPEG,暂不支持 GIF 格式。

支持的图片大小:所下载图片经 Base64 编码后不超过 3M。图片下载时间不超过 3 秒。

图片存储于腾讯云的 Url 可保障更高的下载速度和稳定性,建议图片存储于腾讯云。

非腾讯云存储的 Url 速度和稳定性可能受一定影响。

3. 输出参数[td]参数名称类型描述

TextDetectionsArray of TextDetection检测到的文本信息,具体内容请点击左侧链接。

RequestIdString唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。

4. 示例示例1 通用印刷体识别(精简版)示例代码输入示例https://ocr.tencentcloudapi.com/?Action=GeneralEfficientOCR&ImageUrl=https://xx/a.jpg&

输出示例{  "Response": {    "TextDetections": [      {        "DetectedText": "夏天的飞鸟,” 飞到我窗前唱歌,又飞去了。",        "Confidence": 93,        "Polygon": [          {            "X": 30,            "Y": 147          },          {            "X": 30,            "Y": 126          },          {            "X": 384,            "Y": 133          },          {            "X": 384,            "Y": 155          }        ],        "AdvancedInfo": "{\"Parag\":{\"ParagNo\":1}}"      },      {        "DetectedText": "秋天的黄叶,它们没有什么可唱,只叹息声,飞落在那里。",        "Confidence": 99,        "Polygon": [          {            "X": 27,            "Y": 200          },          {            "X": 27,            "Y": 179          },          {            "X": 532,            "Y": 185          },          {            "X": 532,            "Y": 206          }        ],        "AdvancedInfo": "{\"Parag\":{\"ParagNo\":2}}"      },      {        "DetectedText": "Stray birds of summer come to my window to sing and fly away.",        "Confidence": 79,        "Polygon": [          {            "X": 25,            "Y": 304          },          {            "X": 25,            "Y": 285          },          {            "X": 606,            "Y": 289          },          {            "X": 606,            "Y": 308          }        ],        "AdvancedInfo": "{\"Parag\":{\"ParagNo\":3}}"      },      {        "DetectedText": "And yellow leaves of autumn, which have no songs, flutter and fall there with a sign.",        "Confidence": 81,        "Polygon": [          {            "X": 24,            "Y": 357          },          {            "X": 24,            "Y": 339          },          {            "X": 782,            "Y": 342          },          {            "X": 782,            "Y": 360          }        ],        "AdvancedInfo": "{\"Parag\":{\"ParagNo\":4}}"      },      {        "DetectedText": "飞鸟集",        "Confidence": 99,        "Polygon": [          {            "X": 844,            "Y": 558          },          {            "X": 844,            "Y": 524          },          {            "X": 969,            "Y": 525          },          {            "X": 969,            "Y": 560          }        ],        "AdvancedInfo": "{\"Parag\":{\"ParagNo\":5}}"      },      {        "DetectedText": "STRAYBIRDS",        "Confidence": 99,        "Polygon": [          {            "X": 739,            "Y": 576          },          {            "X": 739,            "Y": 594          },          {            "X": 973,            "Y": 592          },          {            "X": 973,            "Y": 574          }        ],        "AdvancedInfo": "{\"Parag\":{\"ParagNo\":6}}"      }    ],    "RequestId": "8dd99adb-5144-43ca-8213-f6a929ce5075"  }}

5. 开发者资源API Explorer

该工具提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力,能显著降低使用云 API 的难度,推荐使用。API 3.0 ExplorerSDK

云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。Tencent Cloud SDK 3.0 for Python

Tencent Cloud SDK 3.0 for Java

Tencent Cloud SDK 3.0 for PHP

Tencent Cloud SDK 3.0 for Go

Tencent Cloud SDK 3.0 for NodeJS

Tencent Cloud SDK 3.0 for .NET命令行工具Tencent Cloud CLI 3.06. 错误码

以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。[td]错误码描述

FailedOperation.DownLoadError文件下载失败。

FailedOperation.EmptyImageError图片内容为空。

FailedOperation.ImageDecodeFailed图片解码失败。

FailedOperation.ImageNoText图片中未检测到文本。

FailedOperation.OcrFailedOcr识别失败。

FailedOperation.UnKnowError未知错误。

FailedOperation.UnOpenError服务未开通。

InvalidParameterValue.InvalidParameterValueLimit参数值错误。

LimitExceeded.TooLargeFileError文件内容太大。

ResourcesSoldOut.ChargeStatusException计费状态异常。=================================================================================================

略的同学看到这里!!!!

首先我们来看 ,【输入参数】

输入参数.jpg (101.24 KB, 下载次数: 0)

2019-11-8 14:16 上传

红色区域的参数基本上都是写死的,直接复制后面描述里的内容就行了。

黄色区域的两个参数二选一,如果你会将图片编码成Base64格式,推荐使用ImageBase64这个参数

当然不会的话,也可以使用ImageUrl这个参数,相比前者这个会慢一些。

很多同学会说说到这,我还是不会怎么用,没关系,慢慢来,淡定!!!!

接下来我们看,【输出参数】

很简单,两部分,TextDetections  和  RequestId,TextDetections  这个很重要,放到后面讲

输出参数.jpg (34.77 KB, 下载次数: 0)

2019-11-8 14:23 上传

RequestId 主要就是当出现问题的时候用来定位问题需要的参数。至于TextDetections 看一下后面实例中的返回参数自然就懂了

json.jpg (54.08 KB, 下载次数: 0)

2019-11-8 14:31 上传

我们可以看到返回的数据是一个json,可以看到就是TextDetections  和  RequestId两部分,TextDetections里有五条数据,就是识别出来的五条数据。TextDetections里的参数代表的意义如下图:

识别结果.jpg (67.51 KB, 下载次数: 0)

2019-11-8 14:38 上传

说了这么久代码到底该怎么写

我只能说的,重要的代码几乎不用你来写,看过来!!!

看到开发文档的第5点(那里有神器)

工具.jpg (36.14 KB, 下载次数: 0)

2019-11-8 14:44 上传

打开后看到如下界面,一步一步操作

工具界面.jpg (262.41 KB, 下载次数: 0)

2019-11-8 14:48 上传

1.选择你的产品版本

2.选择开发语言

3.查看自己的密钥

4.填写密钥

5.选择地区

6.添加图片路径

7.复制代码

然后打开idea,创建maven项目,并利用插件转换成web项目(也可以用骨架)

大致项目结构如下

项目结构.jpg (38.18 KB, 下载次数: 0)

2019-11-8 14:53 上传

有关spring的配置这里不做讲解,跟平常一样没什么特别的。

看代码:

packagecom.tencent.controller;importcom.tencentcloudapi.common.Credential;importcom.tencentcloudapi.common.exception.TencentCloudSDKException;importcom.tencentcloudapi.common.profile.ClientProfile;importcom.tencentcloudapi.common.profile.HttpProfile;importcom.tencentcloudapi.ocr.v20181119.OcrClient;importcom.tencentcloudapi.ocr.v20181119.models.GeneralEfficientOCRRequest;importcom.tencentcloudapi.ocr.v20181119.models.GeneralEfficientOCRResponse;importorg.springframework.stereotype.Controller;importorg.springframework.web.bind.annotation.RequestMapping;importorg.springframework.web.bind.annotation.ResponseBody;@Controllerpublic classORCController {@RequestMapping(value ="scan",produces ="application/json;charset=UTF-8")@ResponseBody//imageAddr为图片的路径,前端调用传值。publicString scan(String imageAddr){try{

System.out.println(imageAddr);

Credential cred =newCredential("你的SecretId", "你的SecretKey");

HttpProfile httpProfile = newHttpProfile();

httpProfile.setEndpoint("ocr.tencentcloudapi.com");

ClientProfile clientProfile = newClientProfile();

clientProfile.setHttpProfile(httpProfile);

OcrClient client = newOcrClient(cred, "ap-guangzhou", clientProfile);

String params = "{\"ImageUrl\":\""+imageAddr+"\"}";

GeneralEfficientOCRRequest req =                  GeneralEfficientOCRRequest.fromJsonString(params, GeneralEfficientOCRRequest.class);

GeneralEfficientOCRResponse resp = client.GeneralEfficientOCR(req);

System.out.println(GeneralEfficientOCRRequest.toJsonString(resp));

returnGeneralEfficientOCRRequest.toJsonString(resp);

} catch(TencentCloudSDKException e) {

System.out.println(e.toString());

returne.toString();

}

}

}

将之前在线调试时,代码main函数中的内容和导包的代码拷贝下来。注意导包的时候可能会包错需要在pom.xml中添加腾讯云的依赖文件

com.tencentcloudapi

tencentcloud-sdk-java

3.0.101

看到前端请求,前端有个问题,因为上传图片的地址只能是url,所以对于没有服务器没有域名的我该怎么办,于是我到网上找到了一个可以上传的网络相册,大家可以自己到网上搜索,我使用的那个叫做帖图库,同样有开发文档和实例

bar.jpg (27.06 KB, 下载次数: 0)

2019-11-8 15:05 上传

然后就是编写前端页面啦,这里我使用的是bootstrap+jQuery来写的jsp。这里就只放出识别请求和上传图片的js代码,页面大家可以按自己的需求编写发送请求到后台识别文字

$(function() {

scan();

});

varurl;

functionscan() {

$("#scanBtn").click(function() {

$.ajax({

url:"/scan.do",

data:{"imageAddr":url},

success:function(reasult) {

varstr="";

vardatas= reasult.TextDetections;

for(itemofdatas){

str+=item.DetectedText+"
";

}

$("#getReasult").html(str);

}

});

});

}

上传图片的请求

$(':button').click(function(){

varformData= newFormData($('form')[0]);

$.ajax({

url: 'http://up.imgapi.com/',

type: 'POST',

xhr: function() {

myXhr= $.ajaxSettings.xhr();

if(myXhr.upload){

myXhr.upload.addEventListener('progress',progressHandlingFunction, false);

}

returnmyXhr;

},

beforeSend: function(){

$('progress').show();

},

success: function(data){

console.log(data);

alert("上传成功");

url= data.linkurl;

},

error: function(data){

console.log(data);

},

data:formData,

cache: false,

contentType: false,

processData: false});

});

functionprogressHandlingFunction(e){

if(e.lengthComputable){

$('progress').attr({value:e.loaded,max:e.total});

}

}

注意要定义一个全局变量url,因为在请求识别的时候有用到哦!!!!这里的上传文件的请求,大家可以直接下载贴图库的案例,然后按需求再去修改就可以了。

最后看一下效果吧!识别结果不是百分百准确,因为毕竟是免费的嘛

test1.jpg (32.16 KB, 下载次数: 0)

2019-11-8 15:17 上传

test2.jpg (68.57 KB, 下载次数: 0)

2019-11-8 15:17 上传

test3.jpg (60.56 KB, 下载次数: 0)

2019-11-8 15:18 上传

可以看到,识别出来的文字,还是有一点点问题的。好了就到这里,有什么问题下面留言,看到了我会回复的。

第一次弄这个,有什么做错了或者做的不好的地方,望见谅,大神勿喷!!!

通用印刷体识别 php,实战腾讯云ORC文字识别相关推荐

  1. 前端直接跨域到腾讯云ocr文字识别(失败)

    前端直接跨域到腾讯云ocr文字识别 '/tx': {target: txUrl,// secure: false,changeOrigin: true, // 是否跨域// logLevel: 'de ...

  2. 腾讯云OCR文字识别的使用

    一 什么是OCR? OCR就是图片文字识别的技术,即将图片的文字信息智能提取出来属于人工智能的范畴.之前用过OCR图像文字识别来作用户身份证上传提取身份信息的功能和上传银行卡来获取银行卡信息的功能. ...

  3. 通过腾讯云的文字识别进行图文转换【java】

    0.pom依赖 <!--Jedis--><dependency><groupId>redis.clients</groupId><artifact ...

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

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

  5. 使用腾讯OCR进行文字识别

    文章目录 OCR效果 配置腾讯云OCR准备工作 注册账号 创建秘钥 使用万象优图创建Bucket 操作指引 实现代码 生成签名 配置网络请求,调用OCR识别接口 写在后面 使用腾讯智能文字识别 OCR ...

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

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

  7. 【Python】调用百度云API文字识别服务 OCR

    # encoding:utf-8 # !/usr/local/bin/python3# 百度云:文字识别服务 # 应用名称:文字识别练习项目import urllib3 from urllib.par ...

  8. 华为云OCR文字识别 免费在线体验!

    嘿,华为云OCR文字识别了解一下,免费在线体验! 物流行业快速提取运单信息.医疗/保险行业单据快速录入.政务办事人证检验,你知道这些都是如何实现的么? 答案就是:OCR文字识别! 作为AI时代效率倍增 ...

  9. 百度云AI文字识别SDK在node中的使用

    本文将介绍如何在koa项目中使用百度云AI文字识别SDK 文章目录 前言 使用步骤 前言 本文通过使用百度云AI文字识别SDK来实现身份证识别和手写签名识别功能来描述OCR SDK的使用方式 使用步骤 ...

最新文章

  1. ICCV 2021 Workshop 盘点
  2. 程序员,应该掌握的英语词汇
  3. T100 section已经修改过
  4. sublime使用总结
  5. 拒绝从入门到放弃_《鸟哥的 Linux 私房菜 — 基础学习篇(第三版)》必读目录
  6. eclipse如何导出WAR包
  7. (转)当别人努力的时候,你在做什么?
  8. 阶段1 语言基础+高级_1-3-Java语言高级_02-继承与多态_第1节 继承_6_继承中方法的覆盖重写_概念...
  9. 如何把模型表导入数据库
  10. java封装拦截请求_Retrofit,OkHttp拦截器,RxJava封装请求网络
  11. phoneinfo界面翻译_phone info +下载-三星验机神器phone info samsung下载v3.6.4 安卓版-西西软件下载...
  12. 【clickhouse】Clickhouse 的group_concat 实现
  13. leetcode力扣23.括号生成
  14. DXUT框架剖析(2)
  15. 极客大学产品经理训练营:数据分析 第八章作业
  16. 了解有关计算机病毒的知识,从基础知识开始 全面认识计算机病毒
  17. Oracle数据库常见版本
  18. .NET中代理服务器WebProxy的各种用法
  19. win10多合一原版系统_如何制作Win10多合一系统安装盘
  20. webpack打包UMD学习记录

热门文章

  1. MySQL性能调优 读写分离
  2. 男神鹏:人工智能人脸识别操作。
  3. 移动端布局的几种方式
  4. python 字符串的一些方法
  5. 实战:向GitHub提交代码时触发Jenkins自动构建
  6. js检测数据类型的方法你都掌握了几个?
  7. C#编程中的crc16校验
  8. php使用strstr函数 ,判断字符串A中是否含有字符串B
  9. C++ 与 JAVA的不同点
  10. 家庭扫地机器人竞争升级 带手臂提供移动服务或是未来方向