情報処理装置およびその制御方法

申请号 JP2016074599 申请日 2016-04-01 公开(公告)号 JP2017187861A 公开(公告)日 2017-10-12
申请人 キヤノン株式会社; 发明人 牧田 孝嗣; 山▲崎▼ 将由;
摘要 【課題】カメラ 位置 姿勢推定において不適切なカメラ画像が参照されることを防止し、カメラ位置姿勢推定の安定性を向上させる。 【解決手段】情報処理装置は、撮像装置により撮影された画像を取得し、取得された画像に関して、位置姿勢推定に影響を及ぼす要因の発生を検出し、検出された要因に基づいて当該取得された画像を登録するか否かを判断し、登録すると判断された画像群を用いて、撮像装置から取得された画像からその位置姿勢を推定するための画像データベースを構築する。 【選択図】 図1
权利要求

撮像装置により撮影された画像を取得する取得手段と、 前記取得手段により取得された画像に関して、位置姿勢推定に影響を及ぼす要因の発生を検出する検出手段と、 前記検出手段により検出された要因に基づいて、前記画像を登録するか否かを判断する判断手段と、 前記判断手段により登録すると判断された画像群を用いて、前記取得手段により取得された画像から前記撮像装置の位置姿勢を推定するための画像データベースを構築する構築手段と、を備えることを特徴とする情報処理装置。前記検出手段は、前記要因として、前記取得手段により取得された画像に存在する所定の動物体の領域を検出することを特徴とする、請求項1に記載の情報処理装置。前記検出手段は、前記所定の動物体として、人の手、人の足、ケーブル、人の少なくとも何れかを検出することを特徴とする請求項2に記載の情報処理装置。前記検出手段は、前記要因として、前記画像のぼけの量を検出することを特徴とする、請求項1乃至3のいずれか1項に記載の情報処理装置。前記検出手段は、前記取得手段により取得された画像に基づいて前記ぼけの量を検出することを特徴とする請求項4に記載の情報処理装置。前記ぼけの量は、モーションブラーまたはデフォーカスブラーの量であることを特徴とする請求項5に記載の情報処理装置。前記ぼけの量は、前記撮像装置に設けられた加速度センサまたは速度センサの信号に基づいて検出されるモーションブラーの量であることを特徴とする請求項4に記載の情報処理装置。前記検出手段は、前記取得手段により取得された画像からレンズへの液体の付着を推定し、その推定結果に基づいて前記要因を検出することを特徴とする請求項1乃至7のいずれか1項に記載の情報処理装置。前記検出手段は、前記取得手段により取得された画像における鏡面反射物体の検出結果に基づいて前記要因を検出することを特徴とする、請求項1乃至8のいずれか1項に記載の情報処理装置。前記判断手段は、前記画像データベースにおける初期化用の画像を登録するための判断条件と、前記初期化用の画像を登録した後に前記取得手段により逐次的に取得される画像を登録するための判断条件とを異ならせることを特徴とする請求項1乃至9のいずれか1項に記載の情報処理装置。前記判断手段は、さらに、前記取得手段により取得された画像に、形状が既知である既知形状物体の領域の大きさが所定値以上であることを、画像を登録するための判断条件の一つとすることを特徴とする請求項1乃至10のいずれか1項に記載の情報処理装置。前記既知形状物体は2次元の平面マーカーであることを特徴とする請求項11に記載の情報処理装置。前記構築手段は、 前記判断手段により登録すると判断された画像群を用いて実環境の3次元の構造を再構成し、 前記画像群の各画像を、再構成された前記3次元の構造に基づく3次元情報と関連付けて前記画像データベースに格納することを特徴とする請求項1乃至12のいずれか1項に記載の情報処理装置。前記画像データベースに登録されている画像群と前記取得手段により取得された画像に基づいて前記撮像装置の位置姿勢を推定する推定手段と、 前記取得された画像と前記推定手段により推定された位置姿勢に基づいて、MR画像を生成する生成手段と、をさらに備えることを特徴とする請求項1乃至13のいずれか1項に記載の情報処理装置。撮像装置により撮影されたカメラ画像を取得する取得手段と、 前記カメラ画像に関して、位置姿勢推定に悪影響を及ぼす領域を検出する検出手段と、 前記取得手段により取得されたカメラ画像群を用いて、カメラ画像から撮像装置の位置姿勢を推定するのに用いられる画像データベースを構築する構築手段と、を備え、 前記構築手段は、前記画像データベースに登録されているカメラ画像群の前記検出手段で検出された領域を除く部分を用いて実環境の3次元の構造を再構成し、前記カメラ画像群の各カメラ画像を、前記3次元の構造に基づく3次元情報に関連付けて格納することを特徴とする情報処理装置。前記検出手段は、前記取得手段により取得された画像に存在する所定の動物体の領域を検出することを特徴とする、請求項15に記載の情報処理装置。前記検出手段は、前記所定の動物体として、人の手、人の足、ケーブル、人の少なくとも何れかを検出することを特徴とする請求項16に記載の情報処理装置。情報処理装置の制御方法であって、 撮像装置により撮影された画像を取得する取得工程と、 前記取得工程で取得された画像に関して、位置姿勢推定に影響を及ぼす要因の発生を検出する検出工程と、 前記検出工程で検出された要因に基づいて、前記画像を登録するか否かを判断する判断工程と、 前記判断工程で登録すると判断された画像群を用いて、前記取得工程で取得された画像から前記撮像装置の位置姿勢を推定するための画像データベースを構築する構築工程と、を有することを特徴とする情報処理装置の制御方法。情報処理装置の制御方法であって、 撮像装置により撮影されたカメラ画像を取得する取得工程と、 前記カメラ画像に関して、位置姿勢推定に悪影響を及ぼす領域を検出する検出工程と、 前記取得工程で取得されたカメラ画像群を用いて、カメラ画像から撮像装置の位置姿勢を推定するのに用いられる画像データベースを構築する構築工程と、を有し、 前記構築工程では、前記画像データベースに登録されているカメラ画像群の前記検出工程で検出された領域を除く部分を用いて実環境の3次元の構造を再構成し、前記カメラ画像群の各カメラ画像を、前記3次元の構造に基づく3次元情報に関連付けて格納することを特徴とする情報処理装置の制御方法。コンピュータを、請求項1乃至17のいずれか1項に記載された情報処理装置の各手段として機能させるためのプログラム。

说明书全文

本発明は、撮像画像から撮像装置の位置姿勢を推定するための画像データベースの生成に関する。

近年、現実空間と仮想空間を違和感なく融合させて提示する複合現実感(Mixed Reality、以下、MRと記載する)技術の研究が盛んである。MR技術の中でも、現実空間に仮想空間を重ね合わせて提示する拡張現実感(Augmented Reality、以下ARと記載する)技術が注目を集めている。MR技術やAR技術において重要な課題の一つは、現実空間と仮想空間との間の位置合わせをいかに実時間で正確に行うかであり、この課題について多くの取り組みが行われてきた。MR、ARにおける位置合わせの問題は、ビデオシースルー方式においては、シーン中における(すなわちシーン中に規定される基準座標系における)撮像装置の位置および姿勢を求める問題となる。

ビデオシースルー方式における位置合わせを実現する方法の代表例として、シーン中に形状情報の既知な人工的指標を配置し、指標を撮像装置で撮影して認識し、基準座標系における撮像装置の位置および姿勢を求めるという手法がある。基準座標系における撮像装置の位置および姿勢は、撮像装置が撮影した画像内における指標の投影位置(画像座標)と、既知の情報である指標の基準座標系における3次元座標との対応関係とから求められる。

また、ビデオシースルー方式における位置合わせを実現する方法として、人工的な指標を用いるのではなく、シーン中に元来存在する特徴(以下、自然特徴)を利用する位置合わせの研究も盛んに行われている。非特許文献1、非特許文献2では、画像中でのエッジと観察対象の3次元モデルとの対応をもとに撮像装置の位置および姿勢を求める方法が開示されている。3次元モデルに対応するエッジ(対応点)の検出に誤検出が発生すると撮像装置の位置および姿勢の精度が低いものになり、MR、ARの位置合わせの精度が低下する。そこで、非特許文献1、非特許文献2では、ロバスト推定手法の一つであるM推定を用いて、重み付き誤差最小化を行うことにより誤検出の影響を排除している。

一方、非特許文献3、非特許文献4では、画像上でのエッジではなく、Harrisオペレータ,Moravecオペレータなどによって検出される点特徴を用いて撮像装置の位置および姿勢を求める方法が開示されている。点特徴を利用する場合でも、エッジを利用する場合と同様に、誤検出の問題が発生する。そこで非特許文献3、非特許文献4では、RANSAC(RANdom SAmple Consensus)アルゴリズムにより誤検出された点特徴を排除している。RANSACを用いた誤検出排除では、ランダムに選出された対応点を用いて撮像装置の位置および姿勢を推定し、その推定値に同意する対応点の数が最も多い場合の対応点の集合に含まれない対応点が誤検出として排除される。

T. Drummond and R. Cipolla: “Real-time visual tracking of complex structures”, IEEE Trans. on Pattern Analysis and Machine Intelligence, vol.24, no.7, pp.932-946, 2002.

A. I. Comport, E. Marchand, and F. Chaumette: “A real-time tracker for markerless augmented reality”, Proc. The Second Int'l Symp. on Mixed and Augmented Reality (ISMAR03), pp.36-45, 2003.

G. Simon, A. W. Fitzgibbon, and A. Zisserman: “Markerless tracking using planar structures in the scene”, Proc. Int'l Symp. on Augmented Reality 2000 (ISAR2000), pp.120-128, 2000.

I. Skrypnyk and D. G. Lowe: “Scene modelling, recognition and tracking with invariant features”, Proc. The Third Int'l Symp. on Mixed and Augmented Reality (ISMAR04), pp.110-119,2004.

加藤博一:“拡張現実感システム構築ツールARToolKitの開発”,電子情報通信学会技術研究報告,日本,社団法人電子情報通信学会,2002年2月14日,第101巻,第652号,p.79-86 (実施形態で参照される)

橋本正一,齊藤英雄:“PSFのパラメータ分布を推定するシフトバリアントなぼけ画像の復元法”電子情報通信学会論文誌 D Vol.J77-D2 No.4 pp.719-728,1994 (実施形態で参照される)

宮原孝行,玉津幸政,栗畑博幸,高橋友和,目加田慶人,井手一郎,村瀬 洋:“運転支援のための車載カメラ映像による状況別降雨認識”デンソーテクニカルレビュー Vol.12 No.1 pp.50-57,2007 (実施形態で参照される)

非特許文献1〜4に記載されたカメラ位置姿勢推定手法は、移動する物体がカメラ画像に写りこまない環境(以下、静止環境)を前提とした手法である。非特許文献1〜3では、フレーム間での対応点追跡によりカメラ位置姿勢推定を行うために、追跡している点が実環境内で移動した場合には、推定精度が低下してしまう。また、時刻変化に伴って位置姿勢が変化する物体(以下、動物体)によって追跡している点が隠蔽されることによって追跡可能な点数が減少したり、追跡の誤対応が増大したりすることで、推定精度が低下してしまう。

また、非特許文献4では、撮影した画像群全体から選択された一部分の画像群を画像データベースに登録しておき、現在の画像との相対位置姿勢の推定誤差が最も小さくなる画像を画像データベースから選択して利用することでカメラ位置姿勢の推定を行う。ここで、人や車などが通る、もしくは、が流れている等の環境でデータベースを構築する場合を考える。この場合、動物体が写り込んだ画像がデータベースに登録されてしまい、画像データベースに登録された画像と現在フレームの間で、環境に存在する物体の対応付けが正しく行えなくなる。そのため、画像に動物体が写り込んでしまう動的環境では、画像データベースを参照したカメラ位置姿勢推定は困難となる。

