【玩转OCR】 | 腾讯云智能结构化OCR在多场景的实际应用与体验

news2025/2/7 18:13:00

文章目录

  • 引言
  • 产品简介
    • 产品功能
    • 产品优势
  • API调用与场景实践
    • 图像增强API调用实例
    • 发票API调用实例
    • 其他场景
  • 结语
  • 相关链接

引言

在数字化信息处理的时代,如何高效、精准地提取和结构化各类文档数据成为了企业和政府部门的重要需求。尤其是在面对海量票据、证件、表单和其他格式多样的文档时,人工录入和传统OCR技术常常面临识别精度低、处理效率差等问题。为了解决这些痛点,智能结构化光学字符识别(Smart OCR)应运而生。结合领先的深度学习技术和图像检测能力,智能结构化OCR能够高效地识别各类文本,并将其转化为结构化数据,广泛应用于政务、票据核销、行业表单、国际物流等领域。本篇文章我主要将介绍该技术的产品功能、优势以及API调用实践,这里重点说明图像增强还有发票识别,当然后面还展示了其他是一些~~~

产品简介

智能结构化(Smart Structure Optical Character Recognition )融合了业界领先的深度学习技术、图像检测技术以及 OCR 大模型能力,能够实现不限版式的结构化信息抽取。无论是固定卡证还是复杂的物流单据,均可实现智能识别。该产品预学习建立键值对应关系,支持客户定制模板,提升数据提取录入效率,适用于政务、票据核销、行业表单和国际物流等场景。
在这里插入图片描述

产品功能

  • 自定义键值
    支持自定义创建个性化键值(key),用户通过传入自定义 key,模型自动建立图片中文字的键值对应关系,实现对任意版式图片的结构化识别。

  • 智能匹配
    支持对已上传图片的智能配准,实现对不同版式图片与已发布模板的自动匹配,减少人工分类成本,快速实现图片的结构化识别。
    自定义字段类型
    支持自定义创建字段类型,支持针对不同识别区内容类型进行专项优化,如小写金额、日期、纯数字等,可根据需求选择合适的字段类型以提升识别准确率,也可通过穷举可能的输出值范围自定义字段类型,对识别结果进行智能纠正和规范。

产品优势

高精度
支持任意版式的卡证票据识别,各字段精度均处于业界领先水平,文本基础识别准确率达到98%以上,文本结构化准确率达到85%以上。
完备性
支持多种常见版式的数据结构化提取,如警察证、教师资格证、道路运输证等,适用于多行业场景。
易用性
用户仅需简单的几步配置,即可定制个性化需求模板,快速提取结构化数据,实现高效录入。

API调用与场景实践

在API调用之前,我们需要开通一下功能,在下面的搜索栏搜索即可
在这里插入图片描述

在这里插入图片描述

图像增强API调用实例

在左侧的导航栏找到API Explorer,然后在上方搜索到文字识别,再通过设置相关参数,如ImageBase64或ImageUrl等等,我们就可以将待处理的图像传递给API

在这里插入图片描述
下面是Python代码示例


import json
import types
from tencentcloud.common import credential
from tencentcloud.common.profile.client_profile import ClientProfile
from tencentcloud.common.profile.http_profile import HttpProfile
from tencentcloud.common.exception.tencent_cloud_sdk_exception import TencentCloudSDKException
from tencentcloud.ocr.v20181119 import ocr_client, models
try:
    # 实例化一个认证对象,入参需要传入腾讯云账户 SecretId 和 SecretKey,此处还需注意密钥对的保密
    # 代码泄露可能会导致 SecretId 和 SecretKey 泄露,并威胁账号下所有资源的安全性。以下代码示例仅供参考,建议采用更安全的方式来使用密钥,请参见:https://cloud.tencent.com/document/product/1278/85305
    # 密钥可前往官网控制台 https://console.cloud.tencent.com/cam/capi 进行获取
    cred = credential.Credential("SecretId", "SecretKey")
    # 实例化一个http选项,可选的,没有特殊需求可以跳过
    httpProfile = HttpProfile()
    httpProfile.endpoint = "ocr.tencentcloudapi.com"

    # 实例化一个client选项,可选的,没有特殊需求可以跳过
    clientProfile = ClientProfile()
    clientProfile.httpProfile = httpProfile
    # 实例化要请求产品的client对象,clientProfile是可选的
    client = ocr_client.OcrClient(cred, "ap-guangzhou", clientProfile)

    # 实例化一个请求对象,每个接口都会对应一个request对象
    req = models.ImageEnhancementRequest()
    params = {
        "ImageBase64": ""
    }
    req.from_json_string(json.dumps(params))

    # 返回的resp是一个ImageEnhancementResponse的实例,与请求对象对应
    resp = client.ImageEnhancement(req)
    # 输出json格式的字符串回包
    print(resp.to_json_string())

