CN1157673C - 用于查询用光学字符识别创建的电子文档的系统和方法 - Google Patents

用于查询用光学字符识别创建的电子文档的系统和方法 Download PDF

Info

Publication number
CN1157673C
CN1157673C CNB998059757A CN99805975A CN1157673C CN 1157673 C CN1157673 C CN 1157673C CN B998059757 A CNB998059757 A CN B998059757A CN 99805975 A CN99805975 A CN 99805975A CN 1157673 C CN1157673 C CN 1157673C
Authority
CN
China
Prior art keywords
node
optical character
probability
character identification
variant
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.)
Expired - Fee Related
Application number
CNB998059757A
Other languages
English (en)
Other versions
CN1300400A (zh
Inventor
威廉·彼得曼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Publication of CN1300400A publication Critical patent/CN1300400A/zh
Application granted granted Critical
Publication of CN1157673C publication Critical patent/CN1157673C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/22Character recognition characterised by the type of writing
    • G06V30/226Character recognition characterised by the type of writing of cursive writing
    • G06V30/2268Character recognition characterised by the type of writing of cursive writing using stroke segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/26Techniques for post-processing, e.g. correcting the recognition result
    • G06V30/262Techniques for post-processing, e.g. correcting the recognition result using context analysis, e.g. lexical, syntactic or semantic context
    • G06V30/268Lexical context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99932Access augmentation or optimizing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99934Query formulation, input preparation, or translation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99935Query augmenting and refining, e.g. inexact access

Abstract

为了补偿OCR扫描过程中误读的字符或字符串,对查寻请求进行了处理。在输入一个字母数字查寻(50)后,根据预先确定的可能OCR错误表、OCR错误发生概率和预先确定的发生概率阈值,该系统确定与输入的字母数字查寻请求关联的变体词(52)。当完成处理时,查寻引擎便使用这些变体词去查寻含有OCR扫描文档的数据库(54)。

Description

用于查询用光学字符识别创建的电子文档的系统和方法
技术领域
本发明是关于计算机数据库查寻的方法、装置和计算机产品,更具体地说,是关于查寻用光学字符识别技术创建的文档的方法、装置和计算机产品。
背景技术
商务和政府依靠的大量信息是而且一直是存储在纸上。随着易于访问的广域网、高速光扫描器和便宜的海量存储器的出现,在近些年已在试图使纸上信息成为机器可访问的。
机器可访问的信息与纸相比有很多优点。电子数据存储比在储藏室内的文档柜要便宜得多,特别是一旦考虑租金则更是如此。检索时间以秒或十分之几秒来计算,而不是分、小时或者甚至天,特别是对于大量归档的信息。信息复制成为小事一桩,而且许多人能同时访问一个文档。可惜,把大量存在的纸上信息转换成机器可访问的形式则是令人胆怯的任务。
一种方法使用光扫描器扫描每个文档并在扫描文档时自动处理每个文档。光扫描器创建一个文档的电子图像。光学字符识别(OCR)软件处理这电子图像并创建代表该文档的电子文本文档。“建索引”软件读每个文本文档并为所有这些文档建立索引。然后,查寻程序能使用这个索引得到含有指定词或词组合的文档的位置。对文档建索引和查寻的过程称作全文本建索引和检索。
全文本建索引和检索有两个强有力的优点:它是完全自动的(因而比较省钱),而且它是直接基于被扫描文档的实际内容。高端检索系统可以包括对上下文的敏感性,当用户指定文档的主题而不是它的严格短语时,这种对上下文的敏感性允许对含有相关词的文档确定其位置。万维网查寻引擎使用全文本检索引擎查寻成百万个文档。
有时查寻引擎没能对使用扫描器和OCR软件创建的文档确定其位置。这是由于在由扫描产生的文档所构成的大数据库中存在大量的错误。一个大数据库可能包括多于一百万个文档和千万个页面。为了查寻一个文档,用户必须指定三个或更多个词或词组的组合,以使文档是唯一的,或者至少使查寻结果限制在可管理的大小。如果可能的目标文档在其用于查寻的关键词中存在错误,则查寻引擎将不能对该文档确定其位置。OCR程序往往每页产生若干个错误。这种错误的例子是一个字母被错误地表示为类似的字母,如大写的“I”被误认为是小写的“l”。
对这个问题的一个解决办法是“模糊查寻”。模糊查寻是基于这样的概念,即含有错误的词在构造上类似于该词的真正版本。例如,“internet”和“intermet”在构造上是类似的。从第一个词中删去一个字母并在其他字母中替入一个“m”,则第一个词变成第二词。模糊查寻例行程序对把一词变成另一词所必须的改变计数。如果需要足够少的改变,则报告一次匹配。因为在查寻过程中数据库中的每个独特词都要单个地与该关键词比较以确定是否有匹配,所以这种方法在计算上是昂贵的。因为OCR错误经常产生“独特词”,所以含有大档案全文本索引的数据库能有超过百万个独特词要与每个关键词进行比较。即使在快速服务器上,这样的查寻也是费时间的。
除了它所用的时间量外,模糊查寻还能造成大量“命中”。在一个大数据库中,许多查寻返回数千个匹配。“Internet”与“intemet”类似,但也类似于“intem”,“undernet”,甚至“international”。对“boat”的查寻可能匹配“coat”,尽管OCR程序很不可能把“ b”混淆为“c”。
希望有一种机制,它允许查寻引擎准确地定位由OCR软件创建的电子文档。最好是这种机制能识别通常由OCR软件产生的错误并解释有最高发生概率的错误。此外,最好是该机制能使用户请求查寻时的处理量减至最小,以便减少每次查寻的时间。
发明内容
根据本发明,提供了一种方法和计算机产品,用于处理一个查寻请求以补偿光学字符识别(OCR)扫描过程中被不适当解释的字符或字符串。在收到一个字母数字查寻请求之后,本发明的机制根据预先定义的可能OCR替换表、OCR替换发生概率以及预先定义的发生概率阈值,确定与所收到的字母数字查寻相关联的变体词。然后对这些变体词查寻具有OCR扫描文档的数据库。
根据本发明的其他方面,通过确定代表查寻请求各部分的OCR解释的各词段,来确定变体词。对每个词段确定一个累积概率,如果一个词段的累积概率低于预先确定的阈值,则该词段被拒绝作为变体词。
根据本发明的又一些方面,创建了树数据结构,有分支节点和替换节点。每个分支节点代表OCR处理过程中一个字符的可能轮廓。每个替换节点代表与父分支节点对应的字符的可能OCR替换。沿着从根节点到叶节点的路径的替换节点构成变体词。由一替换节点的发生概率乘以该节点的祖父替换节点的累积发生概率,以此确定该替换节点的累积概率。
如从上面的概要容易理解的那样,本发明为用光学字符识别产生的电子文档的词查寻提供了一种新的改进的方法、装置和计算机产品。本发明减少了由于文档当初转换成电子形式时OCR错误造成的查询过程中漏失文档数。本发明还通过减小收到查寻请求后要完成的处理量来减少了完成一个查寻所需要的时间量。最后,因为以这种方式构成的变体词很少是数据库的自然语言中的合法词,所以极大地减少了误“命中”数。
附图简要说明
通过结合附图参考下文中的详细描述,将会更好地懂得本发明的前述各方面及伴随的优点,从而使这些变得更加易于解释,这里:
图1显示适于实现本发明的计算机系统的一些基本组成部分;
图2是流程图,说明为使本发明工作所使用的光学字符识别(OCR)统计表的产生过程;
图3和图4是流程图,说明根据本发明查寻一OCR扫描文档数据库的过程;
图5是示例节点图,说明根据本发明进行的预处理;以及
图6是关系图,说明在如图2所示创建的统计表中存储的来自图5查寻举例的信息的关系。
具体实施例
图1显示根据本发明构成的文本查寻系统20的组成部分。更具体地说,该文本查寻系统20包括具有预先存储的统计表23的存储器22,与存储器22耦合的预处理器24,用于向预处理器输入查询请求的用户接口装置26,用于从预处理器24接收查寻请求的查寻引擎28以及数据库30,在数据库30中包括由查寻引擎28查寻的预存文档。系统20还可以包括光扫描文档的扫描器32和处理由扫描器32产生的图像以产生供插入数据库30的文本文档的光学字符识别(OCR)程序34。接口装置26包括用户输入装置(如键盘和鼠标)和输出装置(如显示装置或打印机)。在这一例中,预处理器24和查寻引擎28位于主计算机21内。然而,如本领域普通技术人员容易理解的那样,预处理器24和查寻引擎28可以彼此远离。例如,预处理器24可以位于客户主计算机中,而查寻引擎28可以位于一服务器计算机系统,它通过公共或专用数据网络与预处理器24相连。在另一种配置中,用户接口装置26可连于一客户计算机,后者通过计算机网络,如广域网或局域网,与主计算机21通信。此外,数据库30可以驻留在主计算机21上或者驻留在一个单独的计算机上,它或者直接或者通过计算机网络与主计算机21通信。
在适当地运行查寻系统20之前,要产生统计表23。如图2中所示,在块40,确定每个字符或字符串的可能由OCR产生的变体(错误),以及每个变体的发生概率。可以以几种方式由实验完成建立可能变体及其发生概率列表。例如,将字处理系统产生的若干文档打印出来。然后由扫描器32扫描打印出的文档并由OCR程序34处理。然后将OCR扫描的文档与原始字处理产生的文档进行比较。确定其差异及差异的发生概率。用于产生统计表的OCR技术最好与把文档送入数据库所用的OCR技术相似。
在块42,产生一个表,它包括已确定产生了的所有字符和字符组合,以及相应的发生概率。最佳统计表23示于图6,并在下文中进一步详细讨论。
在产生统计表23之后,查寻系统20已准备好完成对数据库30的有效查寻,数据库30中包括用OCR技术送入数据库的文档。如图3中所示,在块50,由预处理器24接收一查寻请求。最好是由用户与用户接口装置26交互作用来送入查寻请求,然后将查寻请求传送到预处理器24。接下来,在块52,预处理器24根据统计表和预先确定的发生概率阈值,确定与所请求查寻相关联的变体查寻词。这一确定过程示于图4并在下文中更详细地描述。最后,在块54,查寻引擎28根据所确定的变体查寻词查寻数据库30。然后将查寻结果送到用户接口装置26供用户观看。
图4显示确定与所请求查寻关联的变体替换词的过程70。过程70构建一组节点,它们在一树形结构中链接。在讨论确定变体替换词的过程70之前,先提供对统计表23(图1)的解释。图6显示一示例统计表23,它包括关于OCR处理过程中特定错误统计概率的数据。
如图6中描述的那样,在本发明的一个实际实施例中,统计表23包括一个分支表200和一个替换表202。分支表200包含一组条目204、206、208和210,每个条目代表一个字符或字符组合。这些条目代表的字符或字符组合可以构成由OCR程序34(图1)处的电子图像。特别是,分支表条目代表OCR处理过程中OCR程序34可以认为是单个字符的字符或字符组合。图6只描述了少量这种条目,用以说明确定变体替换词的过程70(图4)。一个实际的统计表23包括多得多的条目,特别是字母表的每个字母都相应地有一个条目。最好是,在分支表中的条目204、206、208、210组织到一个允许快速查寻的结构中,如散列表(hash table)。散列表对于计算机编程领域的技术人员来说是众所周知的,这里只在为描述本发明必须时才讨论它。
每个分支表条目204、206、210有指针指向替换表202中相应的替换表条目212、214、216、218。一个替换表条目212、214、216、218包含一组OCR变体条目,这些变体条目代表由相应分支表条目代表的字符组合的可能的OCR解释。例如,如图6所示,分支表条目204代表单个字母“G”。“G”分支表条目204对应于和指向替换表条目212。替换表条目212包括三个变体条目220、222、224。变体条目220含有字母“G”,所代表的信息是一个OCR程序34(图1)可能把字母“G”解释成“G”。在这种情况下,该解释是一个正确解释。在图6中描述的变体条目220包括概率值226(.95),指出OCR程序34有95%的概率把字母“G”解释为“G”。下一个变体条目222含有一个“6”,以及概率值228(0.03)。这表明有3%的概率OCR程序34将把“G”解释为“6”。
替换表条目212也包括一个变体条目224,它指定为“无(none)”,以及概率值230,其值为0.01。这一条目代表的信息是有1%的概率,OCR程序34将丢失字符“G”或把它解释为不是字符。虽然图6所示替换表条目212只含有3个变体条目,但与代表字母“G”的分支表204相对应的实际替换表条目可能含有更多的条目。所列举的概率值不是实际的概率值,而是用于简化说明。OCR领域的技术人员将会认识,不同的环境,如不同的OCR技术和文档类型,将会在表23中引起稍有不同的值。最好是每个替换表条目包含的变体条目对应于其概率超过预先确定的阈值值的变体条目。为使表的大小减至最小,每个替换表条目可以假定为含有一个条目,它对应于其概率超过一预先确定的阈值值的替换,该预先确定的阈值必定大大小于从用户介面26送到预处理器24的请求中所用的最低阈值值。
类似地,代表字母“I”的分支表条目206对应于并指向替换表条目214。这一替换表条目描述4个变体条目232、234、236和238,分别代表可能的替换“I”,“l”,“1”(-),以及无。每个条目232、234、236、238包括相应的概率值240、242、244、246。
分支表条目208代表字符组合“IN”。一个OCR程序可能以一个统计发生概率错误地解释一个字符组合。例如,如图6中所示,分支表条目208对应于并指向替换表条目216,它含有对字符组合“IN”的可能解释。如图6中所示,替换表条目216含有两个变体248和250,代表替换“M”和无。为了便于说明,与变体条目248和250对应的概率值254和256分别为0.05和0.03。替换表条目216还可以包表一个代表可能的替换“IN”的变体条目,表明OCR程序可以把字母组合“IN”解释为正确的字母组合“IN”。然而,使用这一条目发现一变体查寻词重复了遵循对应于“I”和“N”的分支表条件所能发现的同一查寻词。所以,在替换表条目216中关于“IN”的条目最好删除,除非由“I”和“N”的那些值预测的概率统计差异要求它留在那里。如果它保留,则在处理一个查寻请求时“IN”的分支节点条目(下文描述)将取代关于“I”和“N”的分支节点条目。
图6中的分支表条目代表字符“S”并指向替换表条目218。替换表条目218有条目对应于OCR替换“S”、“5”和无。
替换表条目可以优化为排除与无字符对应的变体条目224、250和262。取而代之的是OCR程序34可已包含代码“知道”与每个分支表条目对应的空替换。在这种优化中可以对相应的空替换使用固定的概率值。
图5显示示例决策树110,它是在确定与一请求查寻词相关联的变体替换词的过程70的进行过程中由预处理器24创建的。决策树110代表OCR程序34在解释和翻译一个词的图像以创建等效文本的过程中可以遵循的路径。每个分支节点代表输入图像中的下一个字符的可能轮廓。因为OCR程序可能把两个或更多个字符理解为一单个字符,所以一个分支节点可能代表一个或多个字符。每个替换节点代表由该替换节点的父分支节点所代表的一个或多个输入字符的可能解释。为说明过程70,假定一个请求查寻词是“SING”。预处理器24完成创建决策树110的过程70,以确定其发生概率高于指定的预先确定阈值概率的查寻词可能变体。
决策树110有根节点120,它作为该树的根。根节点是替换节点的一个特殊情况,它有概率1.0。在根节点120之下有不同的节点级,包含一个分支节点级后跟一个替换节点级,后跟另一个分支节点级和另一个替换节点级。决策树110含有为完成确定变体替换词的过程70所必须的多个节点级。根节点120被认为是决策树110的零级。
存在于每个分支节点级的分支节点代表作为图像输入到OCR程序34(图1)中的字符或字符组合。每个分支节点对应于分支表200(图6)中的分支表条目204、206、208或210。在每个替换节点级存在的替换节点代表作为解释相应分支节点的结果由OCR程序产生的字符或字符组合。每个替换节点对应于替换表202中的一个变体条目。分支节点的每个子节点代表替换表条目中的一个变体条目,该条目是由对应于该分支节点的分支表条目指向的。
例如,在第一分支节点级112,根节点120有4个“子”分支节点:“S”分支节点122、“SI”分支节点124、“SIN”分支节点126以及“SING”分支节点128,它们分别代表输入字符“S”、“SI”、“SIN”及“SING”。这表明OCR程序34可以把这些字符组合的任何一个认作词“SING”的第一字符。
如图5所示,分支节点122有3个子节点:“S”替换节点130、“5”(五)替换节点132以及空替换节点134。这些替换节点代表的信息是OCR程序34可能把“SING”中的“S”分别解释为“S”、“5”或无字符。如下文中进一步讨论的那样,“S”替换节点130、“5”替换节点132及空替换节点134是从统计表23中的分支表条目210所对应的替换表条目218(图6)中取出的。
在第一替换节点级113上的每个替换节点130、132、134有零个或多个子分支节点。在第二分支节点级114上的每个分支节点代表OCR程序34在处理先前的字符或字符组合之后感觉到的下一个字符或字符组合,这里的先前字符或字符组合由新分支节点的祖父节点代表。例如,如图5所示,在处理3由“S”分支节点122代表的字符“S”,并把“S”解释为由“S”替换节点130代表的字符“S”之后,要处理的下一个字符或字符组合或者是“I”、“IN”或“ING”,如“I”分支节点135、“IN”分支节点136及“ING”分支节点138所分别代表的那样。
类似地,在处理3由“S”分支节点122代表的“S”并把“S”解释为由“5”(五)替换节点132代表的“5”之后,由OCR程序34处理的下一个字符或字符组合是“I”、“IN”或“ING”,如“I”分支节点140、“IN”分支节点142及“ING”分支节点144所分别代表的那样。请注意,分支节点140、142和144分别类似于分支节点135、136和138,因为这两组分支节点都代表在处理了祖父分支节点122所代表的字符组合之后由OCR程序34处理的下一个字符或字符组合。
在第二替换节点级115上的替换节点代表它们在第二分支节点级114上的父分支节点的可能替换。通过在统计表23的分支表200(如图6所示)中查找其分支节点级114上的父分支节点而得到每个替换节点。例如,分别代表可能的替换“I”、“l”、“1”(-)和无的“I”替换节点146、“l”替换节点148、“1”(-)替换节点149以及空替换节点150是“I”分支节点134的子节点。这些替换节点对应于替换表条目214,它在图6中显示为对应于分支表条目206。
每个替换节点有相应的概率值,它代表OCR识别过程中完成相应的替换以及该替换节点的前辈替换节点们所代表的所有替换的概率。对任何替换节点的概率值包含它的前辈替换节点的概率。
对应于一个替换节点的累积概率是通过把替换表中相应变体条目中的概率值乘以该替换节点的祖父替换节点的累积概率计算出来的。例如,“I”替换节点146对应于变体条目232(图6),它的概率值240为0.92。然后这个值0.92乘以祖父“S“替换节点130的累积概率,它是0.98。所以,“I”替换节点146的累积概率是0.92×0.98,或者说0.9016。类似地,对应于“l”(el)替换节点148的累积概率是0.02×0.98,或者说0.0196。
如上文讨论的那样,图5中所示决策树110是一个示例,是为了演示目的。在本发明的实际实践中,图5所示的某些节点可能不被创立,或者还可能有创立的其他节点。在本发明的最佳实施例中,只有当从根节点120到那些节点的路径所代表的累积替换具有的概率超过一指定阈值概率时才能在替换树110中创建那些节点。
返回到图4,现在结合图5中所示示例决策树110和图6中所示相应的示例统计表23,讨论与所请求查寻关联的变体替换词的确定过程70。确定变体替换词的过程70包括创建决策树,如图5上的决策树110。在过程70的执行过程中,预处理器24维持的数据称作“当前节点”。
在块71,预处理器24创建根节点120并把此根节点设为当前节点。在步骤72,预处理器创建当前替换节点的子分支节点。如前文讨论的那样,每个子分支节点代表由OCR程序34对下一个字符的可能识别。当根节点120是当前节点时,尚没有字符被处理过。所以,所创建的子分支节点是分支节点122、124、126和128,分别对应于输入字符识别为“S”、“SI”、“SIN”和“SING”。
在步骤74,确定是否存在当前节点的子分支节点,它尚未被充分处理。在创建新分支节点后第一次达到第一步骤时,还没有任何子分支节点已被处理过。所以回答是“是”,于是处理进入步骤76。在步骤76,下一个未被处理的子分支节点被设为当前节点。在图5的示例决策树中,第一次完成步骤76,分支节点122被设为当前节点。在步骤80,确定对于当前分支节点是否还存在尚未被检验的任何替换。这一确定包括检验与当前分支节点对应的替换表202中的条目。如图6中所示,替换表条目218对应于有字符“S”的分支表条目210,它对应于“S”分支节点122。在替换表条目218中,每个变体条目258、260、262是潜在的OCR替换。在第一次进行步骤80时,尚没有任何替换已被检验过。在步骤82,对当前节点检索出一个替换。例如,在第一次进行步骤82时,从替换条目表218中检索出替换“S”。
在步骤84,计算检索出的OCR替换的累积概率。这一计算是把与该替换对应的概率值乘以当前分支节点122的父替换节点的累积概率来完成的。在过程的这一点,父节点是根节点120,它有累积概率1.0。所以“S”的OCR替换的累积概率是0.98×1.0=0.98。
在步骤86,确定计算出的累积概率是否超过预先确定的阈值。如果累积概率超过预先确定的阈值,则在步骤88创建对应于检索出的替换的新替换节点。例如,创建了“S”替换节点130。在步骤86计算出的累积概率存储在“S”替换节点130中。然后把新创建的节点设为当前节点。然后流程控制回到步骤72,在那里创建当前节点的新的子分支节点。在图5的示例决策树110中,创建分别代表“I”、“IN”、和“ING”可能的下一字符识别的分支节点135、136和138。
上面讨论的步骤系列重复进行,以创建新的分支节点和替换节点,并使决策树110下行。如图5所示,创建了“N”分支节点152,子“N”替换节点154、“G”分支节点156及“G”替换节点158。
在步骤88创建“G”替换节点158并使它成为当前节点之后,在步骤72已没有要创建的子分支节点。这是因为输入词“SING”的所有字符已被处理。所以,在步骤74,确定已经没有当前节点的任何子分支节点尚未被处理。然后流程控制进到步骤94,在那里确定当前节点是否是根节点。在当前的例子中,当前节点不是根节点,于是流程控制进到步骤96,在那里确定当前替换节点是否有任何子节点。如果没有子节点,则已找到了有效查寻词。从根节点到当前节点的路径上的替换节点序列代表该查寻词。在当前的例子中,“S”替换节点130、“I”替换节点146、“N”替换节点154及“G”替换节点158的组合代表了查寻词“SING”,它是本例中输入图像的准确解释。
在步骤100,当前替换节点的父分支节点被设为当前节点。在本例中,“G”分支节点156被设为当前节点。然后流程控制进到步骤80,以检验当前节点的额外替换。然后,如上文讨论的那样,过程继续,以创建额外的替换节点,如图5例子中所示“6”(六)替换节点160。在步骤98,发现了以“6”(六)结尾的有效查寻词。所以第二个有效查寻词由替换节点130、146、154和160代表,它拼写成“SIN6”。
在步骤86,如果所计算的累积概率不超过预先确定的阈值,则流程进到步骤90,在那里把当前分支节点的父替换节点设为当前节点。在图5所示示例决策树中,当“G”分支节点156是当前节点时便发生这种情况,于是检验OCR替换空的累积概率。在图5中,显示代表该空字符的虚幻空替换节点162,以说明该空替换被检验了,但并未创建一个替换节点。在本例中,父“N”替换节点154被设为当前节点,于是流程控制返回到步骤74,以确定是否有当前节点的额外子分支节点尚未被充分处理。如上文讨论的那样,如果象本例中那样没有未被处理的子分支节点,则流程进到步骤94,然后进到步骤96。在本例中,在步骤96有当前节点(“N”替换节点154)的子分支节点,所以没有找到查寻词,于是流程进到步骤1 00,在那里父分支节点被设为当前节点。以这种方式,过程70执行了决策树110的任务。过程70最终达到步骤80,这时“I”分支节点135是当前节点。如图5中描述的那样,OCR替换“l”(el)被检验并创建相应的“l”(el)替换节点148。为简化图5中所示决策树110,未划出“l”(el)替换节点148的后代节点。类似地,创建“1”(-)替换节点149,过程遵循它的后代节点(未画出)。如图5中所示,虚幻空替换节点150显示空替换被检验,但未创建替换节点。
如计算机编程领域的技术人员及其他人易于理解的那样,继续确定变体替换词的过程70造成图5所示决策树110。如图所示,“IN”分支节点136有子“M”替换节点164和丝节点168和“6”(六)子替换节点170。显示出虚幻空替换节点174和虚幻空替换节点176,以说明本发明的过程所考虑的,但并未创建这些节点,因为它们各自的概率低于预先确定的阈值。
最终,根节点120变为当前节点,于是过程进到步骤74,在那里已经没有尚未被充分处理的根目录额外子分支节点。然后流程控制进到步骤94,在那里确定当前节点是根节点。在这一点,过程70完成了。所有有效的变体查寻词已创建。如图5中描述的那样,该过程确定变体查寻词包括“SING”、“SIN6”、“SM6”。图5中未示出其他的变体查寻词。
如计算机编程领域的技术人员及其他人将会进一步理解的那样,对上述过程70可进行各种改变而不离开本发明的精神和范围。例如,该过程可以确定不需要创建某些分支节点,如分支节点124、126和128,因为它们代表的概率低于指定的阈值。此外,在过程70中的步骤的顺序可以改变而不离开本发明。
尽管已显示和描述了本发明的最佳实施例,但是将会理解,这里可进行各种改变而不离开本发明的精神和范围。

Claims (15)

1.一种用于利用光学字符识别文档数据库将变体词与字母数字查寻请求相关联的基于计算机的方法,该方法包括:
获得一个字母数字查寻请求;
根据预先确定的光学字符识别替换数据中所包括的一组光学字符识别替换和与每个光学字符识别替换对应的发生概率,产生至少一个与该字母数字查寻请求关联的变体词;以及
在数据库中识别出有至少一个所产生的变体词的任何电子文档。
2.权利要求1的方法,这里产生至少一个变体词包括:
确定一个候选变体词段,每个候选变体词段包括一个词的至少一部分;
将所述候选变体词段中每个字母的发生概率相乘以生成每个候选变体词段的发生概率;以及
如果该候选词段的发生概率不高于预先确定的概率阈值,则把该候选变体词段从所述至少一个变体词中排除。
3.权利要求2的方法,这里确定该候选变体词段的发生概率是否高于预先确定的概率阈值的过程包括:
根据预先确定的光学字符识别替换数据,确定与该候选变体词段对应的多个光学字符识别替换;
组合对应于该候选变体词的每个光学字符识别替换所对应的发生概率,以确定与该候选变体词段对应的发生概率;以及
将与该候选变体词段对应的发生概率与预先确定的概率阈值进行比较。
4.权利要求1的方法,进一步包括:
根据预先确定的光学字符识别替换数据,确定与字母数字查寻请求对应的多个光学字符查寻替换;以及
将这多个光学字符识别替换组合,以创建候选变体词段。
5.权利要求1的方法,进一步包括:
创建有多个替换节点的树状数据结构,每个替换节点对应于与字母数字查寻请求相对应的光学字符识别替换的一个元素,该树状数据结构有一个根节点和至少一个叶节点,每个叶节点由对应于该叶节点的一个路径链接到根节点;以及
把在对应于一个所述叶节点的路径上的每个替换节点所对应的光学字符识别替换组合起来,以创建变体词。
6.权利要求5的方法,进一步包括:
根据预先确定的光学字符识别替换数据,对每个替换节点确定一相应的发生概率;以及
对每个替换节点确定这相应的发生概率是否超过一预先确定的阈值;以及
当与一替换节点对应的发生概率不超过该预先确定的阈值时,从所述至少一个变体词中排除与此替换节点对应的变体词。
7.权利要求5的方法,进一步包括:
在该树状数据结构中创建一个分支节点,该分支节点对应于字母数字查寻请求的光学字符识别过程中的一个字符的轮廓;
创建至少一个替换节点,它是该分支节点的子节点,该子节点对应于该分支节点所对应字符的光学字符识别替换。
8.权利要求7的方法,这里与替换节点对应的光学字符识别替换包括两个字符。
9.权利要求7的方法,这里与替换节点对应的光学字符识别替换代表零个字符。
10.权利要求1的方法,这里确定至少一个变体词包括确定多个变体词,而且查寻数据库发生在确定这多个变体词之后。
11.一种基于计算机的用于查询由光学字符识别创建的电子文档的数据库的方法,该方法包括:
接收一个字母数字查寻请求;
根据预先确定的光学字符识别替换数据,确定至少一个与该字母数字查寻请求关联的变体词,该光学字符识别替换数据包括一组光学字符识别替换和与每个光学字符识别替换对应的发生概率,这里该变体词不同于该字母数字查寻请求;
创建有多个替换节点的树状数据结构,每个节点对应于与字母数字查寻请求相对应的光学字符识别替换的一个元素,该树状数据结构有一个根节点和至少一个叶节点,每个叶节点由对应于该叶节点的一个路径链接到根节点;
把在对应于一个所述叶节点的路径上的每个替换节点所对应的光学字符识别替换组合起来,以创建变体词;以及
根据所述至少一个已确定的变体词查寻电子文档数据库。
12.权利要求11的方法,进一步包括:
根据预先确定的光学字符识别替换数据,对每个替换节点确定一相应的发生概率;以及
对每个替换节点确定这相应的发生概率是否超过一预先确定的阈值;以及
在对应于替换节点的发生概率不超过预先确定的阈值,从所述至少一个变体词中排除对应于替换节点的变体词。
13.权利要求11的方法,进一步包括:
在该树状数据结构中创建一个分支节点,该分支节点对应于字母数字查寻请求的光学字符识别过程中的一个字符的轮廓;
创建至少一个替换节点,它是该分支节点的子节点,该子节点对应于该分支节点所对应字符的光学字符识别替换。
14.权利要求13的方法,这里与替换节点对应的光学字符识别替换包括两个字符。
15.权利要求13的方法,这里与替换节点对应的光学字符识别替换有零个字符。
CNB998059757A 1998-04-01 1999-03-26 用于查询用光学字符识别创建的电子文档的系统和方法 Expired - Fee Related CN1157673C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US5384698A 1998-04-01 1998-04-01
US09/053,846 1998-04-01

Publications (2)

Publication Number Publication Date
CN1300400A CN1300400A (zh) 2001-06-20
CN1157673C true CN1157673C (zh) 2004-07-14

Family

ID=21986949

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB998059757A Expired - Fee Related CN1157673C (zh) 1998-04-01 1999-03-26 用于查询用光学字符识别创建的电子文档的系统和方法

Country Status (13)

Country Link
US (1) US6480838B1 (zh)
EP (1) EP1073972A4 (zh)
JP (1) JP2002510089A (zh)
KR (1) KR100627195B1 (zh)
CN (1) CN1157673C (zh)
AU (1) AU770515B2 (zh)
BR (1) BR9909337A (zh)
CA (1) CA2326901A1 (zh)
EA (1) EA003619B1 (zh)
HK (1) HK1038087A1 (zh)
ID (1) ID29592A (zh)
IL (1) IL138806A0 (zh)
WO (1) WO1999050763A1 (zh)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000007117A2 (en) * 1998-07-30 2000-02-10 British Telecommunications Public Limited Company An index to a semi-structured database
US6532476B1 (en) * 1999-11-13 2003-03-11 Precision Solutions, Inc. Software based methodology for the storage and retrieval of diverse information
US7600183B2 (en) * 2000-06-16 2009-10-06 Olive Software Inc. System and method for data publication through web pages
DE60118399T2 (de) * 2000-08-24 2006-12-07 Olive Software, Inc., Denver System und verfahren zur automatischen aufbereitung und suche von abgetasteten dokumenten
US7254773B2 (en) * 2000-12-29 2007-08-07 International Business Machines Corporation Automated spell analysis
JP4421134B2 (ja) * 2001-04-18 2010-02-24 富士通株式会社 文書画像検索装置
US20020176628A1 (en) * 2001-05-22 2002-11-28 Starkweather Gary K. Document imaging and indexing system
US20030084031A1 (en) * 2001-10-31 2003-05-01 Tarquini Richard P. System and method for searching a signature set for a target signature
US20040059726A1 (en) * 2002-09-09 2004-03-25 Jeff Hunter Context-sensitive wordless search
US7155427B1 (en) * 2002-10-30 2006-12-26 Oracle International Corporation Configurable search tool for finding and scoring non-exact matches in a relational database
JP2004171316A (ja) * 2002-11-21 2004-06-17 Hitachi Ltd Ocr装置及び文書検索システム及び文書検索プログラム
US20030177115A1 (en) * 2003-02-21 2003-09-18 Stern Yonatan P. System and method for automatic preparation and searching of scanned documents
US7391527B2 (en) * 2003-04-29 2008-06-24 Hewlett-Packard Development Company, L.P. Method and system of using a multifunction printer to identify pages having a text string
US8718367B1 (en) * 2009-07-10 2014-05-06 Intuit Inc. Displaying automatically recognized text in proximity to a source image to assist comparibility
US9069731B2 (en) 2009-12-29 2015-06-30 Olive Software Inc. System and method for providing online versions of print-medium publications
CN102486834A (zh) * 2010-12-06 2012-06-06 北大方正集团有限公司 一种处理字符的方法和装置
US9846688B1 (en) 2010-12-28 2017-12-19 Amazon Technologies, Inc. Book version mapping
US8798366B1 (en) * 2010-12-28 2014-08-05 Amazon Technologies, Inc. Electronic book pagination
CN102779140B (zh) * 2011-05-13 2015-09-02 富士通株式会社 一种关键词获取方法及装置
CN103488982A (zh) * 2012-06-11 2014-01-01 富泰华工业(深圳)有限公司 文字识别系统及方法
US9411801B2 (en) * 2012-12-21 2016-08-09 Abbyy Development Llc General dictionary for all languages
US9659109B2 (en) * 2014-05-27 2017-05-23 Wal-Mart Stores, Inc. System and method for query auto-completion using a data structure with trie and ternary query nodes
RU2598300C2 (ru) * 2015-01-27 2016-09-20 Общество с ограниченной ответственностью "Аби Девелопмент" Способы и системы автоматического распознавания символов с использованием дерева решений
US10671677B2 (en) 2015-06-12 2020-06-02 Smugmug, Inc. Advanced keyword search application
KR102605381B1 (ko) 2022-10-25 2023-11-23 (주)미래환경플랜건축사사무소 설비 사양의 자동 인식을 위한 설비 명판 광학 문자 판독 시스템 및 방법

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1311486A (en) * 1969-03-31 1973-03-28 Dunlop Holdings Ltd Floor structures for inflatable boats
US3969698A (en) * 1974-10-08 1976-07-13 International Business Machines Corporation Cluster storage apparatus for post processing error correction of a character recognition machine
US4654875A (en) * 1983-05-23 1987-03-31 The Research Foundation Of State University Of New York System to achieve automatic recognition of linguistic strings
JPH0797373B2 (ja) * 1985-08-23 1995-10-18 株式会社日立製作所 文書フアイリングシステム
JPH03144877A (ja) * 1989-10-25 1991-06-20 Xerox Corp 文脈的文字または音素認識方法及びシステム
US4977602A (en) * 1989-11-20 1990-12-11 Eastman Kodak Company Character normalization using an elliptical sampling window for optical character recognition
US5875263A (en) * 1991-10-28 1999-02-23 Froessl; Horst Non-edit multiple image font processing of records
TW222337B (zh) * 1992-09-02 1994-04-11 Motorola Inc
TW401567B (en) * 1992-10-09 2000-08-11 Matsushita Electric Ind Co Ltd Certifiable optical character recognition
US5594814A (en) * 1992-10-19 1997-01-14 Fast; Bruce B. OCR image preprocessing method for image enhancement of scanned documents
EP0639814B1 (en) * 1993-08-20 2000-06-14 Canon Kabushiki Kaisha Adaptive non-literal textual search apparatus and method
US5606690A (en) * 1993-08-20 1997-02-25 Canon Inc. Non-literal textual search using fuzzy finite non-deterministic automata
US5465309A (en) 1993-12-10 1995-11-07 International Business Machines Corporation Method of and apparatus for character recognition through related spelling heuristics
US5461488A (en) 1994-09-12 1995-10-24 Motorola, Inc. Computerized facsimile (FAX) system and method of operation
US5802515A (en) * 1996-06-11 1998-09-01 Massachusetts Institute Of Technology Randomized query generation and document relevance ranking for robust information retrieval from a database

Also Published As

Publication number Publication date
BR9909337A (pt) 2001-11-06
EP1073972A1 (en) 2001-02-07
EP1073972A4 (en) 2005-03-30
AU770515B2 (en) 2004-02-26
US6480838B1 (en) 2002-11-12
EA003619B1 (ru) 2003-08-28
KR20010034738A (ko) 2001-04-25
KR100627195B1 (ko) 2006-09-22
AU3366799A (en) 1999-10-18
CN1300400A (zh) 2001-06-20
IL138806A0 (en) 2001-10-31
ID29592A (id) 2001-09-06
CA2326901A1 (en) 1999-10-07
HK1038087A1 (en) 2002-04-04
JP2002510089A (ja) 2002-04-02
EA200001013A1 (ru) 2001-06-25
WO1999050763A1 (en) 1999-10-07

Similar Documents

Publication Publication Date Title
CN1157673C (zh) 用于查询用光学字符识别创建的电子文档的系统和方法
CN100485603C (zh) 用于从搜索查询中产生概念单元的系统和方法
US5963954A (en) Method for mapping an index of a database into an array of files
US5915251A (en) Method and apparatus for generating and searching range-based index of word locations
US5745890A (en) Sequential searching of a database index using constraints on word-location pairs
US5765150A (en) Method for statistically projecting the ranking of information
US5745889A (en) Method for parsing information of databases records using word-location pairs and metaword-location pairs
CN1183466C (zh) 字型访问,登记,显示和打印的方法
US8078625B1 (en) URL-based content categorization
US5745899A (en) Method for indexing information of a database
US5832500A (en) Method for searching an index
US5864863A (en) Method for parsing, indexing and searching world-wide-web pages
US5745898A (en) Method for generating a compressed index of information of records of a database
US5970497A (en) Method for indexing duplicate records of information of a database
US5333317A (en) Name resolution in a directory database
EP1486891A2 (en) Document retrieval apparatus
US20040243569A1 (en) Technique for ranking records of a database
US5914679A (en) Method for encoding delta values
CN111737559A (zh) 资源排序方法、训练排序模型的方法及对应装置
JP2006215735A (ja) 重複Webサイト検出装置
Yadav et al. Architecture for parallel crawling and algorithm for change detection in web pages
KR100434718B1 (ko) 문서 색인 시스템 및 그 방법
US11755680B2 (en) Adaptive recognition of entities
CN117290523B (zh) 基于动态索引表的全文检索方法及装置
MXPA00009679A (es) Sistema y metodo de busqueda en documentos electronicos creados con reconocimiento optico de caracteres

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1038087

Country of ref document: HK

C19 Lapse of patent right due to non-payment of the annual fee
CF01 Termination of patent right due to non-payment of annual fee