一、 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图片文字识别的更多相关文章

  1. 一篇文章搞定百度OCR图片文字识别API

    一篇文章搞定百度OCR图片文字识别API https://www.jianshu.com/p/7905d3b12104

  2. 关于python 使用腾讯云OCR 通用印刷体识别

    腾讯的python SDK没有通用印刷体识别,所以参考了别人识别网上图片的方式:https://www.cnblogs.com/semishigure/p/7690789.html 但是咱们使用的基本 ...

  3. PHP百度AI的OCR图片文字识别

    第一步可定要获取百度的三个东西 要到百度AI网站(http://ai.baidu.com/)去注册 然后获得 -const APP_ID = '请填写你的appid'; -const API_KEY ...

  4. 有道自然语言翻译和文字识别OCR(图片文字识别)接口调用

    官网 http://ai.youdao.com 文档地址 http://ai.youdao.com/docs/doc-ocr-api.s#p01 在Python中调用api. #/usr/bin/en ...

  5. 云+社区分享——腾讯云OCR文字识别

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由云+社区运营团队发布在腾讯云+社区 前言 2018年3月27日腾讯云云+社区联合腾讯云智能图像团队共同在客户群举办了腾讯云OCR文字识 ...

  6. 阿里云OCR图片转换成文字识别调用

    using Newtonsoft.Json; using System; using System.Collections.Generic; using System.Drawing; using S ...

  7. 小试Office OneNote 2010的图片文字识别功能(OCR)

    原文:小试Office OneNote 2010的图片文字识别功能(OCR) 自Office 2003以来,OneNote就成为了我电脑中必不可少的软件,它集各种创新功能于一身,可方便的记录下各种类型 ...

  8. 【图片识别】java 图片文字识别 ocr (转)

    http://www.cnblogs.com/inkflower/p/6642264.html 最近在开发的时候需要识别图片中的一些文字,网上找了相关资料之后,发现google有一个离线的工具,以下为 ...

  9. 【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 18—Photo OCR 应用实例:图片文字识别

    Lecture 18—Photo OCR 应用实例:图片文字识别 18.1 问题描述和流程图 Problem Description and Pipeline 图像文字识别需要如下步骤: 1.文字侦测 ...

随机推荐

  1. badboy录制,出现弹框提示脚本错误解决方法

    录制的时候经常出现如下问题: 结合网上一些资料,发现如下设置可以解决,具体原理不太清楚,但能达到效果(后期探究一下是为什么,如有知道的朋友,请赐教)

  2. 一次线上nohup.out日志丢失的问题

    今天有小伙伴求助,线上一个应用的nohup.out日志不更新了,但进程还是正常的.此时需要查看这个日志排查一些问题,这可怎么办呢? nohup.out文件的更新时间停留在了昨天9点36,日志也刚好打到 ...

  3. Spring boot2.0学习笔记(一)

    学习环境: jdk1.8 (Spring Boot 推荐jdk1.8及以上): java version "1.8.0_241" Maven 3.x (maven 3.2 以上版本 ...

  4. Vue中在template标签中进行判断时注意比较元素

    (一)比较的元素,一个是data元素,另外一个是常量,如下图所示: 编译正常,运行正常,效果在期望中,会显示Hello World,结果如下: (二)比较的元素,一个是data元素,另外一个是cons ...

  5. Markdown 的效果

    这是一级标题 这是二级标题 这是三级标题 这是四级标题 这是五级标题 这是六级标题 这是加粗的文字 这是倾斜的文字 这是斜体加粗的文字 这是加删除线的文字 这是引用的内容 这是引用的内容 这是引用的内 ...

  6. 10、初识constexpr和常量表达式

    常量表达式:是指值不会改变并且在编译过程就能得到计算结果的表达式.显然字面值属于常量表达式,用于表达式初始化的const对象也是常量表达式. 1.判断一个变量是不是常量表达式 一个对象(表达式)是不是 ...

  7. Spring Boot Starter 开发指南

    Spring Boot Starter是什么? 依赖管理是任何复杂项目的关键部分.以手动的方式来实现依赖管理不太现实,你得花更多时间,同时你在项目的其他重要方面能付出的时间就会变得越少. Spring ...

  8. linux 第一个知识点(my)

    关于Linux - rwx rwx rwx root user 194 Oct : 19  21:24 test -:此符号为文件名,如果是d 则为目录,如果是l 则为连接 rwx: 这是所有者所有的 ...

  9. Centos下查看CPU个数跟核数

    总核数 = 物理CPU个数 X 每颗物理CPU的核数 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数 查看物理CPU个数 cat /proc/cpuinfo| grep & ...

  10. Docker学习参考网站

    Docker——从入门到实践 https://www.yuque.com/grasilife/docker 2.阿里源网站:https://cr.console.aliyun.com 3.DaoClo ...