CN118155231A - 文档的识别方法、装置、设备、介质及产品 - Google Patents
文档的识别方法、装置、设备、介质及产品 Download PDFInfo
- Publication number
- CN118155231A CN118155231A CN202410572461.XA CN202410572461A CN118155231A CN 118155231 A CN118155231 A CN 118155231A CN 202410572461 A CN202410572461 A CN 202410572461A CN 118155231 A CN118155231 A CN 118155231A
- Authority
- CN
- China
- Prior art keywords
- image
- window
- layout
- document image
- document
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 115
- 230000007246 mechanism Effects 0.000 claims description 34
- 230000008569 process Effects 0.000 claims description 29
- 238000003860 storage Methods 0.000 claims description 27
- 238000012549 training Methods 0.000 claims description 26
- 230000000694 effects Effects 0.000 claims description 18
- 230000014509 gene expression Effects 0.000 claims description 14
- 238000012360 testing method Methods 0.000 claims description 10
- 125000004122 cyclic group Chemical group 0.000 claims description 9
- 238000013507 mapping Methods 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 8
- 238000001514 detection method Methods 0.000 claims description 6
- 238000000605 extraction Methods 0.000 abstract description 20
- 238000013473 artificial intelligence Methods 0.000 abstract description 19
- 238000005516 engineering process Methods 0.000 description 37
- 238000012545 processing Methods 0.000 description 28
- 230000000007 visual effect Effects 0.000 description 26
- 238000010586 diagram Methods 0.000 description 25
- 239000011159 matrix material Substances 0.000 description 21
- 238000010606 normalization Methods 0.000 description 21
- 230000006870 function Effects 0.000 description 17
- 230000011218 segmentation Effects 0.000 description 16
- 239000013598 vector Substances 0.000 description 15
- 238000004364 calculation method Methods 0.000 description 10
- 230000009467 reduction Effects 0.000 description 10
- 238000004422 calculation algorithm Methods 0.000 description 8
- 238000012015 optical character recognition Methods 0.000 description 8
- 238000013135 deep learning Methods 0.000 description 5
- 238000010801 machine learning Methods 0.000 description 5
- 238000013527 convolutional neural network Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 4
- 230000018109 developmental process Effects 0.000 description 4
- 210000003128 head Anatomy 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 238000011160 research Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 238000000926 separation method Methods 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 239000002699 waste material Substances 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 239000000654 additive Substances 0.000 description 2
- 230000000996 additive effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000003058 natural language processing Methods 0.000 description 2
- 238000012805 post-processing Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 235000002198 Annona diversifolia Nutrition 0.000 description 1
- 241000282842 Lama glama Species 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000003042 antagnostic effect Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
Landscapes
- Processing Or Creating Images (AREA)
Abstract
本申请公开了一种文档的识别方法、装置、设备、介质及产品,涉及人工智能领域。该方法包括获取文档图像,文档图像被第一尺寸的滑动窗口划分为多个第一窗口区域,文档图像以第二尺寸划分为多个图像块;基于多个第一窗口区域内图像块间的语义关联度,确定所述多个图像块分别对应的第一特征表示;将第一尺寸的滑动窗口在文档图像上移动预设偏移量,将文档图像重新划分为多个第二窗口区域;基于多个第二窗口区域内第一特征表示间的语义关联度,确定多个图像块分别对应的第二特征表示;基于第二特征表示识别文档图像中的版面元素,得到文档图像对应的版面识别结果。该方法实现了多尺度特征的提取,提高了对版面元素的感知能力,从而提升了泛化性能。
Description
技术领域
本申请涉及人工智能领域,特别涉及一种文档的识别方法、装置、设备、介质及产品。
背景技术
文档还原是一种图像处理技术,其目标是从图片中提取文字内容并将其重建为电子数字文档。文档中包含多种版面元素,按照合理的阅读顺序输出文档中的版面元素对于重建文档具有重要的意义。
相关技术中,常见的文档还原算法为基于版面元素生成的方法,这种方法利用深度学习技术,特别是生成式模型,如生成对抗网络(Generative Adversarial Network,GAN)或自回归语言模型(Autoregressive Language Model),该方法以端到端的方式学习并生成符合文档结构的内容。
上述以端到端的方法是由模型从文档全局进行文档识别和重建过程,即,文档图像输入至模型中,模型直接输出重建的电子数字文档。然而,上述方法在面对不同风格和结构的文档时,生成式模型在针对新的、复杂结构的文档进行重建时表现效果不佳,即模型的泛化性能较差。
发明内容
本申请实施例提供了一种文档的识别方法、装置、设备、介质及产品。所述技术方案如下所示。
一方面,提供了一种文档的识别方法,所述方法包括:
获取文档图像,所述文档图像是版面元素待识别的图像,所述版面元素用于指示所述文档图像中文档内容的内容结构,所述文档图像被第一尺寸的滑动窗口划分为多个第一窗口区域,所述文档图像以第二尺寸划分为多个图像块,所述第一尺寸大于所述第二尺寸;
基于所述多个第一窗口区域内图像块间的语义关联度,确定所述多个图像块分别对应的第一特征表示;
将所述第一尺寸的滑动窗口在所述文档图像上移动预设偏移量,将所述文档图像重新划分为多个第二窗口区域;
基于所述多个第二窗口区域内所述第一特征表示间的语义关联度,确定所述多个图像块分别对应的第二特征表示;
基于所述第二特征表示识别所述文档图像中的所述版面元素,得到所述文档图像对应的版面识别结果,所述版面识别结果用于指示所述版面元素在所述文档图像中的布局。
另一方面,提供了一种文档的识别装置,所述装置包括:
获取模块,用于获取文档图像,所述文档图像是版面元素待识别的图像,所述版面元素用于指示所述文档图像中文档内容的内容结构,所述文档图像被第一尺寸的滑动窗口划分为多个第一窗口区域,所述文档图像以第二尺寸划分为多个图像块,所述第一尺寸大于所述第二尺寸;
第一确定模块,用于基于所述多个第一窗口区域内图像块间的语义关联度,确定所述多个图像块分别对应的第一特征表示;
窗口移动模块,用于将所述第一尺寸的滑动窗口在所述文档图像上移动预设偏移量,将所述文档图像重新划分为多个第二窗口区域;
第二确定模块,用于基于所述多个第二窗口区域内所述第一特征表示间的语义关联度,确定所述多个图像块分别对应的第二特征表示;
生成模块,用于基于所述第二特征表示识别所述文档图像中的所述版面元素,得到所述文档图像对应的版面识别结果,所述版面识别结果用于指示所述版面元素在所述文档图像中的布局。
另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述本申请实施例中任一所述的文档的识别方法。
另一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如上述本申请实施例中任一所述的文档的识别方法。
另一方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例中任一所述的文档的识别方法。
本申请的提供的技术方案至少包括以下有益效果:
针对获取到的文档图像进行图像块划分,在针对文档图像的特征进行提取时,通过第一尺寸的滑动窗口将文档图像划分为多个第一窗口区域,在第一窗口区域内提取图像块之间的语义关联度,然后将第一尺寸的滑动窗口在文档图像上进行移动,从而对文档图像重新进行划分,得到多个第二窗口区域,再提取第二窗口区域内的图像块之间的语义关联度,最后根据提取到的第二特征表示识别文档图像中的版面元素,得到文档图像的版面识别结果。即,通过滑动窗口在文档图像上的偏移,使得在特征提取的过程中能够提取到跨窗口的特征,从而实现多尺度特征的提取,提高了对版面元素的感知能力,提升了泛化性能,以更好地应用于新的文档结构或复杂的文档结构中,提高版面元素识别的准确度。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一个示例性实施例提供的计算机系统的结构框图;
图2是本申请一个示例性实施例提供的文档的识别方法的流程图;
图3是本申请一个示例性实施例提供的基于窗口的Transformer子模块的结构示意图;
图4是本申请一个示例性实施例提供的滑动窗口的移动过程示意图;
图5是本申请另一个示例性实施例提供的滑动窗口的移动过程示意图;
图6是本申请一个示例性实施例提供的第二窗口区域的循环移位过程的示意图;
图7是本申请一个示例性实施例提供的基于滑动窗口的Transformer子模块的结构示意图;
图8是本申请另一个示例性实施例提供的文档的识别方法的流程图;
图9是本申请一个示例性实施例提供的视觉编码器的示意图;
图10是本申请一个示例性实施例提供的版面元素识别网络的示意图;
图11是本申请一个示例性实施例提供的网络的训练方法的流程图;
图12是本申请一个示例性实施例提供的分割过程的示意图;
图13是本申请又一个示例性实施例提供的文档的识别方法的流程图;
图14是本申请一个示例性实施例提供的文档还原应用链路的示意图;
图15是本申请一个示例性实施例提供的文档的识别装置结构框图;
图16是本申请另一个示例性实施例提供的文档的识别装置结构框图;
图17是本申请一个示例性实施例提供的服务器的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
首先,针对本申请实施例中涉及的名词进行简单介绍。
人工智能(Artificial Intelligence,AI):是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、预训练模型技术、操作/交互系统、机电一体化等。其中,预训练模型又称大模型、基础模型,经过微调后可以广泛应用于人工智能各大方向下游任务。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
机器学习(Machine Learning,ML):是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、示教学习等技术。预训练模型是深度学习的最新发展成果,融合了以上技术。
计算机视觉技术(Computer Vision,CV):计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。大模型技术为计算机视觉技术发展带来重要变革,例如,跨尺度窗口注意力转换器(Swin-transformer),视觉转换器(Vision Transformer,ViT),向量化专家混合模型(Vectorized Mixture of Experts,V-MOE),混合加性专家模型(Mixture ofAdditive Experts,MAE)等视觉领域的预训练模型经过微调(Fine Tune)可以快速、广泛适用于下游具体任务。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、光学字符识别(Optical Character Recognition,OCR)、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
ViT:是一种应用于计算机视觉任务的深度学习模型。与传统的卷积神经网络(Convolutional Neural Network,CNN)处理图像数据的方式不同,ViT将图像分割成一系列的图像块,并将每个图像块转换为向量表示。然后,这些向量通过一个转换器(Transformer)模型进行处理,以捕捉图像中的全局关系和上下文信息。ViT的核心思想是将图像转换为序列数据,使得Transformer可以应用于图像领域。ViT在一些计算机视觉任务中取得了很好的效果,例如图像分类、目标检测和图像生成等。
Swin Transformer:是一种视觉Transformer模型(即ViT),Swin Transformer可以将图像编码用于下游分类、检测、分割等任务,旨在解决传统Transformer在处理大尺度图像时的效率问题。该模型引入了跨尺度窗口注意力机制,通过将图像分割成小块并在每个小块上应用自注意力机制,以捕获不同尺度下的特征信息。相比于传统的Transformer模型,Swin Transformer在处理大尺度图像时表现出更好的性能,并且具有较低的计算成本。Swin Transformer 在多个视觉任务中都取得了优异的结果,包括图像分类、目标检测和语义分割等。
视觉文档问答(Visual Document Question Answering,VDQA):是一种结合了视觉和自然语言处理的技术,旨在回答关于视觉文档的问题。该技术利用计算机视觉和自然语言理解的方法,使得系统能够理解并回答针对文档中图像、文本或其结合部分的问题。
XY切割(XY-Cut)算法:是一种专门用于将矩形版面元素进行切割并获取元素顺序的算法。它采用递归切割的方式,将矩形区域(例如,文档页面)中的内容分割成不同的部分,并根据元素的位置和顺序进行切割。以便更好地提取文档的结构和内容。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、数字孪生、虚拟人、机器人、人工智能生成内容(Artificial IntelligenceGeneratedContent,AIGC)、对话式交互、智能医疗、智能客服、游戏AI等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
文档还原是一种图像处理技术,其目标是从图片中提取文字内容并将其重建为电子数字文档。在视觉问答(Visual Question Answering,VQA)任务中,按照合理顺序重建图片中的各个元素对于答案内容的提取可能会产生显著的影响。对于复杂文档的OCR以及大型语言模型的基于检索的自动生成(Retrieval-Augmented Generation,RAG)的性能提升,按照合理的阅读顺序重建文档具有重要的意义。而不断发展的人工智能在文档还原技术中发挥着重要的作用,通过其强大的文本理解、生成和检索能力,为文档的恢复、重建和补全提供了有效的支持和赋能。
相关技术中,在将AI应用于文档还原技术时,常见的文档还原算法有基于版面元素生成的方法,这种方法利用深度学习技术,特别是生成式模型,如生成对抗网络或自回归语言模型,以端到端的方式学习并生成符合文档结构的内容。
然而,上述常见的文档还原算法存在以下问题。
1、样本数据需求量大:生成式模型通常需要大量的标记数据用于训练,特别是当面对复杂的文档结构时。这意味着需要大规模的包含不同类型文档的数据集,涵盖多种排版风格和内容类型,以确保模型具有足够的泛化能力。
2、泛化性能较差:面对不同风格和结构的文档,生成式模型可能在泛化到新的、复杂结构的文档上遇到挑战。模型在处理不寻常或罕见的结构时可能表现不佳,需要更好的泛化性能以应对各种文档形式。
3、架构复杂:生成式模型的架构往往相对复杂,可能需要大量的计算资源和复杂的调参过程。这使得模型的设计、训练和部署变得更加复杂。大规模的生成式模型需要庞大的计算资源进行训练,包括高性能的图形处理器(Graphics Processing Unit,GPU),这增加了训练和部署的成本和复杂性。
在本申请实施例中,针对获取到的文档图像进行图像块划分,在针对文档图像的特征进行提取时,通过第一尺寸的滑动窗口将文档图像划分为多个第一窗口区域,在第一窗口区域内提取图像块之间的语义关联度,然后将第一尺寸的滑动窗口在文档图像上进行移动,从而对文档图像重新进行划分,得到多个第二窗口区域,再提取第二窗口区域内的图像块之间的语义关联度,最后根据提取到的第二特征表示识别文档图像中的版面元素,得到文档图像的版面识别结果。即,通过滑动窗口在文档图像上的偏移,使得在特征提取的过程中能够提取到跨窗口的特征,从而实现多尺度特征的提取,提高了对版面元素的感知能力,提升了泛化性能,以更好地应用于新的文档结构或复杂的文档结构中,提高版面元素识别的准确度。
图1示出了本申请一个示例性实施例提供的计算机系统的结构框图。该计算机系统100包括:终端120和服务器140。
终端120的设备类型包括:游戏主机、台式计算机、智能手机、平板电脑、电子书阅读器、动态影像专家压缩标准音频层面3播放器(Moving Picture Experts Group AudioLayer III,MP3)、动态影像专家压缩标准音频层面4(Moving Picture Experts GroupAudio Layer IV,MP4)播放器和膝上型便携计算机中的至少一种。以下实施例以设备是台式计算机来举例说明。
终端120通过无线网络或有线网络与服务器140相连。
本领域技术人员可以知晓,上述设备的数量可以更多或更少。比如上述设备可以仅为一个,或者上述设备为几十个或几百个,或者更多数量。本申请实施例对设备的数量和设备类型不加以限定。
服务器140包括一台服务器、多台服务器、云计算平台和虚拟化中心中的至少一种。服务器140用于为支持三维虚拟环境的应用程序提供后台服务。可选地,服务器140承担主要计算工作,终端120承担次要计算工作;或者,服务器140承担次要计算工作,终端120承担主要计算工作;或者,服务器140和终端120两者之间采用分布式计算架构进行协同计算。
值得注意的是,上述服务器140可以实现为物理服务器,也可以实现为云端的云服务器,其中,云技术(Cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。云技术基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。
示意性的,终端120中运行有提供文档还原功能的应用程序,用户将需要进行文档还原的文档图像上传至该应用程序,应用程序调用文档还原功能来实现将用户指示的文档图像转换为电子数字文档。示意性的,以文档还原过程实现于服务器140中为例,终端120向服务器140发送文档还原请求和文档图像,服务器140在接收到文档还原请求和文档图像后,根据文档还原请求调用文档还原模块,并将文档图像发送至文档还原模块。文档还原模块在接收到文档图像后,先通过本申请实施例提供的文档的识别方法生成文档图像对应的版面识别结果,再通过版面识别结果将生成文档图像对应的电子数字文档。文档还原模块在生成电子数字文档后,服务器140将上述电子数据文档发送至终端120。
示意性的,文档还原模块在获取文档图像后,将文档图像输入至预训练的版面元素识别网络,版面元素识别网络以第二尺寸将文档图像划分为多个图像块,并通过第一尺寸的滑动窗口将文档图像划分为多个第一窗口区域,基于多个第一窗口区域内图像块间的语义关联度,确定多个图像块分别对应的第一特征表示,将第一尺寸的滑动窗口在文档图像上移动预设偏移量,将文档图像重新划分为多个第二窗口区域,然后基于多个第二窗口区域内第一特征表示间的语义关联度,确定多个图像块分别对应的第二特征表示,基于第二特征表示识别文档图像中的版面元素,最终输出文档图像对应的版面识别结果。
值得注意的是,上述文档还原过程还可以是由终端120单独实现的,即,由终端120提供的计算资源实现文档还原功能,在此不进行具体限定。
值得注意的是,本申请实施例提供的文档的识别方法除了应用于上述文档还原场景外,生成的版面识别结果还可以应用于其它下游任务,在此不进行具体限定。例如,智能问答交互,即,基于识别的版面元素实现智能问答和交互功能时,可以基于文档的版面元素传达的结构化信息来提供问答服务或文档导航服务。又例如,优化文档图像在不同设备上的布局自适应显示,即,根据识别的版面元素实现文档的自适应显示和排版,从而提高文档的可读性和用户体验。
在一些实施例中,上述服务器140还可以实现为区块链系统中的节点。
本申请实施例提供的方案涉及人工智能的计算机视觉技术等技术,具体通过如下实施例进行说明。
请参考图2,其示出了本申请实施例提供的文档的识别方法的流程图,以该方法由服务器执行为例,该方法由版面元素识别网络实现,该方法包括如下步骤210至步骤250。
步骤210,获取文档图像,文档图像被第一尺寸的滑动窗口划分为多个第一窗口区域,文档图像以第二尺寸划分为多个图像块。
示意性的,上述文档图像是版面元素待识别的图像,版面元素用于指示文档图像中文档内容的内容结构。
可选地,文档的版面元素包括文档中的文本、图片、表格、标题、副标题、页眉、页脚、页码、列表、引用、脚注、注释、图表、图例、标签、符号、分隔线等中的至少一种。上述版面元素在文档中起到不同的功能和作用,组合在一起形成文档的结构和布局。
在本申请实施例中,文档图像以第二尺寸划分为多个图像块(Patch),每个图像块中包含一定数量的像素。可选地,上述第二尺寸可以是预设的,例如,设定第二尺寸为4*4px、16*16px;或者,也可以是根据文档图像的图像尺寸确定的,例如,设定第二尺寸为图像尺寸的1/100,当图像尺寸为1000*1000px,则第二尺寸为10*10px。
可选地,不同图像块之间互不重叠,或者,相邻图像块之间存在部分重叠区域,通常情况下可以选择使得图像块间的重叠区域尽可能小,同时步长尽可能大以减少计算量。
在一些实施例中,图像块划分(Patch Partition)的过程可以实现为:S1,确定第二尺寸;S2,定义图像块之间的重叠和步长;S3,按照确定的第二尺寸和步长划分文档图像;S4,当文档图像的图像尺寸不能完全被图像块的第二尺寸整除时,在文档图像的图像边界进行填充,使得文档图像可以被整除为整数个的图像块。
在一些实施例中,为了减少文档识别过程的数据处理量,在对文档图像进行图像块分割之前,对文档图像中的页边空白区域进行识别,其中,上述页边空白区域为文档图像中不包括文档内容和结构的页边区域,在识别到页边空白区域后,将页边空白区域剪裁掉,从而通过减小文档图像的图像尺寸来降低整体的数据处理量,减少数据处理资源的浪费。
在一些实施例中,在对文档图像进行分割之前,还可以对文档图像进行图像灰度化、图像去噪、图像增强等预处理操作。
在本申请实施例中,文档图像被第一尺寸的滑动窗口(Shifting Window)划分为多个第一窗口区域。可选地,将图像块作为滑动窗口的最小划分单位,即,单个图像块不会属于两个滑动窗口;或者,将像素点作为滑动窗口的最小划分单元。
可选地,上述第一尺寸可以是预设的,例如,设定第一尺寸为7*7patch;或者,也可以是根据文档图像确定的,在此不进行限定。
可选地,当第一尺寸是根据文档图像确定时,第一尺寸的确定方法可以实现为以下方式中的至少一种。
第一种:根据文档图像的图像尺寸确定第一尺寸,示意性的,图像尺寸为第一尺寸的指定倍数,例如,设定第一尺寸为图像尺寸的1/2,当图像尺寸为256*256px时,第一尺寸为128*128px,即文档图像被第一尺寸的滑动窗口划分为四个矩形区域。
第二种:根据文档图像下游的识别任务的任务类型确定第一尺寸。由于不同的识别任务对应的识别目标尺寸不同,其需求的滑动窗口的尺寸不同。示意性的,获取文档图像对应的识别需求类型,其中,识别需求类型包括文档内容识别、文档结构识别、文档类别识别;当识别需求类型为文档内容识别时,将第一尺寸设置为第一值;当识别需求类型为文档结构识别时,将第一尺寸设置为第二值;当识别需求类型为文档类别识别时,将第一尺寸设置为第三值;其中,第一值小于第二值,第二值小于第三值。即,由于内容识别需求更精细的特征,因此需要尺寸的较小的滑动窗口来识别更细节的特征,而结构识别相对于内容识别,其对应的识别精细度需求较低,因此可以采用尺寸较大的滑动窗口来识别,而类别识别相对于前两者而言,其对应的识别精细度需求更低,因此可以采用尺寸最大的滑动窗口来识别。
示意性的,上述第一尺寸大于第二尺寸。值得注意的是,当第一尺寸和第二尺寸为预设的尺寸大小时,其对应的预设值为根据具体任务需求经过实验测试评估确定的值。
步骤220,基于多个第一窗口区域内图像块间的语义关联度,确定多个图像块分别对应的第一特征表示。
示意性的,在文档图像被第一尺寸的滑动窗口划分为多个第一窗口区域后,针对每个第一窗口区域,对其区域内的图像块间的语义关联度进行特征提取,从而得到区域内各图像块分别对应的第一特征表示。
示意性的,对图像块进行特征提取,即,提取文档图像中多个图像块分别对应的图像块特征表示(token)。其中,上述特征提取的过程指示的是将文档图像中的图像块转换为一种能够被处理的向量表示形式(即图像块特征表示),以便输入到下游模型中进行处理。
可选地,上述特征提取过程可以通过以下方式中的至少一种实现。
第一种:特征提取器,即,使用预训练的卷积神经网络或其他图像特征提取器来提取每个图像块的特征向量。
第二种:线性投影,即,将每个图像块中的像素展平为一个向量,并通过一个线性投影层将其映射为固定维度的特征向量。
第三种:局部自注意力,即,将每个图像块作为自注意力模型的输入,通过自注意力机制来生成其表示特征向量。
在一些实施例中,基于多头注意力机制来提取第一窗口区域中图像块之间的语义关联度。示意性的,基于多头注意力机制确定第一窗口区域内图像块对应的第一注意力表示,将所述多个图像块分别对应的第一注意力表示进行归一化,得到第一归一化特征表示,通过多层感知器(Multilayer Perceptron,MLP)对第一归一化特征表示进行特征映射,得到第一特征表示。
在一些实施例中,上述基于多头注意力机制进行特征提取的过程由版面元素识别网络中基于窗口的Transformer子模块实现。示意性的,图像块对应的图像块特征表示被输入基于窗口的Transformer子模块中,由基于窗口的Transformer子模块进行语义相似度的提取,从而输出图像块对应的第一特征表示。
示意性的,基于多有注意力机制的特征提取过程实现为:确定第一窗口区域内第i个图像块对应的第i图像块特征表示和第j个图像块对应的第j图像块特征表示之间的图像块相似度;针对第一窗口区域内的第i个图像块,将第一窗口区域内与第i个图像块对应的图像块相似度作为权重,对第一窗口区域内的图像块的图像块特征表示进行加权求和,得到第i个图像块对应的第一注意力表示;其中,i和j为正整数。
示意性的,上述基于窗口的Transformer子模块中包括基于窗口的多头注意力(Windows-Multi-Head Self-Attention,W-MSA)单元,该W-MSA单元用于实现多头注意力机制,是典型的多头自注意力结构,而每个头(head)中又是典型的自注意力(Self-Attention)机制,如公式一所示,具体来说,在每个head中,对每个输入的图像块特征表示,计算该图像块特征表示的查询向量Q、关键字K和特征向量Value,然后将该图像块特征表示的Q与第一窗口区域内所有图像块特征表示的K计算关联性权重,最后对第一窗口区域内所有图像块特征表示Value加权求和得到该图像块对应的新的特征向量,即上述第一注意力表示。该机制通过两两计算第一窗口区域内图像块之间的关联度,能更好地提取图像块的上下文语义和小范围内的细节化特征信息。
公式一:MutiHead(Q,K,V)=Concat(head1,head2,…,headn)W0
Where headi=Attention(QWi Q,KWi K,VWi V)
其中,W0、Wi Q、Wi K和Wi V为可学习的网络参数,Concat()为合并函数,Attention()为基于向量相似度的注意力机制的核函数。
在一个示例中,如图3所示,其示出了本申请一个示例性实施例提供的基于窗口的Transformer子模块300的结构示意图。在基于窗口的Transformer子模块300中包括第一层归一化单元301、W-MSA单元302、第二层归一化单元303以及MLP单元304。
其中,第一层归一化单元301用于对输入的图像块特征表示进行层归一化(LayerNormalization,LN),即,对输入的图像块每个特征维度的图像块特征表示进行层归一化,然后对归一化后的特征进行缩放和平移,将缩放和平移后的归一化特征作为第一层归一化单元301的输出。W-MSA单元302用于对第一层归一化单元301输出的归一化特征通过基于窗口的多头注意力机制对图像块间的上下文语义关联度进行提取,从而输出第一注意力表示。第二层归一化单元303用于对输入的第一注意力表示进行层归一化得到第一归一化特征表示。MLP单元304用于对第二层归一化单元303输出的第一归一化特征表示进行特征映射,最终得到基于窗口的Transformer子模块300输出的第一特征表示。
在本申请实施例中,基于窗口的Transformer将输入的文档图像分割成固定大小的第一窗口区域,并在每个第一窗口区域内执行自注意力操作,这种窗口化的自注意力机制减少了每个自注意力操作中需要考虑的像素数量,从而降低了文档图像的特征提取过程中的计算复杂度和内存消耗。同时,窗口化的自注意力机制使得基于窗口的Transformer在处理大尺寸的文档图像时具有良好的可扩展性,即,因为每个自注意力操作仅需要考虑窗口区域内的像素,而不需要考虑整个图像。
步骤230,将第一尺寸的滑动窗口在文档图像上移动预设偏移量,将文档图像重新划分为多个第二窗口区域。
在本申请实施例中,上述第一尺寸的滑动窗口是可以在文档图像上进行移动的窗口,预设偏移量即为第一尺寸的滑动窗口的移动步长,其中,第一尺寸的滑动窗口在进行移动时,最小移动单位可以实现为图像块。
可选地,上述预设偏移量可以是一个预设值,或者,上述预设偏移量可以是根据预设偏移确定方式确定的值。
可选地,上述预设偏移确定方式可以实现为以下方式中的至少一种。
第一种:根据滑动窗口的第一尺寸确定预设偏移量。示意性的,第一尺寸和预设偏移量之间存在倍数关系,在一个示例中,当第一尺寸为N时,预设偏移量为N/2向下取整,值得注意的是,上述第一尺寸和预设偏移量之间的倍数关系仅为示例性说明,两者之前也可以实现为其它倍数关系。
第二种:根据文档图像下游的识别任务的任务类型确定预设偏移量。由于不同的识别任务对应的识别精细度不同,其需求的预设偏移量不同。滑动窗口的预设偏移量越大,由于窗口区域之间的重叠部分减少了,因此采样率越低,提取到的细节特征越少,同时还能减少噪音对特征提取的影响,使得提取的特征更加稳定和可靠,在牺牲特征的准确性的情况下降低计算成本;反之,滑动窗口的预设偏移量越小,窗口区域之间的重叠部分更多,采样率越高,提取到的细节特征越多,同时模型复杂度越高,但能保证特征的准确度。示意性的,获取文档图像对应的识别需求类型,其中,识别需求类型包括文档内容识别、文档结构识别、文档类别识别;当识别需求类型为文档内容识别时,将预设偏移量设置为第四值;当识别需求类型为文档结构识别时,将预设偏移量设置为第五值;当识别需求类型为文档类别识别时,将预设偏移量设置为第六值;其中,第四值小于第五值,第五值小于第六值。即,由于内容识别需求更精细的特征,因此需要预设偏移量的较小的步长来识别更细节的特征,而结构识别相对于内容识别,其对应的识别精细度需求较低,因此可以采用预设偏移量较大的步长来识别,而类别识别相对于前两者而言,其对应的识别精细度需求更低,因此可以采用预设偏移量最大的步长来识别,从而实现根据识别任务的任务类型匹配对应合适的步长,减少计算资源的浪费。
可选地,上述预设偏移量可以是滑动窗口在一个方向上进行移动的偏移量,在一个示例中,如图4所示,其示出了本申请一个示例性实施例提供的滑动窗口的移动过程示意图,第一尺寸的滑动窗口401将文档图像400划分为多个第一窗口区域410,将第一尺寸的滑动窗口401在文档图像400上横向移动预设偏移量402,从而将文档图像400重新划分为多个第二窗口区域420。
可选地,上述预设偏移量可以是滑动窗口在多个方向上进行移动的偏移量。示意性的,在文档图像对应的第一方向上以q个图像块为步长移动所述第一尺寸的滑动窗口,在文档图像对应的第二方向上以p个图像块为步长移动第一尺寸的滑动窗口,确定多个第二窗口区域,其中,q和p为正整数。
在一个示例中,如图5所示,其示出了本申请一个示例性实施例提供的滑动窗口的移动过程示意图,第一尺寸的滑动窗口501将文档图像500划分为多个第一窗口区域510,将第一尺寸的滑动窗口501在文档图像500上横向移动预设偏移量502,并在纵向移动预设偏移量502,从而将文档图像500重新划分为多个第二窗口区域520。
可选地,当第一尺寸的滑动窗口在多个方向上进行移动时,其在不同方向上的偏移量可以是同一预设偏移量,也可以是不同的预设偏移量。
在本申请实施例中,第一尺寸的滑动窗口在多个方向上进行偏移,能够扩大网络模型的感受野,使其能够覆盖更大范围的图像区域,助于网络模型更好地理解文档图像的全局结构和上下文信息,从而提升对版面元素的识别准确度,同时,多方向上的偏移能够在增加感受野的同时,减少窗口的移动次数。
步骤240,基于多个第二窗口区域内第一特征表示间的语义关联度,确定多个图像块分别对应的第二特征表示。
示意性的,在文档图像被第一尺寸的滑动窗口重新划分为多个第二窗口区域后,针对每个第二窗口区域,对其区域内的图像块间的语义关联度进行特征提取,从而得到区域内各图像块分别对应的第二特征表示。
在一些实施例中,基于多头注意力机制来提取第二窗口区域中图像块之间的语义关联度。基于多头注意力机制确定第二窗口区域内第一特征表示对应的第二注意力表示,将多个图像块分别对应的第二注意力表示进行归一化,得到第二归一化特征表示,通过多层感知器对第二归一化特征表示进行特征映射,得到第二特征表示。
在一些实施例中,上述基于多头注意力机制进行特征提取的过程由版面元素识别网络中基于滑动窗口的Transformer子模块实现。示意性的,图像块对应的图像块特征表示被输入基于滑动窗口的Transformer子模块中,由基于滑动窗口的Transformer子模块进行语义相似度的提取,从而输出图像块对应的第二特征表示。
在本申请实施例中,基于滑动窗口的Transformer将输入的文档图像分割成多个的第二窗口区域,并在每个第二窗口区域内执行自注意力操作,由于滑动窗口产生偏移,因此在第二窗口区域内进行特征提取时能够提取到跨第一窗口区域的特征,从而使网络模型能够更好地捕获全局信息。
在一些实施例中,当滑动窗口在文档图像移动后,重新划分得到的第二窗口区域的数量增多,且存在第二窗口区域对应的区域大小不一的情况,因此无法做到直接计算自注意力,可选地,可以通过以下处理方式中的至少一种来实现对窗口区域的调整,从而保证区域内自注意力的计算。
第一种:对第二窗口区域进行填充。即,将尺寸不一的多个第二窗口区域分别进行补零填充,从而得到尺寸相同的多个第三窗口区域,在每个第三窗口区域内基于多头注意力机制进行特征提取。
示意性的,文档图像被第一尺寸的滑动窗口划分为m个第二窗口区域,m为正整数,确定m个第二窗口区域中区域尺寸最大的第二窗口区域,对其它第二窗口区域进行补零填充至与上述区域尺寸最大的第二窗口区域相同大小,得到m个第三窗口区域。
第二种:对第二窗口区域进行循环移位(Cyclic Shift)。即,将部分第二窗口区域进行循环移位,使得部分第二窗口区域能够拼接得到第三窗口区域,在每个第三窗口区域内基于多头注意力机制进行特征提取。
示意性的,文档图像被第一尺寸的滑动窗口划分为n个第一窗口区域,n为正整数,确定第一尺寸的滑动窗口移动后划分文档图像得到的第二窗口区域的数量为m,m为正整数且m>n,对第二窗口区域内的图像块进行循环移位和拼接,得到n个第三窗口区域。即,对第二窗口区域进行循环移位使得第一窗口区域的数量和第三窗口区域的数量相同,保证窗口区域数量固定,从而使得模型的计算复杂度固定。
在一个示例中,如图6所示,其示出了本申请一个示例性实施例提供的第二窗口区域的循环移位过程的示意图。文档图像被划分为9个第二窗口区域,其中9个第二窗口区域包括A区域611、B区域612、C区域613、D区域614、E区域615、F区域616、G区域617、H区域618、I区域619,其中,A区域611、C区域613、G区域617循环移位至右下角,与I区域619组合成一个第三窗口区域,B区域612循环移位至下方,与H区域618组合成一个第三窗口区域,D区域614循环移位至右方,与F区域616组合成一个第三窗口区域,即,在部分第二窗口区域进行循环移位后,组成4个第三窗口区域,4个第三窗口区域的区域尺寸相同。
通过循环移位的方式来组成第三窗口区域能够在保证区域内自注意力的计算的同时,使窗口区域数量固定,即,第三窗口区域的数量和第一窗口区域的数量相同,使得网络模型的计算复杂度固定,从而在不增加计算量的情况下实现对位置偏置后的窗口区域进行自注意力计算。
示意性的,基于多头注意力机制确定第三窗口区域内第一特征表示对应的第二注意力表示。确定第三窗口区域内第o个图像块对应的第一特征表示和第v个图像块对应的第一特征表示之间的特征相似度;针对第三窗口区域内的第o个图像块,将第三窗口区域内与第o个图像块对应的特征相似度作为权重,对第三窗口区域内的图像块的第一特征表示进行加权求和,得到第o个图像块对应的第二注意力表示,其中,o和v为正整数。
当第三窗口区域为经过循环移位的第二窗口区域时,对于存在第二窗口区域拼接的第三窗口区域,由于这类第三窗口区域中参与拼接的第二窗口区域来自文档图像的不同位置,第二窗口区域之间可能不存在关联性,因此不需要进行自注意力的计算。
在本申请实施例中,通过获取与拼接情况匹配的掩码数据来实现自注意力的计算过程。示意性的,获取第u个第三窗口区域对应的窗口组合信息,u为正整数,u≤n,基于窗口组合信息获取第u个第三窗口区域对应的掩码数据,基于多头注意力机制确定第三窗口区域内第一特征表示之间的特征相似度,将特征相似度和掩码数据相加,得到相似度权重,根据相似度权重对第三窗口区域内的图像块的第一特征表示进行加权求和,得到第二注意力表示。
上述窗口组合信息用于指示第二窗口区域在循环移位后的拼接情况。例如,文档图像被划分为A区域、B区域、C区域、D区域、E区域、F区域、G区域、H区域、I区域九个区域,在经过循环移位后,A区域、C区域、G区域和I区域组成第三窗口区域A。则第三窗口区域A的窗口组合信息中包括A区域、C区域、G区域和I区域分别对应的区域标识;B区域和H区域组成第三窗口区域B,则第三窗口区域B的窗口组合信息中包括B区域和H区域分别对应的区域标识;D区域和F区域组成第三窗口区域C,则第三窗口区域C的窗口组合信息中包括D区域和F区域分别对应的区域标识;E区域为第三窗口区域D,则第三窗口区域D的窗口组合信息中包括E区域的区域标识。
上述掩码数据是与第三窗口区域的特征相似度矩阵相同大小的掩码矩阵,掩码矩阵中包括第一矩阵元素和第二矩阵元素,其中,第一矩阵元素用于保留特征相似度矩阵中的可用元素,第二矩阵元素用于滤除特征相似度矩阵中的不可用元素。在一个示例中,以B区域和H区域组成的第三窗口区域B为例,B区域中的图像块对应的第一特征表示为向量b,H区域中的图像块对应的第一特征表示为向量h,由于B区域和H区域在文档图像中并不相邻,因此两者之间不应计算自注意力,第三窗口区域B对应的特征矩阵为{b,b,b,…,h,h,h},在第三窗口区域B内做自注意力时,查询向量Q和关键字K均为{b,b,b,…,h,h,h},得到的特征相似度矩阵为A,即为KT·Q={bb,bb,…,bh,bh,…,hb,hb,…,hh,hh},掩码矩阵的矩阵大小与特征相似度矩阵相同,其中,掩码矩阵中为与{bh}和{hb}对应的元素区域中为第二矩阵元素,其它区域为第一矩阵元素。在一个示例中,第一矩阵元素可以是0,第二矩阵元素可以是一个很小的负数(例如,-100),当特征相似度矩阵与掩码矩阵相加后,需要做自注意力的区域的元素与0相加保留,不需要做自注意力的区域的元素与-100相加变成一个负的小数,再通过激活函数(softmax)归零。
通过掩码数据进行信息屏蔽,将不需要进行自注意力计算的部分通过掩码数据过滤掉,从而使得网络模型能够选择性地处理需要进行第三窗口区域内自注意力计算的区域,避免增加网络模型的计算复杂度。
示意性的,上述基于滑动窗口的Transformer子模块中包括基于滑动窗口的多头注意力(Shifting Windows Multi-Head Self-Attention,SW-MSA)单元,该SW-MSA单元用于实现多头注意力机制。
在一个示例中,如图7所示,其示出了本申请一个示例性实施例提供的基于滑动窗口的Transformer子模块700的结构示意图。在基于滑动窗口的Transformer子模块700中包括第三层归一化单元701、SW-MSA单元702、第四层归一化单元703以及MLP单元704。
其中,第三层归一化单元701用于对输入的第一特征表示进行层归一化,即,对输入的图像块每个特征维度的第一特征表示进行层归一化,然后对归一化后的特征进行缩放和平移,将缩放和平移后的归一化特征作为第三层归一化单元701的输出。SW-MSA单元702用于对第三层归一化单元701输出的归一化特征通过基于滑动窗口的多头注意力机制对第一特征表示间的上下文语义关联度进行提取,从而输出第二注意力表示。第四层归一化单元703用于对输入的第二注意力表示进行层归一化得到第二归一化特征表示。MLP单元704用于对第四层归一化单元703输出的第二归一化特征表示进行特征映射,最终得到基于滑动窗口的Transformer子模块700输出的第二特征表示。
步骤250,基于第二特征表示识别文档图像中的版面元素,得到文档图像对应的版面识别结果。
在本申请实施例中,上述版面识别结果用于指示版面元素在文档图像中的布局。
在一些实施例中,将上述第二特征表示输入至预训练的语言解码器中,进行特征解码,输出得到上述版面识别结果。
可选地,上述预训练的语言解码器可以实现为Transformer、双向编码器表示的转换器(Bidirectional Encoder Representations from Transformers,BERT)、利用掩码自回归语言学习模型(Language Learning with a Masked Autoregressive Model,LLaMA)、千问模型(Qwen)等语言模型,在此不进行具体限定。
在一些实施例中,上述预训练的语言解码器的参数可以使用公开预训练的权重。
可选地,上述版面识别结果包括版面元素的元素类别、元素位置和排列顺序中的至少一种。其中,元素类别用于指示版面元素的类别,例如,文本、图片、表格、标题、副标题、页眉、页脚、页码、列表、引用、脚注、注释、图表、图例、标签、符号、分隔线等;元素位置用于指示版面元素在文档图像中所在的像素位置;排列顺序用于指示版面元素在文档图像中的顺序。
综上所述,针对获取到的文档图像进行图像块划分,在针对文档图像的特征进行提取时,通过第一尺寸的滑动窗口将文档图像划分为多个第一窗口区域,在第一窗口区域内提取图像块之间的语义关联度,然后将第一尺寸的滑动窗口在文档图像上进行移动,从而对文档图像重新进行划分,得到多个第二窗口区域,再提取第二窗口区域内的图像块之间的语义关联度,最后根据提取到的第二特征表示识别文档图像中的版面元素,得到文档图像的版面识别结果。即,通过滑动窗口在文档图像上的偏移,使得在特征提取的过程中能够提取到跨窗口的特征,从而实现多尺度特征的提取,提高了对版面元素的感知能力,提升了泛化性能,以更好地应用于新的文档结构或复杂的文档结构中,提高版面元素识别的准确度。
请参考图8,其示出了本申请一个示例性实施例提供的文档的识别方法的流程图,在本申请实施例中,版面识别结果的识别过程由预训练的版面元素识别网络实现,该预训练的版面元素识别网络中包括预训练的视觉编码器和语言解码器,该方法包括如下步骤810~步骤830。
步骤810,获取文档图像。
示意性的,上述文档图像是版面元素待识别的图像,版面元素用于指示文档图像中文档内容的内容结构。
可选地,文档的版面元素包括文档中的文本、图片、表格、标题、副标题、页眉、页脚、页码、列表、引用、脚注、注释、图表、图例、标签、符号、分隔线等中的至少一种。上述版面元素在文档中起到不同的功能和作用,组合在一起形成文档的结构和布局。
可选地,上述文档图像可以是由终端发送的,或者,上述文档图像可以是从服务器的数据库中读取的。
步骤820,将文档图像输入至预训练的视觉编码器中,由视觉编码器提取文档图像中图像块之间的语义关联度,得到多个第二特征表示。
在本申请实施例中,上述预训练的视觉编码器由Swin Transformers实现。在一个示例中,请参考图9,其示出了本申请一个示例性实施例提供的视觉编码器900的示意图,该视觉编码器900为Swin Transformers架构的编码器。视觉编码器900包括图像块分割模块910、第一处理阶段模块920和多个第二处理阶段模块930。
上述图像块分割模块910用于对输入的文档图像进行图像块分割,从而得到多个第二尺寸的图像块。
第一处理阶段模块920中包括嵌入层子模块921和两个Swin Transformer子模块922。其中,上述嵌入层子模块921用于实现线性嵌入(Linear embedding),即,将图像块对应的向量表示的维度变为下游两个Swin Transformer子模块922能够接受的值。上述两个Swin Transformer子模块922即为基于窗口的Transformer子模块和基于滑动窗口的Transformer子模块,基于窗口的Transformer子模块中包括W-MSA单元,基于滑动窗口的Transformer子模块中包括SW-MSA单元。
第二处理阶段模块930中包括合并子模块931和至少两个Swin Transformer子模块932。其中,上述合并子模块931用于实现图像块合并(Patch Merging),用于获取图像块的多尺寸特征信息,从而构建层级式Transformer。至少两个Swin Transformer子模块932即为基于窗口的Transformer子模块和基于滑动窗口的Transformer子模块的交替使用,基于窗口的Transformer子模块中包括W-MSA单元,基于滑动窗口的Transformer子模块中包括SW-MSA单元,并且,每个第二处理阶段模块930中Transformer的数量是2的整数倍。
在一些实施例中,预训练的视觉编码器根据输入的文档图像输出第二特征表示(embeddings)集合。
步骤830,将多个第二特征表示输入至预训练的语言解码器中,由预训练的语言解码器根据第二特征表示指示的像素块之间的语义关联关系对版面元素的布局进行预测,得到版面识别结果。
在本申请实施例中,上述版面识别结果用于指示版面元素在文档图像中的布局。
在本申请实施例中,将上述第二特征表示输入至预训练的语言解码器中,进行特征解码,输出得到上述版面识别结果。
可选地,上述预训练的语言解码器可以实现为Transformer、双向编码器表示的转换器、利用掩码自回归语言学习模型、千问模型等语言模型,在此不进行具体限定。
在一些实施例中,上述预训练的语言解码器的参数可以使用公开预训练的权重。
在一些实施例中,当上述预训练的语言解码器是使用公开预训练的权重时,即,预训练的语言解码器是可以直接获取的,则可以通过输入预设指示内容(prompt)来控制预训练的语言解码器根据输入的第二特征表示集合输出版面识别结果,其中,预设指示内容用于请求输出所述文档图像对应的版面元素。示意性的,获取预设指示内容,将预设指示内容和第二特征表示输入至预训练的语言解码器中,得到版面识别结果。
在一个示例中,上述预设指示内容可以实现为字符串“请按顺序输出图像内的版面元素”,该预设指示内容是语言解码器在训练时预设好的内容。
即,通过预设指示内容直接调用使用公开权重的语言模型,使得针对网络模型的训练只需要调整视觉编码器部分的权重,减少了训练资源的浪费,提高了网络模型的开发效率,且由于公开权重的语言模型是在在大规模语料库上训练得到的,其具有很强的泛化能力。
在一些实施例中,由于上述预训练的语言模型是公开权重,其倾向于生成符合语法规则的文本,即,由于语言模型经过了大量的数据训练,并且在训练中通常会强调语法正确性,因此,预训练的语言解码器输出的解码结果数据为文本(token),针对输出的文本可以通过正则表达式(Regular Expression,regex)进行检索匹配,从而得到版面识别结果。
示意性的,将预设指示内容和第二特征表示输入至预训练的语言解码器中,得到解码器的解码结果数据,获取预设的正则表达式,正则表达式用于匹配生成符合预设句法规则的字符串,使用正则表达式对解码结果数据进行检索匹配,得到版面识别结果。
其中,正则表达式是一种用于描述字符串模式的强大工具,它提供了一种灵活和高效的方法来搜索、匹配和处理语言解码器输出的文本。正则表达式由普通字符和特殊字符组成,普通字符可以是字母、数字或其他字符,它们表示自身的含义,特殊字符具有特殊的含义,用于描述一些模式或者匹配规则。
通过正则表达式来提取预训练的语言解码器的输出时,能够实现自动化的结果输出,提取语言解码器输出的文本中的关键字符串,并保证最终输出的版面识别结果的数据结构能够符合下游任务的需求,能够提升下游任务的处理效率。
请参考图10,其示出了本申请一个示例性实施例提供的版面元素识别网络1000的示意图,在版面元素识别网络1000中包括预训练的视觉编码器1010和预训练的语言解码器1020。文档图像1001输入至视觉编码器1010后,由视觉编码器1010输出第二特征表示集合,语言解码器1020接收视觉编码器1010输出的第二特征表示集合,以及预设指示内容1002,最终输出版面识别结果1003。
综上所述,针对获取到的文档图像进行图像块划分,在针对文档图像的特征进行提取时,通过第一尺寸的滑动窗口将文档图像划分为多个第一窗口区域,在第一窗口区域内提取图像块之间的语义关联度,然后将第一尺寸的滑动窗口在文档图像上进行移动,从而对文档图像重新进行划分,得到多个第二窗口区域,再提取第二窗口区域内的图像块之间的语义关联度,最后根据提取到的第二特征表示识别文档图像中的版面元素,得到文档图像的版面识别结果。即,通过滑动窗口在文档图像上的偏移,使得在特征提取的过程中能够提取到跨窗口的特征,从而实现多尺度特征的提取,提高了对版面元素的感知能力,提升了泛化性能,以更好地应用于新的文档结构或复杂的文档结构中,提高版面元素识别的准确度。
请参考图11,其示出了本申请一个示例性实施例提供的网络的训练方法的流程图,在本申请实施例中,版面元素识别网络由待训练识别网络训练得到,待训练识别网络的训练过程包括如下步骤1110~步骤1130。
步骤1110,获取样本文档图像和样本文档图像对应的样本序列数据集。
其中,样本序列数据集用于指示样本文档图像对应的样本版面元素序列,样本版面元素序列指示了样本文档图像中版面元素的分布顺序。
在一些实施例中,对样本文档图像对应的样本序列数据集可以是通过人工标注获取的;或者,上述样本序列数据集可以是根据现有的版面元素数据生成的。
在一些实施例中,可以使用启发式算法XY-Cut来对现有的版面元素数据进行元素排序。XY-Cut是一种专门用于将矩形版面元素进行切割并获取元素顺序的算法,它采用递归切割的方式,将矩形区域(例如,文档页面)中的内容分割成不同的部分,并根据元素的位置和顺序进行切割,以便更好地提取文档的结构和内容。
示意性的,获取样本文档图像的版面元素数据,版面元素检测数据中包括对样本文档图像中的版面元素的标注数据;将样本文档图像转换为二值图像,其中,二值图像中包括有效区域和页面空白区域;对二值图像作水平投影,根据水平投影效果之间的间隙分割二值图像,得到多个第一子图,第一子图对应的子图区域有区域上边界和区域下边界;对多个第一子图分别作垂直投影,根据垂直投影效果之间的间隙分割第一子图,得到多个第二子图,第二子图对应的子图区域有区域左边界和区域右边界;基于第一子图对应的区域上边界和区域下边界,以及第二子图对应的区域左边界和所述区域右边界,确定至少一个矩形框;在矩形框内根据水平投影效果和垂直投影效果进行循环分割;在分割至所述水平投影效果下不存在新的子图,或者垂直投影效果下的子图数小于等于2的情况下,根据子图的划分顺序对版面元素数据中版面元素进行排序,得到样本序列数据集。
具体的,分割流程包括如下步骤。
1、输入是二值化后的样本文档图像,每一个像素的值为0或者255,其中,样本文档图像的二值图像中包括有效区域和页面空白区域,在一个示例中,约定255表示有效区域,0表示页面空白区域。
2、对二值图像作水平投影,根据间隙分割子图,确定子图区域的上下边界。
3、对每一个子图作垂直投影,根据间隙进一步分割子图,确定子图的左右边界。
4、根据前两步得到一次分割后的矩形框。
5、对该矩形框内的子图,重复2-4过程,直到水平投影分割没有得到新的子图,或者垂直投影分割得到子图数<=2。
在一个示例中,请参考图12,其示出了本申请一个示例性实施例提供的分割过程的示意图,该分割过程由树状图表示,即,输入的样本文档图像的二值图像为根节点1210,对二值图像进行第一次水平投影确定上下边界后得到[1]节点1211和[2-5]节点1212,[2-5]节点1212在进行第一次垂直投影确定左右边界后,得到[2]节点1213和[3-5]节点1214,[3-5]节点1214进行第二次水平投影确定上下边界后得到[3]节点1215和[4-5]节点1216,[4-5]节点1216在进行第二次垂直投影确定左右边界后,得到[4]节点1217和[5]节点1218。
其对样本文档图像的分割结果1220中,[1]区域1221与[1]节点1211对应,[2]区域1222与[2]节点1213对应,[3]区域1223与[3]节点1215对应,[4]区域1224与[4]节点1217对应,[5]区域1225与[5]节点1218对应。
通过XY-Cut算法能够对标注后的样本文档图像实现自动化分割,快速生成用于训练模型的样本数据,提升模型的训练效率。同时,将标注数据进行更细化的分割,能够对样本数据进行数据增强,增加数据集的多样性,以改善模型的泛化能力。
步骤1120,将样本文档图像输入至待训练识别网络,生成版面测试结果。
在本申请实施例中,待训练识别网络中包括待训练的视觉编码器和语言解码器。在一些实施例中,当上述语言解码器的模型参数为公开权重时,可选地,在对待训练识别网络的训练过程中语言解码器的模型参数固定,或者,在对待训练识别网络的训练过程中在公开权重的基础上对语言解码器的模型参数进行微调。
示意性的,样本文档图像输入至待训练的视觉编码器中,由待训练的视觉编码器提取样本文档图像中图像块之间的语义关联度,得到多个预测特征表示,将多个预测特征表示输入至语言解码器中,由语言解码器根据预测特征表示指示的像素块之间的语义关联关系对版面元素的布局进行预测,得到版面测试结果。
步骤1130,基于版面测试结果和样本序列数据集之间的差异,迭代训练待训练识别网络,得到版面元素识别网络。
示意性的,在确定版面测试结果和样本序列数据集之间的差异时,可以通过指定损失函数实现,即,将版面测试结果和样本序列数据集输入至指定损失函数,确定出该次预测过程对应的损失值,根据上述损失值对待训练识别网络的模型参数进行迭代调整,从而得到版面元素识别网络。
可选地,上述指定损失函数可以实现为交叉熵损失函数、均方误差损失函数、对数损失函数等中的至少一种,在此不进行限定。
综上所述,针对获取到的文档图像进行图像块划分,在针对文档图像的特征进行提取时,通过第一尺寸的滑动窗口将文档图像划分为多个第一窗口区域,在第一窗口区域内提取图像块之间的语义关联度,然后将第一尺寸的滑动窗口在文档图像上进行移动,从而对文档图像重新进行划分,得到多个第二窗口区域,再提取第二窗口区域内的图像块之间的语义关联度,最后根据提取到的第二特征表示识别文档图像中的版面元素,得到文档图像的版面识别结果。即,通过滑动窗口在文档图像上的偏移,使得在特征提取的过程中能够提取到跨窗口的特征,从而实现多尺度特征的提取,提高了对版面元素的感知能力,提升了泛化性能,以更好地应用于新的文档结构或复杂的文档结构中,提高版面元素识别的准确度。
在本申请实施例中,通过样本文档图像和样本序列数据集实现对待训练识别网络的训练,使得Swin Transformer能够应用于文档图像的版面元素识别中,提升文档图像的版面元素的识别准确度。
请参考图13,其示出了本申请一个示例性实施例提供的文档的识别方法的流程图,在本申请实施例中,通过视觉编码器和语言解码器输出的版面识别结果用于文档还原,该方法包括如下步骤1310~步骤1330,其中,上述步骤1110~步骤1130执行于步骤250或步骤830之后。
步骤1310,根据版面识别结果指示的元素位置,将文档图像划分为多个版面元素分别对应的版面区域。
在本申请实施例中,上述版面识别结果包括版面元素的元素类别、元素位置和排列顺序。其中,元素类别用于指示版面元素的类别,例如,文本、图片、表格、标题、副标题、页眉、页脚、页码、列表、引用、脚注、注释、图表、图例、标签、符号、分隔线等;元素位置用于指示版面元素在文档图像中所在的像素位置;排列顺序用于指示版面元素在文档图像中的顺序。
在一些实施例中,上述元素位置包括版面元素对应的至少两个像素点,其中,上述至少两个像素点为用于确定版面元素在文档图像中位置的像素点,在一个示例中,上述至少两个像素点包括版面元素对应的版面区域的对角像素点。即,根据上述至少两个像素点能够确定版面元素的版面区域对应的对角点,根据对角点确定的矩形区域即为版面元素的版面区域。
步骤1320,基于版面识别结果指示的元素类别,识别版面区域内的内容,生成版面区域对应的内容数据。
在确定版面元素对应的版面区域后,根据版面识别结果指示的该版面区域对应的元素类别进行内容识别。示意性的,根据元素类别获取对应的内容识别模型,将版面区域对应的区域图像输入至内容识别模型进行内容识别,输出得到版面区域对应的内容数据。
在一个示例中,当元素类别为文本类别时,将版面区域对应的区域图像输入至文本识别模型进行内容识别,输出得到版面区域对应的文本数据。在另一示例中,当元素类别为文本类别时,对区域图像进行OCR识别,输出对应的文本数据。
当元素类别为标题、副标题、列表、引用、脚注、注释、标签时,由于上述类别均由字符串构成,因此识别过程可以与文本类别相同,即,通过文本识别模型或OCR识别进行内容提取,从而得到对应的内容数据。
当元素类别为表格类别时,将版面区域对应的区域图像输入至表格识别模型进行内容识别,输出得到版面区域对应的表格数据,其中,表格识别模型根据区域图像中表格内文本格式和语法进行特征识别,例如表头、行标题、列标题等。
当元素类别为页眉、页脚、页码时,由于上述类别均由字符串构成,因此识别过程可以与文本类别相同;或者,由于页眉、页脚、页码具有固定的格式,因此可以在进行OCR识别提取字符串后,使用模板匹配来生成对应的内容数据。
当元素类别为图片、图表、图例时,将版面区域对应的区域图像输入至图像识别模型进行内容识别,输出得到版面区域对应的图像数据。可选地,由于电子文档中也可直接插入图像,因此,上述图像数据还可以是直接对面板区域进行裁剪得到的图像数据。
可选地,当图像数据为直接裁剪得到的数据时,还可以对图像数据进行增强处理,例如,亮度调整、直方图均衡化、颜色增强、图像去噪、尺寸调整、超分辨率重建、风格转换等中的至少一种。
当元素类别为符号、分隔线时,对区域图像进行OCR识别,将识别到的字符串进行规则匹配,生成对应的内容数据。例如,分割线常见实现为“----”或“****”,因此,通过预设的规则匹配即可生成对应的内容数据。
步骤1330,基于版面识别结果指示的排列顺序,对多个版面元素分别对应的内容数据进行排序,生成电子文档。
在本申请实施例中,版面识别结果在指示版面元素的元素位置和元素类别时,通过元素标识来区分各个版面元素,元素标识之间的输出顺序即指示了版面元素对应的排列顺序。
在确定版面元素对应的内容数据以及排列顺序后,即可在空白文档中对内容数据进行排序,从而得到文档图像对应的电子文档,其中,版面元素在电子文档中的布局和在文档图像中的布局相同。
请参考图14,其示出了本申请一个示例性实施例提供的文档还原应用链路的示意图,该文档还原应用链路包括文档图像1401、版面元素顺序输出1402、文档解析子能力1403和文档还原后处理1404。其中,上述版面元素顺序输出1402即为通过Swin Transformers进行特征提取,得到第二特征表示后,由语言解码器解码输出的版面识别结果。文档解析子能力1403即为步骤1310~步骤1330实现的文档还原过程。文档还原后处理1404用于指示还原后的电子文档的应用,可选地,上述文档还原后的电子文档可以用于存档备份、文档编辑、文档搜索检索、文档共享和协作等,在此不进行限定。
综上所述,针对获取到的文档图像进行图像块划分,在针对文档图像的特征进行提取时,通过第一尺寸的滑动窗口将文档图像划分为多个第一窗口区域,在第一窗口区域内提取图像块之间的语义关联度,然后将第一尺寸的滑动窗口在文档图像上进行移动,从而对文档图像重新进行划分,得到多个第二窗口区域,再提取第二窗口区域内的图像块之间的语义关联度,最后根据提取到的第二特征表示识别文档图像中的版面元素,得到文档图像的版面识别结果。即,通过滑动窗口在文档图像上的偏移,使得在特征提取的过程中能够提取到跨窗口的特征,从而实现多尺度特征的提取,提高了对版面元素的感知能力,提升了泛化性能,以更好地应用于新的文档结构或复杂的文档结构中,提高版面元素识别的准确度。
需要进行说明的是,本申请在收集用户的相关数据之前以及在收集用户的相关数据的过程中,都可以显示提示界面、弹窗或输出语音提示信息,该提示界面、弹窗或语音提示信息用于提示用户当前正在搜集其相关数据,使得本申请仅仅在获取到用户对该提示界面或者弹窗发出的确认操作后,才开始执行获取用户相关数据的相关步骤,否则(即未获取到用户对该提示界面或者弹窗发出的确认操作时),结束获取用户相关数据的相关步骤,即不获取用户的相关数据。换句话说,本申请所采集的所有用户数据都是在用户同意并授权的情况下进行采集的,且相关用户数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
请参考图15,其示出了本申请一个示例性的实施例提供的文档的识别装置结构框图,该装置包括如下模块。
获取模块1510,用于获取文档图像,所述文档图像是版面元素待识别的图像,所述版面元素用于指示所述文档图像中文档内容的内容结构,所述文档图像被第一尺寸的滑动窗口划分为多个第一窗口区域,所述文档图像以第二尺寸划分为多个图像块,所述第一尺寸大于所述第二尺寸;
第一确定模块1520,用于基于所述多个第一窗口区域内图像块间的语义关联度,确定所述多个图像块分别对应的第一特征表示;
窗口移动模块1530,用于将所述第一尺寸的滑动窗口在所述文档图像上移动预设偏移量,将所述文档图像重新划分为多个第二窗口区域;
第二确定模块1540,用于基于所述多个第二窗口区域内所述第一特征表示间的语义关联度,确定所述多个图像块分别对应的第二特征表示;
生成模块1550,用于基于所述第二特征表示识别所述文档图像中的所述版面元素,得到所述文档图像对应的版面识别结果,所述版面识别结果用于指示所述版面元素在所述文档图像中的布局。
在一些可选的实施例中,所述第一确定模块1520,还用于基于多头注意力机制确定所述第一窗口区域内图像块对应的第一注意力表示;将所述多个图像块分别对应的所述第一注意力表示进行归一化,得到第一归一化特征表示;通过多层感知器对所述第一归一化特征表示进行特征映射,得到所述第一特征表示。
在一些可选的实施例中,所述第一确定模块1520,还用于提取所述文档图像中所述多个图像块分别对应的图像块特征表示;确定所述第一窗口区域内第i个图像块对应的第i图像块特征表示和第j个图像块对应的第j图像块特征表示之间的图像块相似度,i和j为正整数;针对所述第一窗口区域内的所述第i个图像块,将所述第一窗口区域内与所述第i个图像块对应的所述图像块相似度作为权重,对所述第一窗口区域内的图像块的图像块特征表示进行加权求和,得到所述第i个图像块对应的第一注意力表示。
在一些可选的实施例中,所述第二确定模块1540,还用于基于多头注意力机制确定所述第二窗口区域内所述第一特征表示对应的第二注意力表示;将所述多个图像块分别对应的所述第二注意力表示进行归一化,得到第二归一化特征表示;通过多层感知器对所述第二归一化特征表示进行特征映射,得到所述第二特征表示。
在一些可选的实施例中,所述文档图像被所述第一尺寸的滑动窗口划分为n个所述第一窗口区域,n为正整数;
如图16所示,所述第二确定模块1540,还包括:
第一确定单元1541,用于确定所述第一尺寸的滑动窗口移动后划分所述文档图像得到的所述第二窗口区域的数量为m,m为正整数且m>n;
移动单元1542,用于对所述第二窗口区域内的图像块进行循环移位和拼接,得到n个第三窗口区域;
第二确定单元1543,用于基于多头注意力机制确定所述第三窗口区域内所述第一特征表示对应的所述第二注意力表示。
在一些可选的实施例中,所述第二确定模块1540,还包括:
第一获取单元1544,用于获取第u个第三窗口区域对应的窗口组合信息,所述窗口组合信息用于指示所述第二窗口区域在循环移位后的拼接情况,u为正整数,u≤n;基于所述窗口组合信息获取所述第u个第三窗口区域对应的掩码数据;
所述第二确定单元1543,用于基于多头注意力机制确定所述第三窗口区域内所述第一特征表示之间的特征相似度;将所述特征相似度和所述掩码数据相加,得到相似度权重;根据所述相似度权重对所述第三窗口区域内的图像块的第一特征表示进行加权求和,得到第二注意力表示。
在一些可选的实施例中,所述窗口移动模块1530,还用于在所述文档图像对应的第一方向上以q个图像块为步长移动所述第一尺寸的滑动窗口;在所述文档图像对应的第二方向上以p个图像块为步长移动所述第一尺寸的滑动窗口,确定所述多个第二窗口区域;其中,q和p为正整数。
在一些可选的实施例中,所述获取模块1510,还用于获取预设指示内容,所述预设指示内容用于请求输出所述文档图像对应的版面元素;
所述生成模块1550,还用于将所述预设指示内容和所述第二特征表示输入至预训练的语言解码器中,得到所述版面识别结果。
在一些可选的实施例中,所述生成模块1550,还包括:
解码单元1551,用于将所述预设指示内容和所述第二特征表示输入至预训练的语言解码器中,得到所述解码器的解码结果数据;
第二获取单元1552,用于获取预设的正则表达式,所述正则表达式用于匹配生成符合预设句法规则的字符串;
匹配单元1553,用于使用所述正则表达式对所述解码结果数据进行检索匹配,得到所述版面识别结果。
在一些可选的实施例中,所述装置还包括:还原模块1560,所述还原模块1560还包括:
划分单元1561,用于根据所述版面识别结果指示的所述元素位置,将所述文档图像划分为多个版面元素分别对应的版面区域;
识别单元1562,用于基于所述版面识别结果指示的所述元素类别,识别所述版面区域内的内容,生成所述版面区域对应的内容数据;
生成单元1563,用于基于所述版面识别结果指示的所述排列顺序,对所述多个版面元素分别对应的所述内容数据进行排序,生成所述电子文档。
在一些可选的实施例中,所述装置还包括:训练模块1570,所述训练模块1570还包括:
第三获取单元1571,用于获取样本文档图像和所述样本文档图像对应的样本序列数据集,所述样本序列数据集用于指示所述样本文档图像对应的样本版面元素序列;
预测单元1572,用于将所述样本文档图像输入至所述待训练识别网络,生成版面测试结果;
迭代单元1573,用于基于所述版面测试结果和所述样本序列数据集之间的差异,迭代训练所述待训练识别网络,得到所述版面元素识别网络。
在一些可选的实施例中,所述第三获取单元1571,还用于获取所述样本文档图像的版面元素数据,所述版面元素检测数据中包括对所述样本文档图像中的所述版面元素的标注数据;
转换单元1574,用于将所述样本文档图像转换为二值图像,其中,所述二值图像中包括有效区域和页面空白区域;
分割单元1575,用于对所述二值图像作水平投影,根据水平投影效果之间的间隙分割所述二值图像,得到多个第一子图,所述第一子图对应的子图区域有区域上边界和区域下边界;对所述多个第一子图分别作垂直投影,根据垂直投影效果之间的间隙分割所述第一子图,得到多个第二子图,所述第二子图对应的子图区域有区域左边界和区域右边界;基于所述第一子图对应的所述区域上边界和所述区域下边界,以及所述第二子图对应的所述区域左边界和所述区域右边界,确定至少一个矩形框;在所述矩形框内根据所述水平投影效果和所述垂直投影效果进行循环分割;
排序单元1576,用于在分割至所述水平投影效果下不存在新的子图,或者所述垂直投影效果下的子图数小于等于2的情况下,根据所述子图的划分顺序对所述版面元素数据中所述版面元素进行排序,得到所述样本序列数据集。
需要说明的是:上述实施例提供的文档的识别装置,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的文档的识别装置与文档的识别方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图17示出了本申请一个示例性实施例提供的服务器的结构示意图。具体来讲包括如下结构。
服务器1700包括中央处理单元(Central Processing Unit,CPU)1701、包括随机存取存储器(Random Access Memory,RAM)1702和只读存储器(Read Only Memory,ROM)1703的系统存储器1704,以及连接系统存储器1704和中央处理单元1701的系统总线1705。服务器1700还包括用于存储操作系统1713、应用程序1714和其他程序模块1715的大容量存储设备1706。
大容量存储设备1706通过连接到系统总线1705的大容量存储控制器(未示出)连接到中央处理单元1701。大容量存储设备1706及其相关联的计算机可读介质为服务器1700提供非易失性存储。也就是说,大容量存储设备1706可以包括诸如硬盘或者紧凑型光盘只读存储器(Compact Disc Read Only Memory,CD-ROM)驱动器之类的计算机可读介质(未示出)。
不失一般性,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、带电可擦可编程只读存储器(Electrically Erasable Programmable Read Only Memory,EEPROM)、闪存或其他固态存储器技术,CD-ROM、数字通用光盘(Digital Versatile Disc,DVD)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知计算机存储介质不局限于上述几种。上述的系统存储器1704和大容量存储设备1706可以统称为存储器。
根据本申请的各种实施例,服务器1700还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即服务器1700可以通过连接在系统总线1705上的网络接口单元1711连接到网络1712,或者说,也可以使用网络接口单元1711来连接到其他类型的网络或远程计算机系统(未示出)。
上述存储器还包括一个或者一个以上的程序,一个或者一个以上程序存储于存储器中,被配置由CPU执行。
本申请的实施例还提供了一种计算机设备,该计算机设备包括处理器和存储器,该存储器中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现上述各方法实施例提供的文档的识别方法。可选地,该计算机设备可以是终端,也可以是服务器。
本申请的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行,以实现上述各方法实施例提供的文档的识别方法。
本申请的实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例中任一所述的文档的识别方法。
可选地,该计算机可读存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、固态硬盘(SSD,Solid State Drives)或光盘等。其中,随机存取记忆体可以包括电阻式随机存取记忆体(ReRAM,Resistance RandomAccess Memory)和动态随机存取存储器(DRAM,Dynamic Random Access Memory)。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (16)
1.一种文档的识别方法,其特征在于,所述方法包括:
获取文档图像,所述文档图像是版面元素待识别的图像,所述版面元素用于指示所述文档图像中文档内容的内容结构,所述文档图像被第一尺寸的滑动窗口划分为多个第一窗口区域,所述文档图像以第二尺寸划分为多个图像块,所述第一尺寸大于所述第二尺寸;
基于所述多个第一窗口区域内图像块间的语义关联度,确定所述多个图像块分别对应的第一特征表示;
将所述第一尺寸的滑动窗口在所述文档图像上移动预设偏移量,将所述文档图像重新划分为多个第二窗口区域;
基于所述多个第二窗口区域内所述第一特征表示间的语义关联度,确定所述多个图像块分别对应的第二特征表示;
基于所述第二特征表示识别所述文档图像中的所述版面元素,得到所述文档图像对应的版面识别结果,所述版面识别结果用于指示所述版面元素在所述文档图像中的布局。
2.根据权利要求1所述的方法,其特征在于,所述基于所述多个第一窗口区域内图像块间的语义关联度,确定所述多个图像块分别对应的第一特征表示,包括:
基于多头注意力机制确定所述第一窗口区域内图像块对应的第一注意力表示;
将所述多个图像块分别对应的所述第一注意力表示进行归一化,得到第一归一化特征表示;
通过多层感知器对所述第一归一化特征表示进行特征映射,得到所述第一特征表示。
3.根据权利要求2所述的方法,其特征在于,所述基于多头注意力机制确定所述第一窗口区域内图像块对应的第一注意力表示,包括:
提取所述文档图像中所述多个图像块分别对应的图像块特征表示;
确定所述第一窗口区域内第i个图像块对应的第i图像块特征表示和第j个图像块对应的第j图像块特征表示之间的图像块相似度,i和j为正整数;
针对所述第一窗口区域内的所述第i个图像块,将所述第一窗口区域内与所述第i个图像块对应的所述图像块相似度作为权重,对所述第一窗口区域内的图像块的图像块特征表示进行加权求和,得到所述第i个图像块对应的第一注意力表示。
4.根据权利要求1至3任一所述的方法,其特征在于,所述基于所述多个第二窗口区域内所述第一特征表示间的语义关联度,确定所述多个图像块分别对应的第二特征表示,包括:
基于多头注意力机制确定所述第二窗口区域内所述第一特征表示对应的第二注意力表示;
将所述多个图像块分别对应的所述第二注意力表示进行归一化,得到第二归一化特征表示;
通过多层感知器对所述第二归一化特征表示进行特征映射,得到所述第二特征表示。
5.根据权利要求4所述的方法,其特征在于,所述文档图像被所述第一尺寸的滑动窗口划分为n个所述第一窗口区域,n为正整数;
所述基于多头注意力机制确定所述第二窗口区域内所述第一特征表示对应的第二注意力表示,包括:
确定所述第一尺寸的滑动窗口移动后划分所述文档图像得到的所述第二窗口区域的数量为m,m为正整数且m>n;
对所述第二窗口区域内的图像块进行循环移位和拼接,得到n个第三窗口区域;
基于多头注意力机制确定所述第三窗口区域内所述第一特征表示对应的所述第二注意力表示。
6.根据权利要求5所述的方法,其特征在于,所述基于多头注意力机制确定所述第三窗口区域内所述第一特征表示对应的所述第二注意力表示,包括:
获取第u个第三窗口区域对应的窗口组合信息,所述窗口组合信息用于指示所述第二窗口区域在循环移位后的拼接情况,u为正整数,u≤n;
基于所述窗口组合信息获取所述第u个第三窗口区域对应的掩码数据;
基于多头注意力机制确定所述第三窗口区域内所述第一特征表示之间的特征相似度;
将所述特征相似度和所述掩码数据相加,得到相似度权重;
根据所述相似度权重对所述第三窗口区域内的图像块的第一特征表示进行加权求和,得到第二注意力表示。
7.根据权利要求1至3任一所述的方法,其特征在于,所述将所述第一尺寸的滑动窗口在所述文档图像上移动预设偏移量,将所述文档图像重新划分为多个第二窗口区域,包括:
在所述文档图像对应的第一方向上以q个图像块为步长移动所述第一尺寸的滑动窗口;
在所述文档图像对应的第二方向上以p个图像块为步长移动所述第一尺寸的滑动窗口,确定所述多个第二窗口区域;
其中,q和p为正整数。
8.根据权利要求1至3任一所述的方法,其特征在于,所述基于所述第二特征表示识别所述文档图像中的所述版面元素,得到所述文档图像对应的版面识别结果,包括:
获取预设指示内容,所述预设指示内容用于请求输出所述文档图像对应的版面元素;
将所述预设指示内容和所述第二特征表示输入至预训练的语言解码器中,得到所述版面识别结果。
9.根据权利要求8所述的方法,其特征在于,所述将所述预设指示内容和所述第二特征表示输入至预训练的语言解码器中,得到所述版面识别结果,包括:
将所述预设指示内容和所述第二特征表示输入至预训练的语言解码器中,得到所述解码器的解码结果数据;
获取预设的正则表达式,所述正则表达式用于匹配生成符合预设句法规则的字符串;
使用所述正则表达式对所述解码结果数据进行检索匹配,得到所述版面识别结果。
10.根据权利要求1至3任一所述的方法,其特征在于,所述版面识别结果包括所述版面元素的元素类别、元素位置和排列顺序,所述基于所述第二特征表示识别所述文档图像中的所述版面元素,得到所述文档图像对应的版面识别结果之后,还包括:
根据所述版面识别结果指示的所述元素位置,将所述文档图像划分为多个版面元素分别对应的版面区域;
基于所述版面识别结果指示的所述元素类别,识别所述版面区域内的内容,生成所述版面区域对应的内容数据;
基于所述版面识别结果指示的所述排列顺序,对所述多个版面元素分别对应的所述内容数据进行排序,生成电子文档。
11.根据权利要求1至3任一所述的方法,其特征在于,所述方法由预训练的版面元素识别网络实现,所述版面元素识别网络由待训练识别网络训练得到,所述待训练识别网络的训练过程包括:
获取样本文档图像和所述样本文档图像对应的样本序列数据集,所述样本序列数据集用于指示所述样本文档图像对应的样本版面元素序列;
将所述样本文档图像输入至所述待训练识别网络,生成版面测试结果;
基于所述版面测试结果和所述样本序列数据集之间的差异,迭代训练所述待训练识别网络,得到所述版面元素识别网络。
12.根据权利要求11所述的方法,其特征在于,所述获取所述样本文档图像对应的样本序列数据集,包括:
获取所述样本文档图像的版面元素数据,所述版面元素检测数据中包括对所述样本文档图像中的所述版面元素的标注数据;
将所述样本文档图像转换为二值图像,其中,所述二值图像中包括有效区域和页面空白区域;
对所述二值图像作水平投影,根据水平投影效果之间的间隙分割所述二值图像,得到多个第一子图,所述第一子图对应的子图区域有区域上边界和区域下边界;
对所述多个第一子图分别作垂直投影,根据垂直投影效果之间的间隙分割所述第一子图,得到多个第二子图,所述第二子图对应的子图区域有区域左边界和区域右边界;
基于所述第一子图对应的所述区域上边界和所述区域下边界,以及所述第二子图对应的所述区域左边界和所述区域右边界,确定至少一个矩形框;
在所述矩形框内根据所述水平投影效果和所述垂直投影效果进行循环分割;
在分割至所述水平投影效果下不存在新的子图,或者所述垂直投影效果下的子图数小于等于2的情况下,根据所述子图的划分顺序对所述版面元素数据中所述版面元素进行排序,得到所述样本序列数据集。
13.一种文档的识别装置,其特征在于,所述装置包括:
获取模块,用于获取文档图像,所述文档图像是版面元素待识别的图像,所述版面元素用于指示所述文档图像中文档内容的内容结构,所述文档图像被第一尺寸的滑动窗口划分为多个第一窗口区域,所述文档图像以第二尺寸划分为多个图像块,所述第一尺寸大于所述第二尺寸;
第一确定模块,用于基于所述多个第一窗口区域内图像块间的语义关联度,确定所述多个图像块分别对应的第一特征表示;
窗口移动模块,用于将所述第一尺寸的滑动窗口在所述文档图像上移动预设偏移量,将所述文档图像重新划分为多个第二窗口区域;
第二确定模块,用于基于所述多个第二窗口区域内所述第一特征表示间的语义关联度,确定所述多个图像块分别对应的第二特征表示;
生成模块,用于基于所述第二特征表示识别所述文档图像中的所述版面元素,得到所述文档图像对应的版面识别结果,所述版面识别结果用于指示所述版面元素在所述文档图像中的布局。
14.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一段程序,所述至少一段程序由所述处理器加载并执行以实现如权利要求1至12任一所述的文档的识别方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条程序代码,所述程序代码由处理器加载并执行以实现如权利要求1至12任一所述的文档的识别方法。
16.一种计算机程序产品,其特征在于,包括计算机程序或指令,所述计算机程序或指令被处理器执行时实现如权利要求1至12任一所述的文档的识别方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410572461.XA CN118155231B (zh) | 2024-05-10 | 文档的识别方法、装置、设备、介质及产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410572461.XA CN118155231B (zh) | 2024-05-10 | 文档的识别方法、装置、设备、介质及产品 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN118155231A true CN118155231A (zh) | 2024-06-07 |
CN118155231B CN118155231B (zh) | 2024-07-05 |
Family
ID=
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210110527A1 (en) * | 2019-08-30 | 2021-04-15 | Sas Institute Inc. | Techniques for extracting contextually structured data from document images |
CN113420669A (zh) * | 2021-06-24 | 2021-09-21 | 武汉工程大学 | 基于多尺度训练和级联检测的文档版面分析方法和系统 |
CN114627484A (zh) * | 2022-02-25 | 2022-06-14 | 华南理工大学 | 一种复杂多场景文档分割方法、系统、装置及介质 |
CN115331247A (zh) * | 2022-08-24 | 2022-11-11 | 北京百度网讯科技有限公司 | 文档结构识别方法、装置、电子设备及可读存储介质 |
CN116824609A (zh) * | 2023-06-29 | 2023-09-29 | 北京百度网讯科技有限公司 | 文档版式检测方法、装置和电子设备 |
CN117095396A (zh) * | 2023-06-30 | 2023-11-21 | 中山大学 | 基于特征增强的文档图像篡改检测与定位方法及装置 |
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210110527A1 (en) * | 2019-08-30 | 2021-04-15 | Sas Institute Inc. | Techniques for extracting contextually structured data from document images |
CN113420669A (zh) * | 2021-06-24 | 2021-09-21 | 武汉工程大学 | 基于多尺度训练和级联检测的文档版面分析方法和系统 |
CN114627484A (zh) * | 2022-02-25 | 2022-06-14 | 华南理工大学 | 一种复杂多场景文档分割方法、系统、装置及介质 |
CN115331247A (zh) * | 2022-08-24 | 2022-11-11 | 北京百度网讯科技有限公司 | 文档结构识别方法、装置、电子设备及可读存储介质 |
CN116824609A (zh) * | 2023-06-29 | 2023-09-29 | 北京百度网讯科技有限公司 | 文档版式检测方法、装置和电子设备 |
CN117095396A (zh) * | 2023-06-30 | 2023-11-21 | 中山大学 | 基于特征增强的文档图像篡改检测与定位方法及装置 |
Non-Patent Citations (1)
Title |
---|
李翌昕;邹亚君;马尽文;: "基于特征提取和机器学习的文档区块图像分类算法", 信号处理, no. 05, 25 May 2019 (2019-05-25) * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111898696B (zh) | 伪标签及标签预测模型的生成方法、装置、介质及设备 | |
CN110795543B (zh) | 基于深度学习的非结构化数据抽取方法、装置及存储介质 | |
US10754851B2 (en) | Question answering for data visualizations | |
CN111160343B (zh) | 一种基于Self-Attention的离线数学公式符号识别方法 | |
CN111324696B (zh) | 实体抽取方法、实体抽取模型的训练方法、装置及设备 | |
CN111738169B (zh) | 一种基于端对端网络模型的手写公式识别方法 | |
CN111582409A (zh) | 图像标签分类网络的训练方法、图像标签分类方法及设备 | |
CN114596566B (zh) | 文本识别方法及相关装置 | |
CN110781672A (zh) | 基于机器智能的题库生产方法及系统 | |
CN113283336A (zh) | 一种文本识别方法与系统 | |
CN114612902A (zh) | 图像语义分割方法、装置、设备、存储介质及程序产品 | |
Peng et al. | Image to LaTeX with graph neural network for mathematical formula recognition | |
CN115131698A (zh) | 视频属性确定方法、装置、设备及存储介质 | |
CN112085120A (zh) | 多媒体数据的处理方法、装置、电子设备及存储介质 | |
CN113807218B (zh) | 版面分析方法、装置、计算机设备和存储介质 | |
CN113240033B (zh) | 一种基于场景图高阶语义结构的视觉关系检测方法及装置 | |
CN114519397A (zh) | 基于对比学习的实体链接模型的训练方法、装置、设备 | |
Vafaie et al. | Handwritten and printed text identification in historical archival documents | |
CN117173730A (zh) | 一种基于多模态信息的文档图像智能分析及处理方法 | |
CN118155231B (zh) | 文档的识别方法、装置、设备、介质及产品 | |
CN111768214A (zh) | 产品属性的预测方法、系统、设备和存储介质 | |
CN118155231A (zh) | 文档的识别方法、装置、设备、介质及产品 | |
CN115130461A (zh) | 一种文本匹配方法、装置、电子设备及存储介质 | |
Le et al. | An Attention-Based Encoder–Decoder for Recognizing Japanese Historical Documents | |
CN117173731B (zh) | 一种模型训练的方法、图像处理的方法以及相关装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant |