(57)【特許請求の範囲】
【請求項１】
紙葉上に記載された宛名情報をデジタル画像データに変換し、該デジタル画像データを用いて該宛名情報を文字識別し、文字識別結果と宛名情報に関する知識データベースに基づき宛名情報の認識を行う文書理解装置であって、
前記知識データベースは、公的住居表記に関する事前知識１と私的住居表記に関する事前知識２を備え、
前記文字識別結果を入力し、前記事前知識１を参照して公的住居表記情報を認識して町を特定する町ＩＤ情報および地番情報を含む街区情報を出力する公的住居表記認識照合手段と、
前記文字識別結果と公的住居表記認識照合手段の出力を入力し、認識した公的住居表記情報により前記事前知識２から私的住居表記の建物名を検索し、検索結果と前記文字識別結果に基づき建物名を認識して該建物名情報を出力する建物名認識照合手段と、
該建物名認識照合手段の出力を入力し、認識した建物名により前記事前知識２から該建物名に属する固有の情報を検索し、該固有の情報に基づき少なくとも地番情報を含む街区情報の候補を生成、出力する街区仮説生成手段と、
該街区情報の候補と前記公的住居表記認識照合手段で得られた街区情報に基づき信頼度の高い街区情報を生成、出力する街区情報統合手段を備えることを特徴とする文書理解装置。
【請求項２】
請求項１記載の文書理解装置において、
前記文字識別結果と建物名認識照合手段の出力を入力し、認識した建物名により前記事前知識２から該建物名に属する固有の情報を検索し、該固有の情報に基づき部屋番号情報を求め、該部屋番号情報と前記文字識別結果に基づき部屋番号を認識して部屋番号情報を出力する部屋番号認識照合手段と、
前記文字識別結果と、前記公的住居表記認識照合手段及び建物名認識照合手段及び部屋番号認識照合手段の各出力とを入力し、該各出力の情報により前記事前知識２から人名・会社名を検索し、検索結果と前記文字識別結果に基づき人名・会社名を認識して出力する人名・会社名認識照合手段と、
人名・会社名認識照合手段の出力を入力し、認識した人名・会社名により前記事前知識２から該人名・会社名に属する固有の情報を検索し、該固有の情報に基づき部屋番号情報の候補を生成、出力する部屋番号仮説生成手段と、
該部屋番号情報の候補と前記部屋番号認識照合手段で得られた部屋番号情報に基づき信頼度の高い部屋番号情報を生成、出力する部屋番号情報統合手段と、
前記街区情報統合手段と前記部屋番号情報統合手段の各出力を入力し、街区情報と部屋番号情報に対応する地番情報を含む街区情報との整合性を前記事前知識２を参照して調べ、整合性のある街区情報と部屋番号情報を統合して出力する街区・部屋番号情報統合手段を備えることを特徴とする文書理解装置。
【請求項３】
請求項２記載の文書理解装置において、
前記街区仮説生成手段は、前記建物名認識照合手段と前記人名・会社名認識照合手段の各出力を入力し、認識した建物名と人名・会社名のそれぞれにより前記事前知識２から該建物名に属する固有の情報と該人名・会社名に属する固有の情報を検索し、これら固有の情報に基づき地番情報を含む街区情報の候補を生成、出力することを特徴とする文書理解装置。
【請求項４】
郵便物に記載された宛名情報を認識して、認識結果に基づき郵便物を宛先別に区分する郵便区分機において、
前記宛名情報を認識するための装置として、請求項１乃至請求項３のいずれかの請求項記載の文書理解装置を備えることを特徴とする郵便区分機。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は文字認識技術を用いて、紙面に記載された文字情報を読み取って解釈する文書理解装置と、この文書理解装置を用いた郵便区分機に関する。
【０００２】
【従来の技術】
従来、文字列で表現された紙面上の文字情報を文字認識技術を用いて読み取る際は、その文字列を左から右へ（上から下へ）順番に読み取って、その読み取り結果に基づき、たとえば、宛名情報の場合、県名、市町村名、地番、ビル名などの解釈を逐次与えていた。
【０００３】
【発明が解決しようとする課題】
しかし、従来技術では、かすれた文字を含む低品質の印刷文字や、変形の大きい手書き文字を読み取る場合、途中の文字が正しく認識できないときは、全体の解釈を正しく行えないことが多かった。
【０００４】
したがって、本発明の目的は、この問題を解決して、高い信頼度で文字列を認識、解釈する装置、特に高い信頼度で宛名情報を認識、解釈する装置を提供することにある。
【０００５】
【課題を解決するための手段】
上記の課題を解決するため、本発明は、
紙葉上に記載された宛名情報をデジタル画像データに変換し、該デジタル画像データを用いて該宛名情報を文字識別し、文字識別結果と宛名情報に関する知識データベースに基づき宛名情報の認識を行う文書理解装置であり、
前記知識データベースは、公的住居表記に関する事前知識１と私的住居表記に関する事前知識２を備え、前記文字識別結果を入力し、前記事前知識１を参照して公的住居表記情報を認識する公的住居表記認識照合手段と、前記文字識別結果と公的住居表記認識照合手段の出力を入力し、前記事前知識２を参照して前記認識した公的住居表記情報に対応する私的住居表記情報を検索し、該検索した私的住居表記情報と前記文字識別結果に基づき私的住居表記情報を認識する私的住居表記認識照合手段を備えるようにしている。
【０００６】
また、紙葉上に記載された宛名情報をデジタル画像データに変換し、該デジタル画像データを用いて該宛名情報を文字識別し、文字識別結果と宛名情報に関する知識データベースに基づき宛名情報の認識を行う文書理解装置であり、
前記知識データベースは、公的住居表記に関する事前知識１と私的住居表記に関する事前知識２を備え、前記文字識別結果を入力し、前記事前知識１を参照して公的住居表記情報を認識する公的住居表記認識照合手段と、前記文字識別結果と公的住居表記認識照合手段の出力を入力し、認識した公的住居表記情報により前記事前知識２から私的住居表記の建物名を検索し、検索結果と前記文字識別結果に基づき建物名を認識する建物名認識照合手段と、該建物名認識照合手段の出力を入力し、認識した建物名により前記事前知識２から該建物名に属する固有の情報を検索し、該固有の情報に基づき街区情報の候補を生成する街区仮説生成手段と、該街区情報の候補と前記公的住居表記認識照合手段で得られた街区情報に基づき信頼度の高い街区情報を生成する街区情報統合手段を備えるようにしている。
【０００７】
また、前記文字識別結果と建物名認識照合手段の出力を入力し、認識した建物名により前記事前知識２から該建物名に属する固有の情報を検索し、該固有の情報に基づき部屋番号情報を求め、該部屋番号情報と前記文字識別結果に基づき部屋番号を認識する部屋番号認識照合手段と、前記文字識別結果と、前記公的住居表記認識照合手段及び建物名認識照合手段及び部屋番号認識照合手段の各出力とを入力し、該各出力の情報により前記事前知識２から人名・会社名を検索し、検索結果と前記文字識別結果に基づき人名・会社名を認識する人名・会社名認識照合手段と、人名・会社名認識照合手段の出力を入力し、認識した人名・会社名により前記事前知識２から該人名・会社名に属する固有の情報を検索し、該固有の情報に基づき部屋番号情報を候補を生成する部屋番号仮説生成手段と、該部屋番号情報の候補と前記部屋番号認識照合手段で得られた部屋番号情報に基づき信頼度の高い部屋番号情報を生成する部屋番号情報統合手段と、前記街区情報統合手段と前記部屋番号情報統合手段の各出力を入力し、街区情報と部屋番号情報の整合性を前記事前知識２を参照して調べ、整合性のある街区情報と部屋番号情報を統合して出力する街区・部屋番号情報統合手段を備えるようにしている。
【０００８】
また、前記街区仮説生成手段は、前記建物名認識照合手段と前記人名・会社名認識照合手段の各出力を入力し、認識した建物名と人名・会社名のそれぞれにより前記事前知識２から該建物名に属する固有の情報と該人名・会社名に属する固有の情報を検索し、これら固有の情報に基づき街区情報の候補を生成するようにしている。
【０００９】
さらに、郵便物に記載された宛名情報を認識して、認識結果に基づき郵便物を宛先別に区分する郵便区分機において、
前記宛名情報を認識するための装置として、上記記載の文書理解装置を備えるようにしている。
【００１０】
【発明の実施の形態】
以下、本発明の概要と原理を説明する。
【００１１】
宛名情報の例を図１に示す。
【００１２】
宛名情報には、「東京都千代田区神田駿河台１ノ２ノ３」のような公的な住居表記部分と、「駿河台ビルＡ−１０３  日立太郎」のような私的な住居表記部分がある。以下、公的な住居表記部分に係る情報を公的住居表記情報または公的情報、私的な住居表記部分に係る情報を私的住居表記情報または私的情報という。
宛名情報を対象とする文書理解方式が利用できる情報の冗長性には、隣接する文字間に存在する冗長性と、表現する情報間に存在する意味的な冗長性とがある。
文字間の冗長性は、公的な住居表記部分にあり、図２に示すように、単語を構成する文字の接続規則（例えば、「東」、「京」、「都」から「東京都」を構成する規則）や、節を構成する単語の接続規則（例えば、「東京都」、「千代田区」から「東京都千代田区」を構成する規則）がある。これらの語彙情報や、単語のつながり方を規定する統語規則を用いて、文（文字列）を解釈する方法は既に知られている。
【００１３】
一方、図１の宛名情報の場合、意味的な冗長性は、私的な住居表記部分または私的な住居表記部分と公的な住居表記部分の間にあり、図３に示すような情報間の関係（予測性）がある。
例えば、宛名情報2の解釈の結果、「千代田区神田駿河台」が認識できたとすると、その地域に属するビルやアパートに関する私的情報を蓄積した知識ベースから検索したビルなどの名前と、宛名情報2内の「駿河台ビル」に対する文字認識の解釈とを参照して、宛名情報2にある「駿河台ビル」を認識することができる。この関係を図３ではリンク1001で表す。
同ビル名が認識できたとすると、今度は同知識ベースから「駿河台ビル」に属する固有情報を検索することにより、「駿河台ビル」の住所は「千代田区神田駿河台1-2-3」であるので、宛名情報の2の内の街区までの情報は「千代田区神田駿河台1-2-3」あろうことを推論することができる。このように、この場合は、街区表記「1-2-3」を認識しなくても、「駿河台ビル」を認識することによって、同ビルに属する固有情報に基づき街区の情報「1-2-3」を推論できる。
あるいは、宛名情報2の解釈の結果、「1-2-3」も認識したとすると、２つの情報源からそれを推論することになるので、高い確信度で「1-2-3」を決定することができる。これが上記の意味的な冗長性とその利用方法の例である。
【００１４】
図３は、その他にも多くの冗長性が存在していることを示している。
例えば、リンク1003は、「神田駿河台」に住んでいる人の名前の知識ベースを持っているとすれば、その知識ベースの内容と宛名情報2内の「日立太郎」に対する文字認識の解釈とを参照して、「日立太郎」を認識して、さらに、「日立太郎」に属する固有の情報を検索することにより、その人の住んでいる部屋番号「A-103」を推論することができることを表している。
この推論に基づいてその部屋番号の宛名情報2上の記載を調べ、存在する場合はその認識結果の確信度を高めることができる。そして、最終的に「千代田区神田駿河台1-2-3-A-103」を認識結果とすることができる。
【００１５】
同様に、リンク1004は、「千代田区神田駿河台1-2-3」を認識できたとすると、「駿河台ビル」がそこに存在することを推論できることを表している。従って、同ビル名が宛名情報2上に記載されているかどうかを調べて、存在する場合は、上記の「千代田区神田駿河台1-2-3」の認識が正しいという確信度を高めることができる。
さらにまた、リンク1005は、認識結果としての「千代田区神田駿河台1-2-3」からそこに住んでいる「日立太郎」を推論して、その名前が宛名情報として記載されていることが認識できれば、部屋番号「A-103」をさらに推論して、最終的に「千代田区神田駿河台1-2-3-A-103」を認識結果とすることができる。
【００１６】
本発明は、このように私的情報間または私的情報と公的情報の間に内在する関係（冗長性）を利用して、信頼度高く記載情報を解釈する装置を提供する。
後述するように、本発明を用いて宛名情報を対象とする文書理解装置は、前記の公的住所表記に関する知識（以下、事前知識１という）と、地域ごとに存在するビルやアパートやそれぞれの町に居住している人の名前などの私的住所表記に関する知識（以下、事前知識２という）を事前知識として知識ベースに記憶しておく。
【００１７】
以下に、本実施形態について詳細に説明する。
図４は文書理解装置の基本的な機能構成である。
読取対象の紙葉1は、例えば図１に示すような記載がある。同紙葉はスキャナ101によって、デジタル画像データに変換される。
文書理解装置は、この画像データに対して、文字領域の切出し102、文字切出し仮説の生成103、文字識別104を行い、この文字認識結果と事前知識106による知識照合105を行い、認識結果109を出力する。
文書理解の第１の処理は文字領域の切出し102である。紙葉1の画像から記載領域2を検出して、さらに文字行ごとに、図５に示すように、画像領域51、52、53を切出す。
【００１８】
次の処理は、文字切出し仮説の生成処理103である。ここで、「仮説」とは「候補」と同じ意味である。
一行づつ切出された文字行画像51、52、53を処理して、図６に示すように、文字切出し仮説を作り、ネットワークとして表す（同図は、図５の文字行の一部についてのみ示す）。
画像を構成する画素の値が１（黒を表わす）である連続した領域をラベリングと呼ぶ処理で抽出する。抽出される連結した黒画素のかたまり（パターン）を黒連結成分と呼ぶ。隣接する黒連結成分（１個または複数）を１文字を構成するであろう最小部分（基本成分）と見做して、これらで図６に示すネットワークの基幹部を構成する。
次に１文字を構成する可能性がありそうないくつかの隣接する基本成分をまとめて、グラフの辺を追加する。
この処理を全体に対して行うことによって、図６に示すような文字切り出し仮説ネットワークを作ることができる。
ここで図６は、図５の文字行51の前半部についてのみ示している。すなわち、「１ノ２ノ３」に対応する部分もデータとしては存在するが、図６においては、図の簡単化のため図示していない。
【００１９】
文字の切出しは、手書き文字の場合は特に難しく、文字識別の前に一意に決定することはできない。従って、図６に示すように、可能性のある切り方を仮説の形態で残しておき、それら複数の仮説を対象に、次の文字識別を行う。
図６はそのような複数の仮説を表す。同ネットワークは、切出された文字（またはその部分）の画像と、それらの組合せ（１つの場合もある）の画像をアーク（グラフにおける辺のこと）に付属させ、それぞれ異る切出し方を一つのグラフ（ネットワーク）の中に表現する。
図６は、これを図式的に表しているが、計算機内部のデータとしても表現できる。同図において、アーク3は「都」の旁の部分に対応する部分画像を、アーク4は「都」の偏の部分に対応する部分画像を表している。また、アーク16は、これら２つの部分画像を組合せたもので、別の切出し仮説を表している。
【００２０】
次に、文字識別104は、上記の文字切出し仮説ネットワークのアークに付属された部分画像を処理し、図７Ａで示すような文字識別結果を出力する。
文字識別方式としては、従来技術を用いることができる。印刷漢字および手書漢字を識別する方式としては、文字ストロークの方向性を抽出する「方向性パターン整合法」が知られている。ここでは、詳細を省略するが、パターン整合法では、未知パターンの画像（または特徴ベクトル）と別途パターン辞書に記憶しておく参照パターン（画像、または特徴ベクトル）との類似性を類似度と呼ぶ０から１の数値（実数）として計測することができる。
図７Ａに示す識別結果は、類似度が大きい順に文字カテゴリとその類似度を並べたものであり、文字候補ラティスと呼ぶ、同図で第１カラムのIDは、図６におけるアーク番号である。これによって、文字切出し仮説ネットワークの各アークに類似度を付与することができる。
例えば、IDが1のアークには、図７Ａに示すラティスからその行の最大類似度0.91が選ばれ、同アークの類似度とされる。
次に、これらアークに付与される類似度を用いて、文字切出し仮説ネットワークにおいて、左端から右端に至る最適な道（パス）を選び出すことができる。ここで「最適パス」とは、そのパスを構成するアークの類似度の総和が最大なものである。
また、アークを構成する部分画像には、複数の部分画像を組合せたもの、例えばアーク16は２個のパターン（アーク3とアーク4）から構成されるものがあり、従って、アーク16と、アーク3・アーク4のパスを類似度の総和で比較することは公平ではない。従って、複数の部分画像で構成されるアークの場合は、その部分画像の数だけその類似度を余分に加算する。これによって、パス毎の長さに関する適切な正規化を行うことができる。
【００２１】
このようにして、図６の場合は、太い線で示したアークの連なりが最適パスとして選択できる。
この例の場合は、最適パスは、アーク1、2、16、5、18、8、9、10、11、12、20、15で構成されるパスである。この最適パスに対して、選ばれなかったアーク（例えば、この場合は、3、4、17、6、7、19、13、14）を除外した文字候補ラティス一つが改めて図７Ｂに示すように作られる。
実際は、この最適パスが誤っていることもあるので、類似度の総和が最大なパスのみならず、第２位、第３位などの複数のパスを選択し、後段の処理に送る。従って、文字候補ラティスはその数だけ作られる。それ以降の処理は、これら複数の候補ラティスを対象とする。
なお、図６および図７では、一部分についてのみ記したが、これらの処理は図５に示す全ての文字行について行う。
【００２２】
つぎに、知識照合処理105は、すべての文字行から作られる複数の文字候補ラティスに対して行われる。
図８は知的照合処理105の詳細をデータフロー図の形式で示したものである。
図８において、処理501および処理502は、それぞれ前述した切出し仮説生成処理と文字識別処理である。その結果は、文字切出し仮説ネットワーク503である。上述の文字候補ラティスはこれに付随している。
これら文字切出し仮説ネットワークと文字候補ラティスはデータ504として、処理部551，552，553，554，555へ送られる。
これらの処理は、それぞれ異なるハードウェア（プロセッサ）で実現しても良いし、１つのプロセッサで処理しても良い。前者の場合、すなわち、異なる複数のプロセッサで実現する場合は、並行処理（並列処理）が可能である。後者の場合は、図８で並行処理ができるように記載されているが、実際にはプログラム化された順序で逐次的に実行される。データ504を後段の処理部に送る方法は、異なるプロセッサの場合は、データバスを介するデータ転送になるが、同一プロセッサの場合は、メモリ上でのデータの受け渡しになる。
【００２３】
まず、町域認識照合処理551について説明する。
同処理部は内部に、図９に示す第１種の事前知識を表データの形式で保持している。具体的には、図９に示すように、都道府県名、市町村名、町名に現れる単語知識を有する（同図(a)(b)(c)）。
さらに、この単語知識には、どの単語がどの単語に続くことができるかという情報である統語知識も含む。
たとえば、同図(b)において、市IDがCO517の「千代田区」は、親IDがK31であると、記憶されており、それは同図(a)の都道府県名リストをみると「東京都」であることが記憶されている。すなわち、単語「東京都」のあとには単語「千代田区」が続き得ることを示している。同様に、「千代田区」には図９(c)の町名リスト「千代田」から「神田駿河台」ほかが続くことが記憶されている。
町域認識照合処理は、これらの単語知識とそれらの統語知識とを用いて、文字候補ラティスから単語列（句）、例えば、「東京都・千代田区・神田駿河台」を認識する処理であり、既に知られている方式がある。以下、本発明の理解を助けるために、その方式を説明する。
【００２４】
それには、まず、文字候補ラティスから図１３に示すような有限オートマンを構成し、このオートマンに単語（文字例）を流し込むことにより、その単語がこの文字候補集合から再構成し得る単語かどうか、すなわち、その単語を認識結果としてよいかどうかを判断することができる。この処理が単語照合の処理である。
具体的には、ラティスの行の数より１つ多い状態（図１３における丸印）を作り、１つの文字候補をある状態からつぎの状態への遷移リンク（矢印）で表す。
例えば、第１文字の第１位候補「東」は状態０から状態１に至る第１の遷移リンク、同第２位候補「菓」は状態０から状態１に至る第２の遷移リンク、第２文字の第１候補「宗」は状態１から状態２に至る遷移リンク、という具合にオートマトンを作る。
有限オートマトンは、公知の方法によってソフトウェア的には状態遷移表を用いて容易に作ることができる。
【００２５】
ある単語が文字候補集合から再構成できるかどうかは、その単語を構成する文字列の各文字がこの有限オートマトンのどの遷移リンクを通るかで判断できる。
例えば、単語「東京都」が最初の３文字に存在するかどうかを見るには、まず文字「東」は状態０からどのリンクを通って状態１に至るかを見る。状態遷移表を用いるオートマトンは、この検索を高速に実現することができる。図１３の場合、第１のリンクが「東」であることが分かる。
つぎに、文字「京」が状態１から状態２にどのリンクを通って遷移するかを同様に検索する。この場合、第２のリンクであることが分かる。
同様に、文字「都」は第２のリンクを通って、状態２から状態３へ至ることが分かる。
このとき、単語「東京都」の存在する確信度は、それぞれの文字候補の類似度の総和で表すことができる。
あるいは、どのリンクを通ったかでペナルティを計算する方法もある。この場合、第１リンクを通るときはペナルティ０、第２リンクを通るときはペナルティ１、第３リンクを通るときはペナルティ２、という具合にする。この例の場合は、「東京都」のペナルティは０＋１＋１＋＝２となる。
この検索処理で、もし、ある文字に対して対応する遷移リンクが存在しないときには、図１３の「その他」という遷移リンクを通るものとする。「その他」のリンクに対応する類似度やペナルティは、事前にパラメータの一つとして定数を充てる。
【００２６】
この処理は、論理的には、可能性のあるすべての単語に対して、すべての状態から開始して行う。その結果は図１４の単語候補ラティスの形式で表すことができる。
例えば、図１４は、状態０（１文字目）から単語「東京都」と「ＸＸＸ」が、状態１（２文字目）から単語「京都」が、状態２（３文字目）から単語「ＹＹＹ」が候補として上がったことを表している。最後の候補は状態６（７文字目）から始まる単語「ＳＳＳ」と「神田駿河台」である。
このように単語候補ラティスは、どの位置にどのような単語がありそうかを確信度あるいはペナルティ付きで示している。
この単語候補ラティスを作るところまでが町域認識照合処理551の前半の処理である。
【００２７】
町域認識照合処理551の後半の処理は、単語候補の中から統語規則を満足する単語のみを選び出すことである。
これは単語候補ラティスの末端（右端）の単語候補から始めて、順次左に接続できる単語が単語候補ラティスの中にあるかどうかを、図９に示した第１種知識の中の単語接続情報を参照して検証する。
その結果、図１４に示すように、「神田駿河台」は「千代田区」を接続できるが、単語「ＳＳＳ」に接続できる単語候補は存在しない、ということが分かる。最終的に、「東京都・千代田区・神田駿河台」を句の候補とすることができる。
場合によっては、複数の句が候補となることがあるが、その場合は総合確信度あるいは総合ペナルティを用いて順位付けし、良い方を選択することができる。
あるいはそれら複数の候補を並列して後段の処理に送り、最終判断を後段でさせることもできる。
【００２８】
さて、町域認識照合処理551が行われ、その結果、例えば文字列「東京都千代田区神田駿河台」が認識されることとなり、その文字列とそれを表す町ID「T2121」がデータ521，522，523として、後段の処理部へ送られる。
ただし、このデータには、いわゆる認識結果「東京都千代田区神田駿河台」のみならず、この文字列が文字候補ラティスのどの部分に対応するのかを示すデータも含む。これによって、後段の処理、例えば、街区認識照合処理552は、自分がつぎに処理する部分はどこであるのかを知ることができる。
より具体的には、図５の文字行、第１行目の「東京都・・・」から始めて「・・・駿河台」までの認識照合処理を行ったことを示すポインタ情報を含む。これによって、つぎに処理すべき部分は「１ノ２ノ３」であることが分かる。この場合、ポインタ情報は、図７Ｂの文字候補ラティスにおけるNID番号の形式で示すことができる。
【００２９】
街区認識照合処理552は、データ504とデータ521を受け取り、上記のようにして判断される未だ処理していない処理対象「１ノ２ノ３」の認識照合処理を行う。
同処理部は内部に、図１０に示す第２種事前知識を表形式のデータで保持する。具体的には、図１０(ａ)の街区表記パターンリストと図１０(ｂ)の街区表記形式とを有する。
前者は、街区表記（例えば、「１丁目２番地３号」の部分の表記）にはどんな形式があり得るのかを記憶する表である。同図において、記号Ｎはアラビア数字を、記号ＮＮは２桁のアラビア数字、記号ＮＮＮは３桁のアラビア数字、さらに、記号Ｄは「の」「ノ」「−」などの分離記号（デミリタ）を代表して表す。
この図には示してないが、街区表記パターンリストには、上記の「１丁目２番地３号」や、縦書きのときの「五の三の二」などの表記方法に対応するパターンも登録しておく。
図１０(ｂ)の街区表記形式は、町毎に、その町の街区表記にはどんなパターンが有るのかを記憶するための表データである。街区の表記方法は、新住居表記方法にすべてが移行してしまった地域と、古い表記方法（例えば「1027番地の3」）が混在する地域、あるいは、まだ全てが古い表記方法に従っている地域が存在している。従って、図１０(b)に示す表はそれらを区別して規定するためのものである。例えば、町域T2121は４つの表記パターンP001、P002、P004、P005が許されることを示している。
【００３０】
処理552は、この例の場合「１ノ２ノ３」に対応する文字候補ラティス（図示省略）の各文字を記号Ｎや記号Ｄに変換する。
例えば、文字「１」に対して、候補「１」「７」がラティスに上がっていたとすると、それらはそれぞれ記号「Ｎ」「Ｎ」に変換され、この場合、同じ記号になるので、一つに併合する。
第２文字「ノ」に対しては、候補「ノ」「１」がラティスに上がっていたとすると、それぞれ記号「Ｄ」「Ｎ」に変換される。
つぎに、この変換をうけたラティスから有限オートマトンをつくり、そこへP001、P002、P004、P005に対応する表記パターン（「NDNDN」など）を流し込むことによって、その認識結果は、表記パターン「NDNDN」に従ったものであることが分かる。
そして「Ｎ」「Ｄ」をもとの文字に戻すことによって、「１ノ２ノ３」と「７ノ２ノ３」が認識結果候補として採用される。もし、表記パターンに「NNNDN」があったとすると、この場合、「１１２ノ３」や「７１２ノ３」も認識結果候補の一つとなる。
【００３１】
さて、街区認識照合処理552の処理結果は、データ531、524、525として後段に送る。
これらのデータは、データ521として受け取った町域認識結果、街区認識照合結果（例えば「１−２−３」）、および先程と同様に、この文字列が文字候補ラティスのどの部分に対応するのかを示すポインタ情報である。
街区認識照合処理の結果、あいまい性が残り、結果を一意に決定できないときは、例えば、二つの結果「１−２−３」「７−２−３」を並べて出力する。また、街区認識照合処理の結果、候補を出すこともできない場合は、結果として、認識不能を示す、例えば、文字列「？？？？？」を出力する。
【００３２】
上記した町域認識照合処理部と街区認識照合処理部は、公的住居表記の認識照合処理部であり、該２つの処理部を統合した処理部を公的住居表記認識照合処理部と呼ぶ。
また、上記した図９に示す第１種事前知識と図１０に示す第２種事前知識は、公的住居表記に関する事前知識であり、該２つの事前知識を統合した事前知識を公的住居表記に関する事前知識１と呼ぶ。
【００３３】
つぎに、建物名認識照合処理553は、データ524、522、504を受けて、まだ処理していない画像部分に対応する文字候補ラティスの部分を対象に、建物名の認識と、事前知識との照合処理を行う。まだ処理していない画像部分とは、図５の例で云えば、文字行52と文字行53である。
同処理部553は、内部に、図１１に示す第３種事前知識、具体的には、建物リストを表形式のデータで保持する。同表は、ある限定された地域に存在するアパートやビルなどの建物の名称、この建物に属する固有の情報である、所在町名、同地番、そこに存在する部屋番号の範囲などの私的情報を記憶している。
それぞれの建物には、建物ID番号を付与する。所在町名は、図９に示した町名リストの町ID番号で記憶する。地番は、住居表記の基本形で、例えば、「１−２−３」と記憶する。
部屋番号としては、アパートやビルなどの棟番号や、ビルや雑居ビルの階数の情報、さらにその階数における部屋番号なども含めて記憶する。
例えば「［A-B］-［101-107］［201-207］」は、該当する場所にはＡ棟、Ｂ棟があり、部屋番号はそれぞれ１０１号室から１０７号室と２０１号室から２０７号室があることを示している。また、「［1F-8F］」は、その建物には、１階から８階までのフロアーがあることを示している。
【００３４】
処理部553が入力するデータ522と524には、それぞれ認識結果としての町域と街区の情報が含まれているので、建物名リストにアクセスすることによって、現在、認識結果の候補として上がっている地域にはどんな建物があるかを推論することができる。
例えば、データ522に町域認識照合結果として「千代田区神田駿河台」、すなわち「T2121」が、また、データ524に「１−２−３」が入っていれば、図１１の建物名リストを参照することによって、その地番（「千代田区神田駿河台１−２−３」）には、「駿河台ビル」と「神田ハイツ」が存在することが推論できる。
また、更に文字行51は認識が終了したことが分かり、認識対象の画像部分は、文字行52と文字行53であることが分かる。
【００３５】
従って、処理部553は、文字行52と文字行53に対応する文字候補ラティスを対象に、（この場合）２つの単語「駿河台ビル」「神田ハイツ」を仮説として立てて、それらの単語が文字候補ラティスの中に存在するかどうかを検証する。
この検証を実現するには、先に説明した有限オートマトンを用いる単語照合方式を用いることができる。
文字行52と文字行53に対応する文字候補ラティスを有限オートマトンで表現し、そこへ単語「駿河台ビル」「神田ハイツ」をすべての文字位置を開始点として流し込むことによって、単語ラティスが作られ、「駿河台ビル」が筆記されている場合はそれが単語ラティスに現れることになる。
一方、もし、データ522に「T2121」が入っているが、データ524に「１−２−３」が入っていない場合（もともと筆記されていない場合と、筆記されているが認識不能の場合とがある）、処理部553は、「T2121」の限定のみをかけて、すなわち「千代田区神田駿河台」という限定のみをかけて、そこに存在する建物を認識仮説として認識照合処理を行う。この場合、情報「１−２−３」が欠けているので、その地域に存在する数多くの建物を対象にする必要がある。
これらの処理の結果、建物名が認識できたとすると、同処理部553は、先と同様に、認識処理結果として文字列「駿河台ビル」とそのID番号「B06123」を、処理した部分を示すポインタとともに、、データ532、526、527として出力する。
【００３６】
つぎに、街区仮説(候補)生成処理561は、入力するデータ532に建物を表すID番号が存在するときは、例えば、ID番号「B06123」をキーとして、建物名リストにアクセスすることのよって、それが所在する街区の情報を検出するという処理を行う。
そして、この場合、「B06123」をキーとして地番「１−２−３」を検索し、この地番情報をデータ533として、街区情報統合部571へ出力する。
もし、建物名認識照合553の結果が、あいまい性が故に複数の建物名を出力した場合は、それに合わせて、街区仮説生成部も複数の地番を結果として出力する。
【００３７】
街区仮説生成処理561は、さらに、図８に示すように、人名・会社名認識照合部555からもデータ535を受け取る。
詳細は後述するが、データ533は、人名・会社名認識照合の結果として、人名や会社名のID番号を含む。従って、同処理部561は、それらのID番号をキーとして図１２に示す個人名・会社名リストを検索して、街区情報を推論することができる。このようにして得た街区情報もデータ533として、街区情報統合部571へ出力される。
【００３８】
街区情報統合部571は、冗長性を利用する一つの基本的な処理部である。
データ531とデータ533はともに認識照合結果、あるいは推論結果としての街区情報を含んでいる。
これらの２つのデータの組合せには、
１）双方ともに地番を含んでいる場合、
２）データ531には地番が含まれているがデータ533には含まれていない場合、
３）データ531には地番が含まれていないが、データ533には含まれている場合、
４）データ531にもデータ533にも街区情報が含まれていない場合、の４つのケースがある。
【００３９】
街区情報統合部571はこれら４つのケースに対して、以下のような処理を行う。
ケース４）は、未記載か認識不能のケースであり、この場合は全体としても認識不能であり、リジェクトを表す記号がデータ537として出力される。
ケース３）は、街区認識照合が失敗したが、建物や氏名、あるいは会社名の認識が成功して地番が推論できた場合である。この場合は、データ533の内容をデータ537として出力する。
ケース２）は、街区認識照合は成功したが、アパート名などの記載がなかったり、建物名認識照合に失敗した場合で、データ533には情報はないので、データ531の内容をデータ537として出力する。
【００４０】
ケース１）は、街区認識照合が成功するとともに、建物名や人名の認識と街区の推論が成功したような場合である。
この場合は、双方の情報が一致する場合と、一致しない場合がある。さらに、双方がそれぞれ複数の候補を出力し、それらから一つを最終結果として選択する必要がある場合がある。例えば、データ531には「１−２−３」と「７−２−３」が含まれ、データ533には「駿河台ビル」から推論された「１−２−３」が含まれる。この場合、「１−２−３」が共通であり、この一致する街区情報を高い確信度で出力することができる。
双方の出力がそれぞれ一つで一致する場合も、高い確信度で内容をデータ537として出力する。
一致しない場合は、認識処理の失敗、知識ベースの不備、記載の誤りの可能性があり、リジェクトという判定を行って、それを表す記号をデータ537として出力する。
認識のあいまい性が故に、それぞれ複数の候補を出してきた場合は、双方の候補集合の中に一致するものがあるか否かを調べ、一致するものがある場合は、それを高い確信度でデータ537として出力する。もし、一致するものがない場合は、上位候補の類似度を調べ、類似度がある一定の類似度より高ければ、中程度の確信度でデータ537として出力する。そうでなければ、リジェクト判定を行って、それを表す記号をデータ537として出力する。
この処理の流れの例をＰＡＤ図式（Program Analysis Diagram)で図１５に示す。
【００４１】
さて、つぎに部屋番号認識照合処理554の説明をする。
同処理部は建物名認識照合553の結果データ526と、文字切出し仮説ネットワーク503からのデータ504を受けて、図５に示すような文字行52の認識照合処理を行う。
データ526から、ここで認識すべき部分が「A-103」に対応する部分であることが分かる。また、認識された建物ID「B06123」から、図１１に示すように、そこには「Ａ棟」と「Ｂ棟」があり、また、部屋番号は「101」から「107」、「201」から「207」、さらに「301」から「307」であることが分かる。
文字切出し仮説ネットワーク503が内包する文字候補ラティスに対して、これらの事前知識を適用して認識照合候補をあげる。
具体的な処理の方法は、先に説明した有限オートマトンを用いる単語照合方式を用いることができる。単語として、「A-101」「A-102」…「A-307」「B-101」…「B-307」を自動生成して、これらすべてをオートマトンに流し込むことによって、適切な候補を選び出すことができる。
総合類似度あるいは総合ペナルティが近接している値の場合は、複数の候補を、離れている場合は単一の候補をデータ534、およびデータ528として出力する。
【００４２】
人名・会社名認識照合部555は、町域認識照合処理551結果データ523、街区認識照合処理の結果データ525、建物名認識照合処理553の結果データ527、部屋番号認識照合処理554の結果データ528、および文字切出し仮説ネットワーク504を入力とする。
結果データ523、525、527、528には常にすべての情報を認識結果として持っているわけではないので、幾つかのケースがあるが、これらの情報から図１２に示す第４種の事前認識を用いて、個人名あるいは会社名を推論する。
例えば、町域認識のみが成功したときは、図１２の個人名・会社名リストの居住町情報から個人名・会社名を検索する。
街区情報や部屋番号までが認識できているときは、同リストの居住表示番号欄から個人名・会社名を検索する。
これらの個人名・会社名を単語候補として、文字切出し仮説ネットワーク504に内包する文字候補ラティスの単語照合を行って、個人名あるいは会社名を認識することができる。この単語照合の方法は既に説明したものを用いる。
その結果である個人名あるいは会社名をデータ535、536として後段に向けて出力する。単語照合が成功しなかった場合は、リジェクトを表す記号を出力する。
【００４３】
部屋番号仮説生成処理562は、データ536を入力し、リジェクトではなかった場合、図１２の個人名・会社名リストを参照し、部屋番号を検索（推論）する。
図１２から分かるように、部屋番号は必ず付いているわけではないので、付いているものが検索できたときのみ、その結果をデータ538として出力する。
データ536がリジェクトであった場合、および検索の結果部屋番号情報が存在しなかった場合は、リジェクト記号を結果データ538として出力する。
【００４４】
つぎに、部屋番号情報統合処理572について説明する。
部屋番号情報統合処理572は、データ534とデータ538とから、部屋番号の候補を入力する。
前者は、先に説明したように、紙葉の文字を認識した結果であり、後者は推論によってほかの情報から得たものである。これらの２つの情報源からのデータを統合して、より確度の高い部屋番号候補をデータ539として出力する。
もし、複数の候補があらかじめ定めた閾値より高い確信度で入力されているときは、それら複数の候補を出力する。そのアルゴリズムは、街区情報統合571（図１５）で取った方式に準ずるので、説明は割愛する。
【００４５】
最後の処理は街区・部屋番号情報統合処理573である。
すでに説明した街区情報統合や部屋番号情報統合と同様に、２組のデータ537および539を入力する。それぞれは、先に説明したように、複数の候補を挙げている場合がある。
従って、処理573では、、それぞれの整合性を図１２に示した個人名・会社名リストで調べて、整合性のある結果を最終認識結果としてデータ540に乗せて出力する。
【００４６】
上記した建物名認識照合部、部屋番号認識照合部、人名・会社名認識照合部、そして、街区仮説生成部、街区情報統合部、部屋番号仮説生成部、部屋番号情報統合部、街区・部屋番号情報統合部は、私的住居表記の認識照合等に関する処理部であり、これらの処理部を統合した処理部を私的住居表記認識照合処理部と呼ぶ。
また、上記した図１１に示す第３種事前知識と図１２に示す第４種事前知識は私的住居表記に関する事前知識であり、該２つの事前知識を統合した事前知識を私的住居表記に関する事前知識２と呼ぶ。
【００４７】
図１６に文書理解装置を搭載した郵便区分機の概略構成を示す。
200は、郵便区分機の機構部であり、多数の紙葉を順次スキャナに供給する供給機構201と、スキャナ101と、スキャンした紙葉を区分機構に搬送する搬送機構202と、紙葉の搬送先を決める区分情報を中央の制御コンピュータ300から受け、紙葉の区分を行う区分機構203からなり、さらに、機構部200には複数の制御用のコンピュータが備えられ、これらのコンピュータは中央の制御コンピュータ300からの指示の下に機構部200全体を制御する。
【００４８】
700は、文書理解装置であり、入力インタフェース702はスキャナ101からの紙葉に記載された宛名情報を読み取った画像データを入力し、中央処理装置(ＣＰＵ)に出力する入力インタフェース702と、画像データを入力して宛名情報の認識照合を行う中央処理装置(ＣＰＵ)703、704と、宛名情報の認識照合のためのプログラムや認識照合に用いられる事前知識を記憶するメモリ705と、メモリ705にロードするプログラムや事前知識を格納している２次記憶装置708と、中央処理装置(ＣＰＵ)で認識した認識結果データを中央の制御コンピュータ300に出力する通信インタフェース707からなる。
図においては、中央処理装置(ＣＰＵ)は２台示されているが、実際には４台以上が実装される。しかし、それだけでは処理能力が不足するため、実際は、文書理解装置700が１０台以上並列に並べられる。これらの文書理解装置は、高速に読み取られる画像データ771をそれぞれ分担して処理する。
現実の郵便区分機では、１秒間に、１５通以上の郵便物の宛名画像が画像データ771として送られてくるので、それらを１０台以上の文書理解装置で分担して処理する。
中央の制御コンピュータ300は、通信インタフェース707からの通信データ772に含まれる認識結果データを解釈し、予めプログラムされた論理に従って区分情報を作成して、区分機構に出力する。
【００４９】
なお、本実施例では、紙面上に書かれた文字情報をスキャナで画像情報として読み取って文字認識する場合について説明したが、最近は、電子的な画像情報が既にコンピュータシステムに蓄積されていることも多く、そのような画像情報を認識、解釈する場合に適用することができることは言うまでもない。
【００５０】
【発明の効果】
以上のように、本発明によれば、紙葉に記載されている情報に内在している情報の冗長性を利用して、信頼度高く、あるいは高い精度で、紙葉に記載されている情報の認識を行うことが可能である。
【図面の簡単な説明】
【図１】宛名情報の例を示す図である。
【図２】単語を構成する文字または区を構成する単語の接続規則の例を示す図である。
【図３】表現する情報間に存在する意味的な冗長性の例を説明するための図である。
【図４】文書理解装置の基本機能構成を示す図である。
【図５】文書行切出し結果の例を示す図ある。
【図６】文字切出し仮説ネットワークの例を示す図ある。
【図７Ａ】文字切出し仮説ネットワークに対応する文字候補ラティスの例を示す図である。
【図７Ｂ】文字切出し仮説ネットワークにおいて選択されたパスに対応する文字候補ラティスの例を示す図である。
【図８】知的照合処理の詳細を説明するためのデータフロー図である。
【図９】第１種事前知識の例を示す図である。
【図１０】第２種事前知識の例を示す図である。
【図１１】第３種事前知識の例を示す図である。
【図１２】第４種事前知識の例を示す図である。
【図１３】有限オートマトンを用いた単語照合を説明するための図である。
【図１４】単語候補ラティスの形式の例を示す図ある。
【図１５】町区情報統合処理の流れを示す図である。
【図１６】文書理解装置を含む郵便区分機の構成を示す図である。
【符号の説明】
１  紙葉
１０１  スキャナ
２００  郵便区分機の機構部
２０１  供給機構
２０２  搬送機構
２０３  区分機構
３００  制御コンピュータ
３０１  操作パネル
７００  文書理解装置
７０２  入力インタフェース
７０３、７０４  中央処理装置(ＣＰＵ)
７０５  メモリ
７０７  通信インタフェース
７０８  ２次記憶装置
７０９  バス
【図１】
0003712831.tif 000002
【図２】
0003712831.tif 000003
【図３】
0003712831.tif 000004
【図４】
0003712831.tif 000005
【図５】
0003712831.tif 000006
【図６】
0003712831.tif 000007
【図７Ａ】
0003712831.tif 000008
【図７Ｂ】
0003712831.tif 000009
【図８】
0003712831.tif 000010
【図９】
0003712831.tif 000011
【図１０】
0003712831.tif 000012
【図１１】
0003712831.tif 000013
【図１２】
0003712831.tif 000014
【図１３】
0003712831.tif 000015
【図１４】
0003712831.tif 000016
【図１５】
0003712831.tif 000017
【図１６】
0003712831.tif 000018