説明

位置検知システム、それを用いた移動体、位置検知方法およびそのためのプログラム

【課題】センサの計測範囲に特徴的な被写体が存在していない場合や、そのセンサが他のセンサの計測範囲外にあるときにも、その位置姿勢の算出を可能にする。
【解決手段】第1のセンサは、環境内の存在物の位置情報および色情報を第1の検知情報として得るものであり、第2のセンサは、存在物の色情報を第2の検知情報として得るものであり、情報処理装置は、第2のセンサの位置姿勢を仮に設定する位置姿勢仮設定部と、位置姿勢仮設定部により仮に設定された第2のセンサの位置姿勢から存在物を検知したときに得られる検知情報を、仮想検知情報として、第1の検知情報を用いて仮想的に作成する仮想検知情報作成部と、仮想検知情報作成部で作成された仮想検知情報と第2のセンサで得られた第2の検知情報を比較する比較部と、比較部の比較結果と仮に設定された第2のセンサの位置姿勢から、第2のセンサの位置姿勢推定値を出力する位置姿勢推定部を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、カメラ等のセンサが、その検知情報から自己の位置姿勢を同定する技術に関する。
【背景技術】
【0002】
ロボットや飛行体の自律移動制御、あるいは移動する物体や人の状況監視等では、それらの移動体の位置姿勢を逐次把握する必要がある。そのための手段として、それらの移動体にカメラ等のセンサを取り付け、そのセンサが周囲環境を検知して得られた検知情報から、センサの位置姿勢を推定する方法がある。
【0003】
例えば、非特許文献1には、カメラによって3点以上の3次元位置既知の点が撮影されたときに、撮影画像からそのカメラの3次元位置をあらわす3パラメータと、カメラの3次元空間内の姿勢をあらわす3パラメータの合計6パラメータを求める方法が示されている。
【0004】
また、複数のセンサを組み合わせることで位置推定を高性能に行うための関連技術として、特許文献1には、1段階目で第1の走査ヘッド(第1のセンサ)からの物体に照射されたビームの相対位置を求め、第2段階目で第2の走査ヘッド(第2のセンサ)から、同物体上のビームの照射位置と前記第1の走査ヘッドの位置を求めることで、同一の座標系で物体の形状を計測する方法が示されている。これにより第2のセンサの位置姿勢を推定することも可能となる。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特表平06−501774号公報
【非特許文献】
【0006】
【非特許文献1】R.M.Haralick and C.Lee,”Analysis and solutions of the three point perspective pose estimation problem,”IEEE Proc.CVPR,Computer Vision and Pattern Recognition,pp.592−598,1991.
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、上記非特許文献1の技術では、特徴的な色や形状を持つことで画像上で識別でき、さらにその環境内の3次元位置が既知の「特徴点」と呼ばれる被写体が、画像上に複数撮影されること、さらにこれらの特徴点の画像上の2次元位置が明示的に求められることが前提となる。よってこのような特徴的な被写体が存在しない場合や、曲面形状をした物体や物体表面に描かれた複雑な模様のように、画像上の2次元座標値を明示的に求めることができない被写体しか存在しない場合に対処できない。
【0008】
一方、上記特許文献1の技術では、あるセンサが他のセンサを計測できることを前提とする。よって、計測されるセンサが計測するセンサの計測範囲外に移動したときには対処できない。
【0009】
本発明は、これらの問題点を解決し、特徴点のような特徴的な被写体や、画像上の2次元座標値を求めることができる被写体が計測されない場合でも位置姿勢の推定を可能とし、さらに、第2のセンサが、第1のセンサの計測範囲外に移動しても位置姿勢の推定を可能にすることを目的とする。
【課題を解決するための手段】
【0010】
本願において開示される発明のうち代表的なものを挙げれば、次の通りである。
【0011】
本発明の位置検知システムは、第1のセンサと、第2のセンサと、情報処理装置からなる位置検知システムにおいて、前記第1のセンサは、あらかじめ環境内の存在物の位置情報および色情報を第1の検知情報として得るものであり、前記第2のセンサは、存在物の色情報を第2の検知情報として得るものであり、前記情報処理装置は、第2のセンサの位置姿勢を仮に設定する位置姿勢仮設定部と、前記位置姿勢仮設定部により仮に設定された第2のセンサの位置姿勢から存在物を検知したときに得られる検知情報を、仮想検知情報として、前記第1の検知情報を用いて仮想的に作成する仮想検知情報作成部と、前記仮想検知情報作成部で作成された前記仮想検知情報と前記第2のセンサで得られた前記第2の検知情報を比較する比較部と、前記比較部の比較結果と前記仮に設定された第2のセンサの位置姿勢から、前記第2のセンサの位置姿勢推定値を出力する位置姿勢推定部を備えることを特徴とするものである。
【0012】
また、本発明の移動体は、前記の位置検知システムを組み込んだ移動体であって、前記第2のセンサは移動体に取り付けられ、前記移動体は、前記位置検知システムから出力された第2のセンサの位置姿勢推定値を用いて移動制御する手段を備えることを特徴とするものである。
【0013】
また、本発明の位置検知方法は、第1のセンサを用いて、あらかじめ環境内の存在物の位置情報および色情報を第1の検知情報として得るステップと、第2のセンサを用いて、存在物の色情報を第2の検知情報として得るステップと、第2のセンサの位置姿勢を仮に設定するステップと、前記仮に設定された第2のセンサの位置姿勢から存在物を検知したときに得られる検知情報を、仮想検知情報として、前記第1の検知情報を用いて仮想的に作成するステップと、前記仮想検知情報と前記第2の検知情報を比較するステップと、前記比較結果と前記仮に設定された第2のセンサの位置姿勢から、前記第2のセンサの位置姿勢推定値を出力するステップを備えることを特徴とするものである。
【0014】
また、本発明のプログラムは、コンピュータに、第1のセンサを用いて得られた、環境内の存在物の位置情報および色情報から成る第1の検知情報、および、第2のセンサを用いて得られた、存在物の色情報から成る第2の検知情報から、第2のセンサの位置姿勢を求めさせるプログラムであって、第2のセンサの位置姿勢を仮に設定するステップと、前記仮に設定された第2のセンサの位置姿勢から存在物を検知したときに得られる検知情報を、仮想検知情報として、前記第1の検知情報を用いて仮想的に作成するステップと、前記仮想検知情報と前記第2の検知情報を比較するステップと、前記比較結果と前記仮に設定された第2のセンサの位置姿勢から、前記第2のセンサの位置姿勢推定値を出力するステップとを実行させることを特徴とするものである。
【発明の効果】
【0015】
本発明は、第1のセンサおよび第2のセンサを組み合わせて、第2のセンサの位置姿勢値を求める手段を提供するが、その際に、特徴点のような特徴的な被写体や、画像上の2次元座標値を求めることができる被写体が計測されない場合でも位置姿勢の推定が可能となる。また、第2のセンサが、第1のセンサの計測範囲外に移動しても位置姿勢の推定が可能となる。さらに、3次元CG(コンピュータグラフィックス)モデルを使う方法に比べて、そのモデルをリアルかつ詳細に作る準備が省略可能となる。これらにより、ロボット等の自律移動や、物体や人の動き計測などの応用システムにおいて位置姿勢の推定を行う際に、簡単な準備作業によって、環境や移動範囲に関する制約を大きく削減することができるので、その実用性を向上させることができる。
【図面の簡単な説明】
【0016】
【図1】本発明の一実施形態に係る位置検知システムの、全体構成を示すブロック構成図である。
【図2】本発明の応用システムの一例となる、自律飛行船システムを説明する図である。
【図3】画像・距離センサの機能を説明する図である。
【図4】画像・距離センサの拡張機能を説明する図である。
【図5】画像・距離センサの計測方法の1例を説明する図である。
【図6】第1の検知情報の一例を説明する図である。
【図7】第2のセンサとしてカメラを用いて撮影する一例を説明する図である。
【図8】図7のカメラによる撮影によって得られる撮影画像を説明する図である。
【図9】カメラを仮の位置姿勢に置いてサンプル点を撮影する一例を説明する図である。
【図10】図9の撮影によって得られる仮想的な撮影画像を説明する図である。
【図11】カメラを図9とは異なる仮の位置姿勢に置いてサンプル点を撮影する一例を説明する図である。
【図12】図11の撮影によって得られる仮想的な撮影画像を説明する図である。
【図13】カメラによる実際の撮影画像と、仮想的な撮影画像との比較を説明する図である。
【図14】本発明の一実施形態に係わる装置構成の一例を説明する図である。
【図15】本発明の一実施形態に係わる処理の流れを説明する図である。
【発明を実施するための形態】
【0017】
以下、本発明の実施の形態を、図面を参照しつつ説明する。
【0018】
図1は本発明の一実施形態に係る、位置検知システムの全体構成を示すブロック構成図である。
【0019】
本システムの全体構成の説明に先立って、その使われ方の1例として、「自律飛行船のための位置姿勢推定」をあげ、本システムの位置づけを述べる。
【0020】
自律飛行船とは、図2に示すように、例えば屋内環境の中空を、飛行船200が人による操縦なしに、環境内の自分の位置姿勢を逐次把握することで自律的に移動するものである。ここで位置姿勢を把握するために用いる手段が、本実施の形態による位置検知システムである。具体的には、例えばカメラを第2のセンサ140として前記の飛行船に取り付け、これが地上にある環境内の存在物100を撮影することで自分の位置姿勢を推定し、これから飛行船200の位置姿勢を求め自律移動の制御を行う。一方、本発明では、あらかじめ第1のセンサ130を用いて、上記環境内の存在物を計測しておき、このときに計測した第1のセンサによる計測情報を、第2のセンサ140で位置姿勢を推定するときに利用する。
【0021】
以上述べた使い方においては、あらかじめ第1のセンサを用いて環境内を計測しておく「準備フェーズ」と、機体に取り付けられた第2のセンサと準備フェーズで準備された情報を用いて自己の位置姿勢の推定を行いながら自律移動制御を行う「実行フェーズ」の2つのフェーズが存在することになる。このように本実施の形態は、2つのフェーズを組み合わせて利用することを想定した構成になっている。
【0022】
次に図1を用いて、本実施の形態に係る位置検知システムの全体構成を説明する。
【0023】
まず、環境内には、静止する存在物100が存在していることを仮定する。本実施の形態では、この存在物を計測することができる第1のセンサ130と第2のセンサ140を有し、第1のセンサ130では上に述べた「準備フェーズ」における計測を行い、第2のセンサ140では「実行フェーズ」における計測を行う。最終的に位置姿勢値を求めるのは、この中で第2のセンサ140である。また第2のセンサは移動して、様々な位置姿勢値をとることを想定する。またセンサで得られた情報の処理は、情報処理装置175の内部で実施される。
【0024】
「準備フェーズ」では、第1のセンサ130が存在物の計測を行い、第1の検知情報155として記録しておく。
【0025】
一方「実行フェーズ」では、任意の位置姿勢で計測した第2のセンサ140による第2の検知情報165から、その第2のセンサの位置姿勢推定値を求める。このためにまず、後述する方法等を用いて第2のセンサの位置姿勢仮設定部158が、第2のセンサの仮の位置姿勢値を求める。次に、この第2のセンサの仮の位置姿勢値と、前記の第1の検知情報155を用いて、第2のセンサの仮想検知情報作成部160が、第2のセンサの仮想検知情報168を出力する。ここで第2のセンサの仮想検知情報168とは、第2のセンサ140が前記の仮の位置姿勢にあるときに、前記の存在物を計測したときに得られると予想されるセンサ情報を予測して作成するもので、その作成方法は後述する。次に比較部170が、作成された第2のセンサの仮想検知情報168と、第2のセンサで実際に計測して得られた前記第2の検知情報165を比較し、その一致度を求める。以上述べた、(1)第2のセンサの仮の位置姿勢を設定し、(2)第2のセンサの仮想検知情報を作成し、(3)これと第2のセンサの実際の検知情報を比較する、といった(1)(2)(3)の一連の処理を複数回行い、これらの中で例えば最も一致度が高いものを選択するなどにより、位置姿勢推定部163が第2のセンサの位置姿勢推定値を決定し出力する。
【0026】
以上が、本発明の一実施形態に係る位置検知システムの全体構成である。
【0027】
次に、本実施の形態における各構成要素の処理について説明する。
【0028】
本実施の形態では、第1のセンサに画像・距離センサ、第2のセンサにカメラを使用するものとする。
【0029】
ここで画像・距離センサとは、図3に示すように、センサ130から存在物100上の計測点210までの距離r1、方向v1、ならびにその計測点の色を例えば(R1,G1,B1)の3原色情報として計測できるものである。現在そのような計測ができるセンサは、レーザレンジファインダとカメラを組み合わせたものを一例としてすでに開発されており、一般用途にて利用可能となっている。上記情報が計測でき、さらにセンサ130の空間内の位置と姿勢がC1としてわかっていれば、上記r1,v1を用いた簡単な座標計算により、上記計測点の空間内の位置が(X1,Y1,Z1)の3次元座標値として世界座標系として求めることができる。ここで世界座標系をどのように定義するかが問題となるが、本実施の形態では、まずは第1のセンサ130を固定とし、世界座標系をそのセンサの座標系と等しいものとして定義する。すなわち最初に固定した第1のセンサ130の位置が原点となり、センサの前後・左右・上下方向が各座標軸の方向を示すことになる。なお図4に示すように、一般の画像・距離センサ130では、センサの姿勢を変えることなく、複数の方向に向けた計測点を計測することが可能である。よって、上記のように座標系を定義することで、図4における第1のセンサによる複数の計測点210 Pi (i=1,2,・・・,N)に関し、その3次元座標値と色情報を(Xi,Yi,Zi,Ri,Gi,Bi)(i=1,2,・・・,N)の形式で得ることができることになる。なおここで、Nは計測点210の個数である。以上が、本実施の形態で第1のセンサとして利用する画像・距離センサの説明である。
【0030】
本実施の形態では、まず「準備フェーズ」において、第1のセンサとなる画像・距離センサ130を用いて存在物100上の任意の計測点210を計測し、その位置と色情報を得る。ここで計測した計測点210を、以下の説明ではサンプル点と呼ぶことにする。上記説明では、第1のセンサ130は図4に示す位置姿勢C1に固定としたが、図5に示すように、第1のセンサ130をC2の位置姿勢に移動することで、図4におけるC1の1箇所だけからは計測不可能なサンプル点211の計測を行うこともできる。なおこの場合は、第1のセンサ130の移動後の位置姿勢値C2を、例えば背景技術の項で述べた方法などにより計測することで求めておく。ここで求められた移動後の位置姿勢パラメータC2を用いて座標変換計算を行うことで、移動後のセンサで得られたサンプル点211の3次元位置を、移動前の位置姿勢を基準とした座標系、すなわち世界座標系として共通にあらわすことが可能となる。以上をまとめると、第1のセンサ130を固定して用いても、あるいは移動して用いても、どちらも図6に示すようにすべてのサンプル点210,211に関する情報を、同一の世界座標系であらわした位置情報と色情報の組み合わせとなるデータ (Xi,Yi,Zi,Ri,Gi,Bi)(i=1, 2,・・・,N)の集合として得ることになる。なおここで、iはサンプル番号であり、Nはサンプル数である。上述べたように、第1のセンサにより環境内の存在物の計測を行い、複数のサンプル点の位置情報と色情報の組み合わせたデータを得る処理が「準備フェーズ」での処理となる。
【0031】
一方「実行フェーズ」では、図1あるいは図2に示された、第2のセンサとなるカメラ140によって、任意の位置姿勢から得られた撮影画像から、そのカメラの位置姿勢を求める。ここで用いるカメラは、焦点距離fの透視投影モデルに従い、存在物の色情報が画像として得られるものを想定する。一般のカメラは、焦点距離が未知で、さらにレンズ歪みなどの影響で必ずしも透視投影のモデルに従うとは限らないが、一般にカメラの撮影画像は事前にキャリブレーションなどを行うことで、焦点距離既知の理想的な透視投影画像に補正可能である。よってこのような想定は説明上実際性を失わない。
【0032】
まず第2のセンサとなるカメラ140によって撮影画像が1枚得られたときに、このカメラの位置姿勢値を仮に設定する。この設定を行うのは図1における第2のセンサの位置姿勢仮設定部158であり、その設定方法は後述する。この位置姿勢値と、前記のサンプル点データから、第2のセンサとなるカメラ140で得られるであろうこれらサンプル点の撮影画像を仮想的に作成する。この処理を行うのは図1における第2のセンサの仮想検知情報作成部160であり、その作成方法は後述する。次にこの仮想的に作成した仮想画像168と、実際に第2のセンサで得られた撮影画像165を比較する。この処理を行うのは、図1における比較部170である。ここでもし仮に設定したセンサの位置姿勢と、実際のセンサの位置姿勢が等しければ、サンプル点に関する画像は、両者画像上で等しい位置に写り、等しい色で写るはずである。一方、ここでもし仮に設定したセンサの位置姿勢と、実際のセンサの位置姿勢が異なれば、サンプル点に関する画像はお互い違いが生じる。これを図で説明するのが、図7、図8、図9、図10、図11である。
【0033】
いま図7に示すとおり、存在物100をカメラ等の第2のセンサ140で、図に示す位置姿勢D1から撮影したことを考える。この撮影により、図8に示す撮影画像166が得られる。一方図9と図10に示すとおり、準備フェーズにて第1のセンサを用いて存在物を計測して取得したサンプル点の位置・色情報210,211から、もし仮にカメラ140が図の位置姿勢D1にあったときに得られるサンプル点の仮想的な撮影画像168を、図10に示すものとして計算によって求める。また他方、図11と図12に示すとおり、同様にもし仮にカメラ140が図の位置姿勢D2にあったときに得られるサンプル点の仮想的な撮影画像169を、図12に示すものとして計算によって求める。次に図13に示すように、図8で示した撮影画像166と図10に示したD1での仮想画像168の比較と、図8で示した撮影画像166と図12に示したD2での仮想画像169の比較の2つの比較を行う。図13からわかるように、実際のカメラの位置姿勢D1と、仮想画像を作成する際に設定した位置姿勢D1が等しい図13の左側の比較では、サンプル点2100の画像の色が実際の画像の色と一致する。一方、実際のカメラの位置姿勢D1と、仮想画像を作成する際に設定した位置姿勢D2が異なる図13の右側の比較では、サンプル点2110の画像の色が実際の画像の色と一致しない。以上述べたように、このような違いが発生するか、しないかを評価することで、仮に設定したセンサの位置姿勢値が、実際の位置姿勢に等しいかどうかを判断することができる。すなわち、考えうる様々な位置姿勢値を仮に設定し、そこからの仮想的な撮影画像を作成し、比較評価を行うことで、実際の位置姿勢値を見つけることができる。これが本発明における位置姿勢推定の原理である。
【0034】
なおここで、用いるサンプル点数が少ないなどで、それぞれのサンプル点の色の違いがない場合は、仮に設定したセンサの位置姿勢値が実際の位置姿勢と異なっていても、作成した仮想撮影画像のサンプル点の色が、実際の撮影画像の同じ位置の色と一致することも偶然的に発生する可能性がある。この問題に関しては、用いるサンプル点を数百から数千程度に増やすことで、そのような偶然的な事象がすべてのサンプル点で発生する確率は限りなく0に近づき解決する。さらに後述するとおり、本発明が想定するその利用方法では、第2のセンサの位置姿勢がある程度狭い範囲のみに限定されるという条件を利用することができるので、間違った仮の位置姿勢値を用いたときに画像の比較結果が一致することは、実際上ほぼありえないとみなすことができる。
【0035】
次に、上記実施の形態における各要素の処理の詳細を補足的に述べる。
【0036】
まず、図4等で示したように第1のセンサ130によって環境内存在物100を計測する際、存在物のどの部分をサンプル点210として計測するか、その選択方法を説明する。これにはいくつかの方法が考えられが、その代表的な方法は、あらかじめ設定された角度ごとにスキャンする方法である。センサの周囲全体を対象に任意に向かう方向は、例えば水平方向φ、垂直方法ψの2つの角度パラメータであらわすことができるが、φについては1.0度ごとに0から360.0度、ψについては1.0度ごとに−90.0から90.0度の範囲をスキャンすれば、センサ周囲全体を1.0度ごとの解像度でスキャンできることになる。この場合スキャン方向数の合計は360×360 = 129,600 個の方向となる。すなわち、センサの全周囲方向に対し最大で129,000個のサンプル点が計測されることになる。ただし実際には、すべての方向に向かって、センサの測定可能距離以下の範囲に存在物が存在するとは限らないので、計測されるサンプル数はそれ以下となることが一般的と考えられるが、その場合も以下の処理や作用は変わらない。なお以上述べた方法以外にも、存在物がある領域を細かくスキャンする方法、第2のセンサが撮影する可能性の高い場所を重点的に細かくスキャンする方法などをはじめ、運用条件等を考慮し適切な方法をとることができる。
【0037】
また、第1のセンサによって計測できる色情報の表現方法としては、RGBの3原色であらわす方法以外に、色相・明度・色彩の3パラメータであらわす方法、明るさのみのグレースケールであらわす方法などいくつかの方法が利用できる。ただし以下の説明ではRGBの3原色を用いる方法で説明する。これによるとサンプル点データは、Pi=(Xi,Yi,Zi,Ri,Gi,Bi)(i=1,2,・・・,N) の形式で準備されることになる。なおここで、i はサンプル点番号、(Xi,Yi,Zi) はその番号のサンプル点の3次元座標値を世界座標系であらわしたもの、(Ri,Gi,Bi) はその点の色情報である。
【0038】
次に全体処理の中で、第2のセンサの位置姿勢仮設定部が、仮の位置姿勢値を設定する方法について詳しく説明する。なお以降の説明では、第2のセンサの仮の位置姿勢設定値をGk=(Xk,Yk,Zk,Rk)(k=1,2,・・・,K)とあらわすこととする。ここで、kは仮に設定した複数の位置姿勢値を識別する番号である。また、(Xk,Yk,Zk)はk番目の仮設定値における位置を3次元座標値として世界座標系であらわしたもの、Rkはk番目の仮設定値における姿勢を3×3の3次元回転行列として世界座標系であらわしたものである。この仮の位置姿勢値を設定する方法としていくつかの方法が考えられるが、その代表的なものは、可能性のあるすべての位置姿勢値を、適当な量子化幅をもって網羅的に列挙する方法である。ただしこの方法によると、列挙する位置姿勢値の数が極めて膨大になる問題が発生する。すなわち、位置姿勢パラメータは、位置(Xk,Yk,Zk)の3パラメータに3つの自由度をもつ姿勢 Rk パラメータが加わり、合計で6つの自由度がある。ここである程度の量子化幅をもって、第2のセンサが存在しうる空間全域を羅列しようとすると、例えば1つの自由度について100の候補を考えるとすべての組み合わせ数は100の6乗となり、現実的な計算処理量をはるかに超えたものとなってしまう。そこで実際の応用においては、応用システムのもつ様々な条件を利用することで、その候補の数を限定する。例えば自律飛行船の位置姿勢推定においては、例えば0.1秒といった単位時間ごとに連続して逐次位置姿勢推定を行なうことが一つの制御方法として想定されるが、その際に0.1秒の時間間隔で変化しうる自律飛行船の位置姿勢はほんのわずかと考えることができる。この条件より、ある時刻tの位置姿勢を推定するにあたって、その位置姿勢は、直前の時刻t−1における位置姿勢から、高々前後左右数cm程度、姿勢もすべての方向に対し高々プラスマイナス1度程度の範囲にあると限定することができる。これによって仮に設定する位置姿勢値を、位置に関し1cm程度、角度に関し0.5度程度の分解能(量子化幅)で設定しても、そのすべての組み合わせで得られる可能性のある位置姿勢値は高々数百から数千、多くても数万程度となり、現在の計算機の能力から十分に処理可能な数になる。
【0039】
次に全体の処理の中で、仮想検知情報を作成する方法について詳しく述べる。第2のセンサの仮想検知情報作成部は、上で言及したサンプル点データ群 Pi(i=1, 2,・・・,N)と、k番目の仮の位置姿勢設定値Dkから、カメラの透視投影モデルの式に従って、それぞれのサンプル点の画像上の位置 pi=(xi,yi,f)を算出する。ここで(xi,yi)はサンプル点の画像上の位置を画像の中心を原点とした画像座標系であらわしたもの、fは焦点距離をカメラ座標系の単位長さであらわしたものである。
【0040】
【数1】

【0041】
この式にしたがって求められる各サンプル点の画像上の位置pi(i=1, 2,・・・,N) に、それぞれのサンプル点の色(Ri,Gi,Bi)を割り当てる。ここでその位置 pi が画像のサイズ、すなわち縦横長さの範囲外を示しているときは、そのサンプル点を無視し、画像への色の割り当ては行わないものとする。なお色の割り当てを行うとは、たとえばデジタル画像上において、その位置 pi が指し示すピクセルのメモリに、その色の値(Ri,Gi,Bi)を記録することを意味する。このようにして作成された画像が、仮の位置姿勢設定値Dkから作成される、第2のセンサの仮想検知情報Mkである。本実施の形態では、このような画像が、設定されたすべての仮の位置姿勢設定値Dk(k= 1,2,・・・,K)それぞれについて作成される。
【0042】
次に全体の処理の中で、比較部が行う処理について詳しく述べる。比較部は、このように作成された仮想画像におけるすべてのサンプル点の色情報と、第2のセンサで実際に得られた撮影画像における同じ場所の色情報を比較し、その類似度を評価値 V として算出することで類似度を判断できるようにする。評価値Vの算出方法としては、例えばそれぞれの色成分の差の二乗平均を、以下の式により求める方法が考えられる。
【0043】
【数2】