一方、従来、画像処理技術およびカメラに搭載された加速度センサ等の利用によって、画像に写り込んだ動物体の領域推定を行う技術が開発されている。しかしながら、従来は画像に写り込んだ動物体の領域をデータベースへのカメラ画像登録判断に利用することはなかった。また、動物体の位置および姿勢を計測する機能がある場合には、その計測機能の計測結果を利用して画像上における動物体の領域を推定することが可能である。しかしながら、従来は動物体の写る領域の情報をデータベースへのカメラ画像登録判断に利用することはなかった。

本発明は上述の課題に鑑みてなされたものであり、撮像装置の位置姿勢推定において不適切な画像が参照されることを防止し、撮像装置の位置姿勢推定の安定性を向上させることを目的とする。

上記目的を達成するための本願発明の一態様による情報処理装置は以下の構成を備える。すなわち、 撮像装置により撮影された画像を取得する取得手段と、 前記取得手段により取得された画像に関して、位置姿勢推定に影響を及ぼす要因の発生を検出する検出手段と、 前記検出手段により検出された要因に基づいて、前記画像を登録するか否かを判断する判断手段と、 前記判断手段により登録すると判断された画像群を用いて、前記取得手段により取得された画像から前記撮像装置の位置姿勢を推定するための画像データベースを構築する構築手段と、を備える。

本発明によれば、撮像装置の位置姿勢推定において不適切な画像が参照されることが防止され、撮像装置の位置姿勢推定の安定性が向上する。

第1実施形態による情報処理装置100の構成例を示すブロック図。

第1実施形態による登録判断を説明する図。

第1実施形態による位置姿勢計測方法の処理手順を示すフローチャート。

第2実施形態による位置姿勢計測方法の処理手順を示すフローチャート。

第2実施形態による登録判断を説明する図。

変形例による登録判断を説明する図。

変形例による登録判断を説明する図。

情報処理装置100のハードウェア構成例を示すブロック図。

以下、添付の図面を参照して本発明の好適な実施形態のいくつかを説明する。

<第1実施形態> 図1は、第1実施形態における情報処理装置100の構成例を示すブロック図である。情報処理装置100は、画像取得部101、検出部102、画像登録部103、画像データベース104、再構成部105、位置姿勢推定部106、MR画像生成部107を有する。観察者は撮像部180を保持しており、撮像部180により得られる画像(カメラ画像)には実環境が写っている。

第1実施形態の情報処理装置100は、撮像部180(カメラ)により撮影された画像(カメラ画像)を用いて、撮像部180の位置姿勢を推定するための画像データベース104を生成する。画像データベース104の生成では、まず、検出部102が画像取得部101により取得された画像(カメラ画像)に関して、位置姿勢推定に影響を及ぼす要因の発生を検出する。本実施形態の検出部102は、上記の要因として、取得された画像に存在する所定の動物体の領域(たとえば、人の手の領域)を検出する。画像登録部103は、検出部102による要因の検出結果に基づいて、入されたカメラ画像について画像データベース104に登録するか否かを判断する。これにより、位置姿勢の推定に不適切なカメラ画像の登録が回避され、位置姿勢の推定に適したカメラ画像による画像データベース104が生成される。また、MR画像の生成では、逐次的に入力されるカメラ画像から、位置姿勢推定部106が画像データベース104を参照して撮像部180の実環境に対する位置および姿勢を推定する。MR画像生成部107は、位置姿勢推定部106により推定された撮像部180の位置姿勢とカメラ画像とに基づいてMR画像を生成する。

なお、第1実施形態では、ステレオ画像処理により推定された輝度勾配の3次元分布の投影を利用した位置合わせ手法を用いるものとする。また、第1実施形態では、上述の所定の動物体として、人の手が検出される。すなわち、検出部102は、観察者が保持した撮像部180から得られるカメラ画像に動物体として写り込んだ(観察者の)手を検出する。なお、第1実施形態では、動物体として観察者の手を用いるが、これに限られるものではない。例えば、人の足、電子機器のケーブル、または周辺に存在する他の人、などが所定の動物体として検出されてもよい。あるいは、あらかじめ決められた物体を動物体として検出することに加えて、もしくはこれに代えて、動画として逐次的に入力されるカメラ画像から実際に動いている物体を検出して、これを動物体として用いてもよい。

画像取得部101は、たとえば、ビデオキャプチャボード、IEEE1394インタフェースボード、USBポートなどによって実現され、撮像部180からカメラ画像を取得する。画像取得部101において、第1画像取得部101aは、撮像部180から、画像データベース104のための初期化用カメラ画像を取得し、第2画像取得部101bはMRアプリケーションで用いるためのカメラ画像を取得する。なお、初期化用カメラ画像とは、その画像を撮影した撮像部180の位置姿勢が既知の撮影画像であり、撮像部180から取得されてもよいし、そのような撮影画像を保持している不図示の記憶装置から取得されてもよい。また、機能構成上の観点から、第1画像取得部101a、第2画像取得部101bの2つのブロックに分けて示したが、これら機能を実現するために個別のハードウェアが用いられる必要はない。

検出部102は、画像取得部101が取得したカメラ画像から動物体を検出し、その検出結果を画像登録部103に供給する。第1検出部102aは第1画像取得部101aが取得したカメラ画像について動物体の領域(以下、動物体領域)を検出し、第2検出部102bは第2画像取得部101bが取得したカメラ画像について動物体領域を検出する。なお、機能構成上の観点から、第1検出部102a、第2検出部102bの2つのブロックに分けて示したが、これら機能を実現するために個別のハードウェアが用いられる必要はない。

画像登録部103は、画像選択部121と登録判断部122を含む。画像選択部121は、第1画像取得部101aで取得されたカメラ画像から、第1検出部102aによる動物体領域の検出結果に基づいて初期化用のカメラ画像を選択する(選択判断)。選択された初期化用のカメラ画像は画像データベース104へ登録される。登録判断部122は、MRアプリケーションの実行中に画像取得部101から逐次に入力されるカメラ画像について、第2検出部102bによる動物体領域の検出結果に基づいて画像データベース104へ登録するか否かを判断する(登録判断)。登録すると判断されたカメラ画像は画像データベース104へ登録される。なお、機能構成上の観点から、画像選択部121と登録判断部122の2つのブロックに分けて示したが、これら機能を実現するために個別のハードウェアが用いられる必要はない。撮像部180は第1画像取得部101aおよび第2画像取得部101bに接続されている。表示部190はMR画像生成部107に接続されている。

以上の構成について、更に詳細に説明する。観察者は撮像部180を保持しており、撮像部180から得られるカメラ画像には実環境が写っており、場合によっては観察者の手が写り込んでいる。第1画像取得部101a、第2画像取得部101bが取得したカメラ画像は、それぞれ第1検出部102a、第2検出部102bに入力される。第1検出部102aと第2検出部102bは、入力されたカメラ画像から動物体領域を検出する。

第1検出部102a、第2検出部102bは、カメラ画像に写り込んだ動き得る特定の物体の領域を動物体領域として検出する。本実施形態では、特定の物体として「手」が検出される。観察者の手は実環境の物体より手前にあるものとする。なお、本実施形態では、手の領域は、不図示の記憶部に予め設定された手の色の定義に基づいて検出されるものとする。たとえば、観察者の手を予め撮影しておき、手の色を表す色領域を設定しておき、カメラ画像中の画素の閾値処理によって手の領域を推定することができる。もちろん、手の領域の取得方法はこれに限るものではなく、手首や指に装着された位置センサの情報を基に、楕円フィッティングによって推定するなど、公知の何れの手法が用いられ得る。

画像選択部121は、第1画像取得部101aにより取得された初期カメラ画像群から、第1検出部102aが検出した動物体領域に基づいて画像データベース104へ登録する初期化用カメラ画像を選択する(選択判断)。なお、本実施形態では、動物体領域とは(観察者の)手の写り込んだ領域である。選択される初期化用カメラ画像は1枚でもよいし、複数枚でもよい。本実施形態では1枚の初期化用カメラ画像が選択されるものとする(複数枚の初期化用カメラ画像が選択される例は、第2実施形態で説明する)。登録判断部122は、初期化用カメラ画像の登録後に、第2画像取得部101bが逐次的に取得したカメラ画像について、第2検出部102bが検出した動物体領域に基づいて、画像データベース104へ登録するか否かの判断(登録判断)を行う。

なお、本実施形態では、画像選択部121の選択判断および登録判断部122の登録判断の判断条件として、カメラ画像から検出された動物体領域の大きさが考慮される。また、カメラ画像における輝度勾配も選択判断および登録判断の判断条件に用いられる。したがって、本実施形態の第1検出部102a、第2検出部102bはカメラ画像から輝度勾配も検出する。

再構成部105は、画像データベース104に保持されたカメラ画像群を統合し、実環境の3次元の構造を推定、再構成することにより3次元の構造データを生成する。3次元の構造データとは、点の座標位置および点の色を持つ点群データである。ここで、点の座標位置とは、実環境中のある位置・姿勢を座標系の基準として定義される3次元の座標値である。3次元の構造の推定は、画像データベース104に保持されたカメラ画像を統合して処理し、単一の3次元モデルを構築する方法、例えば、SfM(Structure from Motion)法、などによって実現される。画像データベース104には、再構成部105によって生成された3次元情報(3次元の構造データ)が関連付けられたカメラ画像群が登録画像群として格納される。こうして、画像データベース104の登録画像群のそれぞれのカメラ画像には、撮像部180の位置姿勢情報(撮影位置姿勢ともいう)が関連付けられる。

位置姿勢推定部106は、第2画像取得部101bによって取得されたカメラ画像を画像データベース104に格納されている登録画像群と比較し、撮像部180の撮影位置姿勢を推定する。撮影位置姿勢の推定は、画像同士のマッチングにより最も類似度の高い画像の位置姿勢情報に基づいて行われる。

MR画像生成部107は、第2画像取得部101bで逐次的に得られるカメラ画像に対し、位置姿勢推定部106で得られた撮像部180の撮影位置姿勢の推定値に基づいて仮想物体データを描画することによりMR画像を生成する。生成されたMR画像は、表示部190に送信され、表示される。表示部190は、ヘッドマウントディスプレイ、ヘッドアップディスプレイ、モバイルディスプレイなどによって構成され、MR画像生成部107が生成したMR画像を観察者に提示する。

次に、第1実施形態におけるMR画像生成処理について説明する。図2は、画像登録部103が行う初期画像の選択やカメラ画像の登録を説明する図である。図3は、第1実施形態におけるMR画像生成処理の手順を示すフローチャートである。ステップS300〜S303は、主として画像選択部121による初期化動作である。ステップS304〜S309は、MRアプリケーションの動作中に実行されるカメラ画像の登録(画像データベース104の更新)およびMR画像の生成処理である。ステップS304〜S309の処理は、撮像部180から逐次的に入力されるカメラ画像(映像)について繰り返し実行される。以下、第1実施形態におけるMR画像生成の処理手順について、図1、図2、図3を用いて説明する。

ステップS300において、第1画像取得部101aが初期化用のカメラ画像群を取得する。次に、ステップS301において、第1検出部102aが、ステップS300で取得されたカメラ画像群の各カメラ画像について動物体領域と輝度勾配の検出を行う。第1実施形態における動物体は観察者の手であるので、第1検出部102aは初期化用のカメラ画像群の各画像から観察者の手の領域を動物体領域として検出する。ステップS302において、画像選択部121は、ステップS301で検出された動物体領域と輝度勾配に基づいて、ステップS300で取得された初期化用のカメラ画像群から画像データベース104に登録する単一の画像を初期化用カメラ画像として選択する。本実施形態では、画像選択部121は、画像中に(観察者の)手の領域がなく、さらに輝度勾配が一定数以上含まれる画像を1枚選択する。

図2(a)は、本実施形態において初期化時にデータベースに登録する単一画像を選択する様子の例である。カメラ画像200、カメラ画像201には手が写り込んでいる(動物体領域が存在する)と判断されたために単一画像として選択されない。カメラ画像502では、手の領域は検出されないものの、検出された輝度勾配の量が少ないために単一画像として選択されていない。カメラ画像503は、観察者の手の領域がなく、さらに輝度勾配が一定数以上含まれるために、単一画像として選ばれる。こうして単一画像の選択が終了すると、処理はステップS303に進む。ステップS303において、画像登録部103は、ステップS302で選択された単一画像を用いて画像データベース104を生成する。より具体的には、画像登録部103は、単一画像を画像データベースに登録し、登録する単一画像の撮影位置姿勢を基準の位置姿勢として登録する。

以上のようにしてステップS300〜S303の初期化処理を終えると、処理はステップS304へ進む。ステップS304〜S309では、撮像部180から順次に取得されるカメラ画像(本実施形態では動画の各フレーム)を用いて画像データベース104が更新され、取得された各カメラ画像に関して撮像部180の位置姿勢が取得され、MR画像が生成される。

まず、ステップS304において、第2画像取得部101bは撮像部180からカメラ画像を取得する。次に、ステップS305において、第2検出部102bは、ステップS304で取得されたカメラ画像から動物体領域(本実施形態では手の領域)と輝度勾配を検出する。そして、ステップS306において、登録判断部122は、ステップS304で取得されたカメラ画像を画像データベース104へ登録するか否かを判断する。画像を登録すると判断された場合には処理はステップS307に進み、画像を登録しないと判断された場合には処理はステップS308に進む。

ステップS306の登録判断では、ステップS305において手の領域が検出されておらず、輝度勾配が一定数以上含まれる場合に、カメラ画像を画像データベース104に登録すると判断する。もちろん、登録判断のための条件はこれに限られるものではない。たとえば、カメラ画像において推定される手の領域の大きさの画像全体に対する割合が一定値未満であり、輝度勾配が一定数以上含まれる画像を画像データベース104に登録するようにしてもよい。なお、手の領域を含んだカメラ画像を登録する場合には、カメラ画像の各画素が手の領域であるか否かを示す情報が付与される。または、各画素が手の領域である確率の情報がカメラ画像に付与されるようにしてもよい。

さらに、初期化時に登録された画像(ステップS302で選択された画像)との類似度が高い画像を登録してしまうと、データベースの画像枚数が膨大になってしまう。したがって、類似度が非常に高い画像(類似度が所定閾値を超える画像)については登録しないようにしてもよい。

図2(b)は、本実施形態における、カメラ画像を画像データベース104に登録するか否かの登録判断の一例を説明する図である。カメラ画像210は、検出された手領域が大きいために登録されない。カメラ画像211は、手領域が小さく、輝度勾配が一定数以上あるために登録される。カメラ画像212は、手領域は小さいが、輝度勾配が一定数未満であるために登録されない。カメラ画像213は、初期化時に登録されたカメラ画像203(図2(a))との類似度が閾値以上になるために登録されない。カメラ画像214は、手領域がなく、輝度勾配が一定数以上あるために登録される。このように、画像選択部121の選択判断のための判断条件と登録判断部122の登録判断のための判断条件は互いに異なっていており、初期化用カメラ画像として適した画像、画像データベースの更新に適した画像が選択、登録される。

ステップS307において、画像登録部103は、ステップS303で取得されたカメラ画像を画像データベース104に登録し、再構成部105を用いて画像データベース104を更新する。画像データベース104の更新では、まず、再構成部105が、初期化処理によって登録された画像(S303で登録された画像)の撮影位置姿勢を基準として、画像データベース104におけるその他の登録画像の撮影位置姿勢を推定する。次に、その他の登録画像について各画像の撮影位置姿勢の登録が行われる。その他の登録画像の撮影位置姿勢の推定方法では、例えば、データベース内の画像群でSfM法により画像の撮影位置姿勢の最適化計算を行い、その他の登録画像の撮影位置姿勢が推定される。

次に、ステップS308において、位置姿勢推定部106は、ステップS304で取得されたカメラ画像からカメラ位置姿勢を推定する。カメラ位置姿勢の推定方法は、例えば、次のとおりである。まず、位置姿勢推定部106は、画像データベース104の登録画像群から、現在フレームのカメラ画像と最も類似度が高い画像を1枚選択する。次に、位置姿勢推定部106は、現在フレームのカメラ画像と画像データベース104から選択された登録画像(現在フレームと最も類似度が高い登録画像)の2枚の画像間における画像特徴の対応付けを行い、両者の相対位置姿勢の変化量を推定する。そして、位置姿勢推定部106は、推定された相対位置姿勢の変化量と、選択された画像に関して登録されている撮影位置姿勢とに基づいて、撮像部180の位置姿勢(カメラ位置姿勢)を推定する。

ただし、現在フレームと選択された画像との間の画像特徴の対応付けにおいて、動物体の領域から抽出された画像特徴を対応づけると、推定誤差が大きくなる。そのため、画像特徴の対応付けは、動物体領域以外の領域を用いて行うようにする。本実施形態では、動物体は観察者の手であるので、手の領域以外の画像領域において抽出された画像特徴同士の対応付けによって、現在フレームと選択された画像との相対位置姿勢の変化量が推定される。なお、各画素について手の領域である確率の情報が付与されている場合には、類似度の計算に確率の情報を取り入れ、画像特徴の対応付けの評価を、確率を用いた重み付き計算によって行う。このように、データベースに登録された画像の各画素に動物体である確率を示す値を設定し、これを用いることで、位置合わせの安定性を向上させることができる。

ステップS309において、MR画像生成部107は、ステップS308で得られたカメラ位置姿勢の推定値に基づいて仮想物体をカメラ画像(現フレーム)に合成することによりMR画像を生成する。

以上のように、第1実施形態では、画像上で動物体が存在する領域を検出し、動物体領域が画像に占める割合に基づいて、画像の登録判断を行う。そのため、撮像部180によって得られるカメラ画像に動物体が存在しても、高精度な画像データベースを作成し、高精度かつ安定したカメラ位置姿勢推定を行うことができる。すなわち、第1実施形態によれば、画像処理結果に基づいた画像登録判断を行うことによって、高精度な画像データベースを作成することができ、カメラ位置姿勢の高精度かつ安定した推定を行うことができる。

なお、上記実施形態では、動物体領域と輝度勾配を用いたが、輝度勾配に代えてまたはこれに加えてカメラ画像に含まれている特徴の数が用いられてもよい。例えば、検出部102は、カメラ画像から特徴点の検出も行い、画像登録部103は特徴点がある閾値以上の個数検出されることを選択判断や登録判断の判断条件の一つとして用いる。なお、特徴点の検出には、ハリスオペレータ等の画像フィルタを利用することができるが、特徴点の検出方法はこれに限るものではない。たとえば、人為的に環境に設置した目印(例えば、カラーボールなど)を色情報に基づいて検出する手法など、公知の何れの手法であってもよい。また、画像データベース104に登録されているカメラ画像と判断対象のカメラ画像との間で特徴点の対応付けを行い、一定数以上の対応点の組が得られることを登録判断の条件としてもよい。

<第2実施形態> 第2実施形態では、初期化用物体として、形状が既知である物体(既知形状物体)を用いた画像データベースの初期化と、ステレオ画像処理により推定された輝度勾配の3次元分布の投影を利用した位置合わせ手法を用いた場合について説明する。第2実施形態では、第1実施形態と同様に、観察者が保持した撮像部180から得られるカメラ画像に観察者の手が写り込む場合に、カメラの実環境に対する位置および姿勢を求める位置姿勢計測方法について説明する。

本実施形態の情報処理装置100の構成は、第1実施形態(図1)と同様であるので、図1のブロック図を流用して説明する。以下、第2実施形態について、主として第1実施形態と異なる部分について説明する。

観察者は撮像部180を保持しており、第1画像取得部101aは撮像部180から初期化用のカメラ画像群を取得する。カメラ画像群には動物体としての観察者の手が写り込んでいる画像や、既知形状物体が写り込んでいる画像が含まれている。情報処理装置100において、第1検出部102aは、第1画像取得部101aが取得した初期化用のカメラ画像群の各カメラ画像から、動物体領域(手の領域)および既知形状物体の領域を検出する。手の領域の取得方法は第1実施形態と同様である。また、本実施形態において、既知形状物体とは2次元の平面マーカーであり、不図示の記憶部に予め設定された形状の定義に基づいて検出される。たとえば、検出部102は、既存のマーカー検出方法(非特許文献5の手法)を用いて、初期化用のカメラ画像群の各カメラ画像から既知形状物体の領域を推定することができる。

画像選択部121は、第1検出部102aの検出結果に基づいて画像データベース104へ登録する初期化用のカメラ画像を選択する。すなわち、画像選択部121は、複数のカメラ画像から、動物体領域(手の写り込んだ領域)および既知形状物体の領域の分布に基づいて、画像データベース104へ登録するカメラ画像を1枚もしくは複数枚選択する。なお、本実施形態では、観察者の手は実環境の物体、および既知形状物体より手前にあるものとする。

MRアプリケーションにおいて、第2検出部102bは、第2画像取得部101bが取得したカメラ画像からカメラ画像内の動物体領域と輝度勾配を検出する。登録判断部122は、第2検出部102bによる動物体領域と輝度勾配の検出結果に基づいて、カメラ画像を画像データベース104へ登録するか否かの判断(登録判断)を行う。以上のように、画像選択部121では、動物体領域(手の写り込んだ領域)および既知形状物体の領域の分布に基づいて、画像データベース104の初期画像として選択するか否かを判断する。たとえば、画像選択部121では、動物体領域の大きさが所定値以下であり、既知形状物体の領域が所定値以上であることを選択判断の判断条件に含める。他方、登録判断部122では、動物体領域を登録判断の判断条件に含めるが、既知形状物体の領域の大きさは判断条件に含めない。

次に、第2実施形態によるMR画像生成処理の手順について説明する。図4は、第2実施形態によるMR画像生成処理の手順を示すフローチャートである。ステップS400〜S403は、主として画像選択部121による初期化動作である。ステップS404〜S409は、MRアプリケーションの動作中に実行されるカメラ画像の登録(画像データベース104の更新)およびMR画像の生成処理である。ステップS404〜S409の処理は、撮像部180から逐次的に入力されるカメラ画像(映像)について繰り返し実行される。また、図5は、第2実施形態による画像選択部121の選択判断および登録判断部122の登録判断を説明する図である。

ステップS400において第1画像取得部101aが初期化用カメラ画像群を取得する。次に、ステップS401において、第1検出部102aは、カメラ画像上における既知形状物体の領域および動物体領域の検出を行う。本実施形態における動物体は観察者の手であるので、第1検出部102aは第1画像取得部101aにより取得された初期化用のカメラ画像群の各カメラ画像から観察者の手の領域を検出する。

ステップS402において、画像選択部121は、初期化用のカメラ画像群から画像データベース104に登録する初期化用のカメラ画像を選択する。ここでの選択判断の基準は、既知形状物体の領域および動物体の領域の検出結果に基づいて設定される。例えば、動物体領域が一定量以下で、かつ、既知形状物体領域と動物体領域の重複領域が一定値以下であることを選択判断の条件とする。なお、ステップS402では、1枚または複数枚のカメラ画像が初期化用のカメラ画像に選択される。

図5(a)、図5(b)、図5(c)は、第2実施形態における初期化用カメラ画像の選択判断を説明する図である。図5(a)に示されたカメラ画像500,501,502、503は、第1画像取得部101aで取得された初期化用カメラ画像群である。図5(b)は、図5(a)に示されたカメラ画像500、501、502、503から動物体の領域(手領域)および既知形状物体の領域を検出した結果である。図示の例では、カメラ画像501、502、503において手領域551および既知形状物体の領域552が検出されている。図5(c)は図5(a)に示されたカメラ画像500、501、502、503について選択判断を行った結果である。本例では、カメラ画像500は既知形状物体が検出されないために初期化用カメラ画像に選択されない。カメラ画像501は、既知形状物体と手領域との重複領域が一定値以上であるために初期化用カメラ画像に選択されない。カメラ画像502とカメラ画像503は初期化用カメラ画像として選択される。画像データベース104に登録する初期化用カメラ画像の選択が終了すると、処理はステップS403に進む。

ステップS403では、画像登録部103が、ステップS402で画像選択部121が選択した初期化用カメラ画像を用いて画像データベース104を生成する。具体的には、画像登録部103は、ステップS402で選択された初期化用カメラ画像を画像データベース104に登録し、登録した初期化用カメラ画像の撮影位置姿勢を、基準の位置姿勢として登録する。ここで、登録された初期化用カメラ画像が1枚の場合には、該画像の撮影位置姿勢を基準の位置姿勢として登録する。また、登録された初期化用カメラ画像が2枚以上の場合には、それらの画像から1枚の画像を選択して、基準の位置姿勢として登録する。複数の初期化用カメラ画像から1枚のカメラ画像を選択する方法としては、たとえば、既知形状物体が最も大きく写っている画像を選択する、などの方法が挙げられる。もちろん、輝度勾配など、ステップS402では用いられなかった条件が用いられてもよい。画像データベース104が生成されると、処理はステップS404に進む。

ステップS404において、第2画像取得部101bは撮像部180からカメラ画像を取得する。次に、ステップS405において、第2検出部102bは、第2画像取得部101bが取得したカメラ画像から動物体領域(本実施形態では手領域)を検出する。ステップS406において、登録判断部122は、ステップS404で取得したカメラ画像を画像データベース104へ登録するか否かの登録判断を行う。登録判断は、たとえば、第2検出部102bによる動物体領域と輝度勾配の検出結果に基づいてなされる。たとえば、その登録判断の判断条件として、動物体領域が一定量以下で、かつ、輝度勾配の個数が一定値以上であることが挙げられる。図5(d)は、第2実施形態における登録判断の例を示す図である。この例では、カメラ画像510は動物体領域が一定量より大きいため登録されない。カメラ画像511は動物体領域が一定量以下であり、輝度勾配の個数が一定値以上のため、登録される。カメラ画像512は、動物体領域は一定量以下であるが輝度勾配の個数が一定値未満のため登録されない。カメラ画像513は、動物体領域が一定量以下であり、輝度勾配の個数が一定値以上のため、登録される。本例の場合、登録判断の判断条件に既知形状物体の有無は含まれない。

以上述べたように、第2実施形態では、画像上における初期化用の既知形状物体、および動物体が存在する領域を検出し、それらの検出結果を基に画像登録判断を行うことによって、高精度な画像データベースを作成できる。さらにその結果、高精度かつ安定したカメラ位置姿勢推定を行うことができる。

以上のように、第1、第2実施形態によれば、カメラ画像上における動物体領域の割合を計算してカメラ画像登録判断を行うことで、動物体が大きく写り込んだカメラ画像のデータベース登録が防止され、カメラ位置姿勢推定の安定性が向上する。また、カメラ画像間の相対位置姿勢計算の精度を向上させることができるとともに、計算時間の短縮ができる。また、動物体の位置姿勢を計測する構成(手首や指に装着された位置センサ)がある場合に、その構成から得られる情報を利用することで、動物体が大きく写り込んだカメラ画像の画像データベース104への登録を防止できる。その結果、カメラ位置姿勢推定の安定性を向上させることができる。

<変形例1> 第1実施形態および第2実施形態では、画像登録部103における選択判断や登録判断の判断条件は動物体領域(動物体が写り込む領域)を考慮したものであった。しかしながら、画像データベース104の構築に悪影響を及ぼす要因という観点からは、判断条件はこれに限るものではなく、他にも有用な基準が存在する。

例えば、図6に示すように、画像のぼけ量の推定(ブラー量推定)結果に基づいて画像登録判断を行うようにしてもよい。この構成によれば、初期化時、およびMRアプリケーションの動作時に、カメラ画像にぼけが発生することがあるような場合においても、適切に画像データベースを構築することができ、カメラ位置姿勢推定を安定化・高精度化できる。この場合、選択判断および登録判断の条件の一つとして、たとえば、ブラー量推定の結果として得られるぼけ量の大きさが閾値以下であることを含めることができる。なお、ブラー量推定には、たとえば、非特許文献6に記載された手法など、周知の方法を用いることができる。また、ブラー量の推定は、たとえば検出部102において実施されるようにすればよい。

なお、カメラ画像の画像処理によって検出されるブラーの種類としては、カメラの動きによって発生するモーションブラーや、カメラのフォーカスずれによって発生するデフォーカスブラー、などがある。その他にも、カメラの物理的な運動の速度がブラー量と比例すると想定し、加速度センサや速度センサの信号に基づくブラー量推定を利用することもできる。

図6(a)は、画像選択部121において実施される初期化用カメラ画像の選択判断を説明する図である。また、図6(b)は、登録判断部122において実施されるカメラ画像の登録判断を説明する図である。図6(a)では、カメラ画像600、601、602は、推定されたブラー量が一定値以上または動物体領域が一定量以上のため、初期化用カメラ画像に選択されない。カメラ画像603は、推定されたブラー量が一定値未満であり、動物体領域も検出されていないため初期化用カメラ画像に選択され、画像データベース104に登録される。図6(b)は、動物体領域(手領域)が一定量以下あること、ブラー量が一定値未満であること、輝度勾配の個数が一定値以上であることを基準とした場合の登録判断の例である。これら全ての条件を満たすカメラ画像611のみが画像データベース104に登録され、カメラ画像610、612、613、614は登録されない。

また、降雨などが理由でレンズに液体が付着した場合にも、実環境が正しく写らないため、そのようなカメラ画像が画像データベース104に登録されると位置姿勢推定に悪影響が発生する。そこで、図7に示すように、レンズに付着した液体を考慮した選択判断や登録判断を行うことで、初期化時、およびアプリ動作に、レンズに液体が付着することがある場合においても、カメラ位置姿勢推定を安定化・高精度化できる。この場合、例えば、レンズの液体付着領域の分布を推定し、その推定結果である液体付着領域の大きさが閾値以下であることを、選択判断や登録判断の判断条件の一つとする。レンズの液体付着領域の分布の推定には、たとえば非特許文献7に記載された手法など、周知の技術を用いることができる。なお、レンズの液体付着領域の分布の推定は検出部102で実施される。

