首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

炸裂!一招 OCR 搞定所有格式数据,企业实战案例 + 代码全公开!

在上一篇文章中,成功搭建起一套纯本地数据处理服务。该服务以 API 形式呈现,内部各项任务均可便捷调用。

昨天,我们分享了方案一,将文本、图像、表格分开处理;而今天带来的方案二则另辟蹊径 —— 采用 OCR 技术对所有格式的数据进行统一提取。

这一方法有效解决了文本与图案结果的匹配难题,大幅提升数据处理效率。

在深入讲解操作步骤前,先为大家展示实际提取效果。精心准备了 4 种企业内部常见的数据类型进行测试:

#A 不规则合并的表格

表格结构复杂,合并单元格情况频繁;

#B 带干扰的手写体

存在背景噪点等干扰因素的手写文字;

#C 规则表格的手写体

规整表格内的手写内容;

#D 文本 + 表格 + 图像的 PDF

多种元素混合的综合型文件 。

从实际提取结果来看,整体表现十分出色。其背后的 “功臣” 是 PaddleOCR,这项技术具备诸多强大特性:

智能版面分析

可对图片、PDF 等格式文档进行深度解析,精准划分文字、标题、表格、图片、公式等区域;

表格处理专家

支持通用中英文表格检测,能对表格区域进行结构化识别,并将结果输出为 Excel 文件;

多模态信息抽取

支持基于多模态的关键信息抽取(KIE)任务,涵盖语义实体识别(SER)和关系抽取(RE);

版面复原功能

可将处理后的内容恢复为与原始图像布局一致的 Word 或 PDF 文件;

灵活部署方式

支持自定义训练,提供 Python whl 包调用等多种推理部署方式,操作简单便捷;

广泛语言适配

在 OCR 功能上,适配中英等 80 多种语言,满足多样化需求。

一、环境搭建及准备

本次实践对环境有一定要求,具体如下:

还未搭建 AI 环境的小伙伴,强烈推荐参考【点击】手把手安装 AI 必备环境教程,完成基础环境搭建。环境搭建完成后,按以下步骤操作:

创建 conda 环境

打开终端,执行命令conda create --name ocr python=3.10,指定环境名称为 “ocr”,Python 版本为 3.10 。

激活 conda 环境

输入conda activate ocr,切换至新建的环境。

进入代码路径

使用cd命令进入存放代码的目录(注意:路径中不能包含中文,否则可能引发错误),例如cd /ocr/day2。

安装依赖

本次实践所需环境已打包,执行conda env create -f environment.yml,系统将自动安装所有依赖。由于是 GPU 版本,建议确保本地环境与示例环境一致。这套系统对资源要求不高,即便显卡性能一般也能正常运行。

二、下载实践代码及素材

为大家准备了三大实用资源:

#A 素材与结果包

包含所有实践素材及对应处理结果;

#B 安装指引

涵盖 GPU 和 CPU 环境的详细安装指南;

#C 代码案例

四个由浅入深的代码示例,助你逐步掌握核心技术 。

运行代码时,程序将实现三大实用功能:

智能跳过重复文件

已处理过的文件不会重复处理,节省资源;

规范输出路径

处理后的文件将输出至指定文件夹,若文件夹不存在则自动新建;

任务统计

处理完成后,自动统计任务耗时及处理概览。

实际运行效果如下:

稍后,我们将深入剖析这些功能的实现原理。

三、运行代码与核心代码解析

现在,环境与代码均已准备就绪,执行python step4.py即可运行程序。运行过程中,为大家梳理了几处核心代码:

指定 OCR 模型

选择中文模型,从日志可知使用的是最新版本。

重复文件处理逻辑

通过检查文本文件是否存在,判断文件是否已处理,避免重复操作。

字符串拼接

将 OCR 识别的文本按坐标拼接,消除不连贯和空格,形成有效内容。

耗时计算

统计文件处理情况和总耗时,便于调试与结果分析。

本次实践内容干货满满,掌握这些技能,相信大家在数据处理工作中能更得心应手。赶紧动手实践,完成学习打卡吧!

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OjAVasAnuU-6Xc6bzB-9kHnQ0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

相关快讯

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券