腾讯云OCR图片文字识别
一、 OCR
OCR (Optical Character Recognition,光学字符识别)是指电子设备(例如扫描仪或数码相机)检查纸上打印的字符,通过检测暗、亮的模式确定其形状,然后用字符识别方法将形状翻译成计算机文字的过程;
-- 来自百度
二、腾讯云OCR
基于腾讯自研的深度学习技术和海量的数据,提供卡证、票据类印刷体和手写体、自定义模板等多种场景和类型的文字识别服务。
三、接口对接
说明:基于 spring boot 的接口对接
1、添加开发的SDK
<dependency>
<groupId>com.qcloud</groupId>
<artifactId>qcloud-image-sdk</artifactId>
<version>2.3.6</version>
</dependency>
2、编写工具类
注意:此接口对接版本有点低,现在的sdk是2.0了,不过这个工具类是可以正常食用的。2.0的sdk可以官方给出的文档 传送门
import com.qcloud.image.ImageClient;
import com.qcloud.image.exception.AbstractImageException;
import com.qcloud.image.request.*;
import java.io.File;
/**
* 腾讯云Ocr文字识别
*
* @author lixingwu
*/
public class OcrUtil {
/*配置参数为空,请自行填写*/
private static final String APP_ID = "";
private static final String SECRET_ID = "";
private static final String SECRET_KEY = "";
private static final String BUCKET_NAME = "";
private static final ImageClient IMAGECLIENT = new ImageClient(APP_ID, SECRET_ID, SECRET_KEY, ImageClient.NEW_DOMAIN_recognition_image_myqcloud_com);
/**
* 方法描述:识别身份证URL方式.
* 创建时间:2018-12-19 11:54:36
*
* @param url 图片地址
* @param cardType 0正面,1反面
* @return the string
* @author "lixingwu"
*/
public static String ocrIdCardUrl(String url, Integer cardType) {
String ret = null;
String[] idcardUrlList = new String[]{url};
IdcardDetectRequest idReq = new IdcardDetectRequest(BUCKET_NAME, idcardUrlList, cardType);
try {
ret = IMAGECLIENT.idcardDetect(idReq);
} catch (AbstractImageException e) {
e.printStackTrace();
}
return ret;
}
/**
* 方法描述:识别身份证path方式.
* 创建时间:2018-12-19 11:54:36
*
* @param path 图片路径
* @param cardType 0正面,1反面
* @return the string
* @author "lixingwu"
*/
public static String ocrIdCardPath(String path, Integer cardType) {
String ret = null;
File[] idcardUrlList = new File[]{new File(path)};
IdcardDetectRequest idReq = new IdcardDetectRequest(BUCKET_NAME, idcardUrlList, cardType);
try {
ret = IMAGECLIENT.idcardDetect(idReq);
} catch (AbstractImageException e) {
e.printStackTrace();
}
return ret;
}
/**
* 方法描述:驾驶证识别URL方式.
* 创建时间:2018-12-19 12:52:27
*
* @param url 图片地址
* @return the string
* @author "lixingwu"
*/
public static String ocrDrivingLicenceUrl(String url) {
String ret = null;
OcrDrivingLicenceRequest request = new OcrDrivingLicenceRequest(BUCKET_NAME, OcrDrivingLicenceRequest.TYPE_DRIVER_LICENSE, url);
try {
ret = IMAGECLIENT.ocrDrivingLicence(request);
} catch (AbstractImageException e) {
e.printStackTrace();
}
return ret;
}
/**
* 方法描述:驾驶证识别path方式.
* 创建时间:2018-12-19 12:52:27
*
* @param path 图片路径
* @return the string
* @author "lixingwu"
*/
public static String ocrDrivingLicencePath(String path) {
String ret = null;
File file = new File(path);
OcrDrivingLicenceRequest request = new OcrDrivingLicenceRequest(BUCKET_NAME, OcrDrivingLicenceRequest.TYPE_DRIVER_LICENSE, file);
try {
ret = IMAGECLIENT.ocrDrivingLicence(request);
} catch (AbstractImageException e) {
e.printStackTrace();
}
return ret;
}
/**
* 方法描述:行驶证识别URL方式.
* 创建时间:2018-12-19 12:52:27
*
* @param url 图片地址
* @return the string
* @author "lixingwu"
*/
public static String ocrVehicleLicenceUrl(String url) {
String ret = null;
OcrDrivingLicenceRequest request = new OcrDrivingLicenceRequest(BUCKET_NAME, OcrDrivingLicenceRequest.TYPE_VEHICLE_LICENSE, url);
try {
ret = IMAGECLIENT.ocrDrivingLicence(request);
} catch (AbstractImageException e) {
e.printStackTrace();
}
return ret;
}
/**
* 方法描述:行驶证识别path方式.
* 创建时间:2018-12-19 12:52:27
*
* @param path 图片路径
* @return the string
* @author "lixingwu"
*/
public static String ocrVehicleLicencePath(String path) {
String ret = null;
File file = new File(path);
OcrDrivingLicenceRequest request = new OcrDrivingLicenceRequest(BUCKET_NAME, OcrDrivingLicenceRequest.TYPE_VEHICLE_LICENSE, file);
try {
ret = IMAGECLIENT.ocrDrivingLicence(request);
} catch (AbstractImageException e) {
e.printStackTrace();
}
return ret;
}
/**
* 方法描述:车牌识别URL方式.
* 创建时间:2018-12-19 12:52:27
*
* @param url 图片地址
* @return the string
* @author "lixingwu"
*/
public static String ocrPlateUrl(String url) {
String ret = null;
OcrPlateRequest request = new OcrPlateRequest(BUCKET_NAME, url);
try {
ret = IMAGECLIENT.ocrPlate(request);
} catch (AbstractImageException e) {
e.printStackTrace();
}
return ret;
}
/**
* 方法描述:车牌识别path方式.
* 创建时间:2018-12-19 12:52:27
*
* @param path 图片路径
* @return the string
* @author "lixingwu"
*/
public static String ocrPlatePath(String path) {
String ret = null;
File file = new File(path);
OcrPlateRequest request = new OcrPlateRequest(BUCKET_NAME, file);
try {
ret = IMAGECLIENT.ocrPlate(request);
} catch (AbstractImageException e) {
e.printStackTrace();
}
return ret;
}
/**
* 方法描述:营业执照识别URL方式.
* 创建时间:2018-12-19 12:52:27
*
* @param url 图片地址
* @return the string
* @author "lixingwu"
*/
public static String ocrBizLicenseUrl(String url) {
String ret = null;
OcrBizLicenseRequest request = new OcrBizLicenseRequest(BUCKET_NAME, url);
try {
ret = IMAGECLIENT.ocrBizLicense(request);
} catch (AbstractImageException e) {
e.printStackTrace();
}
return ret;
}
/**
* 方法描述:营业执照识别path方式.
* 创建时间:2018-12-19 12:52:27
*
* @param path 图片路径
* @return the string
* @author "lixingwu"
*/
public static String ocrBizLicensePath(String path) {
String ret = null;
File file = new File(path);
OcrBizLicenseRequest request = new OcrBizLicenseRequest(BUCKET_NAME, file);
try {
ret = IMAGECLIENT.ocrBizLicense(request);
} catch (AbstractImageException e) {
e.printStackTrace();
}
return ret;
}
/**
* 方法描述:银行卡识别URL方式.
* 创建时间:2018-12-19 12:52:27
*
* @param url 图片地址
* @return the string
* @author "lixingwu"
*/
public static String ocrBankCardUrl(String url) {
String ret = null;
OcrBankCardRequest request = new OcrBankCardRequest(BUCKET_NAME, url);
try {
ret = IMAGECLIENT.ocrBankCard(request);
} catch (AbstractImageException e) {
e.printStackTrace();
}
return ret;
}
/**
* 方法描述:银行卡识别path方式.
* 创建时间:2018-12-19 12:52:27
*
* @param path 图片路径
* @return the string
* @author "lixingwu"
*/
public static String ocrBankCardPath(String path) {
String ret = null;
File file = new File(path);
OcrBankCardRequest request = new OcrBankCardRequest(BUCKET_NAME, file);
try {
ret = IMAGECLIENT.ocrBankCard(request);
} catch (AbstractImageException e) {
e.printStackTrace();
}
return ret;
}
/**
* 方法描述:通用印刷体识别URL方式.
* 创建时间:2018-12-19 12:52:27
*
* @param url 图片地址
* @return the string
* @author "lixingwu"
*/
public static String ocrGeneralUrl(String url) {
String ret = null;
GeneralOcrRequest request = new GeneralOcrRequest(BUCKET_NAME, url);
try {
ret = IMAGECLIENT.generalOcr(request);
} catch (AbstractImageException e) {
e.printStackTrace();
}
return ret;
}
/**
* 方法描述:通用印刷体识别URL方式.
* 创建时间:2018-12-19 12:52:27
*
* @param path 图片路径
* @return the string
* @author "lixingwu"
*/
public static String ocrGeneralPath(String path) {
String ret = null;
File file = new File(path);
GeneralOcrRequest request = new GeneralOcrRequest(BUCKET_NAME, file);
try {
ret = IMAGECLIENT.generalOcr(request);
} catch (AbstractImageException e) {
e.printStackTrace();
}
return ret;
}
}
3、天气太热了
上面的工具类只是简单的说了一下,如果项目需要用到,得自己去测试,等我那天心情好了再说详细了点。
腾讯云OCR图片文字识别的更多相关文章
- 一篇文章搞定百度OCR图片文字识别API
一篇文章搞定百度OCR图片文字识别API https://www.jianshu.com/p/7905d3b12104
- 关于python 使用腾讯云OCR 通用印刷体识别
腾讯的python SDK没有通用印刷体识别,所以参考了别人识别网上图片的方式:https://www.cnblogs.com/semishigure/p/7690789.html 但是咱们使用的基本 ...
- PHP百度AI的OCR图片文字识别
第一步可定要获取百度的三个东西 要到百度AI网站(http://ai.baidu.com/)去注册 然后获得 -const APP_ID = '请填写你的appid'; -const API_KEY ...
- 有道自然语言翻译和文字识别OCR(图片文字识别)接口调用
官网 http://ai.youdao.com 文档地址 http://ai.youdao.com/docs/doc-ocr-api.s#p01 在Python中调用api. #/usr/bin/en ...
- 云+社区分享——腾讯云OCR文字识别
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由云+社区运营团队发布在腾讯云+社区 前言 2018年3月27日腾讯云云+社区联合腾讯云智能图像团队共同在客户群举办了腾讯云OCR文字识 ...
- 阿里云OCR图片转换成文字识别调用
using Newtonsoft.Json; using System; using System.Collections.Generic; using System.Drawing; using S ...
- 小试Office OneNote 2010的图片文字识别功能(OCR)
原文:小试Office OneNote 2010的图片文字识别功能(OCR) 自Office 2003以来,OneNote就成为了我电脑中必不可少的软件,它集各种创新功能于一身,可方便的记录下各种类型 ...
- 【图片识别】java 图片文字识别 ocr (转)
http://www.cnblogs.com/inkflower/p/6642264.html 最近在开发的时候需要识别图片中的一些文字,网上找了相关资料之后,发现google有一个离线的工具,以下为 ...
- 【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 18—Photo OCR 应用实例:图片文字识别
Lecture 18—Photo OCR 应用实例:图片文字识别 18.1 问题描述和流程图 Problem Description and Pipeline 图像文字识别需要如下步骤: 1.文字侦测 ...
随机推荐
- 阿里妈妈的iconfont的引用问题
一.先进官网 我们看到了上面的这些图标,是不是很心动,阿里妈妈就是给力,给马老师点赞,但是问题来了我们怎么去使用呢. 二.点击图标 嘿嘿,上面的操作步骤我就不多说了吧,我相信大家都会做的,接下来我们就 ...
- Nginx 和Apache 中的虚拟主机的概念
在部署环境的时候,有时候会引用到虚拟主机的概念,什么是虚拟主机呢,博主之前一直把虚拟主机的概念没搞清楚,导致在部署的时候,一直动不动就404 ,或者500,或者服务器不通 所以,什么是虚拟主机呢? 虚 ...
- [Contract] public、external, private、internal 在 Solidity 中如何选择
合约内部访问的用 private,修饰内部变量时选择.通过 external 函数返回. 合约内部.外部均可访问的用 public. 仅在合约外部访问的用 external,明确暴露给前端使用时选择. ...
- 2.Android网络编程-web介绍以及Tomcat安装使用
1.CS和BS CS:Client/Server 客户端和服务器,这种软件往往需要安装.比如QQ.迅雷.播放器. 优点 : 可以减轻服务器端压力,将部分代码写到客户端,并且界面很美观. 缺点 : ...
- mysql第五课
修改表中一行或多行数据: SELECT*FROM student;+----+------+------+| id | name | ban |+----+------+------+| 1 | ...
- 高并发系统:消息队列MQ
注:前提是知道什么是消息队列.不懂的去搜索各种消息队列入门(activeMQ.rabbitMQ.rocketMQ.kafka) 1.为什么要使用MQ?(MQ的好处:解耦.异步.削峰) (1)解耦:主要 ...
- ECMAScript基本对象——Global全局对象
特点: 全局对象,这个Global中封装的方法不需要对象就可以直接调用.直接写 方法名():就可以调用 url编码:浏览器自动转换谷歌浏览器:wd=淘宝IE浏览器:wd=%E6%B7%98%E5%A ...
- 吴裕雄--天生自然HADOOP操作实验学习笔记:分布式资源调度系统yarn的安装
实验目的 复习配置hadoop初始化环境 复习配置hdfs的配置文件 学会配置hadoop的配置文件 了解yarn的原理 实验原理 1.yarn是什么 前面安装好了hdfs文件系统,我们可以根据需求进 ...
- 从接口自动化测试框架设计到开发(二)操作json文件、重构json工具类
用例模板里的请求数据多,看起来很乱,所以可以通过访问另外一个文件的方式获取请求数据 把请求数据都放在一个json文件中 取出login的内容: import json fp = open('G:/un ...
- 深入浅出Mybatis系列九-强大的动态SQL
注:本文转载自南轲梦 注:博主 Chloneda:个人博客 | 博客园 | Github | Gitee | 知乎 上篇文章<深入浅出Mybatis系列(八)---mapper映射文件配置之se ...