(57)【要約】【課題】事前に帳票を入手することなく、レイアウトの異なるすべての帳票を仕分けすることができる帳票仕分プログラムを提供する。【解決手段】複数種類の帳票の仕分けを可能とする帳票仕分装置による帳票仕分プログラムであって、帳票の読取装置によって読み取られた帳票に含まれるＩＤに基づいて、帳票が定型の帳票か又は非定型の帳票かを判断するステップと、帳票が定型の帳票であると判断された場合、帳票の所定領域の文字列と、キーワードと収納に関する収納情報とを関連付けた所定のテーブルに基づいて、収納情報を特定するステップと、帳票が非定型の帳票であると判断された場合、帳票全体において抽出された連続する行単位の文字列と、所定のテーブルに基づいて、収納情報を特定するステップとを帳票仕分装置のコンピュータに実行させる。【選択図】図１７
2018055578.tif 000002
【特許請求の範囲】
【請求項１】
複数種類の帳票の仕分けを可能とする帳票仕分装置による帳票仕分プログラムであって、
帳票の読取装置によって読み取られた前記帳票に含まれるＩＤに基づいて、前記帳票が定型の帳票か又は非定型の帳票かを判断するステップと、
前記帳票が前記定型の帳票であると判断された場合、前記帳票の所定領域の文字列と、キーワードと収納に関する収納情報とを関連付けた所定のテーブルに基づいて、前記収納情報を特定するステップと、
前記帳票が前記非定型の帳票であると判断された場合、前記帳票全体において抽出された連続する行単位の文字列と、前記所定のテーブルに基づいて、前記収納情報を特定するステップとを、
前記帳票仕分装置のコンピュータに実行させることを特徴とする帳票仕分プログラム。
【請求項２】
前記帳票が前記非定型の帳票であると判断された場合、前記連続する行単位の文字列と前記所定のテーブルを突合わせし、前記文字列が前記キーワードに一致しない場合、前記文字列の突合わせの先頭を一文字ずつずらして前記突合わせを行い、一致したキーワードに基づいて前記収納情報を特定することを特徴とする請求項１に記載の帳票仕分プログラム。
【請求項３】
前記先頭をずらした前記突合わせによって一致するキーワードが存在しない場合、前記各文字列と前記所定のテーブルのキーワードとの一致率を算出するステップと、
算出された前記一致率が所定の一致率以上の場合に、該当する前記文字列を前記所定のテーブルの当該キーワードに置き換えて、前記収納情報を特定することを特徴とする請求項２に記載の帳票仕分プログラム。
【請求項４】
算出された前記一致率が前記所定の一致率以上でない場合、
ユーザによってカスタマイズされたテーブルに前記文字列に該当するキーワードが存在するか否かを判断するステップを更に有することを特徴とする請求項３に記載の帳票仕分プログラム。
【請求項５】
複数種類の帳票の仕分けを可能とする帳票仕分装置であって、
帳票の読取装置によって読み取られた前記帳票に含まれるＩＤに基づいて、前記帳票が定型の帳票か又は非定型の帳票かを判断する判断部と、
前記帳票が前記定型の帳票であると判断された場合、前記帳票の所定領域の文字列と、キーワードと収納に関する収納情報とを関連付けた所定のテーブルに基づいて、前記収納情報を特定し、
前記帳票が前記非定型の帳票であると判断された場合、前記帳票全体において抽出された連続する行単位の文字列と、前記所定のテーブルに基づいて、前記収納情報を特定する特定部とを、
備えることを特徴とする帳票仕分装置。
【請求項６】
複数種類の帳票の仕分けを可能とする帳票仕分方法であって、
帳票の読取装置によって読み取られた前記帳票に含まれるＩＤに基づいて、前記帳票が定型の帳票か又は非定型の帳票かを判断するステップと、
前記帳票が前記定型の帳票であると判断された場合、前記帳票の所定領域の文字列と、キーワードと収納に関する収納情報とを関連付けた所定のテーブルに基づいて、前記収納情報を特定するステップと、
前記帳票が前記非定型の帳票であると判断された場合、前記帳票全体において抽出された連続する行単位の文字列と、前記所定のテーブルに基づいて、前記収納情報を特定するステップとを、
有することを特徴とする帳票仕分方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、帳票を特定して仕分けする帳票仕分プログラムに関する。
【背景技術】
【０００２】
税公金を納付する帳票は、国庫金、都道府県税、市区町村税、公共料金の４つの種類に基本的に分けられ、それぞれの帳票は作成元が異なるためフォーマットが様々である。金融機関は、帳票によって納付された後、納付先（国、地方公共団体、企業）ごとにどれだけ納付する必要があるか集計をする。
【０００３】
従来は、現物の帳票を入手し、光学的に帳票を読み取って、罫線情報、帳票のサイズ、収納情報（収納先名、税目など）を定義情報としてデータベース化していた。金融機関は、持ち込まれた帳票を光学的に読み取って事前に準備した定義情報と照合することで持ち込まれた帳票を仕分けていた（下記の特許文献１を参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−１６２８０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
定義情報を用いる帳票の仕分けの場合、金融機関は事前にすべての帳票を入手する必要がある。また、不定期に行われる帳票の改訂について監視し、改訂に合わせて定義情報を更新する必要があり、運用上の手間となっていた。また、定義情報がない帳票については行員などの目で仕分けなければならず、行員に対して負荷がかかっていた。
【０００６】
一方、定義情報を用いない帳票の仕分けの方法があるが、この方法は為替業務の為替帳票の仕分けをサポートするものであり、以下の理由により税公金の帳票への適用が困難である。
【０００７】
為替業務の帳票種類は為替帳票の１種類のみであり、為替帳票の「見出しに対する項目位置が一意に特定できる」という帳票レイアウトの特徴がある。そのため、為替業務では、罫線枠内の見出しを抽出し、その隣接する罫線枠内にある項目位置を論理的に特定する方式を採用している。例えば、金額の見出しを抽出し、論理的に右隣の枠を金額項目と特定して文字認識する。
【０００８】
それに対して、税公金業務の帳票種類は、上記４種類あるという違いがある。また、上記４種類の帳票は、為替帳票の帳票レイアウトの特徴と異なり、さらに、それぞれの帳票でも帳票レイアウトの特徴が異なる。例えば、国庫金の帳票（定型）の場合、５桁の帳票ＩＤが存在するという特徴があり、帳票ＩＤを認識することで税目の項目が特定できる。また、市区町村税の帳票（非定型）の場合、収納先が自由に作成した帳票であり、収納先名の項目は、罫線に囲まれていたり、囲まれていなかったりとまちまちである。このように、税公金の帳票に対して、従来の定義情報を用いない仕分け方法を適用しても仕分けできない、又は仕分けの効率が上がらないなどの問題がある。
【０００９】
本発明、上記課題に鑑み、事前に帳票を入手することなく、レイアウトの異なるすべての帳票を仕分けすることができる帳票仕分プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するために、本発明は、複数種類の帳票の仕分けを可能とする帳票仕分装置による帳票仕分プログラムであって、帳票の読取装置によって読み取られた前記帳票に含まれるＩＤに基づいて、前記帳票が定型の帳票か又は非定型の帳票かを判断するステップと、前記帳票が前記定型の帳票であると判断された場合、前記帳票の所定領域の文字列と、キーワードと収納に関する収納情報とを関連付けた所定のテーブルに基づいて、前記収納情報を特定するステップと、前記帳票が前記非定型の帳票であると判断された場合、前記帳票全体において抽出された連続する行単位の文字列と、前記所定のテーブルに基づいて、前記収納情報を特定するステップとを前記帳票仕分装置のコンピュータに実行させることを特徴とする。
【００１１】
また、本発明の帳票仕分プログラムにおいて、前記帳票が前記非定型の帳票であると判断された場合、前記連続する行単位の文字列と前記所定のテーブルを突合わせし、前記文字列が前記キーワードに一致しない場合、前記文字列の突合わせの先頭を一文字ずつずらして前記突合わせを行い、一致したキーワードに基づいて前記収納情報を特定することは、好ましい態様である。
【００１２】
また、本発明の帳票仕分プログラムにおいて、前記先頭をずらした前記突合わせによって一致するキーワードが存在しない場合、前記各文字列と前記所定のテーブルのキーワードとの一致率を算出するステップと、算出された前記一致率が所定の一致率以上の場合に、該当する前記文字列を前記所定のテーブルの当該キーワードに置き換えて、前記収納情報を特定することは、好ましい態様である。
【００１３】
また、本発明の帳票仕分プログラムにおいて、算出された前記一致率が前記所定の一致率以上でない場合、ユーザによってカスタマイズされたテーブルに前記文字列に該当するキーワードが存在するか否かを判断するステップを更に有することは、好ましい態様である。
【００１４】
また、本発明は、複数種類の帳票の仕分けを可能とする帳票仕分装置であって、帳票の読取装置によって読み取られた前記帳票に含まれるＩＤに基づいて、前記帳票が定型の帳票か又は非定型の帳票かを判断する判断部と、前記帳票が前記定型の帳票であると判断された場合、前記帳票の所定領域の文字列と、キーワードと収納に関する収納情報とを関連付けた所定のテーブルに基づいて、前記収納情報を特定し、前記帳票が前記非定型の帳票であると判断された場合、前記帳票全体において抽出された連続する行単位の文字列と、前記所定のテーブルに基づいて、前記収納情報を特定する特定部とを備えることを特徴とする。
【００１５】
また、本発明は、複数種類の帳票の仕分けを可能とする帳票仕分方法であって、帳票の読取装置によって読み取られた前記帳票に含まれるＩＤに基づいて、前記帳票が定型の帳票か又は非定型の帳票かを判断するステップと、前記帳票が前記定型の帳票であると判断された場合、前記帳票の所定領域の文字列と、キーワードと収納に関する収納情報とを関連付けた所定のテーブルに基づいて、前記収納情報を特定するステップと、前記帳票が前記非定型の帳票であると判断された場合、前記帳票全体において抽出された連続する行単位の文字列と、前記所定のテーブルに基づいて、前記収納情報を特定するステップとを有することを特徴とする。
【発明の効果】
【００１６】
本発明によれば、事前に帳票を入手することなく、レイアウトの異なるすべての帳票を仕分けすることができる。
【図面の簡単な説明】
【００１７】
【図１】実施の形態に係る帳票仕分プログラムを実装する帳票仕分装置を含む帳票仕分システムの一例を示す図である。
【図２】実施の形態に係る帳票仕分装置の機能構成の一例を示す構成図である。
【図３】実施の形態における帳票を説明するための図である。
【図４】実施の形態における国庫金帳票ＩＤテーブルの一例を示す図である。
【図５Ａ】実施の形態における国庫金の定型タイプの帳票の一例を示す図である。
【図５Ｂ】実施の形態における国庫金の非定型タイプの帳票の一例を示す図である。
【図６】実施の形態における払込ＩＤテーブルの一例を示す図である。
【図７Ａ】実施の形態における都道府県税／市区町村税の定型タイプ（ペイジー）の帳票の一例を示す図である。
【図７Ｂ】実施の形態における都道府県税／市区町村税の定型タイプ（東京ＭＴ）の帳票の一例を示す図である。
【図７Ｃ】実施の形態における都道府県税／市区町村税の非定型タイプの帳票の一例を示す図である。
【図７Ｄ】実施の形態における都道府県税／市区町村税の非定型タイプの帳票の一例を示す図である。
【図７Ｅ】実施の形態における公共料金の非定型タイプの帳票の一例を示す図である。
【図８】実施の形態における税目ＩＤテーブルの一例を示す図である。
【図９】実施の形態における税区分キーワードテーブルの一例を示す図である。
【図１０Ａ】実施の形態における税目テーブルの一例を示す図である。
【図１０Ｂ】実施の形態における税目テーブル（ユーザ用）の一例を示す図である。
【図１１】実施の形態における地公体テーブルの一例を示す図である。
【図１２Ａ】実施の形態における収納先企業名テーブルの一例を示す図である。
【図１２Ｂ】実施の形態における収納先企業名テーブル（ユーザ用）の一例を示す図である。
【図１３】実施の形態における各帳票の特徴や税目について説明するための図である。
【図１４】実施の形態における払込ＩＤについて説明するための図である。
【図１５】実施の形態に係る帳票仕分装置による帳票イメージの取得、収納先の特定、特定した収納情報の送信までの一連の処理フローの一例を示すフローチャートである。
【図１６Ａ】実施の形態における読取画面の表示例を示す図である。
【図１６Ｂ】実施の形態における読み取られた帳票の一例を示す図である。
【図１６Ｃ】実施の形態における払込金額修正画面の表示例を示す図である。
【図１７】実施の形態におけるアプリケーション処理のサブルーチンの一例を示すフローチャートである。
【図１８】実施の形態における税公金認識処理（帳票種類識別）のサブルーチンの一例を示すフローチャートである。
【図１９】実施の形態における帳票種類識別処理のサブルーチンの一例を示すフローチャートである。
【図２０】実施の形態における国庫金（定型）の識別処理のサブルーチンの一例を示すフローチャートである。
【図２１】実施の形態における公共料金（定型）の識別処理のサブルーチンの一例を示すフローチャートである。
【図２２】実施の形態における税金（定型）の識別処理のサブルーチンの一例を示すフローチャートである。
【図２３】実施の形態における国庫金（非定型）の識別処理のサブルーチンの一例を示すフローチャートである。
【図２４】実施の形態における公共料金（非定型）の識別処理のサブルーチンの一例を示すフローチャートである。
【図２５】実施の形態における税金（非定型）の識別処理のサブルーチンの一例を示すフローチャートである。
【図２６】実施の形態における帳票のＩＤ候補の特定処理（ＩＤによる特定）のサブルーチンの一例を示すフローチャートである。
【図２７】実施の形態における帳票識別結果編集処理のサブルーチンの一例を示すフローチャートである。
【図２８Ａ】実施の形態における収納先企業名の特定処理（所定文字列による特定）のサブルーチンの一例を示すフローチャートである。
【図２８Ｂ】実施の形態における収納先企業名の特定処理（キーワード検索による特定）のサブルーチンの一例を示すフローチャートである。
【図２９】実施の形態における税目の特定処理（所定文字列による特定）のサブルーチンの一例を示すフローチャートである。
【図３０】実施の形態における収納先地公体名の特定処理（所定文字列による特定）のサブルーチンの一例を示すフローチャートである。
【図３１】実施の形態における帳票の特定処理（キーワード検索による特定）のサブルーチンの一例を示すフローチャートである。
【図３２】実施の形態における税目の特定処理（キーワード検索による特定）のサブルーチンの一例を示すフローチャートである。
【図３３】実施の形態における収納先地公体名の特定（キーワード検索による特定）処理のサブルーチンの一例を示すフローチャートである。
【図３４】実施の形態に係る帳票仕分装置を実現するためのハードウェア構成の一例を示す図である。
【図３５】実施の形態における収納情報の通知形式の一例を示す図である。
【図３６】実施の形態における帳票の種類によって通知する情報を説明するための図である。
【図３７】実施の形態におけるキーワードの比較文字数と一致率の関係を示す図である。
【図３８】実施の形態における文字列抽出処理のサブルーチンの一例を示すフローチャートである。
【図３９】実施の形態における文字抽出処理の概念図の一例を示す図である。
【図４０】実施の形態における収納先企業名テーブルとの突合わせ処理のサブルーチンの一例を示すフローチャートである。
【発明を実施するための形態】
【００１８】
以下、実施の形態について図面を参照して説明する。まず、実施の形態に係る帳票仕分プログラムを実装する帳票仕分装置を含む帳票仕分システムの一例について図１を用いて説明する。帳票仕分システム１は、帳票仕分装置２、スキャナ（読取装置とも言う）３、サーバ４から構成されており、帳票仕分装置２、スキャナ３、サーバ４は、例えばＬＡＮ（Local Area Network）などによって接続されている。
【００１９】
スキャナ３は、金融機関などの窓口へ提出された帳票を光学的に読み取り、読み取った帳票の画像データ（帳票イメージ）を帳票仕分装置２へ送信する。
【００２０】
帳票仕分装置２は、スキャナ３から送信された帳票イメージに基づいて、帳票が定型の帳票か又は非定型の帳票かを判断し、帳票が定型の帳票である場合、帳票全体（全範囲）における抽出された連続する行単位の文字列のうちの所定領域の文字列（所定文字列）と、キーワードと収納に関する収納情報とを関連付けた所定のテーブルに基づいて、収納情報を特定する（所定文字列による特定）。一方、帳票が非定型の帳票である場合、帳票全体における抽出された連続する行単位の文字列と、上記所定のテーブルに基づいて、収納情報を特定する（キーワード検索による特定）。詳細な処理については後述する。
【００２１】
サーバ４は、帳票仕分装置２によって特定された帳票に関する情報を受信し、受信した情報に基づいて、税区分や収納先ごとなどによって帳票を仕分け、収納金の管理などを可能とする。
【００２２】
ここでの帳票は、例えば税公金帳票であって、その種類（税区分）は、図３に示すように、国庫金、都道府県税、市区町村税、公共料金であり、税区分ごとに税目や収納先が決められている。これらの情報を利用することで帳票の仕分けを可能とする。また、帳票のタイプには、帳票のレイアウト（形式）があらかじめ決められた定型タイプ（以下、単に定型とも言う）と、帳票のレイアウトがあらかじめ決められていない非定型タイプ（以下、単に非定型とも言う）、すなわち収納先（例えば、都道府県、市区町村、企業など）が帳票のレイアウトを自由に決定することができるタイプがある。このことから、以下で扱う帳票は、国庫金の定型及び非定型の帳票、都道府県税の定型及び非定型の帳票、市区町村税の定型及び非定型の帳票、公共料金の定型及び非定型の帳票である。
【００２３】
収納情報とは、収納先名、税目、税目補助などを含む情報である。収納先名は収納（受領）する主体を示し、税目は租税の種目や公共料金の種目などを示し、税目補助は収納に関する補助的な情報を示すものである。例えば、帳票が東京都の法人税を収納するためのものである場合、収納先名は東京都であり、税目は法人税であり、税目補助は帳票中にＩＤ（後述する払込ＩＤ）が存在すればそのＩＤである。なお、この場合の税区分は都道府県税である。特定された収納情報は、税区分とともに帳票仕分装置２によってサーバ４へ通知される。
【００２４】
次に、実施の形態に係る帳票仕分装置２の機能構成の一例について図２を用いて説明する。帳票仕分装置２は、スキャナ制御部２０、文字認識処理部２１、帳票種類識別処理部２２、認識方式選択処理部２３、収納先特定処理部２４、認識結果補正部２５、格納部２６から構成されている。なお、帳票仕分装置２の構成はこれに限られるものではなく、他の構成要素を含んでもよい。
【００２５】
スキャナ制御部２０は、スキャナ３による帳票の読み取りを制御するものであって、スキャナ３の読取台に置かれた帳票の読み取りの開始などを指示する。
【００２６】
文字認識処理部２１は、スキャナ３によって読み取られた帳票の画像（イメージ）から罫線、セル、文字列を抽出し、活字文字認識辞書テーブル２６０を用いて抽出された文字列（ＩＤやキーワード）などを認識する。活字文字認識辞書テーブル２６０には、例えば、文字列の文字と、その文字に対応した活字文字の情報などが対応付けられて記憶されている。
【００２７】
帳票種類識別処理部（判断部とも言う）２２は、文字認識処理部２１によって認識された文字列（帳票内のＩＤ）に基づいて、帳票のタイプを識別する。
【００２８】
認識方式選択処理部２３は、帳票種類識別処理部２２によって識別された帳票のタイプに応じた帳票の認識方式を選択する。
【００２９】
収納先特定処理部（特定部とも言う）２４は、認識方式選択処理部２３によって選択された認識方式に基づいて収納情報を特定する。
【００３０】
認識結果補正部２５は、後述するように、収納情報を特定する際、帳票の汚れや文字の擦れなどのノイズにより収納先などを認識できない場合に、認識できない文字列（キーワード）が格納部２６の各種テーブル（例えば、収納先企業名テーブル２６７など）のキーワードと所定の一致率を満たす場合、認識できないキーワードを所定の一致率を満たすキーワードに補正する（置き換える）。置き換えられたキーワードに基づいて収納情報が特定される。
【００３１】
格納部２６は、帳票の識別処理をする際に必要な情報（テーブル）を格納するものであり、例えば活字文字認識辞書テーブル２６０、国庫金帳票ＩＤテーブル２６１、払込ＩＤテーブル２６２、税目ＩＤテーブル２６３、税区分キーワードテーブル２６４、税目テーブル２６５、税目テーブル（ユーザ用）２６５ａ、地公体テーブル２６６、収納先企業名テーブル２６７、収納先企業名テーブル（ユーザ用）２６７ａを格納する。
【００３２】
ここで、各テーブルについて説明する。
まず、国庫金帳票ＩＤテーブル２６１について説明する。図４に示す国庫金帳票ＩＤテーブル２６１は、帳票が国庫金の定型の帳票であるか否かを判断する際に用いられるテーブルである。具体的には、後述するように、所定のＩＤ探索範囲内にある文字列（ＩＤ）が国庫金帳票ＩＤテーブル２６１に存在する場合、当該帳票は国庫金の定型の帳票であると判断される。ここでのＩＤ探索範囲とは、図５Ａに示す帳票上における所定の領域であって、例えば帳票に向かって左上部にある範囲５０（例えば所定の座標を基点とした横４．７ｃｍ、縦２．０ｃｍの範囲）である。なお、図５Ａに示す帳票は、ＩＤが国庫金帳票ＩＤテーブル２６１に存在するため、国庫金の定型の帳票である。一方、帳票内にＩＤが存在しない又は存在しても国庫金帳票ＩＤテーブルに存在しない帳票であって、帳票内に国庫金や国税などの特定キーワードが存在する帳票は、国庫金の非定型の帳票である（図５Ｂ参照）。国庫金帳票ＩＤテーブル２６１の帳票ＩＤは、５桁の数字から構成されているがこれに限られるものではない。
【００３３】
次に、払込ＩＤテーブル２６２について説明する。図６に示す払込ＩＤテーブル２６２は、帳票が税金（都道府県税又は市区町村税）又は公共料金の定型の帳票であるか否かを判断する際に用いられるテーブルである。具体的には、後述するように、所定のＩＤ探索範囲内にある文字列（ＩＤ）が払込ＩＤテーブル２６２に存在し、公共料金の払込ＩＤに一致する場合、当該帳票は公共料金の定型の帳票であると判断される。一方、所定のＩＤ探索範囲内にある文字列（ＩＤ）が払込ＩＤテーブル２６２に存在し、税金の払込ＩＤに一致する場合、当該帳票は税金の定型の帳票であると判断される。ここでのＩＤ探索範囲も、上記同様、帳票上における所定の領域であって、例えば帳票に向かって左上部にある範囲７０（例えば所定の座標を基点とした横１．２５ｃｍ、縦１．２ｃｍの範囲）である（図７Ａや図７Ｂ参照）。
【００３４】
なお、図７Ａや図７Ｂに示す帳票は、ＩＤ（７７と２７）が払込ＩＤテーブル２６２に存在し、対応する税区分が税金であるため、税金の定型の帳票である。公共料金の定型の帳票の表示例については、税金の定型の帳票と払込ＩＤの値が異なるのみでフォーマットは同様であるため省略する。一方、帳票中にＩＤが存在しないが、帳票中に会計管理者や水道局などの特定キーワードが存在する帳票は、税金の非定型の帳票である（図７Ｃや図７Ｄ参照）。また、帳票中にＩＤが存在しないが、帳票中に振込通知票などの特定キーワードが存在する帳票は、公共料金の非定型の帳票である（図７Ｅ参照）。
【００３５】
次に、税目ＩＤテーブル２６３について説明する。図８に示す税目ＩＤテーブル２６３は、帳票の税目を判断する際に用いられるテーブルである。具体的には、後述するように、抽出されたＯＣＲ文字列（例えば、図７Ａの帳票のＯＣＲ文字列のうちの所定のＯＣＲ文字列（３２〜３４桁目））が税目ＩＤテーブル２６３の税目ＩＤと一致する場合、当該帳票の税目は当該税目ＩＤに対応する税目であると判断される。例えば、３２〜３４桁目の文字列が１０１の場合、税目ＩＤの１０１と一致するため、税目は住民税であると判断される。
【００３６】
次に、税区分キーワードテーブル２６４について説明する。図９に示す税区分キーワードテーブル２６４は、帳票が非定型の場合に帳票の税区分を判断する際に用いられるテーブルである。具体的には、後述するように、帳票（の全体）から抽出される文字列（キーワード）が税区分キーワードテーブル２６４のキーワードと一致する場合、当該帳票の税区分は該当するキーワードに対応する税区分であると判断される。例えば、帳票から抽出されるキーワードが払込取扱票の場合、払込取扱票と一致するキーワードが税区分キーワードテーブル２６４に存在するため、税区分は払込取扱票に対応する公共料金であると判断される。文字列の抽出については後述する。
【００３７】
次に、税目テーブル２６５について説明する。図１０Ａに示す税目テーブル２６５は、帳票の税目を判断する際に用いられるテーブルである。具体的には、後述するように、帳票から抽出される文字列（キーワード）が税目テーブル２６５のキーワードと一致する場合、当該帳票の税目は該当するキーワードに対応する税目であると判断される。例えば、帳票から抽出されるキーワードが都市計画税の場合、都市計画税と一致するキーワードが税目テーブル２６５に存在するため、税目は都市計画税に対応する固定資産税であると判断される。なお、税目に関して、図１０Ｂに示すように、ユーザによってカスタマイズ可能な税目テーブル（ユーザ用）２６５ａを設けるようにしてもよい。これにより、あらかじめ決められた税目テーブル２６５に登録されていない税目（例えば、保育園代金など）を別途新たに登録することができ、税目テーブル２６５の範囲外の税目についても識別することが可能となる。
【００３８】
次に、地公体テーブル２６６について説明する。図１１に示す地公体テーブル２６６は、帳票の収納先を特定する際に用いられるテーブルである。具体的には、後述するように、抽出された文字列（ＯＣＲ文字列）が地公体テーブル２６６の地公体コードと一致する場合や、帳票から抽出された文字列（キーワード）が地公体テーブル２６６の地公体名と一致する場合、当該帳票の収納先は一致した地公体名であると判断される。例えば、帳票から抽出されるキーワードが札幌市の場合、札幌市と一致する地公体名が地公体テーブル２６６に存在するため、地公体名は札幌市であると判断される。
【００３９】
次に、収納先企業名テーブル２６７について説明する。図１２Ａに示す収納先企業名テーブル２６７は、帳票の収納先を特定する際に用いられるテーブルである。具体的には、後述するように、帳票から抽出される文字列（キーワード）が収納先企業名テーブル２６７のキーワードと一致する場合、当該帳票の収納先は当該キーワードに対応する企業名の企業であると判断される。例えば、帳票から抽出されるキーワードが東西日本電信電話株式会社の場合、東西日本電信電話株式会社と一致するキーワードが収納先企業名テーブル２６７に存在するため、収納先の企業名は東西日本電信電話株式会社に対応するＭＴＴであると判断される。なお、収納先企業名に関して、図１２Ｂに示すように、ユーザによってカスタマイズ可能な収納先企業名テーブル（ユーザ用）２６７ａを設けるようにしてもよい。これにより、あらかじめ決められた収納先企業名テーブル２６７に登録されていない企業名（例えば、北海道○○○株式会社）を別途新たに登録することができ、収納先企業名テーブル２６７の範囲外の収納先についても識別することが可能となる。
【００４０】
ここで、各帳票の特徴や税目について図１３を用いて説明する。帳票の種類には、上述したように、国庫金、都道府県税、市区町村税、公共料金があり、それぞれ定型タイプと非定型タイプがある。
【００４１】
国庫金の定型タイプの帳票は、５桁のＩＤ（帳票ＩＤ）が付されているという特徴を有している。一方、国庫金の非定型タイプの帳票は、ＩＤが付されていないという特徴を有している。なお、国庫金の帳票の税区分は国庫金である。
【００４２】
国庫金の定型タイプの帳票の一例が図５Ａ、国庫金の非定型タイプの帳票の一例が図５Ｂにそれぞれ示されている。
【００４３】
国庫金の定型タイプの帳票では、上述したように、５桁の帳票ＩＤが帳票上の所定の範囲（例えば所定の座標を基点とした横４．７ｃｍ、縦２．０ｃｍの範囲）に付される。また、国庫金の定型タイプの帳票では、国庫金や国税などの特定キーワードが帳票に含まれる。
【００４４】
一方、国庫金の非定型タイプの帳票では、図５Ｂに示すように、帳票ＩＤは存在しないが、国庫金の定型タイプの帳票と同様、国庫金や国税などの特定キーワードは帳票に含まれる。
【００４５】
よって、帳票ＩＤが帳票に付されており、付されたＩＤが図４に示す国庫金帳票ＩＤテーブル２６１に存在する場合、当該帳票は国庫金の定型タイプの帳票と特定される。帳票ＩＤが帳票に付されておらず、国庫金や国税などの特定キーワードのみが帳票に含まれている場合、当該帳票は国庫金の非定型タイプの帳票と特定される。なお、帳票ＩＤが帳票に付されておらず、特定キーワードと、他の帳票種類を特定する特定キーワードが帳票に含まれている場合には、国庫金や国税などの特定キーワードの抽出数が所定数を超えた場合に、当該帳票は国庫金の非定型タイプの帳票と特定されるようにしてもよい。
【００４６】
図１３の説明に戻り、都道府県税／市区町村税の定型タイプの帳票は、ペイジー（登録商標）帳票又は東京ＭＴ帳票であるという特徴を有している。一方、都道府県税／市区町村税の非定型タイプの帳票は、収納先が自由にレイアウトできるという特徴を有している。都道府県税や市区町村税の帳票の税目は、住民税、住民税特別徴収、介護保険、法人税、自動車税などである。
【００４７】
都道府県税／市区町村税の定型タイプの帳票の一例が図７Ａ及び図７Ｂ、都道府県税／市区町村税の非定型タイプの帳票の一例が図７Ｃ及び図７Ｄにそれぞれ示されている。
【００４８】
都道府県税／市区町村税の定型タイプの帳票は、図７Ａに示すペイジー帳票又は図７Ｂに示す東京ＭＴ帳票であり、推進協会などでレイアウト（形式）が規約化された帳票である。ペイジー帳票及び東京ＭＴ帳票は、所定の範囲７０（例えば所定の座標を基点とした横１．２５ｃｍ、縦１．２ｃｍの範囲）にＩＤ（払込ＩＤ）が付されており、帳票の中央付近にＯＣＲ文字列を含むものである。
【００４９】
払込ＩＤは、２桁のＩＤであって、図１４に示すように、ペイジー帳票と東京ＭＴ帳票で規約化されている。払込ＩＤの１０の位が２の帳票は東京ＭＴ帳票であり、払込ＩＤの１０の位が７の帳票はペイジー帳票である。また、払込ＩＤの１の位が３、７、９の帳票は、税金を収納するための帳票であり、払込ＩＤの１の位が０、１、２、６、８の帳票は、公共料金を収納するための帳票である。
【００５０】
ＯＣＲ文字列は、複数の数字が羅列されたものである。羅列された数字（文字列コード）は、収納に関する情報などを示しており、例えばＯＣＲ文字列の２６〜３０桁の文字列コードは収納先を示し、ＯＣＲ文字列の３２〜３４桁の文字列コードは税目を示している（図７Ａ参照）。
【００５１】
一方、都道府県税／市区町村税の非定型タイプの帳票は、図７Ｃに示す市民税の収納などで利用される帳票や、図７Ｄに示す水道料金の収納などで利用される帳票である。これらの非定型タイプの帳票には、都道府県税や市区町村税であることを特定するための特定キーワード（例えば、会計管理者、市水道局など）やコード（地公体コード）、収納先や税目などを特定するためのキーワード（例えば、○○市、市民税、水道局など）などが示されている。
【００５２】
抽出された文字列（キーワード）が、例えば県会計管理者など都道府県のものであることを示すものである場合、市会計管理者など市区町村のものであることを示すものである場合、抽出されたコードが地公体コードに該当する場合などでは、当該帳票は都道府県税又は市区町村税の帳票であると特定される。
【００５３】
地公体コードは、あらかじめ地公体（都道府県や市区町村）ごとに割り振られたコードであって、図１１に示すように、例えば、北海道は０１０００、札幌市は０１１００、函館市は０１２０２などというコードが割り振られている。地公体コードと地公体名が関連付けられた地公体テーブル２６６は、上述したように格納部２６に格納されている。なお、図１１に示される属性は地公体の属性を示しており、例えば都道府県は属性が１、区は属性が２、市は属性が４、村は属性が３などである。
【００５４】
図１３の説明に戻り、公共料金の定型タイプの帳票は、ペイジー帳票、東京ＭＴ帳票であるという特徴を有している。一方、公共料金の非定型タイプの帳票は、収納先が自由にレイアウトできるという特徴を有している。なお、公共料金の帳票の税目は、通話（電話）、電気、ガスなどである。
【００５５】
上記以外の帳票、例えば制定帳票や私製為替帳票などもあるが、ここでは仕分け対象の帳票としていない。
【００５６】
公共料金の非定型タイプの帳票の一例が図７Ｅに示されている。なお、公共料金の定型タイプの帳票は、上述した税金の定型タイプの帳票と払込ＩＤの値が異なるのみでフォーマットは同様であるため省略する。公共料金の定型タイプの帳票のＯＣＲ文字列では、２６〜２７桁の文字列コードが税目を示している。
【００５７】
公共料金の非定型タイプの帳票には、公共料金の定型タイプの帳票と異なり、払込ＩＤやＯＣＲ文字列は存在しない。
【００５８】
次に、実施の形態に係る帳票仕分装置２（帳票仕分プログラム）による帳票イメージの取得、収納先の特定、特定した収納情報の送信までの一連の処理フローについて図１５を用いて説明する。
【００５９】
帳票仕分装置２は、スキャナ３によって読み取られる帳票数の分だけ後述するアプリケーション処理を行う。帳票仕分装置２は、不図示の帳票の読み取りキーの押下を受け付ける（ステップＳ１５０１）と、帳票の収納情報を特定するためのアプリケーション処理を行う（ステップＳ１５０２）。アプリケーション処理については後述する。アプリケーション処理が終了し、帳票仕分装置２は、読み取られた帳票の認識（特定）結果（読取画面）の修正指示をユーザから受け付ける（ステップＳ１５０３）と、修正指示にしたがって認識結果の修正を行う（ステップＳ１５０４）。帳票仕分装置２は、他に読み取る帳票がある場合にはステップＳ１５０１に戻り、他に読み取る帳票がない場合には画面に表示された送信キー（図１６Ａ及び図１６Ｃを参照）のユーザによる押下に基づいて認識結果（特定された収納情報）をサーバ４へ送信する（ステップＳ１５０５）。
【００６０】
ここで、上記読取画面の表示例を図１６Ａ、読み取られた帳票を図１６Ｂに示す。図１６Ａに示す読取結果は、図１６Ｂに示す帳票を読み取り、アプリケーション処理を行うことによって得られた結果であって、税区分が公共料金、収納先（納付先）が○○○○電話株式会社、税目が電話、税目補助（払込ＩＤ）が２２であることを示している。認識結果の出力項目としては、図１６Ａに示すように、例えば、種類、納付先、金額、納付期限である。ユーザが、表示された結果に対して修正指示をしようとする場合には、表示された税公金キーを押下することにより、払込金額修正画面に切り替わる。その画面の表示例を図１６Ｃに示す。明細として読取結果（税区分（種類）、納付先、件数など）が表示されている。ユーザの指示に基づいて表示内容の修正を行い、問題がない場合には、ユーザによって送信キーが押下される。なお、修正は読取画面においても行われるようにしてもよい。帳票仕分装置２は、送信キーの押下に基づいて読取結果をサーバ４へ通知する。
【００６１】
次に、上記アプリケーション処理のサブルーチンの一例について図１７を用いて説明する。帳票仕分装置２は、スキャナ３によって読み取られた帳票の帳票イメージを取得し（ステップＳ１７０１）、取得した帳票イメージに基づいて帳票の種類などを識別する税公金認識処理（帳票種類識別）を行う（ステップＳ１７０２）。税公金認識処理（帳票種類識別）については後述する。帳票仕分装置２は、税公金認識の結果、帳票の種類などの識別ができたか否かを判断する（ステップＳ１７０３）。識別ができた場合（ステップＳ１７０３でＹｅｓ）、帳票仕分装置２は、税公金認識（図１６Ａに示す金額、納付期限などの項目の認識）を行い（ステップＳ１７０４）、認識結果の画面をディスプレイなどに表示する（ステップＳ１７０５）。
【００６２】
次に、上記税公金認識処理（帳票種類識別）のサブルーチンの一例について図１８を用いて説明する。帳票仕分装置２は、罫線を抽出するために帳票イメージを２値化する（ステップＳ１８０１）とともに、文字を認識するために帳票イメージを２値化する（ステップＳ１８０２）。帳票仕分装置２は、２値化された帳票イメージに基づいて罫線を抽出し（ステップＳ１８０３）、セルを抽出し（ステップＳ１８０４）、文字列を抽出する（ステップＳ１８０５）。文字列抽出の処理については後述する。帳票仕分装置２は、抽出された各情報に基づいて帳票の種類やタイプを識別する帳票種類識別処理を行う（ステップＳ１８０６）。帳票種類識別処理によって、所定のＩＤやキーワードが抽出できれば帳票仕分装置２によって扱うことが可能な帳票となり、抽出できない場合には取り扱いできない帳票としてリジェクトされる。帳票種類識別処理については後述する。
【００６３】
次に、上記文字列抽出の処理について図３８及び図３９を用いて説明する。図３８は文字列抽出処理のサブルーチンの一例である。帳票仕分装置２は、帳票全体（全範囲）に対して文字認識する（ステップＳ３８０１）。ここでは、例えば、帳票中において連続する文字列を行単位で１つの文字集団として認識する。帳票仕分装置２は、認識した文字数−１の分（文字集団分）だけ後述する文字列抽出の処理を行う。
【００６４】
帳票仕分装置２は、文字集団の中から基準文字（例えば、文字集団の先頭文字）を抽出し、次の文字列に格納する（ステップＳ３８０２）。帳票仕分装置２は、次の文字を抽出し、その文字の大きさと、隣接する前の文字との間隔を算出する（ステップＳ３８０３）。帳票仕分装置２は、次の文字の大きさが隣接する前の文字の大きさと同じであるか否かを判断する（ステップＳ３８０４）。大きさが同じ場合（ステップＳ３８０４でＹｅｓ）、次の文字と隣接する前の文字の間隔が、前回の文字間の間隔と同じか否かを判断する（ステップＳ３８０５）。この判断は、基準文字から数えて２文字目と３文字目の間隔以降の文字間隔において行われる。
【００６５】
間隔が同じ場合（ステップＳ３８０５でＹｅｓ）、帳票仕分装置２は、抽出した次の文字を文字列に追加する（ステップＳ３８０６）。一方、文字の大きさが同じでない場合（ステップＳ３８０４でＮｏ）や、文字間隔が同じでない場合（ステップＳ３８０５でＮｏ）には、別の文字列と判断して文字列として確定する（ステップＳ３８０７）。そして、次の文字を基準文字とし、新たな文字列として次の文字列に格納する（ステップＳ３８０８）。
【００６６】
上記ループ処理の概念図を図３９に示す。上記ループ処理について、ある文字集団（ここでは８つの文字列）を例にして考える。文字集団の基準文字（例えば、先頭文字）を抽出し、抽出された基準文字を次の文字列に格納する。次に、基準文字の隣接する次の文字を抽出する。抽出された次の文字の大きさと、基準文字と次の文字との間隔を算出する。算出された次の文字の大きさが、基準文字の大きさと同じか否かを判断する。大きさが同じ場合には、文字間の間隔が同じか判断するが、この場合、基準文字に隣接する次の文字についてのループ処理であるため、基準文字と次の文字の間隔と比較するものがない。その場合には、間隔が同じか否かの判断処理は行われない。
【００６７】
基準文字と次の文字の大きさが同じ場合、抽出された次の文字は文字列に追加され、次の文字に隣接する次の文字について上記と同様の処理が行われる。同じ大きさ、同じ間隔の文字が続くまでを１つの文字列（キーワード）とする。  次に、上記帳票種類識別処理のサブルーチンの一例について図１９を用いて説明する。帳票種類識別処理では、帳票仕分装置２は、帳票が定型の帳票であるか、非定型の帳票であるかを判断し、定型の場合には、帳票の所定領域の文字列（所定文字列）と、所定のテーブルとの突合わせをして収納情報を特定する（後述するステップＳ１９０１、Ｓ１９０３、Ｓ１９０５の識別処理に対応）。非定型の場合には、帳票の全体における抽出された連続する行単位の文字列と、所定のテーブルとの突合わせをして収納情報を特定する（後述するステップＳ１９０７、Ｓ１９０９、Ｓ１９１１の識別処理に対応）。
【００６８】
具体的な処理として、帳票仕分装置２は、帳票が国庫金の定型の帳票であるかを識別する処理、すなわち国庫金（定型）の識別処理を行う（ステップＳ１９０１）。国庫金（定型）の識別処理については後述する。
【００６９】
帳票仕分装置２は、国庫金（定型）の識別処理により帳票が国庫金の定型の帳票であると識別ができたか否かを判断する（ステップＳ１９０２）。帳票が国庫金の定型の帳票であると識別ができた場合（ステップＳ１９０２でＹｅｓ）、帳票種類識別処理を終了する。帳票が国庫金の定型の帳票であると識別ができない場合（ステップＳ１９０２でＮｏ）、帳票仕分装置２は帳票が公共料金の定型の帳票であるかを識別する処理、すなわち公共料金（定型）の識別処理を行う（ステップＳ１９０３）。公共料金（定型）の識別処理については後述する。
【００７０】
帳票仕分装置２は、公共料金（定型）の識別処理により帳票が公共料金の定型の帳票であると識別ができたか否かを判断する（ステップＳ１９０４）。帳票が公共料金の定型の帳票であると識別ができた場合（ステップＳ１９０４でＹｅｓ）、帳票種類識別処理を終了する。帳票が公共料金の定型の帳票であると識別ができない場合（ステップＳ１９０４でＮｏ）、帳票仕分装置２は帳票が税金の定型の帳票であるかを識別する処理、すなわち税金（定型）の識別処理を行う（ステップＳ１９０５）。税金（定型）の識別処理については後述する。
【００７１】
帳票仕分装置２は、税金（定型）の識別処理により帳票が税金の定型の帳票であると識別ができたか否かを判断する（ステップＳ１９０６）。帳票が税金の定型の帳票であると識別ができた場合（ステップＳ１９０６でＹｅｓ）、帳票種類識別処理を終了する。帳票が税金の定型の帳票であると識別ができない場合（ステップＳ１９０６でＮｏ）、帳票仕分装置２は帳票が国庫金の非定型の帳票であるかを識別する処理、すなわち国庫金（非定型）の識別処理を行う（ステップＳ１９０７）。国庫金（非定型）の識別処理については後述する。
【００７２】
帳票仕分装置２は、国庫金（非定型）の識別処理により帳票が国庫金の非定型の帳票であると識別ができたか否かを判断する（ステップＳ１９０８）。帳票が国庫金の非定型の帳票であると識別ができた場合（ステップＳ１９０８でＹｅｓ）、帳票種類識別処理を終了する。帳票が国庫金の非定型の帳票であると識別ができない場合（ステップＳ１９０８でＮｏ）、帳票仕分装置２は帳票が公共料金の非定型の帳票であるかを識別する処理、すなわち公共料金（非定型）の識別処理を行う（ステップＳ１９０９）。公共料金（非定型）の識別処理については後述する。
【００７３】
帳票仕分装置２は、公共料金（非定型）の識別処理により帳票が公共料金の非定型の帳票であると識別ができたか否かを判断する（ステップＳ１９１０）。帳票が公共料金の非定型の帳票であると識別ができた場合（ステップＳ１９１０でＹｅｓ）、帳票種類識別処理を終了する。帳票が公共料金の非定型の帳票であると識別ができない場合（ステップＳ１９１０でＮｏ）、帳票仕分装置２は帳票が税金の非定型の帳票であるかを識別する処理、すなわち税金（非定型）の識別処理を行う（ステップＳ１９１１）。税金（非定型）の識別処理については後述する。
【００７４】
帳票仕分装置２は、税金（非定型）の識別処理により帳票が税金の非定型の帳票であると識別ができたか否かを判断する（ステップＳ１９１２）。帳票が税金の非定型の帳票であると識別ができた場合（ステップＳ１９１２でＹｅｓ）、帳票種類識別処理を終了する。帳票が税金の非定型の帳票であると識別ができない場合（ステップＳ１９１２でＮｏ）、帳票仕分装置２は、帳票がどの帳票種類にも該当しない（取り扱えない）と判断し、帳票種類識別結果に当該帳票をリジェクトする帳票リジェクトを設定する（ステップＳ１９１３）。
【００７５】
なお、処理の順番は上記に限定されるものではなく、例えばステップＳ１９０１、ステップＳ１９０３、ステップＳ１９０５の処理の順番を入れ替えてよい。また、例えばステップＳ１９０７、ステップＳ１９０９、ステップＳ１９１１の処理の順番も入れ替えてもよい。
【００７６】
次に、上記国庫金（定型）の識別処理のサブルーチンの一例について図２０を用いて説明する。帳票仕分装置２は、帳票中に帳票のＩＤ候補があるかを判断するため、帳票のＩＤ候補の特定（ＩＤによる特定）処理を行う（ステップＳ２００１）。なお、帳票のＩＤ候補の特定処理（ＩＤによる特定）については後述する。帳票仕分装置２は、ＩＤの候補を特定できたか否かを判断する（ステップＳ２００２）。ＩＤの候補の特定ができた場合（ステップＳ２００２でＹｅｓ）、帳票仕分装置２は、候補のＩＤと、国庫金帳票ＩＤテーブル２６１とを突合わせする（ステップＳ２００３）。
【００７７】
帳票仕分装置２は、国庫金帳票ＩＤテーブル２６１に候補のＩＤと一致するＩＤがあるか否かを判断する（ステップＳ２００４）。一致するＩＤがある場合（ステップＳ２００４でＹｅｓ）、帳票仕分装置２は、当該帳票は国庫金の定型の帳票であることがわかるため、税区分に国庫金を設定し（ステップＳ２００５）、税目補助に当該帳票ＩＤを設定する（ステップＳ２００６）。帳票仕分装置２は、上記設定した結果に基づいて帳票識別結果編集を行う（ステップＳ２００７）。帳票識別結果編集処理については後述する。帳票仕分装置２は、編集した内容を帳票種類識別結果として設定する（ステップＳ２００８）。一方、ＩＤの候補の特定ができない場合（ステップＳ２００２でＮｏ）や、一致するＩＤがない場合（ステップＳ２００４でＮｏ）には、国庫金（定型）の識別処理を終了する。
【００７８】
次に、上記公共料金（定型）の識別処理のサブルーチンの一例について図２１を用いて説明する。帳票仕分装置２は、国庫金（定型）の識別処理と同様、帳票のＩＤ候補の特定（ＩＤによる特定）処理を行う（ステップＳ２１０１）。帳票仕分装置２は、ＩＤの候補を特定できたか否かを判断する（ステップＳ２１０２）。ＩＤの候補の特定ができた場合（ステップＳ２１０２でＹｅｓ）、帳票仕分装置２は、候補のＩＤと、払込ＩＤテーブル２６２とを突合わせする（ステップＳ２１０３）。
【００７９】
帳票仕分装置２は、払込ＩＤテーブル２６２の公共料金のＩＤに候補のＩＤと一致するＩＤがあるか否かを判断する（ステップＳ２１０４）。一致するＩＤがある場合（ステップＳ２１０４でＹｅｓ）、帳票仕分装置２は、当該帳票は公共料金の定型の帳票であることがわかるため、公共料金の定型に対応する認識方式、すなわち所定領域の所定文字列による特定を選択する（ステップＳ２１０５）。
【００８０】
帳票仕分装置２は、税区分に公共料金を設定する（ステップＳ２１０６）。帳票仕分装置２は、収納先を特定するための収納先企業名の特定（所定文字列による特定）処理を行う（ステップＳ２１０７）。収納先企業名の特定処理（所定文字列による特定）については後述する。帳票仕分装置２は、収納先の特定ができたか否かを判断し（ステップＳ２１０８）、特定できた場合（ステップＳ２１０８でＹｅｓ）、帳票仕分装置２は、収納先に対して、特定された収納先企業名を設定する（ステップＳ２１０９）。
【００８１】
帳票仕分装置２は、税目を特定するための税目の特定（所定文字列による特定）処理を行う（ステップＳ２１１０）。税目の特定処理（所定文字列による特定）については後述する。帳票仕分装置２は、税目の特定ができたか否かを判断し（ステップＳ２１１１）、特定できた場合（ステップＳ２１１１でＹｅｓ）、税目に対して特定した税目を設定する（ステップＳ２１１２）。そして、国庫金（定型）の識別処理と同様、帳票仕分装置２は、帳票識別結果編集を行い（ステップＳ２１１３）、編集した内容を帳票種類識別結果として設定する（ステップＳ２１１４）。
【００８２】
一方、ステップＳ２１０２でＩＤの候補の特定ができない場合（ステップＳ２１０２でＮｏ）や、ステップＳ２１０４で一致するＩＤがない場合（ステップＳ２１０４でＮｏ）には、公共料金（定型）の識別処理を終了する。また、ステップＳ２１０８で収納先が特定できない場合（ステップＳ２１０８でＮｏ）にはステップＳ２１１０へ進み、ステップＳ２１１１で税目が特定できない場合（ステップＳ２１１１でＮｏ）にはステップＳ２１１３へ進む。
【００８３】
次に、上記税金（定型）の識別処理のサブルーチンの一例について図２２を用いて説明する。帳票仕分装置２は、国庫金（定型）の識別処理と同様、帳票のＩＤ候補の特定（ＩＤによる特定）処理を行う（ステップＳ２２０１）。帳票仕分装置２は、ＩＤの候補を特定できたか否かを判断する（ステップＳ２２０２）。ＩＤの候補の特定ができた場合（ステップＳ２２０２でＹｅｓ）、帳票仕分装置２は、候補のＩＤと、払込ＩＤテーブル２６２とを突合わせする（ステップＳ２２０３）。
【００８４】
帳票仕分装置２は、払込ＩＤテーブル２６２の税金のＩＤに候補のＩＤと一致するＩＤがあるか否かを判断する（ステップＳ２２０４）。一致するＩＤがある場合（ステップＳ２２０４でＹｅｓ）、帳票仕分装置２は、当該帳票は税金の定型の帳票であることがわかるため、税金の定型に対応する認識方式、すなわち所定領域の所定文字列による特定を選択する（ステップＳ２２０５）。
【００８５】
帳票仕分装置２は、収納先を特定するために収納先地公体名の特定（所定文字列による特定）処理を行う（ステップＳ２２０６）。収納先地公体名の特定処理（所定文字列による特定）については後述する。帳票仕分装置２は、収納先の特定ができたか否かを判断し（ステップＳ２２０７）、特定できた場合（ステップＳ２２０７でＹｅｓ）、帳票仕分装置２は、地公体コードの下３桁が０００であるか否かを判断する（ステップＳ２２０８）。地公体コードの下３桁が０００を示すものは都道府県とし、示さないものは市区町村とするため、地公体コードの下３桁が０００である場合（ステップＳ２２０８でＹｅｓ）、帳票仕分装置２は、税区分に都道府県税を設定し（ステップＳ２２０９）、地公体コードの下３桁が０００でない場合（ステップＳ２２０８でＮｏ）、税区分に市区町村税を設定する（ステップＳ２２１０）。帳票仕分装置２は、収納先に対して、特定された収納先地公体名を設定する（ステップＳ２２１１）。
【００８６】
帳票仕分装置２は、公共料金（定型）の識別処理と同様、税目を特定するための税目の特定（所定文字列による特定）処理を行う（ステップＳ２２１２）。帳票仕分装置２は、税目の特定ができたか否かを判断し（ステップＳ２２１３）、特定できた場合（ステップＳ２２１３でＹｅｓ）、税目に対して特定した税目を設定する（ステップＳ２２１４）。そして、国庫金（定型）の識別処理と同様、帳票仕分装置２は、帳票識別結果編集を行い（ステップＳ２２１５）、編集した内容を帳票種類識別結果として設定する（ステップＳ２２１６）。
【００８７】
一方、ステップＳ２２０２でＩＤの候補の特定ができない場合（ステップＳ２２０２でＮｏ）、ステップＳ２２０４で一致するＩＤがない場合（ステップＳ２２０４でＮｏ）、ステップＳ２２０７で収納先が特定できない場合（ステップＳ２２０７でＮｏ）には、税金（定型）の識別処理を終了する。また、ステップＳ２２１３で税目が特定できない場合（ステップＳ２２１３でＮｏ）にはステップＳ２２１５へ進む。
【００８８】
次に、上記国庫金（非定型）の識別処理のサブルーチンの一例について図２３を用いて説明する。帳票仕分装置２は、帳票の特定をするために帳票の特定（キーワード検索による特定）処理を行う（ステップＳ２３０１）。なお、帳票の特定処理（キーワード検索による特定）については後述する。帳票仕分装置２は、帳票が国庫金の非定型の帳票であると特定ができたか否かを判断する（ステップＳ２３０２）。帳票が国庫金の非定型の帳票であると特定ができた場合（ステップＳ２３０２でＹｅｓ）、帳票仕分装置２は、税区分に国庫金を設定し（ステップＳ２３０３）、国庫金（定型）の識別処理と同様、帳票識別結果編集を行い（ステップＳ２３０４）、編集した内容を帳票種類識別結果として設定する（ステップＳ２３０５）。一方、帳票が国庫金の非定型の帳票であると特定ができない場合（ステップＳ２３０２でＮｏ）、国庫金（非定型）の識別処理を終了する。
【００８９】
次に、上記公共料金（非定型）の識別処理のサブルーチンの一例について図２４を用いて説明する。帳票仕分装置２は、国庫金（非定型）の識別処理と同様、帳票の特定（キーワード検索による特定）処理を行う（ステップＳ２４０１）。帳票仕分装置２は、帳票が公共料金の非定型の帳票であると特定ができたか否かを判断する（ステップＳ２４０２）。帳票が公共料金の非定型の帳票であると特定ができた場合（ステップＳ２４０２でＹｅｓ）、帳票仕分装置２は、公共料金の非定型に対応する認識方式、すなわちキーワード検索による特定を選択する（ステップＳ２４０３）。
【００９０】
帳票仕分装置２は、税区分に公共料金を設定し（ステップＳ２４０４）、収納先を特定するために収納先企業名の特定（キーワード検索による特定）処理を行う（ステップＳ２４０５）。帳票仕分装置２は、収納先の特定ができたか否かを判断し（ステップＳ２４０６）、収納先の特定ができた場合（ステップＳ２４０６でＹｅｓ）、収納先に対して、特定された収納先企業名を設定する（ステップＳ２４０７）。
【００９１】
帳票仕分装置２は、税目を特定するために税目の特定（キーワード検索による特定）処理を行う（ステップＳ２４０８）。税目の特定処理（キーワード検索による特定）については後述する。帳票仕分装置２は、税目の特定ができたか否かを判断し（ステップＳ２４０９）、特定ができた場合（ステップＳ２４０９でＹｅｓ）、税目に対して、特定された税目を設定する（ステップＳ２４１０）。帳票仕分装置２は、国庫金（非定型）の識別処理と同様、帳票識別結果編集を行い（ステップＳ２４１１）、編集した内容を帳票種類識別結果として設定する（ステップＳ２４１２）。
【００９２】
一方、帳票が公共料金の非定型の帳票であると特定ができない場合（ステップＳ２４０２でＮｏ）には公共料金（非定型）の識別処理を終了する。また、ステップＳ２４０６で収納先の特定ができない場合（ステップＳ２４０６でＮｏ）にはステップＳ２４０８へ進み、ステップ２４０９で税目の特定ができない場合（ステップＳ２４０９でＮｏ）にはステップＳ２４１１へ進む。
【００９３】
次に、上記税金（非定型）の識別処理のサブルーチンの一例について図２５を用いて説明する。帳票仕分装置２は、国庫金（非定型）の識別処理と同様、帳票の特定（キーワード検索による特定）処理を行う（ステップＳ２５０１）。帳票仕分装置２は、帳票が税金の非定型の帳票であると特定ができたか否かを判断する（ステップＳ２５０２）。帳票が税金の非定型の帳票であると特定ができた場合（ステップＳ２５０２でＹｅｓ）、帳票仕分装置２は、税金の非定型に対応する認識方式、すなわちキーワード検索による特定を選択する（ステップＳ２５０３）。
【００９４】
帳票仕分装置２は、収納先を特定するために収納先地公体名の特定（キーワード検索による特定）処理を行う（ステップＳ２５０４）。収納先地公体名の特定（キーワード検索による特定）処理については後述する。帳票仕分装置２は、収納先の特定ができたか否かを判断する（ステップＳ２５０５）。収納先の特定ができた場合（ステップＳ２５０５でＹｅｓ）、帳票仕分装置２は、収納先地公体名が都道府県であるか否かを判断する（ステップＳ２５０６）。収納先地公体名が都道府県である場合（ステップＳ２５０６でＹｅｓ）、帳票仕分装置２は、税区分に都道府県税を設定する（ステップＳ２５０７）。一方、収納先地公体名が都道府県でない場合（ステップＳ２５０６でＮｏ）、帳票仕分装置２は、税区分に市区町村税を設定する（ステップＳ２５０８）。
【００９５】
帳票仕分装置２は、収納先に対して、特定された収納先地公体名を設定する（ステップＳ２５０９）。帳票仕分装置２は、公共料金（非定型）の識別処理と同様、税目の特定処理（キーワード検索による特定）を行う（ステップＳ２５１０）。なお、ステップＳ２５１１からステップＳ２５１４の処理は、公共料金（非定型）の識別処理のフローのステップＳ２４０９からステップＳ２４１２の処理と同様であるため、説明を省略する。
【００９６】
一方、ステップＳ２５０２で帳票が税金の非定型の帳票であると特定ができない場合（ステップＳ２５０２でＮｏ）やステップＳ２５０５で収納先の特定ができない場合（ステップＳ２５０５でＮｏ）には、税金（非定型）の識別処理を終了する。
【００９７】
次に、上記帳票のＩＤ候補の特定処理（ＩＤによる特定）のサブルーチンの一例について図２６を用いて説明する。帳票仕分装置２は、抽出される文字列の数の分が終了するまで後述するステップＳ２６０１からステップＳ２６０４をループして処理をする。例えば、抽出された文字列が３つの場合には３回ループする。
【００９８】
帳票仕分装置２は、抽出された文字列がＩＤの候補となるか確認するため、抽出された文字列の座標がＩＤ探索範囲内にあるか否かを判断する（ステップＳ２６０１）。抽出された文字列の座標がＩＤ探索範囲内にある場合（ステップＳ２６０１でＹｅｓ）、帳票仕分装置２は、文字列が数字であるか否かを判断する（ステップＳ２６０２）。数字であればＩＤの候補になり得るからである。文字列が数字である場合（ステップＳ２６０２でＹｅｓ）、帳票仕分装置２は、文字列の桁数が所定の桁数と一致するか否かを判断する（ステップＳ２６０３）。帳票のＩＤにはあらかじめ桁数が決められているからである。文字数の桁数が所定の桁数と一致する場合（ステップＳ２６０３でＹｅｓ）、帳票仕分装置２は、抽出された文字列をＩＤの候補に設定する（ステップＳ２６０４）。
【００９９】
一方、ステップＳ２６０１で抽出された文字列の座標がＩＤ探索範囲内にない場合（ステップＳ２６０１でＮｏ）、ステップＳ２６０２で文字列が数字でない場合（ステップＳ２６０２でＮｏ）、ステップＳ２６０３で文字数の桁数が所定の桁数と一致しない場合（ステップＳ２６０３でＮｏ）には、抽出された他の文字列について同様の上記処理が行われる。
【０１００】
帳票仕分装置２は、抽出された文字列のループ処理が終了すると、ＩＤの候補がないか否かを判断する（ステップＳ２６０５）。ＩＤの候補がある場合（ステップＳ２６０５でＮｏ）、帳票仕分装置２はＩＤの候補が複数あるか否かを判断する（ステップＳ２６０６）。ＩＤの候補が複数ある場合（ステップＳ２６０６でＹｅｓ）、帳票仕分装置２はＩＤ探索範囲の中心からの距離が最も近いＩＤを選択し（ステップＳ２６０７）、選択したＩＤを返却（特定）する（ステップＳ２６０８）。
【０１０１】
一方、ステップＳ２６０５でＩＤの候補がない場合（ステップＳ２６０５でＹｅｓ）には帳票のＩＤ候補の特定処理を終了する。また、ステップＳ２６０６でＩＤの候補が複数ない場合（ステップＳ２６０６でＮｏ）、ステップＳ２６０８へ進む。
【０１０２】
次に、上記帳票識別結果編集処理のサブルーチンの一例について図２７を用いて説明する。帳票仕分装置２は、税区分、収納先、税目、税目補助が特定（設定）されると、これらを上位アプリケーションへ通知するために文字列編集を行う（ステップＳ２７０１）。帳票仕分装置２は、文字列編集されたものを返却（特定）する（ステップＳ２７０２）。
【０１０３】
ここでの文字列編集は、例えば、図３５に示すように、帳票ごとに税区分、収納先、税目、税目補助をアンダーバーなどで連結させる。例えば、東京都の法人税（定型）の帳票の場合、都道府県税、東京都、法人税、払込ＩＤ（例えば、７７）が連結される。なお、帳票が国庫金（定型）の場合、図３６に示すように、税区分と税目補助のみが通知されるため、この場合の文字列編集は税区分と税目補助をアンダーバーなどで連結させる。税区分と税目補助のみを連結させるのは、収納先は国と分かっており、帳票の種類の特定が税目の特定であるためである。税目補助は、例えばＩＤであり、非定型の帳票ではＩＤが基本的に存在しない。そのため、ＩＤが存在しない場合には税目補助は空欄のまま連結される。図３６に示す表では、丸印の欄の項目については通知され、線印の欄の項目については通知されないものとしている。
【０１０４】
次に、上記収納先企業名の特定処理（所定文字列による特定）のサブルーチンの一例について図２８Ａを用いて説明する。帳票仕分装置２は、抽出される文字列の数の分が終了するまで後述するステップＳ２８０１ａからステップＳ２８０４ａをループして処理をする。
【０１０５】
帳票仕分装置２は、抽出された文字列の座標が所定範囲にあるか否かを判断する（ステップＳ２８０１ａ）。ここでの所定範囲とは、帳票内の所定の範囲（例えば、見出し部とそれに隣接するデータ部があるとされる範囲）である。なお、見出し部には、加入者名などの所定のキーワードがあり、データ部には収納先の企業名などがある。
【０１０６】
帳票仕分装置２は、抽出された文字列の座標が所定範囲にある場合（ステップＳ２８０１ａでＹｅｓ）、抽出された文字列と、収納先企業名テーブル２６７との突合わせをする（ステップＳ２８０２ａ）。収納先企業名テーブル２６７との突合わせ処理については後述する。帳票仕分装置２は、突合わせ結果があるか判断する（ステップＳ２８０３ａ）。具体的には、収納先企業名テーブル２６７に、抽出された文字列と一致又は部分一致するキーワードがあるか否かを判断する。帳票仕分装置２は、突合わせ結果がある場合（ステップＳ２８０３ａでＹｅｓ）、当該キーワードに対応する企業名を収納先企業名の候補に設定する（ステップＳ２８０４ａ）。そして、抽出された文字列が他にあれば同様のループ処理が行われる。
【０１０７】
一方、突合わせ結果がない場合（ステップＳ２８０３ａでＮｏ）、抽出された文字列が他にあれば同様のループ処理が行われる。ループ処理が終了すると、帳票仕分装置２は、収納先企業名の候補があるか否かを判断する（ステップＳ２８０５ａ）。候補がある場合（ステップＳ２８０５ａでＹｅｓ）、収納先企業名を返却（特定）する（ステップＳ２８０６ａ）。
【０１０８】
次に、上記収納先企業名の特定処理（キーワード検索による特定）のサブルーチンの一例について図２８Ｂを用いて説明する。帳票仕分装置２は、抽出される文字列の数の分が終了するまで後述するステップＳ２８０１ｂからステップＳ２８０３ｂをループして処理をする。
【０１０９】
帳票仕分装置２は、抽出された文字列と、収納先企業名テーブル２６７との突合わせをする（ステップＳ２８０２ｂ）。帳票仕分装置２は、突合わせ結果があるか判断する（ステップＳ２８０２ｂ）。具体的には、収納先企業名テーブル２６７に、抽出された文字列と一致又は部分一致するキーワードがあるか否かを判断する。帳票仕分装置２は、突合わせ結果がある場合（ステップＳ２８０２ｂでＹｅｓ）、当該キーワードに対応する企業名を収納先企業名の候補に設定する（ステップＳ２８０３ｂ）。そして、抽出された文字列が他にあれば同様のループ処理が行われる。
【０１１０】
一方、突合わせ結果がない場合（ステップＳ２８０２ｂでＮｏ）、抽出された文字列が他にあれば同様のループ処理が行われる。ループ処理が終了すると、帳票仕分装置２は、収納先企業名の候補があるか否かを判断する（ステップＳ２８０４ｂ）。候補がある場合（ステップＳ２８０４ｂでＹｅｓ）、帳票仕分装置２は、収納先企業名の候補が複数あるか否かを判断する（ステップＳ２８０５ｂ）。候補が複数ある場合（ステップＳ２８０５ｂでＹｅｓ）、帳票仕分装置２は、候補数が最も多い収納先企業名を選択し（ステップＳ２８０６ｂ）、選択した収納先企業名を返却（特定）する（ステップＳ２８０７ｂ）。
【０１１１】
一方、収納先企業名の候補がない場合（ステップＳ２８０４ｂでＮｏ）には収納先企業名の特定処理（キーワード検索による特定）を終了する。また、収納先企業名の候補が複数ない場合（ステップＳ２８０５ｂでＮｏ）には、ステップＳ２８０７ｂへ進む。
【０１１２】
次に、上記収納先企業名テーブル２６７との突合わせ処理のサブルーチンの一例について図４０を用いて説明する。帳票仕分装置２は、抽出された文字列と、収納先企業名テーブル２６７（キーワード）を突合わせする（ステップＳ４００１）。帳票仕分装置２は、一致するキーワードが収納先企業名テーブル２６７にあるか否かを判断する（ステップＳ４００２）。一致するキーワードがある場合（ステップＳ４００２でＹｅｓ）、帳票仕分装置２は、突合わせ結果を返却（特定）する（ステップＳ４００３）。
【０１１３】
一致するキーワードがない場合（ステップＳ４００２でＮｏ）、帳票仕分装置２は抽出された文字列と部分一致するキーワードが収納先企業名テーブル２６７にあるか否かを判断する（ステップＳ４００４）。
【０１１４】
ここで、部分一致するキーワードがあるか否かの判断について説明する。抽出された文字列の一部が汚れなどのノイズによってすべての文字を認識できない場合がある。その場合には、認識できない文字を含む文字列と、収納先企業名テーブル２６７のキーワードとを突合わせし、抽出された文字列とキーワードの文字の一致率を算出する。算出された一致率が所定の一致率以上の場合には、抽出された文字列に部分一致するキーワードがあるとする。
【０１１５】
例えば、抽出された文字列が京東○力であるとする。○の部分はノイズによって認識できない文字である。この場合、帳票仕分装置２は、抽出された京東○力と、収納先企業名テーブル２６７とを突合わせする。収納先企業名テーブル２６７に京東電力というキーワードが存在する場合、１文字目の京、２文字目の東、４文字目の力という文字についてはそれぞれ一致する。そのため、４文字中３文字が一致するため、一致率は７５％である。所定の一致率が７５％である場合、京東電力は京東○力に部分一致するキーワードとなる。なお、比較する文字数に応じて所定の一致率を変化させてもよい。すなわち、図３７に示すように、比較する文字数が増えると所定の一致率を下げるようにしてもよい。
【０１１６】
また、抽出された文字列の認識の結果、京東○力が１つではなく複数認識された場合について考える。すなわち、抽出された文字列の擦れやにじみなどにより複数の候補（例えば、２つの候補）がある場合について考える。この場合、それぞれの候補の文字の組合せによる文字列とキーワードとの一致率が所定の一致率以上である場合には、キーワードは組合せの文字列に部分一致するものとされる。例えば、第１候補が京束○力、第２候補が束東○力とする。第１候補と第２候補の文字を組み合わせると、京東○力と束束○力の２つの文字列となる。それぞれの文字列と収納先企業名テーブル２６７の京東電力をいうキーワードとを突合わせすると、京東○力は一致率７５％であり、束束○力は一致率２５％である。この結果から一致率が所定の一致率７５％以上の文字列の組合せが存在するため、抽出された文字列に部分一致するキーワード（京東電力）があるとされる。
【０１１７】
図４０の説明に戻り、ステップＳ４００４で部分一致するキーワードがある場合（ステップＳ４００４でＹｅｓ）、帳票仕分装置２は、キーワードに対する企業名を取得する（ステップＳ４００５）。一方、部分一致するキーワードがない場合（ステップＳ４００４でＮｏ）、帳票仕分装置２は、抽出された文字列と、ユーザによってカスタマイズされた収納先企業名テーブル（ユーザ用）（キーワード）２６７ａとの突合わせをする（ステップＳ４００６）。帳票仕分装置２は、カスタマイズされた収納先企業名テーブル（ユーザ用）２６７ａに抽出された文字列と一致するキーワードがあるか否かを判断する（ステップＳ４００７）。帳票仕分装置２は、一致するキーワードが収納先企業名テーブル（ユーザ用）２６７ａにある場合（ステップＳ４００７でＹｅｓ）、突合わせ結果を返却（特定）する（ステップＳ４００３）。
【０１１８】
一方、一致するキーワードが収納先企業名テーブル（ユーザ用）２６７ａにない場合（ステップＳ４００７でＮｏ）、帳票仕分装置２は、抽出された文字列と部分一致するキーワードがあるか否かを判断する（ステップＳ４００８）。部分一致するキーワードがある場合（ステップＳ４００８でＹｅｓ）、帳票仕分装置２は、キーワードに対する企業名を取得する（ステップＳ４００９）。一方、部分一致するキーワードがない場合（ステップＳ４００８でＮｏ）には、収納先企業名テーブルとの突合わせ処理を終了する。
【０１１９】
なお、抽出された文字列を認識した結果、複数の候補（例えば、２つの候補）となる場合もある。例えば、第１候補が京束雷力、第２候補が束東電力となる場合である。この場合、第１候補、第２候補ともに収納先企業名テーブル２６７のキーワードの京東電力に一致しない。しかし、第１候補と第２候補の文字の組合せ、例えば第１候補の１文字目の京と、第２候補の２〜４文字目の東電力との組合せは、京東電力となり、収納先企業名テーブル２６７のキーワードの京東電力と一致する。このように、認識の結果、複数の候補となる場合には、それぞれの候補の文字を組み合わせた文字列と、収納先企業名テーブル２６７のキーワードが一致するか否かを判断するようにしてもよい。これにより、認識がしにくい文字列であっても正確に収納情報を特定することができる。
【０１２０】
次に、上記税目の特定処理（所定文字列による特定）のサブルーチンの一例について図２９を用いて説明する。帳票仕分装置２は、抽出される文字列の数の分が終了するまで後述するステップＳ２９０１からステップＳ２９０４をループして処理をする。
【０１２１】
帳票仕分装置２は、抽出された文字列が所定範囲（領域）にあるか否かを判断する（ステップＳ２９０１）。所定範囲にある場合（ステップＳ２９０１でＹｅｓ）、帳票仕分装置２は、ＯＣＲ文字列の候補があるか確認するため、抽出された文字列が３９桁の文字列か否かを判断する（ステップＳ２９０２）。抽出された文字列が３９桁の場合（ステップＳ２９０２でＹｅｓ）、帳票仕分装置２は、文字列が数字であるか否かを判断する（ステップＳ２９０３）。文字列が数字である場合（ステップＳ２９０３でＹｅｓ）、帳票仕分装置２は、ＯＣＲ文字列の候補に設定する（ステップＳ２９０４）。
【０１２２】
なお、抽出された文字列が所定範囲にない場合（ステップＳ２９０１でＮｏ）、抽出された文字列が３９桁でない場合（ステップＳ２９０２でＮｏ）、文字列が数字でない場合（ステップＳ２９０３でＮｏ）には、抽出された他の文字列について同様の上記ループ処理が行われる。
【０１２３】
抽出された文字列の数の分のループ処理が終了すると、帳票仕分装置２は、ＯＣＲ文字列の候補があるか否かを判断する（ステップＳ２９０５）。ＯＣＲ文字列の候補がある場合（ステップＳ２９０５でＹｅｓ）、帳票仕分装置２は、指定された桁（例えば、３２から３４桁）の文字列を抽出し、税目ＩＤに設定する（ステップＳ２９０６）。帳票仕分装置２は、設定された税目ＩＤと、税目ＩＤテーブル２６３（税目ＩＤ）とを突合わせする（ステップＳ２９０７）。帳票仕分装置２は、設定された税目ＩＤに一致する税目ＩＤが税目ＩＤテーブル２６３にあるか否かを判断する（ステップＳ２９０８）。一致する税目ＩＤがある場合（ステップＳ２９０８でＹｅｓ）、帳票仕分装置２は、税目ＩＤに対応する税目を取得し（ステップＳ２９０９）、税目を返却（特定）する（ステップＳ２９１０）。
【０１２４】
一方、ＯＣＲ文字列の候補がない場合（ステップＳ２９０５でＮｏ）や、一致する税目ＩＤがない場合（ステップＳ２９０８でＮｏ）には、税目の特定処理（所定文字列による特定）を終了する。
【０１２５】
次に、上記収納先地公体名の特定処理（所定文字列による特定）のサブルーチンの一例について図３０を用いて説明する。帳票仕分装置２は、抽出される文字列の数の分が終了するまで後述するステップＳ３００１からステップＳ３００４をループして処理をする。
【０１２６】
帳票仕分装置２は、抽出された文字列が所定範囲（領域）にあるか否かを判断する（ステップＳ３００１）。所定範囲にある場合（ステップＳ３００１でＹｅｓ）、帳票仕分装置２は、ＯＣＲ文字列の候補があるか確認するため、抽出された文字列が３９桁か否かを判断する（ステップＳ３００２）。抽出された文字列が３９桁の場合（ステップＳ３００２でＹｅｓ）、帳票仕分装置２は、文字列が数字であるか否かを判断する（ステップＳ３００３）。文字列が数字である場合（ステップＳ３００３でＹｅｓ）、帳票仕分装置２は、ＯＣＲ文字列の候補に設定する（ステップＳ３００４）。
【０１２７】
なお、抽出された文字列が所定範囲にない場合（ステップＳ３００１でＮｏ）、抽出された文字列が３９桁でない場合（ステップＳ３００２でＮｏ）、文字列が数字でない場合（ステップＳ３００３でＮｏ）には、抽出された他の文字列について同様の上記ループ処理が行われる。
【０１２８】
抽出された文字列の数の分のループ処理が終了すると、帳票仕分装置２は、ＯＣＲ文字列の候補があるか否かを判断する（ステップＳ３００５）。ＯＣＲ文字列の候補がある場合（ステップＳ３００５でＹｅｓ）、帳票仕分装置２は、指定された桁（例えば、２６から３０桁）の文字列を抽出し、地公体コードに設定する（ステップＳ３００６）。帳票仕分装置２は、設定された地公体コードと、地公体テーブル２６６（地公体コード）とを突合わせする（ステップＳ３００７）。帳票仕分装置２は、設定された地公体コードに一致する地公体コードが地公体テーブル２６６にあるか否かを判断する（ステップＳ３００８）。一致する地公体コードがある場合（ステップＳ３００８でＹｅｓ）、帳票仕分装置２は、地公体コードに対応する地公体名を取得し（ステップＳ３００９）、地公体名を返却（特定）する（ステップＳ３０１０）。
【０１２９】
一方、ＯＣＲ文字列の候補がない場合（ステップＳ３００５でＮｏ）や、一致する地公体コードがない場合（ステップＳ３００８でＮｏ）には、収納先地公体名の特定処理（所定文字列による特定）を終了する。
【０１３０】
次に、上記帳票の特定処理（キーワード検索による特定）のサブルーチンの一例について図３１を用いて説明する。帳票仕分装置２は、抽出される文字列の数の分が終了するまで文字列の文字数分のループ処理をする。
【０１３１】
帳票仕分装置２は、抽出された文字列と、税区分キーワードテーブル２６４（キーワード）との突合わせをする（ステップＳ３１０１）。帳票仕分装置２は、税区分キーワードテーブル２６４に、抽出された文字列と一致するキーワードがあるか否かを判断する（ステップＳ３１０２）。帳票仕分装置２は、抽出された文字列と一致するキーワードが税区分キーワードテーブル２６４にある場合（ステップＳ３１０２でＹｅｓ）、当該キーワードに対する税区分を取得し（ステップＳ３１０３）、税区分の候補に設定する（ステップＳ３１０４）。
【０１３２】
一方、抽出された文字列と一致するキーワードが税区分キーワードテーブル２６４にない場合（ステップＳ３１０２でＮｏ）、抽出された文字列の突合わせの先頭を１文字ずらす（ステップＳ３１０５）。抽出された文字列の中に、税区分キーワードテーブル２６４のキーワードが含まれているか確認するためである。含まれていれば、そのキーワードに対応する税区分を取得し、候補に設定する。例えば、抽出された文字列が７つの文字（○○市電気料金）から構成される文字列の場合、７つの文字の文字列と税区分キーワードテーブル２６４との突合わせをする。税区分キーワードテーブル２６４に電気料金というキーワードがある場合、○○市電気料金と電気料金を突合わせしても一致（完全一致）しない。
【０１３３】
そこで、例えば、文字列の突合わせの先頭を一文字ずつずらしていく。これにより、まず、○○市電気料金と電気料金が突合わせされる。この場合、一致しないため、先頭から１文字ずらして○市電気料金と電気料金が突合わせされる。この場合も一致しないため、１文字ずらして市電気料料金と電気料金が突合わせさせる。この場合も一致しないため、１文字ずらして電気料金と電気料金が突合わせされる。この場合、一致するため、ステップＳ３１０３へ進むことになる。これにより、文字列中にキーワードが含まれている場合には、突合わせで一致させることができ、税区分が何かを把握することが可能となる。
【０１３４】
ループ処理が終了すると、帳票仕分装置２は、税区分の候補があるか否かを判断する（ステップＳ３１０６）。候補がある場合（ステップＳ３１０６でＹｅｓ）、帳票仕分装置２は、税区分の候補が複数あるか否かを判断する（ステップＳ３１０７）。候補が複数ある場合（ステップＳ３１０７でＹｅｓ）、帳票仕分装置２は、候補数が最も多い税区分を選択し（ステップＳ３１０８）、選択した税区分を返却（特定）する（ステップＳ３１０９）。
【０１３５】
一方、税区分の候補がない場合（ステップＳ３１０６でＮｏ）には帳票の特定処理を終了する。また、税区分の候補が複数ない場合（ステップＳ３１０７でＮｏ）には、ステップＳ３１０９へ進む。
【０１３６】
次に、上記税目の特定処理（キーワード検索による特定）のサブルーチンの一例について図３２を用いて説明する。帳票仕分装置２は、抽出される文字列の数の分が終了するまで文字列の文字数分のループ処理をする。
【０１３７】
帳票仕分装置２は、抽出された文字列と、税目テーブル２６５（キーワード）との突合わせをする（ステップＳ３２０１）。帳票仕分装置２は、税目テーブル２６５に抽出された文字列と一致するキーワードがあるか否かを判断する（ステップＳ３２０２）。帳票仕分装置２は、抽出された文字列と一致するキーワードが税目テーブル２６５にある場合（ステップＳ３２０２でＹｅｓ）、キーワードに対する税目を取得し（ステップＳ３２０３）、税目の候補に設定する（ステップＳ３２０４）。
【０１３８】
一方、一致するキーワードが税目テーブル２６５にない場合（ステップＳ３２０２でＮｏ）、帳票仕分装置２は、抽出された文字列と部分一致のキーワードがあるか否かを判断する（ステップＳ３２０５）。部分一致するキーワードがあるか否かの判断については、上記説明と同様であり説明を省略する。ただし、抽出された文字列の文字数と税目テーブル２６５のキーワードの文字数が同一でない場合がある。その場合における一致率の算出は、例えばそれぞれの最後尾から数えて所定の文字数までの文字列同士で行う。例えば、抽出された文字列が５文字、税目テーブル２６５のキーワードが４文字の場合、少ない文字数（この場合は４）を所定の文字数とし、最後尾の文字を含めた４文字の文字列間で一致率を算出する。
【０１３９】
部分一致のキーワードがある場合（ステップＳ３２０５でＹｅｓ）、帳票仕分装置２は、部分一致したキーワードに対する税目を取得する（ステップＳ３２０３）。一方、部分一致のキーワードがない場合（ステップＳ３２０５でＮｏ）、帳票仕分装置２は、抽出された文字列と、ユーザによってカスタマイズされた税目テーブル（ユーザ用）２６５ａ（キーワード）との突合わせをする（ステップＳ３２０６）。帳票仕分装置２は、カスタマイズされた税目テーブル（ユーザ用）２６５ａに抽出された文字列と一致するキーワードがあるか否かを判断する（ステップＳ３２０７）。帳票仕分装置２は、抽出された文字列と一致するキーワードが税目テーブル（ユーザ用）２６５ａにある場合（ステップＳ３２０７でＹｅｓ）、キーワードに対する税目を取得し（ステップＳ３２０８）、税目の候補に設定する（ステップＳ３２０４）。
【０１４０】
一方、抽出された文字列と一致するキーワードが税目テーブル（ユーザ用）２６５ａにない場合（ステップＳ３２０７でＮｏ）、帳票仕分装置２は部分一致のキーワードがあるか否かを判断する（ステップＳ３２０９）。部分一致のキーワードがある場合（ステップＳ３２０９でＹｅｓ）、帳票仕分装置２は、部分一致のキーワードに対する税目を取得する（ステップＳ３２０８）。
【０１４１】
一方、部分一致のキーワードがない場合（ステップＳ３２０９でＮｏ）、図３１で説明したように、文字列の突合わせの先頭を一文字ずらし（ステップＳ３２１０）、再度突合わせを行う。
【０１４２】
ループ処理が終了すると、帳票仕分装置２は、税目の候補があるか否かを判断する（ステップＳ３２１１）。候補がある場合（ステップＳ３２１１でＹｅｓ）、帳票仕分装置２は、税目の候補が複数あるか否かを判断する（ステップＳ３２１２）。候補が複数ある場合（ステップＳ３２１２でＹｅｓ）、帳票仕分装置２は、候補数が最も多い税目を選択し（ステップＳ３２１３）、選択した税目を返却（特定）する（ステップＳ３２１４）。
【０１４３】
一方、税目の候補がない場合（ステップＳ３２１１でＮｏ）には税目の特定処理を終了する。また、税目の候補が複数ない場合（ステップＳ３２１２でＮｏ）には、ステップＳ３２１４へ進む。
【０１４４】
次に、上記収納先地公体名の特定（キーワード検索による特定）処理のサブルーチンの一例について図３３を用いて説明する。帳票仕分装置２は、抽出される文字列の数の分が終了するまで後述するステップＳ３３０１からステップＳ３３０９をループして処理をする。
【０１４５】
帳票仕分装置２は、抽出された文字列と、地公体テーブル２６６の地公体コードとの突合わせをする（ステップＳ３３０１）。帳票仕分装置２は、地公体テーブル２６６の地公体コードに抽出された文字列と一致するコードがあるか否かを判断する（ステップＳ３３０２）。帳票仕分装置２は、抽出された文字列と一致する地公体コードが地公体テーブル２６６にある場合（ステップＳ３３０２でＹｅｓ）、地公体コードに対する地公体名を取得し（ステップＳ３３０３）、地公体名の候補に設定する（ステップＳ３３０４）。
【０１４６】
一方、抽出された文字列と一致するコードが地公体テーブル２６６にない場合（ステップＳ３３０２でＮｏ）、帳票仕分装置２は、文字列の文字数分が終了するまでループ処理をする。帳票仕分装置２は、抽出された文字列と、地公体テーブル２６６の地公体名との突合わせをする（ステップＳ３３０５）。帳票仕分装置２は、地公体テーブル２６６の地公体名に抽出された文字列と一致する地公体名があるか否かを判断する（ステップＳ３３０６）。帳票仕分装置２は、抽出された文字列と一致する地公体名が地公体テーブル２６６にある場合（ステップＳ３３０６でＹｅｓ）、地公体名の候補に設定する（ステップＳ３３０４）。
【０１４７】
一方、抽出された文字列と一致する地公体名が地公体テーブル２６６にない場合（ステップＳ３３０６でＮｏ）、帳票仕分装置２は部分一致のキーワードがあるか否かを判断する（ステップＳ３３０７）。部分一致するキーワードがあるか否かの判断については、上記説明と同様であり説明を省略する。また、抽出された文字列の文字数と地公体テーブル２６６の地公体名の文字数が同一でない場合における一致率の算出についても、上記説明と同様であり説明を省略する。部分一致のキーワードがある場合（ステップＳ３３０７でＹｅｓ）、帳票仕分装置２は、部分一致した地公体名を地公体テーブル２６６の地公体名に置き換える（ステップＳ３３０８）。
【０１４８】
一方、部分一致のキーワードがない場合（ステップＳ３３０７でＮｏ）、図３１で説明したように、文字列の突合わせの先頭を１文字ずらし（ステップＳ３３０９）、再度突合わせを行う。
【０１４９】
ループ処理が終了すると、帳票仕分装置２は、地公体の候補があるか否かを判断する（ステップＳ３３１０）。候補がある場合（ステップＳ３３１０でＹｅｓ）、帳票仕分装置２は、地公体の候補が複数あるか否かを判断する（ステップＳ３３１１）。候補が複数ある場合（ステップＳ３３１１でＹｅｓ）、帳票仕分装置２は、候補数が最も多い地公体名を選択し（ステップＳ３３１２）、選択した地公体名を返却（特定）する（ステップＳ３３１３）。
【０１５０】
一方、地公体名の候補がない場合（ステップＳ３３１０でＮｏ）には収納先地公体の特定処理を終了する。また、地公体名の候補が複数ない場合（ステップＳ３３１１でＮｏ）には、ステップＳ３３１３へ進む。
【０１５１】
なお、図２８における説明と同様、抽出された文字列が擦れやにじみなどにより複数の候補として認識される場合がある。その場合、複数の文字列の文字の組合せが地公体テーブル２６６の地公体名にあれば、抽出された文字列は地公体テーブル２６６の地公体名と一致するとしてもよい。これにより、認識がしにくい文字列であっても正確に収納情報を特定することができる。
【０１５２】
次に、実施の形態に係る帳票仕分装置２を実現するためのハードウェア構成の一例について図３４を用いて説明する。ハードウェア構成は、例えば、ＣＰＵ３４１、ＨＤＤ（Ｈａｒｄ Ｄｉｓｋ Ｄｒｉｖｅ）３４２、ＲＡＭ（Ｒａｎｄｏｍ Ａｃｃｅｓｓ Ｍｅｍｏｒｙ）３４３、ＲＯＭ（Ｒｅａｄ Ｏｎｌｙ Ｍｅｍｏｒｙ）３４４、グラフィック処理装置３４５、入力インタフェース（Ｉ／Ｆ）３４６、通信インタフェース（Ｉ／Ｆ）３４７、バス３４８を備えている。ＣＰＵ３４１、ＨＤＤ３４２、ＲＡＭ３４３、ＲＯＭ３４４、グラフィック処理装置３４５、入力インタフェース（Ｉ／Ｆ）３４６、通信インタフェース（Ｉ／Ｆ）３４７は、例えば、バス３４８を介して互いに接続されている。
【０１５３】
ＣＰＵ３４１は、バス３４８を介して、ＨＤＤ３４２などに格納される帳票仕分装置２の各種処理を行うためのプログラム（例えば、帳票仕分プログラムなど）を読み込み、読み込んだプログラムをＲＡＭ３４３に一時的に格納し、そのプログラムにしたがって各種処理を行うものである。
【０１５４】
ＨＤＤ３４２には、帳票仕分装置２の各種処理を行うためのアプリケーションプログラムや、帳票仕分装置２の処理に必要なデータなどが格納される。
【０１５５】
ＲＡＭ３４３は、揮発性メモリであって、ＣＰＵ３４１に実行させるためのＯＳ（Ｏｐｅｒａｔｉｎｇ Ｓｙｓｔｅｍ）プログラムやアプリケーションプログラムの一部が一時的に格納される。また、ＲＡＭ３４３には、ＣＰＵ３４１による処理に必要な各種データが格納される。
【０１５６】
ＲＯＭ３４４は、不揮発性メモリであって、ブートプログラムやＢＩＯＳ（Ｂａｓｉｃ Ｉｎｐｕｔ／Ｏｕｔｐｕｔ Ｓｙｓｔｅｍ）などのプログラムを記憶する。
【０１５７】
グラフィック処理装置３４５は、不図示のモニタと接続可能であって、モニタに表示させる情報を生成するものである。
【０１５８】
入力インタフェース（Ｉ／Ｆ）３４６は、不図示のキーボードやマウスなどを介して入力される情報を受け付けるものである。
【０１５９】
通信インタフェース（Ｉ／Ｆ）３４７は、外部（スキャナ３やサーバ４など）とネットワークを介してデータの送受信を行うものである。
【０１６０】
バス３４８は、各装置間の制御信号、データ信号などの授受を媒介する経路である。
上述したような帳票仕分装置２（帳票仕分プログラム）によれば、事前に帳票を入手することなく、レイアウトの異なるすべての帳票を仕分けすることができる。
【０１６１】
なお、上述した実施の形態では、帳票仕分装置２の主な処理をＣＰＵによるソフトウェア処理によって実行するものとして説明したが、この処理の全部又は一部をハードウェアによって実現するようにしてもよい。
【０１６２】
また、上述した実施の形態は、上述したものに限定されるものではなく、実施の形態の要旨を逸脱しない範囲において種々の変更を加えることができる。
【符号の説明】
【０１６３】
１  帳票仕分システム
２  帳票仕分装置
３  スキャナ
４  サーバ
２０  スキャナ制御部
２１  文字認識処理部
２２  帳票種類識別処理部
２３  認識方式選択処理部
２４  収納先特定処理部
２５  認識結果補正部
２６  格納部
２６０  活字文字認識辞書テーブル
２６１  国庫金帳票ＩＤテーブル
２６２  払込ＩＤテーブル
２６３  税目ＩＤテーブル
２６４  税区分キーワードテーブル
２６５  税目テーブル
２６５ａ  税目テーブル（ユーザ用）
２６６  地公体テーブル
２６７  収納先企業名テーブル
２６７ａ  収納先企業名テーブル（ユーザ用）
５０、７０  ＩＤ探索範囲
３４１  ＣＰＵ
３４２  ＨＤＤ
３４３  ＲＡＭ
３４４  ＲＯＭ
３４５  グラフィック処理装置
３４６  入力インタフェース
３４７  通信インタフェース
３４８  バス
【図１】
2018055578.tif 000003
【図２】
2018055578.tif 000004
【図３】
2018055578.tif 000005
【図４】
2018055578.tif 000006
【図５Ａ】
2018055578.tif 000007
【図５Ｂ】
2018055578.tif 000008
【図６】
2018055578.tif 000009
【図７Ａ】
2018055578.tif 000010
【図７Ｂ】
2018055578.tif 000011
【図７Ｃ】
2018055578.tif 000012
【図７Ｄ】
2018055578.tif 000013
【図７Ｅ】
2018055578.tif 000014
【図８】
2018055578.tif 000015
【図９】
2018055578.tif 000016
【図１０Ａ】
2018055578.tif 000017
【図１０Ｂ】
2018055578.tif 000018
【図１１】
2018055578.tif 000019
【図１２Ａ】
2018055578.tif 000020
【図１２Ｂ】
2018055578.tif 000021
【図１３】
2018055578.tif 000022
【図１４】
2018055578.tif 000023
【図１５】
2018055578.tif 000024
【図１６Ａ】
2018055578.tif 000025
【図１６Ｂ】
2018055578.tif 000026
【図１６Ｃ】
2018055578.tif 000027
【図１７】
2018055578.tif 000028
【図１８】
2018055578.tif 000029
【図１９】
2018055578.tif 000030
【図２０】
2018055578.tif 000031
【図２１】
2018055578.tif 000032
【図２２】
2018055578.tif 000033
【図２３】
2018055578.tif 000034
【図２４】
2018055578.tif 000035
【図２５】
2018055578.tif 000036
【図２６】
2018055578.tif 000037
【図２７】
2018055578.tif 000038
【図２８Ａ】
2018055578.tif 000039
【図２８Ｂ】
2018055578.tif 000040
【図２９】
2018055578.tif 000041
【図３０】
2018055578.tif 000042
【図３１】
2018055578.tif 000043
【図３２】
2018055578.tif 000044
【図３３】
2018055578.tif 000045
【図３４】
2018055578.tif 000046
【図３５】
2018055578.tif 000047
【図３６】
2018055578.tif 000048
【図３７】
2018055578.tif 000049
【図３８】
2018055578.tif 000050
【図３９】
2018055578.tif 000051
【図４０】
2018055578.tif 000052