【0044】
ここで、(R’i,G’i,B’i)は、仮想画像におけるi番目のサンプル点と同じ位置にある、撮影画像上の点の色である。評価値Vは、もし仮想画像と撮影画像がすべてのサンプル点で同じ色をもてば0の値をとり、その違いが大きくなるにしたがってVの値は大きくなる。すなわち評価値Vが小さいほど類似度は大きいと判断でき、逆に評価値Vが大きいほど類似度は小さいと判断できる。またVの値は必ず0以上となる。第2のセンサの位置姿勢仮設定部は、上に述べたとおり可能性のあるすべての位置姿勢値を、仮の位置姿勢値Dk(k=1,2,・・・,K)として出力する。第2のセンサの仮想検知情報作成部はこれらの位置姿勢において得られる仮想検知情報を作成し、比較部は、これらの仮想検知情報それぞれについて評価値VをVk(k=1,2,・・・,K)として求める。もし計測誤差や、仮想検知情報の作成誤差、あるいは量子化誤差等、すべての誤差が0であれば、第2のセンサの実際の位置姿勢値と、仮に設定した位置姿勢値が一致したときに、上で定義した評価値Vは0の値となる。しかし実際には様々な誤差要因により両者は完全には一致せず、評価値も完全に0にはならない。そこで例えば最も0に近い値を持つものが、実際の位置姿勢値である可能性が最も高い、あるいは実際の位置姿勢値に最も近いであろうと判断し、すべての評価値Vk(k=1,2,・・・,K)からその最小値となるものをVk’として選び、このときの仮の位置姿勢値Dk’を第2のセンサの位置姿勢の推定値として出力する。
【0045】
次に図14を用いて、図1を用いて説明した一実施形態における装置構成の一例を説明する。本装置は、演算等を行う中央演算装置1410、プログラムやデータを一時的に保存する主記憶装置1420、プログラムやデータを長期的に保存する外部記憶装置1430、外部ネットワークや外部機器からデータの送受信を行うネットワークインタフェース1440および、ネットワークインタフェースを介して接続される第1のセンサ130および第2のセンサ140から大きく構成される。
【0046】
主記憶装置1420には、図1における第2のセンサの位置姿勢仮設定部158の処理を行う第2のセンサの位置姿勢仮設定プログラム、図1における第2のセンサの仮想検知情報作成部160の処理を行う第2のセンサの仮想検知情報作成プログラム、図1における比較部170の処理を行う比較プログラム、図1における位置姿勢推定部163の処理を行う位置姿勢推定プログラムなどのプログラムと、図1における第1の検知情報155、第2の検知情報165、第2のセンサの仮想検知情報168などのデータを記憶する。なお上記プログラムやデータを外部記憶装置1430で長期的に保存することもできる。本実施の形態における準備フェーズでは、第1のセンサ130で得られるセンシングデータを、ネットワークインタフェース1440を介して入力し、変換処理等を中央演算装置1410がプログラムに従って行い、第1のセンシング情報データとして記憶する。一方、本実施の形態における実行フェーズでは、第2のセンサ140で得られる検知情報を、ネットワークインタフェース1440を介して入力し、各種処理を中央演算装置1410がプログラムに従って行い、第2のセンサの位置姿勢推定値を求め、主記憶装置1420に記憶、あるいはネットワークインタフェース1440を介して外部に出力する。
【0047】
なお、本実施の形態では、準備フェーズを行う装置と、実行フェーズを行う装置を同じ装置で行うものとしたが、これらの処理を別の装置で行う構成にすることもできる。この場合は、準備フェーズで準備した第1の検知情報を、外部記憶装置やネットワークインタフェースを用いて、実行フェーズを行う装置に転送する。
【0048】
次に、図15を用いて本発明の処理の流れを説明する。
【0049】
まず準備フェーズでは、第1のセンサによる存在物の計測を行うステップS1510において、例えば存在物表面上の複数のサンプル点の位置情報と色情報を計測する。この計測された情報は、第1の検知情報の作成と記録のステップS1520において、メモリ等の媒体に第1の検知情報として記録される。これで準備フェーズは終了する。
【0050】
一方実行フェーズでは、第2のセンサによる存在物の計測を行うステップS1550において、存在物が例えばカメラ画像として計測され、これが第2の検知情報となる。一方、第2のセンサの仮の位置姿勢の設定ステップS1530において、第2のセンサの仮の位置姿勢値が設定される。次に、第2のセンサの仮想検知情報の作成ステップS1540では、ステップS1530において設定された仮の位置姿勢値と、準備フェーズで記録された第1の検知情報から、第2のセンサの仮想検知情報を作成する。次に、第2のセンサの仮想検知情報と、第2の検知情報を比較するステップS1570では、ステップS1530の出力とステップS1540の出力を比較し、その一致度を求める。次にステップS1570においてすべての仮の位置姿勢値で求めたかどうかの判断を行い、求めていなければステップS1530から繰り返す。もしすべてを求めていれば、推定値を出力するステップS1580において、ステップS1560で求めた一致度の最も高い仮の位置姿勢値を探し、これを推定値として出力する。以上で実行フェーズを終了する。
【0051】
以上、本発明の一実施形態について詳しく説明した。
【0052】
本実施の形態によると、位置姿勢の推定に用いるサンプル点は、準備フェーズにおいて任意に選ぶことができるので、背景技術で必要だった、画像上で一意に判別可能でその画像上の位置が認識可能な特徴的な点を計測しなければならないという、背景技術に記載した第1の制約がなくなる。また、存在物を第1のセンサおよび第2のセンサで共通に計測することで、第1のセンサの計測範囲に第2のセンサが存在していなければならないとする、背景技術に記載した第2の制約が解決される。また本実施の形態によれば、準備フェーズでの処理は、第1のセンサによる計測と自動的な情報処理のみで構成されるので、存在物の詳細なCGモデルを作成するといった、手作業やスキルを伴う処理は不要であり、その実施は容易となる。
【0053】
なお、上に述べた実施の形態において、第2のセンサは透視投影モデルに従うカメラを使うことを想定したが、それ以外に例えば魚眼カメラなど異なる投影モデルに従うカメラを使う、ステレオカメラ等の複数カメラの組み合わせたセンシングシステムを使う、あるいはレーザ距離センサのように色情報以外の情報を取得できるセンサを使うこともできる。この場合は、それぞれのセンサの計測モデルに従うように、仮想検知情報生成部の処理内容を構成すればよい。
【0054】
また、第2のセンサの位置姿勢仮設定部における設定方法としては、応用システムにおいて何らかの手段を用いて得た、位置姿勢の予測値を用いる方法がある。ここでその予測をする手段としては、ジャイロやGPSといった精度の低い他の位置姿勢予測手段を用いたり、ロボット等に用いる場合は、どのような方向や距離の移動を行ったかという、移動制御情報を用いる方法などが考えられる。これらは応用システムの設計に依存するものであり、その原理をここでは詳述せず、そのような予測値が得られたものとしてその後の処理について説明する。まずこの予測値の形式であるが、ここではそれが確率的にあらわされることを前提とする。ここで確率的にあらわされるとは、予測値となる位置姿勢値を例えばX1と決定的に1つの値として限定せず、例えばX1である確率がp(X1)であり、X2である確率がp(X2)であり、X3である確率がp(X3)であるなどと、可能性をすべて網羅することを言う。このようにして列挙された可能性のある位置姿勢値を、その確率値、あるいは相対的に確率の大きさをあらわす値w1,w2,・・・,wM とともに、(X1,w1),(X2,w2),・・・,(XM,wM)の形式で準備する。本発明による本実施の形態では、これらの位置姿勢値X1,X2,・・・,XKを仮の位置姿勢値とし、第2のセンサの仮想的な画像を作成し、実際の画像との比較を行って得られたお互いの類似度を示す評価値V1,V2,・・・,VKに基づき、位置姿勢推定値を選ぶ。その選び方は、評価値V1,V2,・・・,VKの最も小さいものを選ぶ前述の方法に加え、予測で得られた確率的な値 w1,w2,・・・,wkをあわせて考慮することで判断する方法もありうる。このときは、2つの値の積 w1×V1,w2×V2,・・・,wk×VKを考えその大きなものを選ぶ、2つの値の和を考える、あるいは対数の和を考えるなど、いくつかの方法がある。このように2つの値を合わせて考えることで、予測による位置姿勢の推定と第2のセンサによる位置姿勢の推定を合わせて考えることができ、推定の精度をより高める効果がある。
【0055】
また位置姿勢推定値の選択方法としては、上記算出した値が最も大きくなるものを選ぶだけでなく、いくつかの位置姿勢候補値の重心を求めるなど、複数の候補値での最終評価値の値の演算により求める方法をとることで、より推定の精度を高めたり、大きな誤差が発生する可能性を排除することもできる。
【符号の説明】
【0056】
100 存在物
130 第1のセンサ
140 第2のセンサ
155 第1の検知情報
158 第2のセンサの位置姿勢仮設定部
160 第2のセンサの仮想検知情報作成部
163 位置姿勢推定部
165 第2の検知情報
170 比較部
175 情報処理装置
200 飛行船
210,211 サンプリング点
1410 中央演算装置
1420 主記憶装置
1430 外部記憶装置
1440 ネットワークインターフェース

