説明

画像処理装置及びその制御方法、プログラム

【課題】 より精度良く文書画像を含む画像の類似画像検索を実行することができる画像処理装置及びその制御方法、プログラムを提供する。
【解決手段】 比較元画像を複数のブロックに分割する。分割されたブロック画像の画像特徴情報に基づいて、該ブロック画像に文字画像が存在するか否かを判定する。判定の結果、前記ブロック画像及びそれに対応する前記比較先画像のブロック画像のどちらかに文字画像が存在する場合、両者の類似度として所定の類似度を取得し、一方、前記ブロック及びそれに対応する前記比較先画像のブロック画像のどちらにも文字画像が存在しない場合、その両者の画像特徴情報に基づく類似度を取得する。各ブロック画像に対する類似度を累積加算して得られる累積類似度に基づいて、検索結果となる画像を出力する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、検索条件となる比較元画像と、その比較先画像との類似度に基づいて、類似画像検索を行う画像処理装置及びその制御方法、プログラムに関するものである。
【背景技術】
【0002】
従来、類似画像検索処理においては、登録処理において画像を縦横の複数のブロックに分割し、そのブロックに対する平均色や最頻色等のブロック代表色を算出して、それを画像と対応づけて記憶しておく。そして、検索処理においては、対応する分割ブロックの代表色の差異を積算することにより、類似度を示す距離計算を行い、その計算結果に基づいて、類似画像をソートして出力するものが主流であった(例えば、特許文献1参照)。
【特許文献1】特開平7−239856号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
上記のような類似画像検索方法は、自然画のような画像全体に色情報が存在する画像においては有用であったが、文書画像のように白地バックグラウンドに画像を貼り込み、その余白に文字が存在するような場合に、白地のバックグラウンドに文字があっても無くとも平均色あるいは最頻色には影響が現れず、文字のある分割ブロックと白地のバックグラウンドとの区別がつかず、ユーザにとって違和感のある検索結果となっていた。特に、平均色あるいは最頻色には影響が現れない理由は、文字画像中の実際の文字画素の占める割合が少ないためである。
【0004】
そこで、このような問題を補うために、予め文書画像を文字領域と画像領域に分離する技術を用い、分離したもの同士の特徴を求める方法がある。この方法によれば、検索精度は高くなるものの、文字領域あるいは画像領域を抽出し損ねた場合には、所望とする画像を検索できなくなる可能性がある。
【0005】
本発明は上記の課題を解決するためになされたものであり、より精度良く文書画像を含む画像の類似画像検索を実行することができる画像処理装置及びその制御方法、プログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
上記の目的を達成するための本発明による画像処理装置は以下の構成を備える。即ち、
検索条件となる比較元画像と、その比較先画像との類似度に基づいて、類似画像検索を行う画像処理装置であって、
前記比較元画像を複数のブロックに分割する分割手段と、
前記分割手段で分割されたブロック画像の画像特徴情報に基づいて、該ブロック画像に文字画像が存在するか否かを判定する判定手段と、
前記判定手段の判定の結果、前記ブロック画像及びそれに対応する前記比較先画像のブロック画像のどちらかに文字画像が存在する場合、両者の類似度として所定の類似度を取得し、一方、前記ブロック及びそれに対応する前記比較先画像のブロック画像のどちらにも文字画像が存在しない場合、その両者の画像特徴情報に基づく類似度を取得する取得手段と、
前記取得手段によって取得される前記分割手段で分割した各ブロック画像に対する類似度を累積加算して得られる累積類似度に基づいて、検索結果となる画像を出力する出力手段と
を備える。
【0007】
また、好ましくは、前記比較手段は、前記比較元画像と前記比較先画像間の画像特徴情報に応じた類似度を管理する管理テーブルを備え、
前記管理テーブルは、前記比較元画像及び前記比較先画像のどちらかに文字画像が存在する場合の該比較元画像と該比較先画像間の画像特徴情報に基づく所定の類似度として、前記比較元画像に文字画像が存在しない場合の該比較元画像と該比較先画像間の画像特徴情報に基づく類似度よりも十分異なる固定値を管理している。
【0008】
また、好ましくは、前記判定手段は、前記ブロック画像の前記画像特徴情報が示す画像特徴量が所定値以上であるか否かを判定し、前記画像特徴量が所定値以上である場合、該処理対象画像に文字画像が存在すると判定する。
【0009】
また、好ましくは、前記画像特徴情報は、前記ブロック画像の輝度に関する輝度特徴情報である。
【0010】
また、好ましくは、前記輝度特徴情報は、前記ブロック画像の平均輝度あるいは最頻輝度である。
【0011】
また、好ましくは、前記輝度特徴情報は、前記ブロック画像中の最も輝度の高い画素の色近傍範囲の平均輝度あるいは最頻輝度である。
【0012】
上記の目的を達成するための本発明による画像処理装置は以下の構成を備える。即ち、
類似画像検索の検索対象となる画像の画像登録処理を行う画像処理装置であって、
画像を入力する入力手段と、
前記画像を複数のブロックに分割する分割手段と、
前記分割手段で分割された各ブロック画像の画像特徴情報に基づいて、各ブロック画像に文字画像が存在するか否かを判定する判定手段と、
前記判定手段の判定の結果、前記ブロック画像に文字画像が存在する場合、それを示す情報を画像特徴情報として記憶し、一方、前記ブロック画像に文字画像が存在しない場合、そのブロック画像の画像特徴情報を記憶する記憶手段と
を備える。
【0013】
上記の目的を達成するための本発明による画像処理装置の制御方法は以下の構成を備える。即ち、
検索条件となる比較元画像と、その比較先画像との類似度に基づいて、類似画像検索を行う画像処理装置の制御方法であって、
前記比較元画像を複数のブロックに分割する分割工程と、
前記分割工程で分割されたブロック画像の画像特徴情報に基づいて、該ブロック画像に文字画像が存在するか否かを判定する判定工程と、
前記判定工程の判定の結果、前記ブロック画像及びそれに対応する前記比較先画像のブロック画像のどちらかに文字画像が存在する場合、両者の類似度として所定の類似度を取得し、一方、前記ブロック及びそれに対応する前記比較先画像のブロック画像のどちらにも文字画像が存在しない場合、その両者の画像特徴情報に基づく類似度を取得する取得工程と、
前記取得工程によって取得される前記分割工程で分割した各ブロック画像に対する類似度を累積加算して得られる累積類似度に基づいて、検索結果となる画像を出力する出力工程と
を備える。
【0014】
上記の目的を達成するための本発明による画像処理装置の制御方法は以下の構成を備える。即ち、
類似画像検索の検索対象となる画像の画像登録処理を行う画像処理装置の制御方法であって、
画像を入力する入力工程と、
前記画像を複数のブロックに分割する分割工程と、
前記分割工程で分割された各ブロック画像の画像特徴情報に基づいて、各ブロック画像に文字画像が存在するか否かを判定する判定工程と、
前記判定工程の判定の結果、前記ブロック画像に文字画像が存在する場合、それを示す情報を画像特徴情報として記憶し、一方、前記ブロック画像に文字画像が存在しない場合、そのブロック画像の画像特徴情報を記憶部に記憶する記憶工程と
を備える。
【0015】
上記の目的を達成するための本発明によるプログラムは以下の構成を備える。即ち、
検索条件となる比較元画像と、その比較先画像との類似度に基づいて、類似画像検索を行う画像処理装置の制御を実現するプログラムであって、
前記比較元画像を複数のブロックに分割する分割工程のプログラムコードと、
前記分割工程で分割されたブロック画像の画像特徴情報に基づいて、該ブロック画像に文字画像が存在するか否かを判定する判定工程のプログラムコードと、
前記判定工程の判定の結果、前記ブロック画像及びそれに対応する前記比較先画像のブロック画像のどちらかに文字画像が存在する場合、両者の類似度として所定の類似度を取得し、一方、前記ブロック及びそれに対応する前記比較先画像のブロック画像のどちらにも文字画像が存在しない場合、その両者の画像特徴情報に基づく類似度を取得する取得工程のプログラムコードと、
前記取得工程によって取得される前記分割工程で分割した各ブロック画像に対する類似度を累積加算して得られる累積類似度に基づいて、検索結果となる画像を出力する出力工程のプログラムコードと
を備える。
【0016】
上記の目的を達成するための本発明によるプログラムは以下の構成を備える。即ち、
類似画像検索の検索対象となる画像の画像登録処理を行う画像処理装置の制御を実現するプログラムであって、
画像を入力する入力工程と、
前記画像を複数のブロックに分割する分割工程と、
前記分割工程で分割された各ブロック画像の画像特徴情報に基づいて、各ブロック画像に文字画像が存在するか否かを判定する判定工程と、
前記判定工程の判定の結果、前記ブロック画像に文字画像が存在する場合、それを示す情報を画像特徴情報として記憶し、一方、前記ブロック画像に文字画像が存在しない場合、そのブロック画像の画像特徴情報を記憶部に記憶する記憶工程と
を備える。
【発明の効果】
【0017】
以上説明したように、本発明によれば、より精度良く文書画像を含む画像の類似画像検索を実行することができる画像処理装置及びその制御方法、プログラムを提供できる。
【発明を実施するための最良の形態】
【0018】
以下、本発明の実施の形態について図面を用いて詳細に説明する。
【0019】
図1は本発明の実施形態の画像処理装置のプロック構成図である。
【0020】
本発明では、画像を登録する画像登録処理、登録されている画像群から所望の画像を検索する画像検索処理について順に説明する。
【0021】
画像登録処理は、登録対象の画像を入力し、その入力画像の画像特徴量を抽出して、その入力画像と画像特徴量とを対応づけて記憶する処理である。
【0022】
また、画像検索処理は、いわゆる類似画像検索処理であり、検索条件となる比較元画像の画像特徴量の抽出(あるいは登録済みの画像を比較元画像とする場合は、その画像に対応する画像特徴量の読出)を実行し、その画像特徴量と登録済みの比較先画像の画像特徴量との比較を行い、その比較結果に基づいて、比較元画像に類似する画像を検索する。
【0023】
尚、画像登録処理時の画像特徴量の抽出は、本実施形態では、処理対象画像を複数の領域に分割し、各領域ごとに画像特徴量を抽出するが、その領域の縦横ブロック数は、処理対象画像のアスペクト比や大きさに関わらず同一とする。また、同様に、画像検索処理時の画像特徴量の抽出も、画像登録処理時の画像特徴量の抽出と同様の条件とする。また、ここでいう画像特徴量は、画像の色に関する色特徴情報、画像の輝度に関する輝度特徴情報の両方を含む。
【0024】
図1において、101はユーザインターフェース(UI)部であり、本発明に係る画像登録処理及び画像検索処理を含む各種処理を実行するためのユーザインターフェースである。このユーザインタフェースは、例えば、グラフィックユーザインターフェース及び入力デバイスによって実現される。ユーザは、このUI部101によって、画像登録処理及び画像検索処理を適宜実行することができる。
【0025】
102は画像入力処理部であり、画像登録処理による登録対象の画像を入力する。103は画像蓄積処理部であり、入力した画像を画像蓄積部103aに蓄積する。104は画像管理情報処理部であり、入力した画像を管理するための管理情報を生成し、画像管理DB104aに蓄積する。105は輝度特徴情報抽出処理部であり、入力した画像の輝度に関する輝度特徴情報を抽出し、抽出した輝度特徴情報を輝度特徴情報インデックステーブル105aに登録する。106は色特徴情報抽出処理部であり、入力した画像の色に関する色特徴情報を抽出し、抽出した色特徴情報を色特徴情報インデックステーブル106aに登録する。
【0026】
107は比較元画像入力部処理部であり、画像検索処理による検索条件となる画像(類似画像検索での比較元画像)を入力する。108は判定処理部であり、入力した比較元画像の色情報が十分であるか否かを判定する。
【0027】
109は色特徴情報比較処理部であり、色特徴情報による比較元画像と比較先画像との類似比較を行う。110は輝度特徴情報比較処理部であり、輝度特徴情報による比較元画像と比較先画像との類似比較を行う。
【0028】
111は検索結果表示処理部であり、色特徴情報比較処理部109あるいは輝度特徴情報比較処理部110の処理結果に基づいて、検索結果となる画像を表示する。また、この検索結果表示処理部111においては、検索結果となる画像をプリンタによって印刷するように構成しても良い。特に、検索結果となる画像が1つだけで、その画像を印刷したい場合には、処理の迅速化を図ることができる。
【0029】
尚、画像処理装置を構成する各種構成要素が実行する処理の詳細については、以下順に説明して行く。
【0030】
また、画像処理装置は、汎用コンピュータに搭載される標準的な構成要素(例えば、CPU、メモリ(RAM、ROM)、ハードディスク、外部記憶装置、ネットワークインタフェース、ディスプレイ、キーボード、マウス等)を有している。
【0031】
更に、図1に示される各種構成要素のすべてあるいはその一部は、専用のハードウエアで実現されても良いし、CPUの制御によって実行されるソフトウェアで実現されても良い。
【0032】
まず、UI部101を介して画像登録処理を実行する場合について説明する。
【0033】
[画像登録処理]
画像登録処理では、まず、画像入力処理部102で、登録対象の画像を入力する。この登録対象の画像の入力は、例えば、スキャナ等の入力デバイスを用いて行ったり、外部記憶装置に記憶されている画像を読み込むことで実現される。入力した画像は、一旦、メモリ上に記憶され、このメモリに記憶された画像のデータフォーマットから、その画像の種類が、カラー、モノクロ、グレースケール画像のいずれであるかを判定することができる。
【0034】
次に、画像蓄積処理部103は、メモリ上の画像を画像蓄積部103aへ記憶格納し、その画像とのファイル名を対応づけて記憶する。
【0035】
次に、画像管理情報処理部104は、画像に対して固有の画像IDを発番し、その画像IDとその画像のファイル名(その格納先(アドレス)を示すフルパス情報を含むファイル名)、画像入力時の日付を対応づけた情報を管理情報として画像管理データベース(DB)104aに記憶する。
【0036】
尚、画像管理DB104aの構成の一例を示すと、図2のようになる。
【0037】
次に、輝度特徴情報抽出処理部105で、画像の輝度に関する輝度特徴情報を抽出し、その抽出した輝度特徴情報と画像IDとを対応づけて輝度特徴情報インデックステーブル105aに登録する。また、色特徴情報抽出処理部106で、画像の色に関する色特徴情報を抽出し、その抽出した色特徴情報と画像IDとを対応づけて色特徴情報インデックステーブル106aに登録する。
【0038】
尚、輝度特徴情報インデックステーブル105a及び色特徴情報インデックステーブル106aの構成の一例を示すと、それぞれ図3及び図4のようになる。これらのインデックステーブルでは、各種特徴情報と画像IDとを対にして記憶管理することで、画像管理DB104aのレコードと、画像IDを仲立ちにして対応をとることが可能となっている。
【0039】
また、色特徴情報抽出処理部106では、処理対象画像の種類がモノクロあるいはグレースケール画像である場合でも、その色特徴情報を抽出する。これは、特に、比較元画像がカラー画像である場合には、その色特徴情報を用いた類似画像検索処理を実行することになるが、その際に比較先画像がモノクロあるいはグレースケール画像のような色情報がない場合には、そのことを示す色特徴情報も極めて重要な情報となり得るからである。
【0040】
例えば、比較元画像が、薄い色、例えば、パステルカラー等で構成される場合には、比較先画像がモノクロ、グレースケール画像であるとしても、比較元画像の色特徴情報と比較先画像(検索対象画像)の色特徴情報との間で高い類似度が算出される期待があるからである。
【0041】
次に、輝度特徴情報抽出処理部105が実行する処理の詳細について説明する。
【0042】
<輝度特徴情報抽出処理>
ここでは、処理対象画像を複数のブロックに分割した各ブロックの平均輝度に対応する輝度階級と各ブロックの位置情報を対応付けた情報を輝度特徴情報として抽出する。
【0043】
以下、この処理の詳細について、図5を用いて説明する。
【0044】
図5は本発明の実施形態の輝度特徴情報抽出処理の詳細を示すフローチャートである。
【0045】
まず、ステップS501で、処理対象画像がカラー画像であるか否かを判定する。
【0046】
この判定は、処理対象画像のデータフォーマットに基づいて実行する。
【0047】
例えば、マイクロソフト社が提供するオペレーティングシステムであるWindows(登録商標)で用いられる汎用的な画像データフォーマットであるDIBフォーマットにおいては、データヘッダ中の構造体BITMAPINFOHEADERのメンバーであるbiBitCountは、画像中の1ピクセルを表現するのに用いるビット数を示している。
【0048】
特に、このbiBitCountが24である場合にはフルカラー画像を示し、biBitCountが1の場合にはモノクロ2値画像を示し、biBitCountが8の場合には256色カラーあるいはグレースケール画像を示している。
【0049】
また、biBitCountが8の場合には、データヘッダ中の構造体BITMAPINFOのメンバーbmiColorsの内容を参照することで、画像が256色カラーあるいはグレースケール画像であるかを判定することができる。つまり、メンバーbmiColorsでは、その内容として、グレースケール表現のカラーパレットであるか、256色に減色するカラーパレットであるかが示されているので、その内容に基づいて、画像が256色カラーあるいはグレースケール画像であるかを判定することができる。
【0050】
ステップS501において、処理対象画像がカラー画像でない場合(ステップS501でNO)、ステップS503に進む。一方、処理対象画像がカラー画像である場合(ステップS501でYES)、ステップS502に進み、カラー画像をグレースケール画像(8ビット:256階調)に変換する。
【0051】
尚、この変換は、公知のRGBカラーマトリックスを用いて実行する。例えば、YCbCr色空間を用いると、グレースケール値を示す輝度Yの値と、RGB値(各8ビットの計24ビット)との関係は、
Y=0.29900*R+0.58700*G+0.11400*B (1)
と表現される。従って、(1)式により、輝度Yの値を算出することができる。
【0052】
次に、ステップS503で、画像を複数のブロックに分割する。
【0053】
尚、本実施形態では、図6に示すように、画像を縦横それぞれ9ブロックに分割する。特に、本実施形態では、表記の都合上9×9=81ブロックに分割している例を示しているが、実際には、8から16ブロック前後が好ましい。
【0054】
次に、ステップS504で、処理対象となる着目ブロックを左上端のブロックに設定する。尚、この着目ブロックの設定は、例えば、図7に示すように、予め処理順序が決定された順序決定テーブルを参照して行う。本例では、左上端から1つ右へ走査し、そのブロックから左斜め下へ走査を行う。これを繰返し行うことによりスキャンする走査例を示している。
【0055】
ステップS505で、未処理の着目ブロックの有無を判定する。未処理の着目ブロックがない場合(ステップS505でNO)、処理を終了する。一方、未処理の着目ブロックがある場合(ステップS505でYES)、ステップS506に進む。
【0056】
ステップS506で、着目ブロックの全画素の輝度の平均輝度を算出する。ステップS507で、算出した平均輝度が輝度閾値Th_G以上であるか否かを判定する。平均輝度が輝度閾値Th_G未満である場合(ステップS507でNO)、ステップS508に進む。
【0057】
そして、ステップS508で、図8の輝度階級テーブルを参照して、平均輝度に対応する輝度階級IDをその着目ブロックの代表輝度として決定し、その着目ブロックとその位置に対応づけて輝度特徴情報インデックステーブル105aに記憶する。
【0058】
尚、図8の輝度階級テーブルは、8ビットの輝度信号を、所定輝度範囲毎に設定した各種輝度階級と、文字ブロックであることを示す輝度階級で構成されている。
【0059】
ステップS509で、図7の順序決定テーブルを参照して、次の処理対象となる着目ブロックを設定する。その後、ステップS505に戻り、未処理の着目ブロックがなくなるまで、ステップS505〜ステップS512の処理を再帰的に繰り返す。
【0060】
尚、ステップS507において、平均輝度が輝度閾値Th_G以上であるか否かを判定する理由は、通常、印刷文書画像のバックグラウンドは白であり、印刷の無い部分で白色を表現しているため、適切な閾値Th_G以上の部分が無地背景か文字のある背景と仮定して差し支えないからである。この閾値Th_Gに関しては、例えば、再生紙のように無地であるが、スキャンしたときに輝度が低いものも考慮に入れておく必要がある。
【0061】
一方、ステップS507において、算出した平均輝度が輝度閾値Th_G以上である場合(ステップS507でYES)、ステップS510で、着目ブロック内に文字があるか否かの検証を実行する。そして、ステップS511で、その検証結果に基づいて、文字の有無を判定する。文字がない場合(ステップS511でNO)、ステップS508に進む。
【0062】
一方、文字がある場合(ステップS511でYES)、ステップS512で、着目ブロックが文字ブロックであることを示す特殊な輝度階級ID、図8では、輝度階級ID17を着目ブロックとその位置に対応づけて輝度特徴情報インデックステーブル105aに記憶する。
【0063】
以上の処理によって、処理対象画像のブロック毎の平均輝度に対応する代表輝度あるいは文字ブロックを示す情報と、各ブロックの位置情報が対応付けられた情報を輝度特徴情報として抽出することができる。
【0064】
次に、ステップS510の着目ブロック内の文字の有無の判定処理の詳細について、図9を用いて説明する。
【0065】
<着目ブロック内の文字情報の有無の判定処理>
図9は本発明の実施形態のステップS510の着目ブロック内の文字の有無の判定処理の詳細を示すフローチャートである。
【0066】
ステップS601で、ステップS502で既に取得しているグレースケール画像から、着目ブロックのグレースケール画像を取得する。ステップS602で、閾値Th_Charを用いて、この閾値Th_Charを超える画素のランレングス分布を水平方向と鉛直方向の両方向で取得する。
【0067】
尚、ランレングス分布を取得する範囲は、想定している文字サイズを少し超える程度の範囲までで構わない。また、閾値Th_Charに関しては、着目ブロックの平均輝度を用いると良く、簡易的には、閾値Th_Gを代用しても構わない。
【0068】
更に、ある程度の濃度の色地文書画像に対応するために、予め文書画像の最も輝度の高い画素とその輝度を取得しておき、その値に、閾値Th_Gを加算した値を新たなTh_Gとして用いても良い。
【0069】
一般に、文字が存在する領域をランレングス分布で統計解析すると、図10のような文字フォントの大きさ近傍で急激にピークを持ち、文字フォントの大きさを越えた付近で急激に分布が激減する特徴のある分布が得られる。
【0070】
この性質を用いて、ランレングス分布のピークの分散と急激な負の分布の傾き勾配を検出することにより、文字の有無を推定することが可能である。
【0071】
そこで、まず、ステップS603で、水平・鉛直方向の両方向のランレンレングス分布のピークの分散を算出する。ステップS604で、水平・鉛直方向の両方向におけるランレングス分布の最頻値に相当するランレングスより長い領域において、最も急激な頻度減少勾配を算出する。
【0072】
ステップS605で、算出した分散が閾値以上で、かつ算出した減少勾配が閾値以上であるか否かを判定する。算出した分散が閾値以上で、かつ算出した減少勾配が閾値以上でない場合(ステップS605でNO)、ステップS606に進み、着目ブロック内に文字がないと判定する。一方、算出した分散が閾値以上で、かつ算出した減少勾配が閾値以上である場合(ステップS605でYES)、ステップS607に進み、着目ブロック内に文字があると判定する。
【0073】
以上の処理によって、大まかに着目ブロック内に、ある程度の文字があるか否かを判定することができるが、更に、着目ブロックの縦横方向の輝度累積情報を生成し、上記文字フォントの大きさの推定値の数倍の値を上限とする自己相関関数を算出すると、文字列がある場合には文字の段組幅に相当する値で顕著なピークを検出することが可能となるので、文字の有無の判定精度を向上させることができる。
【0074】
次に、色特徴情報抽出処理部106が実行する処理の詳細について説明する。
【0075】
尚、色特徴情報抽出は、直感的には、上述の輝度特徴情報抽出を3次元に拡張したものと考えればよい。例えば、輝度特徴情報抽出では、図8の1次元の輝度階級テーブルを用いて、各着目ブロックの代表輝度を決定したが、色特徴情報抽出では、図11のようなRGB色空間を立体的に複数の部分空間(いわゆる、色ビン)に分割し、この色ビン毎に色特徴情報を抽出することになる。
【0076】
以下、この処理の詳細について、図12を用いて説明する。
【0077】
図12は本発明の実施形態の色特徴情報抽出処理の詳細を示すフローチャートである。
【0078】
まず、ステップS1201で、処理対象画像がカラー画像であるか否かを判定する。尚、この判定は、図5のステップS501と同様にして行う。
【0079】
ステップS1201において、処理対象画像がカラー画像である場合(ステップS1201でYES)、ステップS1203に進む。一方、処理対象画像がカラー画像でない場合(ステップS1201でNO)、ステップS1202に進み、グレースケール画像をカラー画像に変換する。
【0080】
尚、このグレースケール画像からカラー画像への変換は、例えば、輝度値aの画素を、RGB値(a,a,a)とし、DIBフォーマットのバディングを考慮してデータ並びを整えればよい。このパディングとは、WINDOWS(登録商標)のDIBフォーマット(ファイルとして実在するビットマップファイル(*.BMP))におけるカラー画像データを格納する際の画像データ表現仕様である。
【0081】
次に、ステップS1203で、画像を複数のブロックに分割する。本実施形態では、図6に示すように、画像を縦横をそれぞれ9ブロックに分割する。特に、本実施形態では、表記の都合上9×9=81ブロックに分割している例を示しているが、実際には、15×15=225ブロック程度であることが好ましい。
【0082】
次に、ステップS1204で、処理対象となる着目ブロックを左上端のブロックに設定する。尚、この着目ブロックの設定は、図5のステップS1204と同様にして行う。
【0083】
ステップS1205で、未処理の着目ブロックの有無を判定する。未処理の着目ブロックがない場合(ステップS1205でNO)、処理を終了する。一方、未処理の着目ブロックがある場合(ステップS1205でYES)、ステップS1206に進む。
【0084】
ステップS1206で、着目ブロックが文字ブロックであるか否かを判定する。着目ブロックが文字ブロックでない場合(ステップS1206でNO)、ステップS1207に進む。
【0085】
尚、この判定は、着目ブロックの輝度階級IDを参照して判定する。
【0086】
ステップS1207で、着目ブロック内の全画素の色の平均色を算出する。ステップS1208で、算出した平均色を、図11の色空間を分割して作った部分空間である色ビンへ射影し、対応する色ビンIDを、その着目ブロックの代表色と決定する。そして、その色ビンIDと、着目ブロックとをその位置に対応づけて色特徴情報インデックステーブル106aに記憶する。
【0087】
尚、本実施形態では、図11に示すように、RGB色空間を3×3×3=27に分割した色ビンへ着目ブロックの全画素の濃度値を射影する場合を示しているが、実際には、RGB色空間を6×6×6=216に分割した色ビンへ着目ブロックの平均色を射影するほうが好ましい。
【0088】
ステップS1209で、図7の順序決定テーブルを参照して、次の処理対象となる着目ブロックを設定する。その後、ステップS1205に戻り、未処理の着目ブロックがなくなるまで、ステップS1205〜ステップS1210の処理を再帰的に繰り返す。
【0089】
一方、ステップS1206において、着目ブロックが文字ブロックである場合(ステップS1206でYES)、ステップS1210で、文字ブロックを示す色ビンIDを、着目ブロックとをその位置に対応づけて色特徴情報インデックステーブル106aに記憶する。
【0090】
尚、6×6×6=216の色ビンを用いている場合には、例えば、文字ブロックを示す色ビンIDとして、色ビンID217を用いればよい。
【0091】
以上の処理によって、処理対象画像のブロック毎の平均色に対応する代表色あるいは文字ブロックを示す情報と、各ブロックの位置情報が対応付けられた情報を色特徴情報として抽出することができる。
【0092】
[画像検索処理]
画像検索処理では、まず、比較元画像入力部107で、検索条件となる比較元画像を入力する。この比較元画像の入力は、例えば、スキャナ等の入力デバイスを用いて行ったり、外部記憶装置に記憶されている画像を読み込むことで実現される。入力した画像は、一旦、メモリ上に記憶され、このメモリに記憶された画像のデータフォーマットから、その画像の種類が、カラー画像、モノクロ、グレースケール画像のいずれであるかを判定することができる。
【0093】
尚、本実施形態の画像検索処理は、比較元画像の色情報が十分であるかどうかだけに着目し、比較元画像の色情報が十分である場合には、その色特徴情報で比較先画像の色特徴情報との類似比較を行い、一方、比較元画像の色情報が不十分である場合には、その輝度特徴情報と比較先画像の輝度特徴情報との類似比較を行う類似画像検索を行う場合を例に挙げて説明する。
【0094】
そこで、まず、判定処理部108で、メモリ上の画像の色情報が十分であるか否かを判定する。
【0095】
色情報が十分である場合、色特徴情報比較処理部109で、比較元画像の色特徴情報を用いて、画像蓄積部103aに記憶されている検索対象画像(比較先画像)の色特徴情報との比較を行うことで類似画像検索を行う。
【0096】
一方、色情報が不十分である場合、輝度特徴情報比較処理部110で、比較元画像の輝度特徴情報を用いて、画像蓄積部103aに記憶されている検索対象画像(比較先画像)の輝度特徴情報との比較を行うことで類似画像検索を行う。
【0097】
これにより、比較元画像の画像の種類(モノクロやグレースケール画像、あるいはカラー画像)に適した方法で類似比較処理を行うことができる。
【0098】
尚、判定処理部108の判定は、最も簡単な方法としては、上述の画像登録処理で説明した方法と同様な方法で、比較元画像のデータフォーマットを解析し、比較元画像がモノクロあるいはグレースケール画像である場合には、色情報はないので、比較元画像の色情報が不十分であると判定する。
【0099】
一方、比較元画像がカラー画像である場合には、その比較元画像の色情報が十分であると判定すれば良いが、データフォーマット自体はカラー画像であるのに、その中はグレースケール画像である場合もある。そこで、このような場合には、データフォーマットがカラー画像である場合でも、比較元画像の色情報が十分であるか否かを厳密に判定する必要があり、その判定方法としては、比較元画像の色に関する解析を利用する方法がある。
【0100】
この解析の趣旨は、比較元画像に占める色情報の割合を解析するものであり、比較元画像に占める色情報の割合が予め定められた閾値以上である場合に色情報が十分であると判定し、閾値未満である場合に色情報が不十分であると判定する。
【0101】
ここで、判定処理部108において、比較元画像に占める色情報の割合を解析する解析方法には、2種類存在する。そこで、以下、この2種類の解析方法について説明する。
【0102】
<色解析方法1>
図13は本発明の実施形態の第1の色解析方法を示すフローチャートである。
【0103】
まず、ステップS1301で、比較元画像がカラー画像であるか否かを判定する。比較元画像がカラー画像でない場合(ステップS1301でNO)、ステップS1302に進み、比較元画像の色情報が不十分であると判定する。一方、比較元画像がカラー画像である場合(ステップS1301でYES)、ステップS1303に進む。
【0104】
ステップS1303で、比較元画像の画素数が閾値以上であるか否かを判定する。閾値未満である場合(ステップS1303でNO)、ステップS1309に進む。一方、閾値以上である場合(ステップS1303でYES)、ステップS1304に進む。
【0105】
ステップS1304で、総画素数をその数より少ない所定値に近くなるような相似比(縮小率)を算出する。
【0106】
例えば、目的の画素数をGp、比較元画像の縦サイズをH、横サイズをWとすると、
相似比S=Int(sqrt(H*W/Gp))
となる。
【0107】
但し、関数Int(x)は、xより大きく、かつ整数と成る値を選ぶものを意味する。
【0108】
従って、比較元画像の縮小画像は、縦H2=H/S[画素]、横W2=W/S[画素]となる。
【0109】
次に、ステップS1305で、比較元画像の画素サイズ縦横S×Sブロックの処理対象ブロックの平均色を算出し、これを縮小画像の対応する画素の画素値とし、以降、縦横S×Sブロックの処理対象ブロックが重ならないように移動して、この処理を繰り返すことにより比較元画像の縮小画像を生成する。
【0110】
尚、ステップS1305で比較元画像の縮小画像を生成する理由は、以下のステップS1306で比較元画像の色ヒストグラムを生成する場合に、処理対象画像の画素数が非常に大きいと色ヒストグラムを生成する処理の負荷が大きくなるので、処理の負荷が軽減されるように、比較元画像の画素数を所望の数にするためである。もちろん、処理対象画像の画素数が少ない場合には、そのまま色ヒストグラムを生成するようにしても良い。
【0111】
次に、ステップS1306で、縮小画像を構成する全画素の各濃度値を、図11の色空間を分割して作った部分空間である色ビンへ射影し、色ビンに対する色ヒストグラムを生成する。
【0112】
次に、ステップS1307で、各色ビンに対するヒストグラム情報からグレースケール方向の色ビンに属する画素数をカウントする。ステップS1308で、縮小画像の全画素数に対するグレースケール方向の色ビンに属する画素数の割合を算出する。
【0113】
ステップS1312で、算出された割合が予め定められた閾値以上であるか否かを判定する。閾値以上である場合(ステップS1312でYES)、ステップS1302に進む。一方、閾値未満である場合(ステップS1312でNO)、ステップS1313に進み、比較元画像の色情報が十分であると判定する。
【0114】
一方、ステップS1303において、比較元画像の画素数が閾値未満である場合には、ステップS1309で、比較元画像を構成する全画素の各濃度値を、図11の色空間を分割して作った部分空間である色ビンへ射影し、色ビンに対する色ヒストグラムを生成する。ステップS1310で、各色ビンに対するヒストグラム情報からグレースケール方向の色ビンに属する画素数をカウントする。ステップS1311で、全画素数に対するグレースケール方向の色ビンに属する画素数の割合を算出する。その後、ステップS1312に進む。
【0115】
<色解析方法2>
図14は本発明の実施形態の第2の色解析方法を示すフローチャートである。
【0116】
まず、ステップS1401で、比較元画像がカラー画像であるか否かを判定する。比較元画像がカラー画像でない場合(ステップS1401でNO)、ステップS1402に進み、比較元画像の色情報が不十分であると判定する。一方、比較元画像がカラー画像である場合(ステップS1401でYES)、ステップS1403に進む。
【0117】
ステップS1403で、比較元画像を構成する全画素の色の平均色を算出する。ステップS1404で、平均色を輝度成分と色差成分に変換する。次に、ステップS1405で、輝度成分値に対する色差成分値の割合Rを算出する。
【0118】
ここで、色を輝度成分と色差成分に分離する分離方法については、公知の方法を用いる。
【0119】
例えば、YCbCr色空間を用いると、24ビットRGB値との関連は、
Y =0.29900*R+0.58700*G+0.11400*B
Cb=-0.16874*R−0.33126*G+0.50000*B+128
Cr=0.50000*R−0.41869*G+(-0.08131)*B+128 (2)
と表現される。
【0120】
式(2)に従って、算出した平均色を輝度成分Yaveと色差成分Cbave及びCraveに分離し、
割合R=sqrt(Cbave*Cbave+Crave*Crave)/Yave (3)
を計算する。
【0121】
そして、ステップS1406で、この割合Rが予め定めた閾値以上であるか否かを判定する。閾値以上である場合(ステップS1406でYES)、ステップS1402に進む。一方、閾値未満である場合(ステップS1406でNO)、ステップS1407に進み、比較元画像の色情報が十分であると判定する。
【0122】
次に、色特徴情報比較処理部109が実行する処理の詳細について説明する。
【0123】
尚、色特徴情報比較処理部109では、比較元対象画像の色特徴情報を抽出するために、上述の色特徴情報抽出処理を用いる。
【0124】
図15は本発明の実施形態の色特徴情報比較処理の詳細を示すフローチャートである。
【0125】
まず、ステップS1501で、図12のフローチャートで説明した処理によって、比較元画像の色特徴情報をブロック毎に抽出する。但し、比較元画像が既に画像蓄積部103aに登録済みの画像である場合には、対応する色特徴情報を色特徴インデックステーブル106aから読み出す。
【0126】
次に、ステップS1502で、比較元画像と未比較の比較先画像(画像蓄積部103aに蓄積されている)の有無を判定する。未比較の比較先画像がない場合(ステップS1502でNO)、ステップS1511に進む。一方、未比較の比較先画像がある場合(ステップS1502でYES)、ステップS1503に進む。
【0127】
ステップS1503で、色特徴情報インデックステーブル106aを参照して、処理対象画像の画像IDと各ブロックの色特徴情報を読み出す。ステップS1504で、処理対象とする画像中の着目ブロックを先頭に設定する。ステップS1505で、比較元画像の色特徴情報と、比較対象の色特徴情報の類似度を示す類似距離を0にリセットする。
【0128】
ステップS1506で、未比較の着目ブロックの有無を判定する。未比較の着目ブロックがない場合(ステップS1506でNO)、ステップS1510に進む。一方、未比較の着目ブロックがある場合(ステップS1506でYES)、ステップS1507に進む。
【0129】
ステップS1507で、比較元画像と比較先画像のそれぞれの色特徴情報から、それぞれの着目ブロックの色ビンIDを取得する。
【0130】
ステップS1508で、図16の色ビンペナルティマトリックスを参照して、取得した色ビンID間に対応する着目ブロックの局所的類似距離を取得し、これを直前の処理で取得している類似距離に累積加算する。そして、この累積類似距離はメモリに記憶する。
【0131】
ここで、色ビンペナルティマトリックスについて、図16を用いて説明する。
【0132】
図16は本発明の実施形態の色ビンペナルティマトリックスの構成を示す図である。
【0133】
色ビンペナルティマトリックスは、色ビンID同士の局所的類似距離を管理するマトリックスである。図16によれば、色ビンペナルティマトリックスは、同一色ビンIDではその類似距離は0となり、色ビンID同士の差が大きくなるほど、つまり、類似度が低くなるほど、その類似距離は大きくなるように構成されている。また、同一色ビンIDの対角位置は全て、その類似距離は0で、それを境に対称性を持っている。
【0134】
但し、文字ブロックに相当する色ビンIDについては、この例では、色ビンID217を設定している。この色ビンID217は、その他の色ビンID間のペナルティに関しては性質が異なるため、比較的大きな、例えば、真っ白と真っ黒間のペナルティを設定している。このようにすると、文字ブロックに関しては極めて厳しく差異を考慮する類似比較処理となる。つまり、図16の色ビンペナルティマトリックスでは、文字ブロックを示す所定色ビンIDと、文字ブロック以外のブロックの色ビンIDとの類似距離は、その所定色ビンID以外の色ビンID同士の類似距離よりも十分異なる(この場合、大きく)なるように管理されている。
【0135】
逆に、文字ブロックに相当する色ビンIDと、その他の色ビンID間のペナルティを小さくすると、文字ブロックに関しては緩く差異を考慮する類似比較処理となる。従って、必要に応じて、このペナルティ値を調整することで、より用途や目的に応じた類似比較処理を実現することができる。
【0136】
このように、本実施形態では、色ビンペナルティマトリックスを参照するだけで、色ビンID同士の類似距離を取得することができるので、処理の高速化を図ることができる。
【0137】
そして、ステップS1509で、次の処理対象となる着目ブロックを設定する。
【0138】
一方、ステップS1506で、未比較の着目ブロックがない場合(ステップS1506でNO)、ステップS1510に進み、メモリに記憶されている累積類似距離を画像IDに対応づけてメモリに記憶する。
【0139】
そして、ステップS1502で、未比較の比較先画像がない場合(ステップS1502でNO)、ステップS1511に進み、メモリに記憶されている各画像IDに対応する累積類似距離の昇順で、画像IDをソートし、ソートした画像IDと累積類似距離の対を検索結果として出力する。
【0140】
次に、輝度特徴情報比較処理部110が実行する処理の詳細について説明する。
【0141】
尚、輝度特徴情報比較処理部110では、比較元対象画像の輝度特徴情報を抽出するために、上述の輝度特徴情報抽出処理を用いる。
【0142】
図17は本発明の実施形態の輝度特徴情報比較処理の詳細を示すフローチャートである。
【0143】
まず、ステップS1701で、図5のフローチャートで説明した処理によって、比較元画像の輝度特徴情報として輝度階級IDを抽出する。但し、比較元画像が既に画像蓄積部103aに登録済みの画像である場合には、対応する輝度特徴情報を輝度特徴インデックステーブル105aから読み出す。
【0144】
次に、ステップS1702で、比較元画像と未比較の比較先画像(画像蓄積部103aに蓄積されている)の有無を判定する。未比較の比較先画像がない場合(ステップS1702でNO)、ステップS1711に進む。一方、未比較の比較先画像がある場合(ステップS1702でYES)、ステップS1703に進む。
【0145】
ステップS1703で、輝度特徴情報インデックステーブル105aを参照して、処理対象画像の画像IDと各ブロックの輝度特徴情報を読み出す。ステップS1704で、処理対象とする画像中の着目ブロックを先頭に設定する。ステップS1705で、比較元画像の輝度特徴情報と、比較対象の輝度特徴情報の類似度を示す類似距離を0にリセットする。
【0146】
ステップS1706で、未比較の着目ブロックの有無を判定する。未比較の着目ブロックがない場合(ステップS1706でNO)、ステップS1710に進む。一方、未比較の着目ブロックがある場合(ステップS1706でYES)、ステップS1707に進む。
【0147】
ステップS1707で、比較元画像と比較先画像のそれぞれの輝度特徴情報から、着目ブロックの輝度に関する輝度階級IDを取得する。
【0148】
ステップS1708で、図18の輝度階級IDペナルティマトリックスを参照して、取得した輝度階級ID間に対応する着目ブロックの局所的類似距離を取得し、これを直前の処理で取得している類似距離に累積加算する。そして、この累積類似距離はメモリに記憶する。
【0149】
ここで、輝度階級IDペナルティマトリックスについて、図18を用いて説明する。
【0150】
図18は本発明の実施形態の輝度階級IDペナルティマトリックスの構成を示す図である。
【0151】
輝度階級IDペナルティマトリックスは、輝度階級ID同士の局所的類似距離を管理するマトリックスである。図18によれば、輝度階級IDペナルティマトリックスは、同一輝度階級IDではその類似距離は0となり、輝度階級ID同士の差が大きくなるほど、つまり、類似度が低くなるほど、その類似距離は大きくなるように構成されている。また、同一輝度階級IDの対角位置は全て、その類似距離は0で、それを境に対称性を持っている。
【0152】
但し、文字ブロックに相当する輝度階級ID、この例では、輝度階級ID17を設定する。この輝度階級ID17は、その他の輝度階級ID間のペナルティに関しては性質が異なるため、比較的大きな、例えば、真っ白と真っ黒間のペナルティを設定している。このようにすると、文字ブロックに関しては極めて厳しく差異を考慮する類似比較処理となる。つまり、図18の輝度階級IDペナルティマトリックスでは、文字ブロックを示す所定輝度階級IDと、文字ブロック以外のブロックの輝度階級IDとの類似距離は、その所定輝度階級ID以外の輝度階級ID同士の類似距離よりも十分異なる(この場合、大きく)なるように管理されている。
【0153】
逆に、文字ブロックに相当する輝度階級IDとその他の輝度階級ID間のペナルティを小さくすると、文字ブロックに関しては緩く差異を考慮する類似比較処理となる。従って、必要に応じて、このペナルティ値を調整することで、より用途や目的に応じた類似比較処理を実現することができる。
【0154】
このように、本実施形態では、輝度階級IDペナルティマトリックスを参照するだけで、輝度階級ID同士の類似距離を取得することができるので、処理の高速化を図ることができる。
【0155】
そして、ステップS1709で、次の処理対象となる着目ブロックを設定する。
【0156】
一方、ステップS1706で、未比較の着目ブロックがない場合(ステップS1706でNO)、ステップS1710に進み、メモリに記憶されている累積類似距離を画像IDに対応づけてメモリに記憶する。
【0157】
そして、ステップS1702で、未比較の画像がない場合(ステップS1702でNO)、ステップS1711に進み、メモリに記憶されている各画像IDに対応する累積類似距離の昇順で、画像IDをソートし、ソートした画像IDと累積類似距離の対を検索結果として出力する。
【0158】
以上説明した画像登録処理と画像検索処理を実行することにより、比較先画像の種類がモノクロやグレースケールであっても、あるいはカラー画像であっても、その画像の種類に適した画像特徴量を用いて、画像を登録あるいは画像を検索することができる。
【0159】
次に、検索結果表示部処理部111が実行する検索結果表示処理について説明する。
【0160】
[検索結果表示処理]
検索結果表示処理では、類似度が高い順、即ち、類似距離の昇順に画像IDとその類似度の対がソートされた情報を元に、画像管理DB104aを参照し、該当するレコードから画像の格納先であるアドレス情報(ファイルフルパス情報)を取得して、画像蓄積部103aから対応する画像を読み出し、表示する。
【0161】
以下、検索結果表示処理について、図19を用いて説明する。
【0162】
図19は本発明の実施形態の検索結果表示処理を示すフローチャートである。
【0163】
ステップS1801で、画像検索処理によって得られた検索結果数である検索ヒット個数Mと、比較元画像と検索結果として得られる比較先画像との類似度が高い順、即ち、類似距離の昇順に対応する画像IDとその類似度の対を取得する。
【0164】
次に、ステップS1802で、表示画面の表示可能な画像の個数Nを取得する。
【0165】
尚、この個数Nは、検索結果として表示する画像の縮小画像のサイズと、表示画面上の検索結果表示領域のサイズによって決定される。
【0166】
ステップS1803で、検索ヒット個数Mと個数Nの小さいほうを画像表示個数Rに設定する。
【0167】
ステップS1804で、検索結果として表示する画像の順位(読出画像順位)を示す変数Kを1に初期化する。ステップS1805で、K≦Rであるか否かを判定する。K≦Rでない場合(ステップS1805でNO)、処理を終了する。一方、K≦Rである場合(ステップS1806でYES)、ステップS1806に進む。
【0168】
ここで、ステップS1806〜ステップS1808の処理は、類似画像検索結果である画像を表示画面に表示する処理となる。
【0169】
ここで、類似画像検索結果の表示例について、図20を用いて説明する。
【0170】
図20は本発明の実施形態の類似画像検索結果の表示例を示す図である。
【0171】
図20に示されるように、表示画面上の検索結果表示領域には、検索結果とする画像の縮小画像を類似距離の昇順に左上端から順に右隣へ順に並べて表示し、右上端まで到達したら、次の行の左端に移り、そこからまた右隣に順に右端まで並べて表示したら、以下、同様に、検索結果表示領域の終わりとなる右下端まで並べて表示して行く。また、表示する縮小画像の下には、対応する類似距離を併せて表示する。
【0172】
ステップS1806で、読出画像順位Kにより、表示対象の画像の表示位置を決定する。ステップS1807で、読出画像順位Kの画像IDに対応する画像のアドレス情報(フルパス情報)を画像管理DB104aから取得する。ステップS1808で、アドレス情報で示される画像を読み出し、決定した表示位置にその縮小画像を表示する。その後、変数Kを1インクリメントして、ステップS1805に進む。
【0173】
尚、本実施形態の画像検索処理では、比較元画像の色情報が十分であるかどうかだけに着目し、比較元画像の色情報が十分である場合にはその色特徴情報で比較先画像の色特徴情報との類似比較を行い、比較元画像の色情報が不十分である場合にはその輝度特徴情報と比較先画像の輝度特徴情報との類似比較を行う類似画像検索の例を示したが、これに限定されない。
【0174】
例えば、比較先画像の色情報が十分であるか否かについても考慮し、比較する画像の双方の色情報が十分である場合に、双方の色特徴情報で類似比較を行い、どちらか片方あるいは双方の色情報が不十分である場合に、双方の輝度特徴情報で類似比較を行う類似画像検索を行うようにしても良い。
【0175】
上記実施形態では、着目ブロック中の平均輝度に基づいて、その着目ブロック内に文字画像が存在するか否かを判定する構成としているが、これに限定されるものではない。例えば、着目ブロック中の最頻輝度、あるいは着目ブロック中の最も輝度の高い画素の色近傍範囲の平均輝度あるいは最頻輝度に基づいて、その着目ブロック内に文字画像が存在するか否かを判定する構成としても良い。
【0176】
この構成の場合、輝度特徴情報抽出処理の前に、着目ブロックに対して輝度ヒストグラムに関する前処理を行い、輝度値0から255までに正規化を行ってから、輝度特徴情報抽出処理を実行すると、より処理の簡素化を図ることができる。
【0177】
これにより、例えば、再生紙のような予め紙に色が付いており、インクやトナーがのっていない無地背景は輝度値255に正規化され、本実施形態を適応しても、的確に無地背景に印刷された文字を抽出することが可能となる。
【0178】
また、画像登録処理は、画像入力処理、画像蓄積処理、画像管理情報処理、輝度特徴情報抽出処理、色特徴情報抽出処理の順番で処理を行ったが、画像入力処理以降の処理に関してはその順序は問わない。
【0179】
一方、画像検索処理においては、比較元画像が既に画像蓄積部103aへ登録済みの画像であるならば、既にその色特徴情報及び輝度特徴情報も登録されているので、かかる画像に対する色特徴情報抽出処理及び輝度特徴情報抽出処理は不要となる。
【0180】
また、画像管理DB104a、輝度特徴情報インデックステーブル105a、色特徴情報インデックステーブル106aを別々に構成し、画像IDを仲立ちとして互いの情報に対応を取る構成例を示したが、これらのDB及びテーブル群を一体にして構成しても良い。
【0181】
また、処理対象となる着目ブロックの設定は、図7の順序決定テーブルで示される走査順序に限定されるものではなく、水平走査及び垂直走査あるいはジグザグ走査等の他の走査順序、つまり、画像の各ブロックを着目ブロックとして設定できるような走査順序であれば、どのような走査順序であっても良い。
【0182】
以上説明したように、本実施形態によれば、予め文書画像を文字領域と画像領域に分離する技術を用いて、分離したものどうしの特徴を求めて画像検索を実現する方法のような領域の抽出し損ねによる検索漏れの恐れのある負荷の重い処理を行うことなく、大まかな文字検出処理結果をプリミティブな画像特徴量に加味した文書画像比較処理を実現する。
【0183】
これにより、特に、文書画像のように、白地バックグラウンドに画像を貼り込み、その余白に文字が存在するような画像に対しても、より精度良く目的とする画像を検索することができる。
【0184】
つまり、白地のバックグラウンドに文字があっても無くとも平均色あるいは最頻色には影響が現れず、文字のある分割ブロックと白地のバックグラウンドとの区別がつかず、ユーザにとって違和感のある検索結果となることを防止することができる。
【0185】
以上、実施形態例を詳述したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【0186】
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム(実施形態では図に示すフローチャートに対応したプログラム)を、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
【0187】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【0188】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であっても良い。
【0189】
プログラムを供給するための記録媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などがある。
【0190】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
【0191】
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【0192】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
【0193】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現される。
【図面の簡単な説明】
【0194】
【図1】本発明の実施形態の画像処理装置のプロック構成図である。
【図2】本発明の実施形態の画像管理DBの構成の一例を示す図である。
【図3】本発明の実施形態の輝度特徴情報テーブルの構成の一例を示す図である。
【図4】本発明の実施形態の色特徴情報テーブルの構成の一例を示す図である。
【図5】本発明の実施形態の輝度特徴情報抽出処理の詳細を示すフローチャートである。
【図6】本発明の実施形態の画像ブロック分割の一例を示す図である。
【図7】本発明の実施形態の順序決定テーブルの一例を示す図である。
【図8】本発明の実施形態の輝度階級テーブルの一例を示す図である。
【図9】本発明の実施形態のステップS510の着目ブロック内の文字の有無の判定処理の詳細を示すフローチャートである。
【図10】本発明の実施形態のランレングス分布の一例を示す図である。
【図11】本発明の実施形態の色空間上の色ビンの構成の一例を示す図である。
【図12】本発明の実施形態の色特徴情報抽出処理の詳細を示すフローチャートである。
【図13】本発明の実施形態の第1の色解析方法を示すフローチャートである。
【図14】本発明の実施形態の第2の色解析方法を示すフローチャートである。
【図15】本発明の実施形態の色特徴情報比較処理の詳細を示すフローチャートである。
【図16】本発明の実施形態の色ビンペナルティマトリックスの構成の一例を示す図である。
【図17】本発明の実施形態の輝度特徴情報比較処理の詳細を示すフローチャートである。
【図18】本発明の実施形態の輝度階級IDペナルティマトリックスの構成の一例を示す図である。
【図19】本発明の実施形態の検索結果表示処理を示すフローチャートである。
【図20】本発明の実施形態の類似画像検索結果の表示例を示す図である。
【符号の説明】
【0195】
101 ユーザインタフェース部
102 画像入力処理部
103 画像蓄積処理部
103a 画像蓄積部
104 画像管理情報処理部
104a 画像管理DB
105 輝度特徴情報抽出処理部
105a 輝度特徴情報インデックステーブル
106 色特徴情報抽出処理部
106a 色特徴情報インデックステーブル
107 比較元画像入力部処理部
108 判定処理部
109 色特徴情報比較処理部
110 輝度特徴情報比較処理部
111 検索結果表示処理部

