扫一扫就能识别文字,这是近年来出现在很多应用中的新功能。比如,输入银行卡号时,直接用手机摄像头扫一扫,软件就能提取银行卡信息。这里用到的技术正是光学字符识别技术(Optical Character Recognition)。
OCR 是光学字符识别(Optical Character Recognition)的缩写,指利用机器将图像中手写体或印刷体的文本转换为计算机可以直接处理的格式。作为计算机视觉领域的重要分支,OCR 典型应用是通过图像文字识别实现信息录入。同时,由于文字和符号包含丰富的语义信息,基于 OCR 提取文字信息继而进行分析,能够帮助机器更好地理解图像。
9 月 28 日,在工业和信息化部、北京市人民政府、国际电信联盟 ITU-T 指导的 2020 AIIA 人工智能开发者大会上,主办方正式发布国内首份智能文字识别(OCR)能力测评与应用白皮书。
白皮书从 OCR 发展背景、技术沿革、产业发展现状、技术标准化、发展趋势等多个维度,对当前国内 OCR 产业进行了一次详细梳理,全面助推 OCR 技术产业化加速落地及可持续发展。 
据了解,白皮书由中国信息通信研究院、中国人工智能产业发展联盟、腾讯公司相关部门联合起草。 借助人工智能技术,近年来 OCR 性能的不断提升为产业数字化催生出的更复杂的 OCR 应用场景提供了坚实支撑。同时,覆盖手机、电子产品以及云服务在内的更加多样化的服务载体,进一步加快了 OCR 的普及,持续向社会生产生活的更多领域渗透。 尤其是 2020 年 4 月,发改委明确将人工智能基础设施列入 “新基建” 范围,作为人工智能应用中最接 “地气”,商业推广较为成熟的领域,OCR 产业在“新基建” 背景下无疑将迎来新的发展机遇,相关技术也将迎来新一轮的变革。 报告指出,OCR 技术未来发展的三大方向主要包括一体化的端到端 OCR 模型、兼具高性能高效率的 OCR、从感知到认知的智能 OCR。 详细来说,构建一体化的端到端网络,同时对文字检测和识别进行训练,将成为 OCR 技术发展的重要趋势之一。端到端的网络设计不仅能够减少重复计算,又能够提高特征的质量,促进任务性能的改善。
同时,大量的 OCR 应用需要在资源受限的移动端设备上运行,当前移动端 OCR 算法大多以牺牲一定的算法精度来换取运行速度,针对移动设备设计兼顾性能和效率的轻量 OCR 模型将是未来发展的重要方向。 另外,从感知到认知的智能 OCR 来说,OCR 技术通常从计算机视觉领域出发,未来与自然语言处理技术、知识图谱等更广领域的交叉融合,通过语义及知识的深度挖掘提升 OCR 性能是重要趋势。
此外,在 OCR 中引入强化学习和元学习等新的学习范式,让机器自主学习如何识别文字,也将成为研究热点。 诸多行业有了深入成熟的应用。未来随着传统行业的数字化转型,OCR 应用范围和场景将进一步扩展,市场规模将进一步增大。有权威机构预测,2025 年全球 OCR 市场规模将达到 133.81 亿美元。 早期受限于技术发展水平,OCR 厂商通常从特定应用切入,例如车牌识别系统等,形成了一系列专用设备。近年来,越来越多的终端设备及应用均嵌入了 OCR 技术,并逐渐形成了从基础设施、基础能力到终端应用的完整产业链生态,也衍生出了卡证、票据等一系列细分 OCR 能力,通过组合的方式服务于各个行业。 图 | OCR 产业生态图
不难看出,OCR 技术逐渐 “下沉” 为一项基本的能力,为上层不同的业务应用提供底层技术支撑。科技巨头和云计算厂商正在纷纷加速布局 OCR,在满足自身内部业务需求的同时,不断对外开放先进的 OCR 能力,OCR 已然成为科技巨头能力标配。  在具体的落地应用层面,目前卡证识别、票据识别等标准场景文字识别已经相对成熟,手写文字识别在教育、物流等行业的应用也在不断扩大。复杂动态场景下的 OCR 技术和应用成为近两年的热门研究方向,比如在无人驾驶、机器人等场景利用 OCR 对视场中出现的文字进行识别等。在此次发布的白皮书中,腾讯云也公布了其多项OCR领域的典型落地案例。 值得一提的是,为全面降低 OCR 相关领域的应用门槛,避免出现鱼龙混杂局面,白皮书也首次公布 OCR 评测标准和规范。 2020 年 4 月,中国人工智能产业发展联盟制定了《OCR 服务智能化分级技术要求和评估方法》,规定了 OCR 服务在功能、性能、安全等方面的技术要求以及评估方法。7 月,OCR 服务要求及评估方法在国际电信联盟 ITU-T SG16 组成功立项,标志着深度学习背景下的 OCR 评测方法已经逐渐被国际标准组织所接受。 目前,由中国人工智能产业发展联盟指导,腾讯云开发的天鉴 OCR 服务引擎自动化评测平台,不仅能够为 OCR 技术供给方提供技术测试服务,也将发布 OCR 技术或产品的测试结果,为需求方提供客观公正的选型依据。

