(57)【要約】【課題】複数の類似した局所特徴量を有する特定パターンの場合は、その特定パターンを有する画像を安定して検出することができない。【解決手段】検索対象の特定画像を登録しておき、クエリー画像を受け付けると、そのクエリー画像の局所特徴点と局所特徴量を算出し、登録している特定画像の局所特徴点と局所特徴量と当該特定画像の基準点への位置関係ベクトルと、算出されたクエリー画像の局所特徴点と局所特徴量とを基に、そのクエリー画像の局所特徴量ごとに、類似する前記特定画像の局所特徴量を抽出し、その抽出された特定画像の局所特徴量に対応した位置関係ベクトルを、対応する前記クエリー画像の局所特徴量の座標系へ変換し、その変換された位置関係ベクトルをクエリー画像の局所特徴点へ投票し、その投票された前記クエリー画像の局所特徴点への投票数に基づいて、前記クエリー画像が前記特定画像を含むかどうか判定する。【選択図】  図５
2018022293.tif 000002
【特許請求の範囲】
【請求項１】
画像検出装置であって、
検索対象の特定画像を登録する登録手段と、
クエリー画像を受け付ける受付手段と、
前記クエリー画像の局所特徴点と局所特徴量を算出する第１算出手段と、
前記特定画像の局所特徴点と局所特徴量と当該特定画像の基準点への位置関係ベクトルと、前記算出手段により算出された前記クエリー画像の局所特徴点と局所特徴量とを基に、前記クエリー画像の局所特徴量ごとに、類似する前記特定画像の局所特徴量を抽出する抽出手段と、
前記抽出手段により抽出された前記特定画像の局所特徴量に対応した位置関係ベクトルを、対応する前記クエリー画像の局所特徴量の座標系へ変換する変換手段と、
前記変換手段により変換された前記位置関係ベクトルを前記クエリー画像の局所特徴点へ投票する投票手段と、
前記投票手段により投票された前記クエリー画像の局所特徴点への投票数に基づいて、前記クエリー画像が前記特定画像を含むかどうか判定する判定手段と、
を有することを特徴とする画像検出装置。
【請求項２】
前記登録手段は、
登録する特定画像を受付けると、当該特定画像の局所特徴点と局所特徴量とを算出する第２算出手段と、
前記第２算出手段が算出した前記特定画像の局所特徴点と局所特徴量と、前記局所特徴点に対応する前記特定画像の基準点への位置関係ベクトルを算出する第３算出手段と、を有し、
前記特定画像の局所特徴点と局所特徴量及び前記局所特徴点に対応する位置関係ベクトルを、前記特定画像の局所特徴量情報として登録することを特徴とする請求項１に記載の画像検出装置。
【請求項３】
前記登録手段は、更に、
前記登録手段に登録されている特定画像の局所特徴量と、登録する特定画像の局所特徴量との距離を算出する第４算出手段と、
前記第４算出手段により算出された前記距離が閾値よりも短い局所特徴量を類似局所特徴量とし、当該類似局所特徴量に対応する前記位置関係ベクトルを前記第３算出手段により算出し、前記登録する特定画像の局所特徴量情報に追加して登録することを特徴とする請求項２に記載の画像検出装置。
【請求項４】
前記抽出手段は、前記クエリー画像の局所特徴量ごとに、０又は１つの類似する前記特定画像の局所特徴量を抽出することを特徴とする請求項３に記載の画像検出装置。
【請求項５】
前記登録手段は更に、
前記第３算出手段により算出された前記位置関係ベクトルが共通している前記特定画像の局所特徴量情報を一つの局所特徴量情報に統合する統合手段を有することを特徴とする請求項３に記載の画像検出装置。
【請求項６】
前記登録手段は更に、
登録されている特定画像で前記類似局所特徴量がない前記局所特徴量の数を求め、当該数が閾値よりも大きいときは、当該特定画像の前記類似局所特徴量の局所特徴量に対応する局所特徴点を除去する除去手段を有することを特徴とする請求項３に記載の画像検出装置。
【請求項７】
前記登録手段は、更に、
前記特定画像の局所特徴量を、回転した画像からも類似した局所特徴量を抽出できる回転不変性、或いは拡大・縮小した画像からも類似した局所特徴量を抽出できる拡大・縮小不変性の少なくともいずれかを有するものとして登録するかどうかをユーザに選択させる選択手段を有することを特徴とする請求項１乃至６のいずれか１項に記載の画像検出装置。
【請求項８】
前記判定手段は、前記クエリー画像の局所特徴点への投票数が所定の閾値よりも多い場合に、前記局所特徴点に前記特定画像があると判定することを特徴とする請求項１乃至７のいずれか１項に記載の画像検出装置。
【請求項９】
画像検出装置を制御する制御方法であって、
検索対象の特定画像を登録する登録工程と、
クエリー画像を受け付ける受付工程と、
前記クエリー画像の局所特徴点と局所特徴量を算出する第１算出工程と、
前記特定画像の局所特徴点と局所特徴量と当該特定画像の基準点への位置関係ベクトルと、前記第１算出工程で算出された前記クエリー画像の局所特徴点と局所特徴量とを基に、前記クエリー画像の局所特徴量ごとに、類似する前記特定画像の局所特徴量を抽出する抽出工程と、
前記抽出工程で抽出された前記特定画像の局所特徴量に対応した位置関係ベクトルを、対応する前記クエリー画像の局所特徴量の座標系へ変換する変換工程と、
前記変換工程で変換された前記位置関係ベクトルを前記クエリー画像の局所特徴点へ投票する投票工程と、
前記投票工程で投票された前記クエリー画像の局所特徴点への投票数に基づいて、前記クエリー画像が前記特定画像を含むかどうか判定する判定工程と、
を有することを特徴とする画像検出装置の制御方法。
【請求項１０】
コンピュータを、請求項１乃至８のいずれか１項に記載の画像検出装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像検出装置とその制御方法、及びプログラムに関する。
【背景技術】
【０００２】
画像の局所的な特徴量（局所特徴量）を用いて類似画像を検索する方法が提案されている。この方法では、まず、画像から複数の特徴的な点（局所特徴点）を抽出する。この局所特徴点を抽出する方法は、非特許文献１に記載されている。また非特許文献２には、その局所特徴点とその周辺の画像情報とに基づいて、その局所特徴点に対応する特徴量（局所特徴量）を算出することが記載されている。そして類似画像の検索は、複数の画像の局所特徴量が一致するかどうかに基づいて行っている。
【０００３】
この局所特徴量には、回転した画像からも類似した局所特徴量を抽出可能な回転不変性や、拡大・縮小した画像からも類似した局所特徴量を抽出可能な拡大・縮小不変性を持つものがある。このような局所特徴量を利用すれば、文書画像に含まれる特定パターンが回転したり、拡大、又は縮小された場合でも、その特定パターンを検出できる。
【０００４】
回転不変性を持つ局所特徴量を抽出するために、例えば非特許文献２では、局所特徴点の周辺の局所領域の画素パターンから正規化方向を算出し、局所特徴量を算出する際に、その正規化方向を基準に局所領域を回転させて方向の正規化を行う。また、拡大・縮小不変性を持つ局所特徴量を算出するために、異なるスケールの画像を内部で生成し、各スケールの画像の最適なスケール（スケールレベル）で局所特徴点の抽出と局所特徴量の算出を行う。ここで、内部で生成した一連の異なるスケールの画像集合は一般的にスケールスペースと呼ばれる。
【０００５】
局所特徴量を用いた画像同士のマッチングは類似画像の検索だけではなく、複合機において、スキャン画像や、ＰＤＬからレンダリングされた画像などの文書画像に、特定のパターンが含まれているかどうか検出するのに応用できる。この場合、予め、検出したい特定のパターン（以後、特定パターン）から局所特徴量群を抽出してＭＦＰに登録しておく。ここで、その局所特徴量が、回転不変性や拡大・縮小不変性がある局所特徴量である場合は、前述した正規化方向の情報やスケールレベルに関する情報も、ＭＦＰに登録しておく。こうして登録された局所特徴量群を登録特徴量群と呼ぶ。次に、文書画像からも局所特徴量群を抽出する。この文書画像から抽出された局所特徴量群をクエリー局所特徴量群と呼ぶこととする。最後に、登録局所特徴量群とクエリー局所特徴量群を比較し、一致した局所特徴量のペアの数として定義されるマッチングカウントを算出し、そのマッチングカウントが一定以上だった場合には、特定パターンが文書画像に含まれていると判定する。また特定パターンが複数ある場合には、複数パターン分の登録局所特徴量群を保持しておき、それぞれについて、クエリー局所特徴量群とのマッチングを行えばよい。
【０００６】
尚、特定パターンが検出された場合は、ＭＦＰは、その後の処理を通常時と切り替える。例えば、特定パターンが検出された場合には、文書画像のプリントをしない、文書画像を外部へ送信しない、検出されたことを管理者へ通知する、等を行う。
【０００７】
ここで、マッチングカウントに基づく特定パターンの検出は、特定パターンの大きさが小さい場合等の登録局所特徴量群の局所特徴量の数が少ない場合には課題がある。登録局所特徴量群の数が少ない場合は、比較する特徴量の数自体が少ないため、マッチングカウント値は大きな値にはならない。逆に、クエリー局所特徴量群の数が多い場合は、局所特徴量の誤マッチングが一定の確率で生じるために、特定パターンが存在しなくても、マッチングカウント値が一定の大きさになる。つまり、このような場合、特定パターンの誤検出を避けようとすると、肝心の特定パターンの検出ができないことになる。また、マッチングカウントに基づく方法では、特定パターンが文書画像のどこに存在するのかについての情報も得ることができない。
【０００８】
このような問題を解決する手法として、例えば特許文献１に記載された手法がある。この手法では、特定パターンを登録する際に、局所特徴量に対応する局所特徴点と特定パターンの重心等の基準点との位置関係を示す位置関係ベクトルも登録しておく。そして、特定パターンを検出する際に、この情報を利用する。即ち、マッチングが検知された登録局所特徴量とクエリー局所特徴量のペアについて、各々の正規化方向やスケールレベルの関係より、局所特徴量同士の回転、スケールの関係について算出する。次に、算出した回転・スケール情報に基づいて、位置関係ベクトルについて、登録局所特徴量の座標系からクエリー局所特徴量の座標系へ変換する。最後に、対応するクエリー局所特徴点と座標変換した位置関係ベクトルの情報から、文書画像に特定パターンが存在した場合に特定パターンの基準点が存在するであろう部分への投票を行う。この処理を全てのマッチングペアに対して行う。
【０００９】
この処理により、局所特徴量が誤マッチングした場合にはランダムな投票となり、本当に特定パターンが存在する場合には、１点に投票が集中する。この投票結果に基づき、特定パターンが検出できたかどうか判定することにより、マッチングカウント値だけでは誤マッチングと区別できなかった特定パターンの検出が可能になる。また、文書画像内の特定パターンの位置や向きやスケールも特定することが可能となる。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特許第４９８８４０８号公報
【非特許文献】
【００１１】
【非特許文献１】Ｃ．Ｈａｒｒｉｓ ａｎｄ Ｍ．Ｊ． Ｓｔｅｐｈｅｎｓ、“Ａ ｃｏｍｂｉｎｅｄ ｃｏｒｎｅｒ ａｎｄ ｅｄｇｅ ｄｅｔｅｃｔｏｒ、” Ｉｎ Ａｌｖｅｙ Ｖｉｓｉｏｎ Ｃｏｎｆｅｒｅｎｃｅ、ｐａｇｅｓ １４７−１５２、 １９８８．
【非特許文献２】Ｄａｖｉｄ Ｇ． Ｌｏｗｅ、 “Ｄｉｓｔｉｎｃｔｉｖｅ Ｉｍａｇｅ Ｆｅａｔｕｒｅｓ ｆｒｏｍ Ｓｃａｌｅ−Ｉｎｖａｒｉａｎｔ Ｋｅｙｐｏｉｎｔｓ、” Ｉｎｔｅｒｎａｔｉｏｎａｌ Ｊｏｕｒｎａｌ ｏｆ Ｃｏｍｐｕｔｅｒ Ｖｉｓｉｏｎ、 ６０、 ２ （２００４）、 ｐｐ．９１−１１０
【発明の概要】
【発明が解決しようとする課題】
【００１２】
特定パターンの種類によっては、パターン内に類似した領域が複数存在する場合がある。例えば、同一のパターンが繰り返されているパターンや、幾何的な図形で対称性があるパターン等である。このような場合には、特定パターンから、複数の類似した局所特徴量が抽出されることになる。このような場合には、登録した特定パターンの局所特徴量群と、文書画像に存在する特定パターンの局所特徴量群との比較を行っても、類似した局所特徴量同士が誤マッチングするため、正確に特定パターンを検出できない。そのため、特許文献１の手法を用いても、投票が１点に集中せず、特定パターンを安定して検出することが難しくなる。このことについて、図６を参照して説明する。
【００１３】
図６（Ａ）は、検出対象の特定パターンを示す図である。この特定パターンから、局所特徴点を検出すると、例えば、コーナー点Ｐ１，Ｐ２，Ｐ３が局所特徴点となる。局所特徴点の位置は、利用する局所特徴点の抽出技術により異なるが、おおむね２方向のエッジがある点等が選ぶ手法が多い。ここでは、コーナー点を局所特徴点として抽出する局所特徴点の抽出技術を利用することとする。
【００１４】
ここでＰ１，Ｐ２，Ｐ３の各点について、非特許文献２に記載の手法等で、回転不変性及び拡大・縮小不変性のある局所特徴量を計算すると、どれも類似した局所特徴量となる。これらが登録局所特徴量となる。図６（Ｂ）は、局所特徴点Ｐ１，Ｐ２，Ｐ３に対応する位置関係ベクトルＶ１，Ｖ２，Ｖ３を示している。この例において、基準点はパターンの中央部付近の点ｂとなっている。図６（Ｃ）は、特定パターンがあるかどうかを検出する対象のクエリー画像である。このクエリー画像から局所特徴点を検出すると、コーナー点Ｑ１，Ｑ２，Ｑ３となる。Ｑ１，Ｑ２，Ｑ３の各点について、回転不変性及び拡大・縮小不変性のある局所特徴量を計算すると、どれも類似した局所特徴量となる。これらが、クエリー局所特徴量となる。ここで算出したクエリー局所特徴量は、回転不変性及び拡大・縮小不変性があるため、図６（Ｂ）の登録局所特徴量とも類似した局所特徴量となっている。そのため、登録局所特徴量とクエリー局所特徴量とのマッチングを判定すると、Ｐ１，Ｐ２，Ｐ３と、コーナー点Ｑ１，Ｑ２，Ｑ３から算出される局所特徴量とが一致する組み合わせが安定しない。例えば、Ｐ１とＱ１、Ｐ２とＱ２、Ｐ３とＱ３から算出される局所特徴量がマッチングしたとする。その場合の投票結果を示したものが図６（Ｄ）である。
【００１５】
図６（Ｄ）において、Ｖ１’は、局所特徴点Ｐ１とコーナー点Ｑ１から算出される局所特徴量間の回転及びスケールの関係から、位置関係ベクトルＶ１を登録局所特徴量の座標系からクエリー局所特徴量の座標系に変換したものである。同様に、Ｖ２’はＶ２を変換したものであり、Ｖ３’はＶ３を変換したものである。Ｑ１からＶ１’を利用して想定基準点位置へ投票するとＲへ投票される。同様に、Ｑ２からＶ２’を利用した場合も、Ｑ３からＶ３’を利用した場合もＲへ投票される。この場合には、Ｒの位置へ３つの局所特徴からの投票が集中しており、その文書画像に特定パターンが存在すると判定できる。しかしながら、マッチング結果によっては、特定パターンが検出できない場合が存在する。例えば、Ｐ１とＱ２、Ｐ２とＱ３、Ｐ３とＱ１から算出される局所特徴量がマッチングしたとする。その場合の投票結果を示したのが図６（Ｅ）である。図６（Ｅ）において、Ｖ１''は、Ｐ１とＱ２から算出される局所特徴量間の回転及びスケールの関係から、位置関係ベクトルＶ１を登録局所特徴量の座標系からクエリー局所特徴量の座標系に変換したものである。同様に、Ｖ２''Ｖ２を変換したものであり、Ｖ３''はＶ３を変換したものである。このとき、コーナー点Ｑ２からＶ１''を利用して想定基準点位置へ投票するとＲ２へ投票される。同様に、Ｑ３からＶ２''を利用した場合はＲ３へ、Ｑ１からＶ３''を利用した場合はＲ１へ投票される。この場合は、３つの局所特徴量からの投票がＲ１、Ｒ２、Ｒ３に分散しており、その文書画像に特定パターンが存在すると判定できない。このように、特定パターンから、複数の類似した局所特徴量が抽出された場合は、特定パターンを安定して検出することができないという課題がある。
【００１６】
本発明の目的は、上記従来技術の課題を解決することにある。
【００１７】
本発明の目的は、登録されている特定画像が複数の類似した局所特徴量を有している場合でも、高精度で、クエリー画像が特定画像を含むかどうか判定できる技術を提供することにある。
【課題を解決するための手段】
【００１８】
上記目的を達成するために本発明の一態様に係る画像検出装置は以下のような構成を備える。即ち、
画像検出装置であって、
検索対象の特定画像を登録する登録手段と、
クエリー画像を受け付ける受付手段と、
前記クエリー画像の局所特徴点と局所特徴量を算出する第１算出手段と、
前記特定画像の局所特徴点と局所特徴量と当該特定画像の基準点への位置関係ベクトルと、前記算出手段により算出された前記クエリー画像の局所特徴点と局所特徴量とを基に、前記クエリー画像の局所特徴量ごとに、類似する前記特定画像の局所特徴量を抽出する抽出手段と、
前記抽出手段により抽出された前記特定画像の局所特徴量に対応した位置関係ベクトルを、対応する前記クエリー画像の局所特徴量の座標系へ変換する変換手段と、
前記変換手段により変換された前記位置関係ベクトルを前記クエリー画像の局所特徴点へ投票する投票手段と、
前記投票手段により投票された前記クエリー画像の局所特徴点への投票数に基づいて、前記クエリー画像が前記特定画像を含むかどうか判定する判定手段と、を有することを特徴とする。
【発明の効果】
【００１９】
本発明によれば、登録されている特定画像が複数の類似した局所特徴量を有している場合でも、高精度で、クエリー画像が特定画像を含むかどうか判定できるという効果がある。
【００２０】
本発明のその他の特徴及び利点は、添付図面を参照とした以下の説明により明らかになるであろう。尚、添付図面においては、同じ若しくは同様の構成には、同じ参照番号を付す。
【図面の簡単な説明】
【００２１】
添付図面は明細書に含まれ、その一部を構成し、本発明の実施形態を示し、その記述と共に本発明の原理を説明するために用いられる。
【図１】本発明の実施形態１に係る画像検出システムの構成例を説明するブロック図。
【図２】実施形態１に係る縮小画像の生成処理の一例を説明する図。
【図３】形状が同じで、スケールが異なっている画像から特徴点を抽出するときの例を説明する図。
【図４】実施形態１に係る画像検出装置における特定パターンの登録処理を説明するフローチャート。
【図５】実施形態１に係る画像検出装置において、クエリー画像が特定パターンを含むか否かを検出する処理を説明するフローチャート。
【図６】特定パターン及びクエリー画像の局所特徴点及び位置関係ベクトル及び投票結果を例示する図。
【図７】図６（Ｃ）の局所特徴点Ｑ１，Ｑ２，Ｑ３に対応する位置関係ベクトル及び投票先を図示した例を示す図。
【図８】本発明の実施形態２に係る画像検出装置における特定パターンの登録処理を説明するフローチャート。
【図９】実施形態２に係る画像検出装置における特定パターンの検出処理を説明するフローチャート。
【図１０】実施形態２に係る登録局所特徴量間の距離と類似の一例を説明する図。
【図１１】図６（Ｂ）で示すＳ４０３の処理結果に対して、実施形態２に係るＳ８０１及びＳ８０２の処理を行った結果を示す図。
【図１２】本発明の実施形態３に係る画像検出装置における特定パターンの登録処理を説明するフローチャート。
【図１３】実施形態３に係る登録局所特徴量情報の統合の一例を示す図。
【図１４】実施形態３に係る、登録したい特定パターンの一例を示す図。
【図１５】実施形態４に係る画像検出装置における特定パターンの登録処理を説明するフローチャート。
【図１６】実施形態４に係る画像検出装置の表示部に表示される不変性についての情報を受付ける画面例を示す図。
【図１７】クエリー局所特徴量ごとのマッチングした登録局所特徴量のリストの一例を示す図。
【発明を実施するための形態】
【００２２】
以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【００２３】
［実施形態１］
図１は、本発明の実施形態１に係る画像検出システムの構成例を説明するブロック図である。図１では、画像検出システムは、画像処理装置１００と画像検出装置２００とを有し、画像処理装置１００と画像検出装置２００はネットワーク１５０を介して相互にデータ通信可能に相互に接続されている。
【００２４】
画像処理装置１００は、ユーザインターフェース１０４、ＣＰＵ１０５、ＲＡＭ１０６、記憶部１０７、画像読取部１０８、画像出力部１０９、表示部１１０を備え、これらは制御部１０１を介して相互に通信可能に接続されている。制御部１０１は、更に画像処理装置１００全体を制御する装置制御部１０２と、画像データを処理する画像処理部１０３とを有する。ユーザインターフェース１０４は、例えばキーボード、ポインティングデバイス、その他の入出力装置を含み、各種の設定値、又は指定値を入力することができる。ＣＰＵ１０５は、記憶部１０７の初期プログラムを実行して、記憶部１０７に記憶されているプログラムを展開してＲＡＭ１０６に記憶する。ＲＡＭ１０６はプログラム格納用や、ワーク用のメインメモリとして使用される。
【００２５】
画像読取部１０８は、例えばスキャナを有し、紙文書等の原稿を読取ることにより、その文書画像に係る画像データを取得して出力する。制御部１０１は、画像読取部１０８から、その画像データを受取って記憶部１０７に記憶する。そして制御部１０１は、特定パターンの登録処理、又は特定パターンの検出処理を実行する際に、記憶部１０７に記憶された画像データをネットワーク１５０を介して画像検出装置２００に送信する。
【００２６】
制御部１０１は、記憶部１０７に記憶された画像データを表示部１１０に提供して表示部１１０に画像を表示する処理を実行する。また制御部１０１は同様に、記憶部１０７に記憶された画像データを画像出力部１０９に出力し、画像出力部１０９は、種々の形式で画像を出力する処理を実行する。例えば、画像出力部１０９は、画像データを記憶媒体に出力する処理を実行することができる。或いは、また画像出力部１０９は印刷機能を備え、紙媒体等の出力媒体（シート）に画像を印刷する処理を実行してもよい。
【００２７】
以上説明した画像処理装置１００の構成はあくまでも一例であり、画像読取部１０８及び画像出力部１０９のうち、画像出力部１０９を有さない構成の画像処理装置１００であってもよい。
【００２８】
次に画像検出装置２００の構成を説明する。
【００２９】
画像検出装置２００は、ユーザインターフェース２０６、ＣＰＵ２０７、ＲＡＭ２０８、記憶部２０９、表示部２１０を備え、これらは制御部２０１を介して相互に通信可能に接続されている。制御部２０１は更に画像検出装置２００全体を制御する装置制御部２０２と、画像の解析を行う画像解析部２０３とを有する。実施形態１に係る画像解析部２０３には、検索対象の特定パターン（特定画像）の登録処理を行う特定パターン登録部２０４と、画像データに含まれる特定パターンを検出する特定パターン検出部２０５とを有する。ユーザインターフェース２０６は、例えばキーボード、ポインティングデバイス、その他の入出力装置を有し、各種の設定値又は指定値を入力することができる。尚、実施形態１に係るユーザインターフェース２０６は、後述の特定パターン登録を受付ける機能、及び対応スケールの指定を受付ける機能を提供する。
【００３０】
ＣＰＵ２０７は、記憶部２０９の初期プログラムを実行して、記憶部２０９に記憶されているメインプログラムを展開してＲＡＭ２０８に記憶する。ＲＡＭ２０８はプログラム格納用や、ワーク用のメインメモリとして使用される。制御部２０１は、記憶部２０９に記憶された画像データを表示部２１０に提供して表示部２１０に画像を表示する処理を実行する。尚、上述の装置制御部２０２及び画像解析部２０３の機能及び処理は、本実施形態１では、ＣＰＵ２０７が記憶部２０９に記憶されているプログラムをＲＡＭ２０８に展開して実行することにより達成される。
【００３１】
制御部２０１は、画像処理装置１００から送信され、画像検出装置２００の記憶部２０９に保存された画像データを画像解析部２０３に提供する。画像解析部２０３は、ユーザインターフェース２０６を介して受け付けた各種の指定情報に基づいて、その画像データから特定パターンを検出する処理を実行する。或いはまた、ユーザインターフェース２０６を介して受付けた各種の指定情報は記憶部２０９やＲＡＭ２０８に保存され、画像解析部２０３は、保存された指定情報を読み出して画像データから特定パターンを検出する処理を実行する。更に、画像解析部２０３は、特定パターンの登録処理も実行する。
【００３２】
実施形態１に係る画像解析部２０３は、特定パターンを登録する際は、特定パターンの画像データから局所特徴量を算出して、記憶部２０９やＲＡＭ２０８に保持する。その際、後述する局所特徴量に付随した情報も記憶部２０９やＲＡＭ２０８に保持する。
【００３３】
実施形態１に係る画像解析部２０３は、特定パターンを検出するフェーズでは、画像データから局所特徴量を算出する。そして特定パターンを登録するフェーズで記憶部２０９やＲＡＭ２０８に保持した特定パターンの局所特徴量とのマッチングを行う。更に、その特定パターンの付随情報に基づく投票処理を行って、その画像データにおける特定パターンの有無を判定する。この詳細は後述する。
【００３４】
以上説明した画像検出装置２００の構成はあくまでも一例であり、実施形態１はこれに限らない。その他必要に応じてその他の構成を備えるものであってもよい。例えば、画像検出装置２００は、サーバ等のコンピュータ装置で実装することができるが、記憶部２０９や画像解析部２０３の機能は、クラウドと呼ばれるネットワーク１５０でつながるリモートの計算資源で実装する構成も考えられる。更に、画像処理装置１００が、画像検出装置２００の機能を包含する態様で画像検出装置２００を実装してもよい。
【００３５】
次に、拡大・縮小不変性を持たず、回転不変性だけを持つ局所特徴量（回転不変性局所特徴量）を算出する方法について説明する。画像データから局所特徴量を算出するために、画像解析部２０３は、画像データから輝度成分を抽出し、その抽出した輝度成分に基づいて輝度成分画像を生成する。
【００３６】
その輝度成分画像から、画像の回転があってもロバスト（ｒｏｂｕｓｔ）に抽出されるような局所的な特徴点（局所特徴点）を抽出する。この局所特徴点の抽出方法として、この実施形態１では、公知の手法であるＨａｒｒｉｓ作用素を用いる。具体的には、Ｈａｒｒｉｓ作用素を作用させて得られた出力画像上の画素について、その画素及びその画素の８近傍にある画素（合計９画素）の画素値を調べる。そして、その画素が局所的に最大になる（これら９画素の中で、その画素の画素値が最大になる）点を局所特徴点として抽出する。尚、このとき画素値が局所極大になったときでも、その画素値が閾値以下の場合は局所特徴点として抽出しないようにする。尚、局所特徴点を抽出可能な方法であれば、上述のＨａｒｒｉｓ作用素による特徴点抽出方法に限らず、どのような特徴点の抽出方法でも適用可能である。
【００３７】
続いて、抽出された局所特徴点の各々について、画像の回転があっても不変となるように定義された特徴量（局所特徴量）を算出する。この局所特徴量の算出方法として、実施形態１では、公知の手法であるＳＩＦＴ記述子を利用する。ＳＩＦＴ記述子は、局所特徴点の周囲のエッジのヒストグラムを算出し、最もヒストグラム度数が大きいエッジ方向を「正規化方向」として、その方向で特徴量を正規化して記述する手法である。局所特徴点が回転していても、正規化方向があるために、同一の特徴量が算出でき、回転不変性がある特徴量となっている。尚、回転不変性を持つ局所特徴量を算出できる方法であれば、上述したような特徴量の算出方法に限らず、どのような特徴量の算出方法でも適用可能である。回転不変局所特徴量においては、局所特徴量に付随する情報は正規化方向となる。
【００３８】
更に、拡大・縮小不変性及び回転不変性を持つ局所特徴量（拡大縮小及び回転不変の局所特徴量）を算出する方法について説明する。画像から局所特徴量を算出するために、画像解析部２０３は、前述したのと同様に、画像データから輝度成分を抽出し、その抽出した輝度成分に基づいて輝度成分画像を生成する。
【００３９】
次に、異なるスケールの画像集合であるスケールスペースの算出を行う。具体的には、輝度成分画像を倍率（縮小率）ｐに従って順次縮小することを繰り返し、オリジナルのサイズの画像から段階的に縮小した、オリジナルの画像を含めてｎ枚の縮小画像を生成する。ここで、倍率ｐ及び縮小画像の枚数ｎは、予め決められているものとする。
【００４０】
図２は、上述の縮小画像の生成処理の一例を説明する図である。
【００４１】
図２に示す例は、倍率ｐが「２の−（１／４）乗」、縮小画像の枚数ｎが「８」の場合を示す。もちろん、倍率ｐは必ずしも「２の−（１／４）乗」でなくとも良い。図２において、参照番号２０１は、輝度成分画像を示す。参照番号２０２は、その輝度成分画像２０１から倍率ｐに従って再帰的に４回の縮小処理を行って得られた縮小画像を示す。そして、参照番号２０３は、輝度成分画像２０１から倍率ｐに従って８回縮小された縮小画像を示す。
【００４２】
この例では、縮小画像２０２は、輝度成分画像２０１が１／２に縮小された画像で、縮小画像２０３は、輝度成分画像２０１が１／４に縮小された画像となる。尚、実施形態１では、画像を縮小する方法は、線形補間による縮小方法と、ガウシアンフィルタでぼかすことにより、疑似的に低解像度にする縮小方法とを組み合わせる。この方法は公知であるＳＩＦＴ特徴量における手法である。但し、画像の縮小は、その他の方法で行っても良い。
【００４３】
次に、スケールスペースの中から、画像の拡大・縮小・回転があってもロバスト（ｒｏｂｕｓｔ）に抽出されるような局所的な特徴点（局所特徴点）を抽出する。この局所特徴点の抽出方法として、実施形態１では、公知の手法であるＳＩＦＴ検出器を用いる。具体的には、まず、スケールスペースの隣接する縮小画像同士の差分画像を作成する。その際、縮小画像同士のスケールを合わせてから差分をとっても、或いはサブピクセル位置の画素値を推定することにより差分を取っても良い。図２の例では、１枚の元画像２０１と８枚の縮小画像から８枚の差分画像（Ｄ１〜Ｄ８）が生成される。その差分画像ＤＫ（位置）及び隣接する差分画像間（差分画像Ｄ（Ｋ−１）と差分画像ＤＫの間、差分画像ＤＫと差分画像Ｄ（Ｋ＋１）の間）の局所的に最大となる点を局所特徴点として抽出する。ここでＫは２〜７である。局所領域の範囲となる近傍画素は、まず、差分画像ＤＫの当該画素の近傍８画素である。また、１レベル大きい差分画像（差分画像Ｄ（Ｋ＋１））の当該画素に対応する画素及び周囲の８画素と、１レベル小さい差分画像（差分画像Ｄ（Ｋ−１））の当該画素に対応する画素及び周囲の８画素も、近傍画素となる。これらの合計である２６画素が近傍画素となる。ここで、当該画素に対応する画素とは、当該画素をスケールの異なる座標系に変換した際に、一番近い画素となる。こうして抽出された点は、スケール方向においてもコントラスト変化が極値となる点であり、スケール不変性のある特徴点となっている。
【００４４】
図３は、形状が同じで、スケールが異なっている画像から特徴点を抽出するときの例を説明する図である。
【００４５】
例えば、図２の輝度成分画像２０１が図３（Ａ）と（Ｂ）のように形状が同じで、スケールが異なっている場合であっても、特徴点を抽出するスケール及び位置は同じになる。共通して抽出される特徴点の例を図３（Ｃ）に示す。図３（Ａ）の画像において、図３（Ｃ）のスケールの縮小画像の×印の点で特徴点が抽出されたとする。この場合、図３（Ｂ）の画像においても、図３（Ｃ）のスケールの縮小画像の×印の点で特徴点が抽出される。このように元画像のスケールが異なる画像であっても、同じスケールの縮小画像の同じ点が局所特徴点となる。このため、元画像のスケールが異なる場合でも、同じ縮小画像の同じ位置から局所特徴量を算出することが可能となる。
【００４６】
続いて、抽出された局所特徴点の各々について、特徴点が抽出されたスケールの縮小画像において、画像が回転されても不変となるように定義された特徴量（局所特徴量）を算出する。この局所特徴量の算出方法は、前述の方法と同様であるため、その説明を省略する。
【００４７】
以上の方法により、拡大縮小及び回転不変である局所特徴量を算出することが可能となる。しかし、この拡大縮小及び回転不変の特徴量の算出は、回転不変である局所特徴量の場合に比べて、スケールスペースの算出、特徴探索範囲の広さのために、手法にもよるが、計算時間が数倍〜数十倍程度、増大する。尚、探索範囲の広さは、スケールスペース自体の広さと、近傍領域の広さ（実施形態１では、９画素が２６画素になる）の２種類のファクタが存在する。拡大縮小及び回転不変の局所特徴量では、局所特徴量に付随する情報は、正規化方向と、どのスケールスペースから特徴量を抽出したかを示す情報であるスケールレベルを含む。
【００４８】
次に実施形態１に係る処理の流れを図４及び図５を参照して説明する。
【００４９】
図４は、実施形態１に係る画像検出装置２００における特定パターンの登録処理を説明するフローチャートである。この処理は、ユーザがユーザインターフェース２０６を介して、特定パターンの登録指示を入力することにより開始される。尚、この処理は、ＣＰＵ２０７が記憶部２０９に記憶されているプログラムをＲＡＭ２０８に展開して実行することにより達成される。
【００５０】
まずＳ４０１でＣＰＵ２０７は画像解析部２０３の特定パターン登録部２０４として機能し、ユーザインターフェース２０６を介して、ユーザから特定パターンの登録を受け付ける。ここで、特定パターンは、企業ロゴ、「Confidential」のような機密性の高い文字列のパターンが想定される。また、複写が制約されている個人番号カードの裏面のような機密性が高い定型フォーマットのパターン、新製品のロゴ、新製品デザイン等であっても良い。この特定パターンの登録は、記憶部２０９に保持されている画像や画像処理装置１００の記憶部１０７に保持されている画像を表示部２１０に表示し、その表示された画像からユーザが所望の画像を選択することにより行う。記憶部１０７に記憶されている画像の場合は、例えばＳＭＢなど公知の技術を利用し、ネットワーク１５０を介して、画像処理装置１００から取得する。このとき、表示部２１０に表示された画像の中に登録したい特定パターンが存在しない場合は、ユーザは適宜、記憶部１０７や記憶部２０９に画像を追加する。例えば、画像処理装置１００で、登録を希望する特定パターンが載った原稿を画像読取部１０８で読み取って記憶部１０７に格納する。こうして特定パターンの指定を受け付けた後には、その特定パターンを所定の解像度で記憶部２０９に保存する。この際、画像内の白紙部分は除去して、特定パターンが存在する部分の画像だけを保存する。またユーザが登録したい特定パターンが画像の一部だけの場合には、表示部２１０にユーザが指定した画像を表示し、実際に登録したい領域の指示を、ユーザインターフェース２０６を介して受け付ける。そして、その領域だけをトリミングして記憶部２０９に保存するようにしても良い。
【００５１】
次にＳ４０２に進みＣＰＵ２０７は特定パターン登録部２０４として機能し、Ｓ４０１で記憶部２０９に保存した特定パターンの局所特徴点を算出する。そして、各局所特徴点について局所特徴量を算出する。ここでは、算出した局所特徴点を登録局所特徴点、局所特徴量を登録局所特徴量と呼ぶこととする。更に、これら登録局所特徴点及び登録局所特徴量の情報を、登録局所特徴量情報として記憶部２０９に保存する。尚、特定パターンの局所特徴点の検出時に、記憶部２０９へのアクセスによる遅延を防止するために、特定パターンを予めＲＡＭ２０８にも保持しても良い。ここで算出する局所特徴点及び局所特徴量は、任意の公知の局所特徴点及び局所特徴量の算出技術を利用できる。このとき、回転不変性を持つ局所特徴量の場合には、局所特徴量の正規化方向に関する情報についても、登録局所特徴量情報の一部として記憶部２０９或いはＲＡＭ２０８に保存する。回転不変性がない局所特徴量の場合にも、局所特徴量の正規化方向をデフォルトの方向（例えば０度）として同様に保存する。また、拡大・縮小不変性のある局所特徴量の場合は、局所特徴量のスケールに関する情報も、登録局所特徴量情報の一部として記憶部２０９或いはＲＡＭ２０８に保存する。一方、拡大・縮小不変性がない局所特徴量の場合も、デフォルトのスケール情報（例えば１００％）として同様に保存する。
【００５２】
ここでの局所特徴量の計算は、例えば前述の図６（Ａ）で説明した通りである。例えば図６（Ａ）の特定パターンの場合、局所特徴点は、例えば、コーナー点Ｐ１，Ｐ２，Ｐ３となる。そして、これらＰ１，Ｐ２，Ｐ３の各点で局所特徴量を計算する。このとき、回転不変性及び拡大・縮小不変性のある局所特徴量を計算すると、３つの局所特徴量はどれも類似した局所特徴量となる。
【００５３】
次にＳ４０３に進みＣＰＵ２０７は特定パターン登録部２０４として機能し、Ｓ４０２で記憶した登録局所特徴量情報を利用して、全ての局所特徴点に対応する位置関係ベクトルを算出する。この位置関係ベクトルは、局所特徴点と、特定パターンの基準点との関係を示す。この場合、基準点は、特定パターンの重心や中心等とすることが考えられるが、１つの特定パターンにつき１つの任意の点を選ぶことが可能である。そして最後に、それら算出した位置関係ベクトルを、登録局所特徴量情報の一部として記憶部２０９に保存する。尚、特定パターンの検出時に、記憶部２０９へのアクセスによる遅延を防止するために、その特定パターンを予めＲＡＭ２０８にも保持しても良い。
【００５４】
この位置関係ベクトルの算出は図６（Ｂ）を参照して前述した通りである。図６（Ｂ）において、局所特徴点Ｐ１，Ｐ２，Ｐ３に対応する位置関係ベクトルＶ１，Ｖ２，Ｖ３を示している。この例において、基準点は、特定パターンの中心付近のｂである。
【００５５】
以上説明した処理により、特定パターンの登録処理を行う。
【００５６】
図５は、実施形態１に係る画像検出装置２００において、クエリー画像が特定パターンを含むか否かを検出する処理を説明するフローチャートである。この処理は、例えば画像処理装置１００から画像データ（クエリー画像）が画像検出装置２００に送信されることにより開始される。尚、この処理は、ＣＰＵ２０７が記憶部２０９に記憶されているプログラムをＲＡＭ２０８に展開して実行することにより達成される。
【００５７】
まずＳ５０１でＣＰＵ２０７は、画像処理装置１００から送信されて画像検出装置２００の記憶部２０９に保存された画像データを画像解析部２０３に提供する。この画像データは、画像処理装置１００の画像読取部１０８で読み取られたものでも、画像処置装置１００がネットワーク１５０を介して取得したＰＤＬデータを画像処理部１０３でレンダリングして生成した画像であっても良い。ここでは、この画像データをクエリー画像と呼ぶこととする。
【００５８】
次にＳ５０２に進みＣＰＵ２０７は特定パターン検出部２０５として機能し、そのクエリー画像から、前述のＳ４０２と同じ方法で局所特徴点及び局所特徴量を取得する。ここで、その取得した局所特徴点をクエリー局所特徴点、局所特徴量をクエリー局所特徴量と呼ぶ。また、Ｓ４０２と同様の方法で、Ｓ５０２においても局所特徴量の正規化方向及びスケールに関する情報を取得する。これら情報をまとめてクエリー局所特徴量情報と呼ぶこととする。
【００５９】
前述の図６（Ｃ）は、このクエリー画像の一例を示しており、コーナー点Ｑ１，Ｑ２，Ｑ３の各点で計算した局所特徴量がクエリー局所特徴量となる。ここで局所特徴量として、回転不変性及び拡大・縮小不変性のある局所特徴量を利用すると、どれも前述のＰ１，Ｐ２，Ｐ３の各点の局所特徴量と類似した局所特徴量となる。
【００６０】
次にＳ５０３に進みＣＰＵ２０７は特定パターン検出部２０５として機能し、記憶部２０９又はＲＡＭ２０８に保持されている特定パターンの登録局所特徴量情報を取得する。そして、Ｓ５０２で算出したクエリー局所特徴量情報と、登録局所特徴量情報とのマッチング判定処理を行う。
【００６１】
このマッチング判定処理は、まずクエリ―局所特徴量と登録局所特徴量との間で、総当たりで特徴量間の距離を算出する。この距離は、任意の距離尺度を利用することが可能である。例えば、局所特徴量が２値のベクトルである場合（１２８次元１２８ビットのベクトル等）はハミング距離、多値のベクトルの場合（１２８次元１２８バイトのベクトル等）である場合はユークリッド距離を用いて行う。こうして距離を算出した後、クエリー局所特徴量ごとに、距離が所定の閾値よりも短い登録局所特徴量の登録局所特徴量情報をリストとして保持する。このとき、所定の閾値よりも短い複数の登録局所特徴量があるときは、それら全ての登録局所特徴量情報をリストとして保持する。尚、直接的に総当たりで距離を求めず、登録局所特徴量のインデクシングを予め行っておき、そのインデックスを利用して、距離を求めるようにしてもよい。ここで最も距離が短い局所特徴量だけでなく、所定の閾値よりも短い登録局所特徴量の全ての情報をリストとして保持するのは、特定パターンに類似した登録局所特徴量が含まれている場合は、正しい対応とならない場合があるためである。ここで「正しい対応」とは、登録されている特定パターンと、クエリー画像内の特定パターンの対応する局所特徴点の局所特徴量同士が、ペアとなることである。特定パターンにほぼ同等の局所特徴量が含まれる場合には、ノイズ等により、最も距離が短い局所特徴量が正しい対応とならない。そこで、「正しい対応」である可能性がある登録局所特徴量情報をリストとして保持するようにする。
【００６２】
図１７は、クエリー局所特徴量ごとのマッチングした登録局所特徴量のリストの一例を示す図である。
【００６３】
図１７（Ａ）は、クエリー局所特徴量ＱＦ１，ＱＦ２，ＱＦ３，ＱＦ４と、登録局所特徴量ＲＦ１，ＲＦ２，ＲＦ３，ＲＦ４との間の距離を示している。ここで、距離の閾値を「２」とした場合、即ち、距離が「２」以下の登録局所特徴量を抽出して作成したリストの一例を図１７（Ｂ）に示す。図１７（Ｂ）で、クエリー局所特徴量ＱＦ１，ＱＦ２，ＱＦ３，ＱＦ４のそれぞれに対応するクエリー局所特徴量情報は、それぞれＱＦＩ１，ＱＦＩ２，ＱＦＩ３，ＱＦＩ４である。また、登録局所特徴量ＲＦ１，ＲＦ２，ＲＦ３，ＲＦ４のそれぞれに対応する、登録局所特徴量情報はそれぞれ、ＲＦＩ１，ＲＦＩ２，ＲＦＩ３，ＲＦＩ４である。
【００６４】
ここで距離の閾値は「２」であるため、例えば、クエリー局所特徴量ＱＦ１は、登録局所特徴量ＲＦ１，ＲＦ２，ＲＦ３とマッチングする。そこで、クエリー局所特徴量情報ＱＦＩ１に対応する登録局所特徴量情報リストとして、ＲＦＩ１，ＲＦＩ２，ＲＦＩ３が保持される。同様に、クエリー局所特徴量情報ＱＦＩ２に対応して登録局所特徴量情報ＲＦＩ１，ＲＦＩ２，ＲＦＩ３が保持される。またクエリー局所特徴量情報ＱＦＩ３に対応して登録局所特徴量情報ＲＦＩ２，ＲＦＩ３が保持され、クエリー局所特徴量情報ＱＦＩ４に対応して登録局所特徴量情報ＲＦＩ４が保持される。
【００６５】
前述の図６（Ｃ）の例では、局所特徴点Ｑ１のクエリー局所特徴量情報に対応する登録局所特徴量情報は、図６（Ｂ）の局所特徴点Ｐ１，Ｐ２，Ｐ３から算出されたものとなる。これは、Ｑ１とＰ１〜Ｐ３の周囲の形状が回転不変性及び拡大・縮小不変性を考慮した場合に類似しているためである。同様に、局所特徴点Ｑ２及びＱ３のクエリー局所特徴量情報に対応する登録局所特徴量情報も、図６（Ｂ）のＰ１，Ｐ２，Ｐ３から算出されたものとなる。
【００６６】
次にＳ５０４に進みＣＰＵ２０７は特定パターン検出部２０５として機能し、未処理のクエリー局所特徴量情報を１つ選択し、その選択したクエリー局所特徴量情報に関連付けられたＳ５０３で生成した登録局所特徴量情報の数を判定する。ここでリストに、複数の登録局所特徴量情報が存在している場合はＳ５０５に進むが、リストに１つの登録局所特徴量情報のみが存在する場合はＳ５０７に進む。またリストに登録局所特徴量情報が存在していない場合は５０９に進む。
【００６７】
Ｓ５０５でＣＰＵ２０７は特定パターン検出部２０５として機能し、位置関係ベクトルの登録局所特徴量の座標系からクエリー局所特徴量の座標系へ変換する。まず、登録局所特徴量情報のリストから１つの登録局所特徴量情報を選択する。そして、その選択した登録局所特徴量情報とクエリー局所特徴量情報に含まれる正規化方向及びスケールに関する情報から、登録局所特徴量の座標系からクエリー局所特徴量の座標系へ変換する、回転行列及び拡大・縮小行列（変換行列）を算出する。この変換行列の算出は、公知の方法を利用すればよい。次に、この変換行列を用いて、選択した登録局所特徴量情報に含まれる位置関係ベクトルのクエリー特徴量情報の座標系へ変換する。そして、この変換した位置関係ベクトルを、クエリー局所特徴量情報の一部として保持する。この変換処理を、リストに保持されている登録局所特徴量情報の全てに対して行い、リストのアイテムの数だけの変換後の位置関係ベクトルを生成する。
【００６８】
次にＳ５０６に進みＣＰＵ２０７は特定パターン検出部２０５として機能し、変換後の位置関係ベクトル群のクエリー画像への投票処理を行う。具体的には、クエリー局所特徴量情報に含まれるクエリー局所特徴点を原点として、Ｓ５０５で変換処理を行った全ての位置関係ベクトルの投票を行ってＳ５０９に進む。ここでは、局所特徴量同士の距離が最も短い登録局所特徴量だけではなく、複数の登録局所特徴量の投票を行う。そのため、その中に１つでも「正しい対応」の登録局所特徴量とクエリー局所特徴量の組み合わせがあった場合は、クエリー画像内の特定パターンの基準点に正しく投票される。クエリー画像内の特定パターンの基準点には、複数のクエリ―局所特徴点からの投票が行われる。一方、「正しい対応」では無かった投票については、クエリー局所特徴点の周囲に投票されるが規則性がなく投票されるため、投票が集中する可能性は低い。そのため、特定パターンの基準点にのみ投票が集中する可能性が高く、それ以外の場所に投票が集中する可能性が低いため、特定パターンを誤検出する可能性は低い。よって、複数の登録局所特徴量情報に対応した位置関係ベクトルを投票することにより、類似した局所特徴量を持つ特定パターンの検出精度を向上させることができる。
【００６９】
ここで、投票範囲は様々な誤差に対応するため、一定の大きさを持って投票する。例えば、半径１０ピクセルの範囲に、分散１０の正規分布の値を投票値として投票する。こうすることにより、局所特徴点の検出誤差、位置関係ベクトルの座標変換のための回転行列や拡大・縮小行列の誤差等に対応することが可能となる。尚、投票値は投票の中心点からの距離に応じて減少させても良いし、或いは同じ値を投票するようにしても良い。また、マッチングした局所特徴量同士の距離に応じて重みをつけても良い。更に、拡大・縮小行列の誤差が大きい場合等には、投票する範囲を楕円形等の円形ではない形にしても良い。例えば、変換後の位置関係ベクトルの方向を楕円形の長軸として、投票する範囲を決めてもよい。回転行列の誤差が大きいときは、回転行列の回転方向を楕円形の長軸として、投票する範囲を決めてもよい。また、スケール方向の誤差が大きいときは、スケール方向を楕円形の長軸として、投票する範囲を決めてもよい。
【００７０】
図７は、図６（Ｃ）の局所特徴点Ｑ１，Ｑ２，Ｑ３に対応する位置関係ベクトル及び投票先を図示した例を示す図である。
【００７１】
局所特徴点Ｑ１は、位置関係ベクトルとして、図６（Ｂ）のＶ１，Ｖ２，Ｖ３と対応している。位置関係ベクトルＶ１をＱ１から算出される局所特徴量の座標系に変換し、Ｑ１を原点として図示したのがＶ１＿Ｑ１である。同様に位置関係ベクトルＶ２，Ｖ３を変換して図示したのが、Ｖ２＿Ｑ１、Ｖ３＿Ｑ１である。変換後の位置関係ベクトルＶ１＿Ｑ１，Ｖ２＿Ｑ１，Ｖ３＿Ｑ１による投票先は、それぞれ、Ｒ，Ｖ２＿Ｒ１，Ｖ３＿Ｒ１となる。ここでは、Ｖ１＿Ｑ１による投票が、特定パターンの基準点ｂが存在する箇所Ｒへの投票となっている。同様に、局所特徴点Ｑ２及びＱ３に対応する位置関係ベクトルＶ１，Ｖ２，Ｖ３を、Ｑ２及びＱ３から計算されるクエリー局所特徴量の座標系に変換したのが、Ｖ１＿Ｑ２，Ｖ２＿Ｑ２，Ｖ３＿Ｑ２，Ｖ１＿Ｑ３，Ｖ２＿Ｑ３，Ｖ３＿Ｑ３である。それぞれの投票先は、Ｖ１＿Ｒ２，Ｒ，Ｖ３＿Ｒ２，Ｖ１＿Ｒ３，Ｖ２＿Ｒ３、Ｒである。Ｖ２＿Ｑ２及びＶ３＿Ｑ３による投票が、特定パターンの基準点ｂが存在する箇所Ｒへの投票となっている。ここでは投票は９回行われているが、そのうち、３回の投票が基準点ｂが存在する箇所Ｒへの投票となっている。それ以外の箇所への投票は１回のみであり、安定して基準点への投票が行えていることが分かる。
【００７２】
一方、Ｓ５０７でＣＰＵ２０７は特定パターン検出部２０５として機能し、Ｓ５０５と同様にして、位置関係ベクトルの登録局所特徴量の座標系からクエリー局所特徴量の座標系へ変換する。但し、この場合は登録局所特徴量情報とクエリー局所特徴量情報が１対１に対応しているので、この１つの登録局所特徴量に含まれる位置関係ベクトルだけを登録局所特徴量の座標系からクエリー局所特徴量の座標系へ変換する。次にＳ５０８に進みＣＰＵ２０７は特定パターン検出部２０５として機能し、変換後の位置関係ベクトルのクエリー画像への投票処理を行う。この投票方法はＳ５０６と同様であるが、Ｓ５０７で変換した１つの位置関係ベクトルの投票だけを行ってＳ５０９に進む。
【００７３】
Ｓ５０９でＣＰＵ２０７は特定パターン検出部２０５として機能し、前述のリストに未処理のクエリー局所特徴量情報が有るかどうか判定し、未処理のクエリー局所特徴量情報があった場合は再度Ｓ５０４に進み、前述の処理を実施する。ここで未処理のクエリー局所特徴量情報がないと判定するとＳ５１０に進む。Ｓ５１０でＣＰＵ２０７は特定パターン検出部２０５として機能し、クエリー画像に特定パターンが含まれているかの判定を、Ｓ５０６或いはＳ５０８で行った投票結果に基づいて行う。まず、投票が行われたクエリー画像内で、最も得票数が高かった点を検出し、その検出した点の投票数が所定の閾値を超えていれば、その部分に特定パターンが存在していると判定する。一方、その所定の閾値を超えていなければ、その部分に特定パターンが存在していないと判定する。尚、投票数については、特定パターンの登録局所特徴量の個数により、正規化を行っても良い。
【００７４】
以上説明した処理により、クエリー画像に含まれている特定パターンを検出することが可能となる。
【００７５】
尚、複数の特定パターンが登録されている場合には、図５に示す特定パターンの検出処理を、各特定パターンごとに実施すればよい。但し、Ｓ５０１及びＳ５０２は、共通して実施することが可能である。
【００７６】
以上説明したように実施形態１によれば、登録されている特定パターンから複数の類似した局所特徴量が抽出されている場合であっても、高い精度で、クエリー画像から特定パターンを検出することができる。
【００７７】
［実施形態２］
以下、本発明の実施形態２を説明する。実施形態２では、特定パターンを登録する際、その特定パターンの局所特徴量に類似する、登録済の類似局所特徴量を求め、その特定パターンの局所特徴量の位置関係ベクトルだけでなく、類似した局所特徴量と対応した位置関係ベクトルも登録する。そして、クエリー画像の特定パターンを検出する際は、距離が最も短い局所特徴量のみを求めて特定パターンの有無を判定する。従って実施形態１との差異は、図４及び図５のフローチャートに対応する図８及び図９のフローチャートを参照して説明する。尚、実施形態２に係る画像処理装置１００及び画像検出装置２００のハードウェア構成は、前述の実施形態１と同様であるため、その説明を省略する。
【００７８】
図８は、本発明の実施形態２に係る画像検出装置２００における特定パターンの登録処理を説明するフローチャートである。尚、この処理は、ＣＰＵ２０７が記憶部２０９に記憶されているプログラムをＲＡＭ２０８に展開して実行することにより達成される。図８に示す処理は、図４のフローチャートと同様に、ユーザがユーザインターフェース２０６で、ユーザから特定パターンを登録する指示を受け付けることにより開始される。尚、図８のＳ４０１〜Ｓ４０３は、図４のＳ４０１〜Ｓ４０３と同様であるため、同じ参照番号を付して、その説明を省略する。
【００７９】
Ｓ８０１でＣＰＵ２０７は特定パターン登録部２０４として機能し、登録局所特徴量同士のマッチング処理を行う。このマッチング処理は、まず登録局所特徴量間で、総当たりで特徴間の距離を求める。この距離は、前述の実施形態１と同様に、任意の距離尺度を利用することが可能である。この距離を算出した後、登録局所特徴量ごとに、その距離が所定の閾値よりも短く、類似した登録局所特徴量の情報を保持する。
【００８０】
図１０は、実施形態２に係る登録局所特徴量間の距離と類似の一例を説明する図である。
【００８１】
図１０（Ａ）は、図示のために局所特徴量を２次元空間にマッピングした図である。Ｆ１，Ｆ２，Ｆ３，Ｆ４は局所特徴量を示す。これらの局所特徴量は、局所特徴点Ｅ１，Ｅ２，Ｅ３，Ｅ４から算出されたものである。ここで局所特徴量Ｆ１とＦ２の距離は「２」であり、局所特徴量Ｆ２とＦ３の距離は「１」であり、局所特徴量Ｆ３とＦ４の距離は「２」である。これら局所特徴量Ｆ１，Ｆ２，Ｆ３，Ｆ４間の距離を算出すると、図１０（Ｂ）に示す関係となる。ここで、類似しているとみなす閾値を「２」とすると、それぞれの局所特徴量に対応する類似局所特徴量は図１０（Ｃ）に示すものとなる。ここで局所特徴量Ｆ１の類似局所特徴量がＦ２であり、Ｆ２の類似局所特徴量がＦ１，Ｆ３であり、Ｆ３の類似局所特徴量がＦ２，Ｆ４であり、Ｆ４の類似局所特徴量がＦ３である。
【００８２】
そしてＳ８０２に進みＣＰＵ２０７は特定パターン登録部２０４として機能し、登録局所特徴量ごとに追加の位置関係ベクトルを登録局所特徴量情報に追加する。ここでは登録局所特徴量ごとに、Ｓ４０３で求めた位置関係ベクトルだけでなく、Ｓ８０１で求めた類似した局所特徴量と対応した位置関係ベクトルについても、その登録局所特徴量に対応する位置関係ベクトルとする。そして、この追加の位置関係ベクトルについての情報も、登録局所特徴量情報の一部として記憶部２０９に保存する。尚、特定パターンの検出時に、記憶部２０９へのアクセスによる遅延を防止するために、予めＲＡＭ２０８にも保持するようにしておいても良い。
【００８３】
図１０（Ｃ）は、Ｓ８０２における位置関係ベクトルの追加の関連付けを例示する図である。ここで、局所特徴量Ｆ１，Ｆ２，Ｆ３，Ｆ４に対応する位置関係ベクトルは、それぞれＧ１，Ｇ２，Ｇ３，Ｇ４となっている。ここで局所特徴量Ｆ１は局所特徴量Ｆ２と類似しているため、Ｆ２の位置関係ベクトルＧ２が追加される。ここでＧ２は、局所特徴量Ｆ２の座標系であるため、それを局所特徴点Ｅ１から算出された局所特徴量Ｆ１の座標系に変換する。この変換は、実施形態１と同様に、局所特徴量Ｆ１及びＦ２の正規化方向及びスケールに関する情報から、局所特徴量Ｆ２の座標系から局所特徴量Ｆ１の座標系へ変換する変換行列を算出して行う。そして変換後の位置関係ベクトルをＧ２＿Ｅ１と定義する。同様に局所特徴量Ｆ２に追加される位置関係ベクトルはＧ１，Ｇ３となり、追加される位置関係ベクトルはＧ１＿Ｅ２，Ｇ３＿Ｅ２となる。また局所特徴量Ｆ３に追加される位置関係ベクトルはＧ２，Ｇ４であり、追加される座標変換後の位置関係ベクトルはＧ２＿Ｅ３，Ｇ４＿Ｅ３となる。更に、局所特徴量Ｆ４に追加される位置関係ベクトルはＧ３となり、追加される座標変換後の位置関係ベクトルはＧ３＿Ｅ４となる。
【００８４】
また図１１は、図６（Ｂ）で示すＳ４０３の処理結果に対して、Ｓ８０１及びＳ８０２の処理を行った結果を示す図である。
【００８５】
局所特徴量が回転不変性を持つ場合は、局所特徴点Ｐ１，Ｐ２，Ｐ３から算出される局所特徴量は全て類似している。そのため、局所特徴点Ｐ１，Ｐ２，Ｐ３の全てに位置関係ベクトルＶ１，Ｖ２，Ｖ３が対応づけられ、図１１で示す対応関係となる。ここで、Ｖ２＿Ｐ１は、位置関係ベクトルＶ２を局所特徴点Ｐ１から算出される局所特徴量の座標系に変換したものである。同様に、Ｖ３＿Ｐ１，Ｖ１＿Ｐ２，Ｖ３＿Ｐ２，Ｖ１＿Ｐ３，Ｖ２＿Ｐ３も、対応先の局所特徴量の座標系に変換したものである。
【００８６】
以上説明した処理により、局所特徴量と１つ以上の位置関係ベクトルが対応付けられた状態で特定パターンの登録処理を行うことが可能となる。
【００８７】
図９は、実施形態２に係る画像検出装置２００における特定パターンの検出処理を説明するフローチャートである。図９のフローチャートは、実施形態１に係る図５と同様に、画像処理装置１００からクエリー画像が画像検出装置２００に送信されることにより起動される。尚、この処理は、ＣＰＵ２０７が記憶部２０９に記憶されているプログラムをＲＡＭ２０８に展開して実行することにより達成される。ここで、図９のＳ５０１及びＳ５０２は、図５のＳ５０１及びＳ５０２と同様であるため、その説明を省略する。
【００８８】
Ｓ９０１でＣＰＵ２０７は特定パターン検出部２０５として機能し、記憶部２０９又はＲＡＭ２０８に保持されている特定パターンの登録局所特徴量情報を取得する。そして、Ｓ５０２で算出したクエリー局所特徴量と、登録局所特徴量とのマッチング処理を行う。このマッチング処理は、まずクエリ―局所特徴量と登録局所特徴量の間で、特徴量間の距離を算出する。この距離は、任意の距離尺度を利用することが可能である。そして、この距離を算出した後、クエリー局所特徴量ごとに、最も短い登録局所特徴量との距離が所定の閾値よりも小さかった場合に、その登録局所特徴量の登録局所特徴量情報を保持する。ここでは実施形態１とは異なり、０個もしくは１個の登録局所特徴量の情報だけを保持する。登録局所特徴量情報には、実施形態１とは異なり、類似した局所特徴量の位置関係ベクトルも含まれる。そのため、局所特徴量自体のマッチングが間違っていたとしても、正しい位置関係ベクトルが含まれている可能性が高い。そのため、最も短い登録局所特徴量との距離が、所定の閾値よりも小さい場合にのみ、登録局所特徴量情報を保持すれば良いことになる。このように実施形態２では、最も短い距離の局所特徴量のみを求めれば良いため、木構造やハッシュ構造等を利用した近似最近傍探索と組み合わせた高速化も可能となる。また、近似最近傍探索が「近似」であるために、真の最も短い距離の局所特徴量が検出できなかった場合でも、類似した登録局所特徴量は、真の最も短い距離の位置関係ベクトルを保持している可能性が高いため、性能が低下しづらい。
【００８９】
図６（Ｃ）の例では、局所特徴点Ｑ１のクエリー局所特徴量情報に対応する登録局所特徴量情報が、図６（Ｂ）の局所特徴点Ｐ１，Ｐ２，Ｐ３から算出されたもののどれであったとしても、座標系の差を除いて対応する位置関係ベクトル群は変わらない。これは、図１１で示したように、局所特徴点Ｐ１，Ｐ２，Ｐ３の全てに座標系を変換した位置関係ベクトルＶ１，Ｖ２，Ｖ３が対応づけられているためである。局所特徴点Ｑ２及びＱ３についても同様である。
【００９０】
次にＳ９０２に進みＣＰＵ２０７は特定パターン検出部２０５として機能し、未処理のクエリー局所特徴量情報を１つ選択し、その選択したクエリー局所特徴量情報に関連付けられた、Ｓ５０３で記憶した登録局所特徴量情報があるかどうか判定する。ここで登録局所特徴量情報があると判定するとＳ９０３に進み、そうでないときはＳ５０９に進む。
【００９１】
ＳＳ９０３でＣＰＵ２０７は特定パターン検出部２０５として機能し、登録局所特徴量の位置関係ベクトルをクエリー局所特徴量の座標系へ変換する。ここではまず、登録局所特徴量情報とクエリー局所特徴量情報に含まれる正規化方向及びスケールに関する情報から、登録局所特徴量の座標系からクエリー局所特徴量の座標系へ変換する、回転行列及び拡大・縮小行列（変換行列）を算出する。この変換行列の算出は、公知の方法を利用すればよい。次に、この変換行列を用いて、登録局所特徴量情報に含まれる全ての位置関係ベクトルを、クエリー局所特徴量の座標系へ変換する。この変換した全ての位置関係ベクトルを、クエリー局所特徴量情報の一部として保持する。
【００９２】
次にＳ９０４に進みＣＰＵ２０７は特定パターン検出部２０５として機能し、変換後の位置関係ベクトル群のクエリー画像への投票処理を行う。具体的には、クエリー局所特徴量情報に含まれるクエリー局所特徴点を原点として、Ｓ９０３で変換処理を行った全ての位置関係ベクトルの投票を行う。ここでは、類似した局所特徴量を持つ位置関係ベクトル全ての投票を行うため、その中に１つでも位置関係ベクトルとクエリー局所特徴点の正しい組み合わせがあった場合には、クエリー画像内の特定パターンの基準点に正しく投票される。こうしてクエリー画像内の特定パターンの基準点には、複数のクエリ―局所特徴点からの投票が行われる。一方、正しい組み合わせでは無かった投票については、クエリー局所特徴点の周囲に投票されるが、規則性がなく投票されるため、投票が集中する可能性は低い。こうして特定パターンの基準点にのみ投票が集中する可能性が高く、それ以外の場所に投票が集中する可能性が低いため、特定パターンを誤検出する可能性は低くなる。よって、類似した局所特徴量を持つ位置関係ベクトルの全てを投票することにより、類似した局所特徴量を持つ特定パターンの検出精度を向上させることが可能となる。ここで、投票範囲や投票値については、実施形態１と同様である。
【００９３】
実施形態２においても、図７は、図６（Ｃ）の局所特徴点Ｑ１，Ｑ２，Ｑ３に対応する位置関係ベクトル及び投票先を図示した例となる。但し、位置関係ベクトルの求まり方が異なる。
【００９４】
続く、図９のＳ５０９及びＳ５１０の処理は、前述の図５のＳ５０９及びＳ５１０と同様であるため、その説明を省略する。但し、Ｓ５０９でＹＥＳであった場合に進む先が、Ｓ９０２となる点が、前述の図５と相違している。
【００９５】
以上説明した処理により、クエリー画像に含まれる特定パターンを検出することが可能となる。
【００９６】
尚、複数の特定パターンが登録されている場合には、図９の特定パターンの検出処理を各特定パターンごとに実施すればよい。但し、Ｓ５０１及びＳ５０２は、共通して実施することが可能である。
【００９７】
以上説明したように実施形態２によれば、登録されている特定パターンから複数の類似した局所特徴量が抽出されている場合であっても、高い精度で、クエリー画像から特定パターンを検出できる。更に、近似最近傍探索の適用が可能になるため、高速に検出することが可能になる。また、近似最近傍探索を利用した際に、最近傍が探索できなかった場合であっても、精度低下がしづらい仕組みとなっている。
【００９８】
［実施形態３］
以下、本発明の実施形態３を説明する。実施形態３では、特定パターンを登録する際、その特定パターンの局所特徴量に類似する、登録済の類似局所特徴量を求め、その特定パターンの局所特徴量の位置関係ベクトルだけでなく、類似した局所特徴量と対応した位置関係ベクトルも登録する。そして、類似する登録局所特徴量を統合する。従って実施形態２との差異を、図８のフローチャートに対応する図１２のフローチャートを参照して説明する。尚、実施形態３に係る画像処理装置１００及び画像検出装置２００のハードウェア構成は、前述の実施形態１と同様であるため、その説明を省略する。
【００９９】
図１２は、本発明の実施形態３に係る画像検出装置２００における特定パターンの登録処理を説明するフローチャートである。この処理は、図８と同様に、ユーザインターフェース２０６を介して、ユーザから特定パターンの登録指示を受け付けることにより開始される。尚、この処理は、ＣＰＵ２０７が記憶部２０９に記憶されているプログラムをＲＡＭ２０８に展開して実行することにより達成される。尚、図１２のＳ４０１〜Ｓ４０３は、図４及びＳ４０１〜Ｓ４０３と同様であり、また図１２のＳ８０１及びＳ８０２は、図８のＳ８０１及びＳ８０２と同様であるため、それらの説明を省略する。
【０１００】
Ｓ１２０１でＣＰＵ２０７は特定パターン登録部２０４として機能し、登録局所特徴量同士の統合処理を行う。ここでは、共通した位置関係ベクトルを持つ登録局所特徴量情報を統合して、１つの登録局所特徴量情報にする。ここでは、Ｓ８０２で行った位置関係ベクトルの対応付け結果を、位置関係ベクトルの座標系を揃えて比較し、共通した位置関係ベクトルを持つ、登録局所特徴量情報の統合を行う。この統合処理は、まず、登録局所特徴量群の共通した登録局所特徴量を求める。共通した登録局所特徴量は、例えば、登録局所特徴量群の重心である。尚、重心を利用せず、代表登録局所特徴量を選択したり、公知の別の統計量を求めることにより、共通の登録局所特徴量としたりしても構わない。例えば、登録局所特徴量が２値の局所特徴量であった場合には、次元ごとに多数決を採ることにより、次元ごとに「０」であるか「１」であるかを決定する。局所特徴点及び座標系に関する情報（正規化方向及びスケールに関する情報）については、１つの登録局所特徴量情報の情報を利用する。位置関係ベクトルについては、選択された座標系に関する情報を利用して、統一された座標系とする。
【０１０１】
図１３は、実施形態３に係る登録局所特徴量情報の統合の一例を示す図である。
【０１０２】
図１３（Ａ）は、Ｓ８０２で位置関係ベクトルの対応づけが行われた結果の一例を示す。ここでは５個の登録局所特徴量情報があり、登録局所特徴量Ｆ１〜Ｆ５は、それぞれ「類似局所特徴量」の欄の局所特徴量と類似している。そして、「追加位置関係ベクトル」の欄の位置関係ベクトルは、追加で対応付けされた局所特徴量となる。この欄での表記は、例えば、Ｇ２＿Ｅ１は、局所特徴量Ｆ２の位置関係ベクトルＧ２を、局所特徴量Ｆ１の局所特徴点Ｅ１が対応する座標系に変換したものであることを示す。
【０１０３】
図１３（Ｂ）は、Ｓ１２０１において、図１３（Ａ）の登録局所特徴量情報群について、登録局所特徴量情報の統合処理を行った結果の一例を示す。図１３（Ａ）において、局所特徴量Ｆ１，Ｆ２，Ｆ３は、自分自身も含めると、共通してＦ１，Ｆ２，Ｆ３，Ｆ４と類似している。そこで、局所特徴量Ｆ１，Ｆ２，Ｆ３が含まれる局所特徴量情報の統合処理を行う。まず、局所特徴量Ｆ１，Ｆ２，Ｆ３を平均して、その重心を求め、局所特徴量Ｆ６とする。次に、局所特徴点Ｅ６の値を局所特徴点Ｅ１の値とする。そして座標系に関する情報（正規化方向及びスケールに関する情報）は、局所特徴点Ｅ１に対応する情報を利用する。最後に、位置関係ベクトルＧ１，Ｇ２，Ｇ３，Ｇ４について、座標系に関する情報を利用して、座標系の変換を行う。それを図示したのが、図１３（Ｂ）である。ここでも、例えば、Ｇ１＿Ｅ６は、局所特徴量Ｆ１の位置関係ベクトルＧ１を、局所特徴量Ｆ６の局所特徴点Ｅ６が対応する座標系に変換したことを示す。図１３（Ａ）と図１３（Ｂ）とを比較すると、登録局所特徴量が５点から３点に減少していることが分かる。
【０１０４】
次に、類似した局所特徴量が存在しやすい理由を図１４を参照して説明する。
【０１０５】
図１４は、実施形態３に係る、登録したい特定パターンの一例を示す図である。
【０１０６】
ここでは、特定パターンの局所特徴点として、Ｐ１〜Ｐ９が検出されている。ここで、Ｌ（Ｘ）を局所特徴点Ｘの局所特徴量と定義する。そして、類似関係「≒」で表現する。その場合に、不変性がない局所特徴量を利用すると、Ｌ（Ｐ１）≒Ｌ（Ｐ４），Ｌ（Ｐ２）≒Ｌ（Ｐ６），Ｌ（Ｐ３）≒Ｌ（Ｐ５）となる。Ｌ（Ｐ７），Ｌ（Ｐ８），Ｌ（Ｐ９）は、類似した局所特徴量は存在しない。不変性がない局所特徴量であっても、類似した形状があれば、類似した局所特徴量となる。
【０１０７】
次に、回転不変性がある局所特徴量を利用すると、Ｌ（Ｐ１）≒Ｌ（Ｐ２）≒Ｌ（Ｐ３）≒Ｌ（Ｐ４）≒Ｌ（Ｐ５）≒Ｌ（Ｐ６）及びＬ（Ｐ７）≒Ｌ（Ｐ８）≒Ｌ（Ｐ９）となる。ここでは回転不変性があるため、回転して同じ形状になる場合も類似した局所特徴量となる。このように回転不変性があると、回転不変性がない場合に比べて、類似した局所特徴量が増えることが分かる。最後に、回転不変性及び拡大・縮小不変性がある局所特徴量を利用した場合を説明する。
【０１０８】
この場合は、Ｌ（Ｐ１）≒Ｌ（Ｐ２）≒Ｌ（Ｐ３）≒Ｌ（Ｐ４）≒Ｌ（Ｐ５）≒Ｌ（Ｐ６）≒Ｌ（Ｐ７）≒Ｌ（Ｐ８）≒Ｌ（Ｐ９）となり、全ての局所特徴量が類似した局所特徴量となる。これは、回転及び拡大・縮小して同じ形状になる場合も類似した局所特徴量となるためである。このように、回転及び拡大・縮小に対して不変性がある局所特徴量を利用すると、類似した局所特徴量が存在しやすくなるため、実施形態３のような形で、登録局所特徴量情報をまとめることによる情報の削減効果が大きくなる。
【０１０９】
以上説明した処理により、局所特徴量と１つ以上の位置関係ベクトルとが対応付けられた状態で、特定パターンを登録することが可能となる。
【０１１０】
実施形態３に係る特定パターンの検出処理は、実施形態１に係る図９のフローチャートと同様であるため、その説明を省略する。但し、登録局所特徴量の統合により、登録局所特徴量の数が減少しているため、マッチングの判定処理に要する時間が減少する。マッチングを総当たりで行う場合は、マッチングによる判定処理に要する時間は、登録局所特徴量の数に比例するためである。
【０１１１】
尚、複数の特定パターンが登録されている場合には、図９に示す特定パターンの検出処理を特定パターンごとに実施すればよい。但し、Ｓ５０１及びＳ５０２は、共通して実施することが可能である。更に、実施形態３では、Ｓ９０１を共通して実施することによる高速化も可能である。即ち、Ｓ１２０１における登録局所特徴量の統合を、特定パターン単位ではなく、全ての特定パターンが持つ局所特徴量全体で実施しておけば良い。このように異なる特定パターンであっても、局所的には類似した局所特徴量が存在する場合があるため、これら局所特徴量を統合することが可能である。このようにすれば、全ての特定パターンが保持する登録局所特徴量の総数を減らすことができ、特定パターンの有無の判定処理を高速化できる。
【０１１２】
以上説明したように実施形態３によれば、登録されている特定パターンの局所特徴量が複数の類似した局所特徴量を含む場合でも、高い精度で、クエリー画像からの特定パターンを検出できる。また、類似している登録局所特徴量を統合して登録局所特徴量の数を少なくすることにより、マッチング処理に要する時間を削減できる。
【０１１３】
［実施形態４］
以下、本発明の実施形態４について、前述の実施形態１と異なる部分について説明する。実施形態１との差分は、図４のフローチャートであるため、図１５のフローチャートを参照して説明する。
以下、本発明の実施形態４を説明する。実施形態４では、
従って実施形態１との差異を、図４のフローチャートに対応する図１５のフローチャートを参照して説明する。尚、実施形態３に係る画像処理装置１００及び画像検出装置２００のハードウェア構成は、前述の実施形態１と同様であるため、その説明を省略する。
図１５は、実施形態４に係る画像検出装置２００における特定パターンの登録処理を説明するフローチャートである。この処理は、ユーザインターフェース２０６を介してユーザからの特定パターンの登録指示を受け付けることにより開始される。尚、この処理は、ＣＰＵ２０７が記憶部２０９に記憶されているプログラムをＲＡＭ２０８に展開して実行することにより達成される。尚、図１５において、前述の図４と共通する処理は同じ参照番号で示し、それらの説明を省略する。
【０１１４】
Ｓ１５０１でＣＰＵ２０７は特定パターン登録部２０４として機能し、ユーザから登録を行いたい特定パターンに必要な不変性を受付ける。実施形態３でも説明したように、不変性がある局所特徴量は、類似した局所特徴量が生じる可能性が高く、誤マッチング等による精度の低下の可能性が存在する。そのため、ユーザから必要な不変性についての情報を受け付ける。この情報の受付は、表示部２１０に、例えば図１６の示すようなＵＩを表示し、ユーザインターフェース２０６を介して、ユーザが指定した内容を受け付ける。
【０１１５】
図１６は、実施形態４に係る画像検出装置２００の表示部に表示される不変性についての情報を受付ける画面例を示す図である。
【０１１６】
ここでは、ユーザに、３種類の不変性について提示して、必要な不変性について受付けている。尚、必要な不変性は、図１６に示す例に限るものではなく、例えば、アフィン不変性等を提示してもよい。
【０１１７】
次にＳ４０２でＣＰＵ２０７は、図４のＳ４０２と同様に、Ｓ１５０１で指定を受けた不変性を持つ局所特徴量から局所特徴量を算出する。次にＳ１５０２に進みＣＰＵ２０７は特定パターン登録部２０４として機能し、Ｓ４０２で算出した局所特徴量群の質を表現する指標を算出する。ここで「質が高い」とは、類似した局所特徴量がないユニークな局所特徴量が十分な数存在していることを示す。ここでは、類似した局所特徴量は、誤マッチングの可能性があるため、「質が低い」としている。よって、例えば、類似した局所特徴量がないユニークな局所特徴量の数を局所特徴量群の質を表現する指標とすることが考えられる。具体的には、登録局所特徴量間の距離を算出し、他の局所特徴量と類似していないユニークな局所特徴量を算出する。そして、そのユニークな局所特徴量の数をカウントする。ここで、更に、そのユニークな局所特徴量が一般的な画像に存在する局所特徴量とも類似しているか否かも考慮してカウントしてもよい。これは特定パターンではユニークな局所特徴量であっても、一般的な画像では検出されやすい局所特徴量である可能性があるためである。ここで説明した指標は一例であり、この指標に限定されるものではない。
【０１１８】
次にＳ１５０３に進みＣＰＵ２０７は特定パターン登録部２０４として機能し、Ｓ１５０２で算出した局所特徴量群の質が所定の閾値を上回っているかを判定する。ここで上回っていると判定した場合はＳ１５０４に進みそうでないときはＳ４０３に進む。Ｓ１５０４でＣＰＵ２０７は特定パターン登録部２０４として機能し、登録局所特徴量情報群から類似した登録局所特徴量を除去する。Ｓ１５０３で十分な質があると判定した場合は、マッチングにかかる時間を削減するために、このようにして、類似した局所特徴量を削除する。類似した局所特徴量の抽出は、Ｓ１５０２の結果を利用して行う。
【０１１９】
以上説明した処理により、局所特徴量と位置関係ベクトルが対付けられた状態で特定パターンの登録処理を行うことが可能となる。
【０１２０】
このときの特定パターンの検出処理は、前述の図９のフローチャートと同様であるため、その説明を省略する。但し、算出する局所特徴量は、Ｓ１５０１で指定を受けた不変性を持つ局所特徴量となる。
【０１２１】
尚、複数の特定パターンが登録されている場合には、図９の特定パターンの検出処理を、各特定パターンごとに実施すればよい。但し、Ｓ５０１及びＳ５０２は、共通して実施することが可能である。
【０１２２】
以上説明したように実施形態４によれば、登録されている特定パターンから複数の類似した局所特徴量が抽出されている場合であっても、高い精度で、クエリー画像から特定パターンを検出できる。また、ユーザから必要な不変性を受け付けることにより、類似した局所特徴量の発生を抑え、パターン検出の精度向上につなげることができる。更に、登録局所特徴量の「質が高い」場合には、類似した局所特徴量を利用しないようして、パターン検出の精度を維持したまま局所特徴量のマッチングに要する時間を削減することができる。
【０１２３】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【０１２４】
本発明は上記実施形態に制限されるものではなく、本発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、本発明の範囲を公にするために、以下の請求項を添付する。
【符号の説明】
【０１２５】
１００…画像処理部、１０１…制御部、１０８…画像読取部、１０９…画像出力部、２０３…画像解析部、２０４…特定パターン登録部、２０５…特定パターン検出部、２０７…ＣＰＵ、２０９…記憶部、２１０…表示部
【図１】
2018022293.tif 000003
【図２】
2018022293.tif 000004
【図３】
2018022293.tif 000005
【図４】
2018022293.tif 000006
【図５】
2018022293.tif 000007
【図６】
2018022293.tif 000008
【図７】
2018022293.tif 000009
【図８】
2018022293.tif 000010
【図９】
2018022293.tif 000011
【図１０】
2018022293.tif 000012
【図１１】
2018022293.tif 000013
【図１２】
2018022293.tif 000014
【図１３】
2018022293.tif 000015
【図１４】
2018022293.tif 000016
【図１５】
2018022293.tif 000017
【図１６】
2018022293.tif 000018
【図１７】
2018022293.tif 000019