【特許請求の範囲】
【請求項1】
検索条件となる比較元画像と、その比較先画像との類似度に基づいて、類似画像検索を行う画像処理装置であって、
前記比較元画像を複数のブロックに分割する分割手段と、
前記分割手段で分割されたブロック画像の画像特徴情報に基づいて、該ブロック画像に文字画像が存在するか否かを判定する判定手段と、
前記判定手段の判定の結果、前記ブロック画像及びそれに対応する前記比較先画像のブロック画像のどちらかに文字画像が存在する場合、両者の類似度として所定の類似度を取得し、一方、前記ブロック及びそれに対応する前記比較先画像のブロック画像のどちらにも文字画像が存在しない場合、その両者の画像特徴情報に基づく類似度を取得する取得手段と、
前記取得手段によって取得される前記分割手段で分割した各ブロック画像に対する類似度を累積加算して得られる累積類似度に基づいて、検索結果となる画像を出力する出力手段と
を備えることを特徴とする画像処理装置。
【請求項2】
前記比較手段は、前記比較元画像と前記比較先画像間の画像特徴情報に応じた類似度を管理する管理テーブルを備え、
前記管理テーブルは、前記比較元画像及び前記比較先画像のどちらかに文字画像が存在する場合の該比較元画像と該比較先画像間の画像特徴情報に基づく所定の類似度として、前記比較元画像に文字画像が存在しない場合の該比較元画像と該比較先画像間の画像特徴情報に基づく類似度よりも十分異なる固定値を管理している
ことを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記判定手段は、前記ブロック画像の前記画像特徴情報が示す画像特徴量が所定値以上であるか否かを判定し、前記画像特徴量が所定値以上である場合、該処理対象画像に文字画像が存在すると判定する
ことを特徴とする請求項1に記載の画像処理装置。
【請求項4】
前記画像特徴情報は、前記ブロック画像の輝度に関する輝度特徴情報である
ことを特徴とする請求項3に記載の画像処理装置。
【請求項5】
前記輝度特徴情報は、前記ブロック画像の平均輝度あるいは最頻輝度である
ことを特徴とする請求項4に記載の画像処理装置。
【請求項6】
前記輝度特徴情報は、前記ブロック画像中の最も輝度の高い画素の色近傍範囲の平均輝度あるいは最頻輝度である
ことを特徴とする請求項4に記載の画像処理装置。
【請求項7】
類似画像検索の検索対象となる画像の画像登録処理を行う画像処理装置であって、
画像を入力する入力手段と、
前記画像を複数のブロックに分割する分割手段と、
前記分割手段で分割された各ブロック画像の画像特徴情報に基づいて、各ブロック画像に文字画像が存在するか否かを判定する判定手段と、
前記判定手段の判定の結果、前記ブロック画像に文字画像が存在する場合、それを示す情報を画像特徴情報として記憶し、一方、前記ブロック画像に文字画像が存在しない場合、そのブロック画像の画像特徴情報を記憶する記憶手段と
を備えることを特徴とする画像処理装置。
【請求項8】
検索条件となる比較元画像と、その比較先画像との類似度に基づいて、類似画像検索を行う画像処理装置の制御方法であって、
前記比較元画像を複数のブロックに分割する分割工程と、
前記分割工程で分割されたブロック画像の画像特徴情報に基づいて、該ブロック画像に文字画像が存在するか否かを判定する判定工程と、
前記判定工程の判定の結果、前記ブロック画像及びそれに対応する前記比較先画像のブロック画像のどちらかに文字画像が存在する場合、両者の類似度として所定の類似度を取得し、一方、前記ブロック及びそれに対応する前記比較先画像のブロック画像のどちらにも文字画像が存在しない場合、その両者の画像特徴情報に基づく類似度を取得する取得工程と、
前記取得工程によって取得される前記分割工程で分割した各ブロック画像に対する類似度を累積加算して得られる累積類似度に基づいて、検索結果となる画像を出力する出力工程と
を備えることを特徴とする画像処理装置の制御方法。
【請求項9】
類似画像検索の検索対象となる画像の画像登録処理を行う画像処理装置の制御方法であって、
画像を入力する入力工程と、
前記画像を複数のブロックに分割する分割工程と、
前記分割工程で分割された各ブロック画像の画像特徴情報に基づいて、各ブロック画像に文字画像が存在するか否かを判定する判定工程と、
前記判定工程の判定の結果、前記ブロック画像に文字画像が存在する場合、それを示す情報を画像特徴情報として記憶し、一方、前記ブロック画像に文字画像が存在しない場合、そのブロック画像の画像特徴情報を記憶部に記憶する記憶工程と
を備えることを特徴とする画像処理装置の制御方法。
【請求項10】
検索条件となる比較元画像と、その比較先画像との類似度に基づいて、類似画像検索を行う画像処理装置の制御を実現するプログラムであって、
前記比較元画像を複数のブロックに分割する分割工程のプログラムコードと、
前記分割工程で分割されたブロック画像の画像特徴情報に基づいて、該ブロック画像に文字画像が存在するか否かを判定する判定工程のプログラムコードと、
前記判定工程の判定の結果、前記ブロック画像及びそれに対応する前記比較先画像のブロック画像のどちらかに文字画像が存在する場合、両者の類似度として所定の類似度を取得し、一方、前記ブロック及びそれに対応する前記比較先画像のブロック画像のどちらにも文字画像が存在しない場合、その両者の画像特徴情報に基づく類似度を取得する取得工程のプログラムコードと、
前記取得工程によって取得される前記分割工程で分割した各ブロック画像に対する類似度を累積加算して得られる累積類似度に基づいて、検索結果となる画像を出力する出力工程のプログラムコードと
を備えることを特徴とするプログラム。
【請求項11】
類似画像検索の検索対象となる画像の画像登録処理を行う画像処理装置の制御を実現するプログラムであって、
画像を入力する入力工程と、
前記画像を複数のブロックに分割する分割工程と、
前記分割工程で分割された各ブロック画像の画像特徴情報に基づいて、各ブロック画像に文字画像が存在するか否かを判定する判定工程と、
前記判定工程の判定の結果、前記ブロック画像に文字画像が存在する場合、それを示す情報を画像特徴情報として記憶し、一方、前記ブロック画像に文字画像が存在しない場合、そのブロック画像の画像特徴情報を記憶部に記憶する記憶工程と
を備えることを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate