(57)【要約】【課題】目標物体が存在する可能性が高い位置および、目標対象物を見つけるための位置を決定する。【解決手段】ロボットによってナビゲートされる環境の観測尤度分布で可観測性グリッドを初期設定するステップと、可観測性グリッドを用いて環境を探索して観測点を求めるステップと、可観測性グリッド内の他の観測点よりも高い観測尤度値を有する２つ以上の観測点を含む経路に沿ってロボットをナビゲートする第１ナビゲートステップと、経路に沿った第１の観測点から目標物体を観測するステップと、第１の観測点からの目標物体の観測に基づいて可観測性グリッドを更新するステップと、第２の観測点までの経路に沿ってロボットをナビゲートするステップと、第２の観測点から目標物体を観測するステップと、第２の観測点からの目標物体の観測に基づいて可観測性グリッドを更新するステップと、を含むコンピュータ実装方法。【選択図】図２
2018142316.tif 000002
【特許請求の範囲】
【請求項１】
可観測性グリッドを用いてロボットで目標物体を観測するためのコンピュータ実装方法であって、
１つまたは複数のプロセッサを用いて、ロボットによってナビゲートされる環境の観測尤度分布で可観測性グリッドを初期設定する初期設定ステップと、
１つまたは複数のプロセッサを用いて、可観測性グリッドを用いて環境を探索して観測点を求める探索ステップと、
推進システムを用いて、可観測性グリッド内の他の観測点よりも高い観測尤度値を有する２つ以上の観測点を含む経路に沿ってロボットをナビゲートする第１ナビゲートステップと、
ロボットの１つまたは複数のセンサを用いて、経路に沿った第１の観測点から目標物体を観測する第１観測ステップと、
１つまたは複数のプロセッサを用いて、第１の観測点からの目標物体の観測に基づいて可観測性グリッドを更新する第１更新ステップと、
推進システムを用いて、第２の観測点までの経路に沿ってロボットをナビゲートする第２ナビゲートステップと、
ロボットの１つまたは複数のセンサを用いて、第２の観測点から目標物体を観測する第２観測ステップと、
１つまたは複数のプロセッサを用いて、第２の観測点からの目標物体の観測に基づいて可観測性グリッドを更新する第２更新ステップと、を含む、
コンピュータ実装方法。
【請求項２】
コンピュータ実装方法であって、
１つまたは複数のプロセッサを用いて、移動検出システムによってナビゲートされる環境の観測尤度分布で可観測性グリッドを初期設定する初期設定ステップと、
１つまたは複数のプロセッサを用いて、可観測性グリッドを用いて環境を探索して観測点を求める探索ステップと、
推進システムを用いて、移動検出システムを観測点までナビゲートするナビゲートステップと、
１つまたは複数のセンサ移動検出システムを用いて、観測点から目標物体を観測する観測ステップと、を含む、
コンピュータ実装方法。
【請求項３】
前記可観測性グリッドは、２つ以上の空間次元および角度次元を含む、
請求項２に記載のコンピュータ実装方法。
【請求項４】
１つまたは複数のプロセッサを用いて、前記目標物体の種類と前記移動検出システムによって行われた知覚認識とに基づいて、局所的可観測性を調整することを決定する決定ステップをさらに含む、
請求項２に記載のコンピュータ実装方法。
【請求項５】
前記初期設定ステップは、１つまたは複数のプロセッサを用いて、前記可観測性グリッドの前記観測尤度分布に基づいて前記移動検出システムで前記環境をサンプリングするステップをさらに含む、
請求項２に記載のコンピュータ実装方法。
【請求項６】
前記初期設定ステップは、
１つまたは複数のプロセッサを用いて、障害物マップを取得する取得ステップと、
前記障害物マップを用いて、遮られている位置に対応する前記可観測性グリッド内の
グリッドセルを識別する識別ステップと、
１つまたは複数のプロセッサを用いて、前記可観測性グリッド内の対応するグリッドセルの観測尤度値を低減させる低減ステップと、をさらに含む
請求項２に記載のコンピュータ実装方法。
【請求項７】
遮られている位置は、前記移動検出システムによって到達できない位置である、
請求項６に記載のコンピュータ実装方法。
【請求項８】
前記観測尤度分布は、一様分布、ランダムな初期分布、および既定の初期分布のうちのいずれかである、
請求項２に記載のコンピュータ実装方法。
【請求項９】
前記初期設定ステップは、
前記環境内の前記目標物体の１つまたは複数の履歴位置を反映するコンテキストデータを処理する第１処理ステップと、
前記履歴位置に対応する前記可観測性グリッド内のグリッドセルの観測尤度値を増やす増加ステップとを、さらに含む、
請求項２に記載のコンピュータ実装方法。
【請求項１０】
前記初期設定ステップは、履歴位置、生物または無生物の共起、時刻、日付、照明条件、および天候条件のうちの１つまたは複数を反映するコンテキストデータを処理する第２処理ステップを含む、
請求項２に記載のコンピュータ実装方法。
【請求項１１】
観測点から前記目標物体を観測したことに応答して、１つまたは複数のプロセッサを用いて、観測の結果を反映するように前記可観測性グリッドを更新するステップをさらに含む、
請求項２に記載のコンピュータ実装方法。
【請求項１２】
前記可観測性グリッドが観測の結果に基づいて増加または減少するように更新される、請求項２に記載のコンピュータ実装方法。
【請求項１３】
観測点と、移動速度、観測点までの距離、および観測点と関連付けられる観測角度のうちの１つまたは複数と関連付けられた観測尤度値に基づいて観測点および観測点までの経路を決定するステップをさらに含み、
前記ナビゲートステップでは、前記経路を用いてナビゲートが行われる、
請求項２に記載のコンピュータ実装方法。
【請求項１４】
観測点から目標物体を観測するステップは、
観測点で１回の観測を行うステップと、
観測点の前の位置、観測点、および観測点を過ぎた位置のうちの１つまたは複数で観測を行うステップと、
カメラ姿勢および観測場面のうちの１つまたは複数に変化がないか環境を観測するステップ、のうちの１つを含む、
請求項２に記載のコンピュータ実装方法。
【請求項１５】
観測点から物体を観測するするステップが、
１つまたは複数センサを用いて、前記移動検出システムによって観測を実行するステップと、
１つまたは複数のプロセッサを用いて、観測により物体が検出されたか否かを判定す
るステップと、
１つまたは複数のプロセッサを用いて、観測によって物体が検出されたことに基づいて前記可観測性グリッドを更新するステップと、をさらに含む、
請求項２に記載のコンピュータ実装方法。
【請求項１６】
環境を観測するように適合された１つまたは複数のセンサに結合された移動検出システムであって、
環境内で移動検出システムを移動させる推進システムと、
以下を含む動作を行うようプログラムされた１つまたは複数のコンピュータプロセッサと、を含み、
移動検出システムによってナビゲートされる環境の観測尤度分布で可観測性グリッドを初期設定する動作と、
可観測性グリッドを用いて環境を探索して観測点を求める動作と、
推進システムを用いて、移動検出システムを観測点までナビゲートする動作と、
１つまたは複数のセンサ移動検出システムを用いて、観測点から目標物体を観測する動作と、
を含む動作を行うようプログラムされた１つまたは複数のコンピュータプロセッサを含む、
移動検出システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、自律的な計算およびモビリティに関する。
【背景技術】
【０００２】
今日、多くの自律型コンピュータシステムは、様々な異なる用途で検出および認識技術に依存している。しかし、移動ロボットにとって、環境内の物体または人物を見つけるタスクは困難なものになる可能性がある。いくつかの古くからある解決策は、ロボットがセンサ（例えば、カメラ）を目標に向けることができる場合に物体が見つかることを保証する正確な知覚的分類のアルゴリズム(an accurate perceptual classification algorithm)に大きく依存している。残念ながら、そうした分類の信頼性は、日常的な使用ではほと
んど見込めない。人は、たとえ物体を認識したとしても、間違いを犯す。著しい環境閉塞(environmental occlusions)、照明条件(lighting conditions)が与えられた場合や、単
に困難な角度から物体を見るだけでも、ロボットは往々にして目標を見つけることができず、当てもなく環境を探索し続ける。
【０００３】
物体（人物、無生物など）を求めて環境を探索することは、移動ロボット工学(mobile robotics)にとって長年にわたる大きな関心対象のタスクであり、概して、ずっと任意の
環境に対する有効な解決策を欠いているタスクである。様々な分野で長年にわたって、この問題を解決しようとするいくつかの方法が提案されてきた。
【０００４】
捜索救難(SAR:Search and rescue)は、物体の探索を論じる場合に重要な分野である。
この分野内では、一般に、未知の環境を探索するために、フロンティア法や巡回セールスマン問題といった古典的なアルゴリズム解決策を利用する、計画ベースの手法が提案され、評価されてきた。そうした手法の１つは、非特許文献１に記載されている。
【０００５】
また、非特許文献２は、ナビゲーション解決策(the navigational solutions)により、ロボットが移動される都度様々なレベルの重要度を有するいくつかの異なる探索目標を最大化しようとする決定問題として探索を扱う関連した趣旨の研究に従うものである。
【０００６】
しかし、上記の研究で提案された解決策は、物体がどこに位置しているかを事前に知らずに未知の環境を探索するように設計されており、人および物体を探索しながら環境のマップを構築する。これらの研究のどちらも、ナビゲーション選択肢においてロボットが物体を観測できる様々な能力を直接対処していない。
【０００７】
聴覚分野における不十分なセンサ位置決定に対処する別の方法が、非特許文献３に記載されている。この研究では、まず環境を繰り返しサンプリングしてマップを構築し、次いでマップ内の信号対雑音比を最大化することにより勾配をたどって検出音源に達する手法を提案した。あるいは、既知の音源から遠ざかることにより、新しい聴覚事象を聴取するときの環境干渉を最小化した。しかし、この手法は、探索への適用が限られている。というのは、この手法は、まず長時間の環境サンプリングを必要とし、観測角度が重要な任意の感知分野には適用されないからである。
【０００８】
ロボット誘導のいくつかの解決策では、証拠グリッド(Evidence grid)または占有グリ
ッド(occupancy grid)が用いられてきた。この手法は、空間表現またはマップにおいて証拠(evidence)を結合し、それを用いてロボットを誘導する。非特許文献４では、この手法を聴覚分野において拡張し、証拠グリッド表現に指向性音響測定(directional sound measurements)を組み込んで、ロボットによって収集された観測の和に基づいて雑音のある物
体がどこに位置している可能性が最も高いかを確率的に示した。
【０００９】
いくつかの解決策は、特許文献１や特許文献２などの証拠グリッドを用いたロボットの誘導について記述している。特許文献１は、特に、移動ロボットが証拠グリッドに基づいて環境内の物体を探索できる方法を明らかにしている。しかし、探索に基礎をなす証拠グリッド表現を用いることには重大な問題がある。証拠グリッドは、本来、環境内の障害物をマップするために設計されたものであり、環境内の任意の特定の離散化された位置が物体（例えば、障害物）を含んでいる可能性がどの程度かを表している。証拠グリッドは、物体を実際に検出し、または認識するためにロボットそれ自体をどのように位置決定すべきかを示すものではない。代わりに、センサが物体に向けられている場合には、物体は、ある既知の検出尤度で検出されると仮定される。しかし、実際には、ロボットは、ロボットが探索している物体の位置も向きも知らずに検出の尤度を正確に推定することはできないことが多く、ほとんどの探索用途で実用的ではない（例えば、ロボットは、物体がどこにあるかすでに知っている場合、どうしてその物体を探索しているのかなど）。証拠グリッドのこれらの問題を回避するために、ロボットエンジニアは、ランダムノイズを導入し、ロボットにエリアを複数回探索させるなど、ナビゲーションコントローラのヒューリスティックに頼ろうとする。証拠グリッドを用いたエリア探索と関連付けられる限界を克服するためのそうしたその場しのぎの解決策は、望ましくない動きを生じ、乱雑な空間における目標物体発見の失敗につながることが多い。
【００１０】
捜索救難を定義することが多い情報のない探索とは対照的に、人は、いくつかの種類の環境ではロボットを助けるために協力できることが多い。これは、ロボットが探索の優先順位を設定するのを助ける受動的支援または能動的支援とすることができる。受動的支援では、例えば、人がタグ付けし、インターネットにアップロードした画像を用いて異なる物体および／または視覚的特徴間の連想グラフを構築する。ロボットが関連した物体を見つけることができる場合、実際の探索の目標につながる可能性もある。当然ながら、この方法では、探索される環境は共起グラフ(co-occurrence graph)を構築するのに用いられ
た画像と類似しているものと仮定しており、この仮定は、特定の環境では誤りであることが多い。非特許文献５を参照されたい。
【００１１】
いくつかの解決策では、例えば、探索エンジン問合せからの戻りを用いて相対的意味的連想を識別する、非特許文献６で提案されているように、能動的情報と受動的情報の組み合わせを用いて探索アルゴリズムに情報を提供する。一例には、紙を探索するときには「キッチン」よりも「プリンタ室」の方がより可能性が高いことが含まれる。上記の解決策と同様に、当然ながら、この方法では、探索される環境は問合せ結果と類似しているものと仮定しており、この仮定は、特定の環境では誤りであることが多い。またこの解決策は、正しい近傍に到達した後で、自律的探索を続行するのではなく、室内の物体の発見を手伝うよう直接人に依頼することも提案しており、能動的情報に過度に依存する結果となる可能性がある。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】米国特許第８４２７４７２号明細書
【特許文献２】米国特許第８８５５９１１号明細書
【特許文献３】特開２０１４−１１９９０１号公報
【非特許文献】
【００１３】
【非特許文献１】Miroslav Kulich et al., "Single robot search for a stationary object in an unknown environment," Robotics and Automation (ICRA), 2014 IEEE International Conference on Robotics and Automation(2014)
【非特許文献２】Nicola Basilico et al., "Defining effective exploration strategies for search and rescue applications with Multi-Criteria Decision Making, "Robotics and Automation (ICRA),2011 IEEE International Conference on Robotics and Automation(2011)
【非特許文献３】Eric Martinson et al., "Noise Maps For Acoustically Sensitive Navigation, "Mobile Robots XVII(2004)
【非特許文献４】Eric Martinson et al., "Auditory Evidence Grids" 2006 IEEE/RSJ International Conference on Intelligent Robots and Systems(2006)
【非特許文献５】Puwanan Chumtong et al., "Vision-based object search in unknown human environment using object co-occurrence Graph" Robotics and Biomimetics(ROBIO),2011 IEEE International Conference on Robotics and Biomimetics(2011)
【非特許文献６】Mehdi Samadi et al.,  "Using the Web to interactively learn to find objects" AAAI’12 Proceedings of the Twenty-Sixth AAAI Conference on Artificial Intelligence(2012)
【発明の概要】
【００１４】
本明細書では、背景技術の問題に対処するための革新的な技術を開示する。この技術では、ロボットが、単に最も可能性の高い物体位置を探索するだけでなく、関心対象の物体を見つけるための位置を決定することができ、特に、ロボットが、その基礎をなす検出認識アルゴリズムの様々な位置的問題を克服し、履歴情報および人間の提言を含む様々な他のフィードバックを組み込むことを可能にすることができる。
【００１５】
本開示に記載される主題の１つの革新的な態様によれば、可観測性グリッドを用いてロボットで目標物体を観測するためのコンピュータ実装方法であって、本方法は、１つまたは複数のプロセッサを用いて、ロボットによってナビゲートされる環境の観測尤度分布で可観測性グリッドを初期設定するステップと、１つまたは複数のプロセッサを用いて、可観測性グリッドを用いて環境を探索して観測点を求めるステップと、推進システムを用いて、可観測性グリッド内の他の観測点よりも高い観測尤度値を有する２つ以上の観測点を含む経路に沿ってロボットをナビゲートするステップと、ロボットの１つまたは複数のセンサを用いて、経路に沿った第１の観測点から目標物体を観測するステップと、１つまたは複数のプロセッサを用いて、第１の観測点からの目標物体の観測に基づいて可観測性グリッドを更新するステップと、推進システムを用いて、第２の観測点までの経路に沿ってロボットをナビゲートするステップと、ロボットの１つまたは複数のセンサを用いて、第２の第１の観測点から目標物体を観測するステップと、１つまたは複数のプロセッサを用いて、第２の観測点からの目標物体の観測に基づいて可観測性グリッドを更新するステップと、を含む。
【００１６】
一般に、本開示に記載される主題の別の革新的な態様は、コンピュータ実装方法として具現化されてよく、本方法は、１つまたは複数のプロセッサを用いて、移動検出システムによってナビゲートされる環境の観測尤度分布で可観測性グリッドを初期設定するステップと、１つまたは複数のプロセッサを用いて、観測点を求めて可観測性グリッドを用いる環境を探索するステップと、推進システムを用いて、移動検出システムを観測点までナビゲートするステップと、１つまたは複数のセンサ移動検出システムを用いて、観測点から目標物体を観測するステップと、を含む。
【００１７】
一般に、本開示に記載される主題の別の革新的な態様は、システムとして具現化されてよく、本システムは、環境を観測するように適合された１つまたは複数のセンサに結合された移動検出システム、を含み、移動検出システムは、環境の周囲で移動検出システムを移動させる推進システムを含み、移動検出システムは、移動検出システムによってナビゲートされる環境の観測尤度分布で可観測性グリッドを初期設定する動作と、観測点を求め
て可観測性グリッドを用いる環境を探索する動作と、推進システムを用いて、移動検出システムを観測点までナビゲートする動作と、１つまたは複数のセンサ移動検出システムを用いて、観測点から目標物体を観測する動作と、を含む動作を行うようプログラムされた１つまたは複数のコンピュータプロセッサを含む。
【００１８】
上記その他の実施態様は、各々任意選択で、以下の特徴のうちの１つまたは複数を含んでいてもよい。
可観測性グリッドが２つ以上の空間次元および角度次元を含む。
１つまたは複数のプロセッサを用いて、目標物体の種類および移動検出システムによって行われた知覚認識に基づいて局所的可観測性を調整することを決定するステップをさらに含む。
可観測性グリッドを初期設定するステップが、１つまたは複数のプロセッサを用いて、可観測性グリッドの観測尤度分布に基づいて移動検出システムで環境をサンプリングするステップをさらに含む。
可観測性グリッドを初期設定するステップが、１つまたは複数のプロセッサを用いて、障害物マップを取得するステップと、障害物マップを用いて、遮られている位置に対応する可観測性グリッド内のグリッドセルを識別するステップと、１つまたは複数のプロセッサを用いて、可観測性グリッド内の対応するグリッドセルの観測尤度値を低減させるステップとをさらに含む。
遮られている位置は移動検出システムによって到達できない位置である。
観測尤度分布が、一様分布、ランダムな初期分布、および既定の初期分布のうちの１つを含む。
可観測性グリッドを初期設定するステップが、環境内の目標物体の１つまたは複数の履歴位置を反映するコンテキストデータを処理するステップと、履歴位置に対応する可観測性グリッド内のグリッドセルの観測尤度値を増やすステップとを含む。
可観測性グリッドを初期設定するステップが、履歴位置、生物または無生物の共起、時刻、日付、照明条件、および天候条件のうちの１つまたは複数を反映するコンテキストデータを処理するステップを含む。
観測点から目標物体を観測したことに応答して、１つまたは複数のプロセッサを用いて、観測の結果を反映するように可観測性グリッドを更新するステップをさらに含む。
可観測性グリッドが結果に基づいて増加または減少するように更新される。
観測点と、トラバース速度（移動速度；traversal speed）、観測点までの距離、およ
び観測点と関連付けられる観測角度のうちの１つまたは複数と関連付けられた観測尤度値に基づいて観測点および観測点までの経路を決定するステップであって、移動検出システムを観測点までナビゲートするステップが経路を用いて行われる。
観測点から目標物体を観測するステップが、観測点で１回の観測を行うステップと、観測点の前の位置、観測点、および観測点を過ぎた位置のうちの１つまたは複数で観測を行うステップと、カメラ姿勢および観測場面のうちの１つまたは複数に変化がないか環境を獲得するステップのうちの１つを含む。
観測点における物体の有無を判定するステップが、１つまたは複数センサを用いて、移動検出システムによって観測を実行するステップと、１つまたは複数のプロセッサを用いて、観測により物体が検出されたと判定するステップと、１つまたは複数のプロセッサを用いて、観測によって物体が検出されたことに基づいて可観測性グリッドを用いてするステップと、をさらに含む。
【００１９】
上記その他の態様のうちの１つまたは複数の他の実施態様には、非一時的なコンピュータ記憶装置上で符号化された、方法の動作を行うように構成された、対応するシステム、装置、およびコンピュータプログラムが含まれる。
【００２０】
本明細書に記載される技術は、いくつかの点で特に有利である。例えば、本明細書の技
術では、角度に特異的な感知限界を含む、その基礎をなす検出認識アルゴリズムの様々な位置的問題を克服し、観察位置の選択に対する障害物の影響を組み込み、任意の（例えば、未知の環境や動的環境）ナビゲーションを改善し、履歴情報および人間の提言を含む様々な他のフィードバックを組み込み、探索を速めるためにコンテキスト知識を用いて観測位置尤度を決定し、尤度の高い領域における異なる角度からのサンプリングの繰り返しを助長し、人間の入力を組み込むことができる。しかし、この特徴および利点の一覧はすべてを網羅するものではなく、多くのその他の特徴および利点が企図されており、本開示の範囲内に含まれることを理解されたい。さらに、本開示で用いられる言語は、主に、読みやすさおよび教示の目的で選択されたものであり、本明細書で開示される主題の範囲を限定するためのものではないことを理解されたい。
【図面の簡単な説明】
【００２１】
【図１Ａ】複数の空間次元を有し、様々なグリッドセクションを含む例示的な可観測性グリッドの図である。
【図１Ｂ】可観測性グリッドの例示的な角度次元の図である。
【００２２】
【図２】可観測性グリッドを用いる環境において（１つまたは複数の）目標物体を観測する例示的な方法の流れ図である。
【００２３】
【図３】可観測性グリッドを初期設定するための例示的な方法の流れ図である。
【００２４】
【図４】例示的な可観測性グリッドの図である。
【００２５】
【図５】例示的な可観測性グリッドの図である。
【００２６】
【図６Ａ】例示的な可観測性グリッドの図である。
【図６Ｂ】例示的な可観測性グリッドの図である。
【００２７】
【図７Ａ】例示的な観測経路のサンプリングの図である。
【図７Ｂ】２つの異なる観測経路を示す図である。
【００２８】
【図８Ａ】障害物のない調整された局所的可観測性を示すグラフである。
【図８Ｂ】障害物のある調整された局所的可観測性を示すグラフである。
【００２９】
【図９】例示的なシステムのブロック図である。
【図１０】例示的な可観測性グリッド生成器のブロック図である。
【発明を実施するための形態】
【００３０】
本明細書では、検出システムが目標物体を観測するための観測位置を決定するための革新的な技術を開示する。この技術では、可観測性グリッド（observability grid）を用いて検出システムをどこに移動させるべきか決定する。可観測性グリッドは検出システムをどこに移動させるべきか記述し、これにより、検出システムが、１つまたは複数のセンサで物体を検出する際の角度に特異的な限界（例えば、顔を人物の背後から直接検出することができないこと）を克服し、観察位置の選択に対する障害物の影響を組み込み、以前の検出を用いて位置決定の位置の探索を速め、尤度の高いグリッド領域における異なる角度からのサンプリングの繰り返しを組み込むことがアルゴリズム的に可能になる。
【００３１】
可観測性グリッドは２つ以上の空間次元を含む。図１Ａは、少なくとも第１の次元１１（例えばｘ軸）と第２の次元１２（例えばｙ軸）とを有する可観測性グリッド１００の例の図であるが、可観測性グリッドは、後述する角度次元、第３の空間次元を反映するｚ軸
など、１つまたは複数のさらなる次元を含んでいてよいことを理解されたい。可観測性グリッド１００はグリッドセル１０８に分割されている。第１の次元１１および第２の次元１２、ならびに／または任意の他の次元（例えば、第３の次元、角度次元など）におけるグリッドセル１０８の周期性は、独立している、または協調的に均一、ランダムである、規則的な既定のパターンを有するなどとすることができる。
【００３２】
可観測性グリッド１００の１つまたは複数のグリッドセル１０８は、グリッドセル１０８で表される空間位置からの観測角度を定義する角度次元を含んでいてよい。例えば、車輪付き屋内ロボットのような検出システム９０３（例えば、図９も参照）は、１つまたは複数のセンサ９５５（例えば、図９参照）を含む感知システムを用いて室内の人を探索しており、有効視野は３０°であり、その場合、可観測性グリッドは３０°ごとにグリッドセルを画定する角度次元を含むことができる（例えば、全３６０°の視界に対して１２個のセルを有する）（他の変形も可能であり、企図されている）。図１Ｂは、可観測性グリッド１００の例示的な角度次元１５０の図である。図示の例では、角度次元１５０は、角度αを有する均一なセルに分割されている。角度αの値は、技術(technology)によって決定されてもよいし、事前に定められてもよい。いくつかの例では、この値は、本明細書の別の箇所で論じるように、初期分布と、サンプリング時および／または観測時などに学習された観測角度に基づいて設定されてもよい。
【００３３】
可観測性グリッド１００全体のグリッドセル値の分布は、最初は、均一であってもよく、ランダムであってもよく、それ以外に事前に定義されていてもよい。図１Ａに示す例では、選択グリッドセル１０８ａ、１０８ｂ、および１０８ｃは、限定ではなく例として強調されている。これらの選択グリッドセル１０８ａ、１０８ｂ、および１０８ｃには各々、図１Ａに含まれる異なるシェーディングによって反映される異なるグリッドセル値が割り当てられている。例えば、グリッドセル１０８ａは、可観測性グリッド１００の他の領域に対して相対的に高いグリッドセル値を有するグリッドセル領域に位置する。この例では、相対的に高いグリッドセル値は、検出システム９０３の適切な観測位置の、次いで可観測性グリッド１００の他の領域、よって可観測性グリッド１００が反映する環境の適切な観測位置の高い尤度を反映している。例えば、グリッドセル１０８ａに対応する位置から、検出システム９０３は、様々な視野角での最適な感知距離において目標物体の遮られていない見通し線を有する。
【００３４】
グリッドセル領域に位置するグリッドセル１０８ｂは、可観測性グリッド１００の他の領域に対して相対的に低いグリッドセル値を有する。この例では、相対的に低いグリッドセル値は、検出システム９０３の適切な観測位置の低い尤度を反映している。例えば、グリッドセル１０８ｂに対応する位置から、検出システム９０３は、様々な視野角での最適とは言えないが妥当な感知距離において目標物体の遮られていない見通し線を有する
【００３５】
グリッドセル領域に位置するグリッドセル１０８ｃは、より高いグリッドセル値またはより低いグリッドセル値を有するグリッドセルのような、可観測性グリッド１００の他の領域内のグリッドセルに対して相対的に中程度のグリッドセル値を有する。この例では、相対的に中程度のグリッドセル値は、検出システム９０３の適切な観測位置の中程度の尤度を反映している。例えば、グリッドセル１０８ｃに対応する位置から、検出システム９０３は、様々な視野角での目標物体の部分的に、または完全に遮られている見通し線を有する。
【００３６】
可観測性グリッド１００を用いて（１つまたは複数の）センサ９５５をどこに位置決定すべきか判定すると、検出システム９０３は、物体がどこに位置しているかに依存し、背景技術に記載したような望ましくない副作用をもたらすことの多いその場しのぎのヒューリスティックナビゲーションの完全に依存しなくても（１つまたは複数の）物体をより効
果的に探索することができるという有利な効果が得られる。このため検出システム９０３に、（１つまたは複数の）センサ９５５で物体を検出する際の角度に特異的な限界（例えば、顔を人物の背後から検出することができないこと）を克服させ、観察位置の選択に対する障害物の影響を組み込ませ、前の検出を用いて探索を速め、尤度の高い領域における異なる角度からのサンプリングの繰り返しを円滑に行わせることがさらに可能になる。
【００３７】
図２は、可観測性グリッドを用いる環境内の（１つまたは複数の）目標物体を観測するための例示的な方法２００の流れ図である。図２の記述は、推進システム９５７と検出管理アプリケーション９３５とを有する検出システム９０３を含む例示的なシステム９００のような、以下でさらに詳細に説明する図９および図１０に示す様々な参照構成要素を含む。様々な実施形態において、検出管理アプリケーション９３５は、グリッドイニシャライザ(grid initializer)１００２、物体検出器(object detector)１００４、グリッドア
ップデータ(grid updater)１００８、ナビゲータ(navigator)１０１０といった、様々な
形態を有する様々な構成要素を含むことができる。
【００３８】
方法２００の下で、ブロック２０２において、グリッドイニシャライザ１００２は、可動式の半自律型または完全自律型検出システム９０３によってナビゲートされる環境の観測尤度分布で可観測性グリッドを初期設定（初期化）する。
【００３９】
いくつかの実施形態では、グリッドは、方法２００の事前反復時に決定された既存の値を用いて初期設定されてよい。いくつかの実施形態では、観測尤度分布は、これだけに限定されないが、一様分布、ランダムな初期分布、および既定の初期分布を含む様々な異なる形態を有していてよい。一様分布は、可観測性グリッドを構成するグリッドセルの一部または全部の定数値を含むことができる。一様な初期分布では、検出システム９０３に、検出システム９０３の初期位置または所定の開始位置から始めて、環境内の観測位置を密にサンプリングするように指示することができる。ランダムな初期分布では、検出システム９０３に、環境をランダムにサンプリングし、観測を行うための任意の初期位置を選択するよう指示することができる。既定の初期分布では、検出システム９０３に、観測を行うための特定の位置を含む特定の探索パターンを得ようとするように指示することができる。観測が行われる際に、検出システム９０３は、環境内の様々な位置から行われた観測および／または検出システム９０３による環境内に含まれる物体との対話に基づく改善された尤度値で可観測性グリッドを更新することができる。
【００４０】
いくつかの実施形態では、環境が完全にまたは部分的に分かっている場合、システム９００は、検出システム９０３のモビリティおよび／または検出システム９０３の感知機能を妨げる可能性のある障害物をマップする障害物マップを反映する光学マップデータを記憶することができる。例えば、検出管理アプリケーション９３５は、光学マップデータをグリッドデータベース９９９に記憶することができ、障害物マップデータを取得し、それを処理して、環境をナビゲートし、観測している検出システム９０３の障害となるはずの可観測性グリッド内の特定のグリッドセルに対応する位置を識別することができる。特に、検出管理アプリケーション９３５のグリッドイニシャライザ１００２は、グリッドの他の尤度値と比較した場合に、環境内の障害物位置に対応するグリッドセルのより低い可観測性尤度を反映する尤度値を割り当てることができる。検出システム９０３は、これら不十分な尤度値を処理し、検出システム９０３が、リソースを拡張してこれらの遮られている位置に到達しようとせず、むしろ、検出システム９０３がより高い確率で観測に成功することを反映する、これら不十分な尤度値より高い値を有するグリッドセルに対応する遮られていない位置にナビゲートするように、遮られている位置を回避する経路を決定することができる。
【００４１】
いくつかの実施形態では、可観測性グリッドは、コンテキストデータで初期設定されて
よい。コンテキストデータは、過去に物体が検出された位置および／または角度を反映することができる。グリッドイニシャライザ１００２は、コンテキストデータを取得し、これを用いて、グリッドの異なるグリッドセルに尤度値を割り当てることができる。これにより、（１つまたは複数の）目標物体を観測するための望ましい位置に相対的に高い初期値を持たせて、検出システム９０３が、（１つまたは複数の）目標物体を観測するための他の位置を調査する前にそれらの位置から観測を開始できるようにすることができる。これにより、多くの場合有利には探索および観測を速めることができる。
【００４２】
コンテキスト知識をグリッドに追加する１つの非限定的な例は、以下のとおりである。人物が観測されたセンサ（例えば、カメラ）位置ｃ＝｛ｘｃ、ｙｃ、θｃ｝ごとに、可観測性グリッド内の重心（ｇ＝｛ｘｇ、ｙｇ、θｇ｝）を有するグリッドセルで人物を観測する尤度（Ｌ）は、正規分布方程式を有する事前に指定された共分散（Σｄｂ）を用いて以下のように求められる。
【数１】
2018142316.tif 000003
【数２】
2018142316.tif 000004
【００４３】
目標物体（例えば、人物）の検出に成功したセンサ位置集合Ｃが与えられると、可観測性グリッド内の単一のグリッドセルは対数尤度を用いて以下のように更新することができる。
【数３】
2018142316.tif 000005
【００４４】
グリッドに追加されるセンサ位置集合Ｃは、以前の観測値の集合全体を含む必要はないことに留意されたい。必須ではないが、場合によっては、探索を誘導するために代表的な部分集合を選択し、可観測性グリッドに追加してもよい。また、所望の位置がグリッドに追加された後で、グリッドイニシャライザ１００２は、グリッドを任意の範囲（例えば、［０，Ｘ］）にサイズ変更することもできる。ロボットが調査すべき環境内の点を選択する際のデッドロックおよび／または極小値を回避するために、この時点で小さなランダムノイズを追加することもできる。
【００４５】
追加の、または代替のコンテキストデータには、これだけに限定されないが、以下が含まれる。
・人または物体の共起―検出システム９０３が２つの物体を探索するよう要求され、Ａは１つの物体が検出された位置集合を表し、Ｂは第２の物体からの位置集合を表す場合には、グリッドイニシャライザ１００２は、ＡとＢの和集合（Ａ∪Ｂ）で可観測性グリッドを初期設定することができる。検出システム９０３が両方の物体を一緒に見つける（例えば、物体をＢｉｌｌとＭａｒｙに一緒に渡す）よう要求された場合には、グリッドイニシャライザ１００２はグリッドを初期設定するためにＡとＢの交わり（Ａ∩Ｂ）を生成することができる。
・時刻および／または日付に依存する初期設定―グリッドイニシャライザ１００２は、関心対象の時刻および／または日付に従ってグリッドを初期設定することができる。例えば、人が、異なる時刻に異なる位置で見つかる場合があり、そのため、それを反映するように特定の人物を探索するためのグリッドを初期設定することができる。
・照明条件の依存性―時刻および日付と同様に、照明条件も１日を通して変化する可能性があり、視覚的分類システムの品質に影響を及ぼす。以前の検出（例えば、類似した照明条件（正午ころ、夜間など）や、類似した天候条件（曇り、暴風、快晴など）を有する時間範囲の間に行われた）の中から選択すれば、自律型検出システム９０３が物体の視覚分類のための最適位置を見つけるのに役立つ。
【００４６】
物体Ａおよび物体Ｂを含む上記の例に関連して、図４〜図６Ｂは、コンテキストデータに基づいて生成されうる所与の環境と関連付けられた例示的な可観測性グリッド６００、６２０、６４０、６６０の図である。環境は、ソファ１０６、コーヒーテーブル１０４、机１１０、ベッド１１２、および／またはドレッサ１１４といった様々な家具を含んでいてよい。シェーディング６０１で陰影を付けた可観測性グリッド６００、６２０、６４０、および６６０内のエリアは、視野角に起因する相対的に低い尤度値を有するグリッドセル、および／または検出システム９０３が家具に衝突し、かつ／または家具によって遮られる確率を表す。シェーディング６０３で陰影を付けた可観測性グリッド６００、６２０、６４０、および６６０内のエリアは、シェーディング６０１と関連付けられたグリッドセルより高いが、可観測性グリッド内の他の領域より低い尤度値を有するグリッドセルを表す。検出システム９０３は、これらのエリア内のグリッドセルからの観測を行うことができるが、コンテキストデータは、そのような観測の結果は、より高い尤度の値を有するグリッドセルと関連付けられた領域からの結果ほど質的に良好ではないことを示している。シェーディング６０２で陰影を付けた可観測性グリッド６００、６２０、６４０、６６０内のエリアは、シェーディング６０３およびシェーディング６０１と関連付けられたグリッドセルおよび領域より高いが、シェーディング６０４で陰影を付けた領域内のグリッドセルより低い尤度値を有する。
【００４７】
可観測性グリッド６００は、Ｂと記述された物体Ａと関連付けられた位置集合を反映している。図６Ｂと関連付けられた可観測性グリッド６２０は、上述の物体Ｂと関連付けられた位置集合を反映している。可観測性グリッド６４０は、可観測性グリッド６００と可観測性グリッド６２０の和集合を反映しており、可観測性グリッド６６０は、可観測性グリッド６００と６２０の交わり（積集合）を反映している。和集合演算および／または交わり演算の結果は、ナビゲータ１０１０によって物体Ａと物体Ｂの両方を観測するための経路環境を決定するのに用いられた場合に、価値があり、信頼性が高く、正確な目標物体の認識、目標物体との対話および／または目標物体によって行われる動作の検出を提供する角度および位置から両方の物体を取り込む観測を生成することができる、改善された尤度のグリッドセル値を有するグリッドをもたらす。
【００４８】
図３は、可観測性グリッドを初期設定するための例示的な方法３００の流れ図である。いくつかの実施形態では、方法３００の動作のうちの１つまたは複数を方法２００のブロック２０２と関連付けて実行することができるが、他の方法の変形および動作順序も可能である。
【００４９】
ブロック３０２において、グリッドイニシャライザ１００２は、環境情報が分かっているかどうか判定することができる。ブロック３０２の判定が否定的である場合（３０２−Ｎｏ）、ブロック３０４において、グリッドイニシャライザ１００２は、初期観測尤度分布で可観測性グリッドを設定することができる。次いで、ブロック３０６において、グリッドイニシャライザ１００２は、可観測性グリッドの観測尤度分布に基づき、検出システム９０３で環境をサンプリングすることができる。例えば、グリッドイニシャライザ１００２は、検出システム９０３が、ナビゲータ１０１０によって決定された経路を用いて環境までナビゲートすることによって環境を熟知し、物体検出器１００８が、障害物および／または環境内で観測されるべき物体の位置を決定するために経路に沿って観測を行うように、ナビゲータ１０１０に環境のサンプリング３０６を開始するよう信号を送ることが
できる。いくつかの実施形態では、サンプリングは、環境内の物体の能動的な探索および／または観測と併せて行われてよい。別の実施形態では、サンプリングは、環境の探索とは独立して行われてよい。検出システム９０３が環境をナビゲートし、環境内の異なる観測点で様々な観測を行う際に、ブロック３０８において、グリッドアップデータ１００８は、所与の観測点と関連付けて物体検出器１００４から結果を反映する検出データを受け取り、検出データを処理して観測点における観測の結果を判定し、結果に依存して観測点に対応するグリッドセルと関連付けられた尤度値を更新する。
【００５０】
サンプリング中に、または知らされた探索経路／探索に沿って行われる観測について、グリッドアップデータ１００８は、観測点と関連付けられた空間座標を反映するナビゲータ１０１０からの位置データを受け取ってもよく、可観測性グリッド内のどのセルを更新すべきか決定するために、位置データを物体検出器１００４から受け取った検出データと相関させてもよい。グリッドアップデータ１００８は、検出データに反映された物体に基づいて尤度値を決定することができる。例えば、物体検出器１００４は、センサデータから特徴を抽出し、それらの特徴の物体認識を行ってそれらの識別決定を試み、認識された物体の信頼値を決定し、グリッドアップデータ１００８に信頼値を反映する結果データを提供することができ、グリッドアップデータ１００８は信頼値に基づいて対応する尤度値を生成することができる。次いで、グリッドアップデータ１００８は、生成された（１つまたは複数の）尤度値を、関心対象のグリッドセルと関連付けられた既存の（１つまたは複数の）尤度値と比較し、１つまたは複数の更新基準に基づいて既存の（１つまたは複数の）尤度値を生成された尤度値で更新することができる。更新基準は、当該観測点で類似した位置および向きから類似した尤度値が生成された必要回数、既存の尤度値と生成された尤度値との最小数値距離などを含むことができる。
【００５１】
場合によっては、グリッドアップデータ１００８は、検出結果に基づいて、可観測性グリッドの値を正または負に更新してもよい。別の例として、更新された尤度値は、目標物体を記述するセンサデータを取り込むべき更新された角度および／または位置であってよいが、他の変形も可能であり、企図されている。
【００５２】
グリッドイニシャライザ１００２が環境は分かっていると判定した場合（３０２−Ｙｅｓ）、ブロック３１０において、グリッドイニシャライザ１００２は、環境に障害物マップが利用できるかどうか判定することができる。例えば、グリッドイニシャライザ１００２は、環境の一意の識別子を用いて、一意の識別子と関連付けて記憶された障害物マップデータについてグリッドデータベース９９９に問合せすることができる。障害物マップデータが利用できる場合（３１０−Ｙｅｓ）、ブロック３１４において、グリッドイニシャライザ１００２は、障害物マッププロセスを取得し、ブロック３２２においてそれを処理して関連付けられたグリッドセルの尤度値を求めることができる。例えば、グリッドイニシャライザ１００２は、遮られている位置に対応する可観測性グリッド内のグリッドセルを識別し、可観測性グリッド内の対応するグリッドセルの観測尤度値を減らすことができる。遮られている位置は、移動検出システム９０３が到達することが難しく、または到達できない可能性があり、視野または検出システム９０３が行う他の感知機能を妨げる可能性もある。別の例では、グリッドイニシャライザ１００２は、遮られている位置に対応するグリッドセルの初期値を低減させ、かつ／または維持しながら、遮られていない位置に対応するグリッドセルを識別することができ、それらのセルの尤度値を増やすことができる。他の変形も可能であり、企図されている。
【００５３】
言い換えれば、グリッドイニシャライザ１００２は、障害物マップデータを取得し、それを処理して環境内の障害物の位置を決定し、障害物の存在を反映する対応する尤度値を生成して、ナビゲータ１０１０が経路を生成するときに、それらの障害物の位置について知らせることができるようにすることができる。
【００５４】
障害物マップデータが利用できない場合（３１０−Ｎｏ）、またはブロック３１４の動作から戻る際に、ブロック３１２において、グリッドイニシャライザ１００２は、コンテキストデータが環境に利用できるかどうか判定することができる。例えば、グリッドイニシャライザ１００２は、グリッドデータベース９９９に、環境と関連付けて記憶されたコンテキストデータ、例えば、環境と関連付けられた一意の識別子を用いて索引付けされたコンテキストデータなどを問合せすることができる。コンテキストデータが利用できる場合（３１２−Ｙｅｓ）、ブロック３１６において、グリッドイニシャライザ１００２は、（１つまたは複数の）検出システム９０３が物体を観測した履歴位置を反映するコンテキストデータを取得することができ、ブロック３１８において、コンテキストデータに基づいて尤度値を生成することができる。例えば、グリッドイニシャライザ１００２は、環境内の目標物体の（１つまたは複数の）履歴位置を反映するコンテキストデータを処理することができ、（１つまたは複数の）履歴位置に対応する可観測性グリッド内のグリッドセルの観測尤度値を増やすことができる。別の例として、グリッドイニシャライザ１００２は、履歴位置に対応する可観測性グリッド内のグリッドセルの観測尤度値を初期設定／修正し、かつ／または対応しない可観測性グリッド内のグリッドセルの尤度値を減らしてもよい。これにより、有利には、グリッドセルの値の尤度の初期ランダム性を制限し、検出システム９０３による目標物体を観測すべき信頼できる位置の識別をより迅速に可能にすることができる。
【００５５】
本明細書の別の箇所に記載されているように、グリッドイニシャライザ１００２によって処理されるコンテキストデータは、場合によっては、履歴位置、生物または無生物の物体の共起、時刻、日付、照明条件、および天候条件のうちの１つまたは複数を反映してもよい。これらの要因のうちの複数が場合によっては適用されてよく、グリッドイニシャライザ１００２は、これらの異なる要因と関連付けられた尤度を結合し、かつ／または交差させて結合尤度値を形成してもよく、どの要因が当該時点に最も影響を受けるかに依存して尤度値を生成するときにこれらの要因の各々に異なる重み付けをしてもよい。
【００５６】
ブロック２０４において、ナビゲータ１０１０は、可観測性グリッドを用いて環境を探索して観測点（目標物体を観測するための位置）を求める。グリッドは、目標の観測に成功する尤度が（他の位置の尤度値に対して）最も高い環境内の位置を示す尤度値を含む。いくつかの実施形態では、ナビゲータ１０１０は、最尤の（１つまたは複数の）位置および／または（１つまたは複数の）観測角度を反映する（１つまたは複数の）グリッドセル値に基づいて観測点を決定する。いくつかの実施形態では、ナビゲータ１０１０は、グリッドセルと関連付けられた空間座標および／または角度位置を反映する角度データを速度値に変換し、検出システム９０３の推進システム９５７に、検出システム９０３をその位置に移動させ、角度位置に基づいて検出システム９０３の（１つまたは複数の）センサ９５５を位置決定するよう命令することができる。
【００５７】
いくつかの実施形態では、環境を探索する際に、ナビゲータ１０１０は、環境をナビゲートするための経路を決定することができる。例えば、ナビゲータは、（１つまたは複数の）観測点および他の要因と関連付けられた（１つまたは複数の）観測尤度値に基づいて（１つまたは複数の）観測点および（１つまたは複数の）をトラバースする（移動；traverse）経路を決定することができ、これらの要因には、これだけに限定されないが、トラバース速度（移動速度；traversal speed）、観測点までの距離、および観測点と関連付
けられる観測角度のうちの１つまたは複数が含まれていてよい。次いで、ナビゲータ１０１０は、経路を用いて移動検出システム９０３を（１つまたは複数の）観測点までナビゲートすることができる。
【００５８】
ナビゲータ１０１０によって決定される経路は、環境をどの程度熟知しているかに応じ
て、正確さが変わる可能性がある。例えば、新しい環境または変更された環境において、グリッドイニシャライザ１００２は、様々な異なる分布を用いて環境のグリッドを初期設定することができる。例えば、図７Ａに示すように、尤度値の一様分布を用いると、ナビゲータ１０１０は検出システム９０３に経路７０４を用いて環境をナビゲートするよう命令することができ、（可観測性グリッド７００の）各グリッドセルが最初は同じ値を有するため、経路７０４では検出システム９０３は環境を繰り返し前進し、後退する。ランダムな初期分布を用いると、ナビゲータ１０１０は検出システム９０３に、経路７０６を用いて環境をナビゲートするよう命令することができ、経路７０６は、ランダムな分布によって決定された最高の初期尤度を有する様々な点に沿ってナビゲーションシステム９０３を誘導する。既定の初期分布を用いると、ナビゲータ１０１０は検出システム９０３に、初期分布に含まれる所定の尤度に基づいて決定された所定の経路７０８を用いて環境をナビゲートするよう命令することができる。例えば、最高の初期尤度は、環境の周辺に沿って検出システム９０３を誘導する経路を形成する。
【００５９】
経路にかかわらず、検出システム９０３は、その経路を遮っている障害物を感知し、かつ／または経路に沿った観測を行うことができ、物体が検出されたかどうかや、閉塞が検出されたかどうかなど、観測の結果に応じて、センサデータが収集された位置に対応するグリッドセルの尤度値を更新することができる。加えて、または代替として、検出システム９０３は、本明細書の別の箇所で論じるように、障害物の位置を反映する障害物マップデータを、グリッドデータベース９９９などの非一時的なデータストアに記憶することもできる。
【００６０】
いくつかの実施形態では、経路は、検出システム９０３の（１つまたは複数の）センサ９５５を介して受け取ったリアルタイムの感知入力に基づいて動的に更新することができる。経路は、複数の観測点を含んでいてよく、これだけに限定されないが、観測点までの距離、観測点の尤度値を含む１つまたは複数のランク付け基準に基づいて観測点までのナビゲーションを順序付けることができる。
【００６１】
例えば、図７Ｂに示すように、図７Ｂには、ソファ１０６、コーヒーテーブル１０４、机１１０、ベッド１１２、ドレッサ１１４などのような様々な品目を含む部屋といった環境を通る２つの異なる可能な観測経路７５０、７５２が示されている。経路７５０は、２つの観測点７５８および７５６を含み、経路７５２は、１つの観測点７５６を含む。目標物体７６０は、室内の観測点７５６（ソファ１０６と机１１０との間の領域）から観測に成功する可能性が最も高い。しかし、（観測点７５８によって反射される）コーヒーテーブル１０４に近い領域は、観測点７５６よりも（目標物体７６０の観測に成功する）可能性は低いが、やはり他の位置に対して相対的に可能性が高く、ロボットの開始位置（点７５４）により近い。より長い経路７５０を取り、まず観測点７５８までトラバースすることによって、ロボットは、最高値の位置（観測点７５６）まで直接移動した場合よりも速く複数の観測点を訪れることができる。対照的に、時間が探索範囲よりも多く重み付けされている場合、ナビゲータ１０１０は経路７５２を用い、最高の尤度値を有する点（点７５６）に直接ナビゲートすることを決定することができる。
【００６２】
上記の例は非限定的であり、多数の別の変形も可能であり、企図されていることを理解されたい。
【００６３】
ブロック２０６において、ナビゲータ１０１０は、推進システム９５７を用いて、検出システム９０３を観測点までナビゲートする。いくつかの実施形態では、ナビゲータ１０１０は、経路を用いて（１つまたは複数の）観測点までナビゲートすることができ、（１つまたは複数の）センサ９５５によって収集されたセンサデータおよび／または他の入力（ユーザフィードバック、サーバ要求、尤度値更新など）に基づいて当該経路を増強する
ことができる。経路を記述するデータは、（１つまたは複数の）センサ９５５を位置決定するための各観測点の空間座標および観測角度を含んでいてよく、ナビゲータ１０１０は、空間座標を、検出システム９０３の推進システム９７５を制御するための制御信号に変換することができ推進システム９７５は、電動式車輪、軌道、および／または他の機構を用いて、経路に沿って検出システム９０３を各観測点まで移動させ、かつ／または検出システム９０３を観測点に向ける。
【００６４】
ブロック２０８において、物体検出器１００４は、検出システム９０３の１つまたは複数のセンサ９５５を用いて、観測点から（１つまたは複数の）目標物体を観測する。別の例として、物体検出器１００４は、観測点で１回または複数回の観測を行ってもよく、観測点の前の位置、観測点、および観測点を過ぎた位置などのうちの１つまたは複数で観測を行ってもよい。
【００６５】
ブロック２１０において、物体検出器１００４は、観測結果が満足のいくものであるかどうか判定する。満足のいくものである場合、物体検出器は、ブロック２１４で可観測性グリッドを更新する。そうでない場合、物体検出器は、任意選択で、ブロック２１２およびブロック２１４でそれぞれ、局所的可観測性を調整し、かつ／または可観測性グリッドを更新する。
【００６６】
例えば、物体検出器１００４は、観測を行い次第、１つまたは複数の目標物体が検出されたかどうかを判定し、それに基づいてグリッドアップデータ１００８に信号を送って、可観測性グリッドを正方向または負方向、すなわち増加または減少するに更新することができる。
【００６７】
いくつかの実施形態では、物体検出器１００４は、カメラ姿勢および観測場面のうちの１つまたは複数に変化がないか環境を観測し、検出された場合にはその変化への適応をトリガすることができる。別の実施形態では、物体検出器１００４は、取り込まれているセンサデータ（例えば、１つまたは複数のカメラによって取り込まれている画像など）に基づき、グリッドアップデータ１００８によって、グリッドの（１つまたは複数の）対応するグリッドセルの尤度値の更新を絶えず、または反復的にトリガすることができる。
【００６８】
いくつかの実施形態では、ブロック２１２において、物体検出器１００４は、目標物体の種類および移動検出システム９０３によって行われた知覚認識に基づいて局所的可観測性を調整することを決定することができる。例えば、検出システム９０３の物体検出器１００４は、観測を実行し、観測下の物体が検出されたと判定し、判定したことに応答して、グリッド更新１００８が、ブロック２１４において、物体を検出する観測に基づいて可観測性グリッドを更新するのを遮ることができる。例えば、グリッドセルは、グリッドセルに対応する位置が特定の人物を観測するのに最適な場所であることを指示するある尤度値を反映する。しかし、取り込まれた画像データは、その人物が位置を変えていること、およびユーザの部分画像しか取り込まれなかったことを反映する。物体検出器１００４はグリッドアップデータ１００８に変更を知らせることができ、グリッド更新１００８は、関心対象の人物を含む場面を取り込むように（１つまたは複数の）センサを位置決定し直すために、当該グリッドセルの角度を更新することができる。
【００６９】
局所的可観測性を高めることができる様々な状況がある。場合によっては、局所的可観測性を高める決定は、探索されている目標および／または検出システム９０３によって用いられている知覚認識システム（例えば、センサまたは（１つまたは複数の）センサ９５５の組み合わせ）に依存する。例えば、検出システム９０３は、所与の場所で人物を検出することはできるが、その現在位置からそれらを一意に識別することができない。その場合、物体検出器１００４は、目標物体の近傍の新しい観測位置を得ようとすることができ
る。新しい観測点は、より近い距離、異なる角度、これらの組み合わせなどとすることができる。別の例では、場合によっては、（１つまたは複数の）センサがその視野または範囲を拡大できないこともあるため、（１つまたは複数の）センサ９５５は、目標物体と同じ場所に位置し、または目標物体に過度に近く位置する場合、目標物体を反映するデータを取り込むことができない可能性もある（例えば、目標物体を識別するには不十分な、部分的な、暗くて分かりにくい、または焦点の合っていないデータなどを検出する可能性もある）。そうした場合、物体検出器１００４は、検出された人物の周りの、その人物に向けられる可観測性を高めることができる。
【００７０】
より具体的な例では、目標物体が位置｛ｄｘ，ｄｙ｝で検出された場合、重心｛ｇｘ，ｇｙ，θ｝を有するグリッドセルについて、
【数４】
2018142316.tif 000006
【数５】
2018142316.tif 000007
【数６】
2018142316.tif 000008
であり、式中、Σｐｏｓ，ｏｕｔｅｒは、より大きい領域の共分散行列であり、Σｐｏｓ，ｉｎｎｅｒは、（１つまたは複数の）センサ９５５を配置すべきではない、内側のより確率の低いエリアを記述する共分散行列である。ｘの分散がｙの分散と同じである（σｘ＝σｙ）循環ガウシアンを仮定すると、外側ガウシアンを記述する分散は、内側ガウスシアンの分散よりも大きいはずである（すなわち、σｐｏｓ，ｏｕｔｅｒ＞σｐｏｓ，ｉｎｎｅｒ）。その場合、可観測性グリッドは以下のように更新される。
【数７】
2018142316.tif 000009
【００７１】
上記の例では、すべての観測角度が合計された場合には、この更新により、図８Ａに示すグラフ８００に反映されているように、高い尤度のドーナツ形の領域が生じ、図８Ａには、形状８０８の中心８１０に位置しうる検出人物への近接性の影響を観測するために、わずかに回転され、着色された（外側のグレー領域８０４の縁取り形状＝低尤度、濃い領域８０８＝高尤度）ドーナツ形８０６が示されている。
【００７２】
場合によっては、障害物を含む領域は、ロボットがそこに移動することができない（かつ／またはその存在を反映する尤度値がすでに割り当てられている）ので、更新プロセスで除外されてもよい。物体検出器１００４によって生成された形状が、図８Ｂのグラフ８２０に示されており、白い線／セル８２４は障害物を示している。次に尤度の高い位置を探す際に、ナビゲータ１０１０は、部屋の別の部分に移動する前に目標物体を異なる角度から観測しようと、検出システム９０３を、目標の周りの暗いエリア８２８エリアまで自動的にナビゲートすることができる。
【００７３】
上記の例では、特定の物体（例えば、特定の人物）を一意に識別しようとする前に、一意でない物体を見つけようと試みることができる。別の変形には以下が含まれうる。
・目標に関連した物体を検出すること。人物を探している場合は、これには、近くにあ
る目標の衣服（例えば、帽子やジャケット）、物体を表すその他のアクセサリや品目などを検出すること、目標物体とよく一緒にいる人々（例えば、友人や近くの同僚）を見つけることが含まれうるはずである。無生物の目標物体の例では、物体検出器１００４は関連付けられた同類の物体を検出することができるはずである（例えば、ディナープレートのような物体を見つける場合、物体検出器１００４は銀器、食品などを見つけることができるはずである）。いずれの場合も、物体検出器１００４は、場合によってはおそらくはより低尤度の内側領域なしで、検出の周辺の尤度を増やすことができるであろう。
・正であるが低い認識スコア。顔認識や物体認識など、物体検出器１００４によって用いられる認識システムは、尤度を指示する信頼スコアを返すことができる。スコアは高いが、一致を肯定するには低すぎる場合には、目標を見ることができるグリッドセルの可観測性を、上記の人物検出の例と同様に高めることができる。これは、場合によっては、物体検出器１００４の障害点に依存する可能性があり、距離、角度、特定の方向などを強調するように共分散行列を更新する必要が生じる場合がある。
・部屋の尤度。物体や人の中には、特定の環境と高度に関連付けられうるものがある。例えば、シェフを探す場合、物体検出器１００４は、場所ラベル付けアルゴリズム（place labeling algorithms）を用いてキッチンエリアを検出し、さらなる調査／検出を強制
するために可観測性グリッドに肯定的な証拠を追加することができる。
【００７４】
物体検出器１００４による観測点での観測時に新しいものが何も検出されなかった場合、物体検出器１００４は、場合によっては、グリッドセルまたは（１つもしくは複数の）センサ９５５の下で、かつ／またはその直近に位置するグリッドセルまたはセルの可観測性グリッドにおける尤度値を減らすことができる。これは、効果が負であることを除いて、上述の正の更新と同様である。現在のセンサ位置ｃとグリッドセルの重心ｇが与えられた場合、ｇにおける可観測性グリッドは、以下の式８を用いて更新することができる。
【００７５】
【数８】
2018142316.tif 000010
【００７６】
この場合、どちらも現在のセンサ位置に対して更新されるため、コンテキスト更新に用いられるのと同じ共分散行列（Σｄｂ）が用いられてよいが、同じであることは必須ではない。
【００７７】
いくつかの実施形態では、検出システム９０３は、人間のフィードバックを要求し、その結果に基づいて結果を可観測性グリッドに追加することができる。特に、指さし動作が、（１つまたは複数の）センサ９５５によって取り込まれ、物体検出器１００４によって処理され、解釈され、可観測性グリッドの対応するグリッドセルの尤度値を更新するのに用いられる。これらの値は、腕／手の姿勢や角度といった既知のセンサ位置からの肯定的なコンテキスト知識を反映することができる。尤度値は、正しい方向で指しているセルについて可観測性グリッドに正の円錐領域を追加することができる。
【００７８】
音声入力や言葉による入力などの聴覚音源も、（１つまたは複数の）センサ９５５によって取り込み、物体検出器１００４によって処理し、解釈し、感知すべき方向、部屋の構造および／もしく識別、ならびに／または調査すべき特定の環境位置を反映するように尤度値を更新するのに用いることができる。尤度値は、指示された方向、位置、部屋などから目標対象を観測するための増加を反映することができる。
【００７９】
ブロック２１２の動作が実行された場合には、方法２００はブロック２０８に戻って、後続の局所的観測などを行うことができる。ブロック２１４の動作が実行された場合には
、方法はブロック２０４に戻って、環境をさらに探索してもよく、ブロック２０６の後続の観測点に進むこともできる。別の変形では、方法２００は終了し、待機し、または他の方法に進むことができる。場合によっては、２０８、２１２、および／または２１４の終わりに、検出システム９０３が次の観測を行うために（１つまたは複数の）環境の周りおよび／または環境間を移動する際に方法２００および／または方法２００の態様を反復することもできる。
【００８０】
図９は、自律的物体検出のための例示的なシステム９００のブロック図である。図示のように、システム９００は、（線９２７で示すように）ユーザ９２５によってアクセスされ、かつ／またはユーザ９２５と対話することができる計算サーバ９０１および／または検出システム９０３を含むことができる。実施態様によっては、計算は、２つ以上のコンピューティングシステム（例えば、計算サーバ９０１および検出システム９０３、２つ以上の検出システム９０３）にわたって分散され、かつ／またはそれらの間で動的にシフトされてもよく、検出システム９０３によって独立して行われてもよい。よって、システム９００は、計算サーバ９０１を含む場合もあり、含まない場合もある。
【００８１】
計算サーバ９０１が含まれる実施形態では、検出システム９０３と計算サーバ９０１とは、それぞれ、信号線９０９および信号線９１１を介し、ネットワーク９０５を介して通信可能に結合されていてよい。例えば、検出システム９０３と計算サーバ９０１とは、センサデータ、特徴データ、検出データなどといったデータを交換するために、ネットワーク９０５を介して互いに通信可能に結合されていてよい。図９の信号線９０９および信号線９１１は、１つまたは複数の有線接続および／または無線接続を表していてよい。別の例として、検出システム９０３は、センサデータを処理のために計算サーバ９０１に送信することができ、計算サーバ９０１は、本明細書に記載したようにデータを処理して、物体を検出、認識し、認識された物体を記述するデータおよび／または結果を検出システム９０３が動作中に用いるために検出システム９０３に送ることができる。計算サーバ９０１が含まれない実施形態では、検出システム９０３は、物体、場面、人間の位置などを検出し認識するように、自律的に、または他の検出システム９０３（見えない）と連携して動作することができる。例えば、検出システム９０３は、本明細書で論じた計算を行うために、コンピュータネットワークを介して他の類似した検出システム９０３とネットワーク接続されていてよい。
【００８２】
図９には、単一の検出システム９０３と計算サーバ９０１とを示さしているが、様々な異なるシステム環境および構成が可能であり、企図されており、本開示の範囲内に含まれることを理解されたい。例えば、いくつかの実施形態は、その他の、またはより少ないコンピューティングデバイス、サービス、および／またはネットワークを含んでいてよく、様々な機能をローカルで、または他のコンピューティングデバイス上で、リモートで実装することができる。さらに、様々なエンティティが単一のコンピューティングデバイスまたはシステムに統合されていてもよく、追加のコンピューティングデバイスまたはシステムなどに分散されていてもよい。例えば、検出管理アプリケーション９３５は、コンピューティングデバイスおよび／またはシステムの組み合わせに記憶され、実行され、分散されていてもよく、１つのコンピューティングデバイスおよび／またはシステムにあってもよい。
【００８３】
ネットワーク９０５は、有線または無線の標準型のネットワークを含んでいてよく、スター構成、トークンリング構成、または他の公知の構成など、任意の数の構成を有していてよい。ネットワーク９０５は、１つまたは複数のローカル・エリア・ネットワーク（「ＬＡＮ」）、広域ネットワーク（「ＷＡＮ」）（例えばインターネット）、仮想私設網（「ＶＰＮ」）、ピアツーピアネットワーク、近距離無線通信ネットワーク（例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標））、セルラネットワーク（例えば、３Ｇ、４Ｇ、その他の世
代）、および／または複数のコンピューティングノードが通信するための任意の他の相互接続されたデータパスを含んでいてよい。データは、例えば、様々なインターネット層プロトコル、トランスポート層プロトコル、アプリケーション層プロトコルを含む様々な異なる通信プロトコルを用いて、ネットワーク９０５のノード間で、暗号化形態または非暗号化形態で送信されてよい。例えば、データは、伝送制御プロトコル／インターネットプロトコル（ＴＣＰ／ＩＰ）、ユーザ・データグラム・プロトコル（ＵＤＰ）、伝送制御プロトコル（ＴＣＰ）、ハイパーテキスト転送プロトコル（ＨＴＴＰ）、セキュアハイパーテキスト転送プロトコル（ＨＴＴＰＳ）、ＨＴＴＰ上の動的適応ストリーミング（ＤＡＳＨ）、リアルタイム・ストリーミング・プロトコル（ＲＴＳＰ）、リアルタイム・トランスポート・プロトコル（ＲＴＰ）およびリアルタイムトランスポート制御プロトコル（ＲＴＣＰ）、インターネットプロトコル上の音声（ＶＯＩＰ）、ファイル転送プロトコル（ＦＴＰ）、ＷｅｂＳｏｃｋｅｔ（ＷＳ）、無線アクセスプロトコル（ＷＡＰ）、様々なメッセージングプロトコル（ＳＭＳ、ＭＭＳ、ＸＭＳ、ＩＭＡＰ、ＳＭＴＰ、ＰＯＰ、ＷｅＢＤＡＶなど）、または他の公知のプロトコルを用いてネットワークを介して送信されてよい。
【００８４】
検出システム９０３は、動作を行うためにその環境内の物体の意義を知覚し、認識し、解釈することができる自律型コンピューティングシステムを表し、または自律型コンピューティングシステムに含まれていてよい。例えば、検出システム９０３は、自動車内の特定の運転者または同乗者を認識する能力を有するインテリジェントカーを表し、またはインテリジェントカーに組み込まれていてもよい。別の例では、検出システム９０３は、人間および／または他のロボットと協働して様々なタスクを行うことができるソーシャルロボットや、居住環境で動作する自律型システムを表し、またはこれらに組み込まれていてもよい。いくつかの実施形態では、検出システム９０３は、物体を検出し、認識するための構成要素として他のシステムに組み込まれていてよい。例えば、検出システム９０３は、ゲームシステム、テレビ、携帯電話、タブレット、ラップトップ、ワークステーション、サーバなどといったクライアント機器に組み込まれていてもよい。例えば、検出システム９０３は、特定の１人または複数の人物が特定の位置に存在しているかどうか判定するための機械またはコンピュータシステムに埋め込まれていてもよく、機械またはコンピュータシステムは、その特定の１人または複数の人物が特定の位置に存在している場合に特定のプログラムをオン／オフにし、または実行することができる。
【００８５】
いくつかの実施形態では、検出システム９０３は、（１つまたは複数の）センサ９５５、プロセッサ９９５（１つまたは複数のプロセッサを表していてよい）、メモリ９３７（１つまたは複数の非一時的なメモリデバイスを表す）、特徴データベース９９７、グリッドデータベース９９９、および／またはインターフェース９７５を含んでいてよい。図示のように、（１つまたは複数の）センサ９５５、プロセッサ９９５、メモリ９３７、推進システム９５７、インターフェース９７５、グリッドデータベース９９９、および特徴データベース９９７は、通信バス９０７を介して電子的に通信可能に結合されている。いくつかの実施形態では、検出管理アプリケーション９３５のインスタンスまたはその様々な構成要素を、本明細書の別の箇所に記載されているように、計算サーバ９０１上で記憶し、実行することができる。本明細書では、検出管理アプリケーション９３５のインスタンスを、個別に、かつ／または集合的に検出管理アプリケーション９３５とも呼ぶ。
【００８６】
本明細書では、プロセッサ９９５、（１つまたは複数の）センサ９５５、メモリ９３７、推進システム９５７、インターフェース９７５、グリッドデータベース９９９、特徴データベース９９７などの各々を、単数形または複数形で図示し、かつ／または言及する場合があるが、検出システム９０３は任意の適切な数のこれらの構成要素を含むことができることを理解されたい。さらに、構成に応じて、検出システム９０３は、オペレーティングシステム、プログラム、様々な追加センサ、モータ、移動組部品、スピーカ、表示装置
のような入出力装置、他の機器（例えば、計算サーバ９０１、他の検出システム９０３（不図示）、ネットワーク９０５に通信可能に結合された任意の他の適切なシステム（不図示）との無線通信のための送受信機およびアンテナなどといった、図１に明示されていない適切な要素も含んでいてよいことを理解されたい。
【００８７】
（１つまたは複数の）センサ９５５は、周辺環境からの光および他の信号を取り込み、そこから深さデータなどのセンサデータを生成し、かつ／または処理するように構成された１つまたは複数のセンサを含んでいてよい。例えば、（１つまたは複数の）センサ９５５は、これだけに限定されないが、ＲＧＢ−Ｄカメラ、ステレオカメラ、構造化光カメラ／スキャナ、飛行時間カメラ、干渉計、変調イメージャ、レーザ距離計、ライトフィールドカメラ、高感度ＣＣＤカメラなどといった距離カメラを含んでいてよいが、これだけに限定されないが、超音波センサ、カラーカメラ、赤外線カメラなどといった他の種類のセンサが用いられてもよいことを理解されたい。いくつかの実施形態では、（１つまたは複数の）センサ９５５および／または検出システム９０３は、加速度計、ジャイロスコープ、温度計、気圧計、熱電対、マイクロフォン、他の従来の感知機器といった、異なる種類のセンサの組み合わせを含んでいてよい。（１つまたは複数の）センサ９５５は、プロセッサ９９５に組み込まれていてもよく、無線接続または有線接続を介してプロセッサに結合される別個のコントローラを含む別個の機器であってもよい。他の変形も可能であり、企図されている。
【００８８】
プロセッサ９９５は、任意のプロセッサベースのコンピューティングデバイスを含んでいてよい。プロセッサ９９５は、本明細書の別の箇所に記載されているように、（１つまたは複数の）センサ９５５からセンサデータを受け取り、センサデータを処理し、処理に基づいてインターフェース９７５を介して提示するための結果を生成し、かつ／または提供し、処理に基づいて様々なプログラムをトリガし、処理に基づいて検出システム９０３または関連付けられたシステムの挙動および／または移動を制御し、計算サーバ９０１と協働してセンサデータを処理することができる。いくつかの実施形態では、プロセッサ９９５は、処理されたセンサデータおよび／またはそこから処理された結果を特徴データベース９９７に記憶することができる。
【００８９】
プロセッサ９９５は、様々な入出力操作、論理演算、および／または数学演算を行うことによってソフトウェア命令を実行することができる。プロセッサ９９５は、データ信号を処理するための様々な標準の、またはカスタマイズされたコンピューティングアーキテクチャを有することができる。プロセッサ９９５は、物理的および／または仮想的であってよく、単一のコアまたは複数の処理装置および／もしくはコアを含んでいてよい。いくつかの実施態様では、プロセッサ９９５は、電子表示信号を生成して表示装置（不図示）に提供し、画像の表示をサポートし、画像を取り込み、送信し、様々な種類の特徴抽出およびサンプリングなどを含む複雑なタスクを実行することができる。いくつかの実施形態では、プロセッサ９９５は、メモリ９３７のデータおよび命令にアクセスし、メモリ９３７にデータを記憶するためにバス９０７を介してメモリ９３７に結合されていてよい。バス９０７は、プロセッサ９９５を検出システム９０３のその他の構成要素に結合することができる。プロセッサ９９５および検出管理アプリケーション９３５については、本明細書の別の箇所に詳細に記載されている。
【００９０】
メモリ９３７は、データを記憶し、コンピューティングシステムのその他の構成要素（例えば、検出システム９０３、検出システム管理サーバ９０１など）にデータへのアクセスを提供することができる。いくつかの実施態様では、メモリ９３７は、プロセッサ９９５によって実行される命令および／またはデータを記憶することができる。例えば、メモリ９３７は、検出管理アプリケーション９３５および／またはその構成要素を記憶することができる。またメモリ９３７は、例えば、オペレーティングシステム、ハードウェアド
ライバ、ファームウェア、他のソフトウェアアプリケーション、データベースなどを含めて、他の命令およびデータを記憶することもできる。メモリ９３７は、プロセッサ９９５およびコンピューティングデバイス２００のその他の構成要素と通信するためにバス２２０に結合されていてよい。
【００９１】
メモリ９３７は、１つまたは複数の非一時的なコンピュータ使用可能（例えば、読み取り可能、書き込み可能などの）媒体を含み、媒体は、プロセッサ９９５が処理するための、またはプロセッサ９９５と接続する命令、データ、コンピュータプログラム、ソフトウェア、コード、ルーチンなどを含み、記憶し、伝達し、伝搬し、または搬送することができる装置またはデバイスを含むことができる。いくつかの実施態様では、メモリ９３７は、揮発性メモリおよび不揮発性メモリのうちの１つまたは複数を含むことができる。例えば、メモリ９３７には、これだけに限定されないが、ダイナミック・ランダム・アクセス・メモリ（ＤＲＡＭ）デバイス、スタティック・ランダム・アクセス・メモリ（ＳＲＡＭ）デバイス、ディスクリート・メモリ・デバイス（例えば、ＰＲＯＭ、ＦＰＲＯＭ  、ＲＯＭ）、ハード・ディスク・ドライブ、光ディスクドライブ（ＣＤ、ＤＶＤ、Ｂｌｕ−ｒａｙ（登録商標）など）が含まれうる。メモリ９３７は、単一のデバイスであってもよく、複数の種類のデバイスおよび構成を含んでもよいことを理解されたい。
【００９２】
インターフェース９７５は、システム９００の他のコンピューティングエンティティおよび／またはシステム９００のユーザとの通信を提供する。インターフェース９７５は、任意の数の入出力装置を含んでいてよい。場合によっては、インターフェース９７５は、データを送受信するための１つまたは複数の有線インターフェースおよび／または無線トランシーバを含む。インターフェース９７５は、ネットワーク９０５に結合し、（構成に応じて）検出システム９０３および／または計算サーバ９０１などの他のコンピューティングノードと有線または無線で通信することができる。インターフェース９７５は、ネットワーク９０５に関して上述したような標準的な通信方法を用いて他のコンピューティングノードとデータを交換することができる。
【００９３】
インターフェース９７５は、ユーザ９２５とプロセッサ９９５との間の通信を処理するハードウェアを含むことができる。例えば、インターフェース９７５は、ユーザ９２５に検出情報を表示するための画面、ユーザ９２５に音情報を出力するためのスピーカ、音および／または音声コマンドを取り込むためのマイクロフォン、インジケータ（例えばＬＥＤ）、ならびにユーザ９２５との通信を円滑化する任意の他の入出力構成要素のうちの１つまたは複数を含んでいてよい。いくつかの実施形態では、インターフェース９７５は、プロセッサ９９５からの出力をユーザ９２５に送信するように構成されている。例えば、インターフェース９７５は、ユーザ９２５が近傍にいることをプロセッサ９９５が検出したことに応答して、ユーザ９２５に対して音声による挨拶を再生するためのオーディオシステムを含む。インターフェース９７５は、本明細書に記載されている機能を提供するための他の種類の機器を含んでいてもよいことを理解されたい。
【００９４】
ユーザ９２５は、人間のユーザとすることができる。一実施形態では、ユーザ９２５は道路上の車両に座っている運転者または同乗者である。別の実施形態では、ユーザ９２５は、ロボットと対話する敷地内に位置する人間である。別の実施形態では、ユーザは、コンピューティングデバイスの従来のユーザである。ユーザ９２５は、プロセッサ９９５との間で異なる種類のデータを送受信するインターフェース９７５と対話し、またはそれ以外の方法で入力を提供し、かつ／またはインターフェース９７５からの出力を受け取ることができる。
【００９５】
グリッドデータベース９９９および／または特徴データベース９９７は、１つまたは複数のスタティック・ランダム・アクセス・メモリ（ＳＲＡＭ）デバイス、フラッシュメモ
リ、ハード・ディスク・ドライブ、ディスクベースのメモリデバイス、他の何らかの公知の揮発性もしくは不揮発性の物理記憶装置といった、非一時的な１つまたは複数の記憶媒体に記憶されている。場合によっては、グリッドデータベース９９９および／または特徴データベース９９７は、メモリ９３７にデータを記憶することもできる。いくつかの例では、グリッドデータベース９９９および／または特徴データベース９９７は、検出システム９０３に、または検出システム９０３とは異なるが、検出システム９０３に結合され、または検出システム９０３によってアクセス可能な別のコンピューティングデバイスおよび／または記憶システムに含まれていてよい。場合によっては、データベース９９７および９９９は、検出システム９０３および／または計算サーバ９０１が操作できるデータベース管理システム（ＤＢＭＳ）と関連付けてデータを記憶することもできる。例えば、ＤＢＭＳは、構造化照会言語（ＳＱＬ）ＤＢＭＳ、ＮｏＳＱＬ  ＤＭＢＳ、フラットファイルシステム、従来のファイルシステムなどを含むこともできる。場合によっては、ＤＢＭＳは、行および列からなる多次元テーブルにデータを記憶し、プログラム演算を用いてデータの行の操作、すなわち挿入、問合せ、更新、および／または削除を行うこともできる。特徴データベース９９７およびグリッドデータベース９９９のさらなる態様については後述する。
【００９６】
計算サーバ９０１は、検出システム９０３に物体の検出および認識を円滑に行わせる、プロセッサ（例えば、プロセッサ９９５）（不図示）と、非一時的なコンピュータ可読記憶媒体（例えば、メモリ９３７）（不図示）とを有する１つまたは複数のコンピューティングデバイスである。いくつかの実施形態では、計算サーバ９０１は、検出管理アプリケーション９３５のインスタンスを含む。ネットワークベースの実施形態では、計算サーバ９０１は、検出システム９０３および／または他の関連情報源から、センサデータ、検出データ、グリッドデータ、位置データ、および／または本明細書で論じた他の任意のデータを受け取り、データを処理し、処理の結果を要求側エンティティ（例えば、検出システム９０３）に送ることができる。
【００９７】
検出管理アプリケーション９３５は、センサデータを受け取るために（１つまたは複数の）センサ９５５に結合されていてよい。いくつかの実施形態では、（１つまたは複数の）センサ９５５から受け取られるセンサデータは、環境の画像を記述する画像データを含むことができる。画像は、１つまたは複数の物体を含む場面を描写する画像であってよい。物体は、生きている物体または生きていない物体、生物または無生物などとすることができる。例示的な物体には、これだけに限定されないが、人間、動物、家具、備品、車、道具などが含まれる。
【００９８】
図１０は、例示的な検出管理アプリケーション９３５のブロック図であり、検出管理アプリケーション９３５は、グリッドイニシャライザ１００２、物体検出器１００４、グリッドアップデータ１００８、およびナビゲータ１０１０を含んでいてよいが、検出モジュール１３６は、その他の構成要素を含んでいてよいこと、および／または様々な構成要素が単一のモジュールに組み合わされ、もしくは追加のモジュールに分割されてもよいことを理解されたい。
【００９９】
グリッドイニシャライザ１００２、物体検出器１００４、グリッドアップデータ１００８、および／またはナビゲータ１０１０は、ソフトウェア、ハードウェア、またはこれらの組み合わせとして実装されてよい。いくつかの実施態様では、グリッドイニシャライザ１００２、物体検出器１００４、グリッドアップデータ１００８、および／またはナビゲータ１０１０は、バス２２０および／またはプロセッサ９９５によって相互に、かつ／またはコンピューティングデバイスのその他の構成要素に通信可能に結合されていてよい。いくつかの実施態様では、グリッドイニシャライザ１００２、物体検出器１００４、グリッドアップデータ１００８、および／またはナビゲータ１０１０のうちの１つまたは複数
は、それらの機能を提供するためにプロセッサ９９５によって実行可能な命令のセットである。別の実施態様では、グリッドイニシャライザ１００２、物体検出器１００４、グリッドアップデータ１００８、および／またはナビゲータ１０１０のうちの１つまたは複数は、メモリ９３７に記憶されており、それらの機能を提供するためにプロセッサ９９５によってアクセス可能、実行可能である。前述の実施態様のいずれかにおいて、グリッドイニシャライザ１００２、物体検出器１００４、グリッドアップデータ１００８、および／またはナビゲータ１０１０は、プロセッサ９９５およびコンピューティングデバイスの他の構成要素（例えば、検出システム９０３、サーバ９０１など）と協働し、通信するように適合されていてよい。
【０１００】
グリッドイニシャライザ１００２、物体検出器１００４、グリッドアップデータ１００８、および／またはナビゲータ１０１０の別の構造、動作、および／または機能性については、本明細書の別の箇所で詳細に論じられている。
【０１０１】
以上の説明では、本発明を十分に理解できるように、多くの詳細について説明した。しかしながら、各実施形態はこれらの具体的な詳細無しでも良いことは当業者にとって明らかであろう。また、説明が不明瞭になることを避けるために、構造や装置をブロック図の形式で表すこともある。たとえば、一実施形態は、ユーザインタフェースおよび特定のハードウェアとともに説明される。しかし、ここでの説明は、データおよびコマンドを受信する任意のタイプの計算装置および任意の周辺機器について適用できる。
【０１０２】
以上の詳細な説明の一部は、非一時的（non-transitory）なコンピュータ可読記憶媒体に記憶されたデータビットに対する動作のアルゴリズムおよび記号的表現として提供される。これらのアルゴリズム的な説明および表現は、データ処理技術分野の当業者によって、他の当業者に対して自らの成果の本質を最も効果的に説明するために用いられるものである。なお、本明細書において（また一般に）アルゴリズムとは、所望の結果を得るための論理的な手順を意味する。処理のステップは、物理量を物理的に操作するものである。必ずしも必須ではないが、通常は、これらの量は記憶・伝送・結合・比較およびその他の処理が可能な電気的または磁気的信号の形式を取る。通例にしたがって、これらの信号をビット・値・要素・エレメント・シンボル・キャラクタ・項・数値などとして称することが簡便である。
【０１０３】
なお、これらの用語および類似する用語はいずれも、適切な物理量と関連付いているものであり、これら物理量に対する簡易的なラベルに過ぎないということに留意する必要がある。説明から明らかなように、特に断らない限りは、本明細書において「処理」「計算」「コンピュータ計算（処理）」「判断」「表示」等の用語を用いた説明は、コンピュータシステムや類似の電子的計算装置の動作および処理であって、コンピュータシステムのレジスタやメモリ内の物理的（電子的）量を、他のメモリやレジスタまたは同様の情報ストレージや通信装置、表示装置内の物理量として表される他のデータへ操作および変形する動作および処理を意味する。
【０１０４】
本発明は、本明細書で説明される動作を実行する装置にも関する。この装置は要求される目的のために特別に製造されるものであっても良いし、汎用コンピュータを用いて構成しコンピュータ内に格納されるプログラムによって選択的に実行されたり再構成されたりするものであっても良い。このようなコンピュータプログラムは、コンピュータのシステムバスに接続可能な、例えばフロッピー（登録商標）ディスク・光ディスク・ＣＤ−ＲＯＭ・ＭＯディスク・磁気ディスクなど任意のタイプのディスク、読み込み専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、ＥＰＲＯＭ、ＥＥＰＲＯＭ、磁気カード、フラッシュメモリ、光学式カード、電子的命令を格納するために適した任意のタイプの媒体などの、非一時的なコンピュータ可読記憶媒体に記憶される。
【０１０５】
発明の具体的な実施形態は、完全にハードウェアによって実現されるものでも良いし、完全にソフトウェアによって実現されるものでも良いし、ハードウェアとソフトウェアの両方によって実現されるものでも良い。好ましい実施形態は、ソフトウェアによって実現される。ここでソフトウェアとは、ファームウェア、常駐ソフトウェア、マイクロコードやその他のソフトウェアを含むものである。さらに、ある実施形態は、コンピュータが利用あるいは読み込み可能な記憶媒体からアクセス可能なコンピュータプログラムプロダクトの形態を取る。この記憶媒体は、コンピュータや任意の命令実行システムによってあるいはそれらと共に利用されるプログラムコードを提供する。コンピュータが利用あるいは読み込み可能な記憶媒体とは、命令実行システムや装置によってあるいはそれらと共に利用されるプログラムを、保持、格納、通信、伝搬および転送可能な任意の装置を指す。
【０１０６】
プログラムコードを格納・実行するために適したデータ処理システムは、システムバスを介して記憶素子に直接または間接的に接続された少なくとも１つのプロセッサを有する。記憶素子は、プログラムコードの実際の実行に際して使われるローカルメモリや、大容量記憶装置や、実行中に大容量記憶装置からデータを取得する回数を減らすためにいくつかのプログラムコードを一時的に記憶するキャッシュメモリなどを含む。
入力／出力（Ｉ／Ｏ）装置は、例えばキーボード、ディスプレイ、ポインティング装置などであるが、これらはＩ／Ｏコントローラを介して直接あるいは間接的にシステムに接続される。
【０１０７】
システムにはネットワークアダプタも接続されており、これにより、私的ネットワークや公共ネットワークを介して他のデータ処理システムやリモートにあるプリンタや記憶装置に接続される。モデム、ケーブルモデム、イーサネット（登録商標）は、現在利用可能なネットワークアダプタのほんの一例である。
【０１０８】
最後に、本明細書において提示されるアルゴリズムおよび表示は特定のコンピュータや他の装置と本来的に関連するものではない。本明細書における説明にしたがったプログラムを有する種々の汎用システムを用いることができるし、また要求された処理ステップを実行するための特定用途の装置を製作することが適した場合もある。これら種々のシステムに要求される構成は、以上の説明において明らかにされる。さらに、本発明は、特定のプログラミング言語と関連づけられるものではない。本明細書で説明される本発明の内容を実装するために種々のプログラミング言語を利用できることは明らかであろう。
【０１０９】
実施形態の前述の説明は、例示と説明を目的として行われたものである。したがって、開示された実施形態が本発明の全てではないし、本発明を上記の実施形態に限定するものでもない。本発明は、上記の開示にしたがって、種々の変形が可能である。本発明の範囲は上述の実施形態に限定解釈されるべきではなく、特許請求の範囲にしたがって解釈されるべきである。本発明の技術に詳しい者であれば、本発明はその思想や本質的特徴から離れることなくその他の種々の形態で実現できることを理解できるであろう。同様に、モジュール・処理・特徴・属性・方法およびその他の本発明の態様に関する名前付けや分割方法は必須なものでものないし重要でもない。また、本発明やその特徴を実装する機構は異なる名前や分割方法や構成を備えていても構わない。
【０１１０】
さらに、当業者であれば、モジュール・処理・特徴・属性・方法およびその他の本発明の態様は、ソフトウェア、ハードウェア、ファームウェアもしくはこれらの組合せとして実装できることを理解できるであろう。また、本発明をソフトウェアとして実装する場合には、モジュールなどの各要素は、どのような様式で実装されても良い。例えば、スタンドアローンのプログラム、大きなプログラムの一部、異なる複数のプログラム、静的あるいは動的なリンクライブラリー、カーネルローダブルモジュール、デバイスドライバー、
その他コンピュータプログラミングの当業者にとって既知な方式として実装することができる。さらに、本発明の実装は特定のプログラミング言語に限定されるものではないし、特定のオペレーティングシステムや環境に限定されるものでもない。以上のように、上記の本発明の説明は限定的なものではなく例示的なものであり、本発明の範囲は添付の特許請求の範囲にしたがって定められる。
【符号の説明】
【０１１１】
１１  第１の次元
１２  第２の次元
１１０  机
１１２  ベッド
１１４  ドレッサ
９０１  検出システム管理サーバ
９０３  （１つまたは複数の）検出システム
９０５  ネットワーク
９２５  ユーザ
９３５  検出管理アプリケーション
９３７  メモリ
９５５  （１つまたは複数の）センサ
９５７  推進システム
９７５  インターフェース
９９５  プロセッサ
９９７  特徴データベース
９９９  グリッドデータベース
１００２  グリッドイニシャライザ
１００４  物体検出器
１００８  グリッドアップデータ
１０１０  ナビゲータ
【図１Ａ】
2018142316.tif 000011
【図１Ｂ】
2018142316.tif 000012
【図２】
2018142316.tif 000013
【図３】
2018142316.tif 000014
【図４】
2018142316.tif 000015
【図５】
2018142316.tif 000016
【図６Ａ】
2018142316.tif 000017
【図６Ｂ】
2018142316.tif 000018
【図７Ａ】
2018142316.tif 000019
【図７Ｂ】
2018142316.tif 000020
【図８Ａ】
2018142316.tif 000021
【図８Ｂ】
2018142316.tif 000022
【図９】
2018142316.tif 000023
【図１０】
2018142316.tif 000024