文档解析:如何从PDF中解析出表格结构和数据?

从PDF中解析出表格结构和数据,可以采用以下几种方法:从PDF中解析出表格结构和数据,主要用到以下算法和技术:

·OCR技术:光学字符识别技术,用于从扫描的PDF文件中提取文本信息,包括表格数据。这项技术可以将图像中的文字转换为机器可读的文本格式,进而解析表格结构和数据。

·AI驱动的PDF数据提取:智能文档处理解决方案,使用OCR工具的AI驱动PDF数据提取,提供了从PDF文档中提取数据的全面解决方案。提取的数据可以输出为多种格式,如JSON、XML、Excel和CSV

·机器学习分类:训练机器学习模型来识别表格的各个组成部分,如行、列、单元格等。这些模型可以是基于经典的机器学习算法,也可以是基于深度学习的神经网络。

这里推荐一个好用的文档解析工具,合合信息TextIn通用文档,迎来解析重磅升级!

本次优化主要改善了表格识别效果,以统一方案替代有线表格与无线表格分类处理方法,减少了级联损失,大幅度提升表格全对率。

表格全对率指标包含了对文本全对率结构准确度的测量。文本全对率评估的是,解析出的表格中每个单元格的文本是否与原始表格完全一致,没有遗漏、错误或多余的字符。结构准确度测量模型对表格结构的预测是否正确,排除错行、漏行或合并单元格错误等问题。

根据TextIn测试指标,一个表格中,文本或结构解析有任何问题,即判为错误。表格全对率不仅考虑了单元格的内容,还考虑了表格的层次结构和布局,以确保信息的完整性与准确性。

对于此前表格处理模型,技术团队诊断:解决过于依赖逻辑位置预测与跨cell填充问题,能够进一步提升表格引擎性能。

TextIn技术团队在当前表格解析模型及后处理算法的基础上,结合模型预测的位置信息和逻辑信息,引入轴对齐处理思路,避免仅依赖逻辑信息预测的问题,减少单元格划分错误的情况;通过上下文信息与行列查询,解决跨行列cell填充问题;基于表格内容OCR匹配,实现物理位置修正。经测试,优化版本表格全对率有显著提升。

我们将通过几个案例,直观展示本次表格解析性能优化的表现。

01 无线表格解析

图1-1 识别错误

图1-2 优化结果

如图所示,图1-1是无线表格解析中常见的bad case:合并单元格结构识别不准确。由于合并单元格有顶部对齐、垂直居中多种形式,在实际文档中版面复杂多变,在没有框线的情况下,更增加了解析模型的识别难度。

图1-2中可以看到,TextIn文档解析本次表格性能优化后,能妥善处理这类难点情况,实现正确的表格还原,保障下游信息处理的准确性。

02 不规则无线表格解析

图2-1 识别错误

图2-2优化结果

缺少结构信息的表格文字识别会丢失重要价值,导致数据成为无意义的数字。

PDF文件中,拥有不同行列数的不规则无线表格在同一版面呈现的情况相当常见。以图中的金融机构报告为例,值得注意的是,TextIn本次表格优化后,模型会同步预测空cell,以提升整体表格解析准确率。

03 低清晰度无线表格解析

图3-1 识别错误

图3-2优化结果

如图所示,对于清晰度较低、噪点多的扫描图像,优化后的表格模型也能实现精准的识别。

从具体案例来看,这一次表格解析优化,对解决单元格中的多行问题有优异的效果,用户如有产品说明书、体检报告、技术规格书等文件及其他类型多行复杂表格的解析需求,解析引擎的准确性和使用体验都将大幅度提升,能够满足教育、金融、数据处理等多种场景的精细化使用需求。

前端功能新增:支持表格编辑

新版前端组件支持在线表格编辑,包括文字编辑、插入或删除行列、单元格合并与拆分等一系列常用表格编辑操作,便于直接通过窗口操作对识别结果进行修改或校正。

支持单独提取文档中的表格元素,导出为Excel。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

克服大规模语言模型限制,构建新的应用方法——LangChain

大模型 大模型的出现和落地开启了人工智能(AI)新一轮的信息技术革命,改变了人们的生 活方式、工作方式和思维方式。大模型的落地需要数据、算力和算法三大要素。经过几 年发展,大模型的数据集(包括多模态数据集)制作已经形成了规约,Meta、Go…

两种距离度量简记

一、Lp距离/Minkowski 距离(Minkowski distance) 1、Lp距离: 特征空间中两个实例点的距离是两个实例点相似程度的反映。Lp距离是一种一般化的距离度量 设特征空间x是n维实数向量空间Rn xi,xj的Lp距离定义为(p>1&…

读取电视剧MP4视频的每一帧,检测出现的每一个人脸并保存

检测效果还不错,就是追踪有点难做 import cv2 import mediapipe as mp import os from collections import defaultdict# pip install msvc-runtime# 初始化OpenCV的MultiTracker # multi_tracker = cv2.MultiTracker_create() # multi_tracker = cv2.legacy.MultiTracker_cre…

用最小的代价解决mybatis-plus关于批量保存的性能问题

1.问题说明 问题背景说明,在使用达梦数据库时,mybatis-plus的serviceImpl.saveBatch()方法或者updateBatchById()方法的时候,随着数据量、属性字段的增加,效率越发明显的慢。 serviceImpl.saveBatch(); serviceImpl.updateBatch…

OpenCV相机标定与3D重建(10)眼标定函数calibrateHandEye()的使用

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 计算手眼标定: g T c _{}^{g}\textrm{T}_c g​Tc​ cv::calibrateHandEye 是 OpenCV 中用于手眼标定的函数。该函数通过已知的机器人…

flink yarn模式3种提交任务方式

接上文:一文说清flink从编码到部署上线 1.引言 Apache Hadoop的Yarn是许多数据处理框架中非常流行的资源提供者。Flink的服务提交给Yarn的ResourceManager后,ResourceManager会在由Yarn的NodeManager管理的机器上动态分配运行容器。Flink在这些容器上部…

32.最长有效括号 python

最长有效括号 题目题目描述示例 1:示例 2:示例 3:提示:题目链接 题解算法步骤:python实现解释:提交结果 题目 题目描述 给你一个只包含 ‘(’ 和 ‘)’ 的字符串,找出最长有效(格式…

OpenCV相机标定与3D重建(13)检测给定图像中是否存在符合指定尺寸的棋盘格图案函数checkChessboard()的使用

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 cv::checkChessboard 是 OpenCV 库中的一个函数,用于检测给定图像中是否存在符合指定尺寸的棋盘格图案。这个函数对于相机校准非常重…

规范秩相关信息搜集Day2

系列博客目录 文章目录 系列博客目录1.A Survey on Tensor Techniques and Applications in Machine Learning2.有没有研究低秩矩阵有利于分类的计算机方面的论文呢3.Image classification based on low-rank matrix recovery and Naive Bayes collaborative representatio 基于…

2024年华中杯数学建模C题基于光纤传感器的平面曲线重建算法建模解题全过程文档及程序

2024年华中杯数学建模 C题 基于光纤传感器的平面曲线重建算法建模 原题再现 光纤传感技术是伴随着光纤及光通信技术发展起来的一种新型传感器技术。它是以光波为传感信号、光纤为传输载体来感知外界环境中的信号,其基本原理是当外界环境参数发生变化时&#xff0c…

【Golang】Go语言编程思想(六):Channel,第二节,使用Channel等待Goroutine结束

使用 Channel 等待任务结束 首先回顾上一节 channel 这一概念介绍时所写的代码: package mainimport ("fmt""time" )func worker(id int, c chan int) {for n : range c {fmt.Printf("Worker %d received %c\n",id, n)} }func crea…

【Windows】【P2P】ipv6 nmap ncat 测试电信、移动、联通两个4G 5G热点ipv6地址的连通性

测试场景 一台PC在电信4G热点下,一台PC在电信5G热点下。 扩展测试 电信、移动、联通的ipv6 下载安装nmap Download the Free Nmap Security Scanner for Linux/Mac/Windows 安装后,进入目录C:\Windows\System32\WindowsPowerShell\v1.0\powershell.e…

一文掌握 OpenGL 几何着色器的使用

学习本文需要具备 OpenGL ES 编程基础,如果看起来比较费劲,可以先看入门文章 OpenGL ES 3.0 从入门到精通系统性学习教程 。 什么是几何着色器 几何着色器(Geometry Shader) OpenGL 管线中的可选着色器阶段,位于顶点着色器(Vertex Shader) 和光栅化阶段 之间。 其核心…

C—初阶调试

对你有帮助的话能否一键三连啊!祝每个人心想事成! 什么是Bug? 首先我们先了解一下日常口语中的“Bug”是什么 Bug可以理解为计算机程序错误,编程时的漏洞 调试及重要性 顾名思义,调试就是通过工具找出bug存在,找出…

Capacitor 打包后的 iOS app 无法访问 http 的内容,解决办法

Capacitor 打包后的 iOS app 无法访问 http 的内容,解决办法 上篇文章中说了如何使用 Capacitor 打包成 iOS app 的过程中遇到的问题 Capacitor在 xcode 打包 iOS 应用发布的时候出错。 在这之后,遇到了一个新问题, 就是它无法访问 http 的内…

LLaMA Factory+ModelScope实战——使用 Web UI 进行监督微调

LLaMA FactoryModelScope实战——使用 Web UI 进行监督微调 文章原始地址:https://onlyar.site/2024/01/14/NLP-LLaMA-Factory-web-tuning/ 引言 大语言模型微调一直都是一个棘手的问题,不仅因为需要大量的计算资源,而且微调的方法也很多。在…

Excel的文件导入遇到大文件时

Excel的文件导入向导如何把已导入数据排除 入起始行,选择从哪一行开始导入。 比如,前两行已经导入了,第二次导入的时候排除前两行,从第三行开始,就将导入起始行设置为3即可,且不勾选含标题行。 但遇到大文…

【C++】选择排 序算法分析与扩展

博客主页: [小ᶻ☡꙳ᵃⁱᵍᶜ꙳] 本文专栏: C 文章目录 💯前言💯代码回顾💯选择排序的算法流程💯代码详解外层循环初始化最小值内层循环比较与更新元素交换 💯选择排序的特性时间复杂度空间复杂度稳定性…

顺序表(数据结构初阶)

文章目录 顺序表一:线性表1.1概念: 二:顺序表2.1概念与结构:2.2分类:2.2.1静态顺序表2.2.2动态顺序表 2.3动态顺序表的实现声明(初始化)检查空间容量尾插头插尾删头删查找指定位置之前插入数据指…

【Linux】磁盘结构和文件系统

文章目录 磁盘磁盘的物理结构LBA寻址法抽象管理分区化总结 磁盘 磁盘是计算机存储系统的核心部件之一,主要用于长期存储数据。磁盘的基本概念、物理结构和逻辑组织形式直接影响着其性能和使用效率。 下面的图片是一个磁盘: 磁盘打开之后的结构如下&…