(57)【特許請求の範囲】
【請求項１】
第１の画像と第２の画像とを照合する画像照合装置であって、
第２の画像から画像中の部分的な領域を１つ以上計算する部分領域計算モジュールと、
第１の画像と第２の画像のそれぞれから画像の特徴点を計算する特徴点抽出モジュールと、
前記各画像の特徴点から特徴点の配置を計算する特徴点配置計算モジュールと、
前記各画像の特徴点の配置から幾何変換不変量である特徴量あるいは幾何変換不変量を要素とする特徴ベクトルを計算する不変量計算モジュールと、
第１の画像から計算された前記特徴量あるいは前記特徴ベクトルと第２の画像から計算された前記特徴量あるいは前記特徴ベクトルとが一致するかどうかを判定する不変量一致判定モジュールと、
第１の画像と第２の画像との間の幾何変換パラメータを推定するパラメータ推定モジュールと、
前記幾何変換パラメータを利用して、前記第２の画像の部分領域に相当する第１の画像上の部分領域を計算する投影部分領域決定モジュールと、
前記部分領域計算モジュールで計算された部分的な領域の画像と、前記投影部分領域決定モジュールで計算された前記第２の画像の部分領域に相当する第１の画像上の部分領域の画像とが一致するかを判定する部分領域照合モジュール
とを含むことを特徴とする画像照合装置。
【請求項２】
前記第２の画像の部分領域に関する特徴量を計算する部分領域特徴量計算モジュールと、
前記投影部分領域決定モジュールで求められた、前記第２の画像の部分領域に相当する第１の画像上の部分領域に関する特徴量を計算する投影画像部分領域特徴量計算モジュールとを有し、
前記部分領域照合モジュールは、前記画像の一致を判定する際、前記投影画像部分領域特徴量計算モジュールで計算された特徴量と、前記部分領域特徴量計算モジュールで計算された特徴量とに基づいて前記判定を行う請求項１に記載の画像照合装置。
【請求項３】
前記パラメータ推定モジュールで推定される前記幾何変換パラメータは、画像上の位置によらずに一定の値であり、
前記投影部分領域決定モジュールは、前記推定された画像上の位置によらずに一定の値をとる幾何変換パラメータを利用する請求項１に記載の画像照合装置。
【請求項４】
前記投影部分領域決定モジュールは、前記幾何変換パラメータに加えて、前記幾何変換に関して予め与えられた範囲の中で変動させた結果を用いて、１つ以上の部分領域候補を計算するものであり、前記予め与えられた範囲の中で変動させた結果の少なくとも１つを用いて計算された前記部分領域候補が一致したことをもって、部分領域が一致したと判定する請求項１に記載の画像照合装置。
【請求項５】
前記部分領域特徴量計算モジュールは、前記部分領域において第２の幾何変換不変量を特徴量として用い、
前記投影画像部分領域特徴量計算モジュールは、前記第２の画像の部分領域に相当する第１の画像上の部分領域において、前記幾何変換不変量を特徴量として用いる請求項２に記載の画像照合装置。
【請求項６】
前記特徴点抽出モジュールは、画像中の図領域に関する連結領域の重心を特徴量として抽出する請求項１に記載の画像照合装置。
【請求項７】
前記部分領域照合モジュールは、前記第１の画像の部分領域特徴量と前記第２の画像の部分領域特徴量とが一致した数を計算するものである請求項１に記載の画像照合装置。
【請求項８】
前記パラメータ推定モジュールで推定される前記幾何変換パラメータは１つ以上であり、
前記投影部分領域決定モジュールは、前記推定された１つ以上の幾何変換パラメータの１つ以上を利用する請求項１に記載の画像照合装置。
【請求項９】
前記パラメータ推定モジュールで推定される前記幾何変換パラメータは、前記各画像の特徴点の配置内の特徴点に関連付けられ、
前記投影部分領域決定モジュールは、前記特徴点に関連付けられた幾何変換パラメータを利用する請求項１に記載の画像照合装置。
【請求項１０】
第１の画像と第２の画像とを照合する画像照合方法であって、
第２の画像から画像中の部分的な領域を１つ以上計算する部分領域計算処理と、
第１の画像と第２の画像のそれぞれから画像の特徴点を計算する特徴点抽出処理と、
前記各画像の特徴点から特徴点の配置を計算する特徴点配置計算処理と、
前記各画像の特徴点の配置から幾何変換不変量である特徴量あるいは幾何変換不変量を要素とする特徴ベクトルを計算する不変量計算処理と、
第１の画像から計算された前記特徴量あるいは前記特徴ベクトルと第２の画像から計算された前記特徴量あるいは前記特徴ベクトルとが一致するかどうかを判定する不変量一致判定処理と、
第１の画像と第２の画像との間の幾何変換パラメータを推定するパラメータ推定処理と、
前記幾何変換パラメータを利用して、前記第２の画像の部分領域に相当する第１の画像上の部分領域を計算する投影部分領域決定処理と、
前記部分領域計算処理で計算された部分的な領域の画像と、前記投影部分領域決定処理で計算された前記第２の画像の部分領域に相当する第１の画像上の部分領域の画像とが一致するかを判定する部分領域照合処理とを実行することを特徴とする画像照合方法。
【請求項１１】
さらに、
前記第２の画像の部分領域に関する特徴量を計算する部分領域特徴量計算処理と、
前記投影部分領域決定処理で求められた、前記第２の画像の部分領域に相当する第１の画像上の部分領域に関する特徴量を計算する投影画像部分領域特徴量計算処理とを実行し、
前記画像の一致を判定する際、前記投影画像部分領域特徴量計算処理で計算された特徴量と、前記部分領域特徴量計算処理で計算された特徴量とに基づいて前記判定を行う請求項１０に記載の画像照合方法。
【請求項１２】
前記推定される前記幾何変換パラメータが、画像上の位置によらずに一定の値であり、
前記推定された画像上の位置によらずに一定の値をとる幾何変換パラメータを利用する請求項１０に記載の画像照合方法。
【請求項１３】
前記幾何変換パラメータに加えて、前記幾何変換に関して予め与えられたパラメータ値の１つ以上を用いて、１つ以上の部分領域候補を計算し、前記１つ以上の予め与えられたパラメータ値の少なくとも１つを用いて計算された前記部分領域候補が一致したことをもって、部分領域が一致したと判定する請求項１０に記載の画像照合方法。
【請求項１４】
前記部分領域において第２の幾何変換不変量を特徴量として用い、
前記第２の画像の部分領域に相当する第１の画像上の部分領域において、前記幾何変換不変量を特徴量として用いる請求項１０に記載の画像照合方法。
【請求項１５】
画像中の図領域に関する連結領域の重心を特徴量として抽出する請求項１０に記載の画像照合方法。
【請求項１６】
前記第１の画像の部分領域特徴量と前記第２の画像の部分領域特徴量とが一致した数を計算する請求項１０に記載の画像照合方法。
【請求項１７】
前記推定される幾何変換パラメータとして、１つ以上の幾何変換パラメータを利用する請求項１０に記載の画像照合方法。
【請求項１８】
前記推定される前記幾何変換パラメータを前記各画像の特徴点の配置内の特徴点に関連付け、前記特徴点に関連付けられた幾何変換パラメータを利用する請求項１０に記載の画像照合方法。
【請求項１９】
第１の画像と第２の画像とを照合する制御を行う画像照合プログラムであって、
コンピュータに、
第２の画像から画像中の部分的な領域を１つ以上計算する部分領域計算機能と、
第１の画像と第２の画像のそれぞれから画像の特徴点を計算する特徴点抽出機能と、
前記各画像の特徴点から特徴点の配置を計算する特徴点配置計算機能と、
前記各画像の特徴点の配置から幾何変換不変量である特徴量あるいは幾何変換不変量を要素とする特徴ベクトルを計算する不変量計算機能と、
第１の画像から計算された前記特徴量あるいは前記特徴ベクトルと第２の画像から計算された前記特徴量あるいは前記特徴ベクトルとが一致するかどうかを判定する不変量一致判定機能と、
第１の画像と第２の画像との間の幾何変換パラメータを推定するパラメータ推定機能と、
前記幾何変換パラメータを利用して、前記第２の画像の部分領域に相当する第１の画像上の部分領域を計算する投影部分領域決定機能と、
前記部分領域計算機能で計算された部分的な領域の画像と、前記投影部分領域決定機能で計算された前記第２の画像の部分領域に相当する第１の画像上の部分領域の画像とが一致するかを判定する部分領域照合機能とを実行させることを特徴とする画像照合プログラム。
【請求項２０】
さらに、前記コンピュータに、
前記第２の画像の部分領域に関する特徴量を計算する部分領域特徴量計算機能と、
前記投影部分領域決定機能で求められた、前記第２の画像の部分領域に相当する第１の画像上の部分領域に関する特徴量を計算する投影画像部分領域特徴量計算機能とを実行させ、
前記画像の一致を判定する際、前記投影画像部分領域特徴量計算機能で計算された特徴量と、前記部分領域特徴量計算機能で計算された特徴量とに基づいて前記判定を行う部分領域照合機能を実行させる請求項１９に記載の画像照合プログラム。
【請求項２１】
前記推定される前記幾何変換パラメータが、画像上の位置によらずに一定の値であり、
前記推定された画像上の位置によらずに一定の値をとる幾何変換パラメータを利用する請求項１９に記載の画像照合プログラム。
【請求項２２】
前記コンピュータに、
前記幾何変換パラメータに加えて、前記幾何変換に関して予め与えられたパラメータ値の１つ以上を用いて、１つ以上の部分領域候補を計算し、前記１つ以上の予め与えられたパラメータ値の少なくとも１つを用いて計算された前記部分領域候補が一致したことをもって、部分領域が一致したと判定する機能を実行させる請求項１９に記載の画像照合プログラム。
【請求項２３】
前記部分領域において第２の幾何変換不変量を特徴量として用い、
前記第２の画像の部分領域に相当する第１の画像上の部分領域において、前記幾何変換不変量を特徴量として用いる請求項１９に記載の画像照合プログラム。
【請求項２４】
前記コンピュータに、
画像中の図領域に関する連結領域の重心を特徴量として抽出する機能を実行させる請求項１９に記載の画像照合プログラム。
【請求項２５】
前記コンピュータに、
前記第１の画像の部分領域特徴量と前記第２の画像の部分領域特徴量とが一致した数を計算する機能を実行させる請求項１９に記載の画像照合プログラム。
【請求項２６】
前記推定される幾何変換パラメータとして、１つ以上の幾何変換パラメータを利用する請求項１９に記載の画像照合プログラム。
【請求項２７】
前記推定される前記幾何変換パラメータを前記各画像の特徴点の配置内の特徴点に関連付け、前記特徴点に関連付けられた幾何変換パラメータを利用する請求項１９に記載の画像照合プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像照合装置、画像照合方法および画像照合用プログラムに関し、特にあらかじめ登録された画像の中から照合（検索）用に入力された画像に対応する画像を照合（検索）するための画像照合装置、画像照合方法および画像照合用プログラムに関する。
【背景技術】
【０００２】
汎用の画像照合方法、装置の一例が、特許文献１、特許文献２に記載されている。特許文献１、特許文献２は、共に画像中の複数の特徴点を特徴付ける値、具体的には幾何変換に関する不変量を計算して、その値を利用して画像の照合（検索）を行っている。【０００３】
例えば、特許文献１に記載の文書・画像登録装置および検索装置によれば、前記検索装置は、登録装置と、前記登録装置により登録された文書画像を格納し、撮影画像を読み取る読取部と、読み取った撮影画像から画像の配置を表す複数の特徴点を抽出する撮像画像特徴点抽出部と、前記抽出した各特徴点について対象とする特徴点ｐに最も距離の近いｎ個の特徴点を選択する撮像画像特徴点選択部と、投票処理部と、各特徴点について投票された投票結果に基づいて撮影画像に対応する文書画像ＩＤを特定する文書ＩＤ特定部とから構成されている。【０００４】
前記登録装置は、文書画像を入力する入力部と、前記入力された文書画像から画像の配置を示す複数の特徴点を抽出する入力画像特徴点抽出部と、前記抽出した各特徴点について対象とする特徴点ｐに最も距離の近いｎ個の特徴点を選択する入力画像特徴点選択部と、前記選択されたｎ個の特徴点からｍ個（ただしｍ＜ｎ）をさらに選択する全ての組み合わせについて、（ａ）対象とするｍ個の特徴点からｄ個（ｄはあらかじめ定めたｍ以下の値）を選択する全ての組み合わせについてｄ個の点に係る特徴量を求める処理、（ｂ）前記求められた特徴量からあらかじめ定められた計算によりハッシュのインデックスを求める処理、（ｃ）前記求められたハッシュのインデックスを用いて（ａ）で求めた特徴量と特徴点ｐにかかるＩＤである点ＩＤと特徴点ｐが抽出された文書画像の文書ＩＤとを対応付けてハッシュに登録する処理を行う入力画像特徴点登録部とを備えている。【０００５】
前記投票処理部は、前記選択されたｎ個の特徴点からｍ個（ただしｍ＜ｎ）をさらに選択する全ての組み合わせについて、（ｄ）ｍ個の特徴点からｄ個（ｄは予め定めたｍ以下の値）を選択する全ての組み合わせについてｄ個の点に係る特徴量を求める処理と、（ｅ）前記求めた特徴量から予め定められた計算によりハッシュのインデックスを求める処理と、（ｆ）前記求められたハッシュのインデックスを用いて予め入力された文書画像に係るハッシュに登録された各特徴点を得る処理と、（ｄ）で求めた特徴量と比較して特徴量が一致する文書ＩＤに投票する処理を行うものである。【０００６】
このような構成を有する汎用の画像照合装置は次のように動作する。前記登録装置の入力画像特徴点抽出部が入力された画像から特徴点を抽出し、前記入力画像特徴点選択部は抽出された各特徴点についてｎ個の特徴点を選択し、前記入力画像特徴点登録部は上述の（ａ）〜（ｃ）の処理を行う。【０００７】
次に、前記撮影画像特徴点抽出部が撮影画像から特徴点を抽出し、前記撮影画像特徴点選択部が各特徴点についてｎ個の特徴点を選択し、前記投票処理部が（ｄ）〜（ｆ）の処理を行った後に（ｄ）で求めた特徴量と比較して特徴量が一致する文書ＩＤに投票する処理を行い、各特徴点について投票された投票結果に基づいて撮影画像に対応する文書画像の文書ＩＤを特定する。【０００８】
また、画像照合装置の別の技術として、特許文献３がある。特許文献３によれば、画像照合装置は、認識対象が含まれる入力画像と、あらかじめ登録済みの対象を含むモデル画像群を比較照合することにより、入力画像中に存在する認識対象を同定する画像照合装置であって、入力画像を入力する画像入力部と、モデル画像を登録し格納するモデル画像格納部と、前記入力画像および前記モデル画像から特徴的な局所領域を切り出す局所領域切り出し部と、選択した局所領域の画像情報を特徴空間上の点集合に投影し、一方の画像の局所領域ごとに、前記特徴空間内において最も近傍の位置に投影されている他方の画像の局所領域を探索して局所領域同士を対応付ける局所領域対応付け部と、前記対応付けられた一方の画像の局所領域と他方の画像の局所領域の配置関係に基づいて入力画像とモデル画像間の幾何変換パラメータを推定する幾何変換パラメータ計算部を備えた幾何変換パラメータ推定部と、前記推定した幾何変換パラメータを用いて前記一方の画像の局所領域の画像情報か画像全体の画像情報か画像内の局所領域の位置情報のいずれかに対して幾何変換を施す画像幾何変換部と、前記幾何変換した局所領域を用いて局所領域相互間の整合性を評価して照合するが画像照合部を備えている。【０００９】
特許文献３に開示されている画像照合装置は次のように動作する。画像中から顔領域の画像を切り出す。各画素値に基づいてエッジ強度を基に対象が含まれる窓（コーナー）を検出するなどにより特徴点を見つけ出し、その周辺の局所領域（窓）画像を切り出し、ＫＬ展開、ウェーブレット変換、フーリエ変換、ＤＣＴ変換等により次元圧縮変換を行い、モデル窓データと入力窓データとを特徴空間内で比較照合し、特徴空間内で最も近い窓データ同士を対応付ける。前記対応窓群の中から複数の組み合わせを選び出し、画像内での位置情報を基に両画像間の幾何的差異をあらわす幾何変換パラメータを推定する。前記求めた幾何変換パラメータにより入力画像の補正処理を行い、対応窓の相対位置投票処理を経て、画像照合の類似度を計算する。【００１０】
これらの例は、いずれも、画像中から得られる局所的な情報を利用して、画像の照合を行う点で共通している。
【特許文献１】ＷＯ／２００６／０９２９５７公報
【特許文献２】ＷＯ／２００８／０６６１５２公報
【特許文献３】特開２００１−９２９６３公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
特許文献１及び特許文献２に開示される技術の問題点は、特徴点の配置が類似しているが、その特徴点が抽出された元の局所領域画像としては類似していない場合に高精度な認識ができない点である。それは、特徴点以外の情報を特徴量として用いていないためである。【００１２】
特許文献３に開示される技術の問題点は、射影変換やアフィン変換の場合に高精度な認識ができないことである。それは、モデル窓データと入力窓データとから計算されるＫＬ変換などの次元圧縮画像変換は、各画像に固有の座標系により独立に計算されるため、同一の対象に関する２枚の局所領域画像間で座標系の基底が変動するような変形が起こる場合には、前記次元圧縮変換処理を行う過程で計算される本来対応すべき次元圧縮変換の結果が異なることとなり、結果として最も近い窓同士を対応付けるプロセスがうまくいかないと考えられるためである。【００１３】
本発明の目的は、同一の対象に関する２枚の画像の間にアフィン変換などの幾何変換が起こっていても精度良く照合できる画像照合装置を提供することにある。
【課題を解決するための手段】
【００１４】
前記目的を達成するため、本発明に係る画像照合装置は、第１の画像と第２の画像とを照合する画像照合装置であって、
第２の画像から画像中の部分的な領域を１つ以上計算する部分領域計算モジュールと、
前記部分領域に関する特徴量を計算する部分領域特徴量計算モジュールと、
第１の画像と第２の画像のそれぞれから画像の特徴点を計算する特徴点抽出モジュールと、
前記各画像の特徴点から特徴点の配置を計算する特徴点配置計算モジュールと、
前記各画像の特徴点の配置から幾何変換不変量である特徴量あるいは幾何変換不変量を要素とする特徴ベクトルを計算する不変量計算モジュールと、
第１の画像から計算された前記特徴量あるいは前記特徴ベクトルと第２の画像から計算された前記特徴量あるいは前記特徴ベクトルとが一致するかどうかを判定する不変量一致判定モジュールと、
第１の画像と第２の画像との間の幾何変換パラメータを推定するパラメータ推定モジュールと、
前記幾何変換パラメータを利用して、前記第２の画像の部分領域に相当する第１の画像上の部分領域を計算する投影部分領域決定モジュールと、
前記投影部分領域決定モジュールで求められた、前記第２の画像の部分領域に相当する第１の画像上の部分領域に関する特徴量を計算する投影画像部分領域特徴量計算モジュールと、
前記投影画像部分領域特徴量計算モジュールで計算された特徴量と、前記部分領域特徴量計算モジュールで計算された特徴量とが一致するかを判定する部分領域照合モジュールとを含むことを特徴とする。【００１５】
また、本発明はハードウェアとしての画像照合装置として構築したが、これに限られるものではなく画像照合方法及び画像照合プログラムとして構築してもよいものである。
【発明の効果】
【００１６】
本発明によれば、同一の対象に関する２枚の画像の間にアフィン変換などの幾何変換で記述できる変動が起こっていても精度良く照合できることにある。その理由は、幾何変換不変量により特徴点の配置を特徴付ける特徴量を用いて特徴量を計算し、一致した特徴点配置のみを用いて幾何変換パラメータを高精度に求め、そのパラメータを利用して一方の画像を他方に投影することにより照合しているためである。特徴点配置が一致する場合に、特徴点配置が計算された元の特徴点配置間の変動は、不変量の種類に応じて定まるある種の幾何変換変動の範囲内であると考えられるため、それらのみから幾何変換変動に変換パラメータを計算することにより、特徴点配置もしくは少なくともその近傍付近の変動を精度良く記述できると考えられるからである。
【図面の簡単な説明】
【００１７】
【図１】本発明の実施形態１の構成を示すブロック図である。
【図２】実施形態１の動作のうち登録処理の動作を示すフローチャートである。
【図３】実施形態１の動作におけるステップＳＲ１の動作を示すフローチャートである。
【図４】実施形態１の動作におけるステップＳＲ１０１の動作のフローチャートである。
【図５】実施形態１の動作におけるステップＳＲ１０２の動作のフローチャートである。
【図６】実施形態１の動作におけるステップＳＲ１０３の動作のフローチャートである。
【図７】実施形態１の動作におけるステップＳＲ２の動作のフローチャートである。
【図８】実施形態１の動作におけるステップＳＲ２１の動作のフローチャートである。
【図９】実施形態１の動作におけるステップＳＲ２２の動作のフローチャートである。
【図１０】実施形態１の動作における検索処理の動作を示すフローチャートである。
【図１１】実施形態１の動作におけるステップＳＱ１の動作を示すフローチャートである。
【図１２】実施形態１の動作におけるステップＳＱ１２の動作を示すフローチャートである。
【図１３】実施形態１の動作におけるステップＳＱ２の動作を示すフローチャートである。
【図１４】実施形態１の形態の動作におけるステップＳＱ２２の動作を示すフローチャートである。
【図１５】実施形態１の動作におけるステップＳＱ２２０７の動作を示すフローチャートである。
【図１６】実施形態１の動作におけるステップＳＱ３の動作を示すフローチャートである。
【図１７】実施形態１の動作におけるステップＳＱ４の動作を示すフローチャートである。
【図１８】実施形態１の動作におけるステップＳＱ６の動作を示すフローチャートである。
【図１９】実施形態１の効果を説明するために、背景技術において、特徴点の出現の仕方が異なる例を示した図である。
【図２０】実施形態１の効果を説明するために、実施形態１により、登録画像中の部分領域が検索画像に投影されていることを示した図である。
【図２１】実施形態２の動作における検索処理の動作を示すフローチャートである。
【図２２】実施形態２の動作におけるステップＳＱ７の動作を示すフローチャートである。
【図２３】実施形態３の構成を示すブロック図である。
【図２４】実施形態３の動作における検索処理の動作を示すフローチャートである。
【図２５】実施形態３の動作におけるステップＳＱ８の動作を示すフローチャートである。
【図２６】実施形態３の効果を説明するために、同一の検索画像に対して、２つの登録画像の部分領域を検索画像上に投影した例を示した図である。
【図２７】本発明の実施形態１に係る画像照合装置をパーソナルコンピュータにて構築した例を示すブロック図である。
【図２８】実施形態２の第１の変形例の動作におけるステップＳＱＡ３の動作を示すフローチャートである。
【図２９】実施形態２の第１の変形例の動作におけるステップＳＱＡ４の動作を示すフローチャートである。
【図３０】実施形態２の第２の変形例の構成を示すブロック図である。
【図３１】実施形態２の第２の変形例におけるステップＳＱＢ２の動作を示すフローチャートである。
【図３２】実施形態２の第２の変形例におけるステップＳＱＢ２２の動作を示すフローチャートである。
【図３３】実施形態２の第２の変形例におけるステップＳＱＢ３の動作を示すフローチャートである。
【図３４】実施形態２の第２の変形例におけるステップＳＱＢ３１５の動作を示すフローチャートである。
【図３５】実施形態２の第２の変形例におけるステップＳＱＢ４の動作を示すフローチャートである。
【図３６】実施形態２の第２の変形例におけるステップＳＱＢ４１５の動作を示すフローチャートである。
【発明を実施するための最良の形態】
【００１８】
以下、本発明の実施形態を図に基づいて詳細に説明する。【００１９】
（実施形態１）
図１に示す本発明の実施形態１に係る画像照合装置は、投影用パラメータ推定モジュール２５０と、部分領域投影モジュール２６２と、投影画像照合モジュール２６４とを有している。【００２０】
以下では、幾何変換の一例として、２次元アフィン変換（以下、断りの無い限り、アフィン変換とは２次元アフィン変換のことを指すものとする）を想定する。それは、第１の画像と第２の画像の変形が、アフィン変換によって、正確にあるいは近似的に記述できるとの仮定に基づいているためである。【００２１】
また、「幾何変換不変量」の例としては、アフィン不変量、射影変換の不変量、相似変換の不変量などがある。また、「幾何変換パラメータ」の例としては、アフィンパラメータなどがあげられる。３次元空間中のある平面における座標と別の平面における座標とを対応付けるパラメータも幾何変換パラメータの一種である。【００２２】
以下では、「幾何変換不変量」の例としてアフィン不変量を、「幾何変換パラメータ」の例としてアフィンパラメータを用いるものとして、説明する。【００２３】
（画像照合装置のハードウェア構成）
先ず、本実施形態の画像照合装置の具体的構成について、前提となるハードウェア構成から説明し、続いて各モジュールの詳細構成について説明することとする。図２７は、本発明の実施形態１による画像照合装置をパーソナルコンピュータで構成した場合の一例を示すブロック図である。【００２４】
図２７を参照すると、実施形態１における画像照合装置１は、制御手段としての制御モジュールの一部又は一例であるＣＰＵ２と、記憶媒体３と、記憶媒体４と、入力モジュール５と、出力モジュール６とから構成されている。【００２５】
ＣＰＵ２は、各種ソフトウェアプログラム（コンピュータ・プログラム）を実行することにより、画像照合装置１の全体的な動作を司り、図１に示す各種のモジュールの機能を実行させる。これは、以下で述べる各実施形態（図３０、図２３）でも同様である。【００２６】
記憶媒体３（コンピュータに読み取り可能な媒体）は、各種ソフトウェアプログラムとその実行に必要なデータを格納するための記憶媒体である。記憶媒体４は、記憶媒体３を補完するための記憶媒体である。好適な例としては、記憶媒体３は高速に動作するメモリ、例えばＲＡＭである。記憶媒体４は、ある程度大きい容量を持つ記憶媒体、例えば、ハードディスクである。ただし、記憶媒体３、記憶媒体４とも、これらの例に限られない。
また、記憶媒体３が持つ機能と記憶媒体４が持つ機能を併せ持つ新たな記憶媒体ないしは記憶手段としての記憶モジュール（図示しない）を用いても良い。以下の実施の形態では、記憶媒体３、記憶媒体４を特に区別しない、すなわち、双方の機能を併せ持つ記憶媒体を用いるものとして説明する。【００２７】
入力モジュール５は、ビデオカメラやデジタルカメラ、スキャナ、ＣＣＤ等の画像情報取得手段としての画像情報取得モジュールから入力される画像情報入力インターフェイス機能や、キーボードやマウス、各種ボタン、タッチパネル等の操作入力手段としての操作入力モジュールから入力される操作入力インターフェイス機能などを備えてよい。又、入力モジュール５は、前述の画像情報取得モジュール、操作入力モジュールを含んでもよいし、含まなくても（インターフェイス機能のみ）よい。更に、入力モジュール５は、検索画像（第１の画像）を入力するための第１の画像入力モジュール、登録画像（第２の画像）を入力するための第２の画像入力モジュールなどを備えてよい。【００２８】
入力モジュール５に入力されるものは、２次元の静止画像であってもよいし、３次元の空間データであってもよいし、動画であってもよいし、速度場や磁場などの様々な空間的時間的広がりを持つ物理量や、特定関数による畳み込みなど各種演算により得られた画像特徴量やその時間変化を高次元で表したものであってもよい。【００２９】
又、記憶媒体３、４は、入力モジュール５から入力された画像（検索画像、登録画像）を記憶する画像記憶領域（検索画像情報格納部や登録画像情報格納部を含む画像情報格納部）や一時記憶領域（ＶＲＡＭなど）を備えてよい。更に、記憶媒体３、４は、画像照合結果情報を記憶する画像照合結果記憶領域を備えてよい。更に、記憶媒体３、４は、制御モジュールや通信モジュールなどのワーク領域を備えてよい。【００３０】
出力モジュール６は、コンピュータディスプレイやテレビモニタ（表示手段としての表示モジュール）、プロジェクタ、プリンタ（画像形成手段としての画像形成モジュール）等の画像情報を出力する画像情報出力手段としての画像情報出力モジュールへ各種の情報を出力する情報出力インターフェイス機能を備えてよい。又、出力モジュール６は、前述の画像情報出力モジュールを含んでもよいし、含まなくても（インターフェイス機能のみ）よい。更に、画像情報出力モジュールは、前記画像記憶領域に保存された画像をユーザの指示に従って表示させる表示制御モジュールを含んでよい。【００３１】
又、画像照合装置１は、ユーザが利用可能な情報処理装置（コンピュータ）に備えてよく、プログラム制御により動作するものであり、ネットワーク関連の通信機能を有してよい。更に、画像照合装置１は、通信インターフェイス機能を有する場合、前述の入力モジュール５、出力モジュール６のない構成であってもよい。【００３２】
本実施形態において、ＣＰＵ２は、通信インターフェイス、入力インターフェイスなどからの画像照合開始要求に基づいて、記憶媒体３、４を適宜参照しながら、図２に示される各種モジュール等のソフトウェアプログラムを実行し、各処理（登録処理、照合処理など）を行う。画像照合開始要求は、入力された操作入力データないしは操作入力信号であってもよいし、各種の装置など制御する制御データないしは制御信号であってもよい。
この各種モジュールのプログラムは、一体構成、別体構成は問わない。このため、登録処理用プログラムと照合処理（検索処理）用プログラムとにより構成してもよいし、画像照合制御プログラムとして一体的に構成してもよい。このように、記憶媒体には、本実施形態の各手段（各モジュ−ル）としてコンピュータを機能させるためのプログラム（各モジュールの処理をコンピュータに実行させるためのプログラム）が記憶される。【００３３】
図１に示す本発明の実施形態に係る画像照合装置はハードウェアとして構築した構成を示すものであり、本発明の実施形態に係る画像照合装置は、検索質問を行う第１の画像と（検索される対象である）他の第２の画像とを照合する画像照合装置であって、第２の画像から画像中の部分的な領域を１つ以上計算する部分領域計算モジュール２７２と、前記部分領域に関する特徴量を計算する部分領域特徴量計算モジュール２７４と、第１の画像と第２の画像からそれぞれ特徴点を計算し、前記特徴点の配置を求め、幾何変換不変量を利用してこれらの特徴点配置を特徴付ける特徴量あるいは特徴ベクトルを計算し、第１の画像から計算された特徴ベクトルと第２の画像から計算された特徴量あるいは特徴ベクトルとが一致しているかを判定し、一致と判定された特徴量対あるいは特徴ベクトル対に対して少なくとも当該特徴点配置に属する特徴点付近の幾何変換パラメータを求めるパラメータ推定モジュール２３６と、前記幾何変換パラメータを利用して、前記第２の画像の部分領域に相当する第１の画像上の部分領域を計算する投影部分領域決定モジュール２７８と、前記投影部分領域決定モジュール２７８により求められた、前記第２の画像の部分領域に相当する第１の画像上の部分領域、に関する特徴量を計算する投影画像部分領域特徴量計算モジュール２８０と、前記投影画像部分領域特徴量計算モジュール２８０で計算された特徴量と、前記部分領域特徴量計算モジュール２７４で計算された特徴量とが一致するかを判定する部分領域照合モジュール２８２とを含んでいる。【００３４】
このような構成によれば、第２の画像から１つ以上の部分領域を求め、第２の画像から求められた１つ以上の部分領域から部分領域に関連する特徴量を計算および格納し、第１の画像と第２の画像の双方から特徴点を計算し、双方の画像について特徴点の配置を１つ以上求め、特徴点の配置から幾何変換不変量を利用して特徴量あるいは特徴ベクトルを計算し、第１の画像から計算された特徴量あるいは特徴ベクトルと第２の画像から計算された特徴量あるいは特徴ベクトルとが一致しているかを判定し、一致していると判定された特徴量対あるいは特徴ベクトル対を計算する基となった特徴点配置対から第１の画像と第２の画像の間の幾何変換パラメータを求め、第２の画像から計算されている１つ以上の部分領域が第１の画像でどの部分領域に相当するかを幾何変換パラメータを用いて計算し、計算された第１の画像上の部分領域における特徴量を計算し、第２の画像から計算された部分領域から計算された特徴量と第２の画像から計算された部分領域に対応する第１上の画像の部分領域から計算された特徴量が一致しているかを判定し、この判定結果を利用して一致度を求め、その一致度を利用して最終的な画像照合結果を求めるように動作する。【００３５】
更に、本発明の実施形態を具体例を用いて詳細に説明する。前記投影用パラメータ推定モジュール２５０は、検索画像と登録画像との間の幾何変換に関するパラメータを推定する。なお、実施形態では、幾何変換としてアフィン変換を用いているため、前記投影用パラメータ推定モジュール２５０を図面上で投影用アフィンパラメータ推定モジュール２５０として表記する。前記幾何変換に関するパラメータをアフィンパラメータとして表記する。前記アフィンパラメータとは、例えば、検索画像中の点（ｘｑ，ｙｑ）と、登録画像中の点（ｘｒ，ｙｒ）との間に、次の式で表される関係があるとした場合の、ａ，ｂ，ｃ，ｄ，ｅ，ｆの値である。
【数１】
0005569394.tif 000002
【００３６】
前記投影用パラメータ推定モジュール２５０を具体的に説明すると、前記投影用パラメータ推定モジュール２５０は、登録画像特徴点抽出モジュール２１２と、登録画像特徴点配置計算モジュール２１４と、登録画像不変量計算モジュール２１６と、登録画像特徴点配置格納モジュール２１８ａと、登録画像不変量格納モジュール２１８ｂと、検索画像特徴点抽出モジュール２２２と、検索が凹特徴点配置計算モジュール２２６と、不変量一致判定モジュール２３２と、個別パラメータ推定モジュール２３４と、個別パラメータ検証モジュール２４６と、投影用パラメータ決定モジュール２６０とを有している。【００３７】
前記登録画像特徴点抽出モジュール２１２は、登録画像から１つ以上の特徴点を抽出する。前記登録画像特徴点抽出モジュール２１２が登録画像の特徴点を抽出する方法としては、例えば、画素値の分布をクラスタリングした結果、同一のクラスタに属す値を持つ画素の連結成分の重心を特徴点として抽出してもよい。また、特許文献２に開示されているように、複数の連結領域の和領域の重心を特徴点として抽出する方法を用いてもよい。また、コーナー検出、画素値分布における特徴的な点などを特徴点として抽出する既知の特徴点抽出法を用いてもよい。【００３８】
以下の説明では、前記登録画像特徴点抽出モジュール２１２が登録画像の特徴点を抽出する方法として、画像を二値化した後の背景でない領域の連結領域の重心のみを特徴点として抽出する方法を用いた場合について説明する。以下の説明で用いる特徴点の抽出方法では、特に、部分領域として画像を二値化した後の背景でない連結領域を用いる場合に、好適である。それは、どちらも連結領域を利用した情報であるため、部分領域計算モジュールにより既に求められている連結領域の情報を再利用することができるからである。同様のことは、二値化後の連結領域の場合だけでなく、画素値の分布をクラスタリングした結果、同一のクラスタに属す値を持つ画素の連結領域についても成立する。【００３９】
前記登録画像特徴点配置計算モジュール２１４は、登録画像から１つ以上の特徴点配置を計算する。以下の説明では、前記登録画像特徴点配置モジュール２１４が計算する特徴点配置は、順序つきの特徴点の座標列である。【００４０】
前記登録画像不変量計算モジュール２１６は、登録画像から求められた１つ以上の特徴点配置のそれぞれについて、幾何変換不変量（例えば、アフィン不変量、射影変換の不変量、相似変換の不変量など。以下では、アフィン不変量を例として説明する。）である特徴量、あるいは幾何変換不変量を要素とする特徴ベクトル（登録画像特徴ベクトル）を計算する。【００４１】
前記登録画像特徴点配置格納モジュール２１８ａは、前記登録画像特徴点配置計算モジュール２１４で計算された特徴点配置情報を格納する。以下の説明では、前記登録画像特徴点配置格納モジュール２１８ａは、順序つきの特徴点の座標列を格納するものとする。さらに、前記登録画像特徴点配置格納モジュール２１８ａは、前記特徴点配置を格納する際、前記特徴点配置と、これを一意に指定するインデックスとを対応させて格納する。【００４２】
前記登録画像不変量格納モジュール２１８ｂは、前記登録画像不変量計算モジュール２１６で計算された特徴量または特徴ベクトルを格納する。以下の説明では、前記登録画像不変量格納モジュール２１８ｂは、前記登録画像不変量計算モジュール２１６で計算された特徴ベクトルを格納するものとする。さらに、前記登録画像不変量格納モジュール２１８ｂは、前記特徴ベクトルを格納する際、前記特徴ベクトルと、これを一意に指定するインデックスとを対応させて格納する。【００４３】
前記検索画像特徴点抽出モジュール２２２は、検索画像から１つ以上の特徴点を計算する。通常、前記検索画像特徴点抽出モジュール２２２が画像から特徴点を抽出する方法は前記登録画像特徴点抽出モジュール２１２による特徴点の抽出方法と同一のものを用いるが、画像の前処理等を、画像を撮像する条件の違いに応じて変更した上で画像から特徴点を抽出するように変更してもよい。以下では、前記検索画像特徴点抽出モジュール２２２が、前記登録画像特徴点抽出モジュール２１２による特徴点の抽出方法と同一のものを用いて検索画像から特徴点を抽出する場合を説明する。【００４４】
前記検索画像特徴点配置計算モジュール２２４は、検索画像から１つ以上の特徴点配置を計算する。以下の説明では、前記検索画像特徴点配置モジュール２２４が計算する特徴点配置は、順序つきの特徴点の座標列である。【００４５】
前記検索画像不変量計算モジュール２２６は、検索画像から求められた１つ以上の特徴点配置のそれぞれについて、幾何変換不変量（例えば、アフィン不変量）である特徴量、あるいは幾何変換不変量を要素とする特徴ベクトル（検索画像特徴ベクトル）を計算する。通常、前記検索画像不変量計算モジュール２２６は、前記登録画像特徴点配置計算モジュール２１４が幾何変換不変量を計算する方法と同一の方法を用いるが、特許文献１に開示されているように、１つの特徴点配置から、巡回置き換えなどを考慮することにより、複数の特徴ベクトルを計算する方法を用いてもよい。以下では、前記検索画像不変量計算モジュール２２６は、前記登録画像特徴点配置計算モジュール２１４による幾何変換不変量の計算と同一のものを用いる場合について説明する。【００４６】
前記不変量一致判定モジュール２３２は、登録画像から計算された特徴ベクトルと、検索画像から計算された特徴ベクトルとが一致するかどうかを判定する。前記不変量一致判定モジュール２３２が特徴ベクトルの一致を判定する方法は、既存の方法、例えば、市街地距離、ユークリッド距離、ベクトルの内積、２つのベクトルがなす角度などの既知の方法で類似度を計算し、その計算された類似度を予め定められた一定の範囲内にある場合に一致すると判定する方法を用いる。【００４７】
前記個別パラメータ推定モジュール２３４は、不変量一致判定モジュール２３２によって一致したと判定された特徴ベクトル対について、前記特徴ベクトル対を生成した基の特徴点配置対の間のパラメータを求める。前記個別パラメータ推定モジュール２３４が求めた前記パラメータを個別アフィンパラメータと呼ぶ。なお、以下の説明では、幾何変換としてアフィン変換を用いるため、前記個別パラメータ推定モジュール２３４を図面上で個別アフィンパラメータ推定モジュール２３４として表記する。また、前記個別パラメータを個別アフィンパラメータとして表記する。【００４８】
幾何変換としてアフィン変換を用いた場合、前記個別アフィンパラメータ推定モジュール２３４が個別アフィンパラメータを求める方法の一例を説明する。すなわち、登録画像側の特徴ベクトルを生成する基となった特徴点配置に属す特徴点を（ｘｋ，ｙｋ）（ｋ＝１，…，ｍ、ｍは特徴点配置に属す特徴点の個数である。）、検索画像側の特徴ベクトルを生成する基となった特徴点配置に属す特徴点を（ｘｄｋ，ｙｄｋ）（ｋ＝１，…，ｍ）として、前記[数１]に従うと、
【数２】
0005569394.tif 000003
なる関係があると考えられる。これを変形すると、下記の式が得られる。すなわち、α、Ｘ、βを、
【数３】
0005569394.tif 000004
【数４】
0005569394.tif 000005
【数５】
0005569394.tif 000006
とすると、α＝Ｘβｉとなる。これから、βを最小二乗法により推定すると、その推定値βｉｈ、
【数６】
0005569394.tif 000007
は、
【数７】
0005569394.tif 000008
のように求められる。これにより、前記個別アフィンパラメータ推定モジュール２３４は前記式を使って個別アフィンパラメータを求め、その求めた推定値ａｉｈ、ｂｉｈ、ｃｉｈ、ｄｉｈ、ｅｉｆ、ｆｉｈを、それぞれアフィンパラメータａｉ、ｂｉ、ｃｉ、ｄｉ、ｅｉ、ｆｉの値であるとして求める。【００４９】
前記個別パラメータ検証モジュール２３６は、前記個別パラメータ推定モジュール２３４で計算された個別パラメータが設定条件を満たすか否かを検証する。なお、以下の説明では、幾何変換としてアフィン変換を用いるため、前記個別パラメータ検証モジュール２３６を図面上で個別アフィンパラメータ検証モジュール２３６として表記する。したがって、前記個別アフィンパラメータ検証モジュール２３６は、前記個別アフィンパラメータモジュール２３４で計算された個別アフィンパラメータａｉ、ｂｉ、ｃｉ、ｄｉ、ｅｉ、ｆｉの値、もしくは、これらの値から計算される値が設定条件を満たしているかどうかを検証する処理を行う。前記個別アフィンパラメータ検証モジュール２３６は、例えば個別アフィンパラメータａｉ、ｂｉ、ｃｉ、ｄｉ、ｅｉ、ｆｉの値、もしくは、これらの値から計算される値のなかから少なくとも１つ以上の値について予め範囲を定めておき（これを設定条件という）、すべての値がこれらの範囲内にある場合のみ、設定条件が満足されたものとして検証し、設定条件を満たした場合の検証結果を前記パラメータ空間投票数格納モジュール２４６に出力する。【００５０】
前記パラメータ空間投票数格納モジュール２４６は、前記個別アフィンパラメータ検証モジュール３６にて一致すると判定された特徴点配置対の個数を、おおよそ同様の値ごとに格納する投票数（特徴点配置の個数）格納領域を持ち、おおよそ同様の値をもつアフィンパラメータの組ごとに分類して格納する。具体的にどのように投票数が格納されるかは、後述する、前記パラメータ空間投票数格納モジュール２４６の動作を説明する際に詳述する。また、必ずしも必要ではないが、各投票数格納領域に対応付けてパラメータａ、ｂ、ｃ、ｄ、ｅ、ｆに関する格納領域（パラメータ値格納領域）を設けておくと、計算上都合がよい。本実施形態においては、パラメータ値格納領域をも持つものとする。【００５１】
前記投影用アフィンパラメータ決定モジュール２６０は、前記パラメータ空間投票数格納モジュール２４６に格納された投票数から、代表的なアフィンパラメータａ、ｂ、ｃ、ｄ、ｅ、ｆを求める。前記投影用アフィンパラメータ決定モジュール２６０は、例えば投票数が最大となる投票数格納領域に相当する特徴点配置対から求められたアフィンパラメータａｉ、ｂｉ、ｃｉ、ｄｉ、ｅｉ、ｆｉを利用して、代表的なアフィンパラメータａ、ｂ、ｃ、ｄ、ｅ、ｆを求めることができる。具体的には、後述する前記投影用アフィンパラメータ決定モジュール２６０の動作を説明する際に詳述する。【００５２】
前記部分領域投影モジュール２６２は、部分領域計算モジュール２７２と、部分領域特徴量計算モジュール２７４と、部分領域特徴量格納モジュール２７６と、投影部分領域決定モジュール２７８とを有している。【００５３】
前記部分領域計算モジュール２７２は、登録画像（被検索画像）から１つ以上の部分的な領域を計算する。前記部分領域計算モジュール２７２は、例えば登録画像の画素値の分布をクラスタリングして、同一のクラスタに属す値を持つ画素の連結領域、あるいはその外接矩形を前記部分的な領域として計算する。なお、前記連結領域或いは前記外接矩形には、画像を二値化した後の図領域（背景でない領域）の連結領域、あるいはその外接矩形も含めてよい。また、前記部分領域計算モジュール２７２が前記部分的な領域を計算する方法としては、特許文献２に開示されているように、複数の連結領域の和領域、あるいはその外接矩形を計算する方法を用いてもよい。以下では、前記部分領域計算モジュール２７２が、前記部分的な領域として、画像を二値化した後の背景でない連結領域の外接矩形を計算する場合を説明する。【００５４】
前記部分領域特徴量計算モジュール２７４は、前記部分領域計算モジュール２７２で計算された部分領域のそれぞれに対して、部分領域特徴量（以下、登録画像部分領域特徴量と呼ぶことがある。）を求める。なお、前記部分特徴量としては、前記部分領域の画像そのものを利用してもよいし、前記部分領域中に存在する背景ではない画素（通常、文字列画像においては背景でない領域は黒で表現されることが多いので、以下、これを黒画素と呼ぶ。）の存在比率、部分領域中の画素値の和の値を領域面積で割った値など、部分領域の特徴を記述できる特徴量ならばいずれのものであってもよい。また、前記部分領域中の輝度勾配など、文字認識に有効とされる特徴量を用いるのも好適である。もちろん、特徴量はスカラー値に限らず、ベクトル値であってもよい。以下の説明では、部分領域（外接矩形）内に存在する黒画素の存在比率を用いることとする。【００５５】
前記部分領域特徴量格納モジュール２７６は、前記部分領域特徴量計算モジュール２７４で計算された前記部分領域特徴量を格納する。以下では、前記部分領域特徴量格納モジュール２７６が、前記部分領域特徴量と共に、部分領域（外接矩形）の四隅座標を合わせて格納する場合について説明する。【００５６】
前記投影部分領域決定モジュール２７８は、前記投影用アフィンパラメータ推定モジュール２５０にて推定された登録画像と検索画像との間の変形の度合いを表すアフィンパラメータを用いて、登録画像上の部分領域が、検索画像上のどの部分領域に相当するかを検討する。具体体的には、前記投影部分領域決定モジュール２７８は、一般の登録画像部分領域に対しては、登録画像部分領域に属す任意の画素を前記[数１]を用いて検索画像上に投影することにより、検索画像上の部分領域を求める。また、前記投影部分領域決定モジュール２７８は、登録画像の部分領域として連結領域の外接矩形を採用している場合は、次のように領域を求める。すなわち、登録画像部分領域を表す外接矩形の四隅座標を（ｘｒ１，ｙｒ１）、（ｘｒ２，ｙｒ２）、（ｘｒ３，ｙｒ３）、（ｘｒ４，ｙｒ４）とすると、求める検索画像上の部分領域は四角形となる。前記投影部分領域決定モジュール２７８は、検索画像上の四角形の４つの頂点の座標を（ｘｑ１，ｙｑ１）、（ｘｑ２，ｙｑ２）、（ｘｑ３，ｙｑ３）、（ｘｑ４，ｙｑ４）として、（ｘｑｉ，ｙｑｉ）（ｉ＝１，２，３，４）を、（ｘｒｉ，ｙｒｉ）（ｉ＝１，２，３，４）と、ａ、ｂ、ｃ、ｄ、ｅ、ｆを用いて、次式[数８]に基づいて求める。
【数８】
0005569394.tif 000009
部分領域に属する任意の画素について投影する必要がないので、一般的（部分領域の画素数が５以上の場合）には、効率的に検索画像上の部分画像を求められる利点がある。
なお、一般の登録画像部分領域に対しては、登録画像部分領域に属す任意の画素を前記数８を用いて検索画像上に投影することにより、検索画像上の部分領域を求めることができる。また、前記投影部分領域決定モジュール２７８は、領域を投影する領域を決定するものであって、その領域内に属する画素の値を前記数８で対応する画素の値として求める必要はないことを述べておく。
また、推定精度の悪いパラメータ、一方の画像が他方の画像を包含しているような画像の場合など、検索画像上に投影した領域が、必ずしも検索画像上に存在するとは限らない。その場合は、投影を中止することとする。このため、すべての登録画像部分領域が、検索画像上に投影されるとは限らない。これに対処するため、投影が中止されなかった回数を計数し、一時的に格納することとする。【００５７】
前記部分領域投影モジュール２６２は、投影画像部分領域特徴量計算モジュール２８０と、部分領域照合モジュール２８２とを有している。【００５８】
前記投影画像部分領域特徴量計算モジュール２８０は、検索画像上に投影された部分領域について、特徴量を求める。前記特徴量とは、通常、部分領域特徴量計算モジュール２７４で計算した特徴量と同じ種類の特徴量である。そのためには、次のようにすればよい。すなわち、先ず、前記投影画像部分領域特徴量計算モジュール２８０は、登録画像上の座標（ｘｒ，ｙｒ）と検索画像（ｘｑ，ｙｑ）との対応が、[数１]を変形して得られる、
[数９]、すなわち、
【数９】
0005569394.tif 000010
であることを利用して、検索画像上に投影された部分領域画像を、登録画像上に投影する。この場合の投影は、画像としての投影であり、検索画像上に投影された部分領域に属する検索画像の画素の値を上の式で対応する登録画像上の画素の値として求める必要がある。次に、前記投影画像部分領域特徴量計算モジュール２８０は、登録画像上に投影された画像から、特徴量（以下、検索画像部分領域特徴量と呼ぶことがある。）を計算する。
また、前記投影画像部分領域特徴量計算モジュール２８０は、部分領域として連結領域の外接矩形、特徴量として部分領域（外接矩形）内に存在する黒画素の存在比率を用いる場合には、登録画像上に投影することなく、検索画像上で検索画像部分領域特徴量を求める。これは、この黒画素存在比率がアフィン不変であることによる。従って、そのほかのアフィン不変量を特徴量として用いた場合でも同様である。【００５９】
前記部分領域照合モジュール２８２は、登録画像部分領域特徴量を求めた登録画像部分領域に相当する検索画像部分領域の特徴量と、当該登録画像部分領域特徴量とを照合する。前記部分領域照合モジュール２８２が前記特徴量を照合する方法としては、例えば、特徴量がスカラー値の場合は、特徴量の差や比が予め定められた一定範囲内にある場合に、一致したとしてみなす方法を用いることが可能である。また、特徴量がベクトル値の場合は、市街地距離、ユークリッド距離（、あるいはその二乗）、ベクトルの内積、２つのベクトルのなす角などを計算し、それらが予め定められた一定範囲内にある場合に、一致したとする方法を用いてもよい。【００６０】
前記画像照合結果計算モジュール２９０は、少なくとも、各登録画像毎に部分領域照合モジュール２８２が一致と判定した回数（部分領域数）を利用して、最終的に検索画像に対応する登録画像を同定する。具体的には、後述する、画像照合結果計算モジュール２９０の動作を説明する際に詳述する。【００６１】
次に、本実施形態の全体の動作について詳細に説明する。本実施形態の全体の動作は、登録処理と検索処理とに分けられる。前記登録処理は、入力した登録画像から、登録画像部分領域特徴量、登録画像特徴点配置、登録画像特徴ベクトルをそれぞれ計算する処理である。これらの計算結果は格納される。前記検索処理は、入力した検索画像から、計算済みの登録画像部分領域特徴量、登録画像特徴点配置、登録画像特徴ベクトル等を参照して、前記検索画像に対応する登録画像を同定する処理である。【００６２】
＜登録処理＞
図２は、本実施形態の画像照合装置が実行する登録処理のフローチャートである。図２を参照すると、登録処理では、ステップＳＲ１とステップＳＲ２の処理が行われる。ステップＳＲ１では、登録画像特徴点抽出モジュール２１２が登録画像から特徴点を抽出し、登録画像特徴点配置計算モジュール２１４が特徴点配置を計算し、登録画像不変量モジュール２１６が特徴ベクトルを計算する。ステップＳＲ２では、部分領域投影モジュール２６２が登録画像から登録画像部分領域特徴量を計算する。【００６３】
本実施形態の全体の動作では、１つ以上の登録画像が与えられるものとし、すべての登録画像について、ステップＳＲ１およびＳＲ２からなる登録処理を行うこととする。以下の説明では、登録処理の対象となる登録画像を一意に示す記号ｚを用いることとし、登録画像ｚに対する登録処理を説明する。【００６４】
まず、ステップＳＲ１の処理について、説明する。図３を参照すると、まず、登録画像特徴点抽出モジュール２１２が、登録画像ｚから特徴点を抽出する処理を行う（ステップＳＲ１０１）。図４は、本実施形態における特徴点の抽出処理のフローチャートである。図４を参照すると、登録画像特徴点抽出モジュール２１２は、先ず、登録画像ｚを二値化し（ステップＳＲ１０１１）、画像内の黒画素の連結領域をすべて求め（ステップＳＲ１０１２）、それぞれの連結領域に関する重心を計算して特徴点として抽出する（ステップＳＲ１０１３）。前記特徴点を抽出する際、特許文献２に記載されているように重心以外に、２つ以上の重心から計算される新たな点を特徴点とすることも可能であるが、説明を簡単にするため、以下の説明では考慮しないこととする。【００６５】
次に、登録画像特徴点配置計算モジュール２１４は、前記登録画像特徴点抽出モジュール２１２で計算された特徴点に基づいて、特徴点配置を計算する（図３のステップＳＲ１０２）。登録画像特徴点配置計算モジュール２１４が特徴点配置を計算する方法としては、特許文献１もしくは特許文献２に開示されている方法を利用することができる。しかしながら、説明を簡単にするため、本実施形態では、特徴点配置の計算・格納処理のフローチャートである図５を参照しながら、次のように処理を行うものとすることを説明する。すなわち、前記登録画像特徴点配置計算モジュール２１４は、登録画像ｚから求められた特徴点のうち図４のステップＳＲ１０２による処理がまだ行われていない特徴点ｒｐｉｄを一つの注目特徴点として設定し（図５のステップＳＲ１０２１）、最も近傍にあるｍ個の点を選択し（図５のステップＳＲ１０２２）、ｍ個の点の中から最も特徴点ｒｐｉｄに近い特徴点ｒｐｉｄｎを求めるとともに、ｍ個の点をｒｐｉｄを中心として特徴点ｒｐｉｄｎを先頭として時計回りに並べるように整列し（図５のステップＳＲ１０２３）、整列された順番の通りに特徴点の座標列を生成する（図５のステップＳＲ１０２４）。そして、前記登録画像特徴点配置計算モジュール２１４は、生成した特徴点の座標列を登録画像特徴点配置格納モジュール２１８ａに格納する（図５のステップＳＲ１０２５）。前記特徴点の座標列を登録画像特徴点配置格納モジュール２１８ａに格納する際、前記特徴点の座標列と、これを一意に識別できる識別子情報とを対応させて格納しておくと、後の処理のために都合がよい。最後に、前記登録画像特徴点配置計算モジュール２１４は、すべての特徴点を注目特徴点として処理したかが判定する（図５のステップＳＲ１０２６）。前記登録画像特徴点配置計算モジュール２１４は、判定結果がＹＥＳならば、図４のステップＳＲ１０２の処理を終了させ、判定結果がＮＯならば図５のステップＳＲ１０２１の処理を行う。これにより、登録画像ｚのすべての特徴点について特徴点の座標列が前記登録画像特徴点配置計算モジュール２１４で求められるまで反復される。【００６６】
次に、登録画像不変量計算モジュール２１６は、前記前記登録画像特徴点配置計算モジュール２１４で計算された特徴点配置に基づいて特徴ベクトルを計算する。その特徴ベクトルの情報は登録画像不変量計算モジュール２１６によって登録画像特徴点配置格納モジュール２１８ａに格納される（図３のステップＳＲ１０３）。図６は、本実施形態におけるステップＳＲ１０３の処理を示すフローチャートである。【００６７】
図６を参照すると、登録画像不変量計算モジュール２１６は、まず、ある一つの特徴点配置を注目する特徴点配置をして設定する（ステップＳＲ１０３１）。次に、前記登録画像不変量計算モジュール２１６は、その特徴点配置に関して特徴ベクトルを計算する処理を行う（ステップＳＲ１０３２）。前記登録画像不変量計算モジュール２１６が特徴ベクトルを計算する方法としては、例えば、特許文献２に開示されている処理を行えばよい。次に、前記登録画像不変量計算モジュール２１６は、計算された特徴ベクトルを、登録画像特徴ベクトル格納モジュール２１８ｂに格納する（ステップＳＲ１０３３）。前記特徴点配置と前記特徴ベクトルとは１対１の関係にあることを利用して、特徴点配置を一意に識別する識別し情報を合わせて格納しておくと、後の処理のために都合がよい。最後に、前記登録画像不変量計算モジュール２１６は、すべての特徴点を注目特徴点配置として特徴ベクトルを計算する処理が終了したかを判定する（ステップＳＲ１０３４）。前記登録画像不変量計算モジュール２１６は、判定がＹＥＳならば図３のステップＳＲ１０３の処理を終了し、判定結果がＮＯならば図６のステップＳＲ１０３１の処理を行う。これにより、登録画像ｚのすべての特徴点配置について特徴ベクトルが求められるまで反復される。【００６８】
次に、図２に示すステップＳＲ２の処理、すなわち、部分領域投影モジュール２６２が登録画像から登録画像部分領域特徴量を計算する処理について説明する。図７は、図２に示すステップＳＲ２の動作を示すフローチャートである。図７を参照すると、図２に示すステップＳＲ２は、ステップＳＲ２１とステップＳＲ２２とから構成される。【００６９】
まず、ステップＳＲ２１では、登録画像から１つ以上の部分領域が計算される。以下、ステップＳＲ２１の動作を示すフローチャート図８を参照して、説明する。【００７０】
図８に示すステップＳＲ２１１において、部分領域計算モジュール２７２は、部分領域の計算が行われていない登録画像ｚを一つ設定する。次に、ステップＳＲ２１２において、前記部分領域計算モジュール２７２は、前記設定した登録画像ｚの部分領域について計算する。前記部分領域は任意の部分領域とすることができるが、本実施形態では、登録画像ｚから得られる黒画素の連結領域の外接矩形の１つ以上を前記部分領域とする。この場合は、図４のステップＳＲ１０１２において、前記登録画像特徴点抽出モジュール２１２が画像内の黒画素の連結領域をすべて求めているため、その計算結果を再利用すれば、改めて連結領域の計算を行う必要がないという利点がある。【００７１】
次に、ステップＳＲ２１３において、前記部分領域計算モジュール２７２は、すべての登録画像について、登録画像ｚの部分領域を計算する処理が行われたかを判定する。前記部分領域計算モジュール２７２は、判定結果がＹＥＳならステップＳＲ２１の処理を終了し、判定結果がＮＯならＳＲ２１１の処理を行う。【００７２】
次に、図７のステップＳＲ２２において、部分領域特徴量格納モジュール２７６は、部分領域特徴量と部分領域（外接矩形）の四隅座標を合わせて格納する。以下、ステップＳＲ２２の動作を示すフローチャートである図９を参照して、説明する。【００７３】
図９のステップＳＲ２２２において、前記部分領域特徴量計算モジュール２７４は、前記部分領域計算モジュール２７２で計算された部分領域のそれぞれに対して、部分領域特徴量（登録画像部分領域特徴量）を求める。【００７４】
また、図９のステップＳＲ２２１では、前記部分領域特徴量格納モジュール２７６は、前記計算された部分領域と部分領域特徴量を格納する。【００７５】
次に、ステップＳＲ２２３で、前記部分領域計算モジュール２７２及び前記部分領域特徴量計算モジュール２７４は、すべての登録画像について、部分領域と部分領域特徴量の計算が行われたかを判定する。前記部分領域計算モジュール２７２及び前記部分領域特徴量計算モジュール２７４は、判定結果がＹＥＳならステップＳＲ２２の処理を終了し、判定結果がＮＯならば、それぞれステップＳＲ２２１及びステップＳＲ２２２の処理を行う。【００７６】
＜検索処理＞
次に検索処理について説明する。図１０は、本実施形態の画像照合装置が実行する検索処理のフローチャートである。図１０を参照すると、検索処理には、ステップＳＱ１、ステップＳＱ２、ステップＳＱ３、ステップＳＱ４、ステップＳＱ５、ステップＳＱ６のそれぞれの処理が含まれる。ステップＳＱ１は、ステップＳＱ２、ＳＱ３、ＳＱ４を行う対象となる登録画像ｚを一つ設定する処理である。ステップＳＱ２では、検索画像とステップＳＱ１で設定された登録画像ｚとの間のアフィンパラメータを推定する処理を行う。ステップＳＱ３では、ステップＳＱ１で設定された登録画像に対して求められた登録画像部分領域を検索画像に投影する処理を行う。ステップＳＱ４では、検索画像上に投影された部分領域内の画像から特徴量を計算し、対応する登録画像部分領域特徴量との照合する処理を行う。ステップＳＱ５では、すべての登録画像に対してステップＳＱ２、ステップＳＱ３、ステップＳＱ４が行われたかどうかを判定し、ＹＥＳならばステップＳＱ６の処理を行い、ＮＯならばステップＳＱ１へ戻る処理を行う。ステップＳＱ６では、少なくともステップＳＱ４で得られた結果を利用して、最終的に与えられた検索画像に対応する登録画像を同定する処理を行う。以下、各ステップの処理を具体的に説明する。【００７７】
ステップＳＱ１の動作を示す図１１を参照すると、具体的には、部分領域計算のジュール２７２は、検索画像との部分領域一致数計算が行われていない登録画像の一つを、注目する登録画像として設定する処理を行う（ステップＳＱ１１）。ここで設定された登録画像を登録画像ｚとする。次に、パラメータ空間投票数格納モジュール２４６は、投票数格納領域に関する初期化処理（ステップＳＱ１２）を行う。ステップＳＱ１２の動作を、図１２を参照して、説明する。【００７８】
前記パラメータ空間投票数格納モジュール２４６は、まず、あらかじめパラメータａ、ｂ、ｃ、ｄが取り得る値の範囲と、登録画像上の点（ｘｒ，ｙｒ）、検索画像上の点（ｘｑ，ｙｑ）のとりうる値の範囲を定める（ステップＳＱ１２１）。前記ａ、ｂ、ｃ、ｄが取り得る値の範囲については、例えば、個別アフィンパラメータ検証モジュール２３６が検証する際に利用するａ、ｂ、ｃ、ｄの値を利用することができる。例えば、ａの取り得る値は、ａｍｉｎ≦ａ≦ａｍａｘ、ｂの取り得る範囲をｂｍｉｎ≦ｂ≦ｂｍａｘ、ｃの取り得る範囲をｃｍｉｎ≦ｃ≦ｃｍａｘ、ｄの取り得る範囲をｄｍｉｎ≦ｄ≦ｄｍａｘであるとする。
また、前記パラメータ空間投票数格納モジュール２４６は、１≦ｘ≦ｘｍａｘ、１≦ｙ≦ｙｍａｘで定義される領域を持つ画像となるような、ｘｍａｘ、ｙｍａｘを取得する。これは、登録画像ｚのサイズ（幅もしくは高さ）を用いればよい。同様に、前記パラメータ空間投票数格納モジュール２４６は、（ｘｑ，ｙｑ）についても、検索画像のサイズ（幅もしくは高さ）から、１≦ｘｑ≦ｘｑｍａｘ、１≦ｙｑ≦ｙｑｍａｘで定義される領域を持つ画像となるようにｘｑｍａｘ、ｙｑｍａｘを取得する。次に、前記パラメータ空間投票数格納モジュール２４６は、ｅ、ｆの取り得る値の範囲を定める（ステップＳＱ１２２）。【００７９】
前記パラメータ空間投票数格納モジュール２４６が前記情報を取得する方法の一例としては、例えば、次のような方法がある。登録画像上の点（ｘ，ｙ）と検索画像上の点（ｘｑ，ｙｑ）（１≦ｘｑ≦ｘｑｍａｘ、１≦ｙｑ≦ｙｑｍａｘで定義される領域を持つ画像とする。）とは、[数１]からわかるように、
ｘｑ＝ａｘ＋ｂｙ＋ｅ
ｙｑ＝ｃｘ＋ｄｙ＋ｆ
なる関係がある。これは、
ｅ＝ｘｑ−（ａｘ＋ｂｙ）
ｆ＝ｙｑ−（ｃｘ＋ｄｙ）
と書き換えられる。
従って、ｅの取り得る値の範囲をｅｍｉｎ≦ｅ≦ｅｍａｘ、ｆｍｉｎ≦ｆ≦ｆｍａｘとすると、
ｅｍｉｎ＝ｍｉｎ（ｘｑ−（ａｘ＋ｂｙ））
ｅｍａｘ＝ｍａｘ（ｘｑ−（ａｘ＋ｂｙ））
ｆｍｉｎ＝ｍｉｎ（ｙｑ−（ｃｘ＋ｄｙ））
ｆｍａｘ＝ｍａｘ（ｙｑ−（ｃｘ＋ｄｙ））
となる。ここで、ｍｉｎ（・）は、すべてのａ、ｂ、ｃ、ｄ、ｘ、ｙ、ｘｑ、ｙｑがとりうるすべての値の組み合わせについて、カッコ内の数式を最小にする値を示している。同様に、ｍａｘ（・）は、すべてのａ、ｂ、ｃ、ｄ、ｘ、ｙ、ｘｑ、ｙｑがとりうるすべての値の組み合わせについて、カッコ内の数式を最大にする値を示している。
なお、ａ≒１、ｂ≒０、ｃ≒０、ｄ≒１であるような場合には、ａ、ｄは正の値のみを、ｂ、ｃは正の値も負の値もとりうると考えるのが自然である。言い換えれば、ａｍｉｎ、ａｍａｘ、ｂｍａｘ、ｃｍａｘ、ｄｍｉｎ、ｄｍａｘは正の値、ｂｍｉｎ、ｃｍｉｎは負の値をとることが自然である。
ｅｍｉｎ＝ｘｑｍａｘ−（ａｍａｘ＊ｘｍａｘ＋ｂｍａｘ＊ｙｍａｘ）
ｅｍａｘ＝ｘｑｍｉｎ−（ｂｍｉｎ＊ｙｍａｘ）
ｆｍｉｎ＝ｙｑｍｉｎ−（ｃｍａｘ＊ｘｍａｘ＋ｄｍａｘ＊ｙｍａｘ）
ｆｍａｘ＝ｙｑｍａｘ−（ｃｍｉｎ＊ｘｍａｘ）
と定めることができる。ここで＊の記号は乗算を明示的に表す記号である。
もちろん、あらかじめ得られている他の条件を考えて、ｅ、ｆが取り得る値の範囲を別途定めてもよいし、あらかじめ定めておいたｅ、ｆの取り得る値の範囲を定めてもよいし、上記２つの範囲を組み合わせて最終的な取り得る値の範囲を定めてもよい。
次に、パラメータごとに定められた取り得る値の範囲を分割する（ステップＳＱ１２３）。
例えば、[ａｍｉｎ，ａｍａｘ]の区間をＮａ個に分割してできた区間を、区間ａ１、ａ２、、、ａＮａとする。同様に、区間ｂ１、、、ｂＮｂ、区間ｃ１、、、ｃＮｃ、区間ｄ１、、、ｄＮｄ、区間ｅ１、、、ｅＮｅ、区間ｆ１、、、ｆＮｆを求める。ここで、Ｎａ、Ｎｂ、Ｎｃ、Ｎｄ、Ｎｅ、Ｎｆはあらかじめ定めておいた値を用いてもよいし、区間に要求される性質（区間の大きさに関する制約など）などから定めてもよい。以下では、Ｎａ、Ｎｂ、Ｎｃ、Ｎｄ、Ｎｅ、Ｎｆの数はあらかじめ定められているものとする。この場合は、各パラメータに関して、分割された各区間がどのようなパラメータ値の範囲の区間なのかを計算し、図示しない格納領域に蓄えておく。なお、投票数格納領域、およびパラメータ値格納領域の数は、区間の組み合わせのすべてを格納するのに十分な量である必要がある。また、隣接する区間の組み合わせ、という言葉で、ある区間の組み合わせａｄ、ｂｄ、ｃｄ、ｄｄ、ｅｄ、ｆｄに対して、次のような性質を満たす区間の組み合わせのことを表すことがある。その性質とは、すなわち、区間の組み合わせ（区間の分割）ａｚ、ｂｚ、ｃｚ、ｄｚ、ｅｚ、ｆｚが、
ａｄ−１≦ａｚ≦ａｄ＋１
ｂｄ−１≦ｂｚ≦ｂｂ＋１
ｃｄ−１≦ｃｚ≦ｃｄ＋１
ｄｄ−１≦ｄｚ≦ｄｄ＋１
ｅｄ−１≦ｅｚ≦ｅｄ＋１
ｆｄ−１≦ｆｚ≦ｆｄ＋１
を満たすような性質である。【００８０】
次に、前記パラメータ空間投票数格納モジュール２４６は、各区間の組み合わせに対応する投票数格納領域に格納されている投票数を０で初期化する（ステップＳＱ１２４）。
また、前記パラメータ空間投票数格納モジュール２４６は、投票数格納領域に対応するパラメータ格納領域についても初期化する（各パラメータを表す変数に０を代入する）。【００８１】
次に、ステップＳＱ２について、ステップＳＱ２の動作を示す図１３を参照して、説明する。ステップＳＱ２は、ステップＳＱ２１とステップＳＱ２２とステップＳＱ３から構成される。ステップＳＱ２１は、登録画像と同様に、検索画像から特徴点配置と特徴ベクトルを計算する処理である。ステップＳＱ２２は、登録画像ｚに関する特徴点配置と特徴ベクトル、検索画像に関する特徴ベクトルから、投票数格納領域とパラメータ値格納領域に格納される投票数とパラメータ値を計算し、格納する処理である。ステップＳＱ２３は、投票数格納領域とパラメータ値格納領域に格納される投票数とパラメータ値を利用して、登録画像ｚと検索画像との間のアフィンパラメータを決定する処理である。以下で、ステップＳＱ２１、ＳＱ２２、ＳＱ２３の処理について説明する。【００８２】
ステップＳＱ２１は、例えば、検索画像特徴点抽出モジュール２２２、検索画像特徴点配置計算モジュール２２４、検索画像不変量計算モジュール２２６が、ステップＳＲ１と同様の処理を行うことにより実現可能である。従って、説明を省略する。結果として、検索画像に関する特徴点配置と特徴ベクトルとが、通常、１つずつ以上計算される。これらは、図示しない格納領域に一時的に格納しておけばよい。（もちろん、必ずしも登録画像と同一の方法で検索画像に関する特徴点配置と特徴ベクトルとを計算する必要は無い。例えば、特許文献１および特許文献２に示されているように、ある一つの特徴点配置についての１つ以上の巡回置き換えに対応する、新たな特徴点配置と特徴ベクトルとを計算してもよい。）【００８３】
次に、ステップＳＱ２２の動作を、ステップＳＱ２２の動作を示すプローチャート図１４を参照して、説明する。【００８４】
まず、不変量一致判定モジュール２３２は、まだＳＱ２２の処理が行われていない登録画像特徴ベクトルを一つ設定する（ステップＳＱ２２０１）。次に、不変量一致判定モジュール２３２は、まだＳＱ２２の処理が行われていない検索画像特徴ベクトルを一つ設定する（ステップＳＱ２２０２）。次に、不変量一致計算モジュール２３２は、注目する登録画像特徴ベクトルと注目する検索画像特徴ベクトルとの間の類似度を計算する（ステップＳＱ２２０３）。以下の説明では、類似度は、２つのベクトル間のユークリッド距離の２乗の値であるとする（ただし、これに限られない）。【００８５】
次に、不変量一致計算モジュール２３２は、ステップＳＱ２２０３で計算した類似度を基に、両ベクトルが一致しているかを、類似度が予め定められた範囲であるかどうかによって、判定する（ステップＳＱ２２０４）。不変量一致計算モジュール２３２は、例えば、２つのベクトル間のユークリッド距離の２乗の値が類似度の場合は、２つのベクトル間のユークリッド距離の２乗の値の値が予め設定した（通常、比較的小さな）正の値よりも小さい（、あるいは以下）の場合に両ベクトルが一致したとみなすようにすることができる。一致した場合にはステップＳＱ２２０５の処理が行われ、そうでない場合にはステップＳＱ２２０９の処理が行われる。【００８６】
次に、個別アフィンパラメータ推定モジュール２３４が、個別アフィンパラメータを推定する（ステップＳＱ２２０５）。本実施の形態における推定方法は、個別アフィンパラメータ推定モジュール２３４に関する機能の説明の中で、すでに述べたとおりである。【００８７】
次に、個別アフィンパラメータ検証モジュール２３６が、個別アフィンパラメータを検証する（ステップＳＱ２２０６）。本実施形態における推定方法は、個別アフィンパラメータ推定モジュール２３４に関する機能の説明の中で、すでに述べたとおりである。例えば、パラメータａｉ、ｂｉ、ｃｉ、ｄｉが、予め定められたａｍｉｎ、ａｍａｘ、ｂｍｉｎ、ｂｍａｘ、ｃｍｉｎ、ｃｍａｘ、ｄｍｉｎ、ｄｍａｘに関して、ａｍｉｎ≦ａｉ≦ａｍａｘ、ｂｍｉｎ≦ｂｉ≦ｂｍａｘ、ｃｍｉｎ≦ｃｉ≦ｃｍａｘ、ｄｍｉｎ≦ｄｉ≦ｄｍａｘをすべて満足する場合を検証ＯＫ、そうでない場合を検証ＮＧとすればよい。検証ＯＫと判定された場合はステップＳＱ２２０７へ進む。検証ＮＧの場合はステップＳＱ２２０９へ進む。【００８８】
次に、パラメータ空間投票数格納モジュール２４６が、個別アフィンパラメータの値に応じて、適切な投票数格納領域の投票数を１増加させるとともに、適切なパラメータ値格納領域に格納されているパラメータ値を更新する（ステップＳ２２０７）。以下、ステップＳＱ２２０７の動作を示す図１５を参照して説明する。【００８９】
まず、パラメータ空間投票数格納モジュール２４６は、アフィンパラメータ検証部２３６により一致したと判定された際に推定された登録画像特徴点配置と検索画像特徴点配置との間のアフィンパラメータの値の組と、ステップＳ１２３で計算されている「分割された各区間がどのようなパラメータ値の範囲の区間なのかを計算した」結果を利用して、区間の組み合わせを求める（ステップＳＱ２２０７１）。【００９０】
次に、パラメータ空間投票数格納モジュール２４６は、該当する区間の組み合わせに対応する投票数格納領域に格納されている投票数を１増加させる（ステップＳＱ２２０７２）。次に、該当する区間の組み合わせに対応するパラメータ値格納領域に格納されているパラメータ値を更新する（ステップＳＱ２２０７３）。例えば、次のように更新する。すなわち、パラメータａに関して、投票数を１増加させる前の投票数をａｎ、更新前のパラメータａの値をａｖｂ、個別アフィンパラメータの値をａｉとして、更新後のパラメータａの値ａｖａは、
ａｖａ＝（（ａｖｂ＊ａｎ）＋ａｉ）÷（ａｎ＋１）
で求めることができる。ここで＊の記号は乗算を明示的に表す記号である。他のパラメータ、ｂ、ｃ、ｄ、ｅ、ｆについても同様に計算できる。このように計算すると、パラメータ値格納領域に格納されているパラメータ値は、結果として、該当する区間の組み合わせに対応するパラメータ値の平均となる。【００９１】
以上で説明した、ステップＳＱ２２０７の動作では、該当する区間の組み合わせに対応する投票数、パラメータ値が唯一更新されるように動作している。しかし、必ずしも唯一である必要は無く、例えば、該当する区間の組み合わせに隣接する区間の組み合わせに対応する投票数、パラメータ値をもあわせて更新するようにすることも可能である。【００９２】
次に、不変量一致判定モジュール２３２は、注目している登録画像特徴ベクトルに対して、全ての検索画像特徴ベクトルとの処理が終わったかどうかを判定する（ステップＳＱ２２０８）。ＹＥＳならば、ステップＳＱ２２０９の処理が行われ、ＮＯならば、ステップＳＱ２２０２の処理が再び開始される。【００９３】
次に、パラメータ空間投票数格納モジュール２４６は、注目している登録画像特徴ベクトルに対しての処理が終わったかどうかを判定する（ステップＳＱ２２０９）。ＹＥＳならステップＳＱ２２の処理を終了し、ＮＯならステップＳＱ２２０１へ戻る。【００９４】
次に、ステップＳＱ２３の処理について説明する。ステップＳＱ２３では、投影用アフィンパラメータ決定モジュール２６０が、最大の投票数が格納されている投票数格納領域を検出し、その投票数格納領域に対応するパラメータ値格納領域に格納されているパラメータの値を投影用アフィンパラメータとして決定する。最大の投票数が格納されている投票数格納領域が２個以上存在する場合の取り扱いは、後述することとして、当面は、最大の投票数が格納されている投票数格納領域は１個である場合について説明する。【００９５】
次に、ステップＳＱ３では、投影部分領域決定モジュール２７８が、登録画像ｚに対して検索画像上の投影部分領域を決定する。以下、ステップＳＱ３の動作を示すプローチャート図１６を参照して、説明する。【００９６】
まず、ステップＳＱ３１で、投影部分領域決定モジュール２７８が、投影部分領域が計算されていない部分領域を一つ設定する。【００９７】
次に、ステップＳＱ３２で、投影部分領域決定モジュール２７８が、投影部分領域を計算する。本実施の形態では、部分領域は矩形領域なので、矩形領域の四隅座標を求めればよい。求め方は、投影部分領域決定モジュール２７８の機能の説明で上述したとおりである。【００９８】
次に、ステップＳＱ３３で、投影部分領域決定モジュール２７８が、計算された投影部分領域が、検索画像上で有効領域であるかどうかを判定する。有効領域とは、例えば、検索画像で画素値が存在する領域である。本実施の形態では、部分領域は矩形領域なので、矩形領域の四隅座標が検索画像上に存在していればよい。求め方は、投影部分領域決定モジュール２７８の機能の説明で上述したとおりである。四隅座標のすべてが有効領域に存在していればステップＳＱ３４の処理を行い、そうでなければＳＱ３５の処理を行う。【００９９】
次に、ステップＳＱ３４で、投影部分領域決定モジュール２７８が、有効な領域に存在する投影部分領域を、一時的に格納する。これは、検索処理の後段の処理に用いるためである。このとき、投影部分領域を計算した基の部分領域を一意に識別できる情報を合わせて格納しておくと都合がよい。【０１００】
次に、ステップＳＱ３５で、投影部分領域決定モジュール２７８が、すべての部分画像について投影部分領域の計算が終了したかどうかを判定する。投影部分領域決定モジュール２７８は、ＹＥＳなら、ステップＳＱ３６の処理を行う。ＮＯなら、ステップＳＱ３１の処理を行う。最後に、ステップＳＱ３６で、投影部分領域決定モジュール２７８が、有効な領域に存在する投影部分領域数を計算する。そして、この結果を、検索処理の後段の処理のために一時的に格納する。【０１０１】
次に、ステップＳＱ４では、検索画像部分領域特徴量を求め、対応する登録画像部分特徴量と照合を行う。以下、ステップＳＱ４の動作を示すプローチャート図１７を参照して、説明する。【０１０２】
まず、投影画像部分領域特徴量計算モジュール２８０が、登録画像ｚと検索画像との部分領域一致数を格納する変数を０で初期化する（ステップＳＱ４０）。次に、投影画像部分領域特徴量計算モジュール２８０が、後述するステップＳＱ４３における部分領域の照合判定処理が行われていない検索画像部分領域のうちの一つを、注目する検索画像部分領域として、選択する（ステップＳＱ４１）。次に、投影画像部分領域特徴量計算モジュール２８０が、注目する検索画像部分領域の一つについて、検索画像部分領域特徴量を計算する（ステップＳＱ４２）。投影画像部分領域特徴量計算モジュール２８０の機能の説明で述べたように、一般の検索画像部分領域に対しては、登録画像上に検索画像部分領域の画像を投影した後に、その画像について特徴量を求める。ただし、本実施の形態では、部分領域内の黒画素の存在比率を特徴量としているので、検索画像上において、検索画像部分領域について特徴量を求めれば十分である。【０１０３】
次に、部分領域照合モジュール２８２が、注目する検索画像部分領域に対応する登録画像部分領域から計算された登録画像部分領域特徴量と、検索画像部分特徴量とを照合する（ステップＳＱ４３）。本実施形態では、照合は、登録画像部分領域特徴量の値から検索画像部分領域の値を減じた値が、予め定められた範囲の値であれば、一致したと判定する。予め定められている範囲は、通常、０を含み、かつ、比較的０に近い値の集合である。一致した場合はステップＳＱ４４の処理を行う。一致しない場合は、ステップＳＱ４５の処理を行う。【０１０４】
ステップＳＱ４４では、部分領域照合モジュール２８２が、登録画像ｚと検索画像との部分領域一致数を格納する変数を１だけ増加させる。次に、ステップＳＱ４５で、部分領域照合モジュール２８２が、すべての検索画像部分領域に対して、部分領域の照合判定（ステップＳＱ４３）が終了したかどうかを判定する。ＹＥＳなら処理を終了する。ＮＯならステップＳＱ４１の処理を行う。【０１０５】
以上のステップＳＱ１、ＳＱ２、ＳＱ３、ＳＱ４の処理で、結果として登録画像ｚと検索画像との間の部分領域一致数（部分領域が一致したと判定された回数）が計算されたことになる。【０１０６】
ステップＳＱ５では、部分領域照合モジュール２８２が、全ての登録画像について部分領域一致数を計算したかどうかを判定する。ＹＥＳならばＳＱ６の処理を行う。ＮＯならばＳＱ１の処理を行う。【０１０７】
以上のステップＳＱ１、ＳＱ２、ＳＱ３、ＳＱ４、ＳＱ５の処理で、結果としてすべての登録画像と検索画像との間の部分領域一致数が計算されたことになる。【０１０８】
次に、ステップＳＱ６で、画像照合結果計算モジュール２９０が、最終的な最終的に与えられた検索画像に対応する登録画像を同定する。以下、ステップＳＱ６の動作を示すプローチャート図１８を参照して、説明する。【０１０９】
まず、ステップＳＱ６１で、画像照合結果計算モジュール２９０が、各登録画像と検索画像との一致性を図る尺度である一致度を計算する。本実施の形態において、一致度は、各登録画像に対して、部分領域一致数を、（ステップＳＱ３６で計算された）有効な領域に存在する投影部分領域数（有効領域数）で割った値とする。ただし、これに限られない。【０１１０】
次に、ステップＳＱ６２で、画像照合結果計算モジュール２９０が、検索画像に対応する登録画像として出力する登録画像を決定する。これは、通常、最大の一致度が計算された登録画像であるとする。最大の一致度を持つ登録画像が２つ以上存在する場合には、それらをすべて出力してもよい。その場合には、一致度もしくは一致度を利用して計算される登録画像と検索画像との当てはまりのよさを表す数値を合わせて出力すると好適である。本実施の形態では、そのような場合には、結果を棄却することとする（この場合、検索画像に対応する登録画像は検出できなかったことを意味する。）。【０１１１】
次に、ステップＳＱ６３で、画像照合結果計算モジュール２９０が、登録画像を一意に指定できる情報を出力する。本実施の形態において、結果として出力される情報は、検索画像を一意に指定できる情報、もしくは、検索画像に対応する登録画像は検出できなかったことを意味する情報、のいずれかである。なお、ステップＳＱ６２が登録画像を一意に指定できる情報を複数出力した場合には、ステップＳＱ６３にて出力される登録画像を一意に指定できる情報は、複数であってよい。ステップＳＱ６２が、あわせて一致度もしくは一致度を利用して計算される登録画像と検索画像との当てはまりのよさを表す数値を出力する場合は、ステップＳＱ６３においても当該数値を出力してもよい。この場合は、当該情報（登録画像を一意に識別できる情報と、その登録画像に対応する一致度、もしくは当てはまりのよさを表す数値）を、本発明の画像照合装置の利用者（他コンピュータからの参照も含む）に提示することができる。これにより、利用者は本発明の画像照合装置を手段として利用して、利用者の目的に適合する画像検索を行うことが可能である。【０１１２】
なお、ステップＳＱ２３において、投影に用いるアフィンパラメータは１つであるものとして、上記の説明を行ってきた。しかし、必ずしも１つに決まらない場合は、複数のアフィンパラメータ候補を計算しておき、それぞれのアフィンパラメータについて、それぞれステップＳＱ３、ＳＱ４、ＳＱ５、ＳＱ６１の計算を独立に行けば、ステップＳＱ６２において、最終的に出力する登録画像を決定することができる。例えば、登録画像が２枚の場合、第１の登録画像からアフィンパラメータが２個、第２の登録画像からアフィンパラメータが１つ計算されている場合には、第１の登録画像の第１のアフィンパラメータに関する一致度、第１の登録画像の第２のアフィンパラメータに関する一致度、第２の登録画像に関する一致度を用いればよい。例えば、これらの３つの一致度のうち最大の一致度が計算された登録画像を、最終的に出力する登録画像として決定すればよい。【０１１３】
次に、本実施の形態の効果について説明する。
幾何変換不変量により特徴点の配置を特徴付ける特徴量を用いて特徴量を計算し、一致した特徴点配置のみを用いて幾何変換パラメータを高精度に求め、そのパラメータを利用して一方の画像中の部分領域を他方の画像上に投影し、求められた投影部分領域から特徴量を計算し、その特徴量を利用して照合している。従って、特徴点の配置は類似しているが、その特徴点が抽出された元の局所領域画像としては類似していない場合でも、高精度な照合が可能である。【０１１４】
合わせて、次のような効果も得られる。特許文献１および特許文献２で開示されているような、特徴ベクトル間の正しい対応の数を利用して画像を同定する場合、登録画像と検索画像が類似していても、ノイズ等の影響でたまたま連結領域が異なって求められてしまうと、正しい対応の数が少なくなり、精度のよい同定が難しい場合がある。図１９に、その一例を示す。図２０中で、画像Ｒは登録画像を、画像Ｑは検索画像を表す。このような場合、画像の右側では対応する特徴点配置が検出できる可能性があるが、左側では、特徴点の出現の仕方が異なるため、対応する特徴点配置を検出するのは原理的に不可能である。そのような場合でも、例えば、正しく対応がとれば特徴点配置が存在すれば、登録画像と検索画像との間の変形が（画像の座標に関して）一定なアフィンパラメータを持つ場合、もしくは、そのように近似できるとの仮定のもとでは、投影された領域画像はほぼ一致する（図２０参照）。従って、結果として高精度な画像の照合が可能になる。【０１１５】
（実施形態２）
次に、本発明の実施形態について図面を参照して詳細に説明する。本発明の実施形態２の構成は、実施形態１の構成と同一であるので、説明を省略する。【０１１６】
次に、本実施の形態の動作について説明する。登録処理に関しては、実施形態１と同一であるので、説明を省略する。検索処理に関して、実施形態１と異なる部分のみ説明する。【０１１７】
図２１を参照すると、実施形態１において、ステップＳＱ３およびステップＳＱ４に相当する動作が、ステップＳＱ７で置き換えられている。実施形態２におけるステップＳＱ７の詳細について、図２２を参照して、説明する。【０１１８】
まず、画像照合結果計算モジュール２９０は、部分領域一致数と、有効領域数を初期化する。具体的には、０を代入する（ステップＳＱ７００）。次に、ステップＳＱ７０１で、投影部分領域決定モジュール２７８は、投影部分領域が計算されていない部分領域を一つ設定する。【０１１９】
次に、ステップＳＱ７０２では、投影部分領域決定モジュール２７８は、投影部分領域を計算する。ステップＳＱ３２との相違点は、投影部分領域決定モジュール２７８により計算された投影部分領域に対して、投影部分領域決定モジュール２７８は、予め定められた範囲の中で変動させた結果を計算し、部分領域候補とする点である。変動は、例えば、パラメータａ、ｂ、ｃ、ｄ、ｅ、ｆに対してそれぞれ複数の変動量候補を用意しておき、それらのうちの組み合わせのうちの一つを各パラメータに対する変動量とする。このとき、当該部分領域に関して、まだ処理の行われていない変動量の組み合わせの一つについての処理を行うものとする。このようにすることにより、後述するステップＳＱ７０９との連携動作により、各パラメータに対する複数の変動量候補の組み合わせの１つ以上について、後述するステップＳＱ７０７の判定でＹＥＳとなるか、すべての変動量組み合わせについて処理が終了するまで反復的に動作されうる。本実施の形態では、ｅとｆのみ微小な変動を考慮するものとする。例えば、ｅの値の候補をｅｔ１、ｅｔ２、…、ｅｔｅ、ｆの値の候補をｆｔ１、ｆｔ２、…、ｆｔｆとする。例えば、ｅに対する変動量としてｅｔｅ、ｆに対する変動量としてｆｔｆであるとすると、投影部分領域はｘｑ方向にｅｔｅ、ｙｑ方向にｆｔｆだけ平行移動される。部分領域が矩形領域の場合は、矩形領域の四隅座標についてこの操作を行えば十分である。【０１２０】
次に、ステップＳＱ７０３で、投影部分領域決定モジュール２７８が、投影部分領域決定モジュール２７８によって計算された部分領域候補が、検索画像上で有効領域であるかどうかを判定する。求め方は、投影部分領域決定モジュール２７８の機能の説明で上述したとおりである。四隅座標のすべてが有効領域に存在していればステップＳＱ７０４の処理を行い、そうでなければステップＳＱ７０９の処理を行う。【０１２１】
次に、ステップＳＱ７０４で、投影部分領域決定モジュール２７８は、現在設定されている部分領域について、初めてステップＳＱ７０４の処理が行われるのかどうかを判定する。これは、現在、設定されている部分領域について、ステップＳＱ７０３とステップＳＱ７０９の連携による反復動作が行われた場合でも（部分領域候補が複数回計算されたとしても）、部分領域のおのおのに関して有効領域数増加の最大値が１であることを保証するための判定処理である。ＹＥＳならステップＳＱ７０５の処理を行う。ＮＯならステップＳＱ７０６の処理を行う。【０１２２】
ステップＳＱ７０５では、投影部分領域決定モジュール２７８が、有効領域数を１増加させる。【０１２３】
次に、ステップＳＱ７０６では、投影画像部分領域特徴量計算モジュール２８０が、ステップＳＱ４２と同様の処理で、求められている検索画像上の部分領域候補について、特徴量（これを検索画像部分領域候補特徴量と呼ぶ）を計算する。投影画像部分領域特徴量計算モジュール２８０の機能の説明において、投影画像部分領域特徴量計算モジュール２８０は検索画像部分領域から検索画像部分領域特徴量を計算するように説明されているが、この機能を用いれば、検索画像部分領域候補について特徴量が計算できることは自明である。【０１２４】
次に、ステップＳＱ７０７では、ステップＳＱ４３と同様に、投影画像部分領域特徴量計算モジュール２８０が、注目する検索画像部分領域候補に対応する登録画像部分領域から計算された登録画像部分領域特徴量と、検索画像部分領域候補特徴量とを照合する。一致した場合はステップＳＱ７０８の処理を行う。一致しない場合は、ステップＳＱ７０９の処理を行う。【０１２５】
ステップＳＱ７０８では、投影画像部分領域特徴量計算モジュール２８０が、登録画像ｚと検索画像との部分領域一致数を格納する変数を１だけ増加させる。【０１２６】
ステップＳＱ７０９では、ステップＳＱ７０２の説明で述べた変動量候補の組み合わせの全てについて、処理が終了したかを判定する。ＹＥＳならステップＳＱ７１０の処理を行う。ＮＯならばステップＳＱ７０２の処理を行う。【０１２７】
ステップＳＱ７１０では、投影画像部分領域特徴量計算モジュール２８０が、すべての登録画像部分領域に対して、部分領域の照合判定が終了したかどうかを判定する。ＹＥＳなら処理を終了する。ＮＯならステップＳＱ７０１の処理を行う。【０１２８】
次に、本発明の実施形態２の効果について説明する。
本発明の実施形態２では、ステップＳＱ７０２において、投影部分領域が計算されるように構成される。実施形態１と異なるのは、投影部分領域決定モジュール２７８により計算された投影部分領域に対して、予め定められた範囲の中で変動させた結果を計算し、最終的な投影部分領域とするように構成されている点である。
これにより、登録画像と検索画像との間の変形が（画像の座標に関して）アフィンパラメータとの仮定もしくは近似が成り立たないような場合、すなわち、局所的に無視することがない変形が生じている場合でも、実施形態１に比べて、投影された領域画像はより高精度に一致するようになる。従って、より精度のよい照合が実現できる。【０１２９】
次に、実施形態２の第１の変形例について図面を参照して詳細に説明する。本発明の実施形態２の第１の変形例の構成は、実施形態１と同一であるため、説明を省略する。【０１３０】
次に、本実施の形態の動作について説明する。登録処理に関しては実施形態１と同一であるので、説明を省略する。検索処理に関して、実施形態１と異なる部分のみ説明する。【０１３１】
動作が異なるのは、実施形態１におけるステップＳＱ２３、ＳＱ３、ＳＱ４の各ステップである。実施形態２の第１の変形例において、これらのステップに相当する処理を行うステップをそれぞれ、ＳＱＡ２３、ＳＱＡ３、ＳＱＡ４とする。【０１３２】
ステップＳＱＡ２３の処理は、上述した段落［０１１１］において説明した、必ずしもアフィンパラメータ候補が１つ決まらない場合に、複数のアフィンパラメータ候補を利用する方法を拡張したものである。すなわち、ステップＳＱ２３の処理においては、最大の投票数が格納されている（多くの場合、単一の）投票数格納領域を検出し、その投票数格納領域に対応するパラメータ値格納領域に格納されているパラメータの値を投票用アフィンパラメータとして決定しているのに対し、ステップＳＱＡ２３の処理では、あらかじめ定められた条件を満たす（多くの場合、複数の）投票数格納領域を検出し、それらの投票数格納領域に対応するパラメータ値格納領域に格納されているパラメータの値を投影用アフィンパラメータとする。
ここで、予め定められた条件とは、例えば次のような条件がある。
（１） その投票数格納領域に関する投票数は、予め定められた値以上である、
（２） その投票数格納領域に関する投票数は、最大の投票数から予め定められた値を減じた数以上の投票数である、
（３） その投票数格納領域に関する投票数は、その投票数を最大の投票数で割った比の値があらかじめ定められた値以上である、
これらの条件二つ以上を組み合わせてもよい。【０１３３】
ステップＳＱＡ３の処理は、ステップＳＱＡ２３で計算された（多くの場合、複数の）投影用アフィンパラメータを用いる場合に、投影部分領域決定モジュール２７８が、登録画像ｚに対して検索画像上の投影部分領域を決定する処理である。これは、実施形態１におけるステップＳＱ３に相当する処理である。【０１３４】
図２８は、実施形態２の第１の変形例におけるステップＳＱＡ３を説明するためのフローチャートである。以下、図２８を参照して、ステップＳＱＡ３での処理を説明する。ステップＳＱＡ３の処理は、ステップＳＱ３の処理と比較して、ステップＳＱＡ３１５、ＳＱＡ３４５の処理を行う点を除いて、ステップＳＱ３の処理と同一である。【０１３５】
ステップＳＱＡ３１５では、投影部分領域決定モジュール２２８が、ステップＳＱＡ２３にて検出された投票数格納領域に関する投影用アフィンパラメータから、注目する部分領域に対して投影部分領域がまだ計算されていないアフィンパラメータのうちの一つを取得する。【０１３６】
ステップＳＱＡ３４５では、部分領域照合モジュール２８２が、注目する部分領域について、ステップＳＱＡ２３にて検出された投票数格納領域のすべてに対する投影部分領域の計算が終了したかを判定する。ＹＥＳなら、ステップＳＱ５の処理を行う。ＮＯなら、ステップＳＱＡ１５の処理を行う。【０１３７】
なお、実施形態２の第１の変形例におけるステップＳＱ３４では、計算される投影部分領域に対して、投影部分領域を計算する基となる（登録画像中の）部分領域および投影に用いたアフィンパラメータを一意に同定できる情報を合わせて格納しておくと都合がよい。【０１３８】
ステップＳＱＡ４の処理は、ステップＳＱＡ３で計算された投影部分領域を用いて、検索画像部分領域を求め、対応する登録画像部分特徴量と照合を行う処理である。【０１３９】
図２９は、実施形態２の第１の変形例におけるステップＳＱＡ４の処理を説明するためのフローチャートである。以下、図２９を参照して、ステップＳＱＡ４の処理を説明する。ステップＳＱ４０、ステップＳＱ４３、ステップＳＱ４４の処理は、ステップＳＱ４の処理と同一である。以下、ステップＳＱ４の処理と異なる、ステップＳＱＡ４１、ＳＱＡ４２、ＳＱＡ４３、ＳＱＡ４３５、ＳＱＡ４５の処理についてのみ説明する。【０１４０】
ステップＳＱＡ４１では、投影画像部分領域特徴量計算モジュール２８０が、まだ照合対象となっていない登録画像部分領域から、一つの登録画像部分領域を選択する。【０１４１】
ステップＳＱＡ４１５では、投影画像部分領域特徴量計算モジュール２８０が、注目する登録画像部分領域に関して、まだ照合対象となっていないアフィンパラメータを一つ選択する。【０１４２】
ステップＳＱＡ４２では、投影画像部分領域特徴量計算モジュール２８０が、注目する登録画像部分領域とアフィンパラメータに関して、すでにステップＳＱＡ３で計算された検索画像部分領域を参照して、検索画像部分領域特徴量を計算する。前記計算方法は、ステップＳＱ４２の処理を行う計算方法と同一である。【０１４３】
ステップＳＱＡ４３の処理は、判定結果がＮＯのときにステップＳＱＡ４３５の処理を行うことを除いては、ステップＳＱ４３の処理と同一の処理である。【０１４４】
ステップＳＱＡ４３５では、投影画像部分領域特徴量計算モジュール２８０が、注目する登録画像部分領域に対して、すべてのアフィンパラメータを利用した検索画像部分領域が計算されたか否かを判定する。ＹＥＳの場合は、ステップＳＱＡ４５の処理を行い、ＮＯの場合はステップＳＱＡ４１５の処理を行う。【０１４５】
ステップＳＱＡ４５では、投影画像部分領域特徴量計算モジュール２８０が、すべての登録画像部分領域について処理が終了したかを判定する。ＹＥＳならばステップＳＱ４の処理を終了し、ＮＯならばステップＳＱ４１の処理を行う。【０１４６】
以上の説明においては、実施形態２における説明中、上述した段落［１１８］で説明したような、複数の変動量候補を用いたアフィンパラメータの候補を求めることはしていない。しかしながら、そのような処理は、実施形態２の第１の変形例においても容易に付加することが可能であることを申し述べておく。【０１４７】
また、以上の説明においては、どの特徴点配置から計算されたアフィンパラメータが、どの投票数格納領域に投票されたか、という情報は使用されていない。この情報を用いれば、ステップＳＱＡ２３の処理により検出されたすべての投票数格納領域に関するアフィンパラメータを利用する必要がなくなる。例えば、登録画像のある部分領域に注目している場合、その部分領域に相当する特徴点を取得し、その特徴点が以下の条件を満たすアフィンパラメータのみを利用するようにすればよい。
（条件１）当該特徴点を含む特徴点配置から求められた個別アフィンパラメータによって投票数が１以上増加させられた投票数格納領域に対応するアフィンパラメータ
このようにすることにより、より高速な照合を実現することもできる。【０１４８】
次に、本発明の実施形態２の第１の変形例の効果について説明する。実施形態２の第１の変形例では、ある一つの登録画像部分領域に対して、（多くの場合）複数のアフィンパラメータのそれぞれを利用して別々の検索画像部分領域を求め、それらの検索画像部分領域から計算された検索画像部分領域特徴量のうち一つでも登録画像部分領域特徴量と一致することをもって、部分一致数を１増加する処理となっている。【０１４９】
これにより、登録画像と検索画像との間の変形が、（画像の座標に関して）一定なアフィンパラメータを持つもしくはそのように近似できない場合でも、実施形態１に比べて、投影された領域画像はより高精度に一致するようになる。従って、より精度のよい照合が実現できる。
また、例えば、アフィンパラメータが局所的に異なる値を持つような変形が生じていて、そのばらつきが大きいとき、実施形態２によれば変動の幅を大きく設定する必要がある。この場合は、すべての変動の可能性を総当り的に考慮しなければならないため、一連の処理に時間がかかる。実施形態２の第１の変形例では、そのような総当り的な考慮の変わりに、各投票箱に対応する（区間の幅に応じて一定程度値の異なる）アフィンパラメータを複数用いることができる。複数のアフィンパラメータの少なくとも一つは、少なくとも局所的に精度の良いアフィンパラメータであることが期待できる。従って、実施形態２と同じくらい精度のよい照合が高速に実現できる。【０１５０】
次に、実施形態２の第２の変形例を説明する。実施形態２の第２の変形例では、上述した段落［００７８］で説明したような、実施形態１もしくは実施形態２の第１の変形例における、区間を限りなく細かくして、異なるアフィンパラメータについてはかならず１区間が割り当てられるような場合を考える。【０１５１】
実施形態２の第１の変形例をそのまま利用すると、投票数格納領域の数が比較的大きくなる。従って、求められた異なる個別アフィンパラメータの数が比較的少ない場合は、投票数格納領域を予め用意しておくより、各特徴点に対して、その特徴点に対応する部分領域を投影するために用いるアフィンパラメータの候補を記憶させておくほうが、記憶容量が小さくすむ場合がある。【０１５２】
実施形態２の第２の変形例は、そのような考え方のもとに提案する実施形態である。なお、異なるアフィンパラメータの数が膨大となるため、照合に時間がかかることが予想されるが、その課題に関しては、実施形態２の第１の変形例を説明した際に用いた方法、すなわち、或る区間に投票したアフィンパラメータのみを利用する方法を合わせて利用することとする。異なるアフィンパラメータについては必ず１区間が割り当てられるような場合について、上述の（条件１）は、単に次のように読み替えることができる。
（条件２）当該特徴点を含む特徴点配置から求められた個別アフィンパラメータ【０１５３】
次に、本発明の実施形態２の第２の変形例について詳細に説明する。まず、本発明の実施形態２の第２の変形例の構成について説明する。図３０は、本発明の実施形態２の第２の変形例の構成を示すブロック図である。【０１５４】
図３０を参照すると、実施形態２の第２の変形例の構成は、一部を除いて実施形態１と同一である。従って、異なる箇所のみ説明する。【０１５５】
図３０において、個別アフィンパラメータ格納モジュール４４６は、個別アフィンパラメータ検証モジュール２３６により検証された個別アフィンパラメータａ、ｂ、ｃ、ｄ、ｅ、ｆを、それらの個別アフィンパラメータａ、ｂ、ｃ、ｄ、ｅ、ｆを計算する際に使われた登録画像中の特徴点を一意に特定できる情報と共に格納する。個別アフィンパラメータ格納モジュール４４６は、例えば、登録画像中の特徴点配置（ｃｐ１、ｃｐ２、ｃｐ３、ｃｐ４、ｃｐ５、ｃｐ６）から計算されたアフィンパラメータａ、ｂ、ｃ、ｄ、ｅ、ｆを、特徴点ｃｐ１に関する個別アフィンパラメータとして格納し、特徴点ｃｐ２に関する個別アフィンパラメータとしても格納し、特徴点ｃｐ３から特徴点ｃｐ６に関する個別アフィンパラメータとしても各々を格納するようにすればよい。動作の詳細は後段の動作を説明する際に詳述する。【０１５６】
図３０において、投影用アフィンパラメータ決定モジュール４６０は、注目する登録画像の注目する特徴点に関して、個別アフィンパラメータａ、ｂ、ｃ、ｄ、ｅ、ｆを一組出力する。動作の詳細は後段の動作を説明する際に詳述する。【０１５７】
次に、本発明の実施形態２の第２の変形例の動作について説明する。登録処理に関しては、実施形態１と同一であるので説明を省略する。検索処理に関して、実施形態１と異なる部分のみ説明する。【０１５８】
動作が異なるのは、実施形態２におけるステップＳＱ２、ＳＱ２２、ＳＱＡ３、ＳＱＡ４での各処理である。実施形態２の第１の変形例において、これらのステップに相当する処理を、それぞれ、ステップＳＱＢ２、ＳＱＢ２２、ＳＱＢ３、ＳＱＢ４の処理とする。【０１５９】
図３１は、実施形態２の第２の変形例におけるステップＳＱＢ２の動作を示すフローチャートである。図３１を参照すると、ステップＳＱＢ２の処理は、ステップＳＱ２１の処理と、ステップＳＱＢ２２の処理とで構成されている。なお、ステップＳＱＡ２３に相当する処理は、ステップＳＱＢ２の処理からは削除されている。【０１６０】
ステップＳＱ２１は、実施形態２の第１の変形例と同一の処理である。【０１６１】
次に、ステップＳＱＢ２２の処理について説明する。図３２は、実施形態２の第２の変形例におけるステップＳＱＢ２２の処理を示すフローチャートである。以下、図３２を参照して説明する。なお、実施形態１と同一の処理を行っているステップに関しては説明を省略し、異なるステップである、ステップＳＱＢ２２０７、ＳＱＢ２２０９の各処理についてのみ説明する。【０１６２】
ステップＳＱＢ２２０７の処理は、個別アフィンパラメータ格納モジュール４４６が、ステップＳＱ２２０６において検証された個別アフィンパラメータを格納する処理である。個別アフィンパラメータ格納モジュール４４６が格納する方式は、個別アフィンパラメータ格納モジュール４４６の構成の説明で述べたとおりである。【０１６３】
ステップＳＱＢ２２０９の処理は、ステップＳＱ２２０９の処理の主体が、パラメータ空間投票数格納モジュール２４６から、個別アフィンパラメータ格納モジュール４４６に変わることのみが相違点で、そのほかの内容については同一である。【０１６４】
次に、ステップＳＱＢ３の処理を説明するためのフローチャートである図３３を用いて、ステップＳＱＢ３の処理について説明する。ステップＳＱＢ３の処理が、実施形態２の第１の変形例におけるステップＳＱＡ３の処理と異なるのは、ステップＳＱＡ３１５の処理が、ステップＳＱＢ３１５の処理に置き換わっている点である。【０１６５】
次に、ステップＳＱＢ３１５の処理を示すフローチャートである図３４を参照しながら、ステップＳＱＢ３１５の処理について説明する。ステップＳＱＢ３１５の処理は、投影用アフィンパラメータ決定モジュール４６０が、注目する登録画像の注目する特徴点に関して、まだ出力されていない個別アフィンパラメータａ、ｂ、ｃ、ｄ、ｅ、ｆを一組出力する処理である。その処理の詳細の一例について説明する。【０１６６】
まず、注目する登録画像に対して、投影用アフィンパラメータ決定モジュール４６０が、個別アフィンパラメータが１つ以上求められているかどうかを判定する（ステップＳＱＢ３１５１）。ＮＯの場合には、ステップＳＱ３５の処理を行う。【０１６７】
ＹＥＳの場合には、投影用アフィンパラメータ決定モジュール４６０が、注目する登録画像の注目する特徴点に関して、個別アフィンパラメータが登録されているかどうかを判定する（ステップＳＱＢ３１５２）。【０１６８】
ＹＥＳの場合には、投影用アフィンパラメータ決定モジュール４６０が、注目する登録画像の注目する特徴点に関して、格納された個別アフィンパラメータのうちまだ出力していない一組を選択し（ステップＳＱＢ３１５３）、ステップＳＱ３２の処理を行う。【０１６９】
ＮＯの場合には、投影用アフィンパラメータ決定モジュール４６０が、近傍の特徴点に関して格納されている個別アフィンパラメータのうちまだ出力していない一組を選択し（ステップＳＱＢ３１５４）、ステップＳＱ３２の処理を行う。ステップＳＱＢ３１５４の処理は、例えば、注目する登録画像上の特徴点で、現在注目している特徴点から、画像上で最近傍の位置に存在する特徴点に関する個別アフィンパラメータのうちまだ出力していない一組を選択する。【０１７０】
これらの個別アフィンパラメータの情報は、後段の処理で、投影部分領域決定モジュール２７８によって利用される。【０１７１】
次に、ステップＳＱＢ４の処理を示すフローチャートである図３５を参照しながら、ステップステップＳＱＢ４の処理について説明する。ステップＳＱＢ４の処理が、実施形態２の第１の変形例におけるステップＳＱＡ４の処理と異なるのは、ステップＳＱＡ４１５の処理が、ステップＳＱＢ４１５の処理に置き換わっている点である。【０１７２】
次に、ステップＳＱＢ４１５の処理を示すフローチャートである図３６を参照しながら、ステップステップＳＱＢ４１５の処理について説明する。ステップＳＱＢ４１５では、まず注目する登録画像の注目する特徴点に関して、投影領域が計算されているかどうかを判定する（ステップＳＱＢ４１５１）。【０１７３】
ＹＥＳの場合は、注目する登録画像における注目する特徴点に関して格納されている投影部分領域のうち、まだ選択されていない一つを選択して（ステップＳＱＢ４１５２）、ＳＱＢ４２の処理を行う。ＮＯの場合は、ステップＳＱＡ４５の処理を行う。【０１７４】
次に、本発明の実施形態２の第２の変形例の効果について説明する。実施形態２の第２の変形例は、計算されたすべての個別アフィンパラメータを利用して検索画像部分領域の計算を行う手法である。これは、個別アフィンパラメータを計算する基となった特徴点付近については特に高精度なアフィンパラメータであるから、同じ投票数格納領域に対応する個別アフィンパラメータから計算されたアフィンパラメータを用いる実施形態２の第１の変形例より、高精度な照合が実現できる。【０１７５】
また、実施形態２の第１の変形例のように、あらかじめ膨大な容量の投票数格納領域を用意する必要が無いため、低記憶容量で照合が実現できる場合もある。実施形態２の第２の変形例では、説明の都合上、区間を限りなく細かくして、異なるアフィンパラメータについてはかならず１区間が割り当てられるような場合を想定した。しかしながら、実施形態２の第２の変形例が有効な状況は、必ずしもこの場合だけに限られないことを申し述べておく。【０１７６】
（実施形態３）
次に、本発明の実施形態３について図面を参照して詳細に説明する。【０１７７】
本発明の実施形態３は、実施形態１と比較して、一部が置き換えられたものであるので、その相違点のみ説明する。
図２３は、本発明の実施形態３の構成を説明するための図である。まず、本発明の実施形態３の構成と、実施形態１の構成との相違点は、画像照合結果計算モジュール２９０が一致度を計算するだけでなく、不一致に関する尺度である不一致度をも計算し、最終的に検索画像に対応する登録画像を同定するように構成されている点である。これを、画像照合結果計算モジュール３９０とする。【０１７８】
不一致度は、例えば、次のような値である。
まず、各登録画像ｚに対して計算できる、（部分領域数−有効領域数）÷部分領域数、
を不一致度の尺度とすることである（不一致度１）。【０１７９】
また、次のような不一致度（不一致度２）も考えられる。すなわち、一致した検索画像部分領域特徴量を計算する基となった検索画像部分領域内を白画素で塗りつぶした後、再度検索画像において黒画素の連結領域を求め、一定条件（一定以上のサイズ、画素数など）を持つ連結領域の個数を不一致度とすることである。【０１８０】
また、次のような不一致度（不一致度３）も考えられる。すなわち、検索画像特徴点抽出モジュール２２２が動作する結果として求められる検索画像の連結領域を利用することができる。例えば、それら各連結領域と、ある登録画像部分領域特徴量と一致した検索画像部分領域特徴量を計算するとなった検索画像部分領域と、の共通領域（以下、両領域と呼ぶ。）が、一定以上の面積もしくは割合（例えば、（両領域の共通領域の面積）÷（両領域の和領域の面積））である数を計数し（この値をＳとする。）、
Ｓ÷（検索画像の連結領域数）
を不一致度として用いることである。
ここで説明したような不一致度と、一致度を用いて最終的に登録画像を同定するには、様々な手法が考えられる。例えば、これら不一致度に関する条件（例えば、不一致度がある一定以下の値をとる、など。）を満たした登録画像の中から、ステップＳＱ６２で述べた手順により出力すべき登録画像を決定すればよい。
また、一致度と不一致度を変数とする関数、例えば、線形和の値を利用してもよい。例えば、補正一致度の値を
（補正一致度）＝（一致度）−（γ＊（不一致度１）＋δ＊（不一致度２）＋η＊（不一致度３））
の値などが考えられる。これを新たな一致度とすれば、従来のステップＳＱ６２の手順により、出力すべき登録画像の決定が可能である。ここで、γ、δ、ηは、通常、正の値であり、予め設定する値である。【０１８１】
まず、本発明の実施形態３の動作と、実施形態１の動作との相違点は、図２４と図１０を参照すると、ステップＳＱ６の処理がステップＳＱ８に置き換えられている点である。【０１８２】
ステップＳＱ８の処理を示す図２を用いて、動作について説明する。
ステップＳＱ８１は、画像照合結果計算モジュール３９０が、ステップＳＱ６３のものと同一の処理を行うので、その説明を省略する。【０１８３】
ステップＳＱ８２では、画像照合結果計算モジュール３９０は、一致度計算処理の後に、上記で説明した不一致度のうち１つ以上を計算し、一致度と不一致度を用いて、上記のように、検索画像に対応する登録画像として出力する登録画像を決定する。ステップＳＱ８３では、画像照合結果計算モジュール３９０が、登録画像を一意に指定できる情報を出力する処理を行う。不一致度もしくは不一致度から計算される値を出力することができる点においてのみステップＳＱ６３と異なるが、それ以外はステップＳＱ６３と同一の処理を行えばよい。【０１８４】
次に、本発明の実施形態３の効果について説明する。本発明の実施形態１においては、登録画像の黒画素領域が、検索画像の黒画素領域の一部である場合に、一致度が高くなる。これにより、登録画像の白画素領域に関する照合が行われていない不都合が生じる場合がある。図２６は、同一の検索画像に対して、２つの登録画像の部分領域を検索画像上に投影した例である。（これらは、都市名がＡＡＡ、街路名がＢＢＢ、受取人がＣＣＣＣＣとすれば、住所文字列画像の例とも解釈できる。）図中、左の画像の矩形は登録画像部分領域を、右の画像の矩形は検索画像部分領域を表している（検索画像から計算される黒画素の連結領域ではないことに注意する必要がある）。本発明の実施形態１においては、登録画像部分領域と、登録画像部分領域を検索画像上に投影した領域である検索画像部分領域とから、それぞれ特徴量を計算し、それらを照合されることにより、一致度が計算される。これに従えば、図２６の登録画像１と登録画像２とはいずれも、一致度が１となるはずであるが、本来、登録画像１は検索画像と異なる画像であるので、それは望ましい結果ではない。不一致度２あるいは不一致度３のような尺度を加えることにより、このような不都合を軽減される。また、応用上の要求により、登録画像と検索画像との間の部分的な一致を許容しないような場合には、不一致度１のような尺度を加えることにより、より高い精度で要求が実現できることが期待される。【０１８５】
以上、説明した実施形態１から実施形態５までの各実施形態は、画像一般、あるいは文書画像の照合に用いることができる。特に、連結領域から得られる情報を用いて照合を行っているため、単語重心から得られる情報を用いて照合を行っている特許文献１による方法では照合することが難しい画像、例えば、数行程度の文字列から構成される文字列画像（例えば、郵便物に記載される（受取人情報を含む）住所文字列の画像）に対しても、精度のよい同定および検索が可能である。
また、説明した実施形態１から実施形態５までの各形態は、説明の都合上、特許文献２に開示されるような、特徴点を統合してあらたな特徴点（統合特徴点）を得る手続きを行っていない。しかしながら、そのような手続きは容易に組み込めることを申し述べておく。【０１８６】
上述した各実施形態の構成および動作はあくまでも一例であり、本発明の原理を損なわない範囲で、構成もしくは動作の手順の何れか一方以上を組み替えることが可能である。例えば、第１の実施の形態の動作において、ステップＳＲ２１内の登録画像に関するループと、ステップＳＲ２２内の登録画像に関するループは一つに容易に統合できる。上述した実施形態では、本発明をハードウェアとして構築した場合を説明したが、これに限られるものではない。本発明の実施形態は、本発明をソフトウェアとして構築してもよいものである。ソフトウェアとして構築した場合、本発明の実施形態に係るプログラムは、コンピュータに図１及び図２３に示した各モジュールの機能を実行させる構成として構築する。【０１８７】
また、当該装置内に供給されたコンピュータ・プログラムは、読み書き可能なメモリまたはハードディスク装置等の記憶デバイス（記憶媒体）に格納すれば良い。そして、このような場合において、本発明は、係るコンピュータ・プログラムのコード或いは記憶媒体によって構成される。【０１８８】
また、本発明の実施形態に係るプログラムでは、図１及び図２３の全体構成を統合して制御するプログラムとして構築してもよい。さらには、本発明の実施形態に係るプログラムでは、図１及び図２３での各モジュールの個別或いはいくつかのモジュールを統合した構成を制御するプログラムとして構築してもよいものである。【０１８９】
以上、実施形態（及び実施例）を参照して本願発明を説明したが、本願発明は上記実施形態（及び実施例）に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。【０１９０】
この出願は２００８年１１月１０日に出願された日本出願特願２００８−２８８２６０及び２００９年４月２１日に出願された日本出願特願２００９−１０３１１６を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用可能性】
【０１９１】
本発明は、コンピュータ産業、その他これに類する情報処理産業に適用可能である。より詳細には、一般の画像や文書、特に、郵便物に記載される住所等の文字列の画像の検索もしくは同定といった用途に適用できる。
【符号の説明】
【０１９２】
２０１  画像照合モジュール
２１２  登録画像特徴点抽出モジュール
２１４  登録画像特徴点配置計算モジュール
２１６  登録画像不変量計算モジュール
２１８ａ  登録画像特徴点配置格納モジュール
２１８ｂ  登録画像不変量格納モジュール
２２２  検索画像特徴点格納モジュール
２２４  検索画像特徴点配置計算モジュール
２２６  検索画像不変量計算モジュール
２３２  不変量一致判定モジュール
２３４  個別アフィンパラメータ推定モジュール
２３６  個別アフィンパラメータ検証モジュール
２４６  パラメータ空間投票数格納モジュール
２５０  投影用アフィンパラメータ推定モジュール
２６０，４６０  投影用アフィンパラメータ決定モジュール
２６２  部分領域投影モジュール
２６４  投影画像照合モジュール
２７２  部分領域計算モジュール
２７４  部分領域特徴量計算モジュール
２７８  投影部分領域決定モジュール
２８０  投影画像部分領域特徴量計算モジュール
２８２  部分領域照合モジュール
２９０，３９０  画像照合結果計算モジュール
４４６  個別アフィンパラメータ格納モジュール
【図１】
0005569394.tif 000011
【図２】
0005569394.tif 000012
【図３】
0005569394.tif 000013
【図４】
0005569394.tif 000014
【図５】
0005569394.tif 000015
【図６】
0005569394.tif 000016
【図７】
0005569394.tif 000017
【図８】
0005569394.tif 000018
【図９】
0005569394.tif 000019
【図１０】
0005569394.tif 000020
【図１１】
0005569394.tif 000021
【図１２】
0005569394.tif 000022
【図１３】
0005569394.tif 000023
【図１４】
0005569394.tif 000024
【図１５】
0005569394.tif 000025
【図１６】
0005569394.tif 000026
【図１７】
0005569394.tif 000027
【図１８】
0005569394.tif 000028
【図１９】
0005569394.tif 000029
【図２０】
0005569394.tif 000030
【図２１】
0005569394.tif 000031
【図２２】
0005569394.tif 000032
【図２３】
0005569394.tif 000033
【図２４】
0005569394.tif 000034
【図２５】
0005569394.tif 000035
【図２６】
0005569394.tif 000036
【図２７】
0005569394.tif 000037
【図２８】
0005569394.tif 000038
【図２９】
0005569394.tif 000039
【図３０】
0005569394.tif 000040
【図３１】
0005569394.tif 000041
【図３２】
0005569394.tif 000042
【図３３】
0005569394.tif 000043
【図３４】
0005569394.tif 000044
【図３５】
0005569394.tif 000045
【図３６】
0005569394.tif 000046