道翰天琼CiGril机器人API

道翰天琼CiGril认知智能机器人API用户需要按步骤获取基本信息:

  1. 在平台注册账号
  2. 登录平台,进入后台管理页面,创建应用,然后查看应用,查看应用相关信息。
  3. 在应用信息页面,找到appid,appkey秘钥等信息,然后写接口代码接入机器人应用。

开始接入

请求地址:http://www.weilaitec.com/cigirlrobot.cgr

请求方式:post

请求参数:

参数

类型

默认值

描述

userid

String

平台注册账号

appid

String

平台创建的应用id

key

String

平台应用生成的秘钥

msg

String

""

用户端消息内容

ip

String

""

客户端ip要求唯一性,无ip等可以用QQ账号,微信账号,手机MAC地址等代替。

接口连接示例:http://www.weilaitec.com/cigirlrobot.cgr?key=UTNJK34THXK010T566ZI39VES50BLRBE8R66H5R3FOAO84J3BV&msg=你好&ip=119.25.36.48&userid=jackli&appid=52454214552

注意事项:参数名称都要小写,五个参数不能遗漏,参数名称都要写对,且各个参数的值不能为空字符串。否则无法请求成功。userid,appid,key三个参数要到平台注册登录创建应用之后,然后查看应用详情就可以看到。userid就是平台注册账号。

示例代码JAVA:

import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;

public class apitest {

/**
     * Get请求,获得返回数据
     * @param urlStr
     * @return
     */
    private static String opUrl(String urlStr)
    {        
        URL url = null;
        HttpURLConnection conn = null;
        InputStream is = null;
        ByteArrayOutputStream baos = null;
        try
        {
            url = new URL(urlStr);
            conn = (HttpURLConnection) url.openConnection();
            conn.setReadTimeout(5 * 10000);
            conn.setConnectTimeout(5 * 10000);
            conn.setRequestMethod("POST");
            if (conn.getResponseCode() == 200)
            {
                is = conn.getInputStream();
                baos = new ByteArrayOutputStream();
                int len = -1;
                byte[] buf = new byte[128];

while ((len = is.read(buf)) != -1)
                {
                    baos.write(buf, 0, len);
                }
                baos.flush();
                String result = baos.toString();
                return result;
            } else
            {
                throw new Exception("服务器连接错误!");
            }

} catch (Exception e)
        {
            e.printStackTrace();
        } finally
        {
            try
            {
                if (is != null)
                    is.close();
            } catch (IOException e)
            {
                e.printStackTrace();
            }

try
            {
                if (baos != null)
                    baos.close();
            } catch (IOException e)
            {
                e.printStackTrace();
            }
            conn.disconnect();
        }
        return "";
    }
    
    
    public static void main(String args []){        
            //msg参数就是传输过去的对话内容。            
            System.out.println(opUrl("http://www.weilaitec.com/cigirlrobot.cgr?key=UTNJK34THXK010T566ZI39VES50BLRBE8R66H5R3FOAO84J3BV&msg=你好&ip=119.25.36.48&userid=jackli&appid=52454214552"));
            
    }
}

