地名表示方法、地名字符串识别方法与装置的制作方法

文档序号:8028630阅读:689来源:国知局
专利名称:地名表示方法、地名字符串识别方法与装置的制作方法
技术领域
本发明涉及地名组表示方法、地名字符串识别方法与装置,特别涉及适合采用用于读取文件上所记载地名的装置中的地名字符串存储装置与核对装置的合适的地名组表示方法、地名字符串识别方法与装置。
从图像中读取都道府县名、市镇村名、字名等地名单词排列而成的字符串(以下称为地名字符串)的字符识别装置,一般构成为具有以下三种功能(1)分离字符图案(字符分离);(2)对各种字符图案的字种(字符码)进行识别(字符识别);(3)将字符的识别结果同预存储的地名单词的排列核对。
关于字符串核对方法的先有技术,例如已知有根据丸川等方式,《情报处理学会论文志》,35卷6期“用于手写汉字住址识别的纠错算法”。此外,关于将字符分离、识别与核对一体化的方式的先有技术,已知有基于隐马尔可夫模型的方式(O.E.Agazzi et al:“Connected and Degraded Text Recognition Using Planar HiddenMarkov Models”,Proceedings of International Conference onAcoustics,Speech and Signal Processing)和搜索式识别字符串的方法(Koga et al:“Lexical Search Approach for Character-StringRecognition”,Third International Association for Pattern RecognitionWorkshop on Document Analysis Systems 1998)。
在上述的先有技术中,为了进行字符串的核对处理,需要有预先存储所出现的地名字符串的装置、地名字符串辞典等,而作为地名字符串词典有以下三种(1)存储于文件中的“词典源文件”,这是后述的“地名表示规则文件”等,是为了进行新规则的制定或修正时可能需要编辑的。
(2)存储于存储器中的“词典表”等,这是后述的“地名表示网络”等,是将词典文件内容以适合核对处理的形式于存储器中扩展的结果。
(3)前述(1)与(2)的中间阶段的“词典二进制文件”,这是为了容易于存储器上扩展,将预先施行了扩展处理的一部分的结果存储于文件中的形式。
用于先有技术中词典源文件的形式多数情形是不明确的。但是,先有技术都是以把能出现的地名字符串预先无遗漏地存储于词典表中为前提,因此可以考虑将把能出现的地名字符串预先无遗漏地列举的文本文件用作词典源文件。
上述的现有技术必须准备用于字符串核对处理的词典,但在日语中,以不同的字符串来表示同一地区的不同表示形式是很多的,这就难以无遗漏地将能出现的地名字符串编目,因而事实上就有不可能由人力来编成这样完整的词典的问题。
在日语的地名的不同表示中,具有因使用字符不同而有的相异表示、因单词的省略而有的相异表示、因附加的字符串而有的相异表示以及因通称表示而有的相异表示。下面就这些相异表示的例子进行说明。
(1)因使用文字不同而有的相异表示例如有“小沢”与“小澤”、“市ヶ谷”与“市ヶ谷”以及“市が谷”等。
(2)因省略单词而有的相异表示例如有省略“大字”、“字”的相异表示。
省略都道府县名的相异表示多见于邮寄件的地址名等,例如有“琦玉県川越市大字小ケ谷”和“川越市大字小ケ谷”等。此外,作为省略“大字”、“字”的例子有“琦玉県川越市大字小ケ谷”和“琦玉県川越市小ケ谷”等。
(3)因附加字符串而有的相异表示在小字名等原住址已属特定情况下附加字符串,成为相异的表示,例如有“琦玉県川越市大字小ケ谷”和“琦玉県川越市大字小ケ谷東関”等。
(4)因通称表示而有的相异表示在京都等处多能看到例如“京都市下京区大政所町”和“烏丸通仏光寺下る”等。
如前所述,在地名相异表示中有种种形式,以“琦玉県川越市小ケ谷”这一地名为例,调查与之对应的相异表示时,可知有如下所示的极多的相异表示“琦玉県川越市小ケ谷”“琦玉県川越市小ケ谷”“琦玉県川越市小が谷”“琦玉県川越市大字小ケ谷”“琦玉県川越市大字小ケ谷”“琦玉県川越市大字小が谷”“川越市小ケ谷”“川越市小ケ谷”“川越市小が谷”“川越市大字小ケ谷”“川越市大字小ケ谷”“川越市大字小が谷”在上述例子中还有“琦玉県川越市小ケ谷东田”、“琦玉県川越市字小ケ谷東関”、“琦玉県川越市小ケ谷西関”等并用小字名的情形,若考虑以上列出的12个相异表示的组合,共计可有84个相异的表示。
在先有技术情形,需要组织人力将上述多种相异表示的全部组合形式编目到辞典文件中,因此,为了编成词典文件,便存在有需用大量人力的问题。但是,在相异表示特多的京都市等的情形,市内的镇名和通称的叫法总计有数十万之多,用人力来编制完整的这类辞典,事实上不可能。
本发明的首要目的即在于提供能解决上述问题、易于无遗漏地于字符串核对用词典中编目多种具有相异表示的地名表示方法。
如前所述,在地名表示中有许多相异表示的情形,即使假定能无遗漏地将相异表示记述于词典中,但在先有技术条件下,会有词典存储容量大,处理时间也因相异表示的数量而增大的问题。
作为解决上述问题的技术已知有刊载于Koga等的“LexicalSearch Approach for Character-String Recognition”,(ThirdInternational Association for Pattern Recognition Workshop onDocument Analysis Systems 1998)中,通称作为线索(Trie)的数据形式,使词典存储容量小进而能高速进行核对处理的技术。这项技术是只把表示中有多样性的部分作为树形数据来表示地名,而易从字符串集来自动生成线索的。
上述技术例如容易从“琦玉県川越市小ケ谷东田”、“琦玉県川越市字小ケ谷东関”、“琦玉県川越市小ケ谷西関”这三种表示中生成以下的线索。 这样,下面将以网络所表示的地名字符串中字符连接关系称作地名表示网络。
但在这种线索型的地名表示网络中,当字符串的一部分不同时,若把它们完全作为别的字符串处理,就不得不生成别的分枝,因此,例如对应于“琦玉県川越市小ケ谷”的相异表示组的线索,就成为如下形式 (以下省略)如前所述,即使是用线索型的地名表示网络的方法来表现相异表示,也仍会产生词典容量与处理时间都大幅度增大的问题。
因此,本发明的目的即在于提供用于识别多种相异表示的地名词典中的具有使存储容量小且能进行高速核对处理的存储形式的地名表示方法、地名字符串识别方法与装置。
根据本发明,为了实现上述目的,当表示地区的地名虽是相异的字符串而由意指同一地区的单词排列来表现时,在表示具有所表现的这许多相异表示的地名字符串的集合的地名表现方法中,对于构成地名字符串的一部分或全部的各个部分字符串,定义字符或语法类别的排列,通过由字符或已定义的语法类别排列所组成的语法类别,来表示地名字符串。
为了实现上述目的,还可以采用表示语法类别能否置换为另外某种字符或语法类别序列的置换符号以及某种语法类别示明表示特定地区的地名符号来表示上述地名字符串。
为了实现上述目的,还可以通过判断输入字符串中的部分字符串与预先给出的对于构成地名字符串的一部分或全部的各个部分字符串定义字符或语法类别的排列中的,由字符或已定义的语法类别的排列所组成的语法类别表示的地名字符串之一是否相一致来将输入字符串与地名进行。
为了实现上述目的,还可以设置如下装置在构成地名字符串的一部分或全部的部分字符串中,定义字符或语法类别的排列,对由字符或已定义的语法类别的排列组成的语法类别所表示的地名字符串进行存储的存储装置;输入字符串的输入装置;核对输入的字符串是否为前述存储装置中已存储的地名字符串的核对装置;以及输出核对结果的装置。
为了实现上述目的,还可以设置将文件表面的颜色深浅变换为电信号而得到的图像作为输入,来读取文件上所记载的字符的字符读取装置,而前述的输入装置则输入来自此字符读取装置的字符串。
具体地说,本发明为了达到上述目的,采用了上下文自由文法的生成规则来表现地名的相异表示。上下文无关的自由文法是由生成规则表示某个语句的成份(语法类别)能否置换为某个其他的语法类别序列(《自然言语处理入门》,近代科学社,ISBN4-7649-0143-9)。本发明将采用作为生成规则表现方法之一的已知的BNF记法(Backus-Naur-Form)(中田编辑ISBN4-7828-5057-3),为适于地名表示而扩展成的扩展的BNF(Backs-Naur-Form)记法。
根据上述生成规则,能够把典型的相异表示的字符图案例如“ケ”、“ヶ”、“が”作为一种语法类别定义,而可以简洁地表现地名的相异表示的集合。此外,通过应用BNF记法所采用的选择记号,还可更简洁地表现地名的相异表示。于是,根据本发明,能易于制成无遗漏地记载着多种相异表示的集合的词典。
BNF记法是用置换、可选、选择等记号表现上下文无关文法的生成规则,采用下述记号∷=置换意为能由右边的语法类别或字符的配列置换左边的语法类别。可选意为[]内的记述可有可无。
| 选择意为右边与左边其中之一。
作为例子,下面例示由BNF记法表现前述“琦玉県川越市小ケ谷”相异表示的生成规则。〈wケ〉∷=ヶ|ケ|が〈琦玉県川越市小ケ谷〉∷=[埼玉県]川越市[大字]小〈wヶ〉谷[[字]東田|東関|西関]此外,通过采用上述的表现形式,能将地名表示网络小型化。在上述表现形式下,部分字符串的不同可采用记号“[]”和“|”表现于表面上。因此,当部分字符串不同而有相异表示时,易在网络上设定把这部分旁路的路径。例如前述的BNF记法的表示能够置换为如下所示的紧致的网络。若根据传统的那种字符串的排列,则难以生成这种紧致的网络。 如上所述,根据本发明,即使在地名的表示中有很多相异表示时,也能以很少的人力编制成穷尽所有地名字符串的地名词典。此外也容易构成能进行高速核对处理的网络形式的地名词典。
图1是说明本发明实施形式的地名字符串识别处理例的流程图。
图2例示根据编辑地名字符串生成规则表现的地名表示和不用生成规则罗列的相异表示。
图3概示根据生成规则制成的地名表示网络。
图4说明将地名表示网络实装到计算机上时的数据形式。
图5是流程图,说明根据地名字符中生成规则生成地名表示网络的处理。
图6说明生成的语法树。
图7是流程图,说明根据地名表示生成规则的地名表示网络生成函数的处理操作。
图8说明根据函数proc的地名表示网络的生成过程(其一)。
图9说明根据函数proc的地名表示网络的生成过程(其二)。
图10示明根据地名表生成规则生成的地名表示网络组。
图11是流程图,说明应用先有技术生成地名表示网络的处理程序。
图12举例说明根据先有技术生成地名表示网络的生成过程。
图13例示根据先有技术生成的地名表示网络。
图14是流程图,说明图1所示的地名识别处理。
图15是流程图,说明图14中所示字符串核对处理的处理操作。
图16是说明函数srch的处理操作的流程图。
图17是例示根据本发明实施形式的地名字符串识别处理的系统结构的框图。
图18是示明地名字符串生成规则编辑装置结构的框图。
图19是示明本发明其他实施形式结构的框图。
图20说明显示器上显示的图像例。
图中各标号的意义如下101,地名字符串生成规则的编辑处理;102,地名字符串生成规则文件;103,地名表示网络生成处理;104,地名识别处理;1404,字符核对处理;1701,邮件分检机;1702,扫描器;1703,延迟电路;1704,分选机;1705,地名识别装置;1706,输入用接口;1707,运算处理装置;1708,输出用处理装置;1710,存储器;1711,网络接口;1712,硬盘;1713,可装卸介质存储装置;1812,计算机;1910,鼠标;1902,键盘;1903,显示器;1904,打印机;1905,输入文件;1906,输出文件;1907,地名录程序;1908,地名附加信息文件;1909,地名字符串生成规则文件;1910,通信模块;1911,接口模块;1912,地名表数据;1913,地名表分类模块;1914,地名信息检索模块;1915,地名表生成模块;1916,字符串对照模块;1917,地名表示展开模块;1918,地名表示网络生成程序;1919,地名表示网络数据。
下面根据附图详细说明本发明的地名表示方法与地名字符串识别方法的实施形式。
图1是说明根据本发明实施形式的地名字符串识别处理例的流程图,首先说明此流程。以下说明中所用的流程图是根据Gane-Sarson记法表示的。有关这种记法记载于Martin等的《软件结构化技术》,近代科学社,ISBN4-7649-0124-2C3050P5562E中。
(1)首先,在地名识别之前进行地名字符串生成规则编辑处理(步骤101),根据地名相异表示的事例制成地名字符串的生成规则,将此生成规则存储于地名字符串生成规则文件102中。步骤101的地名字符串生成规则的编辑处理可由人借助计算机进行编辑实现。
(2)其次进行地名识别处理(步骤104),此时输入地名字符串生成规则文件102,生成用于地名识别104的词典地名表示网络。步骤103的地名表示网络生成处理可作为计算机上可执行的程序来实现。
(3)最后,地名识别处理(步骤104)则参考地名表示网络,从输入图像中读取地名字符串。步骤104的地名识别处理104可作为计算机上的程序来实现。
地名字符串生成规则文件102采用本发明的“扩展BNF记法”,根据上下文无关文法的生成规则来表现地名的相异表示组。扩展BNF记法是在BNF法中扩展结合等符号,采用以下说明的符号。
∷=置换,意指可把左边的语法类别由右边的语法类别或字符的排列置换。可选,意为[]内的记述可有可无。
| 选择,意为右边与左边其中之一。
()结合,根据前后变数,首先评价括号之内。〈W字符串〉语法类别。〈N数字〉表示示明特定地在地名字符串的相异表示组的语法类别。数字为地名标识符,采用比0大的整数。
于是,上述符号依下示优先顺序评价。
(1)〈W字符串〉与〈N数字〉的变数名的定义;(2)[]及()括号类。在两重以上嵌套下使用括号类时,优先评价内侧的括号内内容。
(3)|(4)∷=图2例示根据前述步骤101的编辑处理所编辑的地名字符串生成规则表现的地名表示以及不用生成规则所罗列的相异表示。
作为图2(A)所示的由地名字符串生成规则所表现的地名表示例,是由本发明的扩展BNF记所表示的下述例子“琦玉県川越市大字小ケ谷”(“東田”“東関”“西関”是小字),“琦玉県川越市大字笠幡”(“久保”“河南”是小字),“琦玉県川越市下広谷”的相异表示。这样,包含多数相异表示的地名通过采用本发明导入的符号,能够极简单地加以表现,相反,图2(B)所示的不用生成规则所罗列的相异表示的例子只是多列了许多的相异表示,因而根据图2(A)所示4行表示生成的相异表示数竟会达到106之多。图2(B)所示的只是其中的一部分。
地名字符串生成规则文件102是通常的文本文件,作为地名字符串生成规则编辑处理步骤101的实现工具可采用一般的文本编辑程序。
图3概示据图2(A)生成规则的例子制成的地名表示网络,下面对此进行说明。
地名表示网络是以各边对应部分字符串,以各顶点对应部分字符串的边界的有向图。各边的方向与字符串字符的顺序一致。图3中记为NULL(空)的边表示的是NULL转移,即在该处可以没有任何字符串。图3中右下部有斜线的圆301表示地名字符串的开始位置。此外,中央有斜线的圆302~304则表示地名字符串的终结位置。
图4说明将地名表示网络装入计算机上时的数据形式,下面对此进行说明。在将地名表示网络装入计算机上时,地名表示网络便用图4所示的数据形式(左子女—右兄弟(left-child right-siblingrepresentation)表示,T.Cormeh等,《算法引论》,近代科学社,pp201~202)。这种数据形式,是把字符连接关系以子指针表示,把地面表示网络的分支以兄弟指针表示。
图4(A)示明各数据记录的结构元素,各数据记录由数据项c401、b402、d403三者组成。数据项c为字码、数据项b为兄弟指针而数据项d为子指针。于是,来自某个数据记录的分支就由兄弟指针而字符串就由子指针分别连接的表的形式表示。例如,图3中所示地名表示网络由前述数据记录以表的形式表示时,就成为图4(B)所示形式。
在以图4(B)中所示表形式表现的地名表示网络中,数据记录404′(对应于字码“小”)分岔为数据记录404~406,从数据记录404′到404由子指针连接,数据记录404、405、406由兄弟指针连接。字符串“琦玉県”则由由子指针连接的数据记录407、409、409表示。当数据记录对应于NULL转移时,则将NULL字符存储于该数据记录的字码c401中,从存有此NULL字符的数据码分岔出的数据记录,意味着省略也可以。在对应于地名字符串最后字符的数据记录之后,如作为数据记录410所示,设有一多余的数据记录,在此数据记录410的子指针d中存有NULL指针,于表示网络终端的同时将地名标识符存储于兄弟指针b中。
前述形式表现的图4(B)中所示表状的地名表示网络,能看作是各数据记录对应于节点的图,而图3概示的地名表示网络中的各边在此成为以对应于多个字符个数的节点来表示的结果。
图5为流程图,说明根据图1的步骤103中地名字符生成规则生成地名表示网络的处理,图6说明生成语法树的例子。下面对此进行说明。
首先对地名表示生成规则文件102中各地名字符串的生成规则,例如从图2(A)的上方第2行以后的〈N数字〉开始的各行,由控制循环501一一处理。首先于步骤502对各行的字符串进行语法分析,形成图6中所示的语法树。然后于步骤503生成与该地名相异表示组相对应的地名表示网络的终端节点ti。下面在未经特别声明时,所谓“地名表示网络上的节点”即是图4(A)形式中示明的数据记录。ti中的字码c中存储NULL、子指针d中存储NULL,而在兄弟指针b中存储该地名相异表示组的地名标识符。然后在步骤504中,使用后述的函数proc来生成与该地名相异表示组相对应的地名表示网络。在处理完所有的地名字符串生成规则后,于步骤505合并所生成的地名表示网络的冗余部分。
根据地名字符串生成规则进行语法树的生成处理,例如可采用《自然言语处理入门》(近代科学社,ISBN4-7649-0143-9,pp19-30)中所述的,根据生成规则生成迁移网络的方法等。图6中所示步骤502的处理生成的语法树的例子是据图2(A)中第二行生成的语法树的例子。图6中,“+”所记的圆表示字符串的连接、“[]”所记的圆表示可选、“|”所记的圆表示选择、矩形表示字符串。扩展BNF记法虽然也使用括号“(”、“)”,但本发明实施形式中所用的语法树不设与括号对应的节点,而是把括号确定的运算顺序反映到语法树的结构本身上。
函数proc是用来实现由语法树生成地名表示网络功能的函数,取p与a两个变数。变数p指定生成地名表示网络的终端指针d的取值。变数a表示处理对象语法树的最上位节点。当对某个节点指定变数a时,变数a以下的所有节点可按递归处理。
图7为说明函数proc处理操作的流程图,图8与9说明由函数proc生成地名表示网络的过程,图10则示明据地名表示生成规则所生成的地名表示网络组,下面对此进行说明。图7中所示的p、q、r是表示图4中所示形式的数据记录的地址的变数,符号“→”表示数据记录中的数据项。此外,图7中所示流程的处理,根据语法树的节点a的种类分为四种情形。
(1)判别语法书的节点a的种类,判定种类是“+”、“|”、“[]”、“字符串”中的哪一种(步骤701)。
(2)步骤701的判定中语法树的节点a的种类是“+”,即结合情形,首先对变数q复制变数p。这就是说,复制由此处理生成的部分网络的终端节点的地址(步骤702)。
(3)其次按从右开始的顺序由函数proc()处理语法树的子节点ni,生成地名表示网络的部分网络。此时,由函数proc()生成的部分网络的终点便给出要成为q的变数。将由此结果生成的部分网络始点的指针代入到q进行修正,形成下一个生成部分网络的终点。这样,通过反复调用函数proc(),就能逐一地连接由语法树的“+”的子节点生成的地名表示网络的部分网络(步骤703、704)。
(4)当处理完全部的子节点时,即把此时的q即部分网络的起点作为返回值(步骤705)。
(5)当根据步骤701的判定,语法树的节点a的种类为“|”即为选择时,首先从子节点之一n1生成部分网络,将所得的部分网络的起始地址,代入变数q(步骤706)。
(6)然后,将q的值代入变数r,由其他子节点ni(2≤i≤子节点数)顺次生成部分网络。生成的部分网络的起始地址存储于r的兄弟指针b中。再把所生成的部分网络的起始地址代入r,然后反复进行相同的处理(步骤707~710)。
(7)处理完所有的子节点后,把q亦即最早开始的生成部分网络的起始地址q作为返回值返回(步骤711)。
(8)当根据步骤701的判定,语法树的节点a的种类为“[]”即为可选时,首先生成与语法树的子节点相对应的部分网络,将其起始地址存储于变数q中。此时,为所生成的部分网络的终端指定参数,即为p。
(9)然后用函数newNd()生成对应于NULL转移的节点,将其地址存储于q的兄弟指针b中。此newNd()是把图4所示形式的数据记录的存储区确保为一新的函数,对于确保的数据记录的数据项,设定NULL指针(步骤713)。
(10)然后将NULL代入与NULL转移相对应的节点的字码c中,再把p设定到与NULL转移相对应的节点的子节点指针d中(步骤714、715)。
(11)将最后生成的部分网络的起始地址q作为返回值返回(步骤716)。
(12)当根据步骤701的判定,语法树的节点a的种类为字符串时,首先将p的值代入变数q(步骤717)。
(13)然后相对于字符串中各字符Ci(1≤i≤字符串长),依照从字符串的末端起按顺序重复,逐一生成对应于各字符串的节点。在此,首先由函数newNd()确保节点有一部分存储区域。然后将Ci代入新生成的节点的字码c中。再把q的值代入新生成的节点的子节点d中。继而可以由新生成的节点的地址置换q的值(步骤718~722)。
(14)在相对于各字符Ci进行完上述的处理后,将新生成的部分网络的地址q作为返回值返回(步骤723)。
在示明由函数proc生成地名表示网络的过程的图8与9中,801为经图5所示流程中步骤503的处理,生成终端节点存储标识符“3501104”。然后,通过图7所示流程中各步骤的处理,逐一生成图8与9所示按从上到下顺序所示的地名表示网络。这样,在由函数proc处理图6中所示语法树的节点603时,首先由函数proc生成与节点602对应的部分网络,生成802所示与节点602对应的部分网络。然后由函数proc生成与节点604对应的部分网络。这时,p存储节点804的地址,生成的部分网络如803所示,与节点804连接。
根据图5所示的流程控制循环501,对各地名字符串的生成规则,生成另外的地名网络。结果,根据图2地名表示生成规则生成的地名表示网络组便生成为图10所示形式,继而通过步骤505的处理,合并此网络组的冗余部分,例如合并琦玉県川越市的部分,生成据图3说明的地名表示网络。
图11是说明用先有技术生成地名表示网络的处理程序的流程图,图12说明由先有技术生成的地名表示网络的生成过程,图13例示由先有技术生成的地名表示网络,下面参考这些