図7(a)は、画像選択部121において実施される選択判断の様子を、図7(b)は、登録判断部122において実施される登録判断の様子をそれぞれ示す。図7(a)では、カメラ画像700、701、702は推定された液体付着領域が一定値以上のため、初期化用カメラ画像として選択されず、画像データベース104には登録されない。他方、カメラ画像703は液体付着領域が一定値未満のため、画像データベース104に登録される。また、図7(b)では、カメラ画像710、712、713、714は推定された液体付着領域が一定値以上のため、画像データベース104に登録されない。カメラ画像711は液体付着領域が一定値未満のため、画像データベース104に登録される。

また、鏡面反射物体は、カメラの位置姿勢が異なると、同一の物体を撮影しても、その外観が一致しないという特性があるために、画像データベース104の構築に悪影響を及ぼす場合がある。そこで、カメラ画像内における鏡面反射物体の領域を考慮した選択判断や登録判断を行うことで、鏡やガラス面が存在する完了においても、カメラ位置姿勢推定を安定化・高精度化できる。この場合、例えば、鏡面反射物体の領域の大きさが閾値以下であることを選択判断および登録判断の判断条件の一つとして、カメラ画像の登録を行うようにする。鏡面反射物体の領域の検出については、例えば四角形のディスプレイの場合、予め決めた色のテープを、周辺を囲むように張り付けておき、カメラ画像から矩形を検出することによって実現される。カメラ画像から矩形を検出する方法としては、矩形検出法など周知の技術を用いることができる。

以上のように、変形例1によれば、画像ぼけが発生することがある環境においても、カメラ位置姿勢推定の安定性を向上させることができる。また、カメラのレンズに液体が付着することがある環境においても、カメラ位置姿勢推定の安定性を向上させることができる。さらに、鏡面反射物体がある環境においても、カメラ位置姿勢推定の安定性を向上させることができる。なお、選択判断や登録判断の基準として、上述したブラー量やレンズの液体付着領域などを適宜組み合わせてもよいことは言うまでもない。

<変形例2> 第1〜第2実施形態では、画像データベース104にカメラ画像を登録する際には、何らかの判断基準を設けることによって、各画像を登録するか否かの判断(選択判断、登録判断)を実施しているが、これに限るものではない。たとえば、全てのカメラ画像を画像データベース104に登録し、登録されたカメラ画像の各画素を位置姿勢推定処理に用いるか否かの判断を実施するようにしても良い。たとえば、第1実施形態において動物体領域を含むカメラ画像が画像データベース104に登録されている場合、データベース更新処理(図3のS307)およびカメラ位置姿勢推定処理(S308)の計算対象から、動物体領域と判断された画素を除外する。これにより、初期化処理の時間が短縮可能であるとともに、データベース更新作業が効率化できる。

以上のように、変形例2によれば、カメラ位置姿勢推定を実施する際の初期化処理が高速化できるとともに、データベースに登録する画像を取得するための時間の短縮ができる。

<第3実施形態> 第1〜第2実施形態の情報処理装置100(図1)を構成する各部は、その一部あるいは全ての機能がハードウェアで実現されてもよいしソフトウェアで実現されてもよい。たとえば、ハードウェアとして実装されているコンピュータに所定のソフトウェアを実行させることで、このコンピュータは上記実施形態で説明した情報処理装置100の各部を実現し、上述した動作を行うことになる。図8は情報処理装置100のハードウェア構成例を示すブロック図である。

CPU801は、RAM802やROM803に格納されているプログラムやデータを用いて、コンピュータ全体の制御を行うと共に,上記各実施形態で情報処理装置100が行うものとして説明した各処理を実行する。RAM802は、外部記憶装置807や記憶媒体ドライブ808からロードされたプログラムやデータを一時的に記憶するための領域を有する。更にRAM802は、I/F(インターフェース)809を介して外部装置から受信したデータを一時的に記憶するためのエリアを有する。外部装置とは、たとえば撮像部180である。

更に、RAM802は、CPU801が各処理を実行する際に用いるワークエリアも有する。即ち、RAM802は、各種エリアを適宜提供することができる。ROM803には、コンピュータの設定データやブートプログラムなどが格納されている。キーボード804、マウス805は、操作入力装置の一例であり、ユーザの操作に応じた各種指示をCPU801に対して入力する。表示装置806は、ディスプレイにより構成されており,CPU801による処理結果を画像や文字などで表示することができる。表示装置806は表示部190として機能してもよい。

外部記憶装置807は、ハードディスクドライブ装置に代表される大容量情報記憶装置である。外部記憶装置807には、OS(オペレーティングシステム)や、情報処理装置が行うものとして説明した上述の各処理をCPU801に実行させるためのプログラムやデータが格納されている。係るプログラムには、情報処理装置を構成するそれぞれに対応するプログラムが含まれている。また、係るデータには、上述の説明において、既知の情報として説明したものが含まれている。外部記憶装置807に保存されているプログラムやデータは、CPU801による制御に従って適宜RAM802にロードされる。CPU801はこのロードされたプログラムやデータを用いて処理を実行することで、情報処理装置が行うものとして上述した各処理を実行することになる。

記憶媒体ドライブ808は、CD−ROMやDVD−ROMなどの記憶媒体に記録されたプログラムやデータを読み出したり、係る記憶媒体にプログラムやデータを書き込んだりする。なお、外部記憶装置807に保存されているものとして説明したプログラムやデータの一部若しくは全部をこの記憶媒体に記録しておいても良い。記憶媒体ドライブ808が記憶媒体から読み出したプログラムやデータは、外部記憶装置807やRAM802に対して出力される。

I/F809は、撮像部180を接続するためのアナログビデオポートあるいはIEEE1394等のデジタル入出力ポート、また、合成画像を表示装置806に対して出力するためのDVIポートなどによって構成される。I/F809を介して受信したデータは、RAM802や外部記憶装置807に入力される。なお、図1に示した画像取得部101の機能の一部は、I/F809によって実現される。810は、上述の各部を繋ぐバスである。

<その他の実施形態> 本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。

100:情報処理装置、101:画像取得部、102:検出部、103:画像登録部、104:画像データベース、105:再構成部、106:位置姿勢推定部、107:MR画像生成部、180:撮像部、190:表示部

QQ群二维码
意见反馈