説明

誤認識文字自動変換システム

【課題】従来の技術では、誤文字の辞書マスタを有しているが、マスタへの登録機能がないため、誤文字を誰が、何を基に、どのようにマスタへ反映するかという問題がある。また、誤認識文字を修正する機能はあるが、1つ以上の修正候補より人為的に選択する必要がある。
【解決手段】画像データを文字認識する文字認識処理部120と、文字認識した結果を格納する情報データベース(D1,D2)と、文字認識において誤認識された誤文字と正しい文字を正誤辞書マスタデータベース(D3)へ登録する正誤辞書マスタ登録処理部330と、前記正誤辞書マスタデータベース(D3)に登録された誤文字により、前記情報データベース(D1,D2)に格納されている既存データを全て一括修正する文字正誤チェック処理部250と、を備える

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、文字認識により発生した誤認文字を正しい文字へ自動変換するシステム関するものである。
【背景技術】
【0002】
従来の文字認識技術では、特許文献1に記載されるように、主に次の方法が用いられている。1文字の画像データに対し、少なくとも1つの文字を画像データが表す文字として認識する文字認識処理と、テキストデータ化された文書に対し文字認識処理により認識された任意の文字列を全文検索する処理と、全文検索の結果に基づき画像データが表す文字を決定する処理からなる文字認識方法である。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開平10-207988号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
前記特許文献1に記載される従来の技術では、誤文字の辞書マスタを有しているが、マスタへの登録機能がないため、誤文字を誰が、何を基に、どのようにマスタへ反映するかという問題がある。また、特許文献1では、誤認識文字を修正する機能はあるが、1つ以上の修正候補より人為的に選択する必要がある。この為、誰かが選択しない限り、修正は行われない。また、選択したとしても将来発生し得る、同じ誤認識文字に対し、再度選択しなければならないという問題がある。
【0005】
本発明の目的は、誤認識された誤文字と正文字をマスタ管理し、且つマスタへの登録機能を有し、登録されたマスタを基に、過去又は将来発生する誤認識文字を自動修正する誤認識文字自動変換システムを提供することである。
【課題を解決するための手段】
【0006】
上記目的を達成するために、本発明の誤認識文字自動変換システムにおいては、
画像データを文字認識する文字認識処理部と、
文字認識した結果を格納する情報データベースと、
文字認識において誤認識された誤文字と正しい文字を正誤辞書マスタデータベースへ登録する正誤辞書マスタ登録処理部と
前記正誤辞書マスタデータベースに登録された誤文字により、前記情報データベースに格納されている既存データを検索し、全て一括修正する文字正誤チェック処理部と、を備えることを特徴とする。
【0007】
前記正誤辞書マスタ登録処理部は、誤文字.をキーに前記正誤辞書マスタデータベースを検索し、ヒットしなかった場合、誤文字と該誤文字の正文字を前記正誤辞書マスタデータベースへ追加することを特徴とする。
【0008】
前記文字正誤チェック処理部は、前記正誤辞書マスタデータベースのレコードを読み込み、読み込んだレコードの誤文字をキーに前記情報データベースを検索し、ヒットしたレコードに対し正誤判定を行い、誤文字と判定した場合は正文字を登録することを特徴とする。
【発明の効果】
【0009】
本発明によれば、一度登録した誤認識文字は、修正処理の実行により自動で修正することが可能となる。したがって、一度マスタ登録した誤文字を誤認発生の都度、修正候補より選択する必要がなくなるため、使用者の操作回数を少なくすることができる。また、将来発生する同誤文字に対しても、同作業を再度行う必要はなくなる。
【図面の簡単な説明】
【0010】
【図1】本発明が適用される注文書システムの全体構成図である。
【図2】図1のFAX受信端末の処理を示すフローチャートである。
【図3A】図1のDBサーバの処理を示すフローチャートである。
【図3B】図1のDBサーバの文字正誤チェック処理部のフローチャートである。
【図4A】図1のAPサーバの注文書一覧検索処理部のフローチャートである。
【図4B】図1のAPサーバの詳細情報表示処理部のフローチャートである。
【図4C】図1のAPサーバの正誤辞書マスタ登録処理部のフローチャートである。
【図5】データフォーマットの一例を示す図である。
【発明を実施するための形態】
【0011】
以下、本発明の一実施形態を、図面により詳細に説明する。
図1は、本発明の誤認文字自動変換システムを適用した注文書システムの全体構成図である。
図1において、FAX送受信処理は、FAX送信側であるお客様側端末400とネットワーク010及び受信側であるFAX受信端末100と、FAX受信端末100に必要なプログラムにより実行される。
【0012】
FAX受信端末100では、受信した注文書画像ファイル(F1)を文字認識部(OCR処理部)で読み込み、その結果をデータベース(DB)用注文書ファイル(F3)へ記録する。
【0013】
DB用注文書ファイル(F3)の送信処理、データベース(DB)への登録及び誤認識文字の修正処理は、データベース(DB)サーバ200とネットワーク020と必要なプログラムにより実行される。DBサーバ200では、FAX受信端末100から送信されたDB用注文書ファイル(F3)を入力してDB用注文書ファイル(F4)を作成し、DB用注文書ファイル(F4)からレコードを読み出して注文情報ヘッダDB(D1)と注文情報ボディDB(D2)へ登録する。また、正誤辞書マスタDB(D3)を元に注文情報ヘッダDB(D1)と注文情報ボディDB(D2)に登録された誤認識文字の修正処理を行う。
【0014】
誤認識文字の正誤辞書マスタDB(D3)への登録処理は、アプリケーション(AP)サーバ300とネットワーク020と必要なプログラムにより実行される。APサーバ300では、WEBアプリケーションプログラムにより、注文情報ヘッダDB(D1)と注文情報ボディDB(D2)へ登録された誤認識文字を検索し、正誤辞書マスタDB(D3)への登録処理を行う。APサーバ300はネットワーク030を介してお客様側端末400とも接続されている。
【0015】
図2は、図1のFAX受信端末100のプログラムロジックのフローチャートである。図3A、図3Bは、図1のDBサーバ200のプログラムロジックのフローチャートである。図4A、図4B、図4Cは、図1に示すAPサーバ300のプログラムロジックのフローチャートである。
【0016】
<FAX受信端末100の処理>
図2において、FAX受信処理部110では、FAXを受信し、注文書情報を画像ファイルへ変換する。具体的には、ステップ111において、FAX受信をトリガーに受信したFAX情報を注文書画像ファイル(F1)へ変換し、保存する。
【0017】
OCR処理部120では、FAX受信処理で保存した注文書画像ファイル(F1)をOCRで読み込み、文字データへ変換し、注文書ファイル(F2)に保存する。具体的には、ステップ121において、ステップ111で保存された注文書画像ファイル(F1)を読み込み、OCRにより文字データへ変換後、注文書ファイル(F2)を作成し、保存する。
【0018】
注文データ作成処理部130では、OCR処理部120で作成した注文書ファイル(F2)を読み込み、DB用注文書ファイル(F3)を作成する。具体的には、ステップ131において、注文書ファイル(F2)のレコードを1レコード入力する。ステップ132の処理は、注文書ファイル(F2)のレコードが終了するまで、ステップ133〜135を繰り返す。ステップ133では注文書を出力し、DB用注文書ファイル(F3)を作成する。ステップ135では、注文書ファイル(F2)のレコードを1レコード入力する。
【0019】
<DBサーバ200の処理>
図3Aにおいて、注文書データ収集処理部220では、ステップ130で作成されたDB用注文書ファイル(F3)をファイル転送により受信する。具体的には、ステップ221において、FAX受信端末100からDBサーバ200がファイル転送でDB用注文書ファイル(F3)を受信し、DB用注文書ファイル(F4)として保存する。DBサーバ200で実行する処理は、1回/時間のバッチ処理である。
【0020】
注文書データロード処理部230では、注文書データ収集処理部220で保存したDB用注文書ファイル(F4)を入力し、注文情報ヘッダDB(D1)、注文情報ボディDB(D2)へ登録する。具体的には、ステップ231において、注文書データ収集処理部220で保存したDB用注文書ファイル(F4)を1レコード入力する。ステップ232の処理は、DB用注文書ファイル(F4)のレコードが終了するまで、ステップ233〜234を繰り返す。ステップ233では、入力レコードを編集し、注文情報ヘッダDB(D1)、注文情報ボディDB(D2)へ登録する。ステップ234では、注文書データ収集処理部220で保存したDB用注文書ファイル(F4)を1レコード入力する。
【0021】
図3B(図1)に示す文字正誤チェック処理部250では、正誤辞書マスタDB(D3)のレコードを読み込み、読み込んだレコードの「誤文字」(D3−1)項目をキーに注文情報ヘッダDB(D1)、注文情報ボディDB(D2)をそれぞれ検索する。ヒットしたレコードに対し、正誤判定を行い、誤文字と判定した場合は、「正文字」(D3−2)項目を登録する。文字正誤チェック処理は、1回/日、夜間のバッチ処理である。
【0022】
具体的には、図3Bにおいて、ステップ251では、正誤辞書マスタDB(D3)のレコードがなくなるまで、ステップ252〜270を繰り返す。
ステップ252では、正誤辞書マスタDB(D3)より条件(論理削除フラグ(D3−3)=“0”))での検索結果を1レコード入力する。
ステップ253では、ステップ254の検索結果のレコードがなくなるまで、ステップ254〜269を繰り返す。
ステップ254では、ステップ252の検索結果の「誤文字」(D3−1)項目をキーに注文情報ヘッダDB(D1)、注文情報ボディDB(D2)を検索する。
ステップ255では、ステップ252で入力した正誤辞書マスタDB(D3)のレコードより「誤文字」(D3−1)項目を1文字入力する。
ステップ256では、ステップ252で入力した正誤辞書マスタDB(D3)の「誤文字」(D3−1)項目の中から1文字づつ読み込み、最後の文字になるまで繰り返す。
ステップ257では、ステップ254で入力した注文情報ヘッダDB(D1)、注文情報ボディDB(D2)の「品名」(D2−1)、「納入場所」(D1−1)、「備考」(D1−2)のいずれかの項目より1文字読み込む。
ステップ258では、ステップ254でヒットした注文情報ヘッダDB(D1)、注文情報ボディDB(D2)の「品名」(D2−1)、「納入場所」(D1−1)、「備考」(D1−2)のいずれかの項目より1文字づつ読み込み、最後の文字になるまで繰り返す。
ステップ259では、ステップ255で入力した正誤辞書マスタDB(D3)の1文字とステップ257で入力した注文情報ヘッダDB(D1)、注文情報ボディDB(D2)の「品名」(D2−1)、「納入場所」(D1−1)、「備考」(D1−2)のいずれかの項目の1文字を比較する。
ステップ260では、ステップ259の結果、一致した場合、ステップ263を実行し、一致しなかった場合、ステップ261を実行する。
【0023】
<一致した場合>
ステップ263では、正誤辞書マスタDB(D3)の「正文字」(D3−2)項目の1文字をワークエリア2(W2)にセットする。
ステップ264では、ステップ252で入力した正誤辞書マスタDB(D3)のレコードより「誤文字」(D3−1)項目を1文字入力する。
ステップ265では、正誤辞書マスタDB(D3)の「正文字」(D3−2)項目の文字が無い場合ステップ266を実行し、文字がある場合、ステップ256を実行する。
【0024】
<「正文字」(D3−2)項目の文字が無い場合>
ステップ266でワークエリア2(W2)をワークエリア(W1)へ追加し、ワークエリア2(W2)を初期化する。
注文情報ヘッダDB(D1)、注文情報ボディDB(D2)の「品名」(D2−1)、「納入場所」(D1−1)、「備考」(D1−2)のいずれかの項目が無い場合ステップ268処理を実行し、有る場合はステップ261を実行する。
【0025】
<無い場合>
ステップ268では、ワークエリア(W1)を注文情報ヘッダDB(D1)、注文情報ボディDB(D2)の「品名」(D2−1)、「納入場所」(D1−1)、「備考」(D1−2)のいずれかの項目へセットし、更新する。
ステップ269では、ステップ254の注文情報ヘッダDB(D1)、注文情報ボディDB(D2)検索結果のレコードが無い場合ステップ270へ、レコードが存在する場合、ステップ253を実行する。
ステップ270処理では、正誤辞書マスタDB(D3)のレコードが無い場合、処理を終了する。レコードが存在する場合、ステップ251を実行する。
【0026】
<ステップ260において一致しなかった場合>
ステップ261では、注文情報ヘッダDB(D1)、注文情報ボディDB(D2)の「品名」(D2−1)、「納入場所」(D1−1)、「備考」(D1−2)のいずれかの項目の1文字をワークエリア(W1)へセットする。
ステップ262では、ステップ254で入力した注文情報ヘッダDB(D1)、注文情報ボディDB(D2)の「品名」(D2−1)、「納入場所」(D1−1)、「備考」(D1−2)のいずれかの項目より1文字読み込む。
【0027】
以上、文字正誤チェック処理部250の処理を説明したが、次に、正誤辞書マスタDB(D3)の「誤文字」(D3−1)項目に”連終”と登録されたレコードと、注文情報ヘッダDB(D1)の「備考」(D1−2)項目に”詳細は別途連終”と登録されているレコードを例とした場合の処理を説明する。
ステップ252で、正誤辞書マスタDB(D3)より条件に合致したレコードを入力する。(図3Bの例1−1)
ステップ254では、ステップ252で取得した正誤辞書マスタDB(D3)のレコード(例1−1)の「誤文字」(D3−1)項目の”連終”により注文情報ヘッダDB(D1)の「備考」(D1−2)項目をあいまい検索し、注文情報ヘッダDB(D1)より条件に合致したレコード(図3Bの例1−2)を取得する。
ステップ255では、ステップ252で取得した正誤辞書マスタDB(D3)のレコード(例1−1)の「誤文字」(D3−1)項目の値”連終”より1文字目”連”を読み込む。(M−1)
ステップ257では、ステップ253で注文情報ヘッダDB(D1)より取得したレコード(図3Bの例1−2)の「備考」(D1−2)項目の値”詳細は別途連終”より1文字目の値”詳”(C−1)を読み込む。
ステップ259では、ステップ255で取得した値”連”とステップ257で取得した値”詳”を比較し、合致しないので、注文情報ヘッダDB(D1)の「備考」(D1−2)項目の1文字目の値”詳”(C−1)をワークエリア(W1)へセットする。
ステップ257では、ステップ253で注文情報ヘッダDB(D1)より取得したレコード(例1−2)の「備考」(D1−2)項目の値”詳細は別途連終”より2文字目の値”細”(C−2)を読み込む。
ステップ259では、ステップ255で取得した値”連”とステップ257で取得した値”細”を比較し、合致しないので、注文情報ヘッダDB(D1)の「備考」(D1−2)項目の2文字目の値”細”(C−2)をワークエリア(W1)へセットする。
ステップ257では、ステップ253で注文情報ヘッダDB(D1)より取得したレコード(例1−2)の「備考」(D1−2)項目の値”詳細は別途連終”より3文字目の値”は”(C−3)を読み込む。
ステップ259では、ステップ255で取得した値”連”とステップ257で取得した値”は”を比較し、合致しないので、注文情報ヘッダDB(D1)の「備考」(D1−2)項目の3文字目の値”は”(C−3)をワークエリア(W1)へセットする。
ステップ257処理では、ステップ253で注文情報ヘッダDB(D1)より取得したレコード(例1−2)の「備考」(D1−2)項目の値”詳細は別途連終”より4文字目の値”別”(C−4)を読み込む。
ステップ259では、255処理で取得した値”連”とステップ257で取得した値”別”を比較し、合致しないので、注文情報ヘッダDB(D1)の「備考」(D1−2)項目の4文字目の値”別”(C−4)をワークエリア(W1)へセットする。
ステップ257処理では、ステップ253で注文情報ヘッダDB(D1)より取得したレコード(例1−2)の「備考」(D1−2)項目の値”詳細は別途連終”より5文字目の値”途”(C−5)を読み込む。
ステップ259処理では、ステップ255で取得した値”連”とステップ257で取得した値”途”を比較し、合致しないので、注文情報ヘッダDB(D1)の「備考」(D1−2)項目の5文字目の値”途”(C−5)をワークエリア(W1)へセットする。
ステップ257では、ステップ253で注文情報ヘッダDB(D1)より取得したレコード(例1−2)の「備考」(D1−2)項目の値 ”詳細は別途連終”より6文字目の値”連”(C−6)を読み込む。
ステップ259では、ステップ255で取得した値”連”とステップ257で取得した値”連”を比較し、合致しているので正誤辞書マスタDB(D3)の「正文字」(D3−2)項目の1文字目の値”連”(M−3)をワークエリア2(W2)へセットする。
ステップ255では、ステップ252で取得した正誤辞書マスタDB(D3)のレコード(例1−1)の「誤文字」(D3−1)項目の値”連終”より 2文字目”終”を読み込む。(M−2)
ステップ257処理では、ステップ253で注文情報ヘッダDB(D1)より取得したレコード(例1−2)の「備考」(D1−2)項目の値 ”詳細は別途連終”より7文字目の値”終”(C−7)を読み込む。
ステップ259では、ステップ255で取得した値”終”とステップ257で取得した値”終”を比較し、合致しているので正誤辞書マスタDB(D3)の「正文字」(D3−2)項目の2文字目の値”絡”(M−4)をワークエリア2(W2)へセットする。
ステップ255では、ステップ252で取得した正誤辞書マスタDB(D3)のレコード(例1−1)の「誤文字」(D3−1)項目の値より 3文字目を読み込むが存在しない。
ステップ266では、ワークエリア2(W2)をワークエリア(W1)へ追加し、ワークエリア2(W2)を初期化する。
ステップ257では、ステップ253で注文情報ヘッダDB(D1)より取得したレコード(例1−2)の「備考」(D1−2)項目の値より 8文字目を読み込むが存在しない。
ステップ261では、ワークエリア(W1)を注文情報ヘッダDB(D1)の「備考」(D1−2)項目へセットし、登録する。
【0028】
以上の誤文字修正処理は、正誤辞書マスタDB(D3)に登録されている誤文字をキーにして、注文情報ヘッダDB(D1)及び注文情報ボディDB(D2)に格納されているデータに対して自動的に行われる。
【0029】
<APサーバ300の処理>
図4Aに示す注文書一覧検索処理部310では、「注文書一覧検索」画面500に各種検索条件を入力し、〔検索〕ボタン押下により注文書一覧検索処理を開始する。具体的には、ステップ311では、入力された条件値により、注文情報ヘッダDB(D1)を検索する。ステップ312で検索結果がヒットした場合、ステップ313を実行する。ステップ312で検索結果がヒットしなかった場合、ステップ314を実行する。ステップ313では、検索結果により、一覧画面を生成し、表示する。ステップ314では、「対象データがありません」のメッセージ画面を生成し、表示する。
【0030】
図4Bに示す詳細情報表示処理部320では、注文書一覧検索処理部310の実行後、注文書一覧検索画面500にて注文No.リンク押下により実行する。具体的には、ステップ321において、押下された注文No.をキーに注文情報ヘッダDB(D1)及び注文情報ボディDB(D2)を検索する。ステップ322で検索結果がヒットした場合、ステップ323を実行する。ステップ322で検索結果がヒットしなかった場合、ステップ324を実行する。ステップ323では、検索結果により詳細情報画面510を生成し、表示する。ステップ324では、「対象データがありません」のメッセージ画面を生成し、表示する。この詳細情報画面510から、「備考」の「詳細は別途連終」の「終」が誤認であること、「品名」の「パリロン」が誤認であることが判る。
【0031】
図4Cに示す正誤マスタ登録処理部330では、正誤マスタ登録画面520で入力された情報を正誤辞書マスタDB(D3)へ追加する。具体的には、ステップ331において、入力された誤文字.をキーに正誤辞書マスタDB(D3)を検索する。ステップ332で検索結果がヒットした場合、ステップ334を実行する。ステップ332で検索結果がヒットしなかった場合、ステップ333を実行する。ステップ333では、正誤マスタ登録画面520の誤文字(パリロン)に対して正文字(パソコン)を入力し、正誤辞書マスタDB(D3)へ追加する。また、ステップ332において検索結果がヒットしなかった場合、例えば、誤文字「連終」に対して正文字「連絡」が既に登録されている場合は、ステップ334において、「既に登録済みです。」のメッセージ画面を生成し、表示する。
【0032】
以上の処理を行うことにより、誤認識の文字と正しい文字を正誤辞書マスタDB(D3)に追加登録することができる。
【0033】
なお、図5は、上記実施例において使用した、DB用注文書ファイル(F4)、正誤辞書マスタDB(D3)、注文情報ヘッダDB(D1)、注文情報ボディDB(D2)のデータフォーマットの例である。
【産業上の利用可能性】
【0034】
本発明は、文字認識技術において、誤認識文字の自動修正に適用して有用である。また、文字認識技術を使用した注文書システムに適用して有用である。
【符号の説明】
【0035】
010,020,030…ネットワーク、
100…FAX受信端末、
110…FAX受信処理部、
120…OCR処理部、
130…注文データ作成処理部、
200…DBサーバ、
220…注文書データ収集処理部、
230…注文書データロード処理部、
250…文字正誤チェック処理部、
300…APサーバ、
310…注文書一覧検索処理部、
320…詳細情報表示処理部
330…正誤辞書マスタ登録処理部。

【特許請求の範囲】
【請求項1】
画像データを文字認識する文字認識処理部と、
文字認識した結果を格納する情報データベースと、
文字認識において誤認識された誤文字と正しい文字を正誤辞書マスタデータベースへ登録する正誤辞書マスタ登録処理部と
前記正誤辞書マスタデータベースに登録された誤文字により、前記情報データベースに格納されている既存データを検索し、全て一括修正する文字正誤チェック処理部と、を備えることを特徴とする誤認識文字自動変換システム。
【請求項2】
前記正誤辞書マスタ登録処理部は、誤文字.をキーに前記正誤辞書マスタデータベースを検索し、ヒットしなかった場合、誤文字と該誤文字の正文字を前記正誤辞書マスタデータベースへ追加することを特徴とする請求項1記載の誤認識文字自動変換システム。
【請求項3】
前記文字正誤チェック処理部は、前記正誤辞書マスタデータベースのレコードを読み込み、読み込んだレコードの誤文字をキーに前記情報データベースを検索し、ヒットしたレコードに対し正誤判定を行い、誤文字と判定した場合は正文字を登録することを特徴とする請求項1記載の誤認識文字自動変換システム。

【図1】
image rotate

【図2】
image rotate

【図3A】
image rotate

【図3B】
image rotate

【図4A】
image rotate

【図4B】
image rotate

【図4C】
image rotate

【図5】
image rotate