CN116524528A - 用于分离被检测为一个文本边界框的单词的文本检测算法 - Google Patents
用于分离被检测为一个文本边界框的单词的文本检测算法 Download PDFInfo
- Publication number
- CN116524528A CN116524528A CN202310044682.5A CN202310044682A CN116524528A CN 116524528 A CN116524528 A CN 116524528A CN 202310044682 A CN202310044682 A CN 202310044682A CN 116524528 A CN116524528 A CN 116524528A
- Authority
- CN
- China
- Prior art keywords
- text
- bounding box
- text detection
- computer
- image
- 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.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 80
- 238000000034 method Methods 0.000 claims abstract description 30
- 238000004590 computer program Methods 0.000 claims abstract description 8
- 238000012549 training Methods 0.000 claims abstract description 7
- 238000003860 storage Methods 0.000 claims description 39
- 238000009826 distribution Methods 0.000 claims description 11
- 230000015654 memory Effects 0.000 claims description 11
- 238000013528 artificial neural network Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 16
- 238000012545 processing Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 11
- 239000010410 layer Substances 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 5
- 238000007726 management method Methods 0.000 description 5
- 238000012015 optical character recognition Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000000835 fiber Substances 0.000 description 3
- 230000006855 networking Effects 0.000 description 3
- 230000008520 organization Effects 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 229910052802 copper Inorganic materials 0.000 description 2
- 239000010949 copper Substances 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 230000009172 bursting Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000002346 layers by function Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000013439 planning Methods 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/14—Image acquisition
- G06V30/148—Segmentation of character regions
- G06V30/153—Segmentation of character regions using recognition of characters or words
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/40—Document-oriented image-based pattern recognition
- G06V30/41—Analysis of document content
- G06V30/414—Extracting the geometrical structure, e.g. layout tree; Block segmentation, e.g. bounding boxes for graphics or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4046—Scaling of whole images or parts thereof, e.g. expanding or contracting using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/14—Image acquisition
- G06V30/148—Segmentation of character regions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/18—Extraction of features or characteristics of the image
- G06V30/1801—Detecting partial patterns, e.g. edges or contours, or configurations, e.g. loops, corners, strokes or intersections
- G06V30/18076—Detecting partial patterns, e.g. edges or contours, or configurations, e.g. loops, corners, strokes or intersections by analysing connectivity, e.g. edge linking, connected component analysis or slices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/19—Recognition using electronic means
- G06V30/191—Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
- G06V30/19173—Classification techniques
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- Medical Informatics (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Character Input (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及一种用于分离被检测为一个文本边界框的单词的文本检测算法。提供了一种用于文本检测的方法、计算机系统和计算机程序产品。本发明可以包括训练文本检测模型。本发明可以包括使用经训练的文本检测模型对输入图像执行文本检测。本发明可以包括确定使用输入图像生成的多个边界框中的至少一个边界框是否具有高于阈值的纵横比。本发明可以包括基于确定使用输入图像生成的多个边界框中的至少一个边界框具有高于阈值的纵横比,放大该至少一个边界框内的任何文本,并且使用经训练的文本检测模型对新图像执行文本检测。本发明可包括将输出图像进行输出。
Description
技术领域
本发明总体上涉及计算领域,并且更具体地,涉及文本检测算法。
背景技术
以小字体大小描绘的文本行可能由文本检测算法仅使用一个文本边界框来检测,其中文本检测模型不能将一行文本与另一行文本相分离。这可导致丢失的单词(例如,出现在文本行中的单词被文本检测算法忽略)。
发明内容
本发明的实施例公开了一种用于文本检测的方法、计算机系统和计算机程序产品。本发明可以包括训练文本检测模型。本发明可以包括使用经训练的文本检测模型对输入图像执行文本检测。本发明可以包括确定使用所述输入图像生成的多个边界框中的至少一个边界框是否具有高于阈值的纵横比。本发明可以包括基于确定使用所述输入图像生成的所述多个边界框中的至少一个边界框具有高于所述阈值的所述纵横比,放大所述至少一个边界框内的任何文本,并且使用经训练的文本检测模型对新图像执行文本检测。本发明可包括将输出图像进行输出。
附图说明
从以下将结合附图阅读的对本发明的示例性实施例的详细描述中,本发明的这些和其他目的、特征和优点将变得显而易见。附图的各种特征不是按比例的,因为图示是为了清楚以便于本领域技术人员结合具体实施方式理解本发明。在附图中:
图1示出了根据至少一个实施例的联网计算机环境;
图2是示出根据至少一个实施例的用于文本检测的过程的操作流程图;
图3A和3B分别是根据至少一个实施例的原始图像和新的图像的示例性图示;
图4是根据至少一个实施例的在图1中所描绘的计算机和服务器的内部和外部组件的框图;
图5是根据本公开的实施例的包括图1中描绘的计算机系统的示例性云计算环境的框图;以及
图6是根据本公开的实施例的图5的示例性云计算环境的功能层的框图。
具体实施方式
在此披露了所要求保护的结构和方法的详细实施例;然而,应当理解,所披露的实施例仅仅是对可以以不同的形式体现的所要求保护的结构和方法的说明。然而,本发明可以以许多不同的形式体现并且不应被解释为限于在此阐述的示例性实施例。相反,提供这些示例性实施方式是为了使本公开全面且完整,并且将本发明的范围充分传达给本领域技术人员。在说明书中,可省略众所周知的特征和技术的细节以避免不必要地使所呈现的实施例模糊。
本发明可以是任何可能的技术细节集成级别的系统、方法和/或计算机程序产品。计算机程序产品可以包括其上具有计算机可读程序指令的计算机可读存储介质(或多个介质),这些计算机可读程序指令用于使处理器执行本发明的各方面。
计算机可读存储介质可以是能够保留和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质可以是例如但不限于电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或前述的任何合适的组合。计算机可读存储介质的更具体示例的非穷举列表包括以下:便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式光盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、诸如上面记录有指令的打孔卡或凹槽中的凸起结构的机械编码装置,以及上述的任何适当组合。如本文所使用的计算机可读存储介质不应被解释为暂时性信号本身,诸如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如,通过光纤线缆的光脉冲)、或通过导线传输的电信号。
本文描述的计算机可读程序指令可以从计算机可读存储介质下载到相应的计算/处理设备,或者经由网络(例如因特网、局域网、广域网和/或无线网络)下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光传输光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或网络接口从网络接收计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。
用于执行本发明的操作的计算机可读程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、用于集成电路的配置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括诸如Smalltalk、C++等的面向对象的编程语言、以及诸如“C”编程语言的传统过程编程语言或类似编程语言。计算机可读程序指令可以完全在用户的计算机上执行,部分在用户的计算机上执行,作为独立的软件包执行,部分在用户的计算机上并且部分在远程计算机上执行,或者完全在远程计算机或服务器上执行。在后一种情况下,远程计算机可以通过任何类型的网络连接到用户的计算机,包括局域网(LAN)或广域网(WAN),或者可以连接到外部计算机(例如,使用因特网服务提供商通过因特网)。在一些实施例中,为了执行本发明的各方面,包括例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA)的电子电路可以通过利用计算机可读程序指令的状态信息来执行计算机可读程序指令以使电子电路个性化。
在此参考根据本发明的实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明的各方面。将理解,流程图和/或框图的每个框以及流程图和/或框图中的框的组合可以由计算机可读程序指令来实现。
这些计算机可读程序指令可以被提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器以产生机器,使得经由计算机或其他可编程数据处理装置的处理器执行的指令创建用于实现流程图和/或框图的一个或多个框中指定的功能/动作的装置。这些计算机可读程序指令还可以存储在计算机可读存储介质中,其可以引导计算机、可编程数据处理装置和/或其他设备以特定方式工作,使得其中存储有指令的计算机可读存储介质包括制品,该制品包括实现流程图和/或框图的一个或多个框中指定的功能/动作的各方面的指令。
计算机可读程序指令还可以被加载到计算机、其他可编程数据处理装置或其他设备上,以使得在计算机、其他可编程装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,使得在计算机、其他可编程装置或其他设备上执行的指令实现流程图和/或框图的一个或多个框中指定的功能/动作。
附图中的流程图和框图示出了根据本发明的不同实施例的系统、方法和计算机程序产品的可能实现方式的架构、功能和操作。在此方面,流程图或框图中的每个框可表示指令的模块、段或部分,其包括用于实现指定的逻辑功能的一个或多个可执行指令。在一些替代实现中,框中标注的功能可以不按照图中标注的顺序发生。例如,取决于所涉及的功能,连续示出的两个块实际上可以基本同时被执行,或者这些块有时可以以相反的顺序执行。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作或执行专用硬件与计算机指令的组合的专用的基于硬件的系统来实现。
以下描述的示例性实施例提供了一种用于文本检测的系统、方法和程序产品。因此,实施例能够使用以下操作改进光学字符识别的技术领域:通过首先放大被错误表征或丢失的文本并且然后再次运行文本识别软件,来对可能未被正确检测的文本执行二次检测。更具体地,本发明可以包括训练文本检测模型。本发明可以包括使用经训练的文本检测模型对输入图像执行文本检测。本发明可以包括确定使用输入图像生成的多个边界框中的至少一个边界框是否具有高于阈值的纵横比。本发明可以包括基于确定使用输入图像生成的多个边界框中的至少一个边界框具有高于阈值的纵横比,放大该至少一个边界框内的任何文本,并且使用经训练的文本检测模型对新图像执行文本检测。本发明可包括将输出图像进行输出。
如先前所述,以小字体大小描绘的文本行可能由文本检测算法仅使用一个文本边界框来检测,其中文本检测模型不能将一行文本与另一行文本相分离。这可导致丢失的单词(例如,出现在文本行中的单词被文本检测算法忽略)。
因此,除其他操作外,可以有利的是,放大被错误表征或丢失的文本并在输入图像的该部分上第二次运行文本识别软件。
根据至少一个实施例,本发明能够通过围绕每个单独的单词而不是整个文本行创建边界框来提高检测图像中的小尺寸文本的能力,使得能够不丢失单词。
根据至少一个实施例,本发明能够克服例如在使用小字体大小时出现的文本检测算法的不准确性。此算法可以在(Python和所有基于Python的商标是Python软件基金会的商标或注册商标)或任何其他高级通用编程语言中实现,因为该算法的功能不依赖于/>语言的使用。
根据至少一个实施例,光学字符识别(OCR)可以用于识别数字图像(例如,扫描的文档和/或图像)内的文本。在此开发的OCR功能可通过标记数字图像的像素而工作,这些标记可指示文本是否存在于这些像素中。边界框然后可围绕标记有文本的像素放置,以便将数字图像的这些部分转换成文本。如果系统基于对边界框大小的分析而确定在所生成的边界框内可能存在多于一个的单词,则文本可以被放大(例如,变得更大)并且分析被重复,直到确定所生成的边界框均仅包含一个单词。这一旦完成,就可以将图像转换成文本,并且可以返回文本。
参照图1,描绘了根据一个实施例的示例性联网计算机环境100。联网计算机环境100可以包括具有处理器104和数据存储设备106的计算机102,计算机102能够运行软件程序108和文本检测程序110a。联网计算机环境100还可以包括服务器112和通信网络116,服务器112能够运行可以与数据库114交互的文本检测程序110b。联网计算机环境100可以包括多个计算机102和服务器112,仅示出了其中之一。通信网络116可以包括不同类型的通信网络,诸如广域网(WAN)、局域网(LAN)、电信网络、无线网络、公共交换网络和/或卫星网络。应当理解,图1仅提供一种实现方式的图示并且不暗示关于其中可以实现不同实施例的环境的任何限制。可以基于设计和实现要求而对所描绘的环境做出许多修改。
客户端计算机102可以经由通信网络116与服务器计算机112通信。通信网络116可以包括连接,例如有线、无线通信链路,或光缆。如将参考图4讨论的,服务器计算机112可以分别包括内部组件902a和外部组件904a,客户端计算机102可以分别包括内部组件902b和外部组件904b。服务器计算机112还可以在云计算服务模型(诸如软件即服务(SaaS)、平台即服务(PaaS)或基础设施即服务(IaaS))中操作。服务器112还可以位于云计算部署模型中,诸如私有云、社区云、公共云或混合云。客户端计算机102可以是例如移动设备、电话、个人数字助理、上网本、膝上型计算机、平板计算机、台式计算机、或能够运行程序、访问网络和访问数据库114的任何类型的计算设备。根据本实施例的各种实施方式,文本检测程序110a、110b可以与数据库114交互,数据库114可以被嵌入在不同存储设备中,诸如但不限于计算机/移动设备102、联网服务器112或云存储服务。
根据本实施例,使用客户端计算机102或服务器计算机112的用户可以(分别)使用文本检测程序110a、110b来通过以下操作解决由于文本检测算法不能准确地检测输入图像中的所有单词而呈现的问题:放大被错误表征或丢失的文本,并且再次使用文本检测算法对文本的可能没有被正确检测的部分执行二次检测。下面参照图2、图3A和图3B更详细地说明文本检测方法。
现在参考图2,描绘了示出根据至少一个实施例的由文本检测程序110a和110b使用的示例性文本检测过程200的操作流程图。
在202,训练文本检测算法。文本检测算法可以利用神经网络(即,模型、深度学习模型)以通过向神经网络显示文本图像(其中每个像素可被标记为文本或不被标记为文本)来预测单词或文本行,并且该模型可以相应地被训练以针对未来图像而预测图像的每个像素是否包含文本。深度学习文本检测模型可包括但不限于WordUNet(其执行文本检测)等等。一些综合性系统可以使用一个版本的WordUNet来执行文本检测的至少一部分,但是还可以包括附加步骤,诸如通过OCR接收图像。
文本检测算法的训练可以通过使用生成器生成文本来完成,生成器被创建为生成在大小、字体和/或背景上具有可变性的随机文本,该随机文本可以被注入有附加噪声。训练还可以包括在每个单词周围创建边界框并训练神经网络,例如将图像中位于边界框内的每个像素输出为具有标签1,将图像中不在边界框内的每个像素输出为具有标签0。
边界框可以使用四个角来生成,然而,即时标记可通过用特定颜色(例如,白色)基本上替换图像中的文本检测程序110a、110b确定该处存在单词的像素来完成。为了确定字母和单词的存在,每个字符可以被高斯分布(例如,具有钟形曲线形状的正态分布)围绕,对于该模型,高斯分布可以描绘字母的中心比字母之间的空格更重要(例如,字母的中心产生更明显的分布,而字母、单词或行之间的空格不产生任何分布)。这可以指导模型学习字符在单词内的实际位置,并且不向边界框内的每个点赋予相等的权重,从而有助于模型的整体性能。
如前所述,文本检测程序110a和110b可围绕每个字符(例如,单词中的字母)的中心应用高斯分布。神经网络可以提供所得到的高斯分布(例如,包括每个字母和这些字母之间的空格的高斯分布)作为输出。使用所得到的高斯分布,文本检测程序110a和110b可以被训练以确定每个高斯分布是否指示字母存在。
一旦神经网络被训练,每当图像被输入时,基于所计算的关于图像的每个像素是否包括文本的概率,可以生成所得到的图像,该图像在模型认为存在文本的所有位置中包括标签‘白色’并且在模型认为不存在文本的所有位置中包括标签‘黑色’。该模型实质上针对图像中的每个像素而预测是否存在文本。然后,称为连通分量的第二算法可以被用于将白色区域组合成边界框。连通分量算法可以被用于将边界框放置在图像中检测到的文本周围。边界框可以从单个白色像素开始并且可以展开直到到达黑色像素(例如,连通分量算法可以使用图像的白色部分的边界来放置边界框)。
在204,执行文本检测。文本检测程序110a、110b所使用的文本可由用户上传。文本可以是文档的一部分或者是完整文档。无论上传完整文档还是文档的一部分无关紧要,因为文本检测程序110a、110b可以检测上传的任何图像中的文本。
如先前关于以上步骤202所描述的,一旦训练了模型,就可以使用WordUNet执行文本检测,意味着可以输入图像并且可以输出图像的包括文本的每个像素的概率。可应用阈值来生成所得到的具有黑色像素和白色像素的二元图像,黑色像素和白色像素表示‘是’或‘否’,该‘是’或‘否’分别指示在这些像素中是否存在文本。连通分量算法然后可以被用于将边界框放置在图像中检测到的文本的每个单词周围。
在206处,识别具有高于预定阈值(例如,Otsu阈值)的纵横比或框高度(即,边界框高度)除以框宽度(即,边界框宽度)的文本边界框。例如,如果存在非常宽的边界框,则文本检测程序110a、110b可以试图确定在该文本边界框内是否存在多于一个的单词。类似地,如果检测到行而不是单词,则纵横比可以大于单个单词的纵横比。图像可以始终具有恒定的分辨率(例如,600/800),而不管图像可如何在屏幕上调整大小,并且也可以以相同的分辨率创建边界框。图像分辨率可以帮助确定边界框是否高于预定阈值。
该确定可以基于框高度除以框宽度的比率(例如,阈值)。例如,文本行可能非常宽(例如,框宽度),但是框高度可能始终相同(例如,文本的高度)。例如,阈值可以是框高度除以框宽度的比率,该比率是针对字典中的最长单词计算的并且被乘以二。如果存在具有高于此阈值的比率的检测到的文本,则检测到的文本可能不太可能仅仅是一个单词。根据至少一个替代实施例,阈值是可以根据需要修改的。
在208处,所识别的文本边界框被放大并且被复制到新的图像。如果在206处,检测到的文本被确定为具有高于预定阈值的纵横比或框高度除以框宽度,则图像的该部分可以被放大(例如,使得更大)。对于文本的被确定为高于阈值的部分,更大的文本大小能够提高算法检测单独的单词的能力。
可通过利用标准的图像大小调整算法(例如,双线性内插)放大图像以达到文本检测可更好地工作的范围来完成放大。如前所述,在文本检测算法可能没有检测到小尺寸文本的情况下,这可能是相关的。原始图像的放大部分然后可以被复制到新的图像(例如,被以与原始输入图像相同的文件格式来创建)以再次通过文本检测算法运行。
在210处,对新的图像执行文本检测。一旦文本被放大,使用WordUNet再次执行文本检测。此处执行的文本检测可与上文关于步骤204所描述的相同,其中被检测的文本部分仅是已被放大的文本部分,如先前关于步骤208所描述的。
在212,文本检测程序110a、110b确定要使用哪些文本边界框。如果在放大图像的一部分之后,文本检测算法生成与针对原始图像生成的边界框相比更多的边界框,则文本检测程序110a、110b可以确定从经放大的图像生成的边界框是正确的边界框,并且可以包括这些边界框以及最终输出图像。这里的基本原理是在放大小边界框之后,可能存在可能不再被识别为文本并且可以在此阶段被过滤出的边界框,从而通过避免尝试转换图像的被错误表征部分来提高计算系统的速度和/或效率。
最终,文本检测程序110a、110b可以在最终输出图像中将从原始图像生成的边界框和从图像的放大部分生成的边界框两者进行组合。
现在参考图3A和图3B,根据至少一个实施例分别描绘了原始图像和新的图像的示例性图示。原始图像3A和新的图像3B所描绘的文本行已经通过不同的文本检测算法运行,其中在原始图像3A中利用的文本检测算法最密切地镜像本发明之前的现有技术。如在原始图像3A中可以看到的,每个单独的单词未被边界框包围,而是在大的边界框内检测到完整的文本行。相反,新的图像3B描绘了本发明的示意性输出,其中大多数单词被单独地检测出并且被单独的边界框所包围。这能够增加文本检测算法的效率并提高文本检测结果的质量。
可以理解,图2、3A和3B仅提供了一个实施例的说明,并且不暗示关于可以如何实现不同实施例的任何限制。可以基于设计和实现要求对所描绘的实施例进行许多修改。
图4是根据本发明的说明性实施例的在图1中描绘的计算机的内部组件和外部组件的框图900。应当理解,图4仅提供一种实施方式的图示并且不暗示关于其中可以实现不同实施例的环境的任何限制。可以基于设计和实现要求对所描绘的环境做出许多修改。
数据处理系统902、904表示能够执行机器可读程序指令的任何电子设备。数据处理系统902、904可以表示智能电话、计算机系统、PDA或其他电子设备。数据处理系统902、904可表示的计算系统、环境和/或配置的示例包括但不限于个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持式或膝上型设备、多处理器系统、基于微处理器的系统、网络PC、小型计算机系统和包括以上系统或设备中的任一个的分布式云计算环境。
用户客户端计算机102和网络服务器112可以包括图4中所示的各组内部组件902a、902b和外部组件904a、904b。每组内部组件902a、902b包括在一条或多条总线912上的一个或多个处理器906、一个或多个计算机可读RAM 908和一个或多个计算机可读ROM 910,以及一个或多个操作系统914和一个或多个计算机可读有形存储设备916。客户端计算机102中的一个或多个操作系统914、软件程序108和文本检测程序110a以及网络服务器112中的文本检测程序110b可以被存储在一个或多个计算机可读有形存储设备916上,以供一个或多个处理器906经由一个或多个RAM908(其通常包括高速缓存存储器)执行。在图4示出的实施例中,每个计算机可读有形存储设备916是内部硬盘驱动器的磁盘存储设备。替代地,每个计算机可读有形存储设备916是半导体存储设备,诸如ROM 910、EPROM、闪存或可存储计算机程序和数字信息的任何其他计算机可读有形存储设备。
每组内部组件902a、902b还包括R/W驱动器或接口918,用于从诸如CD-ROM、DVD、记忆棒、磁带、磁盘、光盘或半导体存储设备的一个或多个便携式计算机可读有形存储设备920读取和向其写入。软件程序(诸如软件程序108和文本检测程序110a和110b)可被存储在一个或多个相应的便携式计算机可读有形存储设备920上,经由相应的R/W驱动器或接口918被读取并被加载到相应的硬盘驱动器916中。
每组内部组件902a、902b还可以包括网络适配器(或交换机端口卡)或接口922,如TCP/IP适配器卡、无线wi-fi接口卡、或3G或4G无线接口卡或其他有线或无线通信链路。客户端计算机102中的软件程序108和文本检测程序110a以及网络服务器计算机112中的文本检测程序110b可经由网络(例如,互联网、局域网或其他广域网)和相应的网络适配器或接口922从外部计算机(例如,服务器)下载。从网络适配器(或交换机端口适配器)或接口922,客户端计算机102中的软件程序108和文本检测程序110a以及网络服务器计算机112中的文本检测程序110b被加载到相应的硬盘驱动器916中。网络可以包括铜线、光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。
每组外部组件904a、904b可以包括计算机显示监视器924、键盘926和计算机鼠标928。外部组件904a、904b还可包括触摸屏、虚拟键盘、触摸板、指点设备和其他人机接口设备。每组内部组件902a、902b还包括连接到计算机显示监视器924、键盘926和计算机鼠标928的设备驱动器930。设备驱动器930、R/W驱动器或接口918和网络适配器或接口922包括硬件和软件(被存储在存储设备916和/或ROM 910中)。
应预先理解,尽管本公开包括关于云计算的详细描述,但是本文中记载的教导的实现不限于云计算环境。相反,本发明的实施例能够结合现在已知或以后开发的任何其它类型的计算环境来实现。
云计算是一种服务交付模型,用于实现对可配置计算资源(例如,网络、网络带宽、服务器、处理、存储器、存储、应用、虚拟机和服务)的共享池的方便的按需网络访问,可配置计算资源可以以最小的管理努力或与服务的提供者的交互来快速供应和释放。该云模型可以包括至少五个特性、至少三个服务模型和至少四个部署模型。
特性如下:
按需自助:云消费者可以单方面地自动地根据需要提供计算能力,诸如服务器时间和网络存储,而不需要与服务的提供者进行人工交互。
广域网接入:能力在网络上可用,并且通过促进由异构的薄或厚客户端平台(例如,移动电话、膝上型计算机和PDA)使用的标准机制来访问。
资源池化:供应商的计算资源被集中以使用多租户模型来服务多个消费者,其中不同的物理和虚拟资源根据需求被动态地分配和重新分配。存在位置无关的意义,因为消费者通常不控制或不知道所提供的资源的确切位置,但是能够在较高抽象级别(例如国家、州或数据中心)指定位置。
快速弹性:在一些情况下,可以快速且弹性地提供快速向外扩展的能力和快速向内扩展的能力。对于消费者,可用于提供的能力通常看起来不受限制,并且可以在任何时间以任何数量购买。
测量服务:云系统通过利用在适合于服务类型(例如,存储、处理、带宽和活动用户账户)的某一抽象级别的计量能力来自动地控制和优化资源使用。可以监视、控制和报告资源使用,从而为所利用服务的提供者和消费者两者提供透明度。
服务模型如下:
软件即服务(SaaS):提供给消费者的能力是使用在云基础设施上运行的提供者的应用。应用程序可通过诸如web浏览器(例如,基于web的电子邮件)等瘦客户机界面从各种客户机设备访问。消费者不管理或控制包括网络、服务器、操作系统、存储、或甚至个别应用能力的底层云基础结构,可能的例外是有限的用户专用应用配置设置。
平台即服务(PaaS):提供给消费者的能力是将消费者创建或获取的应用部署到云基础设施上,该消费者创建或获取的应用是使用由提供商支持的编程语言和工具创建的。消费者不管理或控制包括网络、服务器、操作系统或存储的底层云基础设施,但具有对部署的应用和可能的应用托管环境配置的控制。
基础设施即服务(IaaS):提供给消费者的能力是提供处理、存储、网络和消费者能够部署和运行任意软件的其它基本计算资源,所述软件可以包括操作系统和应用。消费者不管理或控制底层云基础设施,但具有对操作系统、存储、部署的应用的控制,以及可能对选择的联网组件(例如,主机防火墙)的有限控制。
部署模型如下:
私有云:云基础设施仅为组织操作。它可以由组织或第三方管理,并且可以存在于建筑物内或建筑物外。
社区云:云基础设施由若干组织共享,并且支持具有共享关注(例如,任务、安全要求、策略和合规性考虑)的特定社区。它可以由组织或第三方管理,并且可以存在于场所内或场所外。
公有云:云基础设施可用于一般公众或大型工业群体,并且由销售云服务的组织拥有。
混合云:云基础设施是两个或更多云(私有、共同体或公共)的组合,所述云保持唯一实体,但是通过使数据和应用能够移植的标准化或私有技术(例如,用于云之间的负载平衡的云突发)绑定在一起。
云计算环境是面向服务的,其焦点在于无状态、低耦合、模块性和语义互操作性。在云计算的核心是包括互连节点的网络的基础设施。
现在参考图5,描绘了说明性云计算环境1000。如图所示,云计算环境1000包括一个或多个云计算节点100,云消费者使用的本地计算设备(诸如例如个人数字助理(PDA)或蜂窝电话1000A、台式计算机1000B、膝上型计算机1000C和/或汽车计算机系统1000N)可以与云计算节点100通信。节点100可彼此通信。它们可以被物理地或虚拟地分组(未示出)在一个或多个网络中,诸如如上所述的私有云、社区云、公共云或混合云、或它们的组合。这允许云计算环境1000提供基础设施即服务、平台即服务和/或软件即服务,云消费者不需要为这些服务维护本地计算设备上的资源。要理解的是,图5中所示的计算设备1000A-N的类型仅仅旨在进行说明,并且计算节点100和云计算环境1000可通过任何类型的网络和/或网络可寻址连接(例如,使用网络浏览器)与任何类型的计算机化设备通信。
现在参考图6,示出了由云计算环境1000提供的一组功能抽象层1100。应当预先理解,图6中所示的组件、层和功能仅旨在是说明性的,并且本发明的实施例不限于此。如所描述,提供以下层和对应功能:
硬件和软件层1102包括硬件和软件组件。硬件组件的示例包括:大型机1104;基于RISC(精简指令集计算机)架构的服务器1106;服务器1108;刀片服务器1110;存储设备1112;以及网络和联网组件1114。在一些实施例中,软件组件包括网络应用服务器软件1116和数据库软件1118。
虚拟化层1120提供抽象层,从该抽象层可以提供虚拟实体的以下示例:虚拟服务器1122;虚拟存储1124;虚拟网络1126,包括虚拟专用网络;虚拟应用和操作系统1128;以及虚拟客户端1130。
在一个示例中,管理层1132可以提供以下描述的功能。资源供应1134提供用于在云计算环境内执行任务的计算资源和其他资源的动态采购。计量和定价1136在云计算环境中使用资源时提供成本跟踪,并为这些资源的消费开账单或发票。在一个示例中,这些资源可以包括应用软件许可证。安全性为云消费者和任务提供身份验证,以及为数据和其他资源提供保护。用户门户1138为消费者和系统管理员提供对云计算环境的访问。服务水平管理1140提供云计算资源分配和管理,使得满足所需的服务水平。服务水平协议(SLA)规划和履行1142为根据SLA预期未来需求的云计算资源提供预安排和采购。
工作负载层1144提供可以利用云计算环境的功能的示例。可以从该层提供的工作负荷和功能的示例包括:地图和导航1146;软件开发和生命周期管理1148;虚拟教室的教学提供1150;数据分析处理1152;交易处理1154;以及文本检测1156。文本检测程序110a、110b提供了一种通过以下操作解决由于文本检测算法不能准确地检测输入图像中的所有单词而呈现的问题的方式:放大被错误表征或丢失的文本,并且再次使用文本检测算法对文本的可能没有被正确检测的部分执行二次检测。
已经出于说明的目的呈现了本发明的各种实施例的描述,但并不旨在是详尽的或者限于所公开的实施例。在不脱离所描述的实施例的范围的情况下,许多修改和变化对于本领域普通技术人员来说是显而易见的。在此使用的术语被选择以最好地解释实施例的原理、实际应用或对在市场中找到的技术的技术改进,或者使得本领域普通技术人员能够理解在此公开的实施例。
Claims (9)
1.一种用于文本检测的方法,所述方法包括:
训练文本检测模型;
使用经训练的文本检测模型对输入图像执行文本检测;
确定使用所述输入图像生成的多个边界框中的至少一个边界框是否具有高于阈值的纵横比;
基于确定使用所述输入图像生成的所述多个边界框中的至少一个边界框具有高于所述阈值的所述纵横比,放大所述至少一个边界框内的任何文本,并且使用经训练的文本检测模型对新图像执行文本检测;以及
将输出图像进行输出。
2.根据权利要求1所述的方法,其中,所述经训练的文本检测模型是神经网络,所述神经网络通过将所述输入图像中的每个像素标记为文本或不标记为文本并且将使用所述输入图像生成的所述多个边界框中的一个边界框放置在被标记为文本的一组并发像素周围,来预测单词或文本行。
3.根据权利要求2所述的方法,其中,基于所述边界框内的被标记为文本的所述一组并发像素,计算高斯分布。
4.根据权利要求1所述的方法,其中,所述阈值是针对最长单词计算的边界框的高度除以边界框的宽度的两倍。
5.根据权利要求1所述的方法,其中,放大所述至少一个边界框内的所述文本进一步包括:
将经放大的文本复制到所述新图像。
6.根据权利要求1所述的方法,还包括:
将使用所述输入图像生成的至少一个边界框和使用所述新图像生成的至少一个边界框组合以创建所述输出图像。
7.根据权利要求6所述的方法,还包括:
在确定使用所述输入图像生成的所述多个边界框中的至少一个边界框包含多于一个的单词时,用使用所述新图像生成的所述至少一个边界框替换所述输入图像的任何对应部分。
8.一种用于文本检测的计算机系统,包括:
一个或多个处理器、一个或多个计算机可读存储器、一个或多个计算机可读存储介质、以及存储在所述一个或多个存储介质中的至少一个存储介质上的用于由所述一个或多个处理器中的至少一个处理器经由所述一个或多个存储器中的至少一个存储器执行的程序指令,其中,所述计算机系统能够执行根据权利要求1-7中任一项所述的方法。
9.一种用于文本检测的计算机程序产品,包括能够由处理器执行以使得所述处理器执行根据权利要求1-7中任一项所述的方法的程序指令。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/649406 | 2022-01-31 | ||
US17/649,406 US20230245481A1 (en) | 2022-01-31 | 2022-01-31 | Text detection algorithm for separating words detected as one text bounding box |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116524528A true CN116524528A (zh) | 2023-08-01 |
Family
ID=87396510
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310044682.5A Pending CN116524528A (zh) | 2022-01-31 | 2023-01-30 | 用于分离被检测为一个文本边界框的单词的文本检测算法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20230245481A1 (zh) |
JP (1) | JP2023111865A (zh) |
CN (1) | CN116524528A (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230260309A1 (en) * | 2022-02-16 | 2023-08-17 | Oracle International Corporation | Table extraction from image-based documents |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9037450B2 (en) * | 2012-12-14 | 2015-05-19 | Microsoft Technology Licensing, Llc | Text overlay techniques in realtime translation |
US10127673B1 (en) * | 2016-12-16 | 2018-11-13 | Workday, Inc. | Word bounding box detection |
US11037010B2 (en) * | 2019-01-11 | 2021-06-15 | Microsoft Technology Licensing, Llc | Compositional model for text recognition |
US20210110189A1 (en) * | 2019-10-14 | 2021-04-15 | Shenzhen Malong Technologies Co., Ltd. | Character-based text detection and recognition |
US11562591B2 (en) * | 2019-12-23 | 2023-01-24 | Insurance Services Office, Inc. | Computer vision systems and methods for information extraction from text images using evidence grounding techniques |
CN111062365B (zh) * | 2019-12-30 | 2023-05-26 | 上海肇观电子科技有限公司 | 识别混合排版文字的方法、设备、芯片电路和计算机可读存储介质 |
-
2022
- 2022-01-31 US US17/649,406 patent/US20230245481A1/en active Pending
-
2023
- 2023-01-05 JP JP2023000631A patent/JP2023111865A/ja active Pending
- 2023-01-30 CN CN202310044682.5A patent/CN116524528A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
US20230245481A1 (en) | 2023-08-03 |
JP2023111865A (ja) | 2023-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10699055B2 (en) | Generative adversarial networks for generating physical design layout patterns | |
AU2021257649B2 (en) | Vision-based cell structure recognition using hierarchical neural networks and cell boundaries to structure clustering | |
US10621301B2 (en) | Coordinates-based variational autoencoder for generating synthetic via layout patterns | |
US11361146B2 (en) | Memory-efficient document processing | |
US10777191B2 (en) | Visually exploring and prioritizing discordant conversations with conversational bots | |
US20210117732A1 (en) | Image Object Recognition Through Multimodal Conversation Templates | |
US11409564B2 (en) | Resource allocation for tuning hyperparameters of large-scale deep learning workloads | |
US11025500B2 (en) | Provisioning infrastructure from visual diagrams | |
CN116524528A (zh) | 用于分离被检测为一个文本边界框的单词的文本检测算法 | |
US20210263961A1 (en) | Coarse-to-fine multimodal gallery search system with attention-based neural network models | |
US10915710B2 (en) | Clause analysis based on collection coherence in legal domain | |
US10671891B2 (en) | Reducing computational costs of deep reinforcement learning by gated convolutional neural network | |
CN110611817B (zh) | 基于文本图像内容的图像压缩 | |
US20230021563A1 (en) | Federated data standardization using data privacy techniques | |
US11822884B2 (en) | Unified model for zero pronoun recovery and resolution | |
US11928804B2 (en) | Dynamic device configuration | |
US11593944B2 (en) | System and method for instance segmentation in pathological images using object-guided framework | |
US11809454B2 (en) | Label-based document classification using artificial intelligence | |
US11989509B2 (en) | Generative adversarial network implemented digital script modification | |
US20220383025A1 (en) | Augmented reality translation of sign language classifier constructions | |
US20220222495A1 (en) | Using contextual transformation to transfer data between targets | |
US20210209531A1 (en) | Requirement creation using self learning mechanism | |
US20230162475A1 (en) | Radial summation preprocessing for image classification | |
US20220245838A1 (en) | Visual question generation with answer-awareness and region-reference | |
US20230089790A1 (en) | Constraint-based multi-party image modification |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |