CN108596181B - 文本识别方法、系统、机器设备和计算可读存储介质 - Google Patents
文本识别方法、系统、机器设备和计算可读存储介质 Download PDFInfo
- Publication number
- CN108596181B CN108596181B CN201810338760.1A CN201810338760A CN108596181B CN 108596181 B CN108596181 B CN 108596181B CN 201810338760 A CN201810338760 A CN 201810338760A CN 108596181 B CN108596181 B CN 108596181B
- Authority
- CN
- China
- Prior art keywords
- text
- service
- request
- text recognition
- recognition
- 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.)
- Active
Links
Images
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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Character Discrimination (AREA)
Abstract
本申请揭示了一种文本识别方法、系统、机器设备和计算机可读存储介质。所述方法包括:接收文本识别请求,分发文本识别请求至文本识别架构中相适应的业务组件;通过所在业务组件至其它业务组件中服务的串联执行处理文本识别请求,并且在识别所标记文本的业务组件将长耗时文本识别请求分离至异常识别服务;通过异常识别服务获得文本识别请求的异常识别结果。文本识别架构中各业务组件的串行部署以及长耗时文本识别请求向异常识别服务的分离,区别于独立部署的实现,方便地将异常请求,即长耗时文本识别请求导流出来,以在文本识别中消除长耗时处理过程对正常服务的干扰,很好地保证高效可用性,弹性满足不同的性能需求。
Description
技术领域
本申请涉及计算机技术领域,特别涉及一种文本识别方法、系统、机器设备和计算机可读存储介质。
背景技术
在AI(Artificial Intelligence,人工智能)技术日新月异的今天,文本识别正逐步成为人工智能领域最为经典的研究方向之一。文本识别包括光学字符识别技术(OpticalCharacter Recognition,简称OCR)以及场景文本识别技术(Scene Text Recognition,简称STR)在理论支撑以及业务应用等方面都已经日趋成熟。
文本识别为支持不同应用业务的需求,往往需要对单图片、动态图片以及视频流等形态实现。
为各种形态而分别实现的文本识别中,往往存在着长耗时的处理过程。例如,文本识别中由于异常的发生,出现了长耗时的处理过程。长耗时的处理过程极大的降低了整体系统的吞吐量,进而导致系统利用率极低等诸多缺陷。
为此针对于不同的形态或者所存在的长耗时处理过程,分别独立部署物理上隔离的服务集群,进而保证彼此之间没有相互干扰,从而能够避免长耗时处理过程的干扰。
但是,为避免长耗时处理过程进行的文本识别独立部署存在着诸多技术缺陷。例如,独立部署将带来成本过高、资源浪费甚至于可扩展性差的技术缺陷。
也就是说,通过独立部署来避免长耗时处理过程对文本识别造成影响,此影响是占用主要资源消耗的长耗时处理过程对文本识别正常服务的干扰。因此,通过独立部署而进行的文本识别并不可行,区别于独立部署,如何在文本识别中消除长耗时处理过程对正常服务的干扰,成为了当前亟待探索的问题。
申请内容
为了解决相关技术中区别于独立部署,如何在文本识别中消除长耗时处理过程对正常服务干扰的技术问题,本申请提供了一种文本识别方法、装置、机器设备和计算机可读存储介质。
一种文本识别方法,所述方法包括:
接收文本识别请求,所述文本识别请求携带请求识别文本的源信息;
在文本识别架构中进行文本识别的路由处理,分发所述文本识别请求至所述文本识别架构中相适应的业务组件;
通过所在业务组件至其它业务组件中服务的串联执行处理所述文本识别请求,并且在识别所标记文本的业务组件将长耗时文本识别请求分离至异常识别服务;
通过所述异常识别服务获得所述文本识别请求为所携带源信息请求识别文本而对应的异常识别结果。
在一个示例性实施例中,所述源信息包括动态图片和/或视频流,所述在文本识别架构中进行文本识别的路由处理,分发所述文本识别请求至所述文本识别架构中相适应的业务组件,包括:
从所述文本识别请求提取请求识别文本的动态图片和/或视频流;
在文本识别架构中对所述动态图片和/或视频流进行路由处理,将所述动态图片和/或视频流分发至切片业务组件。
在一个示例性实施例中,所述通过所在业务组件至其它业务组件中服务的串联执行处理所述文本识别请求,并且在识别所标记文本的业务组件将长耗时文本请求分离至异常识别服务,包括:
进行路由处理而分发得到文本识别请求的业务组件对所述文本识别请求执行自身所配置服务,以处理所述文本识别请求所传入的源信息;
在所述服务执行完毕时通过串行部署的其它业务组件串行执行所部署的服务获得标记了文本区域的源信息,并将标记了文本区域的源信息传入识别所标记文本的业务组件;
识别所标记文本的业务组件检测所述文本识别请求是否为长耗时文本识别请求;
在所述文本识别请求是长耗时文本识别请求时,将对应于所述长耗时文本请求且标记了文本区域的源信息分离至异常识别服务。
在一个示例性实施例中,所述业务组件为切分业务组件,所述进行路由处理而分发得到文本识别请求的业务组件对所述文本识别请求执行自身所配置服务,以处理所述文本识别请求所传入的源信息,包括:
所述切片业务组件接收所从文本识别请求中提取并分发的动态图片和/或视频流,对所述动态图片和/或视频流执行切分服务,获得图片序列。
在一个示例性实施例中,所述动态图片和/或视频流所在的切片业务组件中,进行所述动态图片和/或视频流切分,获得图片序列,包括:
通过所述切片业务组件中切分服务的执行,对路由分发所得到的动态图片和/或视频流进行相似帧抽取获得若干图片形成的图片序列。
在一个示例性实施例中,所述识别所标记文本的业务组件检测所述文本识别请求为长耗时文本请求之后,
所述通过所在业务组件至其它业务组件中服务的串联执行处理所述文本识别请求,并且在识别所标记文本的业务组件将长耗时文本识别请求分离至异常识别服务,包括:
如果识别所标记文本的业务组件检测所述文本识别请求为正常请求,则将对应于所述正常请求且标记了文本区域的源信息分离至识别服务,所述识别服务成功识别所述文本区域获得文本信息所形成的识别结果。
一种文本识别系统,所述系统包括:
接收模块,用于接收文本识别请求,所述文本识别请求携带请求识别文本的源信息;
路由处理模块,用于在文本识别架构中进行文本识别的路由处理,分发所述文本识别请求至所述文本识别架构中相适应的业务组件;
串联执行模块,用于通过所在业务组件至其它业务组件中服务的串联执行处理所述文本识别请求,并且在识别所标记文本的业务组件将长耗时文本识别请求分离至异常识别服务;
异常识别模块,用于通过所述异常识别服务获得所述文本识别请求为所携带源信息请求识别文本而对应的异常识别结果。
在一个示例性实施例中,所述源信息包括动态图片和/或视频流,所述路由处理模块包括:
提取单元,用于从所述文本识别请求提取请求识别文本的动态图片和/或视频流;
分发单元,用于在文本识别架构中对所述动态图片和/或视频流进行路由处理,将所述动态图片和/或视频流分发至切片业务组件。
在一个示例性实施例中,所述串联执行模块包括:
服务执行单元,用于进行路由处理而分发得到文本识别请求的业务组件对所述文本识别请求执行自身所配置服务,以处理所述文本识别请求所传入的源信息;
文本标记信息传入单元,用于在所述服务执行完毕时通过串行部署的其它业务组件串行执行所部署的服务获得标记了文本区域的源信息,并将标记了文本区域的源信息传入识别所标记文本的业务组件;
长耗时检测单元,用于识别所标记文本的业务组件检测所述文本识别请求是否为长耗时文本识别请求;
请求分离单元,用于在所述文本识别请求是长耗时文本识别请求时,将对应于所述长耗时文本请求且标记了文本区域的源信息分离至异常识别服务。
在一个示例性实施例中,所述业务组件为切分业务组件,所述服务执行单元进一步用于所述切片业务组件接收所从文本识别请求中提取并分发的动态图片和/或视频流,对所述动态图片和/或视频流执行切分服务,获得图片序列。
在一个示例性实施例中,所述服务执行单元还用于通过所述切片业务组件中切分服务的执行,对路由分发所得到的动态图片和/或视频流进行相似帧抽取获得若干图片形成的图片序列。
在一个示例性实施例中,所述串联执行模块还用于如果识别所标记文本的业务组件检测所述文本识别请求为正常请求,则将对应于所述正常请求且标记了文本区域的源信息分离至识别服务,所述识别服务成功识别所述文本区域获得文本信息所形成的识别结果。
一种机器设备,包括:
处理器;以及
存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现如前所述的方法。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如前所述的方法。
本申请的实施例提供的技术方案至少包括以下有益效果:
文本识别的进行中,对所接收文本识别请求,文本识别请求携带着请求识别文本的源信息,在文本识别架构中进行文本识别的路由处理,分发文本识别请求至文本识别架构中相适应的业务组件,文本识别架构中各业务组件串行部署,通过所在业务组件至其它业务组件中服务的串联执行处理文本识别请求,在识别所标记文本的业务组件将长耗时文本识别请求分离至异常识别服务,由此便通过异常识别服务获得文本识别请求为所携带源信息请求识别文本而对应的异常识别结果,文本识别架构中各业务组件的串行部署以及长耗时文本识别请求向异常识别服务的分离,区别于独立部署的实现,方便地将异常请求,即长耗时文本识别请求导流出来,以在文本识别中消除长耗时处理过程对正常服务的干扰,很好地保证高效可用性,弹性满足不同的性能需求。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并于说明书一起用于解释本申请的原理。
图1是根据一示例性实施例示出的本申请所涉及的实施环境示意图;
图2是根据一示例性实施例示出的一种装置的框图;
图3是根据一示例性实施例示出的一种文本识别方法的流程图;
图4是根据图3对应实施例示出的对步骤330进行描述的流程图;
图5是根据图3对应实施例示出的对步骤350进行描述的流程图;
图6是现有实现中STR独立部署架构的示意图;
图7是一示例性实施例示出的本申请所涉及的文本识别架构图;
图8是图7对应实施例示出的场景文本识别的实现流程图;
图9是根据一示例性实施例示出的一种文本识别系统的框图;
图10是根据图9对应实施例示出的对路由处理模块进行描述的框图;
图11是根据图9对应实施例示出的对串联执行模块进行描述的框图。
具体实施方式
这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
图1是根据一示例性实施例示出的本申请所涉及的实施环境示意图。在一个示例性实施例中,本申请所涉及的实施环境,如图1所示,至少包括终端设备110以及为终端设备110实现文本识别的服务器130。
终端设备110,运行着各种文本识别应用,例如,识别单图片、动态图片以及视频流中文本内容的应用,文本识别应用中文本内容的识别以及携带所识别文本信息等识别结果的获得都是在服务器130的作用下实现的。
服务器130通过与终端设备110之间的交互,获得终端设备110所请求进行文本识别的对象,此对象为单图片、动态图片以及视频流任意形态,并相应进行文本识别而获得能够向终端设备110返回的识别结果。
服务器130为终端设备110提供进行文本识别的计算能力,进而配合终端设备110实现所需要的文本识别业务。
图2是根据一示例性实施例示出的一种装置的框图。该装置是本申请为实现金融产品资产的流转而在后台部署的硬件设备,即服务器。如图2所示的,该服务器200可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(centralprocessing units,CPU)222(例如,一个或一个以上处理器)和存储器232,一个或一个以上存储应用程序242或数据244的存储介质230(例如一个或一个以上海量存储设备)。其中,存储器232和存储介质230可以是短暂存储或持久存储。存储在存储介质230的程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器222可以设置为与存储介质230通信,在服务器200上执行存储介质230中的一系列指令操作。服务器200还可以包括一个或一个以上电源226,一个或一个以上有线或无线网络接口250,一个或一个以上输入输出接口258,和/或,一个或一个以上操作系统241,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。上述图3、图4以及图5所示实施例中所述的由服务器所执行的步骤可以基于该图2所示的服务器结构。本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
图3是根据一示例性实施例示出的一种文本识别方法的流程图。该文本识别方法适用于图1所示实施环境的服务器,该服务器在一个示例性实施例中可以是图2所示的装置。如图3所示,该文本识别方法,由服务器执行,包括以下步骤。
在步骤310中,接收文本识别请求,文本识别请求携带请求识别文本的源信息。
其中,文本识别请求用于发起文本识别。在一个示例性实施例中,文本识别请求是终端设备所请求实现的业务发起的,与之交互的服务器便接收到文本识别请求。
文本识别请求是终端设备通过自身与服务器之间的会话发起的。文本识别请求携带了请求识别所存在文本的源信息,除此之外,还携带着终端标识以及业务标识。
请求识别文本的源信息,是单图片、动态图片以及视频流任意形态。也就是说,源信息包括着丰富的图像信息,除此之外,还包括了一些文本信息,进而分别对应于源信息中的图像内容和文本内容。
在步骤330中,在文本识别架构中进行文本识别的路由处理,分发文本识别请求至文本识别构架中相适应的业务组件。
其中,源信息的文本识别是通过所搭建的文本识别架构实现的,在此文本识别架构,根据不同服务之间的系统计算消耗与需求不同的特点,将整个文本识别大系统拆分为若干个边界清晰且独立的子系统,各子系统相互关联,相互之间接口清晰、解耦。
所拆分的若干子系统,即为文本识别架构中的若干业务组件。文本识别架构中部署了若干业务组件,每一业务组件都将为文本识别的进行而执行相应的服务,进而各业务组件通过服务的执行相互配合,实现文本识别架构向终端设备提供的文本识别业务。
对于所接收文本识别请求,在文本识别架构对接收的文本识别请求进行路由处理,以将其分发至适用于处理文本识别请求的业务组件。路由处理用于将所接收的文本识别请求,或者每一业务组件处理完成的文本识别请求分发至继续处理文本识别请求的业务组件。
随着文本识别架构所不断进行的路由处理,将文本识别请求分发到那不同业务组件上,以保证文本识别请求在不同阶段,例如切片、文本检测、文本识别等阶段的处理。
对于文本识别架构所接收的文本识别请求,首先被分发至相适应的业务组件。文本识别请求所相适应的业务组件,是部署了适应于文本识别请求处理的服务所在业务组件。在一个示例性实施例的具体实现中,将根据文本识别请求所携带源信息的形态将文本识别请求通过路由处理分发至相适应的业务组件。在所携带源信息为动态图片或视频流时,与之相对应的,将文本识别请求分发至切片业务组件,以通过切片业务组件上部署的服务对源信息进行处理,获得图片序列。
应当理解,文本识别的进行,是以图片为单位的,因此,在源信息以动态图片或视频流的形态存在时,需在文本识别架构将文本识别请求分发至切片业务组件。
在另一示例性实施例的具体实现中,所携带源信息为单图片,与之相对应的,将文本识别请求分发至切片业务组件所串行部署的下一业务组件,例如,文本检测业务组件,直接对单图片执行文本行检测。
所发起进行的文本识别,根据所在场景,或者用户所上传文件的不同,往往对应着不同的文本识别过程,即文本识别的初始阶段往往各不相同。例如,有的文件需要执行切分处理,以为后续的文本识别能够按照所设定的文本识别单位,即单图片进行。而已经是以文本识别单位的形式存在的文件形态,则是以下一阶段作为文本识别的初始阶段的。
因此,通过文本架构中进行文本识别的路由处理,实现所接收文本识别请求的分发,进而保证文本识别请求处理的高效性。
在步骤350中,通过所在业务组件至其它业务组件中服务的串联执行处理文本识别请求,并且在识别所标记文本的业务组件将长耗时文本识别请求分离至异常识别服务。
其中,如前所述的,文本识别架构中,各业务组件是串行部署的,并且每一业务组件都部署了相应的服务,通过服务的执行即可完成业务组件所在阶段的文本识别。
因此,对于文本识别请求的接收,以及每一业务组件上完成服务执行的文本识别请求,都将通过路由处理的执行分发至下一业务组件,以此类推,便实现串行部署的业务组件上服务的串联执行,进而最终完成文本识别。
应当说明的是,所在业务组件,即接收到外部文本识别请求的业务组件至其它业务组件上,分别部署的服务通过业务组件的串行部署而保证相互之间的串联执行,进而在文本识别框架下通过业务组件的部署以及所进行的路由分发,能够充分利用系统资源,充分共享系统资源,有效的避免了系统资源的浪费。
在串行部署的业务组件上,随着服务的串联执行,必然在一业务组件上会完成在源信息检测出可能的文本区域进而标记,所标记的文本区域即源信息中的标记文本。与这一业务组件串行部署的下一业务组件即为识别所标记文本的业务组件。
识别所标记文本的业务组件部署了识别服务,识别服务用于对源信息中的的标记文本进行识别,以获得所对应的文本信息形成识别结果。
识别所标记文本的业务组件中,除了部署识别服务,还部署了异常识别服务。所接收的文本识别请求包括正常请求以及长耗时文本识别请求。正常请求是所携带源信息能够被成功识别的文本识别请求,例如,所携带源信息是符合文本识别的尺寸要求,并且是上传完毕的完整文件。
而长耗时文本识别请求则是相对正常请求而言的异常请求,是对应于文本识别中的特殊情况的。例如,在终端设备所上传源信息不符合设定的高宽比,或者没有上传完毕时,所发起的文本识别请求都是异常请求,对此而进行的文本识别便是一个长耗时的处理过程。
因此,在识别所标记文本的业务组件中,将长耗时文本识别请求导流出主集群,即正常进行的识别服务中,屏蔽长耗时文本识别请求对文本识别的干扰,以避免长耗时文本识别请求的处理占用过多的资源,隔离长耗时文本识别请求对系统吞吐量的影响,提升服务效率。
将长耗时文本识别请求分离至区别于识别服务的异常识别服务处理,对于长耗时文本识别请求的处理而言,也将进一步提升了处理效率以及资源利用率。
在步骤370中,通过异常识别服务获得文本识别请求为所携带源信息请求识别文本而对应的异常识别结果。
其中,通过前述步骤,将长耗时文本识别请求分离至异常识别服务之后,即可通过异常识别服务进行所接收文本识别请求,即长耗时文本识别请求的处理,获得所携带源信息请求识别文本而对应的异常识别结果。
由此可知,文本识别所获得的识别结果,包括异常识别结果以及文本信息所形成的识别结果。应当理解,文本信息所形成的识别结果,是由识别服务为文本识别请求所携带的源信息输出的;异常识别结果则是由异常服务处理长耗时文本识别请求所抛出的异常。
在本申请示例性实施例中,对文本识别在系统层面拆分为最小独立功能来获得各业务组件,在此基础上使得实现文本识别的内部逻辑得到有效整合与优化,即形成业务组件所部署的服务。
在此基础之上,也使得各服务之间的迭代互不影响,能够实现跨版本服务,也可以相互组合,系统扩展性、可服务性均得到极大提高。
图4是根据图3对应实施例示出的对步骤330进行描述的流程图。在一个示例性实施例中,源信息包括动态图片和/或视频流,如图4所示,该步骤330至少包括以下步骤。
在步骤331中,从文本识别请求提取请求识别文本的动态图片和/或视频流。
在步骤333中,在文本识别架构中对动态图片和/或视频流进行路由处理,将动态图片和/或视频流分发至切片业务组件。
其中,如前所述的,文本识别请求是外部的终端设备所发起的,并且携带了请求识别的源信息,此源信息根据终端设备的需求,是单图片、动态图片以及视频流任意形态的。
在源信息是动态图片和/或视频流时,随着对文本识别请求而进行的路由处理,将从文本识别请求中提取出请求进行文本识别的动态图片和/或视频流。
文本识别架构对所接收文本识别请求首先进行的路由处理,是将所提取的动态图片和/或视频流分发至切片业务组件中,以获得以单图片形式存在的图片序列,进而获得对应于文本识别单位的若干图片。
应当理解,各业务组件上进行的文本识别请求处理,是针对于文本识别架构所接收的文本识别请求而言的,每一业务组件所进行的文本识别请求处理,是对所接收的文本识别请求,或者上一业务组件为此文本识别请求执行服务所输出的结果执行所部署服务的过程。
例如,对于切片业务组件,所进行的文本识别请求处理则是对所提取动态图片和/或视频流进行的处理。
其它业务组件以此类推,通过自身所部署服务的执行实现所在业务组件对文本识别请求的处理。
图5是根据图3对应实施例示出的对步骤350进行描述的流程图。在一示例性实施例中,该步骤350,如图5所示,至少包括以下步骤。
在步骤351中,进行路由处理而分发得到文本识别请求的业务组件对文本识别请求执行自身所配置服务,以处理文本识别请求所传入的源信息。
其中,如前所述的,文本识别架构中,各业务组件串行部署,进而使得所部署的服务得以随着文本识别请求所相应进行的路由分发而对文本识别请求串联执行自身所对应的逻辑。
随着路由处理的进行,所进行的文本识别请求分发是文本识别请求本身以及文本识别请求处理中切分形成图片序列的源信息、标记文本的源信息等的分发,一业务组件所分发得到的文本识别请求相对于上一业务组件而对应于各种不同处理结果。
对于随着路由处理而分发得到文本识别请求的业务组件而言,将相应执行自身所部署的服务,以处理所传入的文本识别请求,或者上一业务组件处理完成的源信息。
随着路由分发而将接收到的文本识别请求或者上一业务组件的处理结果,即上一业务组件处理完成的源信息传入当前业务组件。
在一个示例性实施例中,业务组件为切分业务组件,步骤351的执行包括:动态图片和/或视频流所在切片业务组件中,对动态图片和/或视频流执行切分服务,获得图片序列。
其中,应当理解,无论是动态图片还是视频流,都是由若干帧图片所构成的,因此,需按帧进行动态图片和/或视频流的切分。
具体的,通过切分服务的执行而获得图片序列的过程,可以根据每一帧图片之间的相似度而抽帧获得图片序列的过程。
在一示例性实施例的具体实现中,通过切片业务组件中切分服务的执行,对路由分发所得到的动态图片和/或视频流进行相似帧抽获得若干图片形成的图片序列。
在步骤353中,在服务执行完毕时通过串行部署的其它业务组件串行执行所部署的服务获得标记了文本区域的源信息,并将标记了文本区域的源信息传入识别所标记文本的业务组件。
其中,一业务组件上服务的执行完毕,将随着所进行的路由分发而为文本识别请求发起下一业务组件上服务的执行,以此类推,便在一业务组件,即文本检测业务组件。
文本检测业务组件对每一图片进行文本行检测,以检测出可能的文本行区域,并打上标记,实现源信息中文本的标记。
标记了文本的源信息随着路由分发的进行传入到识别所标记文本的业务组件。如前所述的,识别所标记文本的业务组件部署了识别服务和异常识别服务,以适配于文本识别和文本识别中的异常处理。
在步骤355中,识别所标记文本的业务组件检测文本识别请求是否为长耗时文本识别请求。
其中,识别所标记文本的业务组件首先进行着文本识别请求的检测,以判定此文本识别请求是长耗时文本识别请求还是正常请求。
所进行的长耗时文本识别请求检测是依据所进行的文本识别请求的处理实现的。具体的,对文本识别请求进行监控,通过所进行的监控即可获知每一类文件识别请求处理完成所耗时,进而获知此类文本识别请求是否为长耗时文本识别请求。
也就是说,所进行的文本识别请求检测是根据此文本识别请求中的业务标识而进行的。例如,根据业务标识获得此类业务发起的文本识别请求所对应的耗时,由此耗时判定文本识别请求是长耗时文本识别请求还是正常请求。
在步骤357中,在文本识别请求是长耗时文本识别请求时,将对应于长耗时文本请求且标记了文本区域的源信息分离至异常识别服务。
其中,在检测得到文本识别请求是长耗时文本识别请求之后,便将这一长耗时文本识别请求经由文本检测业务组件所输出的标记了文本区域的源信息分离至异常识别服务。
至此,通过异常识别服务的执行,便可实现识别所标记文本的业务组件对长耗时文本识别请求的处理。
在另一示例性实施例中,步骤355之后,该步骤350还包括以下步骤。
如果识别所标记文本的业务组件检测文本识别请求为正常请求,则将对应于正常请求且标记了文本区域的源信息分离至识别服务,识别服务成功识别文本区域获得文本信息所形成的识别结果。
其中,在文本识别请求是正常请求,而非长耗时文本识别请求时,将此正常请求标记了文本区域的源信息分离至识别服务,以通过识别服务的执行获得源信息所对应的文本信息,此文本信息便形成了文本识别的识别结果。
通过本申请示例性实施例的实现,得以实现了实时在线的文本识别业务,对正常文本识别以及由此而存在的异常识别并行服务,即业务组件中部署了识别服务以及异常识别服务,有效地解决了长耗时业务对正常服务的影响,保证了所实现场景文本识别的可用性和可靠性。
在本申请的示例性实施例中,避免了现有实现中在同一集群服务中,长耗时服务的处理极大的降低了整体系统的吞吐量,避免出现系统利用率低等现象。作为最小独立功能单元存在的业务组件使得文本识别的实现能够弹性满足不同业务的性能需求,不同业务之间得以互补配置,最大限度的利用资源。
通过本申请的示例性实施例,不同业务都统一部署,不同业务类型、不同耗时要求的统一业务类型之间能够共享一套系统服务。
以场景文本识别的实现为例,进行本申请所实现文本识别的阐述。在本申请所实现的场景文本识别中,通过本申请所实现文本识别的服务器部署而为单图片、动态图片以及视频流的场景文本识别服务,进而为终端设备所需要进行的文本识别构建文本识别后台。
独立部署是业界当前针对不同场景文本识别服务的通用方案。单图片、动态图片以及视频流的场景文本识别服务均通过物理上隔离的服务集群满足,彼此业务之间没有相互干扰。
图6是现有实现中STR独立部署架构的示意图。在图6所示的场景文本识别的独立部署架构中,业务1、业务2至业务n相互之间独立部署,每一业务的独立部署都实现了对每一文本识别请求从接入层到处理层的处理,进而获得识别结果。
由图6所示的独立部署架构显示可见,场景文本识别是作为大而全的服务担任的,这将导致系统迭代更新时,需要整体更新,系统可扩展性差。
此外,业务1、业务2至业务n之间都无法共享集群资源,极容易导致系统资源的浪费。
图7是一示例性实施例示出的本申请所涉及的文本识别架构图。如图7所示的,文本识别架构具备接入层、路由管理、切片业务组件、文本检测业务组件、文本识别业务组件等若干业务组件。
通过此文本识别架构提供实时在线的场景文本识别,包括单图片、动态图片以及视频流的识别。
在此文本识别架构下,业务方,即终端设备所运行应用中的业务发起HTTP POST请求,即为文本识别请求,通过HTTP POST请求发送源信息到文本识别架构。
由此,将在文本识别架构中完成SPLIT(切分)、DETECTION(文本行检测)以及RECOGNITION(文本识别)之后,返回识别出的文本信息作为识别结果。
如图7所示的文本识别架构中,接入层510负责将业务HTTP POST请求转换为系统内部TCP/UDP请求,同时提供请求会话的状态及信息管理,包括但不限于失败重传的处理。在请求处理完成后,将内部返回请求结果转换为用户HTTP协议返回业务方。
路由管理530用于执行路由处理,以实现针对于各业务组件的路由分发,进而控制串联完成切分、检测及识别三个阶段。特别的,在识别阶段,将在路由管理530的控制下针对于长耗时文本识别请求分离到识别阶段所配置的异常识别服务,正常请求则分离到识别服务,即对应于文本识别架构的识别和异常阶段,以隔离长耗时文本识别请求对系统吞吐量的影响,提升服务效率。
切片业务组件,对应于切分阶段,用于对动态图片及视频流进行处理,以获得可供进行文本识别的图片数组。
文本检测业务组件,对应于文本行检测阶段,对传入的单张图片进行文本行检测,以对可能的文本区域打上标记。
而模型550则为上述业务组件提供算法模型支撑。
图8是图7对应实施例示出的场景文本识别的实现流程图。在路由管理530以及其它业务组件的配合下实现图8所示的流程。
由此,通过各业务组件得以实现了高效的“原子”服务,进而能够自由组合服务,扩展性能以及服务性能都得到极大提高。
下述为本申请装置实施例,可以用于执行本申请上述文本识别方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请文本识别方法实施例。
图9是根据一示例性实施例示出的一种文本识别系统的框图。该文本识别系统,如图9所示,包括但不限于:接收模块710、路由处理模块730、串联执行模块750以及异常识别模块770。
接收模块710,用于接收文本识别请求,所述文本识别请求携带请求识别文本的源信息;
路由处理模块730,用于在文本识别架构中进行文本识别的路由处理,分发所述文本识别请求至所述文本识别架构中相适应的业务组件;
串联执行模块750,用于通过所在业务组件至其它业务组件中服务的串联执行处理所述文本识别请求,并且在识别所标记文本的业务组件将长耗时文本识别请求分离至异常识别服务;
异常识别模块770,用于通过所述异常识别服务获得所述文本识别请求为所携带源信息请求识别文本而对应的异常识别结果。
图10是根据图9对应实施例示出的对路由处理模块进行描述的框图。在一个示例性实施例中,源信息包括动态图片和/或视频流,路由处理模块730,如图10所示,至少包括提取单元731和分发单元733。
提取单元731,用于从所述文本识别请求提取请求识别文本的动态图片和/或视频流;
分发单元733,用于在文本识别架构中对所述动态图片和/或视频流进行路由处理,将所述动态图片和/或视频流分发至切片业务组件。
图11是根据图9对应实施例示出的对串联执行模块进行描述的框图。在一个示例性实施例中,如图11所示,串联执行模块750包括:服务执行单元751、文本标记信息传入单元753、长耗时检测单元755和请求分离单元757。
服务执行单元751,用于进行路由处理而分发得到文本识别请求的业务组件对所述文本识别请求执行自身所配置服务,以处理所述文本识别请求所传入的源信息;
文本标记信息传入单元753,用于在所述服务执行完毕时通过串行部署的其它业务组件串行执行所部署的服务获得标记了文本区域的源信息,并将标记了文本区域的源信息传入识别所标记文本的业务组件;
长耗时检测单元755,用于识别所标记文本的业务组件检测所述文本识别请求是否为长耗时文本识别请求;
请求分离单元757,用于在所述文本识别请求是长耗时文本识别请求时,将对应于所述长耗时文本请求且标记了文本区域的源信息分离至异常识别服务。
在一个示例性实施例中,业务组件为切分业务组件,服务执行单元751还用于通过所述切片业务组件中切分服务的执行,对路由分发所得到的动态图片和/或视频流进行相似帧抽取获得若干图片形成的图片序列。
在另一个示例性实施例中,串联执行模块750还用于如果识别所标记文本的业务组件检测所述文本识别请求为正常请求,则将对应于所述正常请求且标记了文本区域的源信息分离至识别服务,所述识别服务成功识别所述文本区域获得文本信息所形成的识别结果。
可选的,本申请还提供一种机器设备,执行图3、图4和图5任一所示的文本识别方法的全部或者部分步骤。所述装置包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行如上所述的文本识别方法。
在示例性实施例中,还提供了一种存储介质,该存储介质为计算机可读存储介质,例如可以为包括指令的临时性和非临时性计算机可读存储介质。该存储介质例如包括指令的存储器204,上述指令可由装置200的处理器218执行以完成上述文本识别方法。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围内执行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (14)
1.一种文本识别方法,其特征在于,所述方法包括:
接收文本识别请求,所述文本识别请求携带请求识别文本的源信息;
在文本识别架构中进行文本识别的路由处理,分发所述文本识别请求至所述文本识别架构中相适应的业务组件;
通过所在业务组件至其它业务组件中服务的串联执行处理所述文本识别请求,并且在识别所标记文本的业务组件将长耗时文本识别请求分离至异常识别服务,所述文本识别架构中各业务组件串行部署,所述业务组件至其它业务组件中服务的串联执行处理,是串行部署的所述业务组件上完成服务执行的文本识别请求向下一业务组件的分发和服务的执行;
通过所述异常识别服务获得所述文本识别请求为所携带源信息请求识别文本而对应的异常识别结果。
2.根据权利要求1所述的方法,其特征在于,所述源信息包括动态图片和/或视频流,所述在文本识别架构中进行文本识别的路由处理,分发所述文本识别请求至所述文本识别架构中相适应的业务组件,包括:
从所述文本识别请求提取请求识别文本的动态图片和/或视频流;
在文本识别架构中对所述动态图片和/或视频流进行路由处理,将所述动态图片和/或视频流分发至切分业务组件。
3.根据权利要求1所述的方法,其特征在于,所述通过所在业务组件至其它业务组件中服务的串联执行处理所述文本识别请求,并且在识别所标记文本的业务组件将长耗时文本请求分离至异常识别服务,包括:
进行路由处理而分发得到文本识别请求的业务组件对所述文本识别请求执行自身所配置服务,以处理所述文本识别请求所传入的源信息;
在所述服务执行完毕时通过串行部署的其它业务组件串联执行所部署的服务获得标记了文本区域的源信息,并将标记了文本区域的源信息传入识别所标记文本的业务组件;
识别所标记文本的业务组件检测所述文本识别请求是否为长耗时文本识别请求;
在所述文本识别请求是长耗时文本识别请求时,将对应于所述长耗时文本请求且标记了文本区域的源信息分离至异常识别服务。
4.根据权利要求3所述的方法,其特征在于,所述业务组件为切分业务组件,所述进行路由处理而分发得到文本识别请求的业务组件对所述文本识别请求执行自身所配置服务,以处理所述文本识别请求所传入的源信息,包括:
所述切分业务组件接收所从文本识别请求中提取并分发的动态图片和/或视频流,对所述动态图片和/或视频流执行切分服务,获得图片序列。
5.根据权利要求4所述的方法,其特征在于,所述动态图片和/或视频流所在的切分业务组件中,进行所述动态图片和/或视频流切分,获得图片序列,包括:
通过所述切分业务组件中切分服务的执行,对路由分发所得到的动态图片和/或视频流进行相似帧抽取获得若干图片形成的图片序列。
6.根据权利要求3所述的方法,其特征在于,所述识别所标记文本的业务组件检测所述文本识别请求为长耗时文本请求之后,
所述通过所在业务组件至其它业务组件中服务的串联执行处理所述文本识别请求,并且在识别所标记文本的业务组件将长耗时文本识别请求分离至异常识别服务,包括:
如果识别所标记文本的业务组件检测所述文本识别请求为正常请求,则将对应于所述正常请求且标记了文本区域的源信息分离至识别服务,所述识别服务成功识别所述文本区域获得文本信息所形成的识别结果。
7.一种文本识别系统,其特征在于,所述系统包括:
接收模块,用于接收文本识别请求,所述文本识别请求携带请求识别文本的源信息;
路由处理模块,用于在文本识别架构中进行文本识别的路由处理,分发所述文本识别请求至所述文本识别架构中相适应的业务组件;
串联执行模块,用于通过所在业务组件至其它业务组件中服务的串联执行处理所述文本识别请求,并且在识别所标记文本的业务组件将长耗时文本识别请求分离至异常识别服务,所述文本识别架构中各业务组件串行部署,所述业务组件至其它业务组件中服务的串联执行处理,是串行部署的所述业务组件上完成服务执行的文本识别请求向下一业务组件的分发和服务的执行;
异常识别模块,用于通过所述异常识别服务获得所述文本识别请求为所携带源信息请求识别文本而对应的异常识别结果。
8.根据权利要求7所述的系统,其特征在于,所述源信息包括动态图片和/或视频流,所述路由处理模块包括:
提取单元,用于从所述文本识别请求提取请求识别文本的动态图片和/或视频流;
分发单元,用于在文本识别架构中对所述动态图片和/或视频流进行路由处理,将所述动态图片和/或视频流分发至切分业务组件。
9.根据权利要求7所述的系统,其特征在于,所述串联执行模块包括:
服务执行单元,用于进行路由处理而分发得到文本识别请求的业务组件对所述文本识别请求执行自身所配置服务,以处理所述文本识别请求所传入的源信息;
文本标记信息传入单元,用于在所述服务执行完毕时通过串行部署的其它业务组件串联执行所部署的服务获得标记了文本区域的源信息,并将标记了文本区域的源信息传入识别所标记文本的业务组件;
长耗时检测单元,用于识别所标记文本的业务组件检测所述文本识别请求是否为长耗时文本识别请求;
请求分离单元,用于在所述文本识别请求是长耗时文本识别请求时,将对应于所述长耗时文本请求且标记了文本区域的源信息分离至异常识别服务。
10.根据权利要求9所述的系统,其特征在于,所述业务组件为切分业务组件,所述服务执行单元进一步用于所述切分业务组件接收所从文本识别请求中提取并分发的动态图片和/或视频流,对所述动态图片和/或视频流执行切分服务,获得图片序列。
11.根据权利要求10所述的系统,其特征在于,所述服务执行单元还用于通过所述切分业务组件中切分服务的执行,对路由分发所得到的动态图片和/或视频流进行相似帧抽取获得若干图片形成的图片序列。
12.根据权利要求9所述的系统,其特征在于,所述串联执行模块还用于如果识别所标记文本的业务组件检测所述文本识别请求为正常请求,则将对应于所述正常请求且标记了文本区域的源信息分离至识别服务,所述识别服务成功识别所述文本区域获得文本信息所形成的识别结果。
13.一种机器设备,其特征在于,包括:
处理器;以及
存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现根据权利要求1至6中任一项所述的方法。
14.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现根据权利要求1至6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810338760.1A CN108596181B (zh) | 2018-04-16 | 2018-04-16 | 文本识别方法、系统、机器设备和计算可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810338760.1A CN108596181B (zh) | 2018-04-16 | 2018-04-16 | 文本识别方法、系统、机器设备和计算可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108596181A CN108596181A (zh) | 2018-09-28 |
CN108596181B true CN108596181B (zh) | 2022-02-25 |
Family
ID=63622694
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810338760.1A Active CN108596181B (zh) | 2018-04-16 | 2018-04-16 | 文本识别方法、系统、机器设备和计算可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108596181B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103077388A (zh) * | 2012-10-31 | 2013-05-01 | 浙江大学 | 面向便携式计算设备的快速文本扫读方法 |
CN106056114A (zh) * | 2016-05-24 | 2016-10-26 | 腾讯科技(深圳)有限公司 | 名片内容识别方法和装置 |
CN106445908A (zh) * | 2015-08-07 | 2017-02-22 | 阿里巴巴集团控股有限公司 | 文本识别方法和装置 |
CN106650736A (zh) * | 2016-09-28 | 2017-05-10 | 浪潮软件集团有限公司 | 一种基于深度学习的汉字识别系统的实现方法 |
CN107368826A (zh) * | 2016-05-13 | 2017-11-21 | 佳能株式会社 | 用于文本检测的方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR3048099B1 (fr) * | 2016-02-18 | 2018-03-23 | Airbus Operations | Systeme de controle permettant la comparaison de deux chaines de caracteres et procede d'installation d'une nouvelle configuration dans un aeronef |
-
2018
- 2018-04-16 CN CN201810338760.1A patent/CN108596181B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103077388A (zh) * | 2012-10-31 | 2013-05-01 | 浙江大学 | 面向便携式计算设备的快速文本扫读方法 |
CN106445908A (zh) * | 2015-08-07 | 2017-02-22 | 阿里巴巴集团控股有限公司 | 文本识别方法和装置 |
CN107368826A (zh) * | 2016-05-13 | 2017-11-21 | 佳能株式会社 | 用于文本检测的方法和装置 |
CN106056114A (zh) * | 2016-05-24 | 2016-10-26 | 腾讯科技(深圳)有限公司 | 名片内容识别方法和装置 |
CN106650736A (zh) * | 2016-09-28 | 2017-05-10 | 浪潮软件集团有限公司 | 一种基于深度学习的汉字识别系统的实现方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108596181A (zh) | 2018-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3465983B1 (en) | System and method of using a machine learning algorithm to meet sla requirements | |
CN110856018B (zh) | 一种基于云计算的监控系统中的快速转码方法及系统 | |
CN105468735A (zh) | 基于移动互联网海量信息的流式预处理系统及其方法 | |
WO2023221781A1 (zh) | 业务管理方法、系统、配置服务器及边缘计算设备 | |
WO2017138766A1 (ko) | 하이브리드 기반의 영상 클러스터링 방법 및 이를 운용하는 서버 | |
CN111221793B (zh) | 数据挖掘方法、平台、计算机设备及存储介质 | |
CN112055422B (zh) | 一种5g信令与用户面数据的关联方法及装置 | |
US11822983B2 (en) | Controller for off-cluster operations | |
CN111507257B (zh) | 图片处理方法、装置、系统、介质及程序 | |
CN110738156B (zh) | 一种基于消息中间件的人脸识别系统及方法 | |
DE102022120616A1 (de) | Selbstheilung und Rechenzentren | |
CN108596181B (zh) | 文本识别方法、系统、机器设备和计算可读存储介质 | |
CN117194562A (zh) | 数据同步方法和装置、电子设备和计算机可读介质 | |
US20230128271A1 (en) | Method, electronic device, and computer program product for managing inference process | |
CN112817732B (zh) | 一种适应云边协同多数据中心场景下的流数据处理方法及系统 | |
CN110688504B (zh) | 图像数据管理方法、装置、系统、设备及介质 | |
CN108984614B (zh) | 一种基于大数据环境下的视图像快速识别方法 | |
CN107026852B (zh) | 一种解决大规模视频云应用中的网络性能瓶颈的方法 | |
CN112667393A (zh) | 分布式任务计算调度框架搭建的方法、装置及计算机设备 | |
CN112181594A (zh) | 一种虚拟机热迁移方法、装置、设备及存储介质 | |
CN116108492B (zh) | 可横向扩展的数据防泄漏系统 | |
US11907188B2 (en) | Method, device, and program product for managing data pattern | |
US11893395B2 (en) | Restart controller | |
US20220294867A1 (en) | Method, electronic device, and computer program product for data processing | |
CN115378937B (zh) | 任务的分布式并发方法、装置、设备和可读存储介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |