(57)【要約】【課題】各画像の座標を対応付ける場合の計算量を削減すること。【解決手段】画像処理装置１００は、学習対象画像データ１３０ａおよびカメラ視点の異なる視点変動画像データ群１３０ｂから特徴点を抽出し、各特徴点を分類して、登録テーブル１３０ｃを生成する。画像処理装置１００は、登録テーブル１３０ｃの各特徴点群の重心座標と、認識対象画像データ１３０ｄから抽出した特徴点の座標とを比較して、学習対象画像データ１３０ａの特徴点と認識対象画像データ１３０ｄの特徴点とを対応付ける。【選択図】図１
2013058174.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
画像を正面のカメラ視点から撮影した学習対象画像を射影変換することで、前記学習対象画像に対するカメラ視点の異なる視点変動画像を複数生成し、
前記学習対象画像および複数の前記視点変動画像から特徴点を抽出し、
前記学習対象画像から抽出した各特徴点に対して、複数の前記視点変動画像から抽出した各特徴点を対応付けることで、複数の前記視点変動画像から抽出した各特徴点を複数の特徴点群に分類し、
分類した特徴点群を含む領域を登録テーブルに登録し、
認識対象画像を取得し、該認識対象画像から特徴点を抽出し、
前記認識対象画像から抽出した特徴点の位置と、前記登録テーブルの前記特徴点群の領域との関係に基づいて、前記認識対象画像の特徴点と前記学習対象画像の特徴点とを対応付ける
各処理を実行させることを特徴とする画像処理プログラム。
【請求項２】
前記認識対象画像の特徴点と前記学習対象画像の特徴点とを対応付ける処理は、前記領域に含まれる特徴点群の重心と、前記認識対象画像の特徴点との距離に基づいて、前記認識対象画像の特徴点と前記学習対象画像の特徴点とを対応付けることを特徴とする請求項１に記載の画像処理プログラム。
【請求項３】
前記登録テーブルに登録する処理は、特徴点群に含まれる各特徴点の分布広がりを更に登録し、前記認識対象画像の特徴点と前記学習対象画像の特徴点とを対応付ける処理は、前記領域に含まれる特徴点群の重心と、前記分布広がりの重み付けをした前記認識対象画像の特徴点との距離に基づいて、前記認識対象画像の特徴点と前記学習対象画像の特徴点とを対応付けることを特徴とする請求項１または２に記載の画像処理プログラム。
【請求項４】
前記分布広がりは、標準偏差または分散であることを特徴とする請求項３に記載の画像処理プログラム。
【請求項５】
前記特徴点群に分類する処理は、前記学習対象画像の一つの特徴点に対して、複数の特徴点群に分類することを特徴とする請求項１〜４のいずれか一つに記載の画像処理プログラム。
【請求項６】
前記特徴点群に分類する処理は、前記学習対象画像の複数の特徴点に対して、一つの特徴点群に分類することを特徴とする請求項１〜４のいずれか一つに記載の画像処理プログラム。
【請求項７】
コンピュータが実行する画像処理方法であって、
画像を正面のカメラ視点から撮影した学習対象画像を射影変換することで、前記学習対象画像に対するカメラ視点の異なる視点変動画像を複数生成し、
前記学習対象画像および複数の前記視点変動画像から特徴点を抽出し、
前記学習対象画像から抽出した各特徴点に対して、複数の前記視点変動画像から抽出した各特徴点を対応付けることで、複数の前記視点変動画像から抽出した各特徴点を複数の特徴点群に分類し、
分類した特徴点群を含む領域を登録テーブルに登録し、
認識対象画像を取得し、該認識対象画像から特徴点を抽出し、
前記認識対象画像から抽出した特徴点の位置と、前記登録テーブルの前記特徴点群の領域との関係に基づいて、前記認識対象画像の特徴点と前記学習対象画像の特徴点とを対応付ける
各処理を実行することを特徴とする画像処理方法。
【請求項８】
画像を正面のカメラ視点から撮影した学習対象画像を射影変換することで、前記学習対象画像に対するカメラ視点の異なる視点変動画像を複数生成する視点変動画像生成部と、
前記学習対象画像および複数の前記視点変動画像から特徴点を抽出する特徴点抽出部と、
前記学習対象画像から抽出した各特徴点に対して、複数の前記視点変動画像から抽出した各特徴点を対応付けることで、複数の前記視点変動画像から抽出した各特徴点を複数の特徴点群に分類し、分類した特徴点群を含む領域を登録テーブルに登録する分類部と、
認識対象画像を取得し、該認識対象画像から特徴点を抽出し、前記認識対象画像から抽出した特徴点の位置と、前記登録テーブルの前記特徴点群の領域との関係に基づいて、前記認識対象画像の特徴点と前記学習対象画像の特徴点とを対応付ける対応付け部と
を有することを特徴とする画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理プログラム等に関するものである。
【背景技術】
【０００２】
予め画像を学習しておき、かかる画像と同一の画像をあるカメラ視点で撮影した場合に、予め学習しておいた画像を基にして、撮影した画像の姿勢を認識する技術がある。撮影した画像の姿勢を認識するためには、予め学習しておいた画像の座標と、撮影した画像の座標とを対応付ける処理が行われる。各画像の座標を対応付ける技術として、ASIFTや、Randomized  Treesによる手法等がある。
【０００３】
例えば、Randomized  Treesによる手法では、学習しておいた画像と撮影した画像との座標をランダムに選択し、選択した座標の画素を順次比較することで、各画像の座標とを対応付ける。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−２０４８２６号公報
【特許文献２】特開２００５−２１５９８８号公報
【非特許文献】
【０００５】
【非特許文献１】J.  M.  Morel  and  G.  Yu,  “ASIFT:  A  new  framework  forfully  affine  invariant  image  comparison”,  SIAM  Journal  on  Imaging  Sciences,  2,  2,  pp.  438-469,  2009
【非特許文献２】V.  Lepetit  and  P.  Fua,  “Keypoint  recognition  using  randomized  trees”,  IEEE  Transactions  on  Pattern  Analysis  and  Machine  Intelligence,  28,  9,  pp.  1465-1479,  2006
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した従来技術では、学習しておいた画像の座標と、姿勢の認識対象となる画像の座標とを対応付ける場合の計算量が多いという問題があった。
【０００７】
例えば、Randomized  Treesによる手法では、比較対象となる画素の組み合わせが多いため、各組み合わせを一つ一つ比較していくと、計算に多くの時間を要してしまう。
【０００８】
開示の技術は、上記に鑑みてなされたものであって、各画像の座標を対応付ける場合の計算量を削減することができる画像処理プログラム、画像処理方法および画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
開示の画像処理プログラムは、コンピュータに下記の処理を実行させる。画像処理プログラムは、コンピュータに、画像を正面のカメラ視点から撮影した学習対象画像を射影変換することで、学習対象画像に対するカメラ視点の異なる視点変動画像を複数生成させる。コンピュータに、学習対象画像および複数の視点変動画像から特徴点を抽出させる。コンピュータに、学習対象画像から抽出した各特徴点に対して、複数の視点変動画像から抽出した各特徴点を対応付けることで、複数の視点変動画像から抽出した各特徴点を複数の特徴点群に分類させる。コンピュータに、特徴点群を含む領域を登録テーブルに登録させる。コンピュータに、認識対象画像を取得し、該認識対象画像から特徴点を抽出させる。コンピュータに、認識対象画像から抽出した特徴点の位置と、前記登録テーブルの領域との関係に基づいて、前記認識対象画像の特徴点と前記学習対象画像の特徴点とを対応付させる。
【発明の効果】
【００１０】
開示の画像処理プログラムによれば、各画像の座標を対応付ける場合の計算量を削減することができるという効果を奏する。
【図面の簡単な説明】
【００１１】
【図１】図１は、本実施例１にかかる画像処理装置の構成を示す機能ブロック図である。
【図２】図２は、学習対象画像データと視点変動画像データとの関係を説明するための図である。
【図３】図３は、学習対象画像データから抽出した特徴点の一例を示す図である。
【図４】図４は、学習対象画像データからの特徴点の抽出結果の一例を示す図である。
【図５】図５は、視点変動画像データ群から抽出した特徴点の一例を示す図である。
【図６】図６は、視点変動画像データからの特徴点の抽出結果の一例を示す図である。
【図７】図７は、変換結果の一例を示す図である。
【図８】図８は、特徴空間上の重心座標を説明するための図である。
【図９】図９は、本実施例１の登録テーブルのデータ構造の一例を示す図である。
【図１０】図１０は、本実施例１の学習フェーズの処理手順を示すフローチャートである。
【図１１】図１１は、本実施例１の認識フェーズの処理手順を示すフローチャートである。
【図１２】図１２は、本実施例２にかかる画像処理装置の構成を示す機能ブロック図である。
【図１３】図１３は、本実施例２にかかる分類部の処理を説明するための図である。
【図１４】図１４は、本実施例２の登録テーブルのデータ構造の一例を示す図である。
【図１５】図１５は、本実施例３にかかる画像処理装置の構成を示す機能ブロック図である。
【図１６】図１６は、本実施例３にかかる分類部の処理を説明するための図（１）である。
【図１７】図１７は、本実施例３にかかる分類部の処理を説明するための図（２）である。
【図１８】図１８は、本実施例３の登録テーブルのデータ構造の一例を示す図である。
【図１９】図１９は、画像処理プログラムを実行するコンピュータの一例を示す図である。
【発明を実施するための形態】
【００１２】
以下に、本願の開示する画像処理プログラム、画像処理方法および画像処理装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例１】
【００１３】
本実施例１にかかる画像処理装置について説明する。図１は、本実施例１にかかる画像処理装置の構成を示す機能ブロック図である。図１に示すように、画像処理装置１００は、カメラ１１０ａ、入力部１１０ｂ、出力部１２０、記憶部１３０、制御部１４０を有する。
【００１４】
カメラ１１０ａは、対象物の画像を撮影する。学習フェーズにおいて、カメラ１１０ａは、学習対象となる対象物の画像を撮影し、撮影した画像のデータを、制御部１４０に出力する。また、カメラ１１０ａは、認識フェーズにおいて、姿勢の認識対象となる対象物の画像を撮影し、撮影した画像のデータを、制御部１４０に出力する。以下の説明において、学習対象となる画像のデータを、学習対象画像データと表記する。認識対象となる画像のデータを、認識対象画像データと表記する。
【００１５】
学習対象画像データは、対象物を正面から撮影した画像のデータとする。認識対象画像データは、対象物を任意の方向から撮影した画像のデータとする。学習対象画像データの撮影対象となる対象物および認識対象画像データの撮影対象となる対象物は同一の対象物とする。対象物に多少の凹凸があってもよいが、平面的であることが望ましい。
【００１６】
入力部１１０ｂは、各種のデータを画像処理装置１００に入力する入力装置である。例えば、入力部１１０ｂは、入力キー、タッチパネル等に対応する。出力部１２０は、制御部１４０の処理結果を出力する出力装置である。
【００１７】
記憶部１３０は、学習対象画像データ１３０ａ、視点変動画像データ群１３０ｂ、登録テーブル１３０ｃ、認識対象画像データ１３０ｄを記憶する。記憶部１３０は、例えば、ＲＡＭ（Random  Access  Memory）、ＲＯＭ（Read  Only  Memory）、フラッシュメモリ（Flash  Memory）などの半導体メモリ素子、またはハードディスク、光ディスクなどの記憶装置に対応する。
【００１８】
学習対象画像データ１３０ａは、上記のように、カメラ１１０ａが撮影した学習対象となる画像のデータである。
【００１９】
視点変動画像データ群１３０ｂは、対象物を様々なカメラ視点から撮影した画像に相当する画像データ群である。
【００２０】
登録テーブル１３０ｃは、学習対象画像データ１３０ａ、視点変動画像データ１３０ｂから抽出される特徴点に関する各種の情報を保持するテーブルである。登録テーブル１３０ｃのデータ構造は、後述する。
【００２１】
認識対象画像データ１３０ｄは、上記のように、カメラ１１０ａが撮影した認識対象となる画像のデータである。
【００２２】
制御部１４０は、データ管理部１４０ａ、視点変動画像生成部１４０ｂ、特徴点抽出部１４０ｃ、分類部１４０ｄ、対応付け部１４０ｅを有する。制御部１４０は、例えば、ＡＳＩＣ（Application  Specific  Integrated  Circuit）や、ＦＰＧＡ（Field  Programmable  Gate  Array）などの集積装置に対応する。また、制御部１４０は、例えば、ＣＰＵやＭＰＵ（Micro  Processing  Unit）等の電子回路に対応する。
【００２３】
データ管理部１４０ａは、記憶部１３０を管理する処理部である。例えば、学習フェーズにおいて、データ管理部１４０ａは、カメラ１１０ａから学習対象画像データを取得し、取得した学習対象画像データを、記憶部１３０に記憶する。認識フェーズにおいて、データ管理部１４０ａは、カメラ１１０ａから認識対象画像データを取得し、取得した認識対象画像データを、記憶部１３０に記憶する。
【００２４】
視点変動画像生成部１４０ｂは、学習対象画像データ１３０ａを基にして、視点変動画像データ群１３０ｂを生成する処理部である。視点変動画像生成部１４０ｂは、学習対象画像データ１３０ａに対して、カメラ視点の異なる視点変動画像データを、カメラ視点毎に生成する。
【００２５】
図２は、学習対象画像データと視点変動画像データとの関係を説明するための図である。学習対象画像データ１３０ａは、対象物１０の正面のカメラ視点２０で対象物１０を撮影した画像のデータである。視線変動画像データ群１３０ｂは、θ、ψ、φのそれぞれ異なるカメラ視点３０ａ〜３０ｄで対象物１０を撮影した画像の各データに対応する。例えば、θ、ψ、φをそれぞれ、ロール角、ピッチ角、ヨー角とする。
【００２６】
視点変動画像生成部１４０ｂは、学習対象画像データ１３０ａに対して、θ、ψ、φをパラメータに持つ射影変換を適用することで、視点変動画像データを生成する。視点変動画像生成部１４０ｂは、ψおよびφの値を、−６０°から６０°の範囲で１０°毎の間隔で、射影変換のパラメータを設定する。また、視点変動画像生成部１４０ｂは、θの値を０°から３６０°の範囲で、４５°毎の間隔で射影変換のパラメータを設定する。
【００２７】
視点変動画像生成部１４０ｂは、各パラメータの射影変換を実行して、パラメータ毎に視点変動画像データを生成する。視点変動画像生成部１４０ｂは、生成した複数の視点変動画像データを、視点変動画像データ群１３０ｂとして、記憶部１３０に記憶する。
【００２８】
視点変動画像生成部１４０ｂが行う射影変換は、従来の如何なる射影変換を用いてもよい。例えば、視点変動画像生成部１４０ｂは、文献（金澤靖、金谷健一、’２画像間の特徴点対応の自動探索’、画像ラボ、pp.20-23、2004）に基づいて、射影変換を行う。
【００２９】
特徴点抽出部１４０ｃは、学習対象画像データ１３０ａから特徴点を抽出する。また、特徴点抽出部１４０ｃは、視点変動画像データ群１３０ｂの各視点変動画像データから、特徴点を抽出する。特徴点抽出部１４０ｃは、学習対象画像データ１３０ａから抽出した特徴点に関するデータおよび視点変動画像データ群１３０ｂから抽出した特徴点に関するデータを、分類部１４０ｄに出力する。
【００３０】
特徴点抽出部１４０ｃは、例えば、ＳＩＦＴ（Scale  Invariant  Feature  Transform）を利用して、特徴点を抽出する。ＳＩＦＴは、画像データを走査し、特徴の抽出に適した点を検出する技術である。例えば、特徴点抽出部１４０ｃは、画像データを走査し、各部分において、画像のエッジの尖り具合、濃淡値の勾配の具合、勾配変化の方向などの複数の要素を数値化する。そして、各要素の数値が極値を取る部分を特徴点として抽出する。
【００３１】
特徴点抽出部１４０ｃは、ＳＩＦＴを利用して、学習対象画像データ１３０ａから、特徴点を抽出する。図３は、学習対象画像データから抽出した特徴点の一例を示す図である。図３に示す例では、特徴点抽出部１４０ｃは、学習対象画像データ１３０ａから、特徴点４０Ａ、４０Ｂ、４０Ｃを抽出する。特徴点抽出部１４０ｃは、学習対象画像データ１３０ａからの抽出結果を、分類部１４０ｄに出力する。
【００３２】
図４は、学習対象画像データからの特徴点の抽出結果の一例を示す図である。図４に示すように、この抽出結果１Ａは、特徴点の識別情報と、学習対象画像データ上の座標とを対応付けている。
【００３３】
特徴点抽出部１４０ｃは、ＳＩＦＴを利用して、視点変動画像データ群１３０ｂに含まれる各視点変動画像データから、特徴点を抽出する。図５は、視点変動画像データ群から抽出した特徴点の一例を示す図である。図５に示す例では、視点変動画像データ群１３０ｂには、視点変動画像データ１３ａ、１３ｂ、１３ｃ、１３ｄが含まれている。
【００３４】
特徴点抽出部１４０ｃは、視点変動画像データ１３ａから、特徴点１ａ、１ｂを抽出する。特徴点抽出部１４０ｃは、視点変動画像データ１３ｂから、特徴点１ｃ、１ｄを抽出する。特徴点抽出部１４０ｃは、視点変動画像データ１３ｃから、特徴点１ｅ、１ｆ、１ｇを抽出する。特徴点抽出部１４０ｃは、視点変動画像データ１３ｄから、特徴点１ｈ、１ｉを抽出する。特徴点抽出部１４０ｃは、視点変動画像データ群１３０ｂからの抽出結果を、分類部１４０ｄに出力する。
【００３５】
図６は、視点変動画像データからの特徴点の抽出結果の一例を示す図である。図６に示すように、この抽出結果１Ｂは、特徴点の識別情報と、視点変動画像データ上の座標とを対応付けている。また、特徴点抽出部１４０ｃは、特徴点に各要素の数値を、抽出結果１Ｂに対応付ける。ここで、各要素の数値は、例えば、画像のエッジの尖り具合、濃淡値の勾配の具合、勾配変化の方向などをそれぞれ数値化したものである。
【００３６】
分類部１４０ｄは、視点変動画像データ群１３０ｂから抽出された複数の特徴点を分類する処理部である。例えば、分類部１４０ｄは、抽出結果１Ａと、抽出結果１Ｂとを基にして、特徴点を分類する。
【００３７】
分類部１４０ｄは、抽出結果１Ｂの視点変動画像データ上の座標を、学習対象画像データ上の座標に変換する。分類部１４０ｄは、射影変換の逆行列を、視点変動画像データ上の座標に適用することで、学習対象画像データ上の座標に変換する。図７は、変換結果の一例を示す図である。
【００３８】
図７に示すように、変換結果１Ｃは、識別情報、座標、変換座標、各要素を対応付ける。このうち、変換座標は、射影変換の逆行列により変換された特徴点の座標である。
【００３９】
分類部１４０ｄは、図４の抽出結果１Ａの座標と、図７の変換結果１Ｃの変換座標との距離に応じて、視点変動画像データから抽出した各特徴点を分類する。例えば、視点変動画像データから抽出したある特徴点の変換座標が、特徴点４０Ａ〜４０Ｃのうち、特徴点４０Ａの座標に最も近い場合には、かかる特徴点が特徴点４０Ａに分類する。分類部１４０ｄは、上記処理を、視点変動画像データから抽出した各特徴点に対して実行し、特徴点４０Ａ、特徴点４０Ｂ、特徴点４０Ｃの何れかに分類する。
【００４０】
なお、分類部１４０ｄは、特徴点の変換座標が、特徴点４０Ａ〜４０Ｃの座標から所定の閾値以上離れている場合には、かかる特徴点を分類対象から除外する。例えば、所定の閾値を、２画素とする。
【００４１】
分類部１４０ｄは、視点変動画像データから抽出した各特徴点を分類した後、分類した特徴点群毎に、特徴空間上の重心座標を求める。図８は、特徴空間上の重心座標を説明するための図である。例えば、図８のｘ軸は、特徴点の要素１に対応し、ｙ軸は特徴点の要素２に対応し、ｚ軸は特徴点の要素３に対応する。ここでは、一例として、３次元で特徴空間を示すが、特徴点の要素がｎ個の場合には、特徴空間は、ｎ次元となる。また、図８において、丸印は、特徴点４０Ａに分類された特徴点に対応する。三角印は、特徴点４０Ｂに分類された特徴点に対応する。四角印は、特徴点４０Ｃに分類された特徴点に対応する。
【００４２】
分類部１４０ｄは、特徴点４０Ａに分類された各特徴点に基づいて、特徴空間上の重心２Ａを求める。分類部１４０ｄは、特徴点４０Ｂに分類された各特徴点に基づいて、特徴空間上の重心２Ｂを求める。分類部１４０ｄは、特徴点４０Ｃに分類された各特徴点に基づいて、特徴空間上の重心２Ｃを求める。
【００４３】
分類部１４０ｄは、特徴点４０Ａに分類された各特徴点に基づいて、共分散を求める。また、分類部１４０ｄは、特徴点４０Ｂに分類された各特徴点に基づいて、共分散を求める。分類部１４０ｄは、特徴点４０Ｃに分類された各特徴点に基づいて、共分散を求める。なお、分類部１４０ｄは、共分散の代わりに、標準偏差を求めてもよい。
【００４４】
分類部１４０ｄは、上記した処理の結果を、登録テーブル１３０ｃに登録する。図９は、本実施例１の登録テーブルのデータ構造の一例を示す図である。図９に示すように、登録テーブル１３０ｃは、クラスタ番号、座標、重心座標、共分散を有する。
【００４５】
図９のクラスタ番号は、分類した特徴点群を一意に識別する番号である。例えば、特徴点４０Ａに分類された特徴点群のクラスタ番号を１とする。特徴点４０Ｂに分類された特徴点群をクラスタ番号２とする。特徴点４０Ｃに分類された特徴点分をクラスタ番号３とする。
【００４６】
図９の座標は、学習対象画像データ１３０ａから抽出した特徴点の座標である。例えば、図９の座標（ｘ１、ｙ１）は、特徴点４０Ａの座標である。図９の重心座標は、図８に示した重心座標に対応するものである。例えば、重心座標（ｘｇ１、ｙｇ１、ｚｇ１）は、クラスタ番号１に対応する各特徴点の特徴空間上の座標である。共分散は、分類された特徴点群毎の共分散である。例えば、共分散「ｖ１」は、クラスタ番号１に対応する各特徴点の共分散である。
【００４７】
なお、分類部１４０ｄは、分類された特徴点群の数が、所定の数より少ない場合には、かかる特徴点群を、分類対象から除外してもよい。例えば、分類部は、特徴点４０Ｃに分類された特徴点の数が、所定の数より少ない場合には、特徴点４０Ａに分類される各特徴点を登録テーブル１３０ｃから除外する。
【００４８】
対応付け部１４０ｅは、登録テーブル１３０ｃを基にして、認識対象画像データ１３０ｄの特徴点と、学習対象画像データ１３０ａの特徴点とを対応付ける処理部である。
【００４９】
対応付け部１４０ｅは、ＳＩＦＴを利用して、認識対象画像データ１３０ｄから、特徴点を抽出する。対応付け部１４０ｅは、認識対象画像データ１３０ｄから抽出した特徴点の特徴空間上の座標と、登録テーブル１３０ｃの重心座標とを比較し、最も座標間の距離が短い重心座標に対応するクラスタ番号を判定する。対応付け部１４０ｅは、判定したクラスタ番号の座標と、認識対象画像データ１３０ｄの特徴点とを対応付ける。
【００５０】
例えば、対応付け部１４０ｅは、クラスタ番号１〜３の重心座標のうち、特徴点の座標とクラスタ番号１の重心座標との距離が最も近ければ、クラスタ番号１と判定する。この場合には、対応付け部１４０ｅは、認識対象画像データの特徴点と、クラスタ番号１の座標（ｘ１、ｙ１）とを対応付ける。クラスタ番号１の座標（ｘ１、ｙ１）は、図３の特徴点４０Ａの座標である。
【００５１】
対応付け部１４０ｅは、認識対象画像データ１３０ｄから抽出した各特徴点に対して、上記処理を実行し、実行結果を出力部１２０に出力する。対応付け部１４０ｅがかかる処理を実行することで、認識対象画像データ１３０ｄの特徴点と、学習対象画像データ１３０ａの特徴点とが対応付けられる。
【００５２】
なお、対応付け部１４０ｅは、マハラノビス距離を用いて、認識対象画像データ１３０ｄの特徴点と、学習対象画像データ１３０ａの特徴点とを対応付けてもよい。例えば、対応付け部１４０ｅは、共分散に対応する重みを設定する。対応付け部１４０ｅは、共分散の値が大きいほど、小さい値を重みに設定する。例えば、共分散ｖ１、ｖ２、ｖ３の重みを、ｇ１、ｇ２、ｇ３とする。各共分散の大小関係がｖ１＞ｖ２＞ｖ３の場合には、重みはｇ１＜ｇ２＜ｇ３となる。
【００５３】
対応付け部１４０ｅは、クラスタ番号１の座標と特徴点の座標との距離にｇ１を乗算した値Ｇ１と、クラスタ番号２の座標と特徴点の座標との距離にｇ２を乗算した値Ｇ２と、クラスタ番号３の座標と特徴点の座標との距離にｇ３を乗算した値Ｇ３とを算出する。そして、対応付け部１４０ｅは、値Ｇ１〜Ｇ３のうち、最小となる値に対応するクラスタ番号を判定する。対応付け部１４０ｅは、判定したクラスタ番号の座標と、認識対象画像データ１３０ｄの特徴点とを対応付ける。マハラノビス距離を利用すると、共分散の値が大きいクラスタ番号ほど、対応付けされやすくなる。
【００５４】
次に、本実施例１にかかる画像処理装置１００の学習フェーズの処理手順および認識フェーズの処理手順について順に説明する。図１０は、本実施例１の学習フェーズの処理手順を示すフローチャートである。図１０に示す処理は、例えば、学習対象画像データ１３０ａが記憶部１３０に記憶されたことを契機に実行される。
【００５５】
図１０に示すように、画像処理装置１００は、学習対象画像データ１３０ａを取得し（ステップＳ１０１）、視点変動画像データ群１３０ｂを生成する（ステップＳ１０２）。画像処理装置１００は、学習対象画像データ１３０ａから特徴点を抽出する（ステップＳ１０３）。
【００５６】
画像処理装置１００は、各視点変動画像データから特徴点を抽出する（ステップＳ１０４）。画像処理装置１００は、各視点変動画像データから抽出した特徴点の座標を、学習対象画像データの座標系に変換する（ステップＳ１０５）。
【００５７】
画像処理装置１００は、各特徴点を分類し（ステップＳ１０６）、登録テーブル１３０ｃに各種情報を登録する（ステップＳ１０７）。
【００５８】
図１１は、本実施例１の認識フェーズの処理手順を示すフローチャートである。図１１に示す処理は、例えば、認識対象画像データ１３０ｄが記憶部１３０に記憶されたことを契機に実行される。
【００５９】
画像処理装置１００は、認識対象画像データ１３０ｄを取得し（ステップＳ２０１）、認識対象画像データ１３０ｄから特徴点を抽出する（ステップＳ２０２）。画像処理装置１００は、認識対象画像データ１３０ｄの特徴点と、登録テーブル１３０ｃとを基にして、特徴点の対応付けを行う（ステップＳ２０３）。
【００６０】
次に、本実施例１にかかる画像処理装置１００の効果について説明する。画像処理装置１００は、学習対象画像データ１３０ａおよびカメラ視点の異なる視点変動画像データ群１３０ｄから特徴点を抽出し、各特徴点を分類して、登録テーブル１３０ｃを生成する。画像処理装置１００は、登録テーブル１３０ｃの各特徴点群の重心座標と、認識対象画像データ１３０ｂから抽出した特徴点の座標とを比較して、学習対象画像データ１３０ａの特徴点と認識対象画像データ１３０ｄの特徴点とを対応付ける。このため、画像処理装置１００によれば、各特徴点群の重心座標と、認識対象画像データ１３０ｄから抽出した特徴点の座標との比較より、各特徴点を対応付けられるので、各画像の座標を対応付ける場合の計算量を削減することができる。
【００６１】
また、画像処理装置１００は、マハラノビス距離を用いて、各特徴点を対応付けるので、各特徴点の分散具合を考慮して、正確に各画像の座標を対応付けることができる。
【実施例２】
【００６２】
本実施例２にかかる画像処理装置について説明する。図１２は、本実施例２にかかる画像処理装置の構成を示す機能ブロック図である。図１２に示すように、画像処理装置２００は、カメラ２１０ａ、入力部２１０ｂ、出力部２２０、記憶部２３０、制御部２４０を有する。
【００６３】
カメラ２１０ａ、入力部２１０ｂ、出力部２２０に関する説明は、図１に示したカメラ１１０ａ、入力部１１０ｂ、出力部１２０に関する説明と同様である。
【００６４】
記憶部２３０は、学習対象画像データ２３０ａ、視点変動画像データ群２３０ｂ、登録テーブル２３０ｃ、認識対象画像データ２３０ｄを記憶する。記憶部２３０は、例えば、ＲＡＭ、ＲＯＭ、フラッシュメモリなどの半導体メモリ素子、またはハードディスク、光ディスクなどの記憶装置に対応する。
【００６５】
学習対象画像データ２３０ａは、実施例１の学習対象画像データ１３０ａに対応する。視点変動画像データ群２３０ｂは、実施例１の視点変動画像データ群１３０ｂに対応する。認識対象画像データ２３０ｄは、実施例１の認識対象画像データ１３０ｄに対応する。
【００６６】
登録テーブル２３０ｃは、学習対象画像データ２３０ａおよび視点変動画像データ群２３０ｂから抽出される特徴点に関する各種の情報を保持するテーブルである。登録テーブル２３０ｃのデータ構造は、後述する。
【００６７】
制御部２４０は、データ管理部２４０ａ、視点変動画像生成部２４０ｂ、特徴点抽出部２４０ｃ、分類部２４０ｄ、対応付け部２４０ｅを有する。制御部２４０は、例えば、ＡＳＩＣや、ＦＰＧＡなどの集積装置に対応する。また、制御部２４０は、例えば、ＣＰＵやＭＰＵ等の電子回路に対応する。
【００６８】
データ管理部２４０ａは、記憶部２３０を管理する処理部である。例えば、学習フェーズにおいて、データ管理部２４０ａは、カメラ２１０ａから学習対象画像データを取得し、取得した学習対象画像データを、記憶部２３０に記憶する。認識フェーズにおいて、データ管理部２４０ａは、カメラ２１０ａから認識対象画像データを取得し、取得した認識対象画像データを、記憶部２３０に記憶する。
【００６９】
視点変動画像生成部２４０ｂは、学習対象画像データ２３０ａを基にして、視点変動画像データ群２３０ｂを生成する処理部である。視点変動画像生成部２４０ｂの具体的な処理は、実施例１の視点変動画像生成部１４０ｂの処理と同様である。
【００７０】
特徴点抽出部２４０ｃは、学習対象画像データ２３０ａから特徴点を抽出する。また、特徴点抽出部２４０ｃは、視点変動画像データ群２３０ｂの各視点変動画像データから、特徴点を抽出する。特徴点抽出部２４０ｃは、学習対象画像データ２３０ａから抽出した特徴点に関するデータおよび視点変動画像データ群２３０ｂから抽出した特徴点に関するデータを、分類部２４０ｄに出力する。
【００７１】
特徴点抽出部２４０ｃの具体的な処理は、実施例１の特徴点抽出部１４０ｃの処理と同様である。特徴点抽出部２４０ｃは、図４に示した抽出結果１Ａおよび図６に示した抽出結果１Ｂを分類部２４０ｄに出力する。
【００７２】
分類部２４０ｄは、視点変動画像データ群２３０ｂから抽出された複数の特徴点を分類する処理部である。分類部２４０ｄは、抽出結果１Ａと、抽出結果１Ｂとを基にして、特徴点を分類する。
【００７３】
特に、実施例２の分類部２４０ｄは、実施例１の分類部１４０ｄが分類した特徴点を、更に分類する。分類部２４０ｄが、視点変動画像データから抽出した各特徴点を、特徴点４０Ａ、特徴点４０Ｂ、特徴点４０Ｃの何れかに分類するまでの処理は、実施例１の分類部１４０ｄと同様である。
【００７４】
図１３は、実施例２にかかる分類部の処理を説明するための図である。ここでは、分類部２４０ｄが、特徴点４０Ａに分類した各特徴点を更に分類する場合を例にして説明する。分類部２４０ｄは、各特徴点に対してk-meansを適用することで、特徴点をグループ３Ａ〜３Ｃに分類する。分類部２４０ｄは、グループ毎に、各特徴点の重心ｋ１−１〜ｋ３−１を求める。各重心をキーポイントと表記する。
【００７５】
ここで、分類部２４０ｄが利用するk-meansによる処理の一例を説明する。分類部２４０ｄは、各特徴点にランダムにクラスタを割り当て、クラスタ毎の重心を算出する。分類部２４０ｄは、各特徴点のクラスタを、一番近い重心のクラスタに変更する。分離部２４０ｄは、各特徴点のクラスタが変化しなくなるまで、上記処理を繰り返すことで、特徴点を複数のグループに分類する。
【００７６】
分類部２４０ｄは、特徴点４０Ａに分類した各特徴点と同様にして、特徴点４０Ｂに分類した各特徴点および特徴点４０Ｃに分類した各特徴点を更に分類する。分類部２４０ｄは、分類した結果を、登録テーブル２３０ｃに登録する。
【００７７】
なお、分類部２４０ｄは、k-meansにより更に分類したグループに含まれる特徴点に基づいて、グループ毎に共分散値を算出し、登録テーブル２３０ｃに登録する。
【００７８】
図１４は、本実施例２の登録テーブルのデータ構造の一例を示す図である。図１４に示すように、この登録テーブル２３０ｃは、クラスタ番号、座標、キー番号、重心座標、共分散を有する。
【００７９】
図１４のクラスタ番号は、分類した特徴点群を一意に識別する番号である。例えば、特徴点４０Ａに分類された特徴点群のクラスタ番号を１とする。特徴点４０Ｂに分類された特徴点群をクラスタ番号２とする。特徴点４０Ｃに分類された特徴点分をクラスタ番号３とする。
【００８０】
図１４の座標は、学習対象画像データ２３０ａから抽出した特徴点の座標である。例えば、図１４の座標（ｘ１、ｙ１）は、特徴点４０Ａの座標である。キー番号は、キーポイントを一意に識別する番号である。重心座標は、キーポイントの重心座標に対応する。共分散は、k-meansにより更に分類したグループに含まれる特徴点の共分散値である。
【００８１】
対応付け部２４０ｅは、登録テーブル２３０ｃを基にして、認識対象画像データ２３０ｄの特徴点と、学習対象画像データ２３０ａの特徴点とを対応付ける処理部である。
【００８２】
対応付け部２４０ｅは、ＳＩＦＴを利用して、認識対象画像データ２３０ｄから、特徴点を抽出する。対応付け部２４０ｅは、認識対象画像データ２３０ｄから抽出した特徴点の特徴空間上の座標と、登録テーブル２３０ｃの重心座標とを比較し、最も座標間の距離が短い重心座標に対応するクラスタ番号を判定する。対応付け部２４０ｅは、判定したクラスタ番号の座標と、認識対象画像データ２３０ｄの特徴点とを対応付ける。
【００８３】
対応付け部２４０ｅは、キー番号ｋ１−１〜ｋ１−３の重心座標の何れかと、特徴点との距離が最も短い場合には、該特徴点は、クラスタ番号１に対応すると判定する。対応付け部２４０ｅは、キー番号ｋ２−１〜ｋ２−３の重心座標の何れかと、特徴点との距離が最も短い場合には、該特徴点は、クラスタ番号２に対応すると判定する。対応付け部２４０ｅは、キー番号ｋ３−１〜ｋ３−３の重心座標の何れかと、特徴点との距離が最も短い場合には、該特徴点は、クラスタ番号３に対応すると判定する。
【００８４】
対応付け部２４０ｅは、認識対象画像データ２３０ｄから抽出した各特徴点に対して、上記処理を実行し、実行結果を出力部２２０に出力する。対応付け部２４０ｅがかかる処理を実行することで、認識対象画像データ２３０ｄの特徴点と、学習対象画像データ２３０ａの特徴点とが対応付けられる。
【００８５】
なお、対応付け部２４０ｅは、実施例１と同様にして、マハラノビス距離を用いて、認識対象画像データ２３０ｄの特徴点と、学習対象画像データ２３０ａの特徴点とを対応付けてもよい。
【００８６】
次に、本実施例２にかかる画像処理装置２００の効果について説明する。画像処理装置２００は、k-meansを利用して、実施例１で分類した特徴点群を更に細かく分類する。このため、特徴空間上で特徴点が歪んで分布している場合や、分離した分布をしている場合であっても、正確に認識対象画像データ２３０ｄの特徴点と、学習対象画像データ２３０ａの特徴点とを対応付けることができる。
【実施例３】
【００８７】
本実施例３にかかる画像処理装置について説明する。図１５は、本実施例３にかかる画像処理装置の構成を示す機能ブロック図である。図１５に示すように、画像処理装置３００は、カメラ３１０ａ、入力部３１０ｂ、出力部３２０、記憶部３３０、制御部３４０を有する。
【００８８】
カメラ３１０ａ、入力部３１０ｂ、出力部３２０に関する説明は、図１に示したカメラ１１０ａ、入力部１１０ｂ、出力部１２０に関する説明と同様である。
【００８９】
記憶部３３０は、学習対象画像データ３３０ａ、視点変動画像データ群３３０ｂ、登録テーブル３３０ｃ、認識対象画像データ３３０ｄを記憶する。記憶部３３０は、例えば、ＲＡＭ、ＲＯＭ、フラッシュメモリなどの半導体メモリ素子、またはハードディスク、光ディスクなどの記憶装置に対応する。
【００９０】
学習対象画像データ３３０ａは、実施例１の学習対象画像データ１３０ａに対応する。視点変動画像データ群３３０ｂは、実施例１の視点変動画像データ群１３０ｂに対応する。認識対象画像データ３３０ｄは、実施例１の認識対象画像データ１３０ｄに対応する。
【００９１】
登録テーブル３３０ｃは、学習対象画像データ３３０ａおよび視点変動画像データ群３３０ｂから抽出される特徴点に関する各種の情報を保持するテーブルである。登録テーブル３３０ｃのデータ構造は、後述する。
【００９２】
制御部３４０は、データ管理部３４０ａ、視点変動画像生成部３４０ｂ、特徴点抽出部３４０ｃ、分類部３４０ｄ、対応付け部３４０ｅを有する。制御部３４０は、例えば、ＡＳＩＣや、ＦＰＧＡなどの集積装置に対応する。また、制御部３４０は、例えば、ＣＰＵやＭＰＵ等の電子回路に対応する。
【００９３】
データ管理部３４０ａは、記憶部３３０を管理する処理部である。例えば、学習フェーズにおいて、データ管理部３４０ａは、カメラ３１０ａから学習対象画像データを取得し、取得した学習対象画像データを、記憶部３３０に記憶する。認識フェーズにおいて、データ管理部３４０ａは、カメラ３１０ａから認識対象画像データを取得し、取得した認識対象画像データを、記憶部３３０に記憶する。
【００９４】
視点変動画像生成部３４０ｂは、学習対象画像データ３３０ａを基にして、視点変動画像データ群３３０ｂを生成する処理部である。視点変動画像生成部３４０ｂの具体的な処理は、実施例１の視点変動画像生成部１４０ｂの処理と同様である。
【００９５】
特徴点抽出部３４０ｃは、学習対象画像データ３３０ａから特徴点を抽出する。また、特徴点抽出部３４０ｃは、視点変動画像データ群３３０ｂの各視点変動画像データから、特徴点を抽出する。特徴点抽出部３４０ｃは、学習対象画像データ３３０ａから抽出した特徴点に関するデータおよび視点変動画像データ群３３０ｂから抽出した特徴点に関するデータを、分類部３４０ｄに出力する。
【００９６】
特徴点抽出部３４０ｃの具体的な処理は、実施例１の特徴点抽出部１４０ｃの処理と同様である。特徴点抽出部３４０ｃは、図４に示した抽出結果１Ａおよび図６に示した抽出結果１Ｂを分類部３４０ｄに出力する。
【００９７】
分類部３４０ｄは、視点変動画像データ群３３０ｂから抽出された複数の特徴点を分類する処理部である。分類部３４０ｄは、抽出結果１Ａと、抽出結果１Ｂとを基にして、特徴点を分類する。
【００９８】
特に、実施例３の分類部３４０ｄは、実施例１の分類部１４０ｄが分類した各特徴点群の重心座標を比較し、重心座標の近い特徴点群をまとめ、まとめた特徴点群に対して、k-meansを適用することで、重心座標が類似する特徴点群を分類し直す。分類部３４０ｄが、視点変動画像データから抽出した各特徴点を、特徴点４０Ａ、特徴点４０Ｂ、特徴点４０Ｃの何れかに分類するまでの処理は、実施例１の分類部１４０ｄと同様である。
【００９９】
図１６、図１７は、実施例３にかかる分類部の処理を説明するための図である。図１６において、丸印は、特徴点４０Ａに分類された特徴点に対応する。三角印は、特徴点４０Ｂに分類された特徴点に対応する。四角印は、特徴点４０Ｃに分類された特徴点に対応する。
【０１００】
分類部３４０ｄは、各特徴点群の重心２Ａ〜２Ｃの距離を比較し、重心間の距離が閾値未満となる重心の組を判定する。本実施例３では、一例として、重心２Ａと、重心２Ｂとの距離が閾値未満となる場合について説明する。
【０１０１】
分類部３４０ｄは、判定した重心２Ａに対応する特徴点群と、重心２Ｂに対応する特徴点群に対して、k-meansを実行する。ここで、重心２Ａに対応する特徴点群は、特徴点４０Ａに分類された丸印の各特徴点である。重心２Ｂに対応する特徴点群は、特徴点４０Ｂに分類された三角印の各特徴点である。
【０１０２】
分類部３４０ｄが、k-meansを実行すると、図１７に示すように各特徴点がグループ４Ａ〜４Ｅに分類される。分類部３４０ｄは、グループ毎に、各特徴点の重心ｋ１〜ｋ５を求める。各重心をキーポイントと表記する。また、分類部３４０ｄは、グループ毎に、各特徴点の共分散を算出する。
【０１０３】
図１７を参照すると、グループ４Ａ、４Ｂは、丸印の特徴点のみを含む。このため、分類部３４０ｄは、グループ４Ａ、４Ｂを、特徴点４０Ａに対応付ける。グループ４Ａのクラスタ番号を１、グループ４Ｂのクラスタ番号を２とする。
【０１０４】
図１７を参照すると、グループ４Ｃは、丸印の特徴点および三角印の特徴点を含む。この場合には、分類部３４０ｄは、グループ４Ｃを、特徴点４０Ａ、特徴点４０Ｂの双方と対応付ける。グループ４Ｃのクラスタ番号を３とする。
【０１０５】
図１７を参照すると、グループ４Ｄ、４Ｅは、三角印の特徴点のみを含む。このため、分類部３４０ｄは、グループ４Ｄ、４Ｅを、特徴点４０Ｂに対応付ける。グループ４Ｄのクラスタ番号を４、グループ４Ｅのクラスタ番号を５とする。
【０１０６】
なお、分類部３４０ｄは、四角印の各特徴点のクラスタ番号を６とし、重心をｋ６とする。ｋ６は、図１６の２Ｃに対応するものとする。
【０１０７】
分類部３４０ｄは、分類した結果を、登録テーブル３３０ｃに登録する。図１８は、本実施例３の登録テーブルのデータ構造の一例を示す図である。この登録テーブル３３０ｃは、クラスタ番号、キー番号、構成データ数、座標、重心座標、共分散を有する。
【０１０８】
図１８のクラスタ番号は、分類した特徴点を一意に識別する番号である。クラスタ番号１、２は、特徴点４０Ａに分類された特徴点群のクラスタ番号である。クラスタ番号３は、上記のように、特徴点４０Ａまたは特徴点４０Ｂに分類された特徴点群のクラスタである。クラスタ番号４、５は、特徴点４０Ｂに分類された特徴点群のクラスタ番号である。クラスタ番号６は、特徴点４０Ｃに分類された特徴点群のクラスタ番号である。
【０１０９】
図１８のキー番号は、各特徴点群のキーポイントを一位に識別する番号である。構成データ数は、各グループに含まれる特徴点の数に対応する。なお、同一のグループに異なる種類の特徴点が含まれる場合には、種類毎の特徴点の数が登録される。例えば、クラスタ番号３に対応する特徴点群は、丸印の特徴点と、三角印の特徴点を含むため、特徴点の種類毎に数が登録される。
【０１１０】
図１８の座標は、学習対象画像データ３３０ａから抽出した特徴点の座標である。例えば、座標（ｘ１、ｙ１）は、特徴点４０Ａの座標である。座標（ｘ２、ｙ２）は、特徴点４０Ｂの座標である。座標（ｘ３、ｙ３）は、特徴点４０Ｃの座標である。重心座標は、キーポイントの重心座標に対応する。共分散は、k-meansにより更に分類したグループに含まれる特徴点の共分散値である。
【０１１１】
対応付け部３４０ｅは、登録テーブル３３０ｃを基にして、認識対象画像データ３３０ｄの特徴点と、学習対象画像データ３３０ａの特徴点とを対応付ける処理部である。
【０１１２】
対応付け部３４０ｅは、ＳＩＦＴを利用して、認識対象画像データ３３０ｄから、特徴点を抽出する。対応付け部３４０ｅは、認識対象画像データ３３０ｄから抽出した特徴点の特徴空間上の座標と、登録テーブル３３０ｃの重心座標とを比較し、最も座標間の距離が短い重心座標に対応するクラスタ番号を判定する。対応付け部３４０ｅは、判定したクラスタ番号の座標と、認識対象画像データ３３０ｄの特徴点とを対応付ける。
【０１１３】
対応付け部３４０ｅは、キー番号ｋ１、ｋ２の重心座標の何れかと、特徴点との距離が最も近い場合には、該特徴点は、学習対象画像データ３３０ａ上の特徴点４０Ａに対応すると判定する。対応付け部３４０ｅは、キー番号ｋ４、ｋ５の重心座標の何れかと、特徴点との距離が最も近い場合には、該特徴点は、学習対象画像データ３３０ａ上の特徴点４０Ｂに対応すると判定する。対応付け部３４０ｅは、キー番号ｋ６の重心座標の何れかと、特徴点との距離が最も近い場合には、該特徴点は、学習対象画像データ３３０ａ上の特徴点４０Ｃに対応すると判定する。
【０１１４】
なお、対応付け部３４０ｅは、キー番号ｋ３の重心座標と、特徴点との距離が最も近い場合には、該特徴点は、学習対象画像データ３３０ａ上の特徴点４０Ａまたは特徴点４０Ｂの何れかに対応すると判定する。認識対象画像データ３３０ｄの特徴点が、学習対象画像データ３３０ａ上の複数の特徴点に対応付けられた場合には、対応付け部３４０ｅは、特徴点全体として、誤差が最も少ない特徴点を最終的に対応付ける。
【０１１５】
例えば、対応付け部３４０ｅは、最小二乗法等を基にして、特徴点４０Ａに対応付けた場合の誤差と、特徴点４０Ｂに対応付けた場合の誤差とを比較し、誤差の少ない方の特徴点に、認識対象画像データ３３０ｄの特徴点を対応付ける。
【０１１６】
なお、対応付け部３４０ｅは、実施例１と同様にして、マハラノビス距離を用いて、認識対象画像データ３３０ｄの特徴点と、学習対象画像データ３３０ａの特徴点とを対応付けてもよい。
【０１１７】
次に、本実施例３にかかる画像処理装置３００の効果について説明する。画像処理装置３００は、複数の特徴点に対応する可能性がある場合には、認識対象画像データ３３０ｄの特徴点を、学習対象画像データ３３０ａの複数の特徴点に対応付ける。そして、画像処理装置３００は、全体の特徴点との関係から、複数の特徴点に対応付けた特徴点を、単一の特徴点に絞り込む。このため、認識対象画像データ３３０ｄの特徴点を、無理矢理、単一の特徴点に対応付けることが無くなり、正確に、認識対象画像データ３３０ｄの特徴点を、学習対象画像データ３３０ａの複数の特徴点に対応付けることができる。
【０１１８】
次に、実施例に示した情報処理装置１００、２００、３００と同様の機能を実現する情報処理プログラムを実行するコンピュータの一例を説明する。図１９は、画像処理プログラムを実行するコンピュータの一例を示す図である。
【０１１９】
図１９に示すように、コンピュータ４００は、各種演算処理を実行するＣＰＵ４０１と、ユーザからのデータの入力を受け付ける入力装置４０２と、ディスプレイ４０３を有する。また、コンピュータ４００は、記憶媒体からプログラム等を読取る読み取り装置４０４と、ネットワークを介して他のコンピュータとの間でデータの授受を行うインターフェース装置４０５とを有する。また、コンピュータ４００は、各種情報を一時記憶するＲＡＭ４０６と、ハードディスク装置４０７を有する。そして、各装置４０１〜４０７は、バス４０８に接続される。
【０１２０】
ハードディスク装置４０７は、例えば、視点変動画像生成プログラム４０７ａ、特徴点抽出プログラム４０７ｂ、分類プログラム４０７ｃ、対応付けプログラム４０７ｄを有する。ＣＰＵ４０１は、各プログラム４０７ａ〜４０７ｄを読み出して、ＲＡＭ４０６に展開する。
【０１２１】
視点変動画像生成プログラム４０７ａは、視点変動画像生成プロセス４０６ａとして機能する。特徴点抽出プログラム４０７ｂは、特徴点抽出プロセス４０６ｂとして機能する。分類プログラム４０７ｃは、分類プロセス４０６ｃとして機能する。対応付けプログラム４０７ｄは、対応付けプロセス４０６ｄとして機能する。
【０１２２】
例えば、視点変動画像生成プロセス４０６ａは、視点変動画像生成部１４０ｂ、２４０ｂ、３４０ｂに対応する。特徴点抽出プロセス４０６ｂは、特徴点抽出部１４０ｃ、２４０ｃ、３４０ｃに対応する。分類プロセス４０６ｃは、分類部１４０ｄ、２４０ｄ、３４０ｄに対応する。対応付けプロセス４０６ｄは、対応付け部１４０ｅ、２４０ｅ、３４０ｅに対応する。
【０１２３】
なお、各プログラム４０７ａ〜４０７ｄについては、必ずしも最初からハードディスク装置４０７に記憶させておかなくてもよい。例えば、コンピュータ４００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ４００がこれらから各プログラム４０７ａ〜４０７ｄを読み出して実行するようにしてもよい。
【０１２４】
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
【０１２５】
（付記１）コンピュータに、
画像を正面のカメラ視点から撮影した学習対象画像を射影変換することで、前記学習対象画像に対するカメラ視点の異なる視点変動画像を複数生成し、
前記学習対象画像および複数の前記視点変動画像から特徴点を抽出し、
前記学習対象画像から抽出した各特徴点に対して、複数の前記視点変動画像から抽出した各特徴点を対応付けることで、複数の前記視点変動画像から抽出した各特徴点を複数の特徴点群に分類し、
分類した特徴点群を含む領域を登録テーブルに登録し、
認識対象画像を取得し、該認識対象画像から特徴点を抽出し、
前記認識対象画像から抽出した特徴点の位置と、前記登録テーブルの前記特徴点群の領域との関係に基づいて、前記認識対象画像の特徴点と前記学習対象画像の特徴点とを対応付ける
各処理を実行させることを特徴とする画像処理プログラム。
【０１２６】
（付記２）前記認識対象画像の特徴点と前記学習対象画像の特徴点とを対応付ける処理は、前記領域に含まれる特徴点群の重心と、前記認識対象画像の特徴点との距離に基づいて、前記認識対象画像の特徴点と前記学習対象画像の特徴点とを対応付けることを特徴とする付記１に記載の画像処理プログラム。
【０１２７】
（付記３）前記登録テーブルに登録する処理は、特徴点群に含まれる各特徴点の分布広がりを更に登録し、前記認識対象画像の特徴点と前記学習対象画像の特徴点とを対応付ける処理は、前記領域に含まれる特徴点群の重心と、前記分布広がりの重み付けをした前記認識対象画像の特徴点との距離に基づいて、前記認識対象画像の特徴点と前記学習対象画像の特徴点とを対応付けることを特徴とする付記１または２に記載の画像処理プログラム。
【０１２８】
（付記４）前記分布広がりは、標準偏差または分散であることを特徴とする付記３に記載の画像処理プログラム。
【０１２９】
（付記５）前記特徴点群に分類する処理は、前記学習対象画像の一つの特徴点に対して、複数の特徴点群に分類することを特徴とする付記１〜４のいずれか一つに記載の画像処理プログラム。
【０１３０】
（付記６）前記特徴点群に分類する処理は、前記学習対象画像の複数の特徴点に対して、一つの特徴点群に分類することを特徴とする付記１〜４のいずれか一つに記載の画像処理プログラム。
【０１３１】
（付記７）コンピュータが実行する画像処理方法であって、
画像を正面のカメラ視点から撮影した学習対象画像を射影変換することで、前記学習対象画像に対するカメラ視点の異なる視点変動画像を複数生成し、
前記学習対象画像および複数の前記視点変動画像から特徴点を抽出し、
前記学習対象画像から抽出した各特徴点に対して、複数の前記視点変動画像から抽出した各特徴点を対応付けることで、複数の前記視点変動画像から抽出した各特徴点を複数の特徴点群に分類し、
分類した特徴点群を含む領域を登録テーブルに登録し、
認識対象画像を取得し、該認識対象画像から特徴点を抽出し、
前記認識対象画像から抽出した特徴点の位置と、前記登録テーブルの前記特徴点群の領域との関係に基づいて、前記認識対象画像の特徴点と前記学習対象画像の特徴点とを対応付ける
各処理を実行することを特徴とする画像処理方法。
【０１３２】
（付記８）前記認識対象画像の特徴点と前記学習対象画像の特徴点とを対応付ける処理は、前記領域に含まれる特徴点群の重心と、前記認識対象画像の特徴点との距離に基づいて、前記認識対象画像の特徴点と前記学習対象画像の特徴点とを対応付けることを特徴とする付記７に記載の画像処理方法。
【０１３３】
（付記９）前記登録テーブルに登録する処理は、特徴点群に含まれる各特徴点の分布広がりを更に登録し、前記認識対象画像の特徴点と前記学習対象画像の特徴点とを対応付ける処理は、前記領域に含まれる特徴点群の重心と、前記分布広がりの重み付けをした前記認識対象画像の特徴点との距離に基づいて、前記認識対象画像の特徴点と前記学習対象画像の特徴点とを対応付けることを特徴とする付記７または８に記載の画像処理方法。
【０１３４】
（付記１０）前記分布広がりは、標準偏差または分散であることを特徴とする付記９に記載の画像処理方法。
【０１３５】
（付記１１）前記特徴点群に分類する処理は、前記学習対象画像の一つの特徴点に対して、複数の特徴点群に分類することを特徴とする付記７〜１０のいずれか一つに記載の画像処理方法。
【０１３６】
（付記１２）前記特徴点群に分類する処理は、前記学習対象画像の複数の特徴点に対して、一つの特徴点群に分類することを特徴とする付記７〜１０のいずれか一つに記載の画像処理方法。
【０１３７】
（付記１３）画像を正面のカメラ視点から撮影した学習対象画像を射影変換することで、前記学習対象画像に対するカメラ視点の異なる視点変動画像を複数生成する視点変動画像生成部と、
前記学習対象画像および複数の前記視点変動画像から特徴点を抽出する特徴点抽出部と、
前記学習対象画像から抽出した各特徴点に対して、複数の前記視点変動画像から抽出した各特徴点を対応付けることで、複数の前記視点変動画像から抽出した各特徴点を複数の特徴点群に分類し、分類した特徴点群を含む領域を登録テーブルに登録する分類部と、
認識対象画像を取得し、該認識対象画像から特徴点を抽出し、前記認識対象画像から抽出した特徴点の位置と、前記登録テーブルの前記特徴点群の領域との関係に基づいて、前記認識対象画像の特徴点と前記学習対象画像の特徴点とを対応付ける対応付け部と
を有することを特徴とする画像処理装置。
【０１３８】
（付記１４）前記対応付け部は、前記領域に含まれる特徴点群の重心と、前記認識対象画像の特徴点との距離に基づいて、前記認識対象画像の特徴点と前記学習対象画像の特徴点とを対応付けることを特徴とする付記１３に記載の画像処理装置。
【０１３９】
（付記１５）前記分類部は、前記登録テーブルの特徴点群に含まれる各特徴点の分布広がりを更に登録し、前記対応付け部は、前記領域に含まれる特徴点群の重心と、前記分布広がりの重み付けをした前記認識対象画像の特徴点との距離に基づいて、前記認識対象画像の特徴点と前記学習対象画像の特徴点とを対応付けることを特徴とする付記１３または１４に記載の画像処理装置。
【０１４０】
（付記１６）前記分布広がりは、標準偏差または分散であることを特徴とする付記１５に記載の画像処理装置。
【０１４１】
（付記１７）前記分類部は、前記学習対象画像の一つの特徴点に対して、複数の特徴点群に分類することを特徴とする付記１３〜１６のいずれか一つに記載の画像処理装置。
【０１４２】
（付記１８）前記分類部は、前記学習対象画像の複数の特徴点に対して、一つの特徴点群に分類することを特徴とする付記１３〜１６のいずれか一つに記載の画像処理装置。
【符号の説明】
【０１４３】
１００    画像処理装置
１１０ａ  カメラ
１１０ｂ  入力部
１２０    出力部
１３０    記憶部
１４０    制御部
【図１】
2013058174.tif 000003
【図２】
2013058174.tif 000004
【図３】
2013058174.tif 000005
【図４】
2013058174.tif 000006
【図５】
2013058174.tif 000007
【図６】
2013058174.tif 000008
【図７】
2013058174.tif 000009
【図８】
2013058174.tif 000010
【図９】
2013058174.tif 000011
【図１０】
2013058174.tif 000012
【図１１】
2013058174.tif 000013
【図１２】
2013058174.tif 000014
【図１３】
2013058174.tif 000015
【図１４】
2013058174.tif 000016
【図１５】
2013058174.tif 000017
【図１６】
2013058174.tif 000018
【図１７】
2013058174.tif 000019
【図１８】
2013058174.tif 000020
【図１９】
2013058174.tif 000021