(57)【要約】【課題】見出し部分に対するデータ部分の文字列の縦横の並びが規則的に整列していない帳票においても、帳票の見出しに対応するデータ部分の文字列を対応付けする。【解決手段】見出しと明細行の文字列との対応付けは、特定しやすい順に行い、残った解析しにくい項目を最後に消去法で特定する。まず、見出しと明細行の文字列とが１対１で対応する行を特定し（Ｓ１２）、次に、固定長の文字列を特定し（Ｓ１４）、文字列の折り返しのない可変長の文字列を特定し（Ｓ１５）、文字列の折り返しがあり１対１で対応する可変長の文字列を特定し（Ｓ１６）、文字列の折り返しのあり１対Ｎで対応する可変長の文字列を特定し（Ｓ１７）、それぞれ対応付けする。そして、１明細が複数行の明細行を特定し（Ｓ１８）、折り返した文字列を１つに統合する（Ｓ１９）。【選択図】図５
2011123825.tif 000002
【特許請求の範囲】
【請求項１】
見出し部分の文字列とデータ部分の文字列とを有する帳票の文字列を認識する文字認識方法において、
前記帳票のイメージデータから抽出した文字列の前記帳票上の位置関係から文字列が横方向に並んだ論理行を抽出し、前記論理行の文字列を認識して明細の見出しの文字列が並ぶ見出し行を抽出し、
見出しの文字列の総数とデータ部分の文字列の数との比が同じ明細行を抽出して見出し部分の見出しの項目をデータ部分の文字列と１対１で対応させ、
見出しに対応するデータ部分の文字列が固定長のデータを特定して見出しの項目と対応させ、
見出しに対応するデータ部分の文字列が可変長であって、文字列の折り返しのない第１可変長データを特定して見出しの項目と対応させ、
見出しに対応するデータ部分の文字列が可変長、かつ文字列の折り返しの可能性があって、見出しとデータ部分の文字列の数とが１対１で対応する第２可変長データを特定して見出しの項目と対応させ、
見出しに対応するデータ部分の文字列が可変長、かつ文字列の折り返しの可能性があって、見出しとデータ部分の文字列の数とが１対Ｎで対応する第３可変長データを特定して見出しの項目と対応させ、
折り返しにより複数行に跨っている文字列を１つのデータとして統合し、
データ部分の文字列をその見出しの内容に対応したカテゴリの辞書を用いて文字認識する、
ことを特徴とする文字認識方法。
【請求項２】
前記見出し行を抽出した後に、データ部分の文字列の属性と文字列の特徴とを取得し、見出しに対応する前記明細行の文字列を解析する際に、取得した文字列の属性と文字列の特徴とを基にして見出しに対応する文字列を特定することを特徴とする請求項１記載の文字認識方法。
【請求項３】
文字列の属性は、文字数、全角漢字か半角数字か半角英数か全角全カテゴリかを示す文字種、固定長か可変長かを示すデータ形式、文字列の折り返しの有無を示す文字列折り返し、および見出しの総数とデータの文字列の数との比を示す文字列数比を含み、文字列の特徴は、見出しの順番および固定長データの幅を示す文字列幅を含んでいることを特徴とする請求項２記載の文字認識方法。
【請求項４】
見出しの項目をデータ部分の文字列と１対１で対応させた後に、取得した文字列の属性と文字列の特徴とから特定した見出しに対するデータ部分の固定長の文字列に対して文字列の幅を算出し、固定長のデータを特定する際に使用することを特徴とする請求項２記載の文字認識方法。
【請求項５】
固定長のデータの特定は、データ部分の文字列を、算出された文字列の幅と、取得した文字列の属性および文字列の特徴を基にした文字列の文字数、文字列の文字種および文字列の位置との判断要素で比較し、それぞれの比較の一致率を得点換算し、合計得点で判断されることを特徴とする請求項４記載の文字認識方法。
【請求項６】
前記第１ないし第３可変長データの特定は、データ部分の文字列を、取得した文字列の属性および文字列の特徴を基にした文字列の文字数、文字列の文字種および文字列の位置との判断要素で比較し、それぞれの比較の一致率を得点換算し、合計得点で判断されることを特徴とする請求項２記載の文字認識方法。
【請求項７】
文字列の統合は、データ部分の固定長のデータの文字列が存在する隣接行の間隔から１明細行の行数を算出し、複数行の明細行にて折り返しによる前記第２および第３可変長データの文字列を統合することを特徴とする請求項１記載の文字認識方法。
【請求項８】
帳票のイメージデータから文字列を抽出し、文字列の位置関係から論理行を抽出し、文字列を認識して見出し行を抽出するレイアウト解析処理部と、
見出し部分の文字列とデータ部分の文字列とを対応付ける対応付け処理部と、
データ部分の文字列を認識する文字認識処理部と、
文字列の認識および特定に必要な辞書を格納しているデータ記憶部と、
を備え、
前記対応付け処理部は、
見出しの総数と行のデータの文字列の数との比が同じ行を抽出して見出し部とデータ部とを無条件に対応させる標準データ特定部と、
見出しに対応するデータ部分の文字列が固定長であるデータを特定する固定長データ特定部と、
見出しに対応するデータ部分の文字列が可変長であって、文字列の折り返しのないデータを特定する第１可変長データ特定部と、
見出しに対応するデータ部分の文字列が可変長、かつ文字列の折り返しの可能性があって、見出しと文字列の数とが１対１に対応するデータを特定する第２可変長データ特定部と、
見出しに対応するデータ部分の文字列が可変長、かつ文字列の折り返しの可能性があって、見出しと文字列の数とが１対Ｎに対応するデータを特定する第３可変長データ特定部と、
折り返しにより複数行に跨っている文字列を１つのデータとして統合する折り返しデータ統合部と、
を有していることを特徴とする文字認識装置。
【請求項９】
見出し部分の文字列とデータ部分の文字列とを有する帳票の文字列を認識する処理をコンピュータに実行させる文字認識プログラムであって、
前記コンピュータに、
前記帳票のイメージデータから抽出した文字列の前記帳票上の位置関係から文字列が横方向に並んだ論理行を抽出し、前記論理行の文字列を認識して明細の見出しの文字列が並ぶ見出し行を抽出し、
見出しの文字列の総数とデータ部分の文字列の数との比が同じ明細行を抽出して見出し部分の見出しの項目をデータ部分の文字列と１対１で対応させ、
見出しに対応するデータ部分の文字列が固定長のデータを特定して見出しの項目と対応させ、
見出しに対応するデータ部分の文字列が可変長であって、文字列の折り返しのない第１可変長データを特定して見出しの項目と対応させ、
見出しに対応するデータ部分の文字列が可変長、かつ文字列の折り返しの可能性があって、見出しとデータ部分の文字列の数とが１対１で対応する第２可変長データを特定して見出しの項目と対応させ、
見出しに対応するデータ部分の文字列が可変長、かつ文字列の折り返しの可能性があって、見出しとデータ部分の文字列の数とが１対Ｎで対応する第３可変長データを特定して見出しの項目と対応させ、
折り返しにより複数行に跨っている文字列を１つのデータとして統合し、
データ部分の文字列をその見出しの内容に対応したカテゴリの辞書を用いて文字認識する、
処理を実行させることを特徴とする文字認識プログラム。
【請求項１０】
文字列を統合する処理は、データ部分の固定長のデータの文字列が存在する隣接行の間隔から１明細行の行数を算出し、複数行の明細行にて折り返しによる前記第２および第３可変長データの文字列を統合することを特徴とする請求項９記載の文字認識プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は文字認識方法、文字認識装置および文字認識プログラムに関し、特に無罫線の帳票におけるデータ部分が規則的に整列していない連記帳票の文字を認識する文字認識方法、文字認識装置および文字認識プログラムに関する。
【背景技術】
【０００２】
金融機関等では、帳票に印字された文字の入力を自動化するために、帳票上の文字を認識する文字認識装置が用いられている。この文字認識装置では、文字認識の精度を高めるために、帳票に印刷される見出し部分およびデータ部分がどの位置にどのような順序で印刷されているかを定義し、その定義情報に基づいて文字列を認識している。
【０００３】
図２４は連記式の帳票の一例を示す図である。
連記式の帳票の例として、ここでは、振込依頼書を示している。この帳票１００によれば、その上部に、これが「振込依頼書」であり、振込人が「（株）あいうシステム」であり、振込指定日が何時であるかが記載されている。
【０００４】
帳票１００の主要部には、明細１０１が表形式で記載されている。明細１０１は、見出し部分１０２、データ部分１０３および見出しフッタ１０４から構成され、見出し部分１０２は、１行の見出しヘッダを構成し、データ部分１０３は、複数の明細行からなっている。見出し部分１０２には、「銀行名」、「支店名」、「科目」、「口座番号」、「受取人氏名」および「金額」の項目が設定されている。データ部分１０３は、見出し部分１０２の各項目に対応した文字列のデータが振込先の数だけ連記されている。見出しフッタ１０４には、見出しの「振込合計」とその数値データとが記載されている。
【０００５】
この帳票１００では、見出し部分１０２のそれぞれの項目とそれに対応するデータ部分１０３の文字列とは、予め定められた定義情報に従って整列して印字されている。その定義情報には、見出し部分１０２の項目およびこれに対応するデータ部分１０３のデータについての位置情報および文字情報が定義されていて、帳票１００における文字列のレイアウトおよび文字列の属性等が分るようになっている。
【０００６】
このように、帳票１００のデータ部分１０３を認識するには、見出し項目に対応するデータの位置情報を定義しておく必要があるため、あらかじめ定義情報を登録した帳票しか文字認識をすることができない。また、その帳票のフォーマットが変更になった場合には、登録した帳票の定義情報をその都度変更する必要がある。
【０００７】
これに対し、定義情報の登録を不要にしてフォーマットの変更があっても柔軟に対応することができる文字認識装置が知られている（たとえば、特許文献１参照）。この特許文献１に記載の文字認識装置によれば、帳票の文字の定義情報をあらかじめ作成することがなく、帳票の文字列の並びの規則性を利用して帳票の文字のレイアウトを検出し、そのレイアウトと、見出しの順序と、見出しに対応する文字列の定義情報とから、データ部分の文字列を認識している。
【０００８】
また、文字列を罫線枠の中に印字する帳票では、見出し部分およびそれに対応するデータ部分がそれぞれの罫線枠内に複数行記載されることがある。そのような場合、それぞれの罫線枠内では、途中で複数行に折り返された文字列が記載されているので、文字認識のときには、複数ある見出しの項目と複数行に記載された各行の文字列との対応付けを行うようにしている（たとえば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開平１１−１６１７３６号公報
【特許文献２】特開２０００−２９９８３号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
従来の文字認識装置は、帳票の文字列の並びの規則性を利用して帳票の文字列を認識しているため、帳票の文字列は、見出しの項目とそれに対応するデータ部分の文字列とは、一列に整列されていて、見出しに対するデータの対応付けが見出しの順番で行われている。しかしながら、近年では、見出しとデータ部分の文字列とが整列した上記のような定型的な帳票以外に、金融機関等の顧客（以下、エンドユーザという）から持ち込まれる帳票（以下、私製帳票という）についても同じように文字認識処理を行ないたいというニーズが出てきている。
【００１１】
私製帳票は、エンドユーザが自由な構想で作成した帳票であるため、必ずしも見出しとデータ部分の文字列とが規則的に整列されているとは限らない。たとえば、見出し行および明細行において、見出しの項目とそれに対応する文字列とが一列に並んで配置されずに文字列が最小の間隔で隔てて印刷されることがある。また、見出しに対応するデータが、たとえば、氏名の姓名を空白文字で結合した文字列とした場合、当該明細行では、見出しの項目数と文字列の数とが一致しなくなる。
【００１２】
さらに、見出しとデータ部分の文字列とが規則的に整列されていても、１つのデータが同じ列内で折り返した文字列で印刷されて、その明細行のみ２行表示となることがあり、その結果、明細行が１行のものと複数行のものとが混在することがある。
【００１３】
定型的ではない私製帳票は、帳票の文字列のレイアウトを検出する際に、上下に隣り合う２つの行の文字列の構造が同じであるかどうかで明細の範囲を判断する原理であるため、見出しに対するデータの文字列が整列していない場合、または見出しに対するデータが折り返しのために連続して存在していない場合は、帳票の文字列のレイアウトが正確に検出できず、文字列の文字認識処理ができないという問題点があった。
【００１４】
本発明はこのような点に鑑みてなされたものであり、見出し部分に対するデータ部分の文字列の並びが規則的に整列していない帳票においても、帳票の文字のレイアウトを解析し、帳票のデータ部分の文字列を認識する文字認識方法、文字認識装置および文字認識プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１５】
本発明では上記の課題を解決するために、見出し部分の文字列とデータ部分の文字列とを有する帳票の文字列を認識する文字認識方法において、前記帳票のイメージデータから抽出した文字列の前記帳票上の位置関係から文字列が横方向に並んだ論理行を抽出し、前記論理行の文字列を認識して明細の見出しの文字列が並ぶ見出し行を抽出し、見出しの文字列の総数とデータ部分の文字列の数との比が同じ明細行を抽出して見出し部分の見出しの項目をデータ部分の文字列と１対１で対応させ、見出しに対応するデータ部分の文字列が固定長のデータを特定して見出しの項目と対応させ、見出しに対応するデータ部分の文字列が可変長であって、文字列の折り返しのない第１可変長データを特定して見出しの項目と対応させ、見出しに対応するデータ部分の文字列が可変長、かつ文字列の折り返しの可能性があって、見出しとデータ部分の文字列の数とが１対１で対応する第２可変長データを特定して見出しの項目と対応させ、見出しに対応するデータ部分の文字列が可変長、かつ文字列の折り返しの可能性があって、見出しとデータ部分の文字列の数とが１対Ｎで対応する第３可変長データを特定して見出しの項目と対応させ、折り返しにより複数行に跨っている文字列を１つのデータとして統合し、データ部分の文字列をその見出しの内容に対応したカテゴリの辞書を用いて文字認識する、ことを特徴とする文字認識方法が提供される。
【００１６】
また、本発明では、帳票のイメージデータから文字列を抽出し、文字列の位置関係から論理行を抽出し、文字列を認識して見出し行を抽出するレイアウト解析処理部と、見出し部分の文字列とデータ部分の文字列とを対応付ける対応付け処理部と、データ部分の文字列を認識する文字認識処理部と、文字列の認識および特定に必要な辞書を格納しているデータ記憶部と、を備え、前記対応付け処理部は、見出しの総数と行のデータの文字列の数との比が同じ行を抽出して見出し部とデータ部とを無条件に対応させる標準データ特定部と、見出しに対応するデータ部分の文字列が固定長であるデータを特定する固定長データ特定部と、見出しに対応するデータ部分の文字列が可変長であって、文字列の折り返しのないデータを特定する第１可変長データ特定部と、見出しに対応するデータ部分の文字列が可変長、かつ文字列の折り返しの可能性があって、見出しと文字列の数とが１対１に対応するデータを特定する第２可変長データ特定部と、見出しに対応するデータ部分の文字列が可変長、かつ文字列の折り返しの可能性があって、見出しと文字列の数とが１対Ｎに対応するデータを特定する第３可変長データ特定部と、折り返しにより複数行に跨っている文字列を１つのデータとして統合する折り返しデータ統合部と、を有していることを特徴とする文字認識装置が提供される。
【００１７】
さらに、本発明では、見出し部分の文字列とデータ部分の文字列とを有する帳票の文字列を認識する処理をコンピュータに実行させる文字認識プログラムであって、前記コンピュータに、前記帳票のイメージデータから抽出した文字列の前記帳票上の位置関係から文字列が横方向に並んだ論理行を抽出し、前記論理行の文字列を認識して明細の見出しの文字列が並ぶ見出し行を抽出し、見出しの文字列の総数とデータ部分の文字列の数との比が同じ明細行を抽出して見出し部分の見出しの項目をデータ部分の文字列と１対１で対応させ、見出しに対応するデータ部分の文字列が固定長のデータを特定して見出しの項目と対応させ、見出しに対応するデータ部分の文字列が可変長であって、文字列の折り返しのない第１可変長データを特定して見出しの項目と対応させ、見出しに対応するデータ部分の文字列が可変長、かつ文字列の折り返しの可能性があって、見出しとデータ部分の文字列の数とが１対１で対応する第２可変長データを特定して見出しの項目と対応させ、見出しに対応するデータ部分の文字列が可変長、かつ文字列の折り返しの可能性があって、見出しとデータ部分の文字列の数とが１対Ｎで対応する第３可変長データを特定して見出しの項目と対応させ、折り返しにより複数行に跨っている文字列を１つのデータとして統合し、データ部分の文字列をその見出しの内容に対応したカテゴリの辞書を用いて文字認識する、処理を実行させることを特徴とする文字認識プログラムが提供される。
【００１８】
このような文字認識方法、文字認識装置および文字認識プログラムによれば、データ部分の文字列に対し、容易に特定できる文字列から順に解析し、残った解析しにくい文字列を最後に消去法で特定することで、見出しに対するデータ部分の文字列を順次特定するようにした。これにより、無罫線の帳票に自由なレイアウトで印字された文字列を認識することが可能となる。
【発明の効果】
【００１９】
上記構成の文字認識方法、文字認識装置および文字認識プログラムは、容易に特定できる文字列から順に解析していく方法であるため、現状の定型的な帳票の作成仕様の範囲を超えた文字認識処理が可能となり、対応できる帳票の種類を増大させることができるという利点がある。
【００２０】
また、見出しとデータ部分の文字列とが一列に整列していないような非定型の帳票は、オペレータがレイアウトを解析して文字列を入力していたが、このようなレイアウト解析が困難で文字認識結果に誤りが多い帳票も文字認識処理が可能であるので、オペレータの入力負荷を軽減することができる。
【図面の簡単な説明】
【００２１】
【図１】第１の実施の形態に係る文字認識装置を示すブロック図である。
【図２】見出しに対するデータが一列に整列していない帳票例を示す図である。
【図３】複数行の明細行が混在する帳票例を示す図である。
【図４】レイアウト解析処理部の処理の流れを示すフローチャートである。
【図５】対応付け処理部の処理の流れを示すフローチャートである。
【図６】見出し文言辞書から取得した文字列の属性および特徴の情報を示す図である。
【図７】見出し部分とデータ部分とが１対１で対応している状態を説明する図である。
【図８】１対１で対応している見出し部分とデータ部分とが対応付けされた結果の帳票を示す図である。
【図９】見出しに対応するデータが固定長の文字列の文字列幅を計測する説明図である。
【図１０】見出し部分とデータ部分とが１対１で対応していない行における固定長データを示す説明図である。
【図１１】一致率を表す得点の例を示す図である。
【図１２】固定長データが対応付けされた結果の帳票を示す図である。
【図１３】見出し部分とデータ部分とが１対１で対応していない行における第１可変長データを示す説明図である。
【図１４】一致率を表す得点の例を示す図である。
【図１５】第１可変長データが対応付けされた結果の帳票を示す図である。
【図１６】見出し部分とデータ部分とが１対１で対応していない行における第２可変長データを示す説明図である。
【図１７】一致率を表す得点の例を示す図である。
【図１８】第２可変長データが対応付けされた結果の帳票を示す図である。
【図１９】見出し部分とデータ部分とが１対１で対応していない行における第３可変長データを示す説明図である。
【図２０】一致率を表す得点の例を示す図である。
【図２１】第３可変長データが対応付けされた結果の帳票を示す図である。
【図２２】１明細が複数行であるかの判定を説明する図である。
【図２３】文字認識装置に用いられるコンピュータのハードウェア構成例を示す図である。
【図２４】連記式の帳票の一例を示す図である。
【発明を実施するための形態】
【００２２】
以下、本発明の実施の形態について、連記式の帳票として金融機関等で使用している振込依頼書を使用し、この振込依頼書に印刷されている文字列の認識を行う装置に適用した場合を例に図面を参照して詳細に説明する。
【００２３】
図１は第１の実施の形態に係る文字認識装置を示すブロック図である。
文字認識装置１０は、スキャナ１の出力が接続されたレイアウト解析処理部１１と、文字列の対応付けの処理を行う対応付け処理部１２と、文字列の認識を行う文字認識処理部１３と、処理に必要なデータ等を格納するデータ記憶部１４とを備えている。
【００２４】
レイアウト解析処理部１１は、スキャナ１によって取得された帳票のイメージデータを処理して帳票上の文字列の並びを解析する。対応付け処理部１２は、標準データ特定部１５と、固定長データ特定部１６と、第１可変長データ特定部１７と、第２可変長データ特定部１８と、第３可変長データ特定部１９と、折り返しデータ統合部２０とを備え、レイアウト解析処理部１１によって解析された文字列から見出し部分の項目と、それに対応するデータ部分のデータとを対応付ける処理を行う。
【００２５】
文字認識処理部１３は、対応付け処理部１２によって対応付けられたデータに対し、見出しの内容に対応した最適の文字認識方式を用いて文字認識を行う。
データ記憶部１４は、見出し文言辞書２１およびカテゴリ／フォント別辞書２２を格納しており、レイアウト解析処理部１１、対応付け処理部１２および文字認識処理部１３の処理に使用される。見出し文言辞書２１は、あらかじめ定められた見出し文言とそのイメージデータおよび見出しに対応した文字列の属性および文字列の特徴を格納している。カテゴリ／フォント別辞書２２は、データ部分の文字認識のための辞書として、文字認識カテゴリ／文字フォント別に用意している。
【００２６】
ここで、文字認識装置１０が処理対象とする連記式の帳票について説明する。
図２は見出しに対するデータが一列に整列していない帳票例を示す図、図３は複数行の明細行が混在する帳票例を示す図である。
【００２７】
図２に示す帳票２は、その明細３が見出し部分４、データ部分５および見出しフッタ６から構成されているが、見出し部分４の見出しの項目に対するデータ部分５の文字列が一列に整列していない例、および１つの見出しの項目に対するデータ部分５の文字列が空白文字によって２つ以上（以下、Ｎという）の文字列を含む例を示している。このような帳票２は、見出しの項目とこれに対応する文字列が一列に整列していることを前提とした処理では、見出し部分４の見出しの項目に対するデータ部分５の文字列を正しく対応付けすることができない。
【００２８】
また、図３に示す帳票７は、そのデータ部分において、１明細行が複数行となる場合を示している。これは、見出し部分の見出しの項目に対するデータ部分の文字列が一列に整列しているものの、データ部分の文字列の一部が途中で折り返されてしまっていることによる。このため、データ部分は、１明細行が１行のものと複数行のものとが混在した形になっている。このような帳票７は、１明細行が１行であることを前提とした処理では、見出し部分の見出しの項目に対するデータ部分の文字列を正しく対応付けすることができない。
【００２９】
次に、文字認識装置１０の動作について説明する。
図４はレイアウト解析処理部の処理の流れを示すフローチャートである。
レイアウト解析処理部１１は、まず、スキャナ１で走査して得られたデータを受けて帳票をイメージ化する（ステップＳ１）。次に、レイアウト解析処理部１１は、帳票のイメージデータを基に文字列を抽出する（ステップＳ２）。この文字列の抽出は、既存の技術を用いて行われる。たとえば、帳票のイメージデータを走査し、黒画素が連続する部分に接した外接矩形をラベルとして抽出する。抽出したラベルのうち、しきい値以内の距離にあるラベルは、１つの文字列を構成するラベルとして抽出する。
【００３０】
次に、レイアウト解析処理部１１は、抽出されたラベルの座標から文字列の位置関係を解析し、横方向に並ぶ文字列については、論理行を構成する文字列として抽出する（ステップＳ３）。この論理行の抽出のとき、帳票用紙の外周の輪郭を解析し、イメージが斜行していれば、イメージを回転させて同一論理行の文字列については、これらが水平に並ぶように補正される。
【００３１】
次に、レイアウト解析処理部１１は、帳票全体の文字列について、全カテゴリで文字認識を行う（ステップＳ４）。ここでは、抽出された文字列がどのカテゴリに属するものであるのか分らないので、レイアウト解析処理部１１は、特定のカテゴリに限定することなく、データ記憶部１４のすべてのカテゴリ／フォント別辞書２２を使用して文字列を認識する。この文字認識は、抽出されたすべての文字列について行われる。
【００３２】
そして、レイアウト解析処理部１１は、文字認識の結果をデータ記憶部１４の見出し文言辞書２１とマッチングを行い、明細の見出しが並ぶ行、すなわち、見出しヘッダ行および見出しフッタ行を抽出する（ステップＳ５）。見出し文言辞書２１には、振込依頼書で使用される見出しの項目である「銀行名」、「支店名」、「科目」、「口座番号」、「受取人氏名」、「金額」および「振込合計」が登録されている。もちろん、この見出し文言辞書２１は、金融機関等の業務で使用される他の見出しとなるすべての項目名も登録されている。
【００３３】
図５は対応付け処理部の処理の流れを示すフローチャート、図６は見出し文言辞書から取得した文字列の属性および特徴の情報を示す図である。
まず、対応付け処理部１２は、見出し文言辞書２１を参照して、見出しに対応するデータ部分の文字列の属性および文字列の特徴の情報を取得する（ステップＳ１１）。図６に示したように、文字列の属性としては、文字数、文字種、データ形式、文字列折り返しおよび見出しの総数と１明細行のデータの文字列の数との比を定義している。文字列の特徴としては、見出し部分の行に出現する見出しの項目の順番と、見出しに対応するデータが固定長であるときの文字列幅を定義している。
【００３４】
図７は見出し部分とデータ部分とが１対１で対応している状態を説明する図、図８は１対１で対応している見出し部分とデータ部分とが対応付けされた結果の帳票を示す図、図９は見出しに対応するデータが固定長の文字列の文字列幅を計測する説明図である。
【００３５】
対応付け処理部１２の標準データ特定部１５では、明細行を順に解析し、見出しの総数とデータ部分の文字列の数とが同じである標準的な明細行を抽出し、見出しの項目に対するデータを無条件に対応させて特定する（ステップＳ１２）。すなわち、図７に示したように、見出し部分には、その項目Ｈ１〜Ｈ６が６個あり、データ部分のデータＤ１〜Ｄ６も６個あって等しい場合には、見出しとデータとを１対１で対応できるため、無条件に対応させる。これにより、銀行名は「いろは銀行」、支店名は「本店」、科目は「普通」、口座番号は「１２３４５６７」、受取人氏名は「あいうえお（株）」、金額は「１，０００，０００」に対応付けられることになる。この結果、図８に示したように、帳票のデータ部分では、四角で囲った１行目、５行目および６行目の明細行が対応付け処理を終えたことになる。
【００３６】
ここで、見出しとデータとが１対１で対応付けられた明細行の文字桁固定項目の幅を算出する（ステップＳ１３）。データの中で文字桁が固定の項目については、他の明細行についても同じ文字列幅を有しているので、ここで、文字桁固定項目の幅を算出しておく。文字桁が固定の項目は、図６の文字列の属性から、データ形式が固定長のデータ、すなわち、見出しの項目が「科目」および「口座番号」に対応するデータＤ３，Ｄ４が選択され、図９に示したように、データＤ３，Ｄ４の文字列幅が算出される。なお、ステップＳ１２において、明細行が抽出されない場合は、抽出した１文字文のラベルおよび図６の文字列の属性から、１文字の幅に桁数を掛けた長さを、文字列の横幅として算出する。
【００３７】
ここまでは、見出しの総数と行のデータの文字列の数との比が同じである場合の処理について説明したが、以下では、見出しの総数と行のデータの文字列の数との比が異なる行の処理について説明する。
【００３８】
図１０は見出し部分とデータ部分とが１対１で対応していない行における固定長データを示す説明図、図１１は一致率を表す得点の例を示す図、図１２は固定長データが対応付けされた結果の帳票を示す図である。
【００３９】
対応付け処理部１２の固定長データ特定部１６は、標準データ特定部１５で抽出されなかった明細行を順に解析し、文字列の横幅、文字列の桁数、文字列の属性、文字列の位置から見出しに対する固定長データを特定する（ステップＳ１４）。データ部分において、文字列が固定長のデータとして、科目および口座番号のデータがある。たとえば口座番号のデータを特定する場合は、まず、図１０に示したように、行内の文字列を順次文字列の属性と比較し、口座番号のデータの文字列の属性から、明細行の文字列の幅が、半角７桁の幅のデータを抽出する。図１０の例では、データＤ４，Ｄ７が該当する。この文字列と文字列の属性との比較は、１行に含まれる文字列（データＤ１〜Ｄ７）のすべてに対し、順次、判断要素による評価（得点制）で行う。
【００４０】
図１０および図１１から、行を構成する文字列が７つあり、７つすべてについて文字列の属性や特徴を比較している。図１１の表には、判断要素による比較の一致率を得点換算した値が入っており、一致率が高いほど得点が高くなっている。図１０の例の行で順番が４番目と７番目の文字列（データＤ４，Ｄ７）に得点が入っているが、文字列の幅、文字列の文字数、文字列の文字種、文字列の位置（順番）から総合的に４番目の文字列（データＤ４）の合計得点が高いため、４番目の文字列（データＤ４）が口座番号のデータと推定する。
【００４１】
また、固定長データである科目のデータの解析も口座番号のデータの解析と同様に行われ、さらに、これら固定長データの特定は、標準データ特定部１５で抽出されなかったすべての明細行について解析する。この結果、図１２に示したように、帳票のデータ部分では、四角で囲った見出し部分の項目とそれに対応するデータ部分のデータとの対応付け処理が終えたことになる。なお、斜線が入った四角は、解析済みの文字列を示している。
【００４２】
図１３は見出し部分とデータ部分とが１対１で対応していない行における第１可変長データを示す説明図、図１４は一致率を表す得点の例を示す図、図１５は第１可変長データが対応付けされた結果の帳票を示す図である。
【００４３】
対応付け処理部１２の第１可変長データ特定部１７は、標準データ特定部１５で抽出されなかった明細行の残りのデータを順に解析し、文字列が可変長で、文字列の折り返しがなく、文字種が半角英数文字とする第１可変長データを特定する（ステップＳ１５）。この第１可変長データに該当する文字列は、図１３の明細行の最後に位置し、見出しの項目Ｈ６の「金額」に対応するデータＤ７である。図１４の表には、既に対応付けが確定した３番目および４番目のデータを除いて、判断要素による比較の一致率を得点換算した値が入っている。図１４の表によれば、その合計得点より、７番目の文字列（データＤ７）の得点が最も高いため、７番目の文字列（データＤ７）が金額のデータと推定する。
【００４４】
この第１可変長データである「科目」のデータの解析は、残りのすべての明細行について行われる。この結果、図１５に示したように、帳票のデータ部分では、四角で囲った見出し部分の項目とそれに対応するデータ部分のデータとの対応付け処理が終えたことになる。
【００４５】
図１６は見出し部分とデータ部分とが１対１で対応していない行における第２可変長データを示す説明図、図１７は一致率を表す得点の例を示す図、図１８は第２可変長データが対応付けされた結果の帳票を示す図である。
【００４６】
対応付け処理部１２の第２可変長データ特定部１８は、文字列比が１対１、文字列が６桁折り返しの可変長で、文字種が全角全カテゴリの文字とする第２可変長データを特定する（ステップＳ１６）。この第２可変長データに該当する文字列は、図１６では、見出しの「銀行名」および「支店名」に対応するデータＤ１，Ｄ２である。図１７の表には、既に対応付けが確定した３番目、４番目および７番目のデータを除いて、判断要素による比較の一致率を得点換算した値が入っている。図１７の表によれば、その合計得点より、１番目の文字列（データＤ１）の得点が最も高いため、１番目の文字列（データＤ１）が銀行名のデータと推定する。次に、２番目の文字列（データＤ２）の得点も高いため、２番目の文字列（データＤ２）が支店名のデータと推定する。
【００４７】
この第２可変長データである「銀行名」および「支店名」のデータの解析は、残りのすべての明細行について行われる。この結果、図１８に示したように、帳票のデータ部分では、四角で囲った見出し部分の項目とそれに対応するデータ部分のデータとの対応付け処理が終えたことになる。
【００４８】
図１９は見出し部分とデータ部分とが１対１で対応していない行における第３可変長データを示す説明図、図２０は一致率を表す得点の例を示す図、図２１は第３可変長データが対応付けされた結果の帳票を示す図である。
【００４９】
対応付け処理部１２の第３可変長データ特定部１９は、文字列比が１対Ｎ、文字列が１４桁折り返しの可変長で、文字種が全角全カテゴリの文字とする第３可変長データを特定する（ステップＳ１７）。この第３可変長データに該当する文字列は、図１９では、残りの見出しの「受取人氏名」に対応するデータＤ５，Ｄ６である。図２０の表には、既に対応付けが確定した１〜４番目および７番目のデータを除いて、判断要素による比較の一致率を得点換算した値が入っている。図２０の表によれば、その合計得点より、５番目の文字列（データＤ５）の得点が最も高いため、５番目の文字列（データＤ５）が受取人氏名のデータと推定する。また、６番目の文字列（データＤ６）については、対応する見出しがなく、しかも、５番目の文字列と同じ文字列の属性であるため、６番目の文字列（データＤ６）は、５番目の文字列とともに受取人氏名のデータと判断する。
【００５０】
この第３可変長データである「受取人氏名」のデータの解析は、残りのすべての明細行について行われる。この結果、図２１に示したように、帳票のデータ部分では、四角で囲った見出し部分の項目とそれに対応するデータ部分のデータとの対応付け処理が終え、１明細が１行のときのすべてのデータが対応付けられたことになる。
【００５１】
次に、図３に示した帳票７のように、見出し部分の見出しの項目に対するデータ部分の文字列が一列に整列しているが、データ部分における１明細行が１行の場合と複数行の場合とが混在しているときの処理について説明する。ただ、見出し部分の見出しの項目に対するデータ部分の文字列が一列に整列しているかどうかは、上記の対応付け処理では関係ないので、ここでは、１明細行が複数行からなる明細行を含むデータ部分がある場合の処理について説明する。
【００５２】
図２２は１明細が複数行であるかの判定を説明する図である。
まず、対応付け処理部１２の折り返しデータ統合部２０は、固定長データ特定部１６が抽出した文字列が固定長のデータ（科目または口座番号のデータ）に着目し、文字列が存在する隣接行の間隔から、文字列の折り返しがある明細行であるか判断し、それぞれの明細行の行数を特定する（ステップＳ１８）。図２２を見ると、たとえば、口座番号のデータのある行がデータ部分の１行目と２行目とに連続して存在するため、１行目は、１明細が１行であると判断する。口座番号のデータのある行で２行目の次は、５行目となって２行分の空きがあるので、２行目は、１明細が３行であると判断する。口座番号のデータのある行で５行目の次は、７行目となって１行分の空きがあるので、５行目は、１明細が２行であると判断する。
【００５３】
次に、折り返しデータ統合部２０は、ステップＳ１８で文字列の折り返しのある明細行であると判断した場合、口座番号のデータの位置を確定した後、複数行に跨って折り返したデータの文字列を、１項目に統合する（ステップＳ１９）。すなわち、２行目の明細行では、２行に跨って折り返されている銀行名のデータの文字列が１項目に統合され、３行に跨って折り返されている受取人氏名のデータの文字列が１項目に統合される。５行目の明細行においても同様に、２行に跨って折り返されている銀行名のデータの文字列が１項目に統合され、２行に跨って折り返されている支店名のデータの文字列が１項目に統合される。
【００５４】
以上のように、対応付け処理部１２では、見出しとデータ部分の文字列との対応付けは、見出し文言辞書２１から取得した見出しに対するデータ部分の文字列の属性および文字列の特徴と、上記のステップＳ４で実際に文字認識した文字列の属性および文字列の特徴とを比較して、一致率が高いものを対応させている。しかも、見出しとデータ部分の文字列との対応付けは、文字列の属性および特徴の情報から容易に特定できるデータから順に解析していき、残った解析しにくい項目を最後に消去法で特定することにしている。
【００５５】
このようにして対応付けられた文字列は、その属性および特徴が判明している。したがって、最後に、文字認識処理部１３が文字認識処理を行うときには、その文字列の文字種に適合したカテゴリの辞書を用いて文字認識をすることになる。これにより、たとえば見出しが口座番号のデータは、カテゴリが半角数字に絞り込まれた特定の辞書を使って文字認識されるので、１回目の文字認識（ステップＳ４）よりも高い精度で認識させることができる。
【００５６】
この文字認識装置１０は、最後に、文字認識処理部１３にて文字認識された結果を文字認識の呼び出し側へ通知する。
図２３は文字認識装置に用いられるコンピュータのハードウェア構成例を示す図である。
【００５７】
コンピュータ５０は、ＣＰＵ（Central Processing Unit）５１によって装置全体が制御されている。ＣＰＵ５１には、バス５７を介してＲＡＭ（Random Access Memory）５２、ハードディスクドライブ（ＨＤＤ:Hard Disk Drive）５３、グラフィック処理装置５４、入力インタフェース５５、および通信インタフェース５６が接続されている。
【００５８】
ＲＡＭ５２には、ＣＰＵ５１に実行させるＯＳ（Operating System）のプログラムや文字認識処理に必要なアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ５２には、ＣＰＵ５１による処理に必要な各種データが格納される。ＨＤＤ５３には、ＯＳ、文字認識用のアプリケーションプログラム、文字認識に使われる辞書等が格納されている。
【００５９】
グラフィック処理装置５４には、モニタ５８が接続されている。グラフィック処理装置５４は、ＣＰＵ５１からの命令に従って、画像をモニタ５８の画面に表示させる。入力インタフェース５５には、スキャナ１、キーボード５９およびマウス６０が接続されている。入力インタフェース５５は、スキャナ１、キーボード５９およびマウス６０から送られてくる信号を、バス５７を介してＣＰＵ５１に送信する。
【００６０】
通信インタフェース５６は、金融機関内のネットワークに接続されている。通信インタフェース５６は、ネットワークを介して、他のコンピュータとの間でデータの送受信を行う。
【００６１】
以上のようなハードウェア構成によって、本実施の形態の文字認識装置１０に係る処理機能を実現することができる。
【符号の説明】
【００６２】
１  スキャナ
２，７，１００  帳票
３，１０１  明細
４，１０２  見出し部分
５  データ部分
６  見出しフッタ
１０  文字認識装置
１１  レイアウト解析処理部
１２  対応付け処理部
１３  文字認識処理部
１４  データ記憶部
１５  標準データ特定部
１６  固定長データ特定部
１７  第１可変長データ特定部
１８  第２可変長データ特定部
１９  第３可変長データ特定部
２０  折り返しデータ統合部
２１  見出し文言辞書
２２  カテゴリ／フォント別辞書
５０  コンピュータ
５１  ＣＰＵ
５２  ＲＡＭ
５３  ＨＤＤ
５４  グラフィック処理装置
５５  入力インタフェース
５６  通信インタフェース
５７  バス
５８  モニタ
５９  キーボード
６０  マウス
【図１】
2011123825.tif 000003
【図２】
2011123825.tif 000004
【図３】
2011123825.tif 000005
【図４】
2011123825.tif 000006
【図５】
2011123825.tif 000007
【図６】
2011123825.tif 000008
【図７】
2011123825.tif 000009
【図８】
2011123825.tif 000010
【図９】
2011123825.tif 000011
【図１０】
2011123825.tif 000012
【図１１】
2011123825.tif 000013
【図１２】
2011123825.tif 000014
【図１３】
2011123825.tif 000015
【図１４】
2011123825.tif 000016
【図１５】
2011123825.tif 000017
【図１６】
2011123825.tif 000018
【図１７】
2011123825.tif 000019
【図１８】
2011123825.tif 000020
【図１９】
2011123825.tif 000021
【図２０】
2011123825.tif 000022
【図２１】
2011123825.tif 000023
【図２２】
2011123825.tif 000024
【図２３】
2011123825.tif 000025
【図２４】
2011123825.tif 000026