【特許請求の範囲】
【請求項1】
第1のセンサと、第2のセンサと、情報処理装置からなる位置検知システムにおいて、
前記第1のセンサは、あらかじめ環境内の存在物の位置情報および色情報を第1の検知情報として得るものであり、
前記第2のセンサは、存在物の色情報を第2の検知情報として得るものであり、
前記情報処理装置は、
第2のセンサの位置姿勢を仮に設定する位置姿勢仮設定部と、
前記位置姿勢仮設定部により仮に設定された第2のセンサの位置姿勢から存在物を検知したときに得られる検知情報を、仮想検知情報として、前記第1の検知情報を用いて仮想的に作成する仮想検知情報作成部と、
前記仮想検知情報作成部で作成された前記仮想検知情報と前記第2のセンサで得られた前記第2の検知情報を比較する比較部と、
前記比較部の比較結果と前記仮に設定された第2のセンサの位置姿勢から、前記第2のセンサの位置姿勢推定値を出力する位置姿勢推定部を備えることを特徴とする位置検知システム。
【請求項2】
請求項1記載の位置検知システムにおいて、
前記第1のセンサは、存在物の表面の複数の点までの距離と、それらの点の色を計測する画像・距離センサであることを特徴とする位置検知システム。
【請求項3】
請求項1または請求項2記載の位置検知システムにおいて、
前記第2のセンサは、存在物の表面の色をカメラの投影モデルに従う画像情報として計測するカメラであることを特徴とする位置検知システム。
【請求項4】
請求項1記載の位置検知システムにおいて、
前記第1のセンサによる前記第1の検知情報は、前記存在物の表面を3次元座標値と色情報で表現される複数の点の集合として表されるものであり、
前記第2のセンサの前記仮想検知情報作成部は、前記仮に設定した第2のセンサの位置姿勢と、前記第1の検知情報における複数の点の3次元座標値と色情報から、前記第2のセンサの計測モデルに従う画像情報を作成するものであることを特徴とする位置検知システム。
【請求項5】
請求項1〜4の何れか一つに記載の位置検知システムにおいて、
第2のセンサが、移動体に取り付けられていることを特徴とする位置検知システム。
【請求項6】
請求項1記載の位置検知システムを組み込んだ移動体であって、
前記第2のセンサは移動体に取り付けられ、
前記移動体は、前記位置検知システムから出力された第2のセンサの位置姿勢推定値を用いて移動制御する手段を備えることを特徴とする移動体。
【請求項7】
請求項6記載の移動体において、
前記移動体には移動体の位置姿勢予測部を備え、
前記第2のセンサの位置姿勢仮設定部は、前記位置姿勢予測部で予測された位置姿勢予測値を用いて、前記第2のセンサの仮の位置姿勢値を求めることを特徴とする移動体。
【請求項8】
請求項6記載の移動体において、
前記第2のセンサの位置姿勢仮設定部は、前記移動体の移動制御情報を用いて、前記第2のセンサの仮の位置姿勢値を求めることを特徴とする移動体。
【請求項9】
請求項6〜8の何れか一つに記載の移動体において、
前記移動体は、ロボットまたは飛行体であることを特徴とする移動体。
【請求項10】
第1のセンサを用いて、あらかじめ環境内の存在物の位置情報および色情報を第1の検知情報として得るステップと、
第2のセンサを用いて、存在物の色情報を第2の検知情報として得るステップと、
第2のセンサの位置姿勢を仮に設定するステップと、
前記仮に設定された第2のセンサの位置姿勢から存在物を検知したときに得られる検知情報を、仮想検知情報として、前記第1の検知情報を用いて仮想的に作成するステップと、
前記仮想検知情報と前記第2の検知情報を比較するステップと、
前記比較結果と前記仮に設定された第2のセンサの位置姿勢から、前記第2のセンサの位置姿勢推定値を出力するステップを備えることを特徴とする位置検知方法。
【請求項11】
請求項10記載の位置検知方法において、
前記第1のセンサは、存在物の表面の複数の点までの距離と、それらの点の色を計測する画像・距離センサであることを特徴とする位置検知方法。
【請求項12】
請求項11記載の位置検知方法システムにおいて、
前記第2のセンサは、存在物の表面の色をカメラの投影モデルに従う画像情報として計測するカメラであることを特徴とする位置検知方法。
【請求項13】
請求項10記載の位置検知方法において、
前記第1のセンサによる前記第1の検知情報は、前記存在物の表面を3次元座標値と色情報で表現される複数の点の集合として表されるものであり、
前記第2のセンサの前記仮想検知情報を作成するステップは、前記仮に設定した第2のセンサの位置姿勢と、前記第1の検知情報における複数の点の3次元座標値と色情報から、前記第2のセンサの計測モデルに従う画像情報を作成するものであることを特徴とする位置検知方法。
【請求項14】
コンピュータに、第1のセンサを用いて得られた、環境内の存在物の位置情報および色情報から成る第1の検知情報、および、第2のセンサを用いて得られた、存在物の色情報から成る第2の検知情報から、第2のセンサの位置姿勢を求めさせるプログラムであって、
第2のセンサの位置姿勢を仮に設定するステップと、
前記仮に設定された第2のセンサの位置姿勢から存在物を検知したときに得られる検知情報を、仮想検知情報として、前記第1の検知情報を用いて仮想的に作成するステップと、
前記仮想検知情報と前記第2の検知情報を比較するステップと、
前記比較結果と前記仮に設定された第2のセンサの位置姿勢から、前記第2のセンサの位置姿勢推定値を出力するステップとを実行させることを特徴とするプログラム。
【請求項15】
請求項14記載のプログラムにおいて、
前記第1の検知情報は、前記存在物の表面を3次元座標値と色情報で表現される複数の点の集合として表されるものであり、
前記第2のセンサの前記仮想検知情報を作成するステップは、前記仮に設定した第2のセンサの位置姿勢と、前記第1の検知情報における複数の点の3次元座標値と色情報から、前記第2のセンサの計測モデルに従う画像情報を作成するものであることを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate


【公開番号】特開2012−242315(P2012−242315A)
【公開日】平成24年12月10日(2012.12.10)
【国際特許分類】
【出願番号】特願2011−114482(P2011−114482)
【出願日】平成23年5月23日(2011.5.23)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】