中国首份OCR白皮书出炉,基于深度学习的OCR已成主流-1相关推荐

  1. 全球首份6G白皮书出炉【附下载】

    今年3月,全球首届6G峰会在芬兰举办.主办方芬兰奥卢大学峰会邀请了70位来自各国的顶尖通信专家,召开了一次闭门会议,主要内容就是群策群力.拟定全球首份6G白皮书,明确6G发展的基本方向. 近日,这份名 ...

  2. 无处 不在的无线智能——6g 的关键驱动与研究挑战_全球首份6G白皮书出炉!

    科技日报记者 胡定坤 今年3月,全球首届6G峰会在芬兰举办.主办方芬兰奥卢大学峰会邀请了70位来自各国的顶尖通信专家,召开了一次闭门会议,主要内容就是群策群力.拟定全球首份6G白皮书,明确6G发展的基 ...

  3. 【Python实战】中国首份姓名报告出炉!中国爸妈给孩子取什么名?点开前你先猜一下……

    前言

  4. 基于深度学习的OCR技术简介

    1.概述 本文简要介绍基于深度学习的OCR技术,主要分为整体框架流程介绍,文字检测CTPN,文字识别CRNN+CTC,基于windows平台的项目实战,以及遇到的一些问题和解决方案,最后展示一下胜利的 ...

  5. 【OCR入门】一、基于深度学习的OCR技术导论和PaddleOCR

    目录 一.OCR简介 1.1.OCR是什么? 1.2.OCR的使用场景 1.3.OCR的技术难点 二.OCR前言技术 2.1.文本检测 2.2.文本识别 2.3.文档的结构化识别 2.4.其他OCR相 ...

  6. 基于深度学习的OCR

    为了提升用户体验,O2O产品对OCR技术的需求已渗透到上单.支付.配送和用户评价等环节.OCR在美团业务中主要起着两方面作用.一方面是辅助录入,比如在移动支付环节通过对银行卡卡号的拍照识别,以实现自动 ...

  7. 基于深度学习的OCR技术

    随着数字化时代的到来,图片识别技术越来越受到人们的关注.其中,OCR技术作为图片处理的一个重要分支,可以将扫描的图片进行自动识别和分类,极大地提高了工作效率.本文将介绍有道实况OCR技术的相关内容,帮 ...

  8. B站UP搭建世界首个纯红石神经网络、基于深度学习动作识别的色情检测、陈天奇《机器学编译MLC》课程进展、AI前沿论文 | ShowMeAI资讯日报

    ShowMeAI日报系列全新升级!覆盖AI人工智能 工具&框架 | 项目&代码 | 博文&分享 | 数据&资源 | 研究&论文 等方向.点击查看 历史文章列表, ...

  9. 【深度学习】OCR文本识别

    OCR文字识别定义 OCR(optical character recognition)文字识别是指电子设备(例如扫描仪或数码相机)检查纸上打印的字符,然后用字符识别方法将形状翻译成计算机文字的过程: ...

最新文章

  1. 关于Unity中物理检测的准备
  2. pymysql.err.IntegrityError: (1062, Duplicate entry 'roxml-ROXML' for key 'PRIMARY')
  3. 如何创建生成非 MFC 项目的自定义 AppWizards
  4. 1.3Python快速入门
  5. dijkstra 算法_路径规划算法总结
  6. 基于.NET实现数据挖掘--聚类分析算法
  7. 用python写一段话.使这句话在电脑屏幕中循环播放_Python笔记_第一篇_面向过程第一部分_6.循环控制语句(while 和 for)_...
  8. 通俗易懂——5G调制方式全面解读
  9. Shapley Values
  10. 1013: 【顺序结构】数字各位分割
  11. unity二維碼生成(新)
  12. Android 手机震动提示效果 Android Vibrator 手机震动
  13. UE5笔记【四】UE5主材质Master Materials和材质实例MI
  14. python opencv 二维码定位识别
  15. 超微服务器安装操作系统,超微服务器bios设置
  16. Robocup 仿真2D 学习笔记(三)最初的改进1
  17. 使用QueryList解析微信文章
  18. 海老师的技术博客: OCA 考试 准备笔记 前言
  19. naarray查询 swift_VLOOKUP查询时为什么会出现NA?原来知道这6种解决方法这么重要...
  20. 数据驱动到底是什么?如何驱动,又能驱动什么?

热门文章

  1. 32位ORACLE10G升级到 64位的ORACLE10G
  2. 宽带网通信原理_1_绪论
  3. 计算机开机没反应怎么办,电脑开机没反应怎么办?
  4. 【甘道夫】Spark1.3.0 Running Spark on YARN 官方文档精华摘要
  5. 机器学习实验 - K均值聚类
  6. 学计算机的是不是都非常木讷,计算机考研复试侧重什么?
  7. 分布式监控部署之Ganglia
  8. ARM嵌入式系统上OpenCL测试
  9. 关于计算机的一些的总结
  10. 阿里云oss对象存储图片预处理