(57)【要約】【課題】  仮にスタック状態に陥ってしまったとしても、そこからの回復を図ることが可能な自律移動装置、方法及び３次元モデリングシステムを提供すること。【解決手段】  一実施形態によれば、自律移動装置は、所定の空間を探索空間として自律的に移動可能である。この自律移動装置は、探索空間を指定する指定手段と、探索空間を移動する際の状態に対する次の行動を示す方策を設定する第１設定手段と、設定された方策にしたがって探索空間を移動し、３次元モデルを生成するために３次元モデリング情報を収集する収集手段と、設定された方策で探索空間を移動することを終了させるための終了条件を設定する第２設定手段とを備え、第１設定手段は、終了条件が満たされた場合、方策を、現在設定されている方策とは異なる方策に切り替える。【選択図】      図３
2020027574.tif 000002
【特許請求の範囲】
【請求項１】
所定の空間を探索空間として自律的に移動可能な自律移動装置であって、
前記探索空間を指定する指定手段と、
前記探索空間を移動する際の状態に対する次の行動を示す方策を設定する第１設定手段と、
前記設定された方策にしたがって前記探索空間を移動し、３次元モデルを生成するために３次元モデリング情報を収集する収集手段と、
前記設定された方策で前記探索空間を移動することを終了させるための終了条件を設定する第２設定手段と
を具備し、
前記第１設定手段は、
前記終了条件が満たされた場合、前記方策を、現在設定されている方策とは異なる方策に切り替える自律移動装置。
【請求項２】
前記第１設定手段は、
前記終了条件が満たされた場合、前記方策を、現在設定されている方策とは行動選択方針が異なる方策に切り替える請求項１に記載の自律移動装置。
【請求項３】
前記指定された探索空間を複数の領域に分割する分割手段
をさらに具備し、
前記第２設定手段は、
前記指定された探索空間または前記分割された各領域に対して前記終了条件を設定する請求項１または請求項２に記載の自律移動装置。
【請求項４】
前記第２設定手段は、
前記探索空間または前記各領域に対して、移動時間を前記終了条件として設定する請求項３に記載の自律移動装置。
【請求項５】
前記第２設定手段は、
前記探索空間または前記各領域に対して、前記収集手段によって収集される３次元モデリング情報の数を前記終了条件として設定する請求項３に記載の自律移動装置。
【請求項６】
前記収集された３次元モデリング情報に基づいて前記探索空間を対象にした３次元モデルを生成する生成手段と、
前記生成された３次元モデルが十分な品質であるか否かを評価する評価手段と
をさらに具備する請求項３に記載の自律移動装置。
【請求項７】
前記分割手段は、
前記収集された３次元モデリング情報に基づいて生成される前記探索空間の３次元モデルが十分な品質でなかった場合、前記探索空間を複数の領域に再度分割する請求項３に記載の自律移動装置。
【請求項８】
所定の空間を探索空間として自律的に移動可能な自律移動装置であって、
前記探索空間を指定する指定手段と、
前記探索空間を移動する際の状態に対する次の行動を示す方策を設定する第１設定手段と、
前記設定された方策にしたがって前記探索空間を移動し、３次元モデルを生成するために３次元モデリング情報を収集する収集手段と、
前記設定された方策で前記探索空間を移動することを終了させるための終了条件を設定する第２設定手段と
を具備し、
前記第１設定手段は、
前記終了条件が満たされた場合、この旨をユーザに通知する自律移動装置。
【請求項９】
前記第１設定手段は、
前記ユーザの操作に応じて、動作モードを、自律的に移動可能な第１モードから当該ユーザの操作に応じて移動する第２モードに切り替える請求項８に記載の自律移動装置。
【請求項１０】
所定の空間を探索空間として自律的に移動可能な自律移動装置に適用される方法であって、
前記探索空間を指定することと、
前記探索空間を移動する際の状態に対する次の行動を示す方策を設定することと、
前記設定された方策にしたがって前記探索空間を移動し、３次元モデルを生成するために３次元モデリング情報を収集することと、
前記設定された方策で前記探索空間を移動することを終了させるための終了条件を設定することと、
前記終了条件が満たされた場合、前記方策を、現在設定されている方策とは異なる方策に切り替えることと
を具備する方法。
【請求項１１】
所定の空間を探索空間として自律的に移動可能な自律移動装置と、ユーザによって操作される情報処理装置とが通信可能に接続される３次元モデリングシステムであって、
前記自律移動装置は、
前記探索空間を指定する指定手段と、
前記探索空間を移動する際の状態に対する次の行動を示す方策を設定する第１設定手段と、
前記設定された方策にしたがって前記探索空間を移動して、３次元モデルを生成するために３次元モデリング情報を収集し、当該収集された３次元モデリング情報を前記情報処理装置に送信する送信手段と、
前記設定された方策で前記探索空間を移動することを終了させるための終了条件を設定する第２設定手段と
を具備し、
前記情報処理装置は、
前記自律移動装置から送信された前記３次元モデリング情報を受信し、当該受信された３次元モデリング情報に基づいて前記探索空間を対象にした３次元モデルを生成する生成手段と、
前記生成された３次元モデルが十分な品質であるか否かを評価する評価手段と
を具備し、
前記第１設定手段は、
前記終了条件が満たされた場合、前記方策を、現在設定されている方策とは異なる方策に切り替える３次元モデリングシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、自律移動装置、方法及び３次元モデリングシステムに関する。
【背景技術】
【０００２】
近年、様々な分野においてロボットが利用される機会が増えてきている。例えば、街や部屋等の３次元モデルを生成する際にも、自律的に移動可能なロボットを利用して、３次元モデルを生成するのに必要な情報の収集が行われている。
例えば、３次元モデルを生成したい対象が存在する空間において、自律的に移動可能な複数台のロボットを移動させて、３次元モデルを生成するのに必要な情報を収集し、収集された情報に基づいて３次元モデルを生成する技術が考案されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−１０９３２５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、自律的に移動可能な複数台のロボットにとっては未知の空間を移動して、情報収集を行う必要があるので、情報収集が完了するまでに長時間を要してしまったり、情報収集が途中から進まなくなるスタック状態に陥ってしまったりといった不都合が生じる恐れがある。
【０００５】
本発明の実施形態が解決しようとする課題は、仮にスタック状態に陥ってしまったとしても、そこからの回復を図ることが可能な自律移動装置、方法及び３次元モデリングシステムを提供することである。
【課題を解決するための手段】
【０００６】
一実施形態によれば、自律移動装置は、所定の空間を探索空間として自律的に移動可能である。前記自律移動装置は、前記探索空間を指定する指定手段と、前記探索空間を移動する際の状態に対する次の行動を示す方策を設定する第１設定手段と、前記設定された方策にしたがって前記探索空間を移動し、３次元モデルを生成するために３次元モデリング情報を収集する収集手段と、前記設定された方策で前記探索空間を移動することを終了させるための終了条件を設定する第２設定手段とを具備し、前記第１設定手段は、前記終了条件が満たされた場合、前記方策を、現在設定されている方策とは異なる方策に切り替える。
【図面の簡単な説明】
【０００７】
【図１】一実施形態に係る自律移動装置を含む３次元モデリングシステムの概略構成例を示す図。
【図２】同実施形態に係る自律移動装置のハードウェア構成例を示す図。
【図３】同実施形態に係る自律移動装置の機能構成例を示す図。
【図４】同実施形態に係る自律移動装置によって設定される探索空間及び分割領域を説明するための図。
【図５】同実施形態に係る自律移動装置の動作の一例を示すフローチャート。
【図６】同実施形態の変形例に係る自律移動装置の機能構成例を示す図。
【発明を実施するための形態】
【０００８】
以下、実施の形態について図面を参照して説明する。開示はあくまで一例にすぎず、以下の実施形態に記載した内容により発明が限定されるものではない。当業者が容易に想到し得る変形は、当然に開示の範囲に含まれる。説明をより明確にするため、図面において、各部分のサイズ、形状等を実際の実施態様に対して変更して模式的に表す場合もある。複数の図面において、対応する要素には同じ参照数字を付して、詳細な説明を省略する場合もある。
【０００９】
図１は、一実施形態に係る自律移動装置を含む３次元モデリングシステムの概略構成例を示す。図１に示す３次元モデリングシステムは、自律移動装置１０及び情報処理装置２０を含み、自律移動装置１０と情報処理装置２０とはネットワークＮを介して通信可能に接続されている。
【００１０】
自律移動装置１０は、所定空間内を自律的に移動（走行）し、当該所定空間を対象にした３次元モデルを生成するのに必要な情報（以下では、「３次元モデリング情報」と称する）を収集して、当該３次元モデルを生成する。本実施形態においては、自律移動装置１０が所謂ドローンである場合を想定するが、これに限定されず、自律的に移動可能な機構を有する装置であれば、任意の装置が自律移動装置１０として適用可能である。
【００１１】
情報処理装置２０は、ユーザによって操作されるパーソナルコンピュータ（ＰＣ）、タブレット端末、スマートフォン、各種ウェアラブル端末、等であり、自律移動装置１０に対して各種情報や各種要求を送信する。具体的には、情報処理装置２０は、ユーザの操作に応じて、後述する探索空間情報や分割情報、条件設定要求、方策設定要求、等を自律移動装置１０に対して送信する。なお、ユーザは、上記した各種情報や各種要求を送信するために、ＧＵＩ（Graphical User Interface）やＣＵＩ（Character User Interface）を利用した操作を行う。具体的には、ユーザは、数値を入力する操作や、自律移動装置１０を移動させる所定空間（換言すると、３次元モデルの生成対象となる所定空間）を指定する操作、各種条件や各種方策を選択する操作、等を行う。なお、情報処理装置２０は、上記した所定空間の指定の際に、経度・緯度・高度（標高）を容易に指定可能にするためにも、ＧＰＳ（Global Positioning System）を搭載している方が好ましい。  
情報処理装置２０は、自律移動装置１０によって生成された３次元モデルを示す情報を受信し、これを図示せぬディスプレイに表示させる。
【００１２】
図２は、自律移動装置１０のハードウェア構成例を示す。図２に示すように、自律移動装置１０においては、バス１１に、不揮発性メモリ１２、ＣＰＵ（Central Processing Unit）１３、メインメモリ１４、モータ１５、センサ１６及び通信部１７、等が接続されている。不揮発性メモリ１２及びメインメモリ１４は、自律移動装置１０の記憶装置を構成している。
【００１３】
不揮発性メモリ１２は、例えば、オペレーティングシステム（ＯＳ）と、各種アプリケーションプログラムとを記憶する。アプリケーションプログラムには、上記した所定空間を対象にして３次元モデルを生成するためのプログラム（以下では、「３次元モデリングプログラム」と称する）等が含まれる。
【００１４】
ＣＰＵ１３は、例えば、不揮発性メモリ１２に記憶されている各種アプリケーションプログラムを実行するプロセッサである。ＣＰＵ１３は、自律移動装置１０に含まれる各部の制御も行う。メインメモリ１４は、例えば、ＣＰＵ１３が各種アプリケーションプログラムを実行する際に必要とされるワークエリアとして使用される。  
なお、図２においては、自律移動装置１０に含まれる記憶装置として、不揮発性メモリ１２及びメインメモリ１４だけが示されているが、これに限定されず、自律移動装置１０は、ＨＤＤ（Hard Disk Drive）やＳＳＤ（Solid State Drive）等、他の記憶装置をさらに備えていても良い。
【００１５】
モータ１５は、駆動されることによって自律移動装置１０の移動を可能にする。センサ１６は、３次元モデルを生成するのに必要な３次元モデリング情報を収集可能な各種装置であり、例えば、カメラやレーザレンジファインダ（光波測距儀）等である。  
通信部１７は、自律移動装置１０を無線（または有線）によりネットワークＮに接続させる。通信部１７は、ネットワークＮを経由した情報処理装置２０との各種情報や各種要求の送受信を制御する。
【００１６】
図３は、自律移動装置１０のＣＰＵ１３が上記した３次元モデリングプログラムを実行することによって実現される自律移動装置１０の主となる機能構成を示す。なお、３次元モデリングプログラムは、コンピュータ読み取り可能な記憶媒体に予め記憶して頒布可能である。また、このプログラムは、例えばネットワークＮを介して自律移動装置１０にダウンロードされても良い。
【００１７】
図３に示すように、自律移動装置１０は、入力受付部１０１、分割部１０２、終了条件設定部１０３、探索部１０４、生成部１０５及び評価部１０６、等を備えている。なお、不揮発性メモリ１２及びメインメモリ１４によって構成される記憶装置には、後述する方策情報が記憶されている。
【００１８】
本実施形態においては、各部１０１〜１０６は、ＣＰＵ１３が３次元モデリングプログラムを実行すること（つまり、ソフトウェア）によって実現されるものとして説明するが、これに限定されず、各部１０１〜１０６は、ハードウェアによって実現されても良いし、ソフトウェア及びハードウェアの組み合わせによって実現されても良い。
【００１９】
入力受付部１０１は、情報処理装置２０から送信されて来る各種情報の入力を受け付ける。例えば、入力受付部１０１は、３次元モデルを生成するのに必要な３次元モデリング情報を収集するために、自律移動装置１０が移動する所定空間（以下では、「探索空間」と称する）を特定するための情報（探索空間情報）の入力を受け付ける。探索空間情報は、探索空間を特定可能な情報であればその形態は特に限定されず、例えば、探索空間の各頂点に対応する位置の経度・緯度・高度（標高）を示す情報であっても良い。図４では、探索空間が直方体状である場合を想定している。この場合、探索空間情報は、直方体状の探索空間ＳＳの各頂点Ｐ１〜Ｐ８に対応する位置の経度・緯度・高度を示す情報であっても良い。
【００２０】
探索空間が、図４に示したように直方体状である場合、探索空間情報は、以下のような形態であっても良い。探索空間情報は、直方体状の探索空間の各頂点のうちの１点に対応する位置の経度・緯度・高度を示し、かつ当該１点を３次元座標系の原点とみなした時の、当該原点からＸ方向への長さ、Ｙ方向への長さ及びＺ方向への長さを示す情報であっても良い。例えば、探索空間情報は、図４に示す探索空間ＳＳの頂点Ｐ１に対応する位置の経度・緯度・高度（換言すると、頂点Ｐ１の座標）と、頂点Ｐ１からＸ方向に位置する頂点Ｐ２までの長さＬｘ、Ｙ方向に位置する頂点Ｐ４までの長さＬｙ及びＺ方向に位置する頂点Ｐ５までの長さＬｚ（換言すると、直方体の各辺の長さ）とを示す情報であっても良い。
【００２１】
また、探索空間が、図４に示したように直方体状である場合、探索空間情報は、以下のような形態であっても良い。探索空間情報は、直方体状の探索空間の各頂点のうちの１点に対応する位置の経度・緯度・高度を示し、かつ当該１点を３次元座標系の原点とみなした時に、当該原点から最も遠くに位置する頂点に対応する位置の経度・緯度・高度を示す情報であっても良い。例えば、探索空間情報は、図４に示す探索空間ＳＳの頂点Ｐ１に対応する位置の経度・緯度・高度と、頂点Ｐ１から最も遠くに位置する頂点Ｐ７に対応する位置の経度・緯度・高度とを示す情報であっても良い。
【００２２】
なお、本実施形態においては、探索空間が図４に示したように直方体状である場合を想定して説明するが、探索空間の形状はこれに限定されず、例えば球状等、任意の形状であって構わない。
【００２３】
自律移動装置１０は、図４に示したように、後述する分割部１０２によって探索空間ＳＳを複数の領域ＤＲに分割した上で、各領域（以下では、「分割領域」と称する）ＤＲを順次移動し、３次元モデリング情報を分割領域ＤＲ毎に収集する。入力受付部１０１は、この分割領域ＤＲを規定するための情報（分割情報）の入力も受け付ける。具体的には、分割情報は、分割領域の形状、分割領域の大きさ（粒度）、隣接する分割領域との重なり具合、等を示す情報である。
【００２４】
なお、分割領域の大きさは、探索空間に含まれる分割領域の個数で表現されても良いし、例えば図４に示したように分割領域の形状が直方体状（ボクセル）であれば、分割領域の大きさは各辺の長さで表現されても良い。あるいは、分割領域の形状が球状であれば、分割領域の大きさは半径の長さで表現されても良い。また、隣接する分割領域との重なり具合は、例えば実数によって表現され、正の実数の場合、所定の分割領域が、隣接する分割領域と当該実数の長さだけ重なっていることを示し、負の実数の場合、所定の分割領域が、隣接する分割領域と当該実数の長さだけ離れていることを示し、ゼロの場合、所定の分割領域と隣接する分割領域とは接していることを示すとしても良い。  
入力を受け付けた探索空間情報及び分割情報は分割部１０２に送られる。
【００２５】
分割部１０２は、入力受付部１０１から送られて来る探索空間情報及び分割情報の入力を受け付けると、当該探索空間情報に基づいて探索空間ＳＳを特定（指定）し、当該分割情報に基づいて当該探索空間ＳＳを複数の分割領域ＤＲに分割する。また、分割部１０２は、後述する評価部１０６から送られて来る評価情報の入力を受け付けると、当該評価情報に基づいて各分割領域ＤＲの大きさ（サイズ）を調整する。
【００２６】
終了条件設定部１０３は、情報処理装置２０からの条件設定要求に応じて、後述する探索部１０４に対して設定される方策を切り替えるためのトリガとなる探索終了条件を設定する（換言すると、現在設定されている方策にしたがっての探索を終了させるための探索終了条件を設定する）。この探索終了条件は、分割領域ＤＲに対して設定される条件である。具体的には、探索終了条件としては、分割領域ＤＲを探索した時間、分割領域ＤＲ内で収集された３次元モデリング情報の数（サンプリング数）、次に移動する分割領域ＤＲで探索を開始する探索開始時刻、等が一例として挙げられる。
【００２７】
例えば、探索終了条件が、分割領域ＤＲを探索した時間であった場合を想定する。この場合、後述する探索部１０４は、所定の分割領域ＤＲを探索している時間が探索終了条件として設定された時間を超えてしまった場合に、探索のための方策を、現在の方策から別の方策に切り替える処理を実行する。
【００２８】
なお、本実施形態においては、探索終了条件が分割領域ＤＲに対して設定される場合を説明するが、これに限定されず、探索終了条件は探索空間ＳＳに対して設定されるとしても良い。
【００２９】
探索部１０４は、不揮発性メモリ１２及びメインメモリ１４によって構成される記憶装置に記憶された複数の方策情報のうちの１つに基づいて、自律移動装置１０の動作を制御して、各分割領域ＤＲの探索を行い、３次元モデリング情報を収集する。なお、収集される３次元モデリング情報は、自律移動装置１０に設けられるセンサ１６の種類によって異なるが、例えば、カメラによって撮影される画像の情報や、レーザレンジファインダによって測距される距離（詳しくは、自律移動装置１０から分割領域ＤＲ内に存在する所定の物体までの距離）の情報、等である。
【００３０】
探索部１０４は、終了条件設定部１０３によって設定された探索終了条件を参照し、当該探索終了条件が満たされた場合には、探索のための方策を、現在の方策から別の方策に切り替える。詳しくは、探索部１０４は、上記した記憶装置に記憶されている複数の方策情報のうち、現在の方策に対応する方策情報とは異なる方策情報を読み出し、当該読み出した方策情報によって示される方策を、新たな方策として設定する。なお、探索部１０４は、探索開始時には、情報処理装置２０からの方策設定要求に応じた方策情報を読み出し、当該読み出した方策を、探索開始時の方策として設定する。あるいは、予め決められた所定の方策を探索開始時の方策として設定するとしても良い。
【００３１】
ここで、探索部１０４によって設定される探索のための方策について説明する。  
方策とは、探索の方法（ルール）を示しており、例えば以下の（１）式、（２）式によって定義される。  
ａｔ＝π（ｓｔ）・・・（１）  
ａｔ〜π（・｜ｓｔ）・・・（２）  
上記した（１）式、（２）式におけるｓｔは、時刻tにおける自律移動装置１０の状態を表し、上記したａｔは、自律移動装置１０の状態が所定の状態ｓｔの時に返す時刻tにおける行動を表している。上記した（１）式によれば、状態ｓｔから行動ａｔへの写像が定義され、上記した（２）式によれば、状態ｓｔが観測された場合に行動ａｔを行う確率が定義されている。すなわち、上記した（１）式は、状態ｓｔが得られた場合に行動ａｔを行う方策πを定義しており、上記した（２）式は、状態ｓｔが得られた場合に所定の確率分布に従って行動ａｔを行う方策πを定義している。
【００３２】
なお、上記した状態ｓｔの具体例としては、自律移動装置１０の位置に関する状態や、３次元モデリング情報の収集に関する状態、等が一例として挙げられる。また、上記した行動ａｔの具体例としては、前進・後退・右移動・左移動・回転等といった自律移動装置１０の移動方向に関することや、モータ１５を制御する際の角速度・トルクに関すること、等が一例として挙げられる。
【００３３】
本実施形態においては、方策πとして、状態ｓｔが得られた場合、まだ探索していない分割領域ＤＲに移動するように行動ａｔを選択する方策π１と、状態ｓｔが得られた場合、探索開始地点に戻るように行動ａｔを選択する方策π２とが設定可能である場合を想定する。つまり、上記した記憶装置には、方策π１を示す方策情報と、方策π２を示す方策情報とが少なくとも記憶されている場合を想定する。なお、方策π１と方策π２とでは、状態ｓｔに対する行動ａｔを選ぶ際の方針（以下、「行動選択方針」と称する）が異なっているものとする。本実施形態においては、上記したように、方策π１は、行動選択方針が「まだ探索していない分割領域ＤＲに移動する」であるのに対し、方策π２は、行動選択方針が「探索開始地点に戻る」である場合を想定している。
【００３４】
上記したように、状態ｓｔが得られた場合、まだ探索していない分割領域ＤＲに移動するように行動ａｔを選択する方策π１が設定されることにより、未知の空間を効率的に探索して、３次元モデリング情報を効率的に収集することが可能となる。一方で、このような方策π１にしたがって未知の空間を自律的に探索した場合、探索が途中から進まなくなるスタック状態に陥る恐れがある。スタック状態に陥る原因は種々考えられるが、例えば、分割領域ＤＲの大きさに対して３次元モデリング情報を収集する回数が多すぎた場合や、袋小路に迷い込んでしまった場合等が一例として挙げられる。
【００３５】
しかしながら、上記したように、行動選択方針が異なる少なくとも２つの方策π１，π２が探索部１０４によって切り替え可能に設定されるので、例えば、方策π１にしたがって探索を行い、上記したスタック状態に陥ったとしても、行動選択方針が異なる方策π２に切り替えることが可能であり、上記したスタック状態からの回復を図ることが可能となる。
なお、ここでは、方策π１の行動選択方針が「まだ探索していない分割領域ＤＲに移動する」であり、方策π２の行動選択方針が「探索開始地点に戻る」である場合を想定したが、これに限定されず、方策π１，π２の行動選択方針はそれぞれ、以下に示す例のいずれかであっても良い。
（方策π１の行動選択方針）  
・まだ探索していない分割領域ＤＲに移動する。
・まだ探索していない領域に移動する。
・右手法（または左手法）を用いて移動する。
（方策π２の行動選択方針）  
・探索開始地点に戻る。
・現在地点から遠ざかるように移動する。
・左手法（または右手法）を用いて移動する。
・移動してきた経路をある程度まで戻る。
なお、上記した方策π１，π２の行動選択方針は、任意に組み合わせ可能であるものとする。
【００３６】
なお、本実施形態においては、探索部１０４は、自律移動装置１０がスタック状態に陥った場合、つまり、探索終了条件が満たされた場合、方策πを切り替えることによって、当該スタック状態からの回復を図るとしたが、スタック状態からの回復を図る方法はこれに限定されず、例えば、探索終了条件が満たされた場合、方策πを切り替えるのではなく、自律移動装置１０がスタック状態に陥っている可能性が高いことをユーザに対して通知するとしても良い。これによれば、ユーザは、スタック状態に陥っているか否かを自身で確認した後に、ユーザにとって好ましい方策πを選択することが可能となる（換言すると、ユーザにとって好ましい方策πを設定するための方策設定要求を送信することが可能となる）。あるいは、ユーザは、上記通知を受けた後に、自律移動装置１０の動作モードを自動動作モードから手動操作モードに切り替え、自身で自律移動装置１０を操作することにより、スタック状態からの回復を図ることも可能である。なお、動作モードの切替は、ユーザの操作に応じて、探索部１０４が行うとしても良い。  
探索を行うことで収集された３次元モデリング情報は生成部１０５に送られる。
【００３７】
生成部１０５は、探索部１０４によって行われた探索の過程で収集された３次元モデリング情報に基づいて３次元モデルを生成する。なお、３次元モデルを生成する方法としては、レーザレンジファインダによって測距された距離の情報を用いて３次元形状を復元する方法や、カメラによって撮影された画像（多視点画像）の情報を用いて３次元形状を復元する方法、等がある。但し、３次元モデルを生成する方法はこれらに限定されず、任意の公知の方法により３次元モデルは生成されても良い。  
生成された３次元モデルを示す３次元情報は評価部１０６に送られる。
【００３８】
評価部１０６は、生成部１０５から送られて来る３次元情報の入力を受け付けると、当該入力を受け付けた３次元情報によって示される３次元モデルが十分な品質のモデルであるか否かを評価（判定）する。なお、３次元モデルの品質を評価する方法としては、例えば、３次元情報によって示される３次元モデルに欠落箇所があるか否かを判定し、欠落箇所があると判定された場合には不十分な品質であると評価し、欠落箇所がないと判定された場合には十分な品質であると評価する方法、等がある。但し、３次元モデルの品質を評価する方法はこれに限定されず、任意の公知の方法により３次元モデルの品質は評価されても良い。  
上記した評価の結果を示す評価情報は分割部１０２、終了条件設定部１０３及び探索部１０４に送られる。評価情報は、不十分な品質であった箇所（分割領域ＤＲ）を少なくとも特定可能な情報であればその形態は特に限定されない。また、上記した評価の結果、十分な品質であると評価された３次元モデルを示す３次元情報は情報処理装置２０に送られる。
【００３９】
なお、本実施形態においては、３次元モデルが十分な品質のモデルであるか否かの評価を評価部１０６が行うとしたが、これに限定されず、３次元モデルが十分な品質のモデルであるか否かの評価は、情報処理装置２０を操作するユーザによって行われ、評価部１０６は、その評価の結果を示す評価情報の入力を受け付け、当該評価情報を必要に応じて分割部１０２、終了条件設定部１０３及び探索部１０４に送るだけであっても良い。この場合、評価部１０６は、生成部１０５から３次元情報の入力を受け付けた場合、当該３次元情報を情報処理装置２０に対して常時送信する。
【００４０】
分割部１０２は、評価部１０６から送られて来る評価情報の入力を受け付けると、当該入力を受け付けた評価情報に基づいて、分割領域ＤＲの大きさ（サイズ、粒度）を調整する。具体的には、分割部１０２は、評価情報によって示される不十分な品質であった箇所に対応した分割領域ＤＲの粒度がより細かくなるように当該分割領域ＤＲを分割する。
【００４１】
また、終了条件設定部１０３は、評価部１０６から送られて来る評価情報の入力を受け付けると、当該入力を受け付けた評価情報に基づいて、分割領域ＤＲに対して設定された探索終了条件を調整する。具体的には、終了条件設定部１０３は、評価情報によって示される不十分な品質であった箇所に対応した分割領域ＤＲにおいてのみ探索終了条件として設定される探索時間を長くするように調整したり、当該分割領域ＤＲにおいてのみ探索終了条件として設定される３次元モデリング情報のサンプリング数を増やすように調整する。  
さらに、探索部１０４は、評価部１０６から送られて来る評価情報の入力を受け付けると、当該入力を受け付けた評価情報に基づいて、前回の探索とは異なる方向（例えば、前回の探索とは異なるアングルから３次元モデリング情報を収集可能な方向）から探索を開始できるように、探索開始地点を調整する。なお、探索部１０４は、探索開始地点ではなく、不十分な品質であった分割領域ＤＲを探索し始めるときの方向（換言すると、不十分な品質であった分割領域ＤＲに入る方向）を調整するとしても良い。
【００４２】
次に、図５のフローチャートを参照して、上記した自律移動装置１０が有している各機能部によって実現される動作の一例について説明する。  
まず、入力受付部１０１は、情報処理装置２０から送られて来る探索空間情報及び分割情報の入力を受け付けると、当該入力を受け付けた探索空間情報及び分割情報を分割部１０２に転送する。  
分割部１０２は、入力受付部１０１から転送されて来る探索空間情報の入力を受け付けると、当該入力を受け付けた探索空間情報に基づいて探索空間ＳＳを指定する（ステップＳ１）。また、分割部１０２は、入力受付部１０１から転送されて来る分割情報の入力を受け付けると、当該入力を受け付けた分割情報に基づいて、ステップＳ１の処理により指定された探索空間ＳＳを複数の分割領域ＤＲに分割する（ステップＳ２）。
【００４３】
続いて、終了条件設定部１０３は、情報処理装置２０からの条件設定要求にしたがった探索終了条件を分割領域ＤＲに対して設定する（ステップＳ３）。また、探索部１０４は、情報処理装置２０からの方策設定要求にしたがった方策（例えば方策π１）に対応した方策情報を記憶装置から読み出し、当該方策を探索のための方策として設定する（ステップＳ４）。
【００４４】
探索部１０４は探索を開始し（ステップＳ５）、ステップＳ４の処理により設定された方策にしたがって分割領域ＤＲを順次移動しながら３次元モデリング情報を収集する（ステップＳ６）。探索部１０４は、所定時間毎に、ステップＳ３の処理により設定された探索終了条件が満たされたか否かを判定する（ステップＳ７）。なお、この判定の結果、探索終了条件が満たされていないと判定された場合（ステップＳ７のＮＯ）、後述するステップＳ９の処理が実行される。
【００４５】
一方で、ステップＳ７の処理の結果、探索終了条件が満たされたと判定された場合（ステップＳ７のＹＥＳ）、探索部１０４は、自律移動装置１０がスタック状態に陥っている恐れがあると判断して、方策の切替を行う。具体的には、探索部１０４は、現在の方策とは行動選択方針が異なる方策（例えば方策π２）に対応した方策情報を記憶装置から読み出し、当該読み出した方策情報に対応した方策を新たな方策として設定する（ステップＳ８）。
【００４６】
次に、探索部１０４は探索が完了したか否かを判定する（ステップＳ９）。なお、探索が完了したか否かは、例えば、ステップＳ２の処理により分割された全ての分割領域ＤＲにおいて３次元モデリング情報が収集されたか否かに基づいて判定される。但し、ステップＳ８の処理により方策の切替が行われている場合、全ての分割領域ＤＲにおいて３次元モデリング情報が収集されていなくても、新たに設定された方策にしたがって、探索が完了したと判定されても良い。
【００４７】
ステップＳ９の処理の結果、探索が完了していないと判定された場合（ステップＳ９のＮＯ）、上記したステップＳ６の処理に戻り、まだ探索していない分割領域ＤＲにおいて３次元モデリング情報を収集する処理が実行される。
一方で、ステップＳ９の処理の結果、探索が完了した（あるいは、方策の切替が行われた）と判定された場合（ステップＳ９のＹＥＳ）、探索部１０４は、収集した３次元モデリング情報を生成部１０５に出力する。生成部１０５は、探索部１０４から送られて来る３次元モデリング情報に基づいて３次元モデルを生成する（ステップＳ１０）。生成された３次元モデルを示す３次元情報は評価部１０６に送られる。
【００４８】
評価部１０６は、生成部１０５から送られて来る３次元情報の入力を受け付けると、当該入力を受け付けた３次元情報によって示される３次元モデルの品質が十分であるか否かを評価する（ステップＳ１１）。なお、この評価の結果、３次元モデルの品質が十分でないと評価された場合（ステップＳ１１のＮＯ）、評価部１０６は、当該評価の結果を示す評価情報を分割部１０２、終了条件設定部１０３及び探索部１０４に出力する。その後、上記したステップＳ２及びＳ３の処理に戻り、分割領域ＤＲのサイズ調整や探索終了条件の調整、探索開始地点の調整が行われた後に、ステップＳ４以降の処理が再度実行される。
【００４９】
一方で、ステップＳ１１の処理の結果、３次元モデルの品質が十分であると評価された場合（ステップＳ１１のＹＥＳ）、評価部１０６は、ステップＳ１１の処理により入力を受け付けた３次元情報を情報処理装置２０に送信し（ステップＳ１２）、ここでの一連の動作を終了させる。
【００５０】
なお、本実施形態においては、自律移動装置１０が、上記した各機能部を有している場合を想定したが、生成部１０５及び評価部１０６が有する機能は、情報処理装置２０に搭載されるとしても良い。この場合、自律移動装置１０において３次元モデリング情報の収集が行われ、情報処理装置２０において３次元モデルの生成とその評価が行われる。
【００５１】
以上説明した一実施形態によれば、自律移動装置１０は、探索が途中から進まないスタック状態に陥った恐れがあるか否かを判断するために探索終了条件を設定可能な終了条件設定部１０３と、スタック状態に陥った恐れがあると判断された場合に、探索のための方策を、現在の方策とは行動選択方針が異なる別の方策に切り替え可能な探索部１０４とを備えている。これによれば、仮にスタック状態に陥ってしまったとしても、そこからの回復を図ることが可能となる。
【００５２】
また、本実施形態によれば、終了条件設定部１０３は、探索終了条件を分割領域ＤＲに対して設定可能であるので、探索空間ＳＳよりも細かい粒度で、自律移動装置１０がスタック状態に陥った恐れがあるか否かを判断することができ、仮にスタック状態に陥ってしまったとしても、探索部１０４によりスタック状態に陥った恐れがあることをすぐに検出することが可能となる。
【００５３】
さらに、本実施形態によれば、分割部１０２は、評価部１０６における評価の結果に基づいて分割領域ＤＲのサイズを調整可能であるので、次の探索では品質が不十分であると評価された分割領域ＤＲを重点的に探索することを可能にする。つまり、３次元モデリング情報の収集効率を向上させることが可能となる。
【００５４】
同様に、本実施形態によれば、終了条件設定部１０３は、評価部１０６における評価の結果に基づいて探索終了条件を調整可能であるので、次の探索では品質が不十分であると評価された分割領域ＤＲを重点的に探索することを可能にする。つまり、３次元モデリング情報の収集効率を向上させることが可能となる。  
さらに、本実施形態によれば、探索部１０４は、評価部１０６における評価の結果に基づいて探索開始地点を調整可能であるので、次の探索では品質が不十分であると評価された分割領域ＤＲを別の方向（アングル）から探索することが可能となり、３次元モデリング情報の収集効率を向上させることが可能となる。
【００５５】
以下では、本実施形態の変形例について説明する。  
＜変形例＞  
図６は、本実施形態の変形例に係る自律移動装置１０の機能構成例を示している。本変形例は、テンプレート選択部１０７と表示部１０８とをさらに備えている点で、図３に示した場合と相違している。なお、本変形例においては、不揮発性メモリ１２及びメインメモリ１４によって構成される記憶装置には、上記した方策情報の他に、後述するテンプレート情報が予め記憶されているものとする。
【００５６】
テンプレート選択部１０７は、情報処理装置２０からのテンプレート選択要求に応じて、当該テンプレート選択要求に対応したテンプレート情報を上記した記憶装置から読み出し、これを入力受付部１０１（または、分割部１０２）に出力する。テンプレート情報は、探索空間ＳＳ内にある所定の物体（例えば、橋やビル等）に対応した分割領域ＤＲを規定するための情報であり、過去に生成した３次元モデルが生成された時の分割領域ＤＲを参考にして生成される情報である。
【００５７】
これによれば、例えば橋が存在する探索空間ＳＳを対象にした３次元モデルの生成を行う場合、テンプレート選択部１０７は、橋に対応したテンプレート情報を読み出し、これを入力受付部１０１を介して分割部１０２に送ることが可能であるので、分割部１０２は、橋が存在することを考慮した上で、探索空間ＳＳを複数の分割領域ＤＲに分割することが可能となる。すなわち、探索空間ＳＳを全て同じ大きさの分割領域ＤＲに分割するのではなく、橋が存在すると思われる箇所については細かな分割領域ＤＲを設定し、橋が存在しないと思われる箇所については大きな分割領域ＤＲを設定することが可能であり、３次元モデリング情報の収集効率を向上させることが可能となる。
【００５８】
表示部１０８は、生成部１０５により生成された３次元モデルを示す３次元情報の入力を受け付け、当該３次元情報によって示される３次元モデルを図示せぬディスプレイに表示させる、あるいはＶＲを用いて仮想空間上に表示させる。なお、図示せぬディスプレイは、自律移動装置１０に設けられていても良いし、例えば、自律移動装置１０及び情報処理装置２０のどちらでもなく、情報処理装置２０を操作するユーザが装着可能なゴーグル型のディスプレイ等であっても良い。これによれば、ユーザは、３次元モデルの品質を直感的に確認することが可能となる。
【００５９】
以上説明した一実施形態によれば、仮にスタック状態に陥ってしまったとしても、そこからの回復を図ることが可能な自律移動装置、方法及び３次元モデリングシステムを提供することが可能となる。
【００６０】
なお、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００６１】
１０…自律移動装置、２０…情報処理装置、１０１…入力受付部、１０２…分割部、１０３…終了条件設定部、１０４…探索部、１０５…生成部、１０６…評価部、１０７…テンプレート選択部、１０８…表示部。
【図１】
2020027574.tif 000003
【図２】
2020027574.tif 000004
【図３】
2020027574.tif 000005
【図４】
2020027574.tif 000006
【図５】
2020027574.tif 000007
【図６】
2020027574.tif 000008