(58)【調査した分野】(Int.Cl.,DB名)
【背景技術】
【0002】
ナビゲーションと定位は、人間とロボットとの共同作業に必須な側面であるのでロボットの極めて重要な問題である。アパートなど人が密集する環境では、挑戦はさらなる複雑性のためにさらに困難なものとなる。
【0003】
ヒューマノイドロボットは、それらの態様および可能性のために、人間環境に特に適応化される。しかし、ヒューマノイドロボットは特定の制約を呈示する。すなわち、歩行はヒューマノイドロボットの進行をより遅くし、例えば車輪付きロボットほど予測可能でない。
【0004】
ヒューマノイドロボットは、標準的ロボットにとってより困難な行為を行う(例えば見回すために頭を回転する、障害物をまたぐ)ことによりその制限のうちのいくつかを補償することができる。
【0005】
ロボットにナビゲーションシステムを備えさせるいくつかの手法が既に存在する。仏国特許出願第1353295号明細書では、向首角という意味でロボットのドリフトを測定し補正する方法が提案された。これにより、ロボットが直線で歩行できるまたは開ループ歩行よりはるかに高精度に回転を行うことができるようにする。ここでの目的は、少なくとも定性的または部分的なメトリック情報(metric information)により絶対的定位解決策(absolute localization solution)を提供することである。
【0006】
ロボットの最も高価なセンサは単眼カラーカメラである。メトリックビジュアル同時定位およびマッピング(SLAM:Simultaneous Localization And Mapping)を直接行うことは良い考えではない。すなわち、オドメータは、十分には信頼できなく、歩行中の動きボケ(motion blur)、限定されたカメラ視野およびロボットの身長のためにキーポイントを正確に追跡することが非常に困難である。このことは、我々が事前構築(pre−built)3Dマップなど環境に関する重い仮定によりこれらの欠点を補償したくなければ、トポロジー的定性的表現がより適応化されるとことを意味する。
【発明の概要】
【課題を解決するための手段】
【0008】
本発明は、2つの軸xとyを有する二次元基準に関連付けられた定位面内にロボットを定位する方法に関わる。本方法は、
−定位面内のロボットの座標x1とy1の推定値および基準方向に対するその配向θ1の推定値をオドメータにより判断する工程と、
−少なくとも二対の関心点を識別する仮想コンパスを使用することによりロボットの配向の推定値θ2を判断する工程であって、各対の第1の点は基準パノラマ内で識別され、各対の第2の点はクエリーパノラマ(query panorama)内で識別され、この工程はθ1により初期化される、工程と、
−基準パノラマの一部分とクエリーパノラマの一部分とを相関付けることによりおよびいつ当該相関が最大化されるかを識別することによりロボットの配向の推定値θ3を判断する工程であって、この工程は配向の既推定値のうちの1つにより初期化される、工程と、
−Iterative Closest Points技術を使用することにより定位場所のロボット位置の推定値x4、y4を判断する工程であって、この工程はx1とy1により初期化される、工程と、
−前述の推定値の標準偏差σ_x1、σ_x2、σ_θ1、σ_θ2、σ_θ3、σ_x4、σ_y4を判断する工程と、
−前記標準偏差を使用することにより各利用可能推定値の確率分布G(x1)、G(y1)、G(θ1)、G(θ2)、G(θ3)、G(x4)、G(y4)を判断する工程と、
−前記ガウス確率分布を組み合わせることによりロボットのxとy軸に沿った座標と配向θの3つのグローバル分布GLOB(x)、GLOB(y)、GLOB(θ)をそれぞれ判断し、最尤法をグローバル分布へ適用することにより定位面内のロボットの座標のグローバル推定値xg、ygおよびその配向のグローバル推定値θgを判断する工程と、を含む。
【0009】
一例として、所与の工程により提供される推定値は、信頼できると考えられる場合だけ、その後の工程により使用される。
【0010】
一例として、推定値は、その標準偏差が所定閾値未満であると信頼できると考えられる。
【0011】
一例として、確率分布G(x1)、G(y1)、G(θ1)、G(θ2)、G(θ3)、G(x4)、G(y4)はガウス確率分布である。
【0012】
一例として、グローバル確率分布は次のように導出される。
GLOB(x)=G(x1)×G(x4)
GLOB(y)=G(y1)×G(y4)
GLOB(θ)=G(θ1)×G(θ2)×G(θ3)
【0013】
一例として、θ3値は2つの画像ピラミッド(pyramid of images)にわたって行われる画像テンプレートマッチング(image template matching)に基づき推定され、第1の画像ピラミッドはいくつかのスケーリング工程を使用することによりその規模を縮小することにより単一基準画像から生成され、第2の画像ピラミッドはいくつかのスケーリング工程を使用することによりその規模を縮小することにより単一クエリー画像から生成される。
【0014】
本発明はまた、
−少なくとも1つの画像抽出器と、
−前述の特許請求項のいずれか一項に記載の方法を実施するようにされた処理能力と、を少なくとも含むヒューマノイドロボットに関わる。
【0015】
一例として、ヒューマノイドロボットは少なくとも1つの基準画像を含むクエリーパノラマを構築するために2D RGBカメラを含む。
【0016】
一例として、ヒューマノイドロボットは、Iterative Closest Point技術を実施するためにポイントクラウドを計算するために使用される3Dセンサを含む。
【0017】
本発明はまた、上述の方法をコンピュータに実施させるコード手段を含むコンピュータ可読媒体上に格納されたコンピュータプログラム製品に関わる。
【0018】
本発明のいくつかの実施形態のより良い理解は、以下の添付図面と共に以下の詳細説明から得られる。
【発明を実施するための形態】
【0020】
図1は、本発明による方法の入力として使用され得る基準パノラマの例を与える。
【0021】
既に述べたように、本発明は、可動要素(例えばロボット)を定位する方法に関わる。本方法は、複数のRGB(光の三原色)画像および/または3D画像から構成される少なくとも1つの基準パノラマ100と比較されるロボットを定位する。
【0022】
ロボット104は2つの軸基準101、102のおかげで水平面内に定位される。この基準の原点Oは基準パノラマの中心に対応する。加えて、ロボットの配向θは基準方向103と比較して推定され得る。
【0023】
少なくともクエリーパノラマがまた、定位過程中に使用され、より小さな組の画像から構成され得る。クエリーパノラマは、定位過程中に補足された少なくとも1つの画像から構成される。
【0024】
図2は本発明による方法の図解である。本方法は、工程200、202、204、206に対応する1組の基本定位技術を使用する。
【0025】
本発明の重要な側面は、これらの定位技術の使用が階層的に編成されるということである。これは、それほど複雑でなくかつそれほど信頼性が高くない定位技術200が最初に適用されるということを意味する。その後の定位工程202、204、206は、より複雑かつより信頼できる工程である。
【0026】
この階層的編成は偽陽性率だけでなく全体計算複雑性も低減できるようにする。この目的のために、各工程により提供される推定定位情報は以下の工程へ提供するために使用され、初期仮定(preliminary hypothesis)として使用される。
【0027】
次に、各工程により提供される推定定位データは、確率的表現に基づく一般的方法を使用することにより組み合わせられる。
【0028】
より正確には、第1の推定工程200はオドメータに基づく定位を実施する。この技術は、ロボットの位置を推定するためにその移動を取り込むロボット位置センサに基づく。単独で使用されると、この技術は高い推定ドリフトを被り得る。これは主として、オドメータセンサが滑りやすい地上または隆起などの初期設定を考慮しないからである。
【0029】
この推定200の結果は次のものである:
●x1:x定位座標の推定値、
●y1:y定位座標の推定値、
●θ1:角度θの推定値。
【0030】
これらの中間結果が利用可能になると、その不確定性が推定される(201)。x1、y1、θ1推定値の標準偏差σ_x1、σ_y1、σ_θ1がその目的のために使用され得る。好適な実施形態では、推定値は、その標準偏差が所定閾値未満であると信頼できると考えられる。
【0031】
一例として、ドリフト(実験的に評価された)が5パーセントに等しく、ロボットがx軸に沿って1メートル歩行したならば、x軸に沿った標準偏差σ_x1は5センチメートルに等しくなる。所定閾値が6センチメートルに等しければ、x1推定値は信頼できると考えられる。
【0032】
一実施形態では、x1、y1、θ1は、信頼できると考えられる場合だけ工程202、204、206による使用のために送信される。
【0033】
工程202は、ロボットの配向の推定値θ2を提供する仮想コンパスを実装する。この目的のために、ロボットに埋め込まれる2D RGBカメラが使用される。
【0034】
この技術は仏国特許出願第1353295号明細書に記載されている。この目的のために、1つまたはいくつかの画像が、ロボットのθ配向を計算するために一組の基準画像(すなわち基準パノラマ)と比較される。この技術は、基準方向に対する角度変位(すなわちθ角)を推定できるようにする。この目的のために、基準方向を表す基準画像が使用される。次に、ロボットの現在の配向を表す現在画像がロードされる。
【0035】
次に、複数の関心点がこれらの2つの画像内で識別される。次に、少なくとも二対の関心点が識別される。このような対は、現在画像内で識別された第1の関心点を探索することにより、およびその対応基準画像内の第2の関心点を探索することにより得られる。最後に、可動要素の現在方向と基準方向間の角度変位θ2が少なくとも二対の点を使用することにより推定される。
【0036】
有利には、工程200により生成された初期仮定が適用されれば、工程202は、推定の複雑性を低減する基準画像内の低減探索範囲で使用され得る。別の利点は、このとき正しい一致をより速く発見することが可能であるということである。
【0037】
加えて、関心点間の偽一致のリスクは低くなる。探索は前記仮定を発端として行われる。
【0038】
工程202の推定により導入される不確定性は信頼できる一致の百分率から導出され得る(203)。この目的のために、工程202により提供される推定値の品質は、識別された関心点の対の数が所定閾値を越えると十分であると考えられる。そうであれば、推定値品質は十分であると考えられ、θ2が工程204の適用のための初期仮定として使用されることになる。
【0039】
代替的に、θ2の標準偏差σ_θ2がこの推定の信頼性を照査するために使用され得る(203)。既に説明したように、推定は、その標準偏差が所定閾値未満であると信頼できると考えられ得る。
【0040】
一実施形態では、θ2は、信頼できると考えられる場合だけ工程204、206により使用されるために送信される。
【0041】
工程204では、θ3値は、2つの画像ピラミッドにわたって行われる画像テンプレートマッチングに基づき推定される。テンプレートマッチングは、非特許文献Y.Matsumoto,M.Inaba,H.Inoue,entitled“Visual navigation using view−sequenced route representation”,IEEE International Conference on Robotics and Automation,vol.1,pp.83,88,22−28 Apr 1996に記載のものと同じ式に基づく。しかし、この非特許文献は一連の画像と同等スケールとを比較することに取り組み、一方、以下の説明は、画像相対スケールとそれらの間の距離とに関するいかなる仮定もしない。
【0042】
2つの画像を一致させるために、第1のテンプレート301は基準パノラマに属する基準画像300から作られる。次に、クエリー画像302内の前記第1のテンプレートと第2のテンプレート303との相互相関が計算される。ピーク値はクエリーと基準との間の最良相関に対応する。
図3は、基準画像300とクエリー画像302とにそれぞれ属する2つのテンプレート301、303の例を示す。この例では、テンプレート300、302は、それらの対応相関値が相関処理により得られたピーク値であるので整合されている。
【0043】
一実施形態では、基準画像とクエリー画像との前述の比較はスケーリングされた画像ピラミッドにわたって行われる。これは、スケール変更に直面する際の工程204の頑強性を改善する。
【0044】
図4は、2つの画像ピラミッドの例を与える。第1の画像ピラミッド401は、いくつかのスケーリング工程を使用することによりそれの規模を縮小することにより単一基準画像420から生成され、画像420〜428のそれぞれはオリジナルクエリー画像410と比較される。クエリー画像410は、その規模がオリジナルクエリー画像と比較して実際に縮小されれば、ピラミッド内の対応ステップにおいて高い相関ピークが生じることになる。
【0045】
対称的に、クエリー画像410は第2の画像ピラミッド400を得るためにその規模が縮小される(410〜418)。次に、各画像410〜418は基準画像420と比較される。クエリー画像410が基準画像420と比較してズーミングされれば、縮小画像421〜428のうちの1つに対応する相関ピークが生じる。
【0046】
その相関値が最大化された一対の画像が選択される。
【0047】
工程204の出力は、基準と比較されたクエリー画像の相互配位θ3と、これら2つの間の最良スケール係数とである。
【0048】
工程204は、基準パノラマ100の一部をテンプレートとして使用する。初期仮定が工程200および/または工程202により提供されれば、テンプレートのサイズは同仮定程度に限定され、そうでなければ、テンプレートは全パノラマとして採られる。これは、テンプレートの面積に比例する計算時間と、似ているが正しくない区域との相関リスクとを低減する。
【0049】
工程204の適用により提供された推定値の不確定性は、最良相関値を使用することにより判断される(205)。相関値は−1〜1の範囲であり得る。この最大相関値が所定値Ct以下であれば、工程204の適用により提供される推定値は信頼できるものと考えられない。最大相関値がこの所定値Ctより大きければ、工程204の適用により提供される推定値は信頼できると考えられる。
【0050】
代替的に、この推定の信頼性を照査するためにθ3の標準偏差σ_θ3が使用され得る(205)。既に説明したように、推定は、その標準偏差が所定閾値未満であると信頼できるものと考えられ得る。
【0051】
次に、工程206は、ICP方法(Iterative Closest Points)を使用することによりロボット座標x4、y4の推定を行う。この方法は、例えば非特許文献Qi−Zhi Zhang and Ya−Li Zhou entitled “A hierarchical iterative closest point algorithm for simultaneous localization and mapping of mobile robot”,10th World Congress on Intelligent Control and Automation(WCICA),pp.3652,3656,6−8 July 2012に記載されている。
【0052】
この目的のために、3Dセンサがポイントクラウドを計算する。次に、本処理を簡単にするために3Dポイントクラウドからの線が抽出される。これらの線は、以下では「走査」として参照され、3Dポイントクラウドの水平カット(horizontal cut)に対応する。
【0053】
現在のロボット位置はIterative Closest Points方法を使用することにより推定される。ICP方法はロボットにおいて広く使用される古典的手法である。ICP方法の本質は、基準走査と整合させるためにクエリー走査を開始点から移動することにある。
【0054】
不確定性は、最終再配置クエリー走査(各クエリー走査点から最近傍基準点までの距離に依存する)による基準走査のChampfer距離から導出され得る。
【0055】
この推定の信頼性を照査するためにx4、y4の標準偏差σ_x4、σ_y4が使用され得る(207)。既に説明したように、推定値は、その標準偏差が所定閾値未満であると信頼できると考えられ得る。
【0056】
ICPの頑強性と収束時間は開始点に大いに依存する。推定値が信頼できる初期仮定を有すれば、アルゴリズムは迅速かつ確実に収束することになる。そうでなければ、アルゴリズムは偽配向を与える可能性がある。利用可能な仮定が無ければ、可動要素は、第一近似を得るためにクエリー内の基準走査から認識可能形状同士を整合させることにより仮定を構築しようとする。次に、この近似が仮定として使用される。本発明による方法はその最終推定工程としてICP工程206を実施する。換言すれば、以前に行われた推定200、202、204は、工程206の入力において信頼できる仮定を提供する効果を有し、したがって、その計算必要性を劇的に低減する。
【0057】
独立に採られる工程200、202、204、206はそれ自身の欠点および弱点を有する。いくつかの工程は、それらの収束速度を改善するために以前の仮定を必要とする、または偽陽性を起こし易い。ほとんどの工程は部分的情報だけを提供する。一例として、工程202はロボットの配向の推定値θ2だけを提供する。
【0058】
本発明では、推定工程は予め定義された順番で順序付けられる。この予め定義された順番は、所与の工程の推定がその後適用される推定工程にとって有益となるように設計される。次に、前述の工程により提供される部分的推定値はグローバル推定値を生成するように組み合わせられる。
【0059】
階層内の工程毎に、推定値は初期仮定として次の工程へ提供される。例えば、工程200により推定されるx1、y1、θ1は初期仮定として工程202、204および206へ提供される。
【0060】
最も単純かつ頑強な工程200から最も複雑かつ間違いを起こし易い工程206へ工程200、202、204、206を順々に適用することにより、推定値の頑強性だけでなくグローバル計算時間も改善される。
【0061】
工程200、202、204、206が順序付けられるやり方は本発明の必須な側面である。実際、この階層(すなわちどのように工程が順序付けられるか)は、計算時間を最小化し各工程の成功率を改善するために選択された。しかし、一実施形態では、推定値は、信頼できると考えられなければ送信されない(230、231、232)。
【0062】
オドメータ工程200は、それほど複雑でない処理であり、ロボットがそれほど激しく押されないかまたはそれ程多く移動されない限り、信頼できる出力を提供する。コンパス202は、比較的遅いが、ロボットの配向のむしろ速いかつ信頼できる計算を提供する。コンパス202は、オドメータ工程200により提供される開始点を有することからの恩恵を受ける。相関工程204は、計算という意味で重く、探索が誤った方向に行われれば誤り易い。しかし、この技術は、配向に関する仮定を使用すれば非常に高い成功率を有し、成功すればコンパス202より正確である。最後に、ICP206は、収束が成功すれば信頼できるx−y推定値を提供するが、これは初期仮定(特に配向の)を有すればの場合である。
【0063】
工程200、202、204、206は、その出力を推定値の形式で与える。これらの推定値は、グローバル確率分布を得るために次に組み合わせられる確率の分布に変換され得る。
【0064】
この目的のために、確率分布G(x1)、G(y1)、G(θ1)、G(θ2)、G(θ3)、G(x4)、G(y4)を生成するために標準偏差σ_x1、σ_y1、σ_θ1、σ_θ2、σ_θ3、σ_x4、σ_y4が使用される。
【0065】
これらの確率分布は以下の原理を使用することにより生成され得る(220)。G(x1)はその標準偏差がσ_x1に等しいガウス分布である。G(y1)、G(θ1)、G(θ2)、G(θ3)、G(x4)、G(y4)は、同じ原理を使用することにより生成され得る。
【0066】
次に、グローバル確率分布が生成される。この目的のために、すべての工程200、202、204、206は独立していると仮定する。これは、信頼できる出力だけが初期仮定と見なされる一方で最終結果は著しく異なり得るので実際に真である。加えて、x、y、θもまた独立していると考えられる。これらの仮定を使用することにより、3つのグローバル分布GLOB(x)、GLOB(y)、GLOB(θ)が以下のように計算される(221)。
GLOB(x)=G(x1)×G(x4)
GLOB(y)=G(y1)×G(y4)
GLOB(θ)=G(θ1)×G(θ2)×G(θ3)
【0067】
この分布の最大尤度は位置の最終推定値209に対応する。加えて、グローバル分布の累積分布関数を見ることにより確実性の程度を導出することもまた可能である。
【0068】
図5は、本発明の多くの実施形態におけるヒューマノイドロボットの物理的アーキテクチャを表す。
【0069】
ロボットは、いくつかの人間的外観属性:頭、胴、2本の腕、2つの手などを有する瞬間からヒューマノイドとしての資格があり得る。しかし、ヒューマノイドロボットは多かれ少なかれ高度化され得る。その四肢はより多かれ少なかれ関節を有し得る。ヒューマノイドロボットは、恐らく三次元でそれ自身のバランスを静的かつ動的に制御して二肢歩行し得る、またはベース上を単に転回し得る。ヒューマノイドロボットは、環境から信号を受信し「(聞く」「見る」「触れる」、「感知する」など)、多少なりとも高度な行動に反応し、言葉またはジェスチャのいずれかにより他のロボットまたは人間と相互作用し得る。
【0070】
図の特定ロボット500は、本発明が実施され得るヒューマノイドロボットの一例と考えられる。図のロボットの下肢は、歩行のためには機能的ではないが、置かれた表面上で転回するそのベース540上で任意の方向に移動し得る。本発明は、歩行に適したロボットにおいて容易に実施され得る。一例として、このロボットは、約120cmであり得る身長510、約65cmの奥行520、約40cmの幅530を有する。特定実施形態では、本発明のロボットは、その環境へメッセージ(音声、映像、ウェブページ)を伝達し得るタブレット550を有する、またはタブレットの触覚インタフェースを介しユーザからエントリを受信する。タブレットのプロセッサに加えて、本発明のロボットはまた、それ自身のマザーボードのプロセッサ(例えばIntel(商標)のATOM(商標)Z530であり得る)を使用する。本発明の特定実施形態では、このロボットはまた、有利には、マザーボードと特には磁気回転エンコーダ(MRE:Magnetic Rotary Encoder)を担持するボードとの間のデータフローの取り扱いに専用化されるプロセッサと、四肢内の関節のモータとロボットが車輪として使用するボールとを制御するセンサとを含み得る。モータは、限定関節に必要な最大トルクの大きさに応じて異なるタイプのものであり得る。例えばe−minebea(商標)のブラシDCコアレスモータ(例えばSE24P2CTCA)またはMaxon(商標)のブラシレスDCモータ(例えばEC45_70W)が使用され得る。MREは、12または14ビット精度を有するホール効果を使用するタイプのものが好ましい。本発明のいくつかの実施形態では、
図1に表されるロボットはまた、様々な種類のセンサを含む。それらのいくつかは、ロボットの位置および運動を制御するために使用される。これは例えば、ロボットの胴内に配置された慣性ユニットのものであり、3軸ジャイロメータおよび3軸加速度計を含む。ロボットはまた、ロボットの額(頂部と底部)上に、5フレーム/秒、5メガピクセル解像度および約57°水平方向および44°垂直方向の視野(FOV)を有するシステムオンチップ(SOC:System On Chip)タイプの2つの2D色RGBカメラ(Shenzen V−Vision Technology Ltd(商標)(OV5640)など)を含み得る。2Dカメラとほぼ同じFOVを有する20フレーム/秒、0.3メガピクセルの解像度を有するASUS XTION(商標)SOCセンサなどの1つの3Dセンサがまた、ロボットの眼の背後に含まれ得る。本発明のロボットはまた、その環境内の物体/生物に対するその相対位置を感知することができるようにレーザ光線発生器(例えば頭内に3個、ベース内に3個)を備え得る。本発明のロボットはまた、その環境内の音を感知することができるマイクロホンを含み得る。一実施形態では、1kHzにおいて300mV/Pa+/−3dBの感度と300Hz〜12kHz(1kHzに対して−10dB)の周波数範囲とを有する4つのマイクロホンがロボットの頭上に埋め込まれ得る。本発明のロボットはまた、その環境内の物体/人間までの距離を測定するために、恐らくそのベースの前部および後部に位置する2つのソナーセンサを含み得る。ロボットはまた、人間との相互作用を可能にするためにその頭およびその手上に触覚センサを含み得る。ロボットはまた、その経路上で遭遇する障害を感知するためにそのベース上にバンパを含み得る。
【0071】
その感情を翻訳しその環境内の人間とコミュニケーションするために、本発明のロボットはまた、
−例えばその眼、耳内に、およびその肩上にLEDと、
−その耳内に配置される拡声器(例えば2つの)と、を含み得る。
【0072】
ロボットはイーサーネットRJ45またはWiFi802.11接続を通して基地局または他のロボットと通信し得る。
【0073】
ロボットは約400Whのエネルギーを有するリン酸鉄リチウム電池により給電され得る。ロボットは、ロボットが含む電池のタイプに適した充電ステーションにアクセスし得る。
【0074】
ロボットの位置/運動は、センサの測定という観点では、各肢により定義されたチェーンと各肢の端において定義されたエフェクタとを活性化するアルゴリズムを使用することによりそのモータにより制御される。
【0075】
上に説明したおよび添付図面内の装置、方法および構成は、説明の容易さのためだけのものであり、装置または方法を使用時の特定配置または処理に制限するように意図されてはいない。本発明はヒューマノイドロボットに関して説明したが、当業者は、本発明が自動車などの任意の可動要素へ適用可能であり得るということを認識することになる。