不用生成规则时的地名表示网络生成方法。
在此之所以说明先有技术,其理由是,根据先有的地名字符串的表示方法,只能生成称作为线索的树结构的地名表示网络,而根据本发明的表示方法所生成的地名表示网络,在存储容量和核对所需处理时间方面与之相比都是优越的。根据先有技术表现地名表示的技巧是罗列出图2(B)所示的地名字符串,而根据图11所说明的流程则是根据这种罗列的单词来生成地名表示网络的程序。在此设图2(B)中的第k个字符串为Sk,其长度为Lk,而各字符串的第i个字符为Ci。对应于各字符串的标识符则另外进行存储。这样,生成的地名表示网络便以图4所示数据形式实现。
(1)首先生成成为地名表示网络虚拟的根的节点rr。对此节点的子节点指针d设定NULL(步骤1101、1102)。
(2)由循环1103逐一处理所有的字符串Sk。
(3)首先将根的地址代入变数p。然后对字符串中的每个字符,调用子程序SrchNxt。子程序SrchNxt判断与各字符相对应的节点是否已生成,在没有生成时,即追加新的节点的处理程序,此处理程序将于以后描述(步骤1104~1106)。
(4)设子程序SrchNxt已处理完字符串中的字符,则由函数newNd()生成新的子节点。将此字符串的标识符存储于指针b的区域,进而将此新的子节点的地址代入p的子节点指针d中。在循环1103终结时刻,rr的子节点便成为地名表示网络的根(步骤1107~1110)。
下面说明子程序SrchNxt的处理。
(1)首先将p的子节点d的值代入变数q,然后进行循环处理,由变数q扫描所有p的子节点,检查相应的字码即数据项c是否与Ci相等。如果相等,则看作是业已生成了对应于Ci的节点,将指针p移至其节点q(步骤1111、1113~1115,循环1112)。
(2)若在步骤113检查出数据项c不等于Ci,即将q的兄弟指针值代入q,重复循环处理直到q为NULL。
(3)在循环处理后仍未发现与Ci对应的节点时,则由函数newNd()生成新的节点,分别将Ci代入新的节点字码c、将NULL代入子节点指针d、将p的节点指针d的值代入兄弟指针b、将p的子节点指针d代入此新节点的地址、将新的子节点的地址代入指针p而结束此子程序的处理(步骤1117~1122)。
图12示明根据上述图11的处理程序生成地名表示网络的过程。这里所举的例是图2(B)的前三行的处理过程。首先,开始时生成与“川越市小ケ谷”对应的地名表示网络(1201)。然后处理“川越市笠幡”,由于“川越市”的部分已由1201生成,因而不生成新的节点。但当指针p到达1202所示位置,处理字符“笠”时,与“笠”相当的节点不在“市”的子节点处。于是,作为“小”的兄弟节点新生成相当于“笠”的节点。下面将对应于剩余字符“幡”的节点作为新生成的节点的子节点连接(1203)。“川越市下広谷”的情形也作同样处理,把对应于“下”的节点新生成为“小”、“笠”的兄弟,连接与以后字符相对应的节点(1205)。
图13概示根据图2(B)中所记相异表示组生成的地名表示网络的一部分,但本例与图3所示情形不同,由先有表示方法生成的地名表示网络为树的形式,即成为一旦分岔后不会再合流的形式。这是现知称作为线索的数据表示形式。与图3相比较,可知冗余部分多。例如与“東田”、“東関”、“西関”相对应的部分网络,有六次重复。这意味着需要增大存储容量,在采用分层存储器结构的计算机中,当存取的存储器空间增大,就会由于超高速缓冲存储器的误操作等致存取延迟,而且也会使后述的字符核对处理本身延迟。
根据本发明,能生成图3所示的余度小的地名表示网络,这是根据生成规则求得地名单词表示的本质优点。利用这种生成规则,能明确地表示冗余的地点。例如在图2(A)所示情形。“小ヶ谷”的“ヶ”有三种相异表示,但“ヶ”以下的字符串根据BNF记法所示为相同的。因此如图3所示,生成了只是在“小”与“谷”之间有三条路径的网络。
与此相反,图2(B)中所示先有地名字符串的表示方法,不能探测出“ヶ”以下的相异表示组是否等价,便不能生成图13所示的网络。
图14是说明图1所示地名识别处理104的处理操作的流程图,下面对此进行说明。
(1)首先根据输入图像进行的字符分离处理,分离字符串部分的图像(步骤1401)。
(2)其次,通过文字分离处理,分离出能根据字符串图像来推测字符的图案即候补的图案。在此阶段不能唯一地确定字符界时,根据多个字符分界的假设,尝试字符图案的分离,输出对应于各个假设的候补字符图案(步骤1402)。
(3)再其次,通过字符识别处理,识别所切出的各个候补图案是什么样的字符,作为候补字符串输出。在字符分离时是根据多种假设时,而且当字符识别结果是相对于一种图案输出多个候补字符时,则字符识别处理对应于各种分离与候补字符的组合而输出多个候补字符串(步骤1403)。
(4)最后,根据字符串核对处理,参照地名表示网络,核对各候补字符串能否成为正确的地名字符串。把核对后受理的候补字符串作为地名识别结果(步骤1404)。
图15是说明上述字符串核对处理1404的处理操作的流程图,下面对此进行说明。这种处理是把一种字符串作为输入,判定输入字符串的至少一部分能否作为地名字符串受理,要是能受理,即进行求相应的该地名表示标识符的处理。在此以输入字符串的长度为L,以字符串的第i个字符为Ci。
(1)首先根据循环1501,使核对的起点s从1变到L,同时重复步骤1502、1503。
(2)将地名表示网络的根地址设定到指示节点的变数p中。然后给定变数p与s,调用函数srch。函数srch是发现与从地名表示网络中输入字符串相一致的路径,令其终端节点的地址返回的函数。srch的返回值若不是NULL指针,则可视作为核对成功,而输出存储于函数Srch的返回值所示节点中的标识符(步骤1502~1504)。
(3)若s到达L而核对没有成功,则字符串核对处理失败,结束处理(步骤1505)。
在前述处理中,函数srch还递归地调用自身,深度优先搜索与从地名表示网络中输入的字符串相一致的路径。函数srch取变数p以及i的两个变数。变数p指示开始搜索的节点。此外,变数i是整数,表示当前处理中所注意的是输入字符串中的第几个字符。在发现受理的字符串时,函数srch返回该字符串的终端的节点地址,而在未发现受理的字符串时,返回NULL指针。
图16是说明前述处理中函数srch的处理操作的流程图,下面对此进行说明。
(1)首先检查变数p是否指示字符串的终接节点。如果是,即在指示字符串终接节点时,视输入字符串为已受理过,以p作为返回值,结束处理(步骤1601)。
(2)其次,判定是否所有字符都处理完。当i比L大,尽管所有字符c处理完,但在p未到达地名表示网络的终端时,返回NULL(步骤1602)。
(3)再其次,检查p的数据项c是否与字符串的第i个字符Ci一致。若是一致,则将p的子节点p→d作为搜索起点。为处理从第i+1开始的字符串,递归地调用函数srch。若此返回值r不是NULL,则视字符串为已受理的,把r作为返回值,结束处理(步骤1603)。
(4)再行检查p是否指示对应NULL转移的节点。若是,把p的子节点p→d作为搜索起点,为了处理从第i个开始的字符串,递归地调用函数srch。若此返回值r不是NULL,则视字符串为已受理的,以r为返回值,结束处理(步骤1604)。
(5)再后考察在p上是否连接兄弟接点p→b。若是已连接,则将p的兄弟节点p→b作为搜索起点,为处理从第i个开始的字符串,递归地调用函数srch,将此返回值返回到上一层(步骤1065)。
(6)假如不论是上述任一种处理,输入的字符串都未被受理,由于不能进行在此之上的探索,把NULL作为返回值结束处理(步骤1606)。
至此所说明的本发明的实施形式是按照字符分离、字符识别、字符串核对的顺序进行说明的,但本发明也可如古贺他“地址读取装置和邮件等分检机与字符识别方法”(特愿平10-28077号公报)所述,容易将字符串核对结果处理扩展应用到反馈到文字分离的方式。
图17为框图,例示应用本发明实施形式的地名字符识别处理系统的结构,图18则是示明地名字符串生成规则编集装置的结构的框图。这一系统的例子是把本发明应用于邮件分检系统的例子。在图17与18中,1701为邮件分检机、1702为扫描器、1703为数据转接线、1704为分选机、1705为地名识别装置、1706为输入用接口、1707为运算处理装置、1708为输出用处理装置、1710为存储器、1711为网络接口、1712为硬盘、1713为可装卸介质的存储装置、1714为地名字符串生成规则编辑装置、1718为网络、1801为鼠标、1802为键盘、1803为显示器、1804为地名字符串生成规则编辑程序、1805为字符串核对程序、1806为地名表示网络的表示程序、1807为地名字符串生成规则文件、1808为地名表示网络的生成程序、1809为地名表示网络数据、1810为通信装置、1811为可装卸介质的存储装置、1812为计算机。
图17所示系统由一台或多台邮件分检机1701、一台或多台地名字符串生成规则编辑装置1714与网络1718相连接构成。邮件分检机1701由扫描器1702、显示器1703、分选机1704、地名识别装置1705构成。此外,地名识别装置1705则包括输入用接口1706、运算处理装置1707、输出用处理装置1708、存储器1710、网络接口1711、硬盘1712、可装卸介质的存储装置1713。图中的粗线表示邮件流。
在图17所示的系统中,由扫描器1702输入的记载于邮件上的地名的图像信息,转送给地名识别装置1705。然后,在邮件沿转接线1703传送期间,地名识别装置1705识别邮件上记载的地名,将识别结果转送给分选机1704。分选机1704根据识别结果区分邮件。
在邮件分检的准备阶段,起动运算装置,由地名识别装置1705从硬盘1712将地名表示网络生成程序文件写入存储器1710。在地名表示网络生成程序的控制下,地名识别装置1705从地名字符串生成规则编辑装置1714,通过网络接口1711输入地名字符串生成规则,制成地名表示网络文件,存储于硬盘1712中。
地名字符串生成规则也可代替通过网络从地名字符串生成规则编辑装置1714输入,而由软盘驱动器等可装卸介质的存储装置1713写入。
地名识别装置1705在区分邮件时,通过运算装置1807进行从硬盘1712将识别程序文件与地名表示网络文件写入存储器1710的处理。这样,地名识别装置1705在识别程序控制下,从输入接口1706输入图像,识别邮件上记载的地名,通过输出接口1708输出识别结果。
地名字符串生成规则编辑装置1714,如图18所示,于计算机1812中,由鼠标1801、键盘1802、显示器1803、存储有地名字符串生成规则文件1807的硬盘装置、通信装置1810、可装卸介质的存储装置1811构成。编辑作业则通过于计算机1812上操作地名字符串生成规则编辑程序1804,编辑地名字符串生成规则文件1807来进行。地名字符串生成规则文件1807是文本文件,编辑可用通常的文本编辑程序。此外,可于计算机1812上执行地名表示网络生成程序1808、从地名字符串生成规则文件1807生成地名表示网络1809。
地名字符串生成规则编辑装置1714,根据前述功能能够确认编辑中的地名单词生成规则文法上是否正确,进而执行与识别处理中的字符串核对1404等价的程序1805,可以确认从键盘1803输入的试验用字符串是否被受理。
此外,计算机1812由于执行了用来以例如图3所示形式表示的地名表示网络1809的地名表示网络表示程序1806,操作者可凭视觉确认编辑结果。编辑结果的地名字符串生成规则文件1807经通信装置1810传送给地名识别装置1705,或通过介质可装卸的存储装置1811复制到软盘等可装卸的存储介质上,由存储介质输送给邮件分检机1701。
图19是示明本发明其他实施形式结构的框图,图20说明显示于显示器上的图像例。本例是利用本发明地名字符串的表示方法和地名核对方式,根据表示地名的字符串来检索有关地名信息的地名录装置。图19中,1901为鼠标、1902为键盘、1903为显示器、1904为打印机、1905为输入文件、1906为输出文件、1907为地名录程序、1908为地名附加信息文件、1909为地名字符串生成规则文件、1910为通信模块、1911为接口模块、1912为地名表数据、1913为地名表分类模块、1914为地名信息检索模块、1915为地名表示扩展模块、1918为地名表示网络生成程序、1919为地名表示网络数据。
图19所示装置用于提供以下服务。
(1)显示或打印从键盘输入的地名字符串的标准形。
(2)显示或打印与键盘输入的地名字符串的相异表示。
(3)显示或打印与键盘输入的地名字符串相对应的地区信息(邮政编号等)。
(4)将由文件输入的地名字符串变换为标准形式邮政编号等相应地区所固有的信息,输出给文件。
(5)将由网络输入的地名字符串变换为标准形式邮政编号等相应地区所固有的信息,输出给网络。
上面述及的标准形例如是表示由行政区分确定的某个地区的正式字符串。
图19所示的实施形式是在计算机上执行地名录程序1907中,将鼠标1901、键盘1902、显示器1903、打印机1904、输入文件1905、输出文件1906、地名附加信息文件1908、地名字符串生成规则文件1909连接构成。显示与输入/输出通过接口模块1911进行。当输入检索对象的字符串时,地名信息检索模块1914调用字符串核对模块1916。字符串核对模块1916是执行与图14中字符串核对处理1404等效处理的模块,参考由地名表示生成规则文件1909所生成的地名表示网络生成程序1918所生成的地名表示网络1919,检查输入字符串是否对应于某种标识符的地名表示。
地名信息检索模块1914以所得的标识符为关键字码,根据地名附加信息文件1908检索标准形和邮政编号等附加信息。此外,地名表示扩展模块1917则列出从地名表示网络数据1919可能得到的所有相异表示。所得到的相异表示存储于地名表数据1912中,必要时可通过接口模块1911输出。地名表分类模块1913根据操作者的指令,将相异表示组的顺序排列替换地输出。用于这种处理的输入可以通过键盘1901、输入文件1905、通信模块1910中任何一个进行。此外,输出则可以通过显示器1904、输出文件1906、通信模块1910的任一个进行。
图20所示的图19实施形式的显示器1903所示图像中,图20(A)所示的例是操作者输入“川越市小ケ谷”这样的字符串,于进行检索时在显示器1903上显示的图像例。输入的字符串输入到域2005中,由鼠标点触按钮2006进行检索。输入的结果经判别为对应于输入的字符串的字符串则显示于窗口2007中。在各行的“标准”项中表明该字符串是否为标准形。项的“地名”表示该字符串。在“邮政编号”项中虽然表示的是与该字符串相对应的邮政编号,但也可表示该地区的其他附加信息。
在区域2004中并列着“标准”、“地名”、“邮政编号”的框成为按钮,通过由鼠标点击各按钮,指令根据各项进行行的排列替换。窗口2008是用于指定可选性检索的。在此指定只显示标准形,或显示基于字、大字等的相异表示组,或显示基于通称名(“**用地”等)的相异表示组。按钮2002是用于指令打印显示内容的按钮,按钮2001是替代键盘与显示器用于使文件相对于输入/输出方式变换的钮。按钮2003则是用于指令结束程序的按钮。
图20(B)中打开的窗口2009是显示核对结果所得地名的读法、小字、邮政编号等详细信息的窗口。此窗口2009是通过由鼠标点击窗口2007上显示的检索结果而起动的。
此外,本发明实施形式的表示方法所表示的地名字符串,可以作为地名辞典存储于FD、MO、DVD等的存储介质中。
权利要求
1.一种地名表示方法,在表示地区的地名由虽是相异的字符串而由意指同一地区的单词排列来表现的情况下,用来表现具有这多个相异表示的地名字符串集合,其特征在于,对于构成地名字符串的一部分或全部的各个部分字符串,定义字符或语法类别的排列,通过由字符或已定义的语法类别排列所组成的语法类别排列,来表示地名字符串。
2.权利要求1所述的地名表示方法,其特征在于,采用表示语法类别能否置换为另外某种字符或语法类别序列的置换符号,以及示明某种语法类别表示特定地区的地名符号,来表示上述地名字符串。
3.一种地名字符串核对方法,其特征在于,通过判断输入字符串中的部分字符串,与预先给出的、对于构成地名字符串的一部分或全部的每个部分字符串定义字符或语法类别的排列中的、由字符或已定义的语法类别的排列所组成的语法类别所表示的地名字符串之一是否相一致,由此来核对输入字符中的地名。
4.一种地名字符串核对装置,其特征在于,此装置备有对于构成地名字符串的一部分或全部的每个部分字符串,定义字符或语法类别的排列,对由字符或已定义的语法类别的排列组成的语法类别所表示的地名字符串进行存储的存储装置;输入字符串的输入装置;核对输入的字符串是否为前述存储装置中已存储的地名字符串的核对装置;以及输出核对结果的装置。
5.一种地名字符串识别装置,其特征在于,具有将文件表面的颜色深浅变换为电信号而得到的图像作为输入来读取文件上记载的字符的字符读取装置;权利要求4所述的地名字符串核对装置;前述地名字符串核对装置中的输入装置输入来自此上述字符读取装置的字符串。
6.一种邮件分检系统,其特征在于,应用权利要求5所述的地名字符串识别装置,识别邮件地址名中的地名字符串,区分邮件,或把识别结果打印到邮件上。
7.一种地名字符串记录介质,其特征在于,在表示地区的地名由虽为相异字符串而意指同一地区的单词排列表现的情况下,对具有多个这种相异表示的地名字符串的每一个,通过对构成地名字符串的一部分或全部的部分字符串的每一个定义字符或语法类别的排列,用字符或已定义的语法类别的排列组成的语法类别表示,并加以存储。
8.一种地名字符串识别装置,其特征在于,具有将文件表面的颜色深浅变换为电信号而得到的图像作为输入读取文件上记载的字符的字符读取装置;应用权利要求1所述地名表示方法存储地名字符串的装置;上述输入图像中的部分图像的排列中,通过发现各部分图像与由上述地名表示表明的地名字符串之一中所含各字符类似而来识别地名的装置。
9.一种地名表示方法,在表示地区的地名虽是相异的字符串而由意指同一地区的单词排列来表现的情形下,用来表现具有这多个相异表示的地名字符串的集合,其特征在于,通过单词或单词部分组成的部分字符串的生成规则来表现地名字符串集合。
全文摘要
本发明在地名表示中有众多相异表示时,能以很少人力编制成涵盖所有地名字符串的地名词典并能进行高速核对处理。本发明将作为上下文无关文法的生成规则表现方法之一的BNF记法扩展成适用于地名表示从而表现地名的相异表示。据生成规则能把典型的相异表示字符图案如ケ、ケ、ガ定义为语法类别,得以简洁地表现地名相异表示集。进而通过应用BNF记法所用的选择记号,可更简洁地表现地名的相异表示。用生成规则表现地名的相异表示,用生成规则获得的网络作识别处理。
文档编号H05K7/06GK1287317SQ0011878
公开日2001年3月14日 申请日期2000年6月29日 优先权日1999年7月1日
发明者古贺昌史, 古川直広, 池田尚司, 绪方日佐男, 酒匂裕, 藤泽浩道 申请人:株式会社日立制作所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1