except TencentCloudSDKException as err:
    print(err)

官方也提供了文档说明
在这里插入图片描述

发票API调用实例

这里我在网上随便找了一张发票请添加图片描述

经过我们API的调用之后在这里插入图片描述

在这里插入图片描述

其他场景

当然还有其他的场景,例如车牌识别在这里插入图片描述

公式识别
在这里插入图片描述

还有丰富的其他场景,供大家自行去体验,体验地址在最下方
在这里插入图片描述

结语

随着智能OCR技术的不断发展,它在各个行业中的应用场景越来越广泛。从简单的卡证票据到复杂的行业表单,智能OCR的结构化信息抽取能力都能大大提高数据处理的效率与准确性。无论是在政务、物流,还是在企业的财务管理中,智能OCR都将成为数字化转型的重要工具。通过本文介绍的API调用和场景实践,希望能帮助您快速上手并体验这一创新技术的强大功能,进一步提升工作效率,释放人工智能的巨大潜力。我期待着,也祝愿屏幕前的你越来越好~~~

相关链接

刚兴趣的小伙伴可以参考这些文档:
官方接口文档:https://cloud.tencent.com/document/api/866
API在线调用页面:https://console.cloud.tencent.com/api/explorer?Product=ocr&Version=2018-11-19&Action=GeneralBasicOCR
体验Demo地址:https://ocrdemo.cloud.tencent.com/?from_column=20421&from=20421
产品页:https://cloud.tencent.com/product/smart-ocr?from_column=20421&from=20421

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2267264.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

c# VS2022安装教程

换了部电脑,重新安装vs2022,做个记录给自己以后方便看 官网下载地址:下载 Visual Studio Tools - 免费安装 Windows、Mac、Linux 官网下载vs2022社区版,安装包 双击后点击继续,需要全程联网 随后出现这个界面并勾选…

Bluetooth Spec【0】蓝牙核心架构

蓝牙核心系统由一个主机、一个主控制器和零个或多个辅助控制器组成蓝牙BR/ EDR核心系统的最小实现包括了由蓝牙规范定义的四个最低层和相关协议,以及一个公共服务层协议;服务发现协议(SDP)和总体配置文件要求在通用访问配置文件&a…

PCA降维MATLAB代码解释及应用场景

代码整体功能概述 这段代码主要实现了以下几个功能:首先读取两个 CSV 文件中的数据,对数据进行归一化处理后合并,接着绘制原始数据的散点图进行可视化展示,然后应用主成分分析(PCA)算法对合并后的数据进行…

深入理解Redis

1.数据结构类型 数据结构-SDS-简单动态字符串 Redis构建了一种新字符串结构,称为简单动态字符串(Simple Dynamic String),简称SDS。 Redis未直接使用C语言的字符串,如:char* s = "hello",本质是字符数组: {h, e, l, l, o, \0}。因为C语言字符串存在很多问题…

数字后端培训项目Floorplan常见问题系列专题续集1

今天继续给大家分享下数字IC后端设计实现floorplan阶段常见问题系列专题。这些问题都是来自于咱们社区IC后端训练营学员提问的问题库。目前这部分问题库已经积累了4年了,后面会陆续分享这方面的问题。 希望对大家的数字后端学习和工作有所帮助。 数字后端项目Floor…

【TaskBasics】- KRTS C++示例精讲(3)

TaskBasics示例讲解 目录 TaskBasics示例讲解结构说明 项目打开请查看【BaseFunction精讲】。 结构说明 TaskBasics:应用层程序,主要用于人机交互、数据显示、内核层数据交互等; TaskBasics.h : 数据定义TaskBasics.cpp&#xff…

jenkins集成工具(一)部署php项目

目录 什么是CI 、CD Jenkins集成工具 一、Jenkins介绍 二、jenkins的安装和部署 环境部署 安装jenkins 安装gitlab 配置镜像源进行安装 修改密码 安装git工具 上传测试代码 Jenkins部署php项目wordpress 发布php代码 安装插件 测试代码发布 实现发布成功发送邮件…

在交叉编译中,常见的ELF(elf)到底是什么意思?

ELF 是 Executable and Linkable Format 的缩写,中文翻译为“可执行与可链接格式”。它是一种通用的文件格式,主要用于存储可执行文件、目标文件(编译后的中间文件)、动态库(.so 文件)以及内存转储文件&…

图神经网络_图嵌入_Struc2Vec

0 背景 之前的node embedding方式,都是基于近邻关系,但是有些节点没有近邻,也有结构相似性。如图中的u、v节点。 struc2vec算法适用于捕获结构相似性。 1 相似度(距离)计算 1.1 公式 f k ( u , v ) f k − 1 ( u …

Linux内核中Typec CC检测原理及主从模式切换原理

一,Typec CC引脚定义 可以看到,数据传输主要有TX/RX两组差分信号,CC1和CC2是两个关键引脚,作用很多: • 探测连接,区分正反面,区分DFP和UFP,也就是主从 • 配置Vbus,有US…

uniapp通过v-if进行判断时,会出现闪屏?【已解决】

1.问题:按钮切换时,通过v-if来判断,会出现闪烁情况,影响用户体验 2.v-if 闪烁问题可能的原因 ‌条件切换频繁‌:如果 v-if 指令的条件在短时间内频繁切换,会导致元素不断被销毁和重新创建,从而…

webrtc获取IceCandidate流程

在WebRTC(Web Real-Time Communication)中,ICECandidate是一个关键概念,它用于描述在建立点对点(P2P)连接时可以考虑的潜在通信端点。以下是关于WebRTC中ICECandidate的详细解释: 一、ICECandidate的定义 ICECandidate对象通常包含以下关键属性: foundation:用于唯一…

计算机网络习题(第1章 概论 第2章 数据通信基础)

第1章 概论 1、计算机网络 2、互联网 3、计算机网络体系结构 分层模型 OSI/RM 7层模型 TCP/IP 5层模型 协议、PDU、SDU、SAP等术语 数据封装(计算) 第2章 数据通信基础 1、数据通信系统组成 2、主要性能指标 数据传输速率 码元速率 时延 3…

Springboot项目下面使用Vue3 + ElementPlus搭建侧边栏首页

Springboot项目下面、在html 页面 Vue3 ElementPlus 搭建侧边栏首页 1、效果图 2、static 文件下面的项目结构 3、代码实现 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>首页</title><…

【C++11】可变参数模版

目录 一、可变参数模版 1.1 基本语法及原理 1.2 包拓展 1.3 empalce系列接口 一、可变参数模版 之前我们在C语言中就学过可变参数&#xff0c;但是模版类型是固定的&#xff0c;怎么变呢&#xff1f;这里c11就给出了可变参数模版 1.1 基本语法及原理 C11支持可变参数模…

FFmpeg在python里推流被处理过的视频流

链式算法处理视频流 视频源是本地摄像头 # codinggbk # 本地摄像头直接推流到 RTMP 服务器 import cv2 import mediapipe as mp import subprocess as sp# 初始化 Mediapipe mp_drawing mp.solutions.drawing_utils mp_drawing_styles mp.solutions.drawing_styles mp_holis…

我的秋招总结

我的秋招总结 个人背景 双非本&#xff0c;985硕&#xff0c;科班 准备情况 以求职为目的学习Java的时间大概一年。 八股&#xff0c;一开始主要是看B站黑马的八股文课程&#xff0c;背JavaGuide和小林coding还有面试鸭。 算法&#xff0c;250&#xff0c;刷了3遍左右 项目&…

C++:单例模式

创建自己的对象&#xff0c;同时确保对象的唯一性。 单例类只能有一个实例☞静态成员static☞静态成员 必须类外初始化 单例类必须自己创建自己的唯一实例 单例类必须给所有其他对象提供这一实例 静态成员类内部可以访问 构造函数私有化☞构造函数私有外部不能创建&#x…

RBTree(红黑树)

目录 红黑树的概念 红黑树的性质 红黑树节点的定义 红黑树的插入 1. 按照二叉搜索的树规则插入新节点 2. 检测新节点插入后&#xff0c;红黑树的性质是否造到破坏 红黑树的检测 红黑树的删除 红黑树和AVL树的比较 红黑树的概念 红黑树&#xff0c;是一种二叉搜索树&…

linux自动化一键批量检查主机端口

1、准备 我们可以使用下面命令关闭一个端口 sudo iptables -A INPUT -p tcp --dport 端口号 -j DROP我关闭的是22端口&#xff0c;各位可以关其它的或者打开其它端口测试&#xff0c;谨慎关闭22端口&#xff01;不然就会像我下面一样握手超时&#x1f62d;&#x1f62d;&…