(58)【調査した分野】(Int.Cl.,DB名)
【発明の概要】
【発明が解決しようとする課題】
【0006】
本発明は、画像の認識結果を操作者が確認する場合にあって、対象とする画像全体を認識するのではなく、対象画像の一部分を操作者の操作によって指定し、その指定された領域内の画像の認識結果を採用するか否かの指定ができるようにした画像処理装置及び画像処理プログラムを提供することを目的としている。
【課題を解決するための手段】
【0007】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項1の発明は、画像を表示する表示手段と、
前記表示手段によって表示された画像に対して、操作者の操作によって領域を指定する指定手段と、前記指定手段によって指定された領域内の画像を認識する認識手段と、前記認識手段による認識結果を表示する認識結果表示手段と、操作者の操作によって、前記認識結果表示手段によって表示された認識結果を採用するか否かの指定を受け付ける受付手段と、前記受付手段によって受け付けられた指定が採用である場合に、該採用された認識結果を出力する出力手段を具備
し、前記認識結果表示手段は、前記指定手段によって指定された順序に基づいて、予め定められた文字種に限定した認識結果を表示することを特徴とする画像処理装置である。
【0008】
請求項2の発明は、前記受付手段は、一時的に情報を保存しておく記憶領域に前記認識結果を複写させる操作を、該認識結果を採用する指定として受け付けることを特徴とする請求項1に記載の画像処理装置である。
【0009】
請求項3の発明は、前記認識手段による認識結果を記憶する記憶手段をさらに具備し、前記受付手段は、認識結果を採用しないとする操作を受け付けた場合は、前記記憶手段に記憶されている認識結果を削除することを特徴とする請求項1又は2に記載の画像処理装置である。
【0010】
請求項4の発明は、前記指定手段によって指定された領域内の画像を、操作者の操作によって編集する編集手段をさらに具備し、前記認識手段は、前記編集手段によって編集された領域内の画像を認識することを特徴とする請求項1から3のいずれか一項に記載の画像処理装置である。
【0011】
請求項5の発明は、前記認識手段は、複数の認識結果を出力し、前記認識結果表示手段は、前記認識手段による複数の認識結果を表示し、前記受付手段は、前記認識結果表示手段によって表示された複数の認識結果から選択する操作を、認識結果を採用する指定として受け付けることを特徴とする請求項1から4のいずれか一項に記載の画像処理装置である。
【0012】
請求項6の発明は、前記認識
結果表示手段は、
現在の前記予め定められた文字種
を表示することを特徴とする請求項
1に記載の画像処理装置である。
【0013】
請求項7の発明は、前記認識手段は、認識結果から予め定められた文字列と一致する文字列を、認識結果として出力することを特徴とする請求項5に記載の画像処理装置である。
【0014】
請求項8の発明は、前記
画像は、図面の画像を対象としたことを特徴とする請求項
1から7のいずれか一項に記載の画像処理装置である。
【0015】
請求項9の発明は、前記
表示手段は、前記画像内の予め定められた領域を表示することを特徴とする請求項
1から8のいずれか一項に記載の画像処理装置である。
【0016】
請求項10の発明は、1行又は1列の文字列を領域として指定することの指示情報を表示する指示情報表示手段をさらに具備し、前記認識手段は、前記領域内の画像を1行又は1列の文字列として認識することを特徴とする請求項1から9のいずれか一項に記載の画像処理装置である。
【0017】
請求項11の発明は、コンピュータを、画像を表示する表示手段と、
前記表示手段によって表示された画像に対して、操作者の操作によって領域を指定する指定手段と、前記指定手段によって指定された領域内の画像を認識する認識手段と、前記認識手段による認識結果を表示する認識結果表示手段と、操作者の操作によって、前記認識結果表示手段によって表示された認識結果を採用するか否かの指定を受け付ける受付手段と、前記受付手段によって受け付けられた指定が採用である場合に、該採用された認識結果を出力する出力手段として機能させ
、前記認識結果表示手段は、前記指定手段によって指定された順序に基づいて、予め定められた文字種に限定した認識結果を表示することを特徴とする画像処理プログラムである。
【発明の効果】
【0018】
請求項1の画像処理装置によれば、画像の認識結果を操作者が確認する場合にあって、必要な部分のみを認識させることができ、操作者の操作によって指定された領域内の画像の認識結果を採用するか否かの指定ができる。
【0019】
請求項2の画像処理装置によれば、一時的に情報を保存しておく記憶領域に認識結果を複写させる操作を、認識結果を採用する操作とすることができる。
【0020】
請求項3の画像処理装置によれば、採用されなかった認識結果を記憶手段から削除することができる。
【0021】
請求項4の画像処理装置によれば、認識結果が採用されなかった場合に、操作者によって編集された領域内の画像を再度認識することができる。
【0022】
請求項5の画像処理装置によれば、複数の認識結果から選択することができる。
【0023】
請求項6の画像処理装置によれば、認識結果を、予め定められた文字種に限定することができる。
【0024】
請求項7の画像処理装置によれば、認識結果を、予め定められた文字列と一致する文字列とすることができる。
【0025】
請求項8の画像処理装置によれば、各文字の複数の認識結果から予め定められた種別の認識結果を他の種別の認識結果に優先して選択することができる。
【0026】
請求項9の画像処理装置によれば、指定された順序又は領域の位置に基づいて、予め定められた種別を設定することができる。
【0027】
請求項10の画像処理装置によれば、領域内の画像を1行又は1列の文字列として認識することができる。
【0028】
請求項11の画像処理プログラムによれば、画像の認識結果を操作者が確認する場合にあって、必要な部分のみを認識させることができ、操作者の操作によって指定された領域内の画像の認識結果を採用するか否かの指定ができる。
【発明を実施するための形態】
【0030】
以下、図面に基づき本発明を実現するにあたっての好適な一実施の形態の例を説明する。
図1は、本実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア(コンピュータ・プログラム)、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム(コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム)、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、1モジュールを1プログラムで構成してもよいし、複数モジュールを1プログラムで構成してもよく、逆に1モジュールを複数プログラムで構成してもよい。また、複数モジュールは1コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって1モジュールが複数コンピュータで実行されてもよい。なお、1つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続(データの授受、指示、データ間の参照関係等)の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じて定まることの意を含めて用いる。「予め定められた値」が複数ある場合は、それぞれ異なった値であってもよいし、2以上の値(もちろんのことながら、全ての値も含む)が同じであってもよい。また、「Aである場合、Bをする」という意味を有する記載は、「Aであるか否かを判断し、Aであると判断した場合はBをする」の意味で用いる。ただし、Aであるか否かの判断が不要である場合を除く。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク(一対一対応の通信接続を含む)等の通信手段で接続されて構成されるほか、1つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」(社会システム)にすぎないものは含まない。
また、各モジュールによる処理毎に又はモジュール内で複数の処理を行う場合はその処理毎に、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスク、RAM(Random Access Memory)、外部記憶媒体、通信回線を介した記憶装置、CPU(Central Processing Unit)内のレジスタ等を含んでいてもよい。
【0031】
本実施の形態である画像処理装置は、画像の認識結果を操作者(以下、ユーザともいう)が確認する場合に用いられるものであって、
図1の例に示すように、画像受付モジュール110、画像表示モジュール120、領域指定モジュール130、認識モジュール140、認識結果表示モジュール150、可否指定受付モジュール160、画像編集モジュール170、領域・認識結果対応付モジュール180、出力モジュール190を有している。
【0032】
画像受付モジュール110は、画像表示モジュール120と接続されている。画像受付モジュール110は、画像を受け付けて、その画像を画像表示モジュール120へ渡す。画像を受け付けるとは、例えば、スキャナ、カメラ等で画像を読み込むこと、ファックス等で通信回線を介して外部機器から画像を受信すること、ハードディスク(コンピュータに内蔵されているものの他に、ネットワークを介して接続されているもの等を含む)等に記憶されている画像を読み出すこと等が含まれる。画像は、2値画像、多値画像(カラー画像を含む)であってもよい。受け付ける画像は、1枚であってもよいし、複数枚であってもよい。また、画像の内容として、図面、ビジネスに用いられる文書等であってもよい。
特に図面の場合は、その画像の一部を、認識したいという要望が存在する。例えば、図面の仕様情報を認識して、データベースに入力したいという要望がある。この他に、契約書の画像から、金額のみを認識して抽出したい、1回きりの(又は頻度の少ない)顧客からの受注ファックス画像を認識したい等の要望がある。このような認識の場合には、帳票作成に使うような設計無しに認識させることになる。つまり、帳票作成に使うような設計があれば、その設計情報(枠の位置等の情報)を認識の領域指定として利用可能であるが、設計情報がないような画像の場合は、領域を指定することが必要となる。本実施の形態では、そのような設計情報がない画像を対象とする。
【0033】
画像表示モジュール120は、画像受付モジュール110、領域指定モジュール130と接続されている。画像表示モジュール120は、画像受付モジュール110によって受け付けられた画像を表示する。例えば、画像処理装置に備え付けられているディスプレイ、タッチパネル等に画像を表示する。縮小を行って画像全体を表示するようにしてもよいし、画像内の予め定められた領域を表示するようにしてもよい。
また、画像表示モジュール120は、横書きにおける1行又は縦書きにおける1列の文字列を領域として指定することの指示情報であるメッセージを表示するようにしてもよい。
【0034】
領域指定モジュール130は、画像表示モジュール120、認識モジュール140と接続されている。画像表示モジュール120によって表示された画像に対して、操作者の操作によって領域を指定する。つまり、認識する領域が予め定められていない場合であって、操作者が認識する領域をその場で指定するものである。操作者の操作は、マウス、キーボード、タッチパネル等を介して行われる。領域の指定は、例えば、矩形の対角の位置を指定することによって行われる。特に、画像表示モジュール120によって前述のメッセージが表示されている場合は、その操作によって指定される領域は、1行又は1列の文字列を囲む領域として指定されたものである。
【0035】
認識モジュール140は、領域指定モジュール130、認識結果表示モジュール150、画像編集モジュール170と接続されている。認識モジュール140は、領域指定モジュール130によって指定された領域内の画像を認識する。知られている文字認識技術を用いて行われる。また、認識モジュール140は、領域内の画像を1行又は1列の文字列として認識するようにしてもよい。したがって、文字行の切り出し処理を行う必要がなく、文字行の切り出しが誤ることはない。
また、認識モジュール140は、記憶装置を有しており、その記憶装置に認識結果を記憶させるようにしてもよい。
認識モジュール140は、画像編集モジュール170によって編集された領域内の画像を認識するようにしてもよい。
【0036】
認識モジュール140は、複数の認識結果を認識結果表示モジュール150に出力してもよい。この処理については
図6を用いて後述する。
認識モジュール140は、予め定められた文字種に限定したものを、認識結果として認識結果表示モジュール150に出力するようにしてもよい。ここで「予め定められた文字種」は、操作者の操作によって選択されたものであってもよい。この処理については
図7を用いて後述する。
認識モジュール140は、認識結果から予め定められた文字列と一致する文字列を、認識結果として認識結果表示モジュール150に出力するようにしてもよい。この処理については
図8を用いて後述する。
認識モジュール140は、各文字の複数の認識結果から予め定められた種別(以下、モードともいう)の認識結果を他の種別の認識結果に優先して選択したものを、認識結果として認識結果表示モジュール150に出力するようにしてもよい。この処理については
図9を用いて後述する。
認識モジュール140は、領域指定モジュール130によって指定された順序又は領域の位置に基づいて、予め定められた種別を設定するようにしてもよい。この処理については
図10、11を用いて後述する。
【0037】
認識結果表示モジュール150は、認識モジュール140、可否指定受付モジュール160と接続されている。認識結果表示モジュール150は、認識モジュール140による認識結果を表示する。特に、認識結果を領域の近傍に表示するようにしてもよい。近傍としては、領域から予め定められた距離以内の範囲である。例えば、領域内の文字画像と認識結果を比較しやすいように、領域と並列した位置であってもよい。また、認識結果を半透明に表示し、領域に重ね合わせるように表示してもよい。
また、認識結果表示モジュール150は、認識モジュール140による複数の認識結果を表示してもよい。この処理については
図6を用いて後述する。
【0038】
可否指定受付モジュール160は、認識結果表示モジュール150、画像編集モジュール170、領域・認識結果対応付モジュール180、出力モジュール190と接続されている。可否指定受付モジュール160は、操作者の操作によって、認識結果表示モジュール150によって表示された認識結果を採用するか否かの指定を受け付ける。
また、可否指定受付モジュール160は、一時的に情報を保存しておく記憶領域に認識結果を複写させる操作を、認識結果を採用する指定として受け付けるようにしてもよい。「一時的に情報を保存しておく記憶領域」とは、いわゆるクリップボードである。クリップボードとは、コンピュータで、一時的にデータを保存しておくメモリの領域であり、カット‐アンド‐ペーストやコピー‐アンド‐ペーストの操作時に使用されるものである。ここでの「複写させる操作」には、複写(コピー)、切り取り(カット)の操作(以下、「貼り付け」操作ともいう)が含まれる。より具体的には、マウス等で操作メニュー内から複写又は切り取りを選択する操作、キーボード内のコントロールキーを押しながら「C」キー(複写)又は「X」キー(切り取り)を押す操作等が該当する。
また、可否指定受付モジュール160は、認識結果を採用しないとする操作を受け付けた場合は、認識モジュール140内の記憶装置に記憶されている認識結果を削除するようにしてもよい。もちろんのことながら、削除する認識結果は、採用しないとする操作が行われた認識結果である。
また、可否指定受付モジュール160は、認識結果表示モジュール150によって表示された複数の認識結果から選択する操作を、認識結果を採用する指定として受け付けるようにしてもよい。
【0039】
画像編集モジュール170は、認識モジュール140、可否指定受付モジュール160と接続されている。画像編集モジュール170は、領域指定モジュール130によって指定された領域内の画像を、操作者の操作によって編集する。ノイズの影響、下線があること等によって、認識モジュール140による認識に誤りが発生する場合がある。その場合に、領域指定モジュール130によって指定された領域内の画像のノイズ、下線等を、操作者の操作によって除去する(消しゴム機能)。画像全面を認識するような場合は、認識対象の画像と認識結果の対応がわかりづらいため操作者が画像を編集することは困難であった。本実施の形態では、画像の一部である領域を認識対象としているため、認識対象の画像と認識結果の対応が明確となり、さらに編集に必要な面積は画像全面よりも小さい。また、認識誤りが存在する場合のみ編集すればよい。この処理については
図4、5を用いて後述する。
【0040】
領域・認識結果対応付モジュール180は、可否指定受付モジュール160、出力モジュール190と接続されている。領域・認識結果対応付モジュール180は、領域指定モジュール130によって指定された領域と可否指定受付モジュール160によって採用された認識結果を対応付ける。その対応付け結果を出力モジュール190に渡す。
【0041】
出力モジュール190は、可否指定受付モジュール160、領域・認識結果対応付モジュール180と接続されている。出力モジュール190は、可否指定受付モジュール160によって受け付けられた指定が採用である場合に、その採用された認識結果(領域・認識結果対応付モジュール180による対応付け結果を含めてもよい)を出力する。特に、認識結果と画像受付モジュール110が受け付けた画像を対応付けて出力するようにしてもよい。つまり、その画像の認識結果として出力されるものである。具体的には、認識結果は、例えば、その画像のファイル名、属性等として記憶される。ここで、出力するとは、例えば、認識結果と対応付けられた画像を、画像データベース等の画像記憶装置へ書き込むこと、メモリーカード等の記憶媒体に記憶すること、他の情報処理装置へ渡すこと、プリンタ等の印刷装置で印刷すること、ディスプレイ等の表示装置に表示すること等が含まれる。
【0042】
図2は、本実施の形態における第1の処理例を示すフローチャートである。
図3の例を用いて具体的な処理を示す。
ステップS202では、画像受付モジュール110が、対象画像を受け付ける。
ステップS204では、画像表示モジュール120が、対象画像を表示する。
図3(a)の例に示すような対象画像300をディスプレイに表示する。
ステップS206では、領域指定モジュール130が、認識対象とする領域を指定する。例えば、マウス等のポインティングデバイスを用いて、認識を行いたい矩形領域を指定する。
図3(b)の例に示すような対象画像300内の指定領域310を、左上端と右下端の位置を選択することによって指定する。
【0043】
ステップS208では、認識モジュール140が、指定領域を認識する。
図3(b)の例に示すような対象画像300内から、指定領域310の矩形領域を切り取って、
図3(c)の例に示す指定領域310内の画像を認識する。認識モジュール140は、文字列が1行のみであることを前提として認識する。
ステップS210では、認識結果表示モジュール150が、認識結果を表示する。
図3(d)の例に示すように、対象画像300内の指定領域310の近傍に認識結果表示領域320を表示する。例えば、認識結果表示領域320は、指定領域310と重ならない位置に表示する。
【0044】
ステップS212では、可否指定受付モジュール160が、認識結果が正しい場合、ユーザによる「貼り付け」動作を受け付ける。認識結果はクリップボードにコピーされる。
ステップS214では、可否指定受付モジュール160が、次の指示領域が有るか否かを判断し、有る場合はステップS206へ戻り、無い場合はステップS216へ進む。
ステップS216では、出力モジュール190が、画像と「貼り付け」動作が行われた認識結果を対応させて出力する。
【0045】
図4は、本実施の形態における第2の処理例を示すフローチャートである。
図2の例に示した第1の処理例に、画像の編集処理を加えたものである。
図5の例を用いて具体的な処理を示す。
ステップS402では、画像受付モジュール110が、対象画像を受け付ける。
ステップS404では、画像表示モジュール120が、対象画像を表示する。
ステップS406では、領域指定モジュール130が、認識対象とする領域を指定する。
図5(a)の例に示すような枠内の画像を指定したとする。なお、この画像内には下線を引かれた文字列が記載されている。
ステップS408では、認識モジュール140が、指定領域を認識する。
【0046】
ステップS410では、認識結果表示モジュール150が、認識結果を表示する。1回目認識結果として、
図5(b)の例に示すような認識結果を表示する。ここでは、ノイズ(下線)の影響で、誤認識が発生している。2回目認識結果(ステップS418が行われた後)は、
図5(d)の例に示すような認識結果を表示する。ここでは、ステップS418でノイズ(下線)が除去された後であるので、正しく認識されている。
ステップS412では、可否指定受付モジュール160が、ユーザによる「貼り付け」動作が行われたか否かを判断し、行われた場合はステップS414へ進み、それ以外の場合はステップS416へ進む。
ステップS414では、領域・認識結果対応付モジュール180が、「貼り付け」処理の結果と認識領域を対応付けて記憶する。
【0047】
ステップS416では、画像編集モジュール170が、ユーザによる画像編集の指示が行われたか否かを判断し、行われた場合はステップS418へ進み、それ以外の場合はステップS420へ進む。
ステップS418では、画像編集モジュール170が、指定領域内の画像を編集する。
図5(c)の例に示すような下線を消しゴム機能で除去する画像編集が行われる。この後、ステップS408、S410による処理が行われ、
図5(d)の例に示すような認識結果を表示する。
ステップS420では、可否指定受付モジュール160が、次の指定領域が有るか否かを判断し、有る場合はステップS406へ戻り、無い場合はステップS422へ進む。
ステップS422では、出力モジュール190が、ステップS414による対応付け結果をさらに対象画像に対応させて出力する。
【0048】
図6は、本実施の形態による処理例を示す説明図である。
図6(a)に示す例は、ユーザが認識対象とする領域(指定領域610)を指定する例を示している。領域指定モジュール130は、指定領域610内の画像を認識モジュール140に渡す。認識モジュール140は、指定領域610内の画像を1行の文字列として認識する。認識結果として、複数の認識候補を認識結果表示モジュール150に出力する。認識結果表示モジュール150は、
図6(b)の例に示すように、複数の認識候補(認識候補622、624、626)を表示する。ユーザは、この認識候補群の中から、認識結果としてふさわしいものを選択する。可否指定受付モジュール160は、この選択操作が認識結果を採用する指定として受け付ける。
なお、各文字の認識結果の確信度を用いて認識候補としての文字列を生成するようにしてもよい。例えば、確信度1位同士の認識結果を組み合わせ、確信度2位以下も同様に組み合わせて文字列を生成するようにしてもよいし、1文字目は確信度1位、2文字目は確信度2位というように組み合わせて文字列を生成するようにしてもよい。なお、確信度とは、認識結果としてふさわしい程度を表す数値であり、例えば、辞書内の典型的なパターンとの距離の逆数としてもよい。
【0049】
図7は、本実施の形態による処理例を示す説明図である。
図7(a)に示す例は、
図6(a)の例に示すものと同等である。
図7(b)に示す例のように、指定領域610内の各文字画像に対して複数の文字認識結果を生成する。例えば、指定領域610内の第1の文字画像(「Z」の文字画像)に対して、認識候補群(文字単位)722内の3文字(「Z」、「2」、「え」の文字コード)を出力し、第2の文字画像(「I」の文字画像)に対して、認識候補群(文字単位)724内の3文字(「I」、「|」、「ト」の文字コード)を出力し、第3の文字画像(「0」の文字画像)に対して、認識候補群(文字単位)726内の3文字(「0」、「O」、「ロ」の文字コード)を出力する。なお、各認識候補は、認識の確信度順に並んでいる。
【0050】
そして、各文字の複数の認識候補から、認識候補としての文字列を生成する。その場合、例えば、数字優先候補、ローマ字優先候補、ひらがなカタカナ優先候補の3つのモードがある。数字優先候補とは、各文字の認識候補中の最も確信度の高い数字(文字種としての数字)を選択する。数字が無ければ、単純に最も確信度の高い文字を選択する。ローマ字優先候補とは、各文字の候補中の最も確信度の高いローマ字を選択する。ローマ字が無ければ、単純に最も確信度の高い文字を選択する。ひらがなカタカナ優先候補とは、各文字の候補中の最も確信度の高いひらがなカタカナを選択する。ひらがなカタカナが無ければ、単純に最も確信度の高い文字を選択する。数字優先候補のモードで生成された文字列が
図7(c)の例に示す認識候補(文字列)732である。ローマ字優先候補、のモードで生成された文字列が
図7(d)の例に示す認識候補(文字列)734である。ひらがなカタカナ優先候補のモードで生成された文字列が
図7(e)の例に示す認識候補(文字列)736である。
認識結果表示モジュール150は、複数の認識候補(認識候補(文字列)732、734、736)を表示する。ユーザは、この認識候補群の中から、認識結果としてふさわしいものを選択する。可否指定受付モジュール160は、この選択操作が認識結果を採用する指定として受け付ける。
【0051】
図8は、本実施の形態による処理例を示す説明図である。
図8(a)に示す例は、
図6(a)の例に示すものと同等である。
図8(b)に示す例のように、指定領域610内の各文字画像に対して複数の文字認識結果を生成する。例えば、指定領域610内の第1の文字画像(「Z」の文字画像)に対して、認識候補群(文字単位)722内の3文字(「Z」、「2」、「え」の文字コード)を出力し、第2の文字画像(「I」の文字画像)に対して、認識候補群(文字単位)724内の3文字(「I」、「|」、「ト」の文字コード)を出力し、第3の文字画像(「0」の文字画像)に対して、認識候補群(文字単位)726内の3文字(「0」、「O」、「ロ」の文字コード)を出力する。なお、各認識候補は、認識の確信度順に並んでいる。
認識モジュール140にある検索モジュール810は、番号データベース820、型番データベース830等と接続されている。そして、検索モジュール810が、各文字の複数の認識候補を組み合わせた文字列(前述した組み合わせ方法を用いて生成した文字列)を、番号データベース820、型番データベース830等内の文字列から検索する。検索した結果、同じ文字列がある場合は、その文字列を認識結果表示モジュール150に出力する。番号データベース820、型番データベース830等には、予め、認識結果としてあり得る文字列のデータを蓄積しておく。例えば、対象画像が図面であれば、モーターの種類等をデータとして蓄積しておく。その場合、認識候補の文字列の中で、蓄積されているモーターの種類だけを出力するようになる。この処理によって、認識結果を、データベース内に存在する文字列に限定することとなる。
図8(c)の例に示す認識候補(文字列)732は、番号データベース820に一致する文字列があった場合を示している。つまり、番号データベース820に存在している候補を選択したものである。
図8(d)の例に示す認識候補(文字列)734は、型番データベース830に一致する文字列があった場合を示している。つまり、型番データベース830に存在している候補を選択したものである。
認識結果表示モジュール150は、複数の認識候補(認識候補(文字列)732、734)を表示する。ユーザは、この認識候補群の中から、認識結果としてふさわしいものを選択する。可否指定受付モジュール160は、この選択操作が認識結果を採用する指定として受け付ける。
【0052】
図9は、本実施の形態による処理例を示す説明図である。
図9(a)に示す例は、
図6(a)の例に示すものと同等である。そして、認識モジュール140は、
図9(b)に示す例のように、ユーザが選択し得るように、選択候補モード群表示領域910をディスプレイに表示する。ユーザは選択候補モード群表示領域910内のモード(選択候補モード1:912、選択候補モード2:914、選択候補モード3:916)を指定する。認識モジュール140は、指定されたモードにしたがって、認識候補の文字列を選択する。ここで、モードとして、例えば、前述したような数字優先モード、ローマ字優先モード、ひらがなカタカナ優先モード等がある。又は、番号データベース820から選択する番号モード、型番データベース830から選択する型番モード等を含めてもよい。例えば、ユーザによって数字優先モードが選択された場合、
図9(c)の例に示すように、数字優先モードを適用して、複数候補からの選択が行われて、認識候補(文字列)732が選択される。
認識結果表示モジュール150は、認識候補(認識候補(文字列)732)を表示する。ユーザは、この認識候補を認識結果として採用するならば貼り付け操作を行い、認識結果として採用しないならば画像を編集する操作を行うか、次の領域の指定する操作を行う。なお、貼り付け操作と編集操作を行わずに、次の領域を指定する操作は、その領域の認識結果は採用しないことを意味する操作となる。可否指定受付モジュール160は、この操作を指定として受け付ける。
【0053】
図10は、本実施の形態による処理例を示す説明図である。対象画像300内には、型番記載領域1010、番号記載領域1020がある。そして、ユーザの操作によって、予め定められた位置にある型番記載領域1010内の指定領域1012、番号記載領域1020内の指定領域1022を、この順序で選択する。このような型番、番号のように、認識を行わせたい情報が定まっている場合、領域の指定順序又は領域の位置にしたがってモードを選択する。これによってユーザによるモードの選択動作を省略するものである。
【0054】
図11は、本実施の形態による処理例を示す説明図である。
図11(a)に示す例は、
図6(a)の例に示すものと同等である。そして、認識モジュール140は、
図11(b)に示す例のように、選択候補モード群1110内のモード(選択候補モード1:1112、選択候補モード2:1114、選択候補モード3:1116)を遷移させる。その遷移は、領域の指定順序による。また、選択候補モード群1110内のモードを領域の位置にしたがって選択するようにしてもよい。例えば、画像内の位置(範囲を示す位置)とモードを対応させたテーブルを予め定められた用意しておき、指定された領域の位置がそのテーブル内の位置と合致する場合は、その位置と対応するモードを採用すればよい。
さらに、現在どのモードであるかをユーザに提示してもよい。そして、領域として囲むもの(例えば、型番、番号等)をユーザに提示してもよい。
例えば、番号モードに遷移している場合、認識モジュール140は、指定領域610の認識結果として認識候補(文字列)732を出力する。
【0055】
図12を参照して、本実施の形態の画像処理装置のハードウェア構成例について説明する。
図12に示す構成は、例えばパーソナルコンピュータ(PC)などによって構成されるものであり、スキャナ等のデータ読み取り部1217と、プリンタなどのデータ出力部1218を備えたハードウェア構成例を示している。
【0056】
CPU(Central Processing Unit)1201は、前述の実施の形態において説明した各種のモジュール、すなわち、画像受付モジュール110、画像表示モジュール120、領域指定モジュール130、認識モジュール140、認識結果表示モジュール150、可否指定受付モジュール160、画像編集モジュール170、領域・認識結果対応付モジュール180、出力モジュール190等の各モジュールの実行シーケンスを記述したコンピュータ・プログラムにしたがった処理を実行する制御部である。
【0057】
ROM(Read Only Memory)1202は、CPU1201が使用するプログラムや演算パラメータ等を格納する。RAM(Random Access Memory)1203は、CPU1201の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を格納する。これらはCPUバスなどから構成されるホストバス1204により相互に接続されている。
【0058】
ホストバス1204は、ブリッジ1205を介して、PCI(Peripheral Component Interconnect/Interface)バスなどの外部バス1206に接続されている。
【0059】
キーボード1208、マウス等のポインティングデバイス1209は、操作者により操作される入力デバイスである。ディスプレイ1210は、液晶表示装置又はCRT(Cathode Ray Tube)などがあり、各種情報をテキストやイメージ情報として表示する。
【0060】
HDD(Hard Disk Drive)1211は、ハードディスクを内蔵し、ハードディスクを駆動し、CPU1201によって実行するプログラムや情報を記録又は再生させる。ハードディスクには、受け付けた画像、認識結果、選択候補モードなどが格納される。さらに、その他の各種のデータ処理プログラム等、各種コンピュータ・プログラムが格納される。
【0061】
ドライブ1212は、装着されている磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブル記録媒体1213に記録されているデータ又はプログラムを読み出して、そのデータ又はプログラムを、インタフェース1207、外部バス1206、ブリッジ1205、及びホストバス1204を介して接続されているRAM1203に供給する。リムーバブル記録媒体1213も、ハードディスクと同様のデータ記録領域として利用可能である。
【0062】
接続ポート1214は、外部接続機器1215を接続するポートであり、USB、IEEE1394等の接続部を持つ。接続ポート1214は、インタフェース1207、及び外部バス1206、ブリッジ1205、ホストバス1204等を介してCPU1201等に接続されている。通信部1216は、通信回線に接続され、外部とのデータ通信処理を実行する。データ読み取り部1217は、例えばスキャナであり、ドキュメントの読み取り処理を実行する。データ出力部1218は、例えばプリンタであり、ドキュメントデータの出力処理を実行する。
【0063】
なお、
図12に示す画像処理装置のハードウェア構成は、1つの構成例を示すものであり、本実施の形態は、
図12に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア(例えば特定用途向け集積回路(Application Specific Integrated Circuit:ASIC)等)で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに
図12に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、複写機、ファックス、スキャナ、プリンタ、複合機(スキャナ、プリンタ、複写機、ファックス等のいずれか2つ以上の機能を有している画像処理装置)などに組み込まれていてもよい。
【0064】
前述の実施の形態において、認識結果を採用しない場合は、ユーザがキーボード等を利用してキー入力するようにしてもよい。
なお、前述の各種の処理を組み合わせてもよく、また、各モジュールの処理内容として背景技術で説明した技術を採用してもよい。
【0065】
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク(DVD)であって、DVDフォーラムで策定された規格である「DVD−R、DVD−RW、DVD−RAM等」、DVD+RWで策定された規格である「DVD+R、DVD+RW等」、コンパクトディスク(CD)であって、読み出し専用メモリ(CD−ROM)、CDレコーダブル(CD−R)、CDリライタブル(CD−RW)等、ブルーレイ・ディスク(Blu−ray Disc(登録商標))、光磁気ディスク(MO)、フレキシブルディスク(FD)、磁気テープ、ハードディスク、読み出し専用メモリ(ROM)、電気的消去及び書換可能な読み出し専用メモリ(EEPROM(登録商標))、フラッシュ・メモリ、ランダム・アクセス・メモリ(RAM)、SD(Secure Digital)メモリーカード等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク(LAN)、メトロポリタン・エリア・ネットワーク(MAN)、ワイド・エリア・ネットワーク(WAN)、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。