(57)【特許請求の範囲】
【請求項１】
認識対象からデータベースに登録する画像特徴を検出する画像特徴検出装置において、
認識対象を複数の視点でサンプリングして各視点に固有の学習画像を生成する学習画像生成手段と、
各視点の学習画像から画像特徴を検出する画像特徴検出手段と、
視点間でマッチング可能な画像特徴の対応関係を管理する対応関係管理手段と、
前記対応関係に基づいて、マッチング用に登録する画像特徴を、登録済みの画像特徴が少ない視点から順に所定の目標数まで繰り返し選択して登録するに際し、前記選択は、前記登録済みの画像特徴が少ない視点に対して検出される未登録の画像特徴のうち、より多くの視点でマッチング可能な画像特徴から順に選択する画像特徴選択手段と
を具備することを特徴とする画像特徴検出装置。
【請求項２】
前記画像特徴選択手段は、
登録済みの画像特徴が少ない視点で検出できる未登録の画像特徴の少なくとも一つをマッチング用に登録する第１手順と、
前記登録した画像特徴を検出できる全視点に投票する第２の手順と、
各視点の投票総数を当該視点に関する登録済みの画像特徴数として前記第１及び第２の手順を繰り返す第３の手順とを実行することを特徴とする請求項１に記載の画像特徴検出装置。
【請求項３】
前記学習画像生成手段は、認識対象を複数の視点および距離で画像サンプリングし、視点および距離の組み合わせごとに学習画像を生成することを特徴とする請求項１又は２に記載の画像特徴検出装置。
【請求項４】
前記画像特徴が、各学習画像から検出された特徴点の局所特徴量と、当該特徴点の学習画像上での二次元座標に対応する認識対象表面の三次元座標とを含むことを特徴とする請求項１ないし３のいずれかに記載の画像特徴検出装置。
【請求項５】
前記対応関係管理手段は、検出できた画像特徴数が所定の第１閾値を下回る視点に関する対応関係を排除することを特徴とする請求項１ないし４のいずれかに記載の画像特徴検出装置。
【請求項６】
前記対応関係管理手段は、マッチング可能な画像特徴数が所定の第２閾値を下回る視点に関する対応関係を排除することを特徴とする請求項１ないし５のいずれかに記載の画像特徴検出装置。
【請求項７】
前記学習画像が、認識対象の周囲に偏りなく仮想的に配置された視点から観察される画像であることを特徴とする請求項１ないし６のいずれかに記載の画像特徴検出装置。
【請求項８】
前記学習画像が、認識対象を二次元に投影させた投影画像であり、前記視点が投影パラメータにより決定されることを特徴とする請求項１ないし７のいずれかに記載の画像特徴検出装置。
【請求項９】
撮影したカメラ画像内の認識対象に対する姿勢パラメータを推定する画像処理装置において、
認識対象を複数の視点で画像サンプリングして各視点に固有の学習画像を生成する学習画像生成手段と、
各視点の学習画像から画像特徴を検出する画像特徴検出手段と、
視点間でマッチング可能な画像特徴の対応関係を管理する対応関係管理手段と、
前記対応関係に基づいて、マッチング用に登録する画像特徴を、登録済みの画像特徴が少ない視点から順に所定の目標数まで繰り返し選択し、登録する画像特徴選択手段と、
前記カメラ画像から検出された画像特徴と前記登録された画像特徴とのマッチング結果に基づいて対応点を認識する手段と、
前記認識結果に基づいて、前記カメラ画像を撮影した際の姿勢パラメータを推定する姿勢パラメータ算出手段とを具備するとともに、
前記画像特徴選択手段は、前記登録済みの画像特徴が少ない視点に対して検出される未登録の画像特徴のうち、より多くの視点でマッチング可能な画像特徴から順に選択する
ことを特徴とする画像処理装置。
【請求項１０】
前記画像特徴選択手段は、
登録済みの画像特徴が少ない視点で検出できる未登録の画像特徴の少なくとも一つをマッチング用に登録する第１手順と、
前記登録した画像特徴を検出できる全視点に投票する第２の手順と、
各視点の投票総数を当該視点に関する登録済みの画像特徴数として前記第１及び第２の手順を繰り返す第３の手順とを実行することを特徴とする請求項９に記載の画像処理装置。
【請求項１１】
前記学習画像生成手段は、認識対象を複数の視点および距離で画像サンプリングし、視点および距離の組み合わせごとに学習画像を生成することを特徴とする請求項９又は１０に記載の画像処理装置。
【請求項１２】
認識対象とのマッチング用の画像特徴を検出する画像特徴検出プログラムにおいて、
認識対象を複数の視点で画像サンプリングして各視点の学習画像を生成する手順と、
各視点の学習画像から画像特徴を検出する手順と、
視点間でマッチング可能な画像特徴の対応関係に基づいて、マッチング用に登録する画像特徴を、登録済みの画像特徴が少ない視点から順に所定の目標数まで繰り返し選択し、登録する手順とを、コンピュータに実行させるとともに、
前記画像特徴を選択する手順では、前記登録済みの画像特徴が少ない視点に対して検出される未登録の画像特徴のうち、より多くの視点でマッチング可能な画像特徴から順に選択する画像特徴検出プログラム。
【請求項１３】
認識対象とのマッチング用の画像特徴を検出する画像特徴検出方法において、
認識対象を複数の視点で画像サンプリングして各視点の学習画像を生成し、
各視点の学習画像から画像特徴を検出し、
視点間でマッチング可能な画像特徴の対応関係に基づいて、マッチング用に登録する画像特徴を、登録済みの画像特徴が少ない視点から順に所定の目標数まで繰り返し選択し、登録するとともに、
前記画像特徴を選択するに際し、前記登録済みの画像特徴が少ない視点に対して検出される未登録の画像特徴のうち、より多くの視点でマッチング可能な画像特徴から順に選択する画像特徴検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、認識対象の学習画像から検出した画像特徴を認識対象のカメラ画像とマッチングさせる画像処理装置ならびにその画像特徴検出方法、プログラムおよび装置に係り、特に、画像認識型のAR（Augmented Reality）技術において、カメラ画像の撮影角度や距離に依らず、安定的に任意形状オブジェクトとのマッチングを可能にする画像処理装置ならびにその画像特徴検出方法、プログラムおよび装置に関する。
【背景技術】
【０００２】
近年、現実空間の画像（映像）をコンピュータで処理して仮想情報を重畳するAR（Augmented Reality：拡張現実感）技術が注目を集めている。AR技術を用いることで、ユーザの行動を支援することや、ユーザに直観的な情報掲示を行うことが可能となる。
【０００３】
例えば、身の回りの看板や広告にAR技術を適用することで、限られたスペースでは伝えることのできない詳細な情報や動画、3Dコンテンツ等を付加することや、場所や時間、閲覧者の属性等によって掲示する情報を適切に変更することが可能となる。また、複雑な操作手順を必要とする装置のガイドにAR技術を適用することで、作業の効率化や、安全性の向上を実現することが可能となる。
【０００４】
AR技術の主なプラットフォームは、以前はWebカメラを接続したラップトップPCであったが、近年は撮像装置（カメラ）や各種センサ、表示ディスプレイを搭載し、十分な処理性能を備えたタブレットデバイスやスマートフォン、HMD（Head Mounted Display）に代表されるウェアラブルデバイス等、様々な高性能モバイル端末が普及しつつあり、AR技術の主要なプラットフォームを担いつつある。
【０００５】
これらAR技術を構成する要素技術の中では、仮想情報を正しい位置に重畳するための「位置合わせ技術」が特に重要な役割を担っている。仮想情報があたかも現実空間の重畳位置に存在するかのように見せるためには、カメラ及びディスプレイの移動に合わせてリアルタイムで位置合わせ処理を実行する必要がある。
【０００６】
特に、スマートフォンやビデオシースルー型のHMDの場合、一般的なカメラプレビューの更新頻度である30FPSの間隔で位置合わせを実行する必要があるため、30FPSの要件を満たせないような処理負荷の高い技術は、仮に位置合わせ精度が高くても採用は困難である。
【０００７】
GPSや電子コンパス（方位センサ）、加速度センサといった各種センサデバイスを利用し、現実空間とカメラの相対的な位置関係（位置及び方向の6自由度のパラメータで決定される。以降「姿勢」と表現と表現する）を求め、位置合わせ（以降「姿勢推定」と表現する。）を実現するARサービスは既に広く提供されており、代表的なサービス例として、ナビゲーションサービスや、観光案内サービス等が挙げられる。
【０００８】
センサに基づく姿勢推定は処理負荷が少ない利点がある一方、姿勢推定精度が十分ではなく、異なる対象物（建物など）に仮想情報を重畳してしまうことが起こりうる。また、現実空間内に固定配置されたオブジェクトに対してのみ有効（仮想情報を重畳可能）という制約が存在する。
【０００９】
一方、カメラのプレビュー画像に対する画像解析処理によって姿勢を推定する技術については、正確な姿勢推定と移動物体に対するARを実現できるという点が大きな利点である。推定精度については、既存技術の時点で、仮想情報の表示位置の誤差を数ピクセル程度（ユーザには知覚できないレベル）に抑えることが可能であるため、作業ガイドの重畳表示等、正確な重畳が求められる場合に相性が良い。
【００１０】
ただし、毎フレームの画像処理は高い処理負荷を必要とし、認識の頑健性（撮影距離、角度、場所、時間帯等、様々な撮影条件下において、安定的に認識する性質／能力）にも課題が多く残されている。そのため、処理負荷や頑健性の課題を解決するための技術が活発に検討されている。
【００１１】
非特許文献１に開示されている技術を用いることで、モバイル端末上で、事前登録された写真やポスターといった任意の平面オブジェクトの姿勢をリアルタイム推定することが可能となる。
【００１２】
特許文献１では、事前登録された三次元オブジェクトの姿勢をリアルタイムで推定するための技術が開示されている。
【００１３】
非特許文献３，４では、事前登録された平面／三次元オブジェクトについて様々な（任意の）視点からマッチング可能な画像特徴を検出するための技術、及び当該画像特徴を利用して、オブジェクトの姿勢を様々な（任意の）視点から推定するための技術が開示されている。
【００１４】
また、非特許文献２で開示されている技術を用いることで、モバイル端末上で、事前登録されていない三次元の現実空間に対するカメラの姿勢をリアルタイム推定することが可能となる。
【００１５】
特許文献２では、現実空間に対するカメラ姿勢推定精度を向上するため、時刻、天候などの環境情報を利用する技術が開示されている。特許文献３では、事前登録された平面／三次元オブジェクトの姿勢をモバイル端末でリアルタイム推定するための技術が開示されている。特許文献４には、三次元オブジェクトの姿勢をモバイル端末でリアルタイム推定するための技術が開示されている。
【先行技術文献】
【特許文献】
【００１６】
【特許文献１】特許第5291605号公報
【特許文献２】特開2013-508795号公報
【特許文献３】特表2013-508844号公報
【特許文献４】特表2014-503922号公報
【非特許文献】
【００１７】
【非特許文献１】D. Wagner, G. Reitmayr, A. Mulloni, T. Drummond, and D. Schmalstieg, "Real-time detection and tracking for augmented reality on mobile phones," IEEE Trans. on Visualization and Computer GraphicS2010.
【非特許文献２】G. Klein, D. Murray, "Parallel Tracking and Mapping on a Camera Phone,"in Proc of ISMAR, 2009.
【非特許文献３】D. Kurz, T. Olszamowski, S. Benhimane, "Representative feature descriptor sets for robust handheld camera localization," in Proc. of ISMAR, 2012.
【非特許文献４】T. Kobayashi, H. Kato, H. Yanagihara, "Novel Keypoint Registration for Fast and Robust Pose Detection on Mobile Phones," in Proc. of ACPR, 2013.
【発明の概要】
【発明が解決しようとする課題】
【００１８】
非特許文献１の手法は、認識対象が平面オブジェクトである場合のみ適用可能で、任意形状のオブジェクトは認識対象として扱えないという問題点があった。これは、ARの適用範囲を大幅に狭めてしまう点で大きな問題である。例えば、一般的な市販製品、家電製品、建築物等を認識対象とすることができない。
【００１９】
特許文献２、非特許文献２の手法は、静的な三次元空間にのみ適用可能であるため、認識対象が建築物等の固定物体であれば適用可能であるが、市販製品や車などの移動体には適用できない。また、固定物体であっても、同一個所に対する視点が大きく変動する（表側から真横や裏側に回る等する）場合は、単一のキーフレームによる認識を維持できず、安定的に姿勢を推定できない。
【００２０】
特許文献１，３の手法では、任意形状のオブジェクトを認識対象として扱うことができるものの、認識可能な視点がデータベースに登録された参照画像（キーフレーム）の視点に限定されてしまうので、撮影角度や距離に依らず安定的に姿勢を推定することができなかった。
【００２１】
特許文献４の手法では、認識対象のオブジェクトの他に既知の二次元面が同時にカメラに写っていることを条件としているため、三次元物体のみが独立して存在するシーン（大抵のシーンは、これに該当する）に適用することができなかった。
【００２２】
非特許文献３、非特許文献４の手法では、認識対象の3Dモデルを様々な視点から撮影した生成画像から画像特徴を検出／登録することにより、姿勢推定可能な視点の範囲を拡大できる。
【００２３】
しかしながら、非特許文献３の手法は、その他一般的な特徴選択手法と同様、画像特徴の絶対的なスコアにのみ基づいて選択を行うため、視点間で登録する画像特徴数に偏りが生じ、姿勢推定不可能な視点が数多く存在していた。
【００２４】
一方、非特許文献４は視点ごとに均等に画像特徴を選択／登録することで偏りを防ぐものであるが、問題を完全に解決するには至っていない。視点数を一定数以上に増加させた場合、各視点において登録する画像特徴数が減少することに起因し、スコア上位の画像特徴が選択から漏れ、全体のマッチング性能が低下する問題が存在する。
【００２５】
また、本発明が解決する別の課題として、構造的に全周囲からの姿勢推定が不可能なオブジェクト（以降、不完全型オブジェクトと呼ぶ）に対するマッチング、姿勢推定の安定性の向上が挙げられる。不完全型オブジェクトの例として、片面のみ模様のある平面物体（片面プリント等）や、円柱側面の半分を占めるラベル等が挙げられる。また、実物には模様が全周囲にあるものの、3Dモデルが不完全で部分的にしか存在しないオブジェクトも含まれる。
【００２６】
これら不完全型オブジェクトの場合は、例え3Dモデルを全周囲から投影した生成画像を用いたとしても、一部の視点からは画像特徴が検出されないため、こういった視点においては画像特徴のマッチングや、姿勢推定が不可能である。（以降こういった視点を「姿勢推定不可能な視点」と表す。）
【００２７】
また、画像特徴自体は検出されるものの、マッチングや姿勢推定が困難な視点も存在する。例えば、平面物体を真横に近い視点から観察した場合などである。こういった視点では、対象物は視覚的には僅かに観察できるが、検出した画像特徴は信頼性が低く、マッチングすることが望めない。（以降こういった視点を「姿勢推定困難な視点」と表す。）
【００２８】
一般に画像特徴は、検出位置の周囲の領域（パッチ領域）が正面に近い（パッチ領域の法線が視点方向に対して平行に近い）場合に、高いマッチング精度が見込め、逆にパッチ領域に対する角度が大きい（パッチ領域の法線が視点方向に対して垂直に近い）場合には、高精度なマッチングが望めない。これは、パッチ領域に対する撮影角度と、視点変化に対する見え方の変化の大きさ関係性に起因する（図４参照）。
【００２９】
このような姿勢推定困難な視点から検出された画像特徴がデータベースに登録されると、実際には当該視点からは姿勢を推定できる見込みが無い（十分な画像特徴のマッチング数が得られることがほとんど無い）ため、データベースサイズを無駄に増加させてしまう。また、マッチングの信頼性の低い画像特徴は、誤マッチングを増加させるため、マッチングや姿勢推定の精度が劣化してしまう。（なお、姿勢推定不可能な視点からは画像特徴は検出されないため、この問題は発生しない。）
【００３０】
非特許文献３，４では、認識対象が平面オブジェクトの場合に、姿勢推定可能な視点に限定した視点配置（半球面）を用いることで、学習画像生成の際の視点を限定している。しかしながら、平面オブジェクト以外の不完全型オブジェクトに対して、毎回視点配置を設計するのは現実的では無い。
【００３１】
本発明の目的は、上記の技術課題を解決し、任意形状のオブジェクトに関して、その学習画像とカメラ画像との安定的なマッチングを撮影角度や距離に依らず可能にする画像処理装置ならびにその画像特徴検出方法、プログラムおよび装置を提供することにある。
【課題を解決するための手段】
【００３２】
上記の目的を達成するために、本発明は、認識対象からマッチング用の画像特徴を選択してデータベースに登録する画像特徴検出装置において、以下の構成を具備した点に特徴がある。
【００３３】
(1) 認識対象を複数の視点でサンプリングして各視点に固有の学習画像を生成する学習画像生成手段と、各視点の学習画像から画像特徴を検出する画像特徴検出手段と、視点間でマッチング可能な画像特徴の対応関係を管理する対応関係管理手段と、この対応関係に基づいて、マッチング用に登録する画像特徴を、登録済みの画像特徴が少ない視点から順に所定の目標数まで繰り返し選択し、登録する画像特徴選択手段とを具備した。
【００３４】
(2) 画像特徴選択手段は、登録済みの画像特徴が少ない視点で検出できる未登録の画像特徴のうち、より多くの視点でマッチング可能な画像特徴から順に選択するようにした。
【００３５】
(3) 画像特徴選択手段は、登録済みの画像特徴が少ない視点で検出できる未登録の画像特徴の少なくとも一つをマッチング用に登録する第１手順と、未登録の画像特徴を検出できる全視点に投票する第２の手順と、各視点の投票総数を当該視点に関する登録済みの画像特徴数として前記第１及び第２の手順を繰り返す第３の手順とを実行するようにした。
【発明の効果】
【００３６】
本発明によれば、以下のような効果が達成される。
(1) マッチング用に予めデータベースに登録する画像特徴を、各視点から万遍なく選択できるようになるので、撮影視点（角度）に依らず、安定的にマッチング可能な画像特徴群を登録することが可能となり、任意形状のオブジェクトの姿勢を安定的に推定可能となる。
【００３７】
(2) 登録済みの画像特徴が少ない視点から未登録の画像特徴を選択して登録する際に、より多くの視点でマッチング可能な画像特徴から順に選択されるので、より多くの視点でマッチング可能な画像特徴を優先的に登録できるようになる。
【００３８】
(3) 画像特徴選択手段は、登録済みの画像特徴が少ない視点で検出できる未登録の画像特徴に注目する第１手順と、未登録の画像特徴を検出できる全視点に投票する第２の手順と、各視点の投票総数を当該視点に関する登録済みの画像特徴数として第１及び第２の手順を繰り返す第３の手順とを実行するようにしたので、短時間で各視点から万遍なく画像特徴を選択できるようになる。
【図面の簡単な説明】
【００３９】
【図１】本発明が適用されるARシステムの構成を示したブロック図である。
【図２】姿勢パラメータ推定装置２の主要部の構成を示したブロック図である。
【図３】仮想視点の設定方法を示した図（その１）である。
【図４】仮想視点の設定方法を示した図（その２）である。
【図５】認識対象から生成される代表画像の例を示した図である。
【図６】マッチング表K1、視点リストK2および画像特徴リストK3の関係を説明するための図である。
【図７】画像特徴の選択手順を示したフローチャートである。
【図８】画像特徴が順次に選択されるプロセスを時系列(時刻t1)で示した図である。
【図９】画像特徴が順次に選択されるプロセスを時系列(時刻t2)で示した図である。
【図１０】画像特徴が順次に選択されるプロセスを時系列(時刻t3)で示した図である。
【図１１】画像特徴検出装置の構成を示したブロック図である。
【発明を実施するための形態】
【００４０】
以下、図面を参照して本発明の実施形態について詳細に説明する。図１は、本発明が適用されるARシステムの構成を示したブロック図であり、携帯電話、スマートフォン、PDAあるいはノートPCなどの情報端末に実装される。
【００４１】
撮像装置４は、携帯端末等に搭載されているカメラモジュールあるいはWEBカメラ装置であり、認識対象５のオブジェクトを撮影してカメラ画像を表示装置１および姿勢パラメータ推定装置２に出力する。前記認識対象５は、形状や模様が既知である任意の三次元物体であり、印刷物やプリント等に代表される二次元的な物体（画像）も含まれる。
【００４２】
姿勢パラメータ推定装置２は、撮像装置４から取得したカメラ画像に基づいて、後に詳述するように、認識対象５の各対応点候補（特徴点）とカメラ画像の各特徴点との間で特徴点マッチングを実施し、相互に対応付けられた特徴点ならびにカメラの内部パラメータに基づいて、認識対象５とARシステムないしは撮像装置４との相対的な位置および姿勢の関係を推定する。
【００４３】
一般に、相対的な位置および姿勢の関係は、姿勢パラメータまたはカメラの外部パラメータと呼ばれる行列の形で表され、三次元空間内の位置と方向の情報が含まれる。画面内での物体の見え方は、この姿勢パラメータと、カメラの内部パラメータと呼ばれる、カメラに固有の焦点距離、主軸の位置の情報が含まれる行列やその他の光学的歪みのパラメータとによって決定される。
【００４４】
本実施形態では、内部パラメータや歪みパラメータは予めキャリブレーション等によって取得され、歪みは取り除かれているものとし、姿勢パラメータの推定結果は表示装置１へ提供される。ARシステムが複数種類の物体を認識対象とする場合には、姿勢パラメータと対象物のIDとの組が、認識した数だけ表示装置１へ提供される。
【００４５】
付加情報データベース(DB)３は、ハードディスクドライブや半導体メモリモジュール等により構成された記憶装置であり、認識対象５の位置をARシステムが認識した際に、表示装置１上で認識対象５に重畳表示するCGや二次元画像を保持しており、姿勢パラメータ推定装置２が推定したカメラの姿勢パラメータに対応する認識対象５に関する付加情報を表示装置１へ出力する。
【００４６】
前記表示装置１は、撮像装置４が連続的に取得したカメラ画像、および付加情報データベース３から取得された付加情報をユーザに掲示できるモニタ装置であり、携帯端末のディスプレイでも良い。また、ヘッドマウントディスプレイ(HMD)のような形態でも良く、特にシースルー型のHMDの場合はカメラ画像を表示せず、視界に付加情報のみを重畳して表示することも可能である。表示装置１がディスプレイである場合は、カメラ画像に付加情報DB３から入力された付加情報を重畳表示する。その際、付加情報は、姿勢パラメータ推定装置２から入力された姿勢パラメータによって、位置や向きを補正されて表示される。
【００４７】
図２は、前記姿勢パラメータ推定装置２の主要部の構成を示したブロック図であり、画像特徴選択部２０は、認識対象５からマッチング用の対応点として採用され易い画像特徴を予め検出し、選択画像特徴としてDB２４に蓄積する。画像特徴検出部２１は、カメラ画像から画像特徴を検出する。画像特徴マッチング部２２は、カメラ画像から検出された画像特徴と前記選択画像特徴との間で対応点マッチングを行う。姿勢パラメータ算出部２３は、前記マッチング結果に基づいて姿勢パラメータを算出する。
【００４８】
画像特徴選択部２０において、学習画像生成部２０１は、認識対象５の正面写真や3Dモデル等を使用し、当該認識対象５を複数視点から観察した学習画像を投影処理によって自動的に（ユーザの操作を必要とせずに）サンプリングする。
【００４９】
一般に、認識対象５は様々な視点から撮影される可能性があり、画像特徴検出では、そういった入力画像に対して、安定的にマッチングが可能な画像特徴を検出することが求められる。画像特徴は撮影角度や距離が変化すると対応付けが困難になるため、予め様々な視点を想定した学習画像を用意して画像特徴を検出することが望ましい。
【００５０】
学習画像の用意は、学習画像生成部２０１の機能を利用せず、例えばユーザ、サービス提供者又はアプリケーション提供者等が、ターンテーブル等を利用して、認識対象５を様々な方向から直接撮影することで作成することも可能である。ただし、全視点をくまなく網羅することは困難であり、時間を要する。
【００５１】
また、最終的にデータベースに登録する際には画像特徴と対象物表面の三次元座標（オブジェクト座標）とを紐付けて登録するため、画像特徴の逆投影処理が行われる。当該逆投影処理には、学習画像内のオブジェクトの姿勢が必要である。投影処理による自動生成画像であれば生成時に使用した姿勢がそのまま利用できるが、撮影画像の場合は姿勢が不明のため、姿勢を算出可能なターンテーブルを利用するか、別途姿勢推定用のマーカを利用する必要がある。
【００５２】
本実施形態では、図３に示したように、認識対象５を模した3Dモデルの周囲にくまなく配置した仮想的な視点（以降仮想カメラ）から3Dモデルをレンダリングすることで各視点の学習画像が生成される。すなわち、仮想カメラの位置から3Dモデルの姿勢行列（外部パラメータ行列）を算出し、仮想カメラの内部パラメータ行列と、当該姿勢行列で3Dモデルをレンダリングする。なお、図３では仮想カメラと3Dモデルの距離は均一であるが、この仮想カメラを多層に配置し、スケールの異なる学習画像を生成しても良い。
【００５３】
姿勢行列は、一般に6自由度の4行4列の行列で表現され、3Dモデルとレンダリング時の仮想カメラとの相対的な位置関係の情報を持つ。また、姿勢行列は、三次元特殊ユークリッド群SE(3)に属し、共に三自由度の三次元回転行列と、三次元並進ベクトルで表すことができる。姿勢行列を用いる場合、3Dモデルのモデル座標 [X, Y, Z]^T と、レンダリング後の画面中のピクセル座標 [u, v]^T とは、以下の関係式(1)で対応付けられる（ピンホールカメラモデル）。
【００５４】
【数１】
0006304815.tif 000002
【００５５】
ここで、符号Aは仮想カメラの内部パラメータである。ARでは正確な重畳表示のため、実際に使用するカメラの内部パラメータを予めカメラキャリブレーションによって求め、仮想カメラの内部パラメータ、及び姿勢推定時に使用する内部パラメータを、キャリブレーションした値に一致させておくことが望ましい。
【００５６】
ただし、キャリブレーションを行わない場合（設定した値が実際の値とずれる場合）でも、これらを仮の値（例えば一般的なWebカメラの値）で一致させておけば、姿勢推定結果が真値からずれるものの、最終的には相殺され、重畳表示の位置に影響しない。そのため、本実施形態のような利用用途であれば、一般的なカメラの値で代用することも可能である。
【００５７】
符号R（r11〜r33）は、三次元空間内の回転を表すパラメータであり、各パラメータはオイラー角等の表現によって三パラメータで表現することが可能である。符号ｔ（t1〜t3）は、三次元空間内の平行移動を表すパラメータである。符号X，Y，Zは、3Dモデルのモデル座標系におけるX座標、Y座標及びZ座標である。符号u，vは、画面中のピクセル座標系におけるu座標及びv座標である。
【００５８】
なお、画像特徴検出装置の処理時間が十分に与えられている場合は、上記のように、仮想カメラを万遍なく、密に配置すれば良いが、短い処理時間で完了したい場合、仮想カメラの数を減らすことが有効である。
【００５９】
ここで、図４に示したように、認識対象５が平面的な構造を含む場合、平面に対して、見え方の変化の小さい正面（パッチ領域）に近い位置に視点を配置することが望ましい。つまり、見え方の変化は認識対象５の形状によるところが大きいため、認識対象５の形状に応じて仮想カメラの配置を調整することが望ましい。
【００６０】
例えば、立方体形状の場合、各面の正面に仮想カメラを配置し、6枚の正面画像を生成しても良い。ポリゴン数が多い3Dモデルの場合、より単純な（ポリゴン数の少ない）メッシュモデルで近似し、当該メッシュモデルの各ポリゴン面（メッシュ）の法線方向に仮想カメラを配置しても良い。
【００６１】
また、認識対象５の見え方の変化が小さい視点の付近では仮想カメラを疎に配置し、見え方の変化が大きい視点の付近では仮想カメラを密に配置することも望ましい。一般に、曲面上の画像特徴は見え方に対する変化が大きい。上述した近似モデルを用いる方法では、曲面部分のメッシュが細かくなるため、結果的に曲面が写る視点付近の仮想カメラの数が増え、都合が良い。
【００６２】
図５は、認識対象５から視点ごとに生成される学習画像の例を示した図であり、ここでは、複数種類の角度（横軸）および距離（縦軸）の組み合わせから変換した投影パラメータを用いて代表画像が生成されている。
【００６３】
図２へ戻り、画像特徴検出部２０２において、特徴点検出器２０２ａは、各学習画像から特徴点を検出する。特徴量抽出器２０２ｂは、各特徴点位置における画像の局所的な特徴を局所特徴量と呼ばれるベクトル形式で抽出する。
【００６４】
学習画像は複数枚入力されるため、画像特徴検出部２０２は、各学習画像を視点別に管理する。画像特徴検出部２０２はさらに、各画像特徴の特徴点位置から、認識対象５の表面の三次元座標（オブジェクト座標）へ逆投影を行って当該画像特徴と対応付け、各特徴点の局所特徴量および特徴点位置の逆投影値（オブジェクト座標）をまとめて、画像特徴として出力する。
【００６５】
なお、平面物体の場合、一般にはオブジェクト座標のZ座標が0となり、逆投影処理は投影に使用した画像変換の逆変換で実現可能である。三次元物体の場合、カメラの内部パラメータと投影時の姿勢行列から焦点と特徴点位置を通過する光線と、オブジェクトの3Dモデル表面が衝突する座標を計算することで計算可能であり、一般的にはRay-Triangle Intersectionアルゴリズムが利用される。
【００６６】
前記特徴点検出器２０２ａおよび特徴量抽出器２０２ｂとしては、Harris，Hessian，SIFT，ASIFT，SURF，FAST，BRIEF，ORB，BRISK，FREAK，D-BRIEF，BinBoost等のアルゴリズムを用いることができる。
【００６７】
一般に、これらのアルゴリズムには一長一短の側面があり、撮影の距離や角度・回転に頑健なASIFT，SIFT，SURF等のアルゴリズムは処理負荷が大きく、処理負荷の小さいORB，BRIEF等のアルゴリズムは、距離や角度・回転に対する頑健性に乏しい。処理負荷と頑健性とを両立できる手法として、特徴点を分類するための識別器を事前学習する、Random Fernsに代表されるアルゴリズムが存在するが、長時間の学習とサイズの大きいデータベース（識別器）を必要とするという課題がある。
【００６８】
対応関係管理部２０３は、後に図６を参照して詳述するマッチング表K1、視点リストK2および画像特徴リストK3を管理する。画像特徴選択部２０４は、後に詳述するように、前記対応関係（K1，K2，K3）に基づいて、マッチング用の画像特徴を、登録済みの画像特徴が少ない視点から順に登録総数が所定の目標数に達するまで繰り返し選択し、これらを選択画像特徴として選択画像特徴DB２４へ都度登録する。
【００６９】
画像特徴検出部２１は、前記画像特徴検出部２０２における手法と同様の手法で、カメラ画像から特徴点の検出および各特徴点からの局所特徴量の抽出を行い、各特徴点の局所特徴量および特徴点位置の逆投影値を画像特徴として出力する。
【００７０】
画像特徴検出部２１では、画像特徴検出部２０２と同じ画像特徴検出アルゴリズムを用いる必要があるが、分解能や閾値等の細かいパラメータまで一致させる必要は無い。むしろ、処理負荷の観点では画像毎に実行する必要がある特徴点検出部２１では実行速度優先のパラメータを設定し、事前に実行することが可能な画像特徴検出部２０２では精度優先のパラメータ設定とすることが望ましい。
【００７１】
画像特徴マッチング部２２は、画像特徴検出部２１で検出された画像特徴と、前記選択画像特徴DB２４に蓄積されている選択画像特徴との対応点マッチングを行って2D-3D対応点を取得する。画像特徴の対応付けにおいては、ユークリッド距離やハミング距離の比較が用いられ、最近傍同士が対応付けられる。2D-3D対応点の精度を高めるため、距離が予め設定した閾値以下の画像特徴のみを対応付ける手法や、対応点の全体の傾向から外れた対応点を除外する手法等が知られており、本実施形態でも適用可能である。
【００７２】
姿勢パラメータ算出部２３において、姿勢算出部２３１は、前記画像特徴マッチング部２２から2D-3D対応点を取得し、カメラ画像に写る認識対象５の姿勢を算出する。二次元座標と三次元座標の対応点、及びカメラの内部パラメータから、幾何学的に姿勢（カメラの外部パラメータ）を推定する問題は、一般にPnP（Perspective n-Point）問題として知られ、例えばDLT（Direct Linear Transformation）法、EPnP法などのアルゴリズムが存在する。本実施形態では特にアルゴリズムを限定しないが、処理負荷に優れ、低コストで計算が可能な点でEPnP法を利用できる。
【００７３】
2D-3D対応点に誤対応が含まれる場合、EPnP法単独では正確な姿勢を推定することができない。そのため、RANSACやPROSACに代表されるサンプリング手法と併用することが一般的である。これらの手法は、対応点のサブセットサンプリングと、サブセットに対する処理（本実施形態の場合はEPnP）の適用と、得られたパラメータ（本実施形態では、姿勢）の精度評価と、を反復処理する。
【００７４】
サブセットが正しい対応点のみから構成される場合に正確なパラメータが得られるため、正確なパラメータが得られたと判定された場合、当該パラメータと一致しない対応点を除外することで誤対応を取り除くことができる。本実施形態では、PROSACとEPnPを利用した場合について記載する。
【００７５】
姿勢推定部２３２は、EPnPとPROSACの適用後、得られた姿勢と、誤対応を除外した2D-3D対応点とから、Levenberg-Marquardt法等の反復手法によって三次元座標の再投影誤差を最小化する姿勢の推定を行い、最終的な推定結果とする。以上の姿勢算出処理は姿勢推定処理としては一般的なものであり、その処理内容は本発明の画像処理装置の内容を限定するものではない。最終的に、本発明の画像処理装置は、姿勢推定部が推定した姿勢を出力する。
【００７６】
図６は、前記マッチング表K1、視点リストK2および画像特徴リストK3の関係を説明するための図である。
【００７７】
マッチング表K1は、各視点の学習画像から検出、選別された画像特徴Fiと、当該画像特徴Fiを検出できる視点Ejとの対応関係を管理し、さらに画像特徴Fiごとに当該画像特徴Fiを検出できる視点数が、スコア（評価値）として対応付けられている。
【００７８】
本実施形態では、前記マッチング表K1が以下の手順で作成される。初めに、異なる視点（学習画像）で別々に検出された同一の特徴点に関する画像特徴を一つの画像特徴として扱うべく、全ての視点で検出された画像特徴を対象に、そのオブジェクト座標および局所特徴量が近似する画像特徴を識別して一つの画像特徴に集約し、共通の画像特徴識別子Fiが付与される。
【００７９】
次いで、視点の一つ（例えば、E1）に注目し、当該注目視点E1の学習画像から検出された全ての画像特徴（F11，F12…）と、注目視点以外の他の視点E2，E3，E4…の学習画像から検出された全ての画像特徴（F21，F22…F31，F32…F41，F42…）との間でマッチングを行い、局所特徴量の距離が所定の範囲内であって、かつオブジェクト座標の距離が最近傍の画像特徴同士がマッチング可能と判断される。
【００８０】
このようなマッチングは、注目視点で検出された全ての画像特徴に関して繰り返され、さらに注目視点を他の視点に切り替えることで全ての視点に関して繰り返される。ただし、既にマッチング可能と判定された画像特徴は既登録とされ、その後はマッチング対象から外される。これにより、同一の画像特徴の重複登録が防止される。
【００８１】
そして、マッチング可能と判断された画像特徴を検出できる視点同士が、当該マッチングできた画像特徴とマッチング表K1において対応付けられる。
【００８２】
図６の例では、６つの視点E1-E6が、画像特徴F1とマッチング可能な画像特徴を検出できる視点として登録されている。同様に、視点E4、E5、E7が、画像特徴F2とマッチング可能な画像特徴を検出できる視点として登録されている。
【００８３】
ここで、前記画像特徴F1としては、例えば視点E1，E2，E3，E4，E5，E6のそれぞれから検出された画像特徴F11，F21，F31，F41，F51，F61のいずれか、または平均値を採用できる。あるいは最頻出の画像特徴を採用しても良い。
【００８４】
同様に、前記画像特徴F1のオブジェクト座標としては、画像特徴F11，F21，F31，F41，F51，F61のいずれかのオブジェクト座標を採用しても良いし、各オブジェクト座標の平均値を採用しても良い。なお、マッチング表K1の作成方法は上記に限定されるものではなく、他の方法により作成しても良い。
【００８５】
例えば、より単純な方法として、各画像特徴について、当該画像特徴を検出可能な全ての視点と対応付けてマッチング表K1に登録しても良い。この場合、例えば視点E1の画像特徴F1は全ての視点の全画像特徴との間でオブジェクト座標の比較を行い、オブジェクト座標が所定の範囲内である画像特徴とマッチングされる。例えば、マッチングされた画像特徴がF21、F31、F41、F51、F61である場合、それらの画像特徴が検出された視点E2〜E6と対応付けられ、マッチング表K1では、各画像特徴F11〜F61を代表して、画像特徴F1が各視点E1〜E6と対応付けて登録される。
【００８６】
また、各視点においてマッチング可能な画像特徴は、当該視点から視認可能な三次元座標から検出された画像特徴に限定されるため、当該視点で視認可能な画像特徴を、マッチング可能な画像特徴として扱うことも可能である。ここで、画像特徴を検出したパッチ領域の法線が視点方向に対して垂直に近い場合にのみ、マッチング可能な画像特徴としても良い。
【００８７】
なお、マッチングできる画像特徴は一部なので、もともと検出されている画像特徴数が少ない視点では少数の画像特徴しかマッチングできない。したがって、予め閾値Nref1を設定し、検出されている画像特徴数がNref1以下の視点はマッチング対象から除外しても良い。これにより、マッチング表K1の作成に要する時間を短縮できる。
【００８８】
視点リストK2および画像特徴リストK3は、いずれもマッチング表K1に基づいて作成され、視点リストK2には、各学習画像から検出された画像特徴Fiごとに、当該画像特徴Fiとマッチング可能な画像特徴を検出できる視点Ejが登録されている。
【００８９】
画像特徴リストK3には、視点Ejごとに当該視点で検出された画像特徴とマッチング可能な画像特徴Fiが登録されている。なお、画像特徴リストK3において、画像特徴数が所定の閾値Nref2を下回る視点は削除しても良い。これにより画像特徴選択部２０４が画像特徴を選択する際の処置負荷を軽減できるようになる。
【００９０】
図７は、前記画像特徴選択部２０４によるマッチング用の画像特徴の選択、登録手順を示したフローチャートであり、図８，９，１０は、画像特徴が順次に選択、登録されるプロセスを時系列で模式的に示した図である。
【００９１】
本実施形態では、図８に示したように、全視点を投票候補とする投票箱K4が仮想的に用意され、図７のステップS1では、現在までの投票結果に基づいて、投票総数が最小の視点が選択される。最初は全視点の投票数がゼロなので、例えば視点識別子の昇順で最上位の視点E1が選択される。
【００９２】
ステップS2では、選択視点E1をキーとして画像特徴リストK3が参照され、当該視点E1と対応付けられた画像特徴の中から、未登録でスコアが最大の画像特徴が選択画像特徴とされる。本実施形態では、視点E1に２つの画像特徴F1，F4が対応付けられており、いずれも未登録で、それぞれのスコアは「6」，「5」なので、ここでは画像特徴F1が選択画像特徴とされてDB24に登録される。
【００９３】
ステップS3では、選択画像特徴F1キーとして視点リストK2が参照され、時刻t1において、当該選択画像特徴F1と対応付けられた６つの視点E1-E6に一票ずつ投票が行われる。ステップS4では、前記選択画像特徴F1の重複登録を防止すべく、重複画像特徴リストK3において選択画像特徴F1が既登録とされる。
【００９４】
ステップS5では、選択画像特徴の登録総数が所定の目標数Ntに達したか否かが判定される。ここでは未だ達していないと判定されるのでステップS1へ戻る。
【００９５】
次のステップS1では、改めて投票総数が最小の視点が選択されるが、図９に示したように、最小投票総数は視点E7，E8，E9のゼロなので、ここでは視点識別子の昇順で最上位の視点E7が選択される。ステップS2では、選択視点E7をキーとして画像特徴リストK3が参照され、当該視点E1と対応付けられた画像特徴の中から、未登録でスコアが最大の画像特徴が選択画像特徴とされる。本実施形態では、視点E7に３つの画像特徴F2，F5，F7が対応付けられており、いずれも未登録で、それぞれのスコアは「3」，「6」，「4」なので、ここでは画像特徴F5が選択画像特徴とされてDB２４に登録される。
【００９６】
ステップS3では、選択画像特徴F5キーとして視点リストK2が参照され、時刻t2において、当該選択画像特徴F5と対応付けられた６つの視点E3-E8に一票ずつ投票が行われる。ステップS4では、画像特徴リストK3において前記画像特徴F5を既登録とする更新処理が実行される。
【００９７】
ステップS5では、選択画像特徴の登録総数が所定の目標数Ntに達したか否かが判定される。ここでは未だ達していないと判定されるのでステップS1へ戻る。
【００９８】
次のステップS1では、改めて投票総数が最小の視点が選択されるが、ここでは、図１０に示したように、最小投票総数が唯一ゼロの視点E9が選択される。ステップS2では、選択視点E9をキーとして画像特徴リストK3が参照され、当該視点E9と対応付けられた画像特徴の中から、未登録でスコアが最大の画像特徴が選択画像特徴とされる。本実施形態では、視点E9に２つの画像特徴F6，F7が対応付けられており、いずれも未登録で、それぞれのスコアは「2」，「4」なので、ここでは画像特徴F7が選択画像特徴とされてDB２４に登録される。
【００９９】
ステップS3では、選択画像特徴F7キーとして視点リストK2が参照され、時刻t3において、当該選択画像特徴F7と対応付けられた４つの視点E6-E9に一票ずつ投票が行われる。ステップS4では、画像特徴リストK3において前記画像特徴F7を既登録とする更新処理が実行される。
【０１００】
ステップS5では、選択画像特徴の登録総数が所定の目標数Ntに達したか否かが判定される。ここでは未だ達していないと判定されるのでステップS1へ戻る。
【０１０１】
上記の各処理は、ステップS5において、選択画像特徴の登録総数が目標数Nfに達するまで繰り返されるので、最終的には、マッチング用の画像特徴が目標数Nfだけ得られることになる。
【０１０２】
なお、上記の実施形態では、ステップS２において、未登録でスコアが最大の画像特徴が一つだけ選択画像特徴とされるものとして説明したが、本発明はこれのみに限定されるものではなく、２つないしは３つ、すなわち少なくとも一つが選択されるようにしても良い。
【０１０３】
本実施形態によれば、マッチング用にデータベースに予め登録する画像特徴を、各視点から万遍なく選択できるので、撮影視点（角度）に依らず、安定的にマッチング可能な画像特徴群を登録することが可能となり、任意形状のオブジェクトの姿勢が安定的に推定可能となる。
【０１０４】
また、本実施形態によれば、登録済みの画像特徴が少ない視点から未登録の画像特徴を選択して登録する際に、より多くの視点でマッチング可能な画像特徴から順に選択されるので、より多くの視点でマッチング可能な画像特徴を優先的に登録できるようになる。
【０１０５】
さらに、本実施形態によれば、登録済みの画像特徴が少ない視点で検出できる未登録の画像特徴に注目する第１手順と、前記未登録の画像特徴を検出できる全視点に投票する第２の手順と、各視点の投票総数を当該視点に関する登録済みの画像特徴数として前記第１及び第２の手順が繰り返されるので、短時間で各視点から万遍なく画像特徴を選択できるようになる。
【０１０６】
なお、上記の実施形態では、ARシステムの姿勢パラメータ推定装置２が画像特徴選択部２０を備え、自ら選択画像特徴DB２４を予め構築するものとして説明したが、本発明はこれのみに限定されるものではなく、図１１に一例を示したように、前記画像特徴選択部２０と同等の機能２０ａを姿勢パラメータ推定装置２とは別個に設け、当該機能２０ａが構築したデータベースをDB２４に移植するようにしても良い。
【符号の説明】
【０１０７】
１…表示装置，２…姿勢パラメータ推定装置，３…付加情報データベース，４…撮像装置，５…認識対象，２０…画像特徴選択部，２１…画像特徴検出部，２２…マッチング部，２３…姿勢パラメータ算出部，２４…選択画像特徴DB，２０１…学習画像生成部，２０２…画像特徴検出部，２０２ａ…特徴点検出器，２０２ｂ…特徴量抽出器，２０３…対応関係管理部，２０４…画像特徴選択部，２３１…姿勢算出部，２３２…姿勢推定部
【図１】
0006304815.tif 000003
【図２】
0006304815.tif 000004
【図３】
0006304815.tif 000005
【図４】
0006304815.tif 000006
【図５】
0006304815.tif 000007
【図６】
0006304815.tif 000008
【図７】
0006304815.tif 000009
【図８】
0006304815.tif 000010
【図９】
0006304815.tif 000011
【図１０】
0006304815.tif 000012
【図１１】
0006304815.tif 000013