(57)【要約】【課題】認識精度を向上させること。【解決手段】対象物ＪＸ１を含む参照画像Ｐｒと、参照画像Ｐｒに設定された複数の第１の特徴点と、参照画像Ｐｒの所定位置と第１の特徴点との位置関係と、判定の対象とする対象画像Ｐ０に設定された複数の分割領域の各々に対応する投票数の情報と、を記憶する記憶部１１と、対象画像Ｐ０に含まれる複数の第２の特徴点のうち第１の特徴点と特徴が類似する第２の特徴点を抽出し、抽出した第２の特徴点を基準に対象画像Ｐ０内で位置関係により特定される所定位置を特定し、特定した所定位置を含む分割領域の投票数を増加させ、投票数に基づき対象物ＪＸ１の有無を判定する演算部１２と、を有する情報処理装置１０が提供される。演算部１２は、第１の特徴点と特徴が類似する第２の特徴点が複数ある場合には複数の当該第２の特徴点を抽出する。【選択図】図１
2016038839.tif 000002
【特許請求の範囲】
【請求項１】
対象物を含む参照画像と、前記参照画像に設定された複数の第１の特徴点と、前記参照画像の所定位置と前記第１の特徴点との位置関係と、判定の対象とする対象画像に設定された複数の分割領域の各々に対応する投票数の情報と、を記憶する記憶部と、
前記対象画像に含まれる複数の第２の特徴点のうち前記第１の特徴点と特徴が類似する前記第２の特徴点を抽出し、抽出した前記第２の特徴点を基準に前記対象画像内で前記位置関係により特定される前記所定位置を特定し、特定した前記所定位置を含む前記分割領域の前記投票数を増加させ、前記投票数に基づき前記対象物の有無を判定する演算部と、
を有し、
前記演算部は、前記第１の特徴点と特徴が類似する前記第２の特徴点が複数ある場合には複数の当該第２の特徴点を抽出する、
情報処理装置。
【請求項２】
前記演算部は、抽出した前記第２の特徴点のうち前記第１の特徴点との間の類似度が、設定した閾値より大きい前記第２の特徴点について前記所定位置を特定する
請求項１に記載の情報処理装置。
【請求項３】
前記演算部は、抽出した前記第２の特徴点と前記第１の特徴点との間の類似度が小さいほど前記投票数の増加量が小さくなるように前記投票数に重み付けする
請求項１又は２に記載の情報処理装置。
【請求項４】
前記演算部は、抽出した前記第２の特徴点のうち前記第１の特徴点との間の類似度が高い順に、設定した数の前記第２の特徴点について前記所定位置を特定する
請求項１に記載の情報処理装置。
【請求項５】
コンピュータに、
対象物を含む参照画像と、前記参照画像に設定された複数の第１の特徴点と、前記参照画像の所定位置と前記第１の特徴点との位置関係と、判定の対象とする対象画像に設定された複数の分割領域の各々に対応する投票数の情報と、を取得し、
前記対象画像に含まれる複数の第２の特徴点のうち前記第１の特徴点と特徴が類似する前記第２の特徴点を抽出し、抽出した前記第２の特徴点を基準に前記対象画像内で前記位置関係により特定される前記所定位置を特定し、特定した前記所定位置を含む前記分割領域の前記投票数を増加させ、前記投票数に基づき前記対象物の有無を判定し、
前記抽出する処理において、前記第１の特徴点と特徴が類似する前記第２の特徴点が複数ある場合には複数の当該第２の特徴点を抽出する、
処理を実行させるためのプログラム。
【請求項６】
コンピュータが、
対象物を含む参照画像と、前記参照画像に設定された複数の第１の特徴点と、前記参照画像の所定位置と前記第１の特徴点との位置関係と、判定の対象とする対象画像に設定された複数の分割領域の各々に対応する投票数の情報と、を取得し、
前記対象画像に含まれる複数の第２の特徴点のうち前記第１の特徴点と特徴が類似する前記第２の特徴点を抽出し、抽出した前記第２の特徴点を基準に前記対象画像内で前記位置関係により特定される前記所定位置を特定し、特定した前記所定位置を含む前記分割領域の前記投票数を増加させ、前記投票数に基づき前記対象物の有無を判定し、
前記抽出する処理において、前記第１の特徴点と特徴が類似する前記第２の特徴点が複数ある場合には複数の当該第２の特徴点を抽出する、
判定処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、プログラム、及び判定処理方法に関する。
【背景技術】
【０００２】
様々な分野で画像のマッチング技術が広く利用されるようになってきた。例えば、顔認証や生体認証の分野では、可視光カメラや赤外線カメラで撮像した画像とテンプレート画像とをマッチングする技術が利用されている。より一般的な用途では、カメラ付き携帯端末やデジタルカメラで撮像した画像とランドマークの画像とをマッチングする技術が利用されている。また、マッチング技術を利用して物体の特定部分を認識する方法がある。
【０００３】
画像同士のマッチングには、例えば、入力画像の特徴点における特徴量（以下、局所特徴量）と、参照画像の特徴点における局所特徴量とを比較して、入力画像の特徴点に対応する参照画像の特徴点（以下、対応点）を探索する手法が利用される。探索により発見された対応点の集合を統計処理することで入力画像中における参照画像の存在や参照画像の位置を認識できる。なお、対応点の探索は、画像の重畳表示などにも利用される。
【０００４】
上記のような対応点の探索には、例えば、ＳＩＦＴ（Scale-Invariant Feature Transform）、ＳＵＲＦ（Speeded Up Robust Features）、ＢＲＩＥＦ（Binary Robust Independent Elementary Features）などの特徴が利用される。ＳＩＦＴやＳＵＲＦを利用すると高精度に対応点を検出することができる。但し、ＳＩＦＴやＳＵＲＦの局所特徴量はデ−タサイズが大きく、ＳＩＦＴやＳＵＲＦを利用すると探索時の計算負荷が高くなる。
【０００５】
一方、ＢＲＩＥＦは、特徴点の周囲に設定された複数の画素ペアのそれぞれについて計算された画素間の輝度差に基づく局所特徴量で表現される。例えば、輝度差の符号（正負）に対応するビット値の集合が局所特徴量として利用される。従って、ＢＲＩＥＦはＳＩＦＴやＳＵＲＦに比べて少ない計算量で高速に抽出することができ、探索にかかる計算負荷の軽減に寄与する。ＢＲＩＥＦを利用すると、サーバ装置などに比べて計算能力の低い携帯端末でも入力画像から高速に局所特徴量を抽出することが可能になる。
【０００６】
なお、ＢＲＩＥＦと同様に画素間の輝度差に基づく局所特徴量を用いて画像の特徴を表現する他の特徴としては、例えば、ＯＲＢ（Oriented Fast and Rotated BRIEF）やＦＲＥＡＫ（Fast Retina Keypoint）がある。ＯＲＢは、画素ペアの配置を決める際に多数の画像に基づく学習を利用する。ＦＲＥＡＫは、画素ペアの配置を決める際に人間の網膜パターンに関する情報を利用する。ＯＲＢやＦＲＥＡＫを利用した場合も入力画像から高速に局所特徴量を抽出することができる。
【０００７】
なお、入力画像及び標準画像の双方から抽出した特徴点の特徴量を算出し、双方の特徴量に基づき入力画像中の対象物（標準画像）を認識する技術が提案されている。この技術は、予め標準画像から抽出した特徴点の特徴量として、スケール不変特徴量に、ある基準点に対する特徴点の位置ベクトルを付加したものを利用する。
【０００８】
上記技術では、入力画像から抽出した特徴点の特徴量を算出し、標準画像の特徴量と類似する特徴点同士が対応点として設定される。そして、入力画像の対応点毎に算出された基準点の位置に対応する入力画像平面に投票され、投票値が閾値以上の小領域で検出された場合に対象物が存在していると判断される。また、特徴点同士の類似度について、１番目に高い類似度と２番目に高い類似度とを比較し、両者の差が閾値以上である場合に１番目の類似度に対応する特徴点同士を対応点として設定する方法が採用されている。また、複数の異なる方向から撮影した画像を利用し、上記技術と同様に対応点の設定及び投票を行い、３次元的な物体の認識を行う方法が提案されている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００８−２５７６４９号公報
【特許文献２】特開２０１２−  ８３８５５号公報
【非特許文献】
【００１０】
【非特許文献１】David G.Lowe, "Distinctive image features from scale-invariant keypoints", International Journal of Computer Vision, 60, 2 (2004), pp.91-110
【非特許文献２】H.Bay,T.Tuytelaars, and L.V.Gool, "SURF:Speed Up Robust Features", Proc. of Int. Conf. of ECCV, 2006
【非特許文献３】M. Calonder, V. Lepetit, C. Strecha, and P. Fua., "BRIEF: Binary Robust Independent Elementary Features.", In Proceedings of the European Conference on Computer Vision (ECCV), 2010
【非特許文献４】Alexandre Alahi, Raphael Ortiz, Pierre Vandergheynst, "FREAK: Fast Retina Keypoint", In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2012
【非特許文献５】E. Rublee, V. Rabaud, K. Konolige, and G. Bradski, "ORB: An efficient alternative to SIFT or SURF", In Proceedings of the IEEE International Conference on Computer Vision (ICCV), 2011
【発明の概要】
【発明が解決しようとする課題】
【００１１】
上記技術のように投票を利用することで、入力画像と参照画像との間に生じた許容可能な誤差を吸収することができ、精度良く対象物の認識を行うことができる。但し、類似した形状を有する部位を複数含む対象物の場合、対応点を検出する際に誤検出が発生することがある。例えば、正解の特徴点よりも、類似の部位に位置する特徴点の方が類似度が高くなることがある。
【００１２】
上記の場合、誤検出した対応点を基準に投票を行うと、誤った位置に投票が集中して誤認識が生じるリスクや、投票数の分布が広く分散して最大投票数が閾値を超えずに未検出が生じるリスクがある。これらのリスクは、正解の投票位置に投票されず、正解以外の投票位置に投票される回数が多くなることで高まる。そのため、類似した形状を有する部位を複数含む対象物など、上記のリスクが生じやすい対象物を対象とする場合であっても正解の投票位置に投票される可能性を高めることができれば、上記のリスクを抑制し、認識精度を高めることが可能になる。
【００１３】
そこで、１つの側面によれば、本発明の目的は、認識精度を向上させることが可能な情報処理装置、プログラム、及び判定処理方法を提供することにある。
【課題を解決するための手段】
【００１４】
本開示の１つの側面によれば、対象物を含む参照画像と、参照画像に設定された複数の第１の特徴点と、参照画像の所定位置と第１の特徴点との位置関係と、判定の対象とする対象画像に設定された複数の分割領域の各々に対応する投票数の情報と、を記憶する記憶部と、対象画像に含まれる複数の第２の特徴点のうち第１の特徴点と特徴が類似する第２の特徴点を抽出し、抽出した第２の特徴点を基準に対象画像内で位置関係により特定される所定位置を特定し、特定した所定位置を含む分割領域の投票数を増加させ、投票数に基づき対象物の有無を判定する演算部と、を有する情報処理装置が提供される。演算部は、第１の特徴点と特徴が類似する第２の特徴点が複数ある場合には複数の当該第２の特徴点を抽出する。
【００１５】
また、本開示の他の１つの側面によれば、コンピュータに、対象物を含む参照画像と、参照画像に設定された複数の第１の特徴点と、参照画像の所定位置と第１の特徴点との位置関係と、判定の対象とする対象画像に設定された複数の分割領域の各々に対応する投票数の情報と、を取得し、対象画像に含まれる複数の第２の特徴点のうち第１の特徴点と特徴が類似する第２の特徴点を抽出し、抽出した第２の特徴点を基準に対象画像内で位置関係により特定される所定位置を特定し、特定した所定位置を含む分割領域の投票数を増加させ、投票数に基づき対象物の有無を判定する処理を実行させるためのプログラムが提供される。該コンピュータは、上記抽出する処理において、第１の特徴点と特徴が類似する第２の特徴点が複数ある場合には複数の当該第２の特徴点を抽出する。
【００１６】
また、本開示の他の１つの側面によれば、コンピュータが、対象物を含む参照画像と、参照画像に設定された複数の第１の特徴点と、参照画像の所定位置と第１の特徴点との位置関係と、判定の対象とする対象画像に設定された複数の分割領域の各々に対応する投票数の情報と、を取得し、対象画像に含まれる複数の第２の特徴点のうち第１の特徴点と特徴が類似する第２の特徴点を抽出し、抽出した第２の特徴点を基準に対象画像内で位置関係により特定される所定位置を特定し、特定した所定位置を含む分割領域の投票数を増加させ、投票数に基づき対象物の有無を判定する判定処理方法が提供される。該コンピュータは、上記抽出する処理において、第１の特徴点と特徴が類似する第２の特徴点が複数ある場合には複数の当該第２の特徴点を抽出する。
【発明の効果】
【００１７】
本発明によれば、認識精度を向上させることが可能になる。
【図面の簡単な説明】
【００１８】
【図１】第１実施形態に係る情報処理装置の一例を示した図である。
【図２】第２実施形態に係る画像処理装置のハードウェアの一例を示した図である。
【図３】第２実施形態に係る画像処理装置が有する機能の一例を示したブロック図である。
【図４】第２実施形態に係る画素ペア情報の一例を示した図である。
【図５】第２実施形態に係る入力画像の特徴点と特徴領域について説明するための図である。
【図６】第２実施形態に係る特徴量の計算について説明するための図である。
【図７】第２実施形態に係る参照画像情報（参照画像管理テーブル）の一例を示した図である。
【図８】第２実施形態に係る参照画像情報（特徴量管理テーブル）の一例を示した図である。
【図９】第２実施形態に係る参照画像の特徴点と特徴領域について説明するための図である。
【図１０】第２実施形態に係る投票処理のうち対応点探索、中心特定、投票に関する処理の一例を示した図である。
【図１１】第２実施形態に係る中心の誤特定リスクと複数特定点の投票について説明するための図である。
【図１２】第２実施形態に係る複数特定点の投票による作用について説明するための第１の図である。
【図１３】第２実施形態に係る複数特定点の投票による作用について説明するための第２の図である。
【図１４】第２実施形態に係る複数特定点の投票による作用について説明するための第３の図である。
【図１５】第２実施形態に係る判定処理のうち最大値抽出、閾値判定に関する処理の一例を示した図である。
【図１６】第２実施形態に係る入力画像の処理に関する処理の流れを示したフロー図である。
【図１７】第２実施形態に係る特徴量の計算に関する処理の流れを示したフロー図である。
【図１８】第２実施形態に係る認識処理に関する処理の流れを示したフロー図である。
【図１９】第２実施形態に係る参照画像の探索に関する処理の流れを示した第１のフロー図である。
【図２０】第２実施形態に係る参照画像の探索に関する処理の流れを示した第２のフロー図である。
【図２１】第２実施形態の一変形例（変形例＃１）に係る参照画像の探索に関する処理の流れを示したフロー図である。
【図２２】第２実施形態の一変形例（変形例＃２）に係る重み値の設定方法の例を示した図である。
【図２３】第２実施形態の一変形例（変形例＃２）に係る参照画像の探索に関する処理の流れを示したフロー図である。
【発明を実施するための形態】
【００１９】
以下に添付図面を参照しながら、本発明の実施形態について説明する。なお、本明細書及び図面において実質的に同一の機能を有する要素については、同一の符号を付することにより重複説明を省略する場合がある。
【００２０】
＜１．第１実施形態＞
図１を参照しながら、第１実施形態について説明する。図１は、第１実施形態に係る情報処理装置の一例を示した図である。図１に例示した情報処理装置１０は、第１実施形態に係る情報処理装置の一例である。
【００２１】
図１に示すように、情報処理装置１０は、記憶部１１及び演算部１２を有する。
なお、記憶部１１は、ＲＡＭ（Random Access Memory）などの揮発性記憶装置、或いは、ＨＤＤ（Hard Disk Drive）やフラッシュメモリなどの不揮発性記憶装置である。演算部１２は、ＣＰＵ（Central Processing Unit）やＤＳＰ（Digital Signal Processor）などのプロセッサである。但し、演算部１２は、ＡＳＩＣ（Application Specific Integrated Circuit）やＦＰＧＡ（Field Programmable Gate Array）などの電子回路であってもよい。演算部１２は、例えば、記憶部１１又は他のメモリに記憶されたプログラムを実行する。
【００２２】
記憶部１１は、対象物ＪＸ１を含む参照画像Ｐｒと、参照画像Ｐｒに設定された複数の第１の特徴点と、参照画像Ｐｒの所定位置と第１の特徴点との位置関係とを記憶する。また、記憶部１１は、判定の対象とする対象画像Ｐ０に設定された複数の分割領域の各々に対応する投票数の情報を記憶する。
【００２３】
対象物ＪＸ１は、認識の対象となる対象物である。なお、対象物ＪＸ１は、例えば、物、人、動物などである。また、複数種類の対象物ＪＸ１が認識の対象とされていてもよい。参照画像Ｐｒは、対象物ＪＸ１を撮像した画像である。また、参照画像Ｐｒは、予め用意されて記憶部１１に格納される。複数の第１の特徴点は、参照画像Ｐｒの特徴を表す点として予め設定される。また、複数の第１の特徴点は、例えば、参照画像Ｐｒ内に等間隔に配置する方法（Ｄｅｎｓｅ  Ｓａｍｐｌｉｎｇ）や、ＦＡＳＴ（Features from Accelerated Segment Test）などの方法を用いて設定される。
【００２４】
上記所定位置は、例えば、参照画像Ｐｒの中心や角などの予め特定された位置である。上記位置関係は、例えば、第１の特徴点を始点とし、所定位置を終点とするベクトルなどで表現される関係である。つまり、上記位置関係は、第１の特徴点から所定位置へ向かう方向と、第１の特徴点と所定位置との間の距離とを含む情報である。対象画像Ｐ０は、対象物ＪＸ２が含まれるか否かの判定の対象となる画像である。例えば、対象画像Ｐ０は、対象物ＪＸ２を撮像した画像である。なお、対象画像Ｐ０は、情報処理装置１０により撮像された画像であってもよいし、他の撮像装置により撮像された画像であってもよい。
【００２５】
上記の投票数の情報は、対象画像Ｐ０と同じサイズの領域を複数の分割領域に分けた投票マップに関する情報である。各分割領域には、投票数を記録するカウンタが対応付けられている。このカウンタのカウンタ値を増加させる処理が投票である。上記の投票数の情報は、分割領域毎のカウンタ値を表す情報である。なお、分割領域のサイズや分割数などは予め設定されている。例えば、３６×３６画素や４８×４８画素などのサイズとなるように分割領域が設定される。
【００２６】
図１には、対象物ＪＸ１を撮像した参照画像Ｐｒが例示されている。また、図１には、第１の特徴点が黒丸、位置関係が矢印、所定位置が白丸、第２の特徴点が黒矩形で記載されている。また、図１には、投票数の情報として、対象画像Ｐ０と同じサイズの領域を複数の分割領域に分割した投票マップ、及び各分割領域に投票された投票数の数字が記載されている。なお、各分割領域の数字は、後述する演算部１２の処理の中で決定される。
【００２７】
演算部１２は、対象画像Ｐ０に含まれる複数の第２の特徴点のうち第１の特徴点と特徴が類似する第２の特徴点を抽出する。例えば、演算部１２は、対象画像Ｐ０にＤｅｎｓｅ  ＳａｍｐｌｉｎｇやＦＡＳＴなどの方法を用いて第２の特徴点を設定し、各第１の特徴点と各第２の特徴点との類似度を計算する。
【００２８】
第１及び第２の特徴点の特徴は、例えば、ＳＩＦＴ、ＳＵＲＦ、ＢＲＩＥＦ、ＯＲＢ、ＦＲＥＡＫなどを利用して表現できる。ＢＲＩＥＦを利用する場合、第１の特徴点の特徴は、例えば、第１の特徴点を中心とする所定サイズ（例えば、３６×３６画素）の矩形に所定数（例えば、２５６個）の画素ペアを設定し、各画素ペアの輝度差に基づくビット列により表現される。第２の特徴点についても同様である。
【００２９】
上記の場合、第１の特徴点と第２の特徴点との類似度は、両特徴点に対応する２つのビット列の排他的論理和（ＸＯＲ）演算により計算される距離に基づいて得られる。この距離は、特徴点同士の特徴の相違度を表している。そのため、距離の逆数は類似度の一例である。演算部１２は、１つの第１の特徴点に対し、類似度が高い順に複数の第２の特徴点を抽出してもよい。
【００３０】
例えば、演算部１２は、各第１の特徴点について、類似度が最大となる第２の特徴点を抽出する。さらに、演算部１２は、予め設定された類似度設定用の閾値より類似度が高い少なくとも１つの第２の特徴点を抽出する。但し、演算部１２は、類似度設定用の閾値より類似度が高い第２の特徴点がない場合には第２の特徴点を抽出しない。なお、演算部１２は、各第１の特徴点について、類似度が高い順に所定数（例えば、４個など）の第２の特徴点を抽出してもよい。
【００３１】
演算部１２は、抽出した第２の特徴点を基準に対象画像Ｐ０内で位置関係により特定される所定位置を特定する。例えば、上記の位置関係がベクトルで表現されている場合、図１に示すように、演算部１２は、抽出した第２の特徴点を始点とするベクトルの終点を、所定位置（つまり、対象画像Ｐ０に参照画像Ｐｒを重ねた場合に対応する参照画像Ｐｒの所定位置）として特定する。演算部１２は、抽出した第２の特徴点毎に上記所定位置を特定する。
【００３２】
演算部１２は、特定した所定位置を含む分割領域の投票数を増加させ、投票数に基づき対象物ＪＸ２の有無を判定する。例えば、演算部１２は、対象画像Ｐ０の中で上記所定位置を特定する度に、特定した所定位置に対応する分割領域を検出し、検出した分割領域に投票する。投票を繰り返すことにより、図１に示すように、各分割領域に投票数が記載された投票マップが得られる。演算部１２は、例えば、最大の投票数と、予め設定された判定用の閾値とを比較し、最大の投票数が判定用の閾値より大きい場合に対象物ＪＸ２が対象画像Ｐ０に含まれると判定する。
【００３３】
上記のように、演算部１２は、第１の特徴点と特徴が類似する第２の特徴点が複数ある場合には複数の第２の特徴点を抽出する。そのため、第１の特徴点が位置する対象物ＪＸ１の部分と、正しく対応する対象物ＪＸ２の部分とを対応付ける第２の特徴点が投票に反映される可能性を高めることができる。例えば、１つの第１の特徴点あたりに１つの第２の特徴点しか抽出しないとすると、抽出した第２の特徴点が誤ったものである場合、正しい第２の特徴点に基づく投票が行われない。一方、１つの第１の特徴点あたりに複数の第２の特徴点を抽出すれば、正しい第２の特徴点が抽出される可能性が高まる。
【００３４】
例えば、１つの第１の特徴点につき、類似度設定用の閾値より類似度が高い第２の特徴点を全て抽出して各々投票を行えば、誤った位置への投票を含むが、高い可能性で正しい位置に投票される。なお、誤った位置への投票は一カ所に集中せず、投票マップの広い範囲に分散する。一方、正しい位置への投票は一カ所に集中する。また、１つの第１の特徴点について抽出される複数の第２の特徴点の位置は異なるため、分割領域のサイズが適切であれば、１つの第１の特徴点について同じ分割領域に複数の投票が行われることはない。
【００３５】
分割領域のサイズを大きく設定した場合、１つの第１の特徴点について同じ分割領域に複数の投票が行われる可能性はあるが、この場合、演算部１２は、同じ分割領域への投票に係る複数の第２の特徴点のうち類似度が高い方の第２の特徴点だけを抽出すればよい。上記の方法により全投票数は多くなる。しかし、正しい位置に投票される投票数を他の位置に投票される投票数が上回ることはなく、演算部１２は、対象物ＪＸ１の有無を判定することができる。上記のように、１つの第１の特徴点について複数の第２の特徴点を抽出できるようにすることで、類似の部位を複数含む対象物を認識する場合などでも、高い認識精度を実現することが可能になる。
【００３６】
以上、第１実施形態について説明した。
＜２．第２実施形態＞
次に、第２実施形態について説明する。
【００３７】
第２実施形態は、類似する部位を複数含む対象物の有無を入力画像から精度良く認識できるようにする技術に関する。このような対象物としては、例えば、ラックマウントサーバのように類似形状のサーバ群や、同じような操作部品が並んだ電気操作盤などがある。また、同じ形状の配管が並んだ空調用ポンプや、同じ形状のスイッチ類が並んだ分電盤なども上記対象物の種類に含まれる。その他にも、城の石垣や屋根の形状など、繰り返し同じ形状の構造が含まれるランドマークも上記対象物の種類に含まれる。
【００３８】
第２実施形態に係る技術は、後述する画像処理装置１００のハードウェア及び機能により実現可能である。なお、画像処理装置１００は、第２実施形態に係る画像処理装置の一例である。画像処理装置１００は、例えば、デジタルカメラなどの撮像装置２００が撮像した画像（入力画像）を取得し、入力画像と、事前に対象物を撮像した参照画像とを利用して対象物の認識処理を実行する。
【００３９】
このとき、画像処理装置１００は、両画像から特徴が類似する特徴点の組を抽出し、抽出した特徴点の組から、参照画像内の特定位置（例えば、中心）が入力画像のどの位置（特定点）に対応するかを特定する。このとき、上記のような対象物の場合、対応する特徴点の抽出時に誤りが生じるリスクが大きくなる。画像処理装置１００は、入力画像の範囲を枡目で区切った投票マップ上で、特定点の位置を特定し、枡目毎に設定されたカウンタをカウントアップ（投票）する。
【００４０】
例えば、参照画像中の１つの特徴点に対し、類似度が最も高い１つの特徴点を特定し、特定した特徴点を基準に投票位置を決定する方法を採用すると、特徴点の抽出時に誤りが生じた場合に正解の投票位置に投票されず、正解以外の投票位置に投票される。このような誤った投票が繰り返されると、誤った投票位置の投票数が大きくなるリスクや、正解の投票位置における投票数が少なくなるリスクが生じる。これらのリスクは認識の失敗につながるため、これらのリスクを抑制できれば、対象物の認識精度が向上する。
【００４１】
そこで、画像処理装置１００は、参照画像中の１つの特徴点に対し、複数の特徴点を特定することを許容する。例えば、類似度が高い複数の特徴点が特定されれば、その中に正解の特徴点が含まれる可能性は高まる。結果として、正解の投票位置に投票されない割合が減少し、上記のリスクを低減することができ、認識精度の向上が実現できる。
【００４２】
上記のような対象物について認識精度を向上できると、例えば、画像による対象物の認識技術をラックマウントサーバなどの保守業務に利用することなどが可能になる。例えば、保守業務を行う際、作業員が点検対象部位に紐付けてメモを保存しておき、次に点検に来た作業員が装置を撮影し、上記技術で装置名と点検対象部位とを自動認識し、前の作業員が保存したメモを参照するなどの用途で応用できる。もちろん、ランドマークを認識する際の認識精度も向上するため、その他の応用例にも好適に適用可能である。
【００４３】
以下、画像処理装置１００について、さらに説明する。
［２−１．ハードウェア］
図２を参照しながら、画像処理装置１００が有する機能を実現することが可能なハードウェアについて説明する。図２は、第２実施形態に係る画像処理装置のハードウェアの一例を示した図である。
【００４４】
画像処理装置１００が有する機能は、例えば、図２に示す情報処理装置のハードウェア資源を用いて実現することが可能である。つまり、画像処理装置１００が有する機能は、コンピュータプログラムを用いて図２に示すハードウェアを制御することにより実現される。
【００４５】
図２に示すように、このハードウェアは、主に、ＣＰＵ９０２と、ＲＯＭ（Read Only Memory）９０４と、ＲＡＭ９０６と、ホストバス９０８と、ブリッジ９１０とを有する。さらに、このハードウェアは、外部バス９１２と、インターフェース９１４と、入力部９１６と、出力部９１８と、記憶部９２０と、ドライブ９２２と、接続ポート９２４と、通信部９２６とを有する。
【００４６】
ＣＰＵ９０２は、例えば、演算処理装置又は制御装置として機能し、ＲＯＭ９０４、ＲＡＭ９０６、記憶部９２０、又はリムーバブル記録媒体９２８に記録された各種プログラムに基づいて各構成要素の動作全般又はその一部を制御する。ＲＯＭ９０４は、ＣＰＵ９０２に読み込まれるプログラムや演算に用いるデータなどを格納する記憶装置の一例である。ＲＡＭ９０６には、例えば、ＣＰＵ９０２に読み込まれるプログラムや、そのプログラムを実行する際に変化する各種パラメータなどが一時的又は永続的に格納される。
【００４７】
これらの要素は、例えば、高速なデータ伝送が可能なホストバス９０８を介して相互に接続される。一方、ホストバス９０８は、例えば、ブリッジ９１０を介して比較的データ伝送速度が低速な外部バス９１２に接続される。また、入力部９１６としては、例えば、マウス、キーボード、タッチパネル、タッチパッド、ボタン、スイッチ、及びレバーなどが用いられる。さらに、入力部９１６としては、赤外線やその他の電波を利用して制御信号を送信することが可能なリモートコントローラが用いられることもある。
【００４８】
出力部９１８としては、例えば、ＣＲＴ（Cathode Ray Tube）、ＬＣＤ（Liquid Crystal Display）、ＰＤＰ（Plasma Display Panel）、又はＥＬＤ（Electro-Luminescence Display）などのディスプレイ装置が用いられる。また、出力部９１８として、スピーカやヘッドホンなどのオーディオ出力装置、又はプリンタなどが用いられることもある。つまり、出力部９１８は、情報を視覚的又は聴覚的に出力することが可能な装置である。
【００４９】
記憶部９２０は、各種のデータを格納するための装置である。記憶部９２０としては、例えば、ＨＤＤなどの磁気記憶デバイスが用いられる。また、記憶部９２０として、ＳＳＤ（Solid State Drive）やＲＡＭディスクなどの半導体記憶デバイス、光記憶デバイス、又は光磁気記憶デバイスなどが用いられてもよい。
【００５０】
ドライブ９２２は、着脱可能な記録媒体であるリムーバブル記録媒体９２８に記録された情報を読み出し、又はリムーバブル記録媒体９２８に情報を書き込む装置である。リムーバブル記録媒体９２８としては、例えば、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどが用いられる。
【００５１】
接続ポート９２４は、例えば、ＵＳＢ（Universal Serial Bus）ポート、ＩＥＥＥ１３９４ポート、ＳＣＳＩ（Small Computer System Interface）、ＲＳ−２３２Ｃポート、又は光オーディオ端子など、外部接続機器９３０を接続するためのポートである。外部接続機器９３０としては、例えば、プリンタやカメラなどが用いられる。以下では、外部接続機器９３０として撮像装置２００が接続されているものとする。撮像装置２００は、例えば、デジタルカメラなどである。
【００５２】
通信部９２６は、ネットワーク９３２に接続するための通信デバイスである。通信部９２６としては、例えば、有線又は無線ＬＡＮ（Local Area Network）用の通信回路、ＷＵＳＢ（Wireless USB）用の通信回路、光通信用の通信回路やルータ、ＡＤＳＬ（Asymmetric Digital Subscriber Line）用の通信回路やルータ、携帯電話ネットワーク用の通信回路などが用いられる。通信部９２６に接続されるネットワーク９３２は、有線又は無線により接続されたネットワークであり、例えば、インターネット、ＬＡＮ、放送網、衛星通信回線などを含む。
【００５３】
以上、画像処理装置１００のハードウェアについて説明した。
［２−２．機能］
次に、図３を参照しながら、画像処理装置１００が有する機能について説明する。図３は、第２実施形態に係る画像処理装置が有する機能の一例を示したブロック図である。なお、以下の説明では図４〜図１５が適宜参照される。
【００５４】
図３に示すように、画像処理装置１００は、記憶部１０１、画像取得部１０２、特徴点設定部１０３、特徴量計算部１０４、距離計算部１０５、投票処理部１０６、及び判定部１０７を有する。
【００５５】
なお、記憶部１０１の機能は、上述したＲＡＭ９０６や記憶部９２０などを用いて実現できる。画像取得部１０２、特徴点設定部１０３、特徴量計算部１０４、距離計算部１０５、投票処理部１０６、及び判定部１０７の機能は、上述したＣＰＵ９０２などを用いて実現できる。以下、入力画像の処理に関する機能、及び認識処理に関する機能について順次説明する。
【００５６】
（入力画像の処理に関する機能について）
画像取得部１０２、特徴点設定部１０３、及び特徴量計算部１０４は、入力画像の処理に関する機能を提供する。また、入力画像の処理に際し、記憶部１０１に格納された画素ペア情報１０１ａが利用される。
【００５７】
画素ペア情報１０１ａは、画像の特徴点毎に設定される特徴領域の特徴量を計算する際に用いる画素のペア（以下、画素ペア）を表す情報である。例えば、画素ペア情報１０１ａには、画素ペアを成す２つの画素の位置を示す位置情報が含まれる。なお、特徴領域は、例えば、特徴点を中心とする矩形領域であり、３２画素×３２画素や４８画素×４８画素などのサイズに設定される。
【００５８】
画素ペア情報１０１ａの一例を図４に示す。図４は、第２実施形態に係る画素ペア情報の一例を示した図である。図４に示すように、画素ペア情報１０１ａには、画素ペアＬk（ｋ＝１、２、…）を成す２つの画素の座標（Ｘ1，Ｙ1）及び（Ｘ2，Ｙ2）が含まれる。画素の座標は、特徴領域の左上を原点（０，０）とした座標値で表現される。また、画素ペアの数は、例えば、１２８個、２５６個、５１２個などに設定される。例えば、画素ペアの数を２５６個に設定した場合、特徴領域毎に２５６個の画素ペアが設定される。
【００５９】
画像取得部１０２は、認識処理の対象となる画像（以下、入力画像Ｐin）を取得する。例えば、画像取得部１０２は、外部の記憶装置（非図示）又は画像処理装置１００に接続された撮像装置２００から入力画像Ｐinを取得する。画像取得部１０２により取得された入力画像Ｐinは、記憶部１０１に格納される。また、入力画像Ｐinは、特徴点設定部１０３に入力される。
【００６０】
特徴点設定部１０３は、画像取得部１０２により取得された入力画像Ｐinに複数の特徴点を設定する。例えば、特徴点設定部１０３は、図５に示すように、等間隔に配置された複数の特徴点を抽出する方法（Ｄｅｎｓｅ  Ｓａｍｐｌｉｎｇ）を用いて入力画像Ｐinに特徴点を設定する。図５は、第２実施形態に係る入力画像の特徴点と特徴領域について説明するための図である。なお、特徴点の設定には、ＦＡＳＴなどの方法も適用可能である。以下、入力画像Ｐinに設定される特徴点がＷinと表記される場合がある。
【００６１】
図５に示すように、特徴点Ｗinを基準に特徴領域が設定される。以下、特徴点Ｗinを基準に設定される特徴領域がＡinと表記される場合がある。特徴点設定部１０３により設定された特徴点Ｗin及び特徴領域Ａinの情報は、記憶部１０１に格納される。また、特徴点Ｗin及び特徴領域Ａinの情報は、特徴量計算部１０４に入力される。
【００６２】
特徴量計算部１０４は、画素ペア情報１０１ａを参照し、例えば、図６に示すような方法で特徴点設定部１０３により設定された特徴領域Ａinの特徴量を計算する。図６は、第２実施形態に係る特徴量の計算について説明するための図である。
【００６３】
特徴量計算部１０４は、入力画像Ｐinの特徴領域Ａinから画素ペア毎に各画素の輝度を抽出する（Ｃ１）。また、特徴量計算部１０４は、画素ペア毎に抽出した２つの輝度の差分を求めることで、各画素ペアの輝度差を計算する（Ｃ２）。また、特徴量計算部１０４は、計算した輝度差の符号（正負）を表すビット値を並べたビット列（以下、局所特徴量）を生成する（Ｃ３）。
【００６４】
なお、輝度差の符号とビット値とは予め対応付けられている。例えば、正の符号がビット値「１」に対応付けられ、負の符号がビット値「０」に対応付けられている。また、輝度差を計算する際、画素ペアを成す２つの画素のうち、どちらの画素の輝度から、他方の画素の輝度を減算するかも予め設定されている。例えば、座標（Ｘ1，Ｙ1）に位置する画素の輝度から座標（Ｘ2，Ｙ2）に位置する画素の輝度を減算した輝度差の符号を局所特徴量の生成に利用することが予め設定されている。
【００６５】
また、局所特徴量を生成する際、ビット値を並べる順番も予め設定されている。例えば、画素ペア情報１０１ａに記載された画素ペアのＩｎｄｅｘ順にビット値が計算され、計算された順に並べて局所特徴量が生成される。２５６個の画素ペアが設定されている場合、２５６ビットのビット列で表現された局所特徴量が得られる。局所特徴量は、入力画像Ｐinに含まれる全ての特徴領域Ａinについて計算される。入力画像Ｐinについて特徴量計算部１０４により計算された局所特徴量の組は、記憶部１０１に格納される。
【００６６】
（認識処理に関する機能について）
距離計算部１０５、投票処理部１０６、及び判定部１０７は、認識処理に関する機能を提供する。また、認識処理に際し、記憶部１０１に格納された参照画像情報１０１ｂが利用される。
【００６７】
記憶部１０１には、画素ペア情報１０１ａの他に、認識対象となる対象物を撮像した参照画像Ｐr、及び参照画像情報１０１ｂが格納される。
参照画像情報１０１ｂは、参照画像管理テーブル、及び特徴量管理テーブルを含む。記憶部１０１には、様々な対象物に対応する参照画像Ｐrが格納されている。また、１つの対象物について複数のサイズ、複数の撮影方向に対応する複数の参照画像Ｐrが記憶部１０１に格納されている。これらの参照画像Ｐrのデータと対象物とを対応付ける情報が参照画像管理テーブルである。
【００６８】
例えば、参照画像管理テーブルは、図７に示すように、対象物名と参照画像Ｐrのデータが格納されている場所（以下、画像データリンク）とを対応付ける。なお、図７は、第２実施形態に係る参照画像情報（参照画像管理テーブル）の一例を示した図である。参照画像管理テーブルの各レコードは、識別番号ＩＤ＃１により識別される。図７の例では、ＩＤ＃１が００１のレコードには、対象物名「サーバＳＶ１」と画像データ「Ｐ００１００１」の画像データとが対応付ける情報が記録されている。
【００６９】
一方、特徴量管理テーブルは、参照画像Ｐrに含まれる各特徴点と、特徴点毎に計算された特徴量（局所特徴量）とを対応付ける情報である。特徴量管理テーブルは、参照画像Ｐr毎に設けられる。つまり、参照画像管理テーブルのレコード毎に特徴量管理テーブルが設けられる。ＩＤ＃１が００１〜００３のレコードに対応する特徴量管理テーブルの例を図８に示した。図８は、第２実施形態に係る参照画像情報（特徴量管理テーブル）の一例を示した図である。
【００７０】
図８に示すように、特徴量管理テーブルの各レコードは識別番号ＩＤ＃２により識別される。例えば、ＩＤ＃１が００１、ＩＤ＃２が００２のレコードを参照すると、特徴点（Ｘ2，Ｙ2）に対し、局所特徴量０１１００…が対応付けられている。参照画像Ｐrの特徴点は、入力画像Ｐinに特徴点を設定する場合と同様に、Ｄｅｎｓｅ  Ｓａｍｐｌｉｎｇなどの方法により設定される（図９を参照）。図９は、第２実施形態に係る参照画像の特徴点と特徴領域について説明するための図である。以下、参照画像Ｐrに設定される特徴点はＷrと表記される場合がある。また、特徴点Ｗrを基準に設定される特徴領域はＡrと表記される場合がある。
【００７１】
特徴量管理テーブルには、特徴点Ｗr毎に設定された参照画像Ｐrの特徴領域Ａrから予め計算された局所特徴量が記録される。なお、特徴領域Ａrから局所特徴量を計算する方法は、入力画像Ｐinの特徴領域Ａinから局所特徴量を計算する方法と同じである。つまり、特徴領域Ａrに基づく局所特徴量は、記憶部１０１に格納された画素ペア情報１０１ａに基づいて設定された画素ペア毎に図６に例示した手順に沿って計算できる。
【００７２】
距離計算部１０５は、局所特徴量に基づき、入力画像Ｐinの各特徴領域Ａinと、参照画像Ｐrの各特徴領域Ａrとの距離（特徴の相違度）を計算する。なお、距離計算部１０５は、参照画像管理テーブルに含まれる各参照画像Ｐrについて距離を計算する。
【００７３】
ここで、１つの特徴領域Ａinと１つの特徴領域Ａrとの距離を計算する方法について説明する。以下の説明において、特徴領域Ａinの局所特徴量はＬＦin、特徴領域Ａrの局所特徴量はＬＦrと表記される場合がある。
【００７４】
距離計算部１０５は、下記の式（１）に従って、局所特徴量ＬＦin、ＬＦrからビット列ＨＶを計算する。また、距離計算部１０５は、ビット列ＨＶの長さ（ＨＶに含まれるビット値１の数）を計算する。ビット列ＨＶの長さは、特徴領域Ａin、Ａr間における特徴の違いを表す距離Ｄである。但し、下記の式（１）において、ＸＯＲは排他的論理和演算を表す。
【００７５】
ＨＶ＝｛ＬＦin  ＸＯＲ  ＬＦr｝
…（１）
上記の式（１）で表現した演算は、局所特徴量ＬＦin、ＬＦrの各ビット値について、一致する場合に１、不一致の場合に０とする演算である。つまり、この演算により１となったビット値の数を合計することで、局所特徴量に基づく特徴領域Ａin、Ａr間の距離Ｄ（特徴の違い）が得られる。
【００７６】
距離計算部１０５は、全ての参照画像Ｐrについて、上記の方法により入力画像Ｐinに含まれる各特徴領域Ａinと、参照画像Ｐrに含まれる各特徴領域Ａrとの間の距離Ｄを計算する。距離計算部１０５により計算された距離の情報は、投票処理部１０６に入力される。
【００７７】
（投票処理について）
投票処理部１０６は、参照画像Ｐrの特徴領域Ａrと、入力画像Ｐinの各特徴領域Ａinとの組について計算された距離Ｄに基づき、類似度が最も高い（距離Ｄが最も小さくなる）特徴領域Ａr、Ａinの組を抽出する。つまり、投票処理部１０６は、参照画像Ｐrの各特徴領域Ａrについて、類似度が最も高い特徴領域Ａin、Ａrの組に対応する特徴点の組を抽出する（対応点探索）。
【００７８】
図１０に示すように、対応点探索により特徴点の組が得られると、投票処理部１０６は、特徴領域Ａrの特徴点と参照画像Ｐrの中心との位置関係に基づき、参照画像Ｐrの中心が位置する入力画像Ｐin内の位置を特定する（中心特定）。つまり、投票処理部１０６は、既知である特徴領域Ａrの特徴点から参照画像Ｐrの中心への向き及び距離を利用し、対応する入力画像Ｐinの特徴点から同じ向き及び距離へ移動した位置（以下、特定点）を特定する。なお、向き及び距離はベクトルで表現できる。
【００７９】
上記の中心特定は、入力画像Ｐinの特徴点と、対応する参照画像Ｐrの特徴点とが一致するように参照画像Ｐrを入力画像Ｐinに重ねた場合に、入力画像Ｐinにおける参照画像Ｐrの中心を計算する処理に相当する。例えば、特定点の座標を（Ｘv，Ｙv）、入力画像Ｐinの横幅をｗi、高さをｈi、参照画像Ｐrの横幅をｗr、高さをｈrとすると、座標（Ｘv，Ｙv）は、下記の式（２）及び式（３）により計算できる。但し、参照画像Ｐrの特徴点は座標（Ｘr，Ｙr）で表現され、対応する入力画像Ｐinの特徴点は座標（Ｘi，Ｙi）で表現されている。
【００８０】
Ｘv＝Ｘi−Ｘr＋ｗr／２
…（２）
Ｙv＝Ｙi−Ｙr＋ｈr／２
…（３）
投票処理部１０６は、計算した特定点の座標に基づいて統計的手法により入力画像Ｐinに参照画像Ｐrが含まれるか否かを判定する。このとき、投票処理部１０６は、統計的手法として、例えば、投票を採用する。
【００８１】
投票は、図１０に示すように、入力画像Ｐinと同じサイズの領域に枡目を設けた投票マップを利用して行われる。図１０は、第２実施形態に係る投票処理のうち対応点探索、中心特定、投票に関する処理の一例を示した図である。投票マップの各枡目にはカウンタが対応付けられている。投票処理部１０６は、特定点の座標を含む枡目を抽出し、抽出した枡目に対応するカウンタのカウント値（投票数）をカウントアップする。このカウントアップの処理が投票である。
【００８２】
ここで、投票処理部１０６は、同じ特徴領域Ａrについて、類似度が高い（距離Ｄが小さくなる）順に特徴領域Ａinを順次抽出し、抽出した特徴領域Ａinに対応する距離Ｄが予め設定した閾値（以下、第１閾値）より小さいか否かを判定する。
【００８３】
距離Ｄが第１閾値より小さい場合、投票処理部１０６は、中心特定を行い、抽出した特徴領域Ａinの特徴点を基準に特定点を特定し、特定した特定点の座標を含む枡目に対応するカウンタのカウント値をカウントアップする。一方、距離Ｄが第１閾値より大きい場合、投票処理部１０６は、同じ特徴領域Ａrに対する中心特定及び投票の処理を終了する。なお、上記の第１閾値は、実際に様々な参照画像と入力画像とを用意して実験し、或いは、コンピュータシミュレーションにより、所望の精度で正しい認識結果が得られるような値に設定される。
【００８４】
上記のように、距離Ｄが第１閾値より小さい範囲で、類似度が高い（距離Ｄが小さくなる）順に特徴領域Ａinを抽出することで、図１１に示すように、１つの特徴領域Ａrに対して複数の特徴領域Ａin1、…、Ａin4が得られ、複数の特定点が特定される。図１１は、第２実施形態に係る中心の誤特定リスクと複数特定点の投票について説明するための図である。投票処理部１０６は、各特定点の座標を含む投票マップの枡目を抽出し、抽出した枡目に対応するカウンタのカウント値をカウントアップする。
【００８５】
なお、図１１の例では、類似の形状を有する複数のサーバＳＶ１、…、ＳＶ５を含む対象物が入力画像Ｐinに含まれるため、複数の特徴領域Ａin1、…、Ａin4が得られるが、対象物によっては１つの特徴領域Ａinだけが抽出されることもある。例えば、距離Ｄが第１閾値より小さい特徴領域Ａinがない場合、類似度が最も高い（距離Ｄが最も小さくなる）特徴領域Ａinだけが抽出される。
【００８６】
ここで、図１２〜図１４を参照しながら、複数の特定点を特定可能とする理由について説明する。図１２は、第２実施形態に係る複数特定点の投票による作用について説明するための第１の図である。図１３は、第２実施形態に係る複数特定点の投票による作用について説明するための第２の図である。図１４は、第２実施形態に係る複数特定点の投票による作用について説明するための第３の図である。
【００８７】
図１２は、対応点探索により特徴領域Ａrの特徴点に対応する特徴領域Ａinが正しく抽出された場合の投票位置を示している。また、図１２の例は、参照画像Ｐrにおける３つの特徴点Ａ０、Ｂ０、Ｃ０について投票を行う場合を示している。対応点探索により、特徴点Ａ０に対応する特徴点Ａ１、特徴点Ｂ０に対応する特徴点Ｂ１、特徴点Ｃ０に対応する特徴点Ｃ１が正しく得られたとすると、参照画像Ｐrの中心に対応する投票位置は、図１２に示すように一カ所に集中する。
【００８８】
後述するように、投票処理部１０６は、正しく対応点探索が行えた場合に投票位置が一カ所に集中する性質を利用して対象物の有無を判定する。一方、対応点探索において、図１３に示すように、特徴点Ａ０、Ｂ０、Ｃ０のそれぞれについて誤った特徴点Ａ２、Ｂ２、Ｃ２が抽出されたとすると、投票位置は一カ所に集中しない。この場合、対象物の有無を判定する処理に誤りが生じる。図１１に例示した対象物のように類似した形状が入力画像Ｐinに複数含まれる場合、図１３のような誤りが生じやすい。
【００８９】
そこで、投票処理部１０６は、図１４に示すように、１つの特徴点に対して対応する特徴点を複数特定する。類似度が高い特徴点を複数特定すれば、特定した特徴点の中に正しい特徴点が含まれる。そのため、正しい特徴点に対応する投票位置は、図１２の例と同様に集中するから、投票マップの中で参照画像Ｐrの中心に対応する位置に投票数のピークが現れる。なお、誤って抽出された特徴点に対応する投票位置にも投票されるが、図１４に示すように、これらの投票位置は偶然の場合を除いて一カ所に集中しない。
【００９０】
参照画像Ｐr内の１つの特徴点について複数の投票が行われるため、投票マップ全体の投票数は、１つの特徴点について１票しか投票しない場合に比べて多くなる。しかし、正しく抽出された特徴点については投票が一カ所に集中し、誤って抽出された特徴点については投票が広く散らばる性質がある。そのため、投票が集中する箇所における投票数を基準に対象物の有無を判定することで、対応点探索の誤りが生じやすい対象物に対しても、対象物の有無を精度良く判定することができるようになる。
【００９１】
参照画像Ｐrの各特徴点について同様に投票を行った後、投票処理部１０６は、投票マップの情報を記憶部１０１に格納する。また、投票マップの情報は、判定部１０７に入力される。判定部１０７は、図１５に示すように、投票数の最大値を抽出する。図１５は、第２実施形態に係る判定処理のうち最大値抽出、閾値判定に関する処理の一例を示した図である。また、判定部１０７は、抽出した最大数と予め設定した第２閾値とを比較する。
【００９２】
なお、第２閾値は、例えば、様々な入力画像Ｐin、参照画像Ｐrの組み合わせについて実験又はシミュレーションを行い、許容可能な精度で正しい判定結果が得られる値に設定される。また、最大数を投票マップ内の全投票数で割った正規化値と第２閾値とを比較するようにしてもよい。
【００９３】
最大数が第２閾値より大きい場合、判定部１０７は、入力画像Ｐinの中に参照画像Ｐrが存在すると判定する。この場合、判定部１０７は、最大数に対応する枡目の位置を参照画像Ｐrの中心が存在する位置と判定する。一方、最大数が第２閾値より小さい場合、判定部１０７は、入力画像Ｐinの中に参照画像Ｐrが存在しないと判定する。このように、投票マップを利用して判定を行うことで、入力画像Ｐinと参照画像Ｐrとの間に生じた許容可能な誤差を吸収し、ロバストな判定を行うことができる。
【００９４】
入力画像Ｐinの中に参照画像Ｐrが存在すると判定した場合、判定部１０７は、対応する参照画像Ｐrの参照画像管理テーブルを記憶部１０１から読み出し、参照画像Ｐrに含まれる対象物の情報を出力する。対象物の情報としては、例えば、対象物の名称や位置、或いは、参照画像管理テーブルのＩＤなどがある。なお、複数の対象物が存在すると判定された場合、判定部１０７は、それら全ての対象物の情報を出力してもよいし、投票数の合計値や最大数が最も大きい対象物の情報だけを出力してもよい。
【００９５】
参照画像管理テーブルに含まれる全ての参照画像Ｐrについて、入力画像Ｐinの中に参照画像Ｐrが存在しないと判定した場合、判定部１０７は、対象物が存在しない旨を示すエラー情報を出力する。
【００９６】
ところで、１つの特徴領域Ａrに対して複数の特徴領域Ａinを抽出し、複数の特徴領域Ａinに対応する特定点の位置に投票が行われるため、１つの特徴領域Ａrに対して１つの特徴領域Ａinを抽出する場合に比べ、投票マップ全体の投票数は多くなる。また、誤特定に基づく特定点の位置にも投票されるため、第２閾値が適当な値でないと、参照画像Ｐrの有無を誤って判定するリスクがある。
【００９７】
但し、１つの特徴領域Ａrについて投票マップの１つの枡目に投票される投票数の最大は１であるから、正解以外の枡目が極端に大きな投票数を得ることはない。しかし、正解以外の枡目の投票数が第２閾値を超えて誤判定を生じることがないように、第２閾値は大きめの値に設定されることが好ましい。例えば、第２実施形態に係る上記の方法を適用する場合、１つの特徴領域Ａrに対して１つの特徴領域Ａinを抽出する方法で適当とされる第２閾値よりも大きな値に第２閾値を設定することが好ましい。この設定により誤判定のリスクを低減することができる。
【００９８】
なお、上記の例は１回の投票で特定点の座標に対応する１つの枡目に１票を投票する方法であったが、２票以上の単位で投票することも可能である。つまり、カウント値の増分を１から２以上の値に変形してもよい。また、変形例として、特定点の座標に対応する枡目に２票を投じ、当該枡目に隣接する周辺の枡目に１票を投じる方法も適用可能である。つまり、特定点の座標に対応する枡目のカウント値を２増加させ、その枡目に隣接する各枡目のカウント値を１増加させる方法を適用してもよい。
【００９９】
また、特定点の座標に対応する枡目に１票を投じ、当該枡目からの距離に応じて減じた票数を周囲の枡目に投じる方法も適用可能である。例えば、枡目１つ分離れた位置の枡目には１／２票、枡目２つ分離れた位置の枡目には１／３票投じる方法などを適用可能である。上記のように、特定点の座標に対応する枡目の周囲に位置する枡目にも重み付けした票数を投票することで、対応点探索の際に生じた誤差の影響を緩和し、認識精度を高めることができる。
【０１００】
以上、画像処理装置１００の機能について説明した。
［２−３．処理の流れ］
次に、画像処理装置１００が実行する処理の流れについて説明する。
【０１０１】
（入力画像の処理）
図１６及び図１７を参照しながら、入力画像の処理に関する処理の流れについて説明する。図１６は、第２実施形態に係る入力画像の処理に関する処理の流れを示したフロー図である。図１７は、第２実施形態に係る特徴量の計算に関する処理の流れを示したフロー図である。
【０１０２】
（Ｓ１０１）画像取得部１０２は、認識処理の対象となる画像（入力画像Ｐin）を取得する。例えば、画像取得部１０２は、外部の記憶装置（非図示）又は画像処理装置１００に接続された撮像装置２００から入力画像Ｐinを取得する。画像取得部１０２により取得された入力画像Ｐinは、記憶部１０１に格納される。また、入力画像Ｐinは、特徴点設定部１０３に入力される。
【０１０３】
（Ｓ１０２）特徴点設定部１０３は、画像取得部１０２により取得された入力画像Ｐinに複数の特徴点Ｗinを設定する。例えば、特徴点設定部１０３は、Ｄｅｎｓｅ  Ｓａｍｐｌｉｎｇを用いて入力画像Ｐinに特徴点Ｗinを設定する（図５を参照）。なお、特徴点の設定には、ＦＡＳＴなどの方法も適用可能である。また、特徴点Ｗinを基準に特徴領域Ａinが設定される。特徴点設定部１０３により設定された特徴点Ｗin及び特徴領域Ａinの情報は、記憶部１０１に格納される。また、特徴点Ｗin及び特徴領域Ａinの情報は、特徴量計算部１０４に入力される。
【０１０４】
（Ｓ１０３）特徴量計算部１０４は、特徴点設定部１０３により設定された特徴点Ｗinの中から特徴点Ｗinを１つ選択する。
（Ｓ１０４）特徴量計算部１０４は、画素ペア情報１０１ａを参照し、Ｓ１０３で選択した特徴点Ｗinについて局所特徴量を計算する。例えば、特徴量計算部１０４は、画素ペア情報１０１ａに含まれる各画素ペアの輝度差を計算する。また、特徴量計算部１０４は、計算した輝度差の符号（正負）に応じたビット値を特定し、特定したビット値を並べたビット列を局所特徴量に設定する。
【０１０５】
（Ｓ１０５）特徴量計算部１０４は、入力画像Ｐinに含まれる全ての特徴点について局所特徴量の計算を終えたか否かを判定する。入力画像Ｐinに含まれる全ての特徴点について局所特徴量の計算を終えた場合、処理はＳ１０６へと進む。一方、局所特徴量の計算を終えていない特徴点がある場合、処理はＳ１０３へと進む。
【０１０６】
（Ｓ１０６）特徴量計算部１０４は、Ｓ１０４で計算した局所特徴量の組を記憶部１０１に格納する。Ｓ１０６の処理が完了すると、図１６に示した一連の処理は終了する。
ここで、Ｓ１０４の処理について、さらに説明する。
【０１０７】
（Ｓ１１１）特徴量計算部１０４は、画素ペア情報１０１ａを参照し、局所特徴量の計算対象となる特徴点周辺の特徴領域Ａinに画素ペアを設定する。画素ペアの配置は、予め設定され、画素ペア情報１０１ａとして記憶部１０１に格納されている。
【０１０８】
（Ｓ１１２）特徴量計算部１０４は、Ｓ１１１で設定した画素ペアの中から画素ペアを１つ選択する。
（Ｓ１１３）特徴量計算部１０４は、Ｓ１１２で選択した画素ペアの各画素の輝度値を特徴領域Ａinから抽出する。そして、特徴量計算部１０４は、抽出した輝度値から画素ペアの輝度差を計算する。なお、輝度差を計算する際、画素ペアを成す２つの画素のうち、どちらの画素の輝度から、他方の画素の輝度を減算するかも予め設定されている。
【０１０９】
（Ｓ１１４）特徴量計算部１０４は、Ｓ１１３で計算した輝度差の符号に対応するビット値を選択し、局所特徴量のビット値に設定する。なお、輝度差の符号とビット値とは予め対応付けられている。例えば、正の符号がビット値「１」に対応付けられ、負の符号がビット値「０」に対応付けられている。
【０１１０】
（Ｓ１１５）特徴量計算部１０４は、画素ペア情報１０１ａに含まれる全ての画素ペアを選択し終えたか否かを判定する。全ての画素ペアを選択し終えている場合、図１７に示した一連の処理は終了する。このとき、局所特徴量として、Ｓ１１４で設定されたビット値を並べたビット列が得られる。一方、未選択の画素ペアがある場合、処理はＳ１１２へと進む。
【０１１１】
以上、入力画像の処理に関する処理の流れについて説明した。
（認識処理）
次に、図１８〜図２０を参照しながら、認識処理に関する処理の流れについて説明する。図１８は、第２実施形態に係る認識処理に関する処理の流れを示したフロー図である。図１９は、第２実施形態に係る参照画像の探索に関する処理の流れを示した第１のフロー図である。図２０は、第２実施形態に係る参照画像の探索に関する処理の流れを示した第２のフロー図である。
【０１１２】
（Ｓ２０１）距離計算部１０５は、記憶部１０１から局所特徴量の組を取得する。
（Ｓ２０２）距離計算部１０５は、記憶部１０１に格納されている参照画像Ｐrを１つ選択する。
【０１１３】
（Ｓ２０３）距離計算部１０５は、参照画像Ｐrの各特徴領域Ａrと入力画像Ｐinの各特徴領域Ａinとの距離Ｄ（特徴の相違度）を計算する。投票処理部１０６は、距離計算部１０５により計算された距離Ｄを利用して投票処理を実行し、投票マップを生成する。判定部１０７は、投票処理部１０６により生成された投票マップに基づいて、入力画像Ｐinにおける参照画像Ｐrの有無を判定する。これらの処理によりＳ２０２で選択された参照画像Ｐrの探索が実行される。
【０１１４】
（Ｓ２０４）距離計算部１０５は、記憶部１０１に格納されている全ての参照画像Ｐrを選択し終えたか否かを判定する。全ての参照画像Ｐrを選択し終えた場合、処理はＳ２０５へと進む。一方、未選択の参照画像Ｐrがある場合、処理はＳ２０２へと進む。
【０１１５】
（Ｓ２０５）判定部１０７は、入力画像Ｐinの中に少なくとも１つの参照画像Ｐrが存在したか否かを判定する。参照画像Ｐrが存在した場合、処理はＳ２０６へと進む。一方、参照画像Ｐrが存在しなかった場合、処理はＳ２０７へと進む。
【０１１６】
（Ｓ２０６）判定部１０７は、入力画像Ｐinの中に存在すると判定された参照画像Ｐrに関する参照画像情報１０１ｂを記憶部１０１から取得し、取得した参照画像情報１０１ｂを出力する。Ｓ２０６の処理が完了すると、図１８に示した一連の処理は終了する。
【０１１７】
（Ｓ２０７）判定部１０７は、入力画像Ｐinの中から参照画像Ｐrを検出することに失敗した旨のエラー情報を出力する。Ｓ２０７の処理が完了すると、図１８に示した一連の処理は終了する。
【０１１８】
ここで、Ｓ２０３の処理について、さらに説明する。
（Ｓ２２１）距離計算部１０５は、参照画像Ｐrの特徴点を１つ選択する。
（Ｓ２２２）距離計算部１０５は、入力画像Ｐinの各特徴点と、Ｓ２２１で選択した参照画像Ｐrの特徴点との距離Ｄを計算する。つまり、距離計算部１０５は、入力画像Ｐinの各特徴領域Ａinと参照画像Ｐrの特徴領域Ａrとの類似度が高いほど小さい値となる距離Ｄを計算する。
【０１１９】
例えば、距離計算部１０５は、上記の式（１）に従って特徴領域Ａinの局所特徴量ＬＦin、特徴領域Ａrの局所特徴量ＬＦrからビット列ＨＶを計算する。そして、距離計算部１０５は、ビット列ＨＶの長さ（ＨＶに含まれるビット値１の数）を計算し、計算した値を距離Ｄとする。なお、距離計算部１０５は、特徴領域Ａin毎に計算した距離Ｄの情報を、距離Ｄが小さい順に並べたリストの形式で記憶部１０１に格納してもよい。
【０１２０】
（Ｓ２２３）投票処理部１０６は、距離計算部１０５により計算された距離Ｄの最小値（最小距離）に対応する特徴点を特定する。そして、投票処理部１０６は、特定した特徴点を基準に特定点を特定する。
【０１２１】
例えば、投票処理部１０６は、既知である特徴領域Ａrの特徴点から参照画像Ｐrの中心への向き及び距離を利用し、最小距離に対応する入力画像Ｐinの特徴点から同じ向き及び距離へ移動した位置（特定点）を特定する。このとき、投票処理部１０６は、上記の式（２）及び式（３）に従って特定点の座標を計算する。なお、投票処理部１０６は、最小距離に対応する特徴点を特定する際、距離計算部１０５が記憶部１０１に格納した距離Ｄのリストを利用してもよい。
【０１２２】
（Ｓ２２４）投票処理部１０６は、特定点の座標を含む投票マップの枡目を抽出し、抽出した枡目に対応するカウンタのカウント値（投票数）をカウントアップする。つまり、投票処理部１０６は、特定点の位置に投票する。
【０１２３】
（Ｓ２２５）投票処理部１０６は、距離Ｄが第１閾値以下の他の特徴点があるか否かを判定する。なお、第１閾値は、実際に様々な参照画像と入力画像とを用意して実験し、或いは、コンピュータシミュレーションにより、所望の精度で正しい認識結果が得られるような値に設定される。距離Ｄが第１閾値以下の他の特徴点がない場合、処理はＳ２２８へと進む。一方、距離Ｄが第１閾値以下の他の特徴点がある場合、処理はＳ２２６へと進む。
【０１２４】
（Ｓ２２６）投票処理部１０６は、距離Ｄが第１閾値以下となる他の特徴点を基準に特定点を特定する。例えば、投票処理部１０６は、既知である特徴領域Ａrの特徴点から参照画像Ｐrの中心への向き及び距離を利用し、他の特徴点から同じ向き及び距離へ移動した位置（特定点）を特定する。なお、投票処理部１０６は、上記の式（２）及び式（３）に従って特定点の座標を計算する。
【０１２５】
（Ｓ２２７）投票処理部１０６は、Ｓ２２６で特定した特定点の座標を含む投票マップの枡目を抽出し、抽出した枡目に対応するカウンタのカウント値（投票数）をカウントアップする。つまり、投票処理部１０６は、Ｓ２２６で特定した特定点の位置に投票する。
【０１２６】
（Ｓ２２８）距離計算部１０５は、参照画像Ｐrに含まれる全ての特徴点を選択し終えたか否かを判定する。参照画像Ｐrに含まれる全ての特徴点を選択し終えた場合、処理は図２０のＳ２２９へと進む。一方、未選択の特徴点がある場合、処理はＳ２２１へと進む。
【０１２７】
（Ｓ２２９）判定部１０７は、投票マップから投票数の最大値を抽出する。
（Ｓ２３０）判定部１０７は、Ｓ２２９で抽出した最大値と予め設定された第２閾値とを比較し、最大値が第２閾値より大きいか否かを判定する。なお、第２閾値は、例えば、様々な入力画像Ｐin、参照画像Ｐrの組み合わせについて実験又はシミュレーションを行い、許容可能な精度で正しい判定結果が得られる値に設定される。また、最大数を投票マップ内の全投票数で割った正規化値と第２閾値とを比較するようにしてもよい。最大値が第２閾値より大きい場合、処理はＳ２３２へと進む。一方、最大値が第２閾値より大きくない場合、処理はＳ２３１へと進む。
【０１２８】
（Ｓ２３１）判定部１０７は、入力画像Ｐinに参照画像Ｐrが存在しないと判定する。Ｓ２３１の処理が完了すると、図２０に示した一連の処理は終了する。
（Ｓ２３２）判定部１０７は、入力画像Ｐinに参照画像Ｐrが存在すると判定する。Ｓ２３２の処理が完了すると、図２０に示した一連の処理は終了する。
【０１２９】
以上、画像処理装置１００が実行する処理の流れについて説明した。
［２−４．変形例＃１］
次に、図２１を参照しながら、第２実施形態の一変形例（変形例＃１）について説明する。図２１は、第２実施形態の一変形例（変形例＃１）に係る参照画像の探索に関する処理の流れを示したフロー図である。
【０１３０】
変形例＃１は、図１９に示した処理の流れを変形するものである。図１９の例は、距離Ｄが第１閾値以下の他の特徴点について、特定点を追加する処理を採用していた。一方、変形例＃１は、距離Ｄが小さい順に所定数の特徴点について、特定点を追加する仕組みを採用する。
【０１３１】
（Ｓ２４１）距離計算部１０５は、参照画像Ｐrの特徴点を１つ選択する。
（Ｓ２４２）距離計算部１０５は、入力画像Ｐinの各特徴点と、Ｓ２４１で選択した参照画像Ｐrの特徴点との距離Ｄを計算する。つまり、距離計算部１０５は、入力画像Ｐinの各特徴領域Ａinと参照画像Ｐrの特徴領域Ａrとの類似度が高いほど小さい値となる距離Ｄを計算する。例えば、距離計算部１０５は、上記の式（１）に従って特徴領域Ａinの局所特徴量ＬＦin、特徴領域Ａrの局所特徴量ＬＦrからビット列ＨＶを計算する。そして、距離計算部１０５は、ビット列ＨＶの長さ（ＨＶに含まれるビット値１の数）を計算し、計算した値を距離Ｄとする。
【０１３２】
（Ｓ２４３）投票処理部１０６は、距離Ｄが小さい順に所定数の特徴点を選択する。所定数は、予め設定された任意の数であってもよいし、実験やシミュレーションに基づいて所望の判定精度が得られるように決定された値であってもよい。例えば、所定数は３などに設定される。
【０１３３】
（Ｓ２４４）投票処理部１０６は、Ｓ２４３で選択した特徴点を基準に特定点を特定する。例えば、投票処理部１０６は、既知である特徴領域Ａrの特徴点から参照画像Ｐrの中心への向き及び距離を利用し、Ｓ２４３で選択した特徴点から同じ向き及び距離へ移動した位置（特定点）を特定する。なお、投票処理部１０６は、上記の式（２）及び（３）に従って特定点の座標を計算する。
【０１３４】
（Ｓ２４５）投票処理部１０６は、特定点の座標を含む投票マップの枡目を抽出し、抽出した枡目に対応するカウンタのカウント値（投票数）をカウントアップする。つまり、投票処理部１０６は、特定点の位置に投票する。
【０１３５】
（Ｓ２４６）距離計算部１０５は、参照画像Ｐrに含まれる全ての特徴点を選択し終えたか否かを判定する。参照画像Ｐrに含まれる全ての特徴点を選択し終えた場合、処理は図２０のＳ２２９へと進む（Ｓ２４６以降の処理は、図２０に示したＳ２２９以降の処理と同じである）。一方、未選択の特徴点がある場合、処理はＳ２４１へと進む。
【０１３６】
以上、第２実施形態の一変形例（変形例＃１）について説明した。
［２−５．変形例＃２］
次に、図２２及び図２３を参照しながら、第２実施形態の一変形例（変形例＃２）について説明する。図２２は、第２実施形態の一変形例（変形例＃２）に係る重み値の設定方法の例を示した図である。図２３は、第２実施形態の一変形例（変形例＃２）に係る参照画像の探索に関する処理の流れを示したフロー図である。
【０１３７】
変形例＃２は、投票に際し、カウンタの増分に重み付けする処理を追加する。図２２は、重み付けに用いる重み値の種類及び重み値の設定方法の例を示している。
図１２、図１３、図１４を参照しながら既に説明したように、第２実施形態の技術を適用すると、対応点探索により誤特定が生じても、正しく特定された特徴点に基づいて投票数のピークが得られる。但し、誤特定した特徴点の影響により誤って投票された投票数の分布がノイズとして残る。変形例＃２の方法は、最小距離に比べて距離Ｄが大きな特徴点については重み値によりカウント値の増分を小さくし、上記のノイズを抑制する。ノイズが抑制されることで、投票値のピークが強調され、判定精度の向上が期待できる。以下、４種類の重み値の設定方法について説明する。
【０１３８】
（Ａ）重み値を「固定値」に設定する方法は、距離Ｄの小ささが２番目以降の特徴点について、特定点の位置に投票する際、予め設定された値（例えば０．８）の増分でカウント値を増加させる方法である。なお、重み付けしない場合のカウント値の増分を１とした場合、重み値は１未満の値に設定される。２番目以降の特徴点についてカウント値の増分が抑えられることで、上述したノイズの低減効果が得られる。
【０１３９】
（Ｂ）「距離Ｄが小さい順に特徴量を並べた場合の順番ｎに基づく重み値」を設定する方法は、順番ｎが大きいほど重み値を小さくして投票数への寄与度を下げる方法である。対応点探索の精度や対象物の形状などによるが、例えば、距離Ｄが小さい順に４番目以降の特徴点が正しい特徴点である可能性が低い場合、上位の特徴点に比べて重み値を小さくすることで、効果的に上述したノイズを低減することができる。図２２には、当該方法に係る重み値の設定方法の例を３通り示した。
【０１４０】
第１の例は、パラメータｗ（例えば１．８）について、距離Ｄが小さい順にｎ番目（ｎ≧２）の特徴点の重み値をｗ／ｎに設定する方法である。この方法を適用した場合、例えば、ｗが１．８であれば、２番目の特徴点の重み値は０．９、３番目の特徴点の重み値は０．６、４番目の特徴点の重み値は０．４５などとなる。なお、パラメータｗは２未満の値に設定される。
【０１４１】
第２の例は、距離Ｄが小さい順に、２番目の特徴点の重み値を０．９、３番目の特徴点の重み値を０．８、４番目以降の特徴点の重み値を０．３に設定する方法である。この例は、４番目以降の特徴点が正しい特徴点である可能性が低い場合に、効果的に上述したノイズを低減することができる。なお、例示した０．９、０．８、０．３という値は他の１未満の値に変更してもよい。また、この例では４番目以降の特徴点の重み値を一定としたが、３番目以降、或いは、５番目以降の特徴点の重み値を一定とする変形も可能である。
【０１４２】
第３の例は、閾値ｔ（例えば５）を予め設定しておき、距離Ｄが小さい順に上位ｔ番目までの特徴点の重み値を（ｔ−ｎ）／（ｔ−１）に設定し、（ｔ＋１）番目以降の特徴点の重み値を０に設定する方法である。例えば、ｔが５の場合、２番目の特徴点の重み値は３／４、３番目の特徴点の重み値は１／２などとなる。このように、順番ｎに応じた重み値の減少を定式化して規定することも可能である。
【０１４３】
（Ｃ）「距離Ｄに基づく重み値」を設定する方法は、距離Ｄが大きいほど重み値を小さくして投票数への寄与度を下げる方法である。距離Ｄが大きければ、対応点探索により正しく抽出された特徴点である可能性は低い。そのため、上記順番ｎにかかわらず距離Ｄが大きければ重み値を小さくして投票数への寄与度を下げることで、効果的に上述したノイズを低減することができる。図２２には、当該方法に係る重み値の設定方法の例を２通り示した。
【０１４４】
第１の例は、重み値を１／（１＋Ｄ）に設定する方法である。特徴点同士の特徴が完全に一致する場合に距離Ｄは０となり、重み値は最大の１となる。一方、特徴点同士の特徴が最も異なる場合、２５６ビットの局所特徴量を利用していれば、距離Ｄは２５６となり、重み値は０に近い値になる。当該方法によれば、上記の順番ｎが２や３であっても距離Ｄが大きければ、投票数への寄与度が大きく抑制される。そのため、効果的に上述したノイズを低減できる。
【０１４５】
第２の例は、閾値ｆ（例えば１０）を予め設定しておき、距離Ｄがｆ未満の場合に重み値を（ｆ−Ｄ）／ｆ、ｆ以上の場合に重み値を０に設定する方法である。例えば、ｆが１０の場合、距離Ｄが０であれば重み値が最大値１となり、距離Ｄが１０であれば重み値が最小値０となる。つまり、距離Ｄが０から閾値ｆまでの間にある場合に、距離Ｄに応じて滑らかに重み値が低減する。例えば、明らかに誤特定と判断できる距離Ｄがあれば、その距離Ｄを閾値ｆに設定することで、効果的に上述したノイズを低減できる。
【０１４６】
（Ｄ）「特徴点あたりの投票数ｍに基づく重み値」を設定する方法は、参照画像Ｐrの１つの特徴点に対し、対応点探索により特定される特徴点の数（つまり、特定数の数及び投票数）ｍに基づいて重み値を設定する方法である。１つの特徴点あたりの投票数ｍが多いほど、誤特定された特徴点が多く含まれている。そこで、投票数ｍの数に応じて重み値を低減することにより上述したノイズを低減することができる。図２２には、当該方法に係る重み値の設定方法の例を３通り示した。
【０１４７】
第１の例は、重み値を１／ｍに設定する方法である。当該方法によれば投票マップ全体の投票数が、投票数ｍにかかわらず変化しないことになる。なお、投票数ｍが少ない場合の投票結果が強調されることになるため、信頼性の高い投票の結果に基づく精度の高い判定処理が実現されうる。第２の例は、ｍが２又は３の場合に重み値を０．８、ｍが４以上の場合に重み値を０．３に設定する方法である。当該方法は、ｍが３以下の場合を重視する方法である。第３の例は、パラメータｖ（例えば０．９）を設定し、重み値をｖm-1に設定する方法である。当該方法は、第１の例よりも重み値の抑制度合いが大きい。
【０１４８】
（処理フローの変形箇所について）
上記（Ａ）〜（Ｃ）の方法は、図１９のＳ２２６、又は図２１のＳ２４５の投票処理の中でカウント値の増分に上述した重み値をかければ実現できる。一方、上記（Ｄ）の方法は、１つの特徴点あたりの投票数ｍを計算する処理が追加されるため、図１９に示した処理の流れは、図２３のように変形される。なお、図２１に示した処理の流れを変形する場合、Ｓ２４３の所定数がｍであるから、このｍに基づいてＳ２４５の処理の中で上述した重み値をカウント値の増分にかければ上記（Ｄ）の方法が実現できる。そこで、図１９に示した処理の流れに関する変形例について、図２３を参照しながら説明する。
【０１４９】
（Ｓ２５１）距離計算部１０５は、参照画像Ｐrの特徴点を１つ選択する。
（Ｓ２５２）距離計算部１０５は、入力画像Ｐinの各特徴点と、Ｓ２５１で選択した参照画像Ｐrの特徴点との距離Ｄを計算する。つまり、距離計算部１０５は、入力画像Ｐinの各特徴領域Ａinと参照画像Ｐrの特徴領域Ａrとの類似度が高いほど小さい値となる距離Ｄを計算する。例えば、距離計算部１０５は、上記の式（１）に従って特徴領域Ａinの局所特徴量ＬＦin、特徴領域Ａrの局所特徴量ＬＦrからビット列ＨＶを計算する。そして、距離計算部１０５は、ビット列ＨＶの長さ（ＨＶに含まれるビット値１の数）を計算し、計算した値を距離Ｄとする。
【０１５０】
（Ｓ２５３）距離計算部１０５は、距離Ｄが第１閾値以下の特徴点数ｍを計算する。
（Ｓ２５４）投票処理部１０６は、図２２に示した上記（Ｄ）の設定方法に基づき、Ｓ２５３で距離計算部１０５が計算したｍに基づいて重み値を設定する。
【０１５１】
（Ｓ２５５）投票処理部１０６は、距離計算部１０５により計算された距離Ｄの最小値（最小距離）に対応する特徴点を特定する。そして、投票処理部１０６は、特定した特徴点を基準に特定点を特定する。例えば、投票処理部１０６は、既知である特徴領域Ａrの特徴点から参照画像Ｐrの中心への向き及び距離を利用し、最小距離に対応する入力画像Ｐinの特徴点から同じ向き及び距離へ移動した位置（特定点）を特定する。なお、投票処理部１０６は、上記の式（２）及び式（３）に従って特定点の座標を計算する。
【０１５２】
（Ｓ２５６）投票処理部１０６は、特定点の座標を含む投票マップの枡目を抽出し、抽出した枡目に対応するカウンタのカウント値（投票数）をカウントアップする。つまり、投票処理部１０６は、特定点の位置に投票する。このとき、投票処理部１０６は、重み付けしない場合のカウント値の増分（例えば１）に重み値をかけた値だけカウント値を増加させる。例えば、重み値を１／ｍに設定する場合、増分が１、ｍが４であれば、投票処理部１０６は、カウント値を１／４増加させる。
【０１５３】
（Ｓ２５７）投票処理部１０６は、距離Ｄが第１閾値以下の他の特徴点があるか否かを判定する。距離Ｄが第１閾値以下の他の特徴点がない場合、処理はＳ２６０へと進む。一方、距離Ｄが第１閾値以下の他の特徴点がある場合、処理はＳ２５８へと進む。なお、投票処理部１０６は、Ｓ２５３で計算したｍが１であるか否かを判定に利用してもよい。例えば、ｍが１である場合には処理がＳ２６０へ進み、ｍが１でない場合には処理がＳ２５８へ進むように処理の流れを変形することもできる。
【０１５４】
（Ｓ２５８）投票処理部１０６は、距離Ｄが第１閾値以下となる他の特徴点を基準に特定点を特定する。例えば、投票処理部１０６は、既知である特徴領域Ａrの特徴点から参照画像Ｐrの中心への向き及び距離を利用し、他の特徴点から同じ向き及び距離へ移動した位置（特定点）を特定する。なお、投票処理部１０６は、上記の式（２）及び（３）に従って特定点の座標を計算する。
【０１５５】
（Ｓ２５９）投票処理部１０６は、Ｓ２５８で特定した特定点の座標を含む投票マップの枡目を抽出し、抽出した枡目に対応するカウンタのカウント値（投票数）をカウントアップする。つまり、投票処理部１０６は、Ｓ２５８で特定した特定点の位置に投票する。このとき、投票処理部１０６は、重み付けしない場合のカウント値の増分（例えば１）に重み値をかけた値だけカウント値を増加させる。例えば、重み値を１／ｍに設定する場合、増分が１、ｍが４であれば、投票処理部１０６は、カウント値を１／４増加させる。
【０１５６】
（Ｓ２６０）距離計算部１０５は、参照画像Ｐrに含まれる全ての特徴点を選択し終えたか否かを判定する。参照画像Ｐrに含まれる全ての特徴点を選択し終えた場合、処理は図２０のＳ２２９へと進む（Ｓ２６０以降の処理は、図２０に示したＳ２２９以降の処理と同じである）。一方、未選択の特徴点がある場合、処理はＳ２５１へと進む。
【０１５７】
以上、第２実施形態の一変形例（変形例＃２）について説明した。上記のように投票マップの正解以外の枡目の投票数を抑制することにより、正解以外の枡目の投票数が第２閾値を超えて誤判定を生じるリスクを低減することができる。
【０１５８】
以上、第２実施形態について説明した。
＜３．付記＞
以上説明した実施形態に関し、さらに以下の付記を開示する。
【０１５９】
（付記１）  対象物を含む参照画像と、前記参照画像に設定された複数の第１の特徴点と、前記参照画像の所定位置と前記第１の特徴点との位置関係と、判定の対象とする対象画像に設定された複数の分割領域の各々に対応する投票数の情報と、を記憶する記憶部と、
前記対象画像に含まれる複数の第２の特徴点のうち前記第１の特徴点と特徴が類似する前記第２の特徴点を抽出し、抽出した前記第２の特徴点を基準に前記対象画像内で前記位置関係により特定される前記所定位置を特定し、特定した前記所定位置を含む前記分割領域の前記投票数を増加させ、前記投票数に基づき前記対象物の有無を判定する演算部と、
を有し、
前記演算部は、前記第１の特徴点と特徴が類似する前記第２の特徴点が複数ある場合には複数の当該第２の特徴点を抽出する、
情報処理装置。
【０１６０】
（付記２）  前記演算部は、抽出した前記第２の特徴点のうち前記第１の特徴点との間の類似度が、設定した閾値より大きい前記第２の特徴点について前記所定位置を特定する
付記１に記載の情報処理装置。
【０１６１】
（付記３）  前記演算部は、抽出した前記第２の特徴点と前記第１の特徴点との間の類似度が小さいほど前記投票数の増加量が小さくなるように前記投票数に重み付けする
付記１又は２に記載の情報処理装置。
【０１６２】
（付記４）  前記演算部は、抽出した前記第２の特徴点のうち前記第１の特徴点との間の類似度が高い順に、設定した数の前記第２の特徴点について前記所定位置を特定する
付記１に記載の情報処理装置。
【０１６３】
（付記５）  コンピュータに、
対象物を含む参照画像と、前記参照画像に設定された複数の第１の特徴点と、前記参照画像の所定位置と前記第１の特徴点との位置関係と、判定の対象とする対象画像に設定された複数の分割領域の各々に対応する投票数の情報と、を取得し、
前記対象画像に含まれる複数の第２の特徴点のうち前記第１の特徴点と特徴が類似する前記第２の特徴点を抽出し、抽出した前記第２の特徴点を基準に前記対象画像内で前記位置関係により特定される前記所定位置を特定し、特定した前記所定位置を含む前記分割領域の前記投票数を増加させ、前記投票数に基づき前記対象物の有無を判定し、
前記抽出する処理において、前記第１の特徴点と特徴が類似する前記第２の特徴点が複数ある場合には複数の当該第２の特徴点を抽出する、
処理を実行させるためのプログラム。
【０１６４】
（付記６）  コンピュータが、
対象物を含む参照画像と、前記参照画像に設定された複数の第１の特徴点と、前記参照画像の所定位置と前記第１の特徴点との位置関係と、判定の対象とする対象画像に設定された複数の分割領域の各々に対応する投票数の情報と、を取得し、
前記対象画像に含まれる複数の第２の特徴点のうち前記第１の特徴点と特徴が類似する前記第２の特徴点を抽出し、抽出した前記第２の特徴点を基準に前記対象画像内で前記位置関係により特定される前記所定位置を特定し、特定した前記所定位置を含む前記分割領域の前記投票数を増加させ、前記投票数に基づき前記対象物の有無を判定し、
前記抽出する処理において、前記第１の特徴点と特徴が類似する前記第２の特徴点が複数ある場合には複数の当該第２の特徴点を抽出する、
判定処理方法。
【０１６５】
（付記７）  前記コンピュータが、抽出した前記第２の特徴点のうち前記第１の特徴点との間の類似度が、設定した閾値より大きい前記第２の特徴点について前記所定位置を特定する
付記６に記載の判定処理方法。
【０１６６】
（付記８）  前記コンピュータが、抽出した前記第２の特徴点と前記第１の特徴点との間の類似度が小さいほど前記投票数の増加量が小さくなるように前記投票数に重み付けする
付記６又は７に記載の判定処理方法。
【０１６７】
（付記９）  前記コンピュータが、抽出した前記第２の特徴点のうち前記第１の特徴点との間の類似度が高い順に、設定した数の前記第２の特徴点について前記所定位置を特定する
付記６に記載の判定処理方法。
【０１６８】
（付記１０）  付記５に記載のプログラムが格納された、コンピュータにより読み取り可能な記録媒体。
【符号の説明】
【０１６９】
１０  情報処理装置
１１  記憶部
１２  演算部
Ｐ０  対象画像
Ｐｒ  参照画像
ＪＸ１、ＪＸ２  対象物
【図１】
2016038839.tif 000003
【図２】
2016038839.tif 000004
【図３】
2016038839.tif 000005
【図４】
2016038839.tif 000006
【図５】
2016038839.tif 000007
【図６】
2016038839.tif 000008
【図７】
2016038839.tif 000009
【図８】
2016038839.tif 000010
【図９】
2016038839.tif 000011
【図１０】
2016038839.tif 000012
【図１１】
2016038839.tif 000013
【図１２】
2016038839.tif 000014
【図１３】
2016038839.tif 000015
【図１４】
2016038839.tif 000016
【図１５】
2016038839.tif 000017
【図１６】
2016038839.tif 000018
【図１７】
2016038839.tif 000019
【図１８】
2016038839.tif 000020
【図１９】
2016038839.tif 000021
【図２０】
2016038839.tif 000022
【図２１】
2016038839.tif 000023
【図２２】
2016038839.tif 000024
【図２３】
2016038839.tif 000025