本篇博客的主题是光学字符识别 (OCR) 技术如何促进 PDF 文档(便携文件格式)的数字化转型。乍听起来这可能有些愚蠢:有人会说,PDF 文档已经是数字化,还有什么可转型的?OCR 技术诞生已经有很长时间,所以使用 OCR 数字化纸质文件已经并不新鲜。然而,PDF 并非如此简单,OCR 所能做的并不仅仅是将纸质文件数字化,当我们需要处理大量 PDF 文档时,它可以真正将我们的工作数字化
为什么我们需要使用 OCR 将 PDF 文档“数字化”?PDF 文档已经是数字格式的,不是吗?虽然我们在电脑上能够完整查看大多数 PDF 文档,但是却很难有效分析、修改和重复使用 PDF 中的信息。要解决这个难题,我们首先要了解 PDF 文档的结构。
我们来了解一下不同类型的 PDF:
PDF 并不包含文档结构信息。这意味着就一个 PDF 文档而言,我们无从知道哪些部分是文本,哪些部分是图像。我们不知道这些元素的作用,也不清楚它们之间的关系。而 OCR 能够帮助我们了解这些东西。
然而,某些类型的 PDF 文档,如 PDF/UA,可能会在一定程度上包含描述结构的附加信息。不过这些文档只占所有 PDF 文档的一小部分,不足以使我们对 PDF 文档进行包括分析和修改在内的许多操作。
OCR 可以实现哪些功能?除了整体处理 PDF 文档或特定页面外,OCR 还支持处理 PDF 文档的内容,包括文本编辑、全文检索、改编、提取表格、比对文档等等。其中一些功能对 OCR 的依赖显而易见,如处理 PDF 扫描文档,但是还有一些功能对 OCR 的依赖并不明显,如处理 PDF 数字文档。稍后,我们会通过三个用例详细了解这个问题.
在这之前,我们先来简单了解一下 OCR 的工作原理,明确一下它能提供哪些与文档相关的有用信息。
OCR 对文档的处理主要分为三个步骤。
第一步,使用名为“文档分析”(DA) 的系统分析文档页面。DA 系统会“查看”每一页内容,首先分析图片的总体外观,然后检测图片中可能为独立文字和字符的最小部分。通过这种方式,DA 确定页面中哪些部分是文字,哪些部分是图片或表格,并识别页面上是否有背景图片。DA 还能检测到条形码。此外,DA 还可以分析表格,识别表格图片中的分隔符和单元格。
第二步是识别 DA 发现的每一个文字。这是由 OCR 系统自身完成。OCR 可以“读取”每个字符或字符组合的图像,为我们提供计算机代码的形式数字文本,供我们进一步处理。
第三步是使用合成系统进行合成。
经过前两步,我们已经了解了文本、图片和表格在页面中的位置,表格单元格和分隔符的位置,以及各部分文本和表格单元格中存在哪些字符序列等信息。另外,我们还(通过 DA 处理)了解了图像的线条和文字是如何划分的及其在页面上的位置。
我们已经获得了所有组件,但是还没能将这些组件组装起来。而这正是合成系统所要做的。基本来说,合成系统会将先前步骤中获得的所有组件组装成数字形式的文档。合成系统会分析组件的参数和顺序,寻找页面上和页面之间的特定模式和相似性,并通过一些其他处理来重建文档结构。通过这一步,我们最终得到 PDF 文档的内容信息,如:
现在,我们就获得了一个数字化的 PDF 文档结构,可以有效地分析、比较、修改或提取文档中的内容了。
现在,我们已经对 OCR 如何识别 PDF 文档结构有了大体了解,下面让我们看看如何利用这些知识解决一些特定的 PDF 处理问题。
编辑数字 PDF 文档的障碍是什么?PDF 用户一般都希望能够处理数字 PDF 文档中的文本和所有内容。也就是说,可以轻松编辑这些内容。
虽然我们希望如此,
但不幸的是,显示却并非如此:
综上所述,编辑 PDF 文档的障碍在于 PDF 中缺失的信息(关于在添加或删除信息时如何重新排列其他元素的信息)对于编辑文字时确保文本段落的一致性至关重要。
借助 OCR,可以轻松在数字 PDF 文档中编辑段落。PDF 文档中的文本会原样提取。OCR 会检测标记,我们需要了解并遵循这些标记,以正确编辑整段内容。
OCR 在 PDF 段落编辑中的作用如下:
当用户发起编辑后,DA 系统会处理页面的栅格图像,找到文字和图片等元素。
随后,合成系统会在页面上创建一个临时副本,并添加所有必要标记。
从 PDF 文档中提取的数字文本与检测到的结构保持一致。这种合成可以让页面可编辑。
然后用户进行编辑,由于程序现在已经知道并且遵循段落结构,因此文本可以顺利编辑。这样可以实现行与行之间自然过渡,行间距和字符间距保持一致,自动选择字体,以及根据编辑需要扩大或缩小段落边框等编辑操作。用户可以实时看到所有编辑操作。
一旦用户完成编辑,只有修改的部分才会更新到 PDF 文档中。虽然使用 OCR 进行转换,但编辑时并不需要将生成的文档创建为原始文档的副本。因为编辑的就是原始文档本身,所有未被编辑的内容都会原样保留。
利用 OCR 可以直接从 PDF 文档中提取表格,使表格得到重复使用。下面我们就来详细了解一下。数字 PDF 文档中的表格看起来不错。我们可以轻松选择单个单元格中的文本,并将其复制到其他地方。如果我们可以复制一个单元格,我们可不可以复制整个表格,轻松快速地提取我们看到的信息?
很遗憾,我们不能直接复制。像选择文本一样,在一个数字 PDF 文档中选中整个表格并不会保留表格结构,所以我们必须重新创建表格。
为什么会出现这种情况呢?在数字 PDF 文档中,表格的视觉外观由一组对象(如线条和矩形)来定义。这些对象相互独立,都有着自己的外观,与其他对象和表格中的内容无关。也就是说,我们不知道每段文本属于哪个单元格,也不知道它是否属于这个表格。
既然线条和矩形都已经在 PDF 中,为什么不直接复制和粘贴呢?如果这样做,我们至多可以将复制的内容粘贴到另一个 PDF 文档中。即便如此,也不能确保一定成功。而且,我们无法将我们复制的内容粘贴到任何其他应用程序中,例如 Microsoft Word 或 Excel。
不过,还是有办法可以解决。如果我们不能“读取” PDF 文档中的表格(即使在“数字原生”PDF 文档中对表格也没有描述),那我们就直接用“看”的! OCR 可以根据表格的图像描述和重现表格结构。
借助 OCR,可以提取表格整体的栅格化结构。工作原理如下:
首先,将带有表格的选定区域转换为图像。
接下来,DA 系统分析图像,识别单元格、分隔符、背景以及单元格中的文字和图片等表格元素。
然后,我们需要获取文本。如果 PDF 文本清晰,可直接从 PDF 中提取文本。如果不清晰,可以使用 OCR 识别文本。最后,合成系统将检测到的结构与内容进行“组装”并进行标注。这些结构和内容会被放入剪贴板,用户可以将其作为整个表格粘贴到另一个应用程序中,如 Excel、Word、电子邮件等。
第三个用例是 OCR 如何帮助我们更准确地比较数字 PDF 文档。
说到比较数字 PDF 文档,你可能会问:“我们已经有了 PDF 中的所有字符,要成功比较 PDF 文档,还需要哪些东西呢?” 下面我们就来了解一下。
一般来说,不仅是 PDF,比较任何格式的两个文档时,都要尽量减少错误差异。另外,就是不能漏掉两个文档之间的任何实际差异
造成错误差异主要有三个原因:
造成两个文档比较时产生错误差异的第一个原因是,同一文本的格式不同,或在页面中的位置不同,但文本在文件中出现的总体顺序没有改变。第二个原因是页眉/页脚或插入的文字在不同位置打断正文。这两种情况都可能是由于其中一个文档被编辑,或者修改了版面布局,比如设置了不同的页边距。对于这两种情况,您可能已经猜到了解决方案,那就是获取并使用文档结构信息,即通过 OCR 重建结构。然而,还有另外一个原因也会造成错误差异,那就是 OCR 精度。一般来说,OCR 并非 100% 准确。关于这个问题,我们稍后再作讨论。
上面截图的两个文档中只存在一处真正的差异。左边的文档中有一条脚注,而右边的文档没有。其余的文本都是一样的,但在各页之间的分布有所不同(请看两个文档中第 4 节的开头)。下面的截图中同样是这两个文档,是在不考虑文档结构的情况下进行对比:
可以看到,只存在一处真正的差异,然而错误差异却多达四处。错误差异会浪费我们的时间和精力,导致专注度和工作效率下降。 所以,我们要尽量减少错误差异。
总而言之,如果我们简单地从数字 PDF 文档中提取文本进行比较,有可能产生许多错误差异,因为没有而且不能考虑文档结构。这包括文本在页与页之间的衔接方式可能不同,可能被不属于正文的页眉和页脚打断等等。只是简单地从 PDF 文档中提取文本的另一个问题是,PDF 文档的文本层并不一定准确或可用。
我们在上面讲到了通过 OCR 了解文档结构对于准确比较数字 PDF 文档的益处,以及 OCR 错误识别差异带来的挑战,然而要解决文本层质量的问题,最好还是使用 OCR……那么,有没有什么真正有效的解决方案可以解决所有这些难题呢?
当然有,那就是巧妙利用 OCR。尽可能多地从 PDF 文档中提取数字文本,最大程度减少字符识别的使用,同时使用足够的文档结构信息正确识别要比较的内容和确定比较的顺序。
下面是比较数字 PDF 文档的流程:
首先,对 PDF 文档进行光栅化和预识别。接下来,DA 系统和合成系统确定文档结构,识别段落、列表、插入内容、页眉和页脚、页码等元素。
然后,评估文本层质量。顺便说一句,这也是为什么要在准备阶段对 PDF 文档进行预识别。直接从 PDF 文档中提取文本的有效部分进行比较。识别无效部分。在两个文档中的段落、标题和插入内容正确对齐后,自动进行比较。即使没有做到像素对齐,或者在两个文档中发生了偏移,现在也可以正确地进行比较。
以上就是处理 PDF 文档的三个用例,它们都利用了甚至依赖 OCR 技术。使用 OCR 技术还可以对 PDF 文档进行很多其他处理。除了纯粹的文档转换外,ABBYY FineReader PDF 15 约三分之一的功能都用到了 OCR 技术,软件中高质量的 OCR 对于处理 PDF 的重要性不容小觑。现在就来亲自尝试一下 FineReader PDF 15 的所有功能吧!
产品
开发者工具
© 2025 ABBYY。所有的权利都得到保障
本网站使用cookies
我们使用 cookie 来创建相关内容和广告, 提供社交媒体功能并分析我们的流量。我们还分享以下信息 您与我们的社交媒体、广告和分析合作伙伴一起使用我们的网站,他们可能会 将其与您提供给他们或他们收集的其他信息结合起来 从您使用他们的服务.
本网站使用cookies
我们使用 cookie 来创建相关内容并 广告,提供社交媒体功能并分析我们的流量。我们还分享 有关您通过我们的社交媒体、广告和分析使用我们网站的信息 合作伙伴可能会将其与您提供给他们的其他信息或 他们从您使用他们的服务中收集的信息.
我们使用这些 cookie 来 分析和评估您的行为和偏好,以更好地了解您的 兴趣,创建营销材料和产品广告。当您访问时 我们的网站或阅读我们的电子邮件,我们会计算您在设备上执行的操作。
Cookie consent
Stores user cookie consent status for the current domain
最长储存时间: 1 年
类别 :HTTP Cookies
_cfuvid [x2]
This cookie is a part of the services provided by Cloudflare - Including load-balancing, deliverance of website content and serving DNS connection for website operators.
最大存储时长:: 临时
类别 : HTTP Cookies
XSRF-TOKEN
Ensures visitor browsing-security preventing by cross-site request forgery. This cookie is essential for the security of the website and visitor.
最大存储时长 :临时
类别 : HTTP Cookies
_noRedirectOffer
待定
最大存储时长:7 天
类别 : HTTP Cookies
Cookies-policy
Remember what cookies you consent to use
最大存储时长 :30 天
类别 : HTTP Cookies
mktoFormSent
Remembers that user filled out request form
最大存储时长 : 7 天
类别 : HTTP Cookies
__cf_bm [x3]
This cookie is used to distinguish between humans and bots. This is beneficial for the website, in order to make valid reports on the use of their website.
最大存储时长: 1 天
类别 : HTTP Cookies
_grecaptcha
This cookie is used to distinguish between humans and bots. This is beneficial for the website, in order to make valid reports on the use of their website.
最大存储时长 : 永久
永久 : HTML 本地存储
rc::a
This cookie is used to distinguish between humans and bots. This is beneficial for the website, in order to make valid reports on the use of their website.
最大存储时长 永久
类别 : HTML 本地存储
rc::brc::b
This cookie is used to distinguish between humans and bots.
最大存储时长 : 临时
类别 : HTML 本地存储
rc::c
This cookie is used to distinguish between humans and bots.
最大存储时长: 临时
类别 : HTML 本地存储
_GRECAPTCHA
This cookie is used to distinguish between humans and bots. This is beneficial for the website, in order to make valid reports on the use of their website.
最大存储时长 : 180 天
类别 : HTTP Cookies
These cookies allow us to make our website more user friendly, for example, if you visit abbyy.com from the UK , we can show you the UK area of abbyy.com the next time you visit.
yt/youkuplayer.fdl.playerckey
This cookie is used in conjunction with the video player. The cookie remembers if the user has muted the volume and keeps this setting on other video content watched by the visitor.
最大存储时长: :临时
类别 : 像素追踪器
yt/youkuplayer.fdl.ykplayer_process
This cookie is used in conjunction with the video player. The cookie remembers if the user has muted the volume and keeps this setting on other video content watched by the visitor.
最大存储时长: 临时
类别 : 像素追踪器
YK_PSL_SETTINGS
Used to save information about the visitor's video settings.
最大存储时长: 永久
类别 : HTML 本地存储
We use these cookies to measure the statistics and performance of the website. If you do not agree to the use of these cookies, we will not be able to measure the performance of the website and make improvements.
atpsida
Registers a unique ID that identifies the user's device during return visits. Used for conversion tracking and to measure the efficacy of online ads.
最大存储时长: 临时
类别 : HTTP Cookies
sca
Used to track user's interaction with embedded content.
最大存储时长: 临时
类别 : HTTP Cookies
Some of the data collected by this provider is for the purposes of personalization and measuring advertising effectiveness.
_ga
Registers a unique ID that is used to generate statistical data on how the visitor uses the website.
最大存储时长: 2 年
类别 : HTTP Cookies
_ga_#
Used by Google Analytics to collect data on the number of times a user has visited the website as well as dates for the first and most recent visit.
最大存储时长: 2 年
类别 : HTTP Cookies
_gat
Used by Google Analytics to throttle request rate
最大存储时长: 1 天
类别 : HTTP Cookies
_gid
Registers a unique ID that is used to generate statistical data on how the visitor uses the website.
最大存储时长: 1 天
类别 : HTTP Cookies
APLUS_LS_KEY
Registers statistical data on users' behavior on the website. Used for internal analytics by the website operator.
最大存储时长: 永久
类别 : HTML 本地存储
APLUS_CNA
Registers statistical data on users' behavior on the website. Used for internal analytics by the website operator.
最大存储时长: 永久
类别 : HTML 本地存储
x5secdata
Registers statistical data on users' behavior on the website. Used for internal analytics by the website operator.
最大存储时长: 1 天
类别 : HTTP Cookies
cna [x2]
Presents the user with relevant content and advertisement. The service is provided by third-party advertisement hubs, which facilitate real-time bidding for advertisers.
最大存储时长:1 年
类别 : HTTP Cookies
__utmz
Collects data on where the user came from, what search engine was used, what link was clicked and what search term was used. Used by Google Analytics.
最大存储时长: 180 天
类别 : HTTP Cookies
We use these cookies to analyze and evaluate your behavior and preferences to better understand your interests, create marketing materials and product advertisements. When you visit our website or read our emails, we count the actions you take on your device.
tfstk [x2]
Necessary for the implementation of video-content on the website.
最大存储时长 180 天
类别 : HTTP Cookies
isg
Sets a unique ID for the visitor, that allows third party advertisers to target the visitor with relevant advertisement. This pairing service is provided by third party advertisement hubs, which facilitates real-time bidding for advertisers.
最大存储时长: 180 天
类别 : HTTP Cookies
Hm_ck_#
Used to send data to Baidu about the visitor's device and behavior. Tracks the visitor across devices and marketing channels.
最大存储时长 : 临时
类别 : HTTP Cookies
Hm_lpvt_#
Used to send data to Baidu about the visitor's device and behavior. Tracks the visitor across devices and marketing channels.
最大存储时长 : 临时
类别 : HTTP Cookies
Hm_lvt_#
Used to send data to Baidu about the visitor's device and behavior. Tracks the visitor across devices and marketing channels.
最大存储时长 : 1 年
类别 : HTTP Cookies
Hm_lpvt_#
Used to send data to Baidu about the visitor's device and behavior. Tracks the visitor across devices and marketing channels.
最大存储时长: 临时
类别 : HTML 本地存储
Hm_lvt_#
Used to send data to Baidu about the visitor's device and behavior. Tracks the visitor across devices and marketing channels.
最大存储时长: 永久
类别 : HTML 本地存储
Hm_unsent_#
Used to send data to Baidu about the visitor's device and behavior. Tracks the visitor across devices and marketing channels.
最大存储时长 : 临时
类别 : HTML 本地存储
HMACCOUNT [x2]
Used to send data to Baidu about the visitor's device and behavior. Tracks the visitor across devices and marketing channels.
最大存储时长: 4824 天
类别 : HTTP Cookies
HMACCOUNT_BFESS
Used to send data to Baidu about the visitor's device and behavior. Tracks the visitor across devices and marketing channels.
最大存储时长 : 400 天
类别 : HTTP Cookies
Some of the data collected by this provider is for the purposes of personalization and measuring advertising effectiveness.
_gcl_au
Used by Google AdSense for experimenting with advertisement efficiency across websites using their services.
最大存储时长: 3 月
类别 : HTTP Cookies
IDE
Used by Google DoubleClick to register and report the website user's actions after viewing or clicking one of the advertiser's ads with the purpose of measuring the efficacy of an ad and to present targeted ads to the user.
最大存储时长: 400 天
类别 : HTTP Cookies
test_cookie
Used to check if the user's browser supports cookies
最大存储时长:1 天
类别 : HTTP Cookies
pagead/1p-user-list/#
Tracks if the user has shown interest in specific products or events across multiple websites and detects how the user navigates between sites. This is used for measurement of advertisement efforts and facilitates payment of referral-fees between websites.
最大存储时长: 临时
类别 : 像素追踪器
xlly_s
Collects data on visitor interaction with the website's video-content. This data is used to make the website's video-content more relevant towards the visitor.
最大存储时长: 3 天
类别 : HTTP Cookies
VISITOR_INFO1_LIVE
Tries to estimate the users' bandwidth on pages with integrated YouTube videos.
最大存储时长: 180 天
类别 : HTTP Cookies
YSC
Tries to estimate the users' bandwidth on pages with integrated YouTube videos.
最大存储时长: 180 临时
类别 : HTTP Cookies
auyst
Necessary for the implementation of video-content on the website.
最大存储时长 : 永久
类别 : HTML 本地存储
yt/youkuplayer.fdl.h5send
Required for the embedded media player to operate.
最大存储时长: 临时
类别 : 像素追踪器
__arpvid [x2]
Used to track user's interaction with embedded content.
最大存储时长 : 临时
类别 : HTTP Cookies
__ayft [x2]
Used to track user's interaction with embedded content.
最大存储时长 : 临时
类别 : HTTP Cookies
__aypstp [x2]
Used to track user's interaction with embedded content.
最大存储时长: 临时
类别 : HTTP Cookies
__ayscnt [x2]
Used to track user's interaction with embedded content.
最大存储时长: 临时
类别 : HTTP Cookies
__aysid [x2]
Used to track user's interaction with embedded content.
最大存储时长: 2 天
类别 : HTTP Cookies
__ayspstp [x2]
Used to track user's interaction with embedded content.
最大存储时长: 2 天
类别 : HTTP Cookies
__aysvstp [x2]
Used to track user's interaction with embedded content.
最大存储时长 : 2 天
类别 : HTTP Cookies
__ayvstp [x2]
Used to track user's interaction with embedded content.
最大存储时长 : 临时
类别 : HTTP Cookies
__ysuid [x2]
Used to track user's interaction with embedded content.
最大存储时长: 1 年
类别 : HTTP Cookies
YK_PSL_RECORDS
Necessary for the implementation of video-content on the website.
最大存储时长: 永久
类别 : HTML 本地存储
rc::f
This cookie is used to distinguish between humans and bots.
最大存储时长 : 永久
类别 : HTML 本地存储
Uncategorized cookies are cookies that we are categorizing with individual cookie providers.
_visits
To be 待定
最大存储时长 : 1 天
类别 : HTTP Cookies
HMACCOUNT
待定
最大存储时长: 临时
类别 : HTML 本地存储
ts
待定
最大存储时长: 临时
类别 : 像素追踪器
x5sectag
待定
最大存储时长 : 1 天
类别 : HTTP Cookies
APLUS_S_CORE_1.0.1_20240910171434_7d560148
待定
最大存储时长 : 永久
类别 : HTML 本地存储
ETLCD
待定
最大存储时长: 永久
类别 : HTML 本地存储
syfhs
待定
最大存储时长: 永久
类别 : HTML 本地存储
web_behavior_time
待定
最大存储时长 : 永久
类别 : HTML 本地存储
yt/vp.vdoview
待定
最大存储时长 : 临时
类别 : 像素追踪器
HideModalFC
待定
最大存储时长:3 天
类别 : HTTP Cookies
HideModalFCE
待定
最大存储时长: 3 天
类别 : HTTP Cookies
HideModalFCI
待定
最大存储时长: 3 天
类别 : HTTP Cookies
HideModalFCILP
待定
最大存储时长: 3 天
类别 : HTTP Cookies
HideModalFRE
待定
最大存储时长 : 3 天
类别 : HTTP Cookies
HideModalFRS
待定
最大存储时长 : 3 天
类别 : HTTP Cookies
HideModalTL
待定
最大存储时长 : 3 天
类别 : HTTP Cookies
HideModalVant
待定
最大存储时长: 3 天
类别 : HTTP Cookies
IpDetection
待定
最大存储时长: 7 天
类别 : HTTP Cookies
viewCount
待定
最大存储时长: 1 年
类别 : HTTP Cookies
Cookie 是小文本文件, 网站用于使使用我们的用户体验更加高效。该网站使用 各种不同类别的 cookie。有些cookie是由第三方放置的 我们网站上显示的服务。
您可以更改或撤回您的同意 随时从我们网站的 Cookie 声明中获取。
详细了解我们是谁、如何 联系我们以及我们的隐私政策如何处理个人数据.