(57)【要約】【課題】単眼のカメラが撮影した画像に基づいて移動体が移動可能な領域を判定すること。【解決手段】単眼のカメラを備える移動体が撮影した画像をカメラ画像とし、カメラ画像の画素が移動体が移動可能な位置を示す画素である条件を示す情報を判定情報とし、カメラ画像の画素のうち移動体が移動可能な位置を示す画素を移動画素として、カメラ画像及び判定情報に基づきカメラ画像の各画素が移動画素か否かを判定する判定部と、前記移動体の移動方向に平行な面を移動面とし、平坦な仮想的な面を仮想面とし、光軸と前記仮想面との関係が前記単眼カメラの光軸と前記移動面との関係と同一である距離センサが仮想面を撮影したと仮定した場合における距離画像を第１基準距離画像として、第１基準距離画像、カメラ画像及び判定結果に基づき、移動画素が示す位置から単眼カメラまでの距離を取得する距離取得部とを備える移動体制御装置。【選択図】図１
2020154751.tif 000002
【特許請求の範囲】
【請求項１】
単眼のカメラである単眼カメラを備える移動体が前記単眼カメラによって撮影した画像を単眼カメラ画像とし、予め定められた条件であって前記単眼カメラ画像の移動体撮影画像の画素についての条件を示す情報であって前記単眼カメラ画像の画素が前記移動体が移動可能な位置を示す画素である条件を示す情報を判定情報とし、前記単眼カメラ画像の画素のうち前記移動体が移動可能な位置を示す画素を移動画素として、前記単眼カメラ画像及び前記判定情報に基づいて前記単眼カメラ画像の各画素が前記移動画素か否かを判定する判定部と、
前記移動体の移動方向に平行な面を移動面とし、平坦な仮想的な面を仮想面として、光軸と前記仮想面との関係が前記単眼カメラの光軸と前記移動面との関係と同一である距離センサが前記仮想面を撮影したと仮定した場合における距離画像を第１基準距離画像として、前記第１基準距離画像と前記単眼カメラ画像と前記判定部の判定結果とに基づいて、前記移動画素ごとに前記移動画素が示す位置から前記単眼カメラまでの距離を取得する距離取得部と、
を備える移動体制御装置。
【請求項２】
予め定められた複数の所定の位置のそれぞれを目印位置とし、前記目印位置における前記移動体の動作を示す情報を経路情報とし、複数の前記目印位置の相対的な位置関係を示す情報を接続関係情報として、前記単眼カメラ画像、前記経路情報及び前記接続関係情報に基づいて、前記単眼カメラ画像に写る前記目印位置から見た前記移動体の相対的な位置を示す情報である局所的トポロジカルマップ情報を取得する局所的トポロジカルマップ生成部、
をさらに備える請求項１に記載の移動体制御装置。
【請求項３】
前記判定情報は、予め前記単眼カメラによって撮影された複数の画像に基づき所定の機械学習の手法によって取得された学習結果のモデルである、
請求項１又は２に記載の移動体制御装置。
【請求項４】
単眼のカメラである単眼カメラを備える移動体が前記単眼カメラによって撮影した画像を単眼カメラ画像とし、予め定められた条件であって前記単眼カメラ画像の移動体撮影画像の画素についての条件を示す情報であって前記単眼カメラ画像の画素が前記移動体が移動可能な位置を示す画素である条件を示す情報を判定情報とし、前記単眼カメラ画像の画素のうち前記移動体が移動可能な位置を示す画素を移動画素として、前記単眼カメラ画像及び前記判定情報に基づいて前記単眼カメラ画像の各画素が前記移動画素か否かを判定する判定ステップと、
前記移動体の移動方向に平行な面を移動面とし、平坦な仮想的な面を仮想面として、光軸と前記仮想面との関係が前記単眼カメラの光軸と前記移動面との関係と同一である距離センサが前記仮想面を撮影したと仮定した場合における距離画像を第１基準距離画像として、前記第１基準距離画像と前記単眼カメラ画像と前記判定ステップにおける判定結果とに基づいて、前記移動画素ごとに前記移動画素が示す位置から前記単眼カメラまでの距離を取得する距離取得ステップと、
を有する移動体制御方法。
【請求項５】
請求項１から請求項３のいずれか一項に記載の移動体制御装置としてコンピュータを機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、移動体制御装置、移動体制御方法及びコンピュータプログラムに関する。
【背景技術】
【０００２】
近年、ロボット等の自律的に動作する移動体が研究されている（非特許文献１）。このような移動体は、移動体が走行可能な領域を判定する必要がある。従来、このような移動体は距離センサを備え、距離センサの測定結果に基づいて走行可能な領域を判定していた。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】「日建設計らが自律移動体「看護ロボ」を開発」、［online］、２０１８年１１月２６日、建設通信新聞、［平成３１年３月４日検索］、インターネット〈URL：https://www.kensetsunews.com/web-kan/262517〉
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、距離センサは高額であることから、例えば、単眼のカメラ等のより安価なデバイスを用いた方法によって走行可能領域を判定する方法が求められている。
【０００５】
上記事情に鑑み、本発明は、単眼のカメラが撮影した画像に基づいて移動体が移動可能な領域を判定することができる技術の提供を目的とする。
【課題を解決するための手段】
【０００６】
本発明の一態様は、単眼のカメラである単眼カメラを備える移動体が前記単眼カメラによって撮影した画像を単眼カメラ画像とし、予め定められた条件であって前記単眼カメラ画像の移動体撮影画像の画素についての条件を示す情報であって前記単眼カメラ画像の画素が前記移動体が移動可能な位置を示す画素である条件を示す情報を判定情報とし、前記単眼カメラ画像の画素のうち前記移動体が移動可能な位置を示す画素を移動画素として、前記単眼カメラ画像及び前記判定情報に基づいて前記単眼カメラ画像の各画素が前記移動画素か否かを判定する判定部と、前記移動体の移動方向に平行な面を移動面とし、平坦な仮想的な面を仮想面として、光軸と前記仮想面との関係が前記単眼カメラの光軸と前記移動面との関係と同一である距離センサが前記仮想面を撮影したと仮定した場合における距離画像を第１基準距離画像として、前記第１基準距離画像と前記単眼カメラ画像と前記判定部の判定結果とに基づいて、前記移動画素ごとに前記移動画素が示す位置から前記単眼カメラまでの距離を取得する距離取得部と、を備える移動体制御装置である。
【０００７】
本発明の一態様は、上記の移動体制御装置であって、予め定められた複数の所定の位置のそれぞれを目印位置とし、前記目印位置における前記移動体の動作を示す情報を経路情報とし、複数の前記目印位置の相対的な位置関係を示す情報を接続関係情報として、前記単眼カメラ画像、前記経路情報及び前記接続関係情報に基づいて、前記単眼カメラ画像に写る前記目印位置から見た前記移動体の相対的な位置を示す情報である局所的トポロジカルマップ情報を取得する局所的トポロジカルマップ生成部、をさらに備える。
【０００８】
本発明の一態様は、上記の移動体制御装置であって、前記判定情報は、予め前記単眼カメラによって撮影された複数の画像に基づき所定の機械学習の手法によって取得された学習結果のモデルである。
【０００９】
本発明の一態様は、単眼のカメラである単眼カメラを備える移動体が前記単眼カメラによって撮影した画像を単眼カメラ画像とし、予め定められた条件であって前記単眼カメラ画像の移動体撮影画像の画素についての条件を示す情報であって前記単眼カメラ画像の画素が前記移動体が移動可能な位置を示す画素である条件を示す情報を判定情報とし、前記単眼カメラ画像の画素のうち前記移動体が移動可能な位置を示す画素を移動画素として、前記単眼カメラ画像及び前記判定情報に基づいて前記単眼カメラ画像の各画素が前記移動画素か否かを判定する判定ステップと、前記移動体の移動方向に平行な面を移動面とし、平坦な仮想的な面を仮想面として、光軸と前記仮想面との関係が前記単眼カメラの光軸と前記移動面との関係と同一である距離センサが前記仮想面を撮影したと仮定した場合における距離画像を第１基準距離画像として、前記第１基準距離画像と前記単眼カメラ画像と前記判定ステップにおける判定結果とに基づいて、前記移動画素ごとに前記移動画素が示す位置から前記単眼カメラまでの距離を取得する距離取得ステップと、を有する、移動体制御方法である。
【００１０】
本発明の一態様は、上記の移動体制御装置としてコンピュータを機能させるためのコンピュータプログラムである。
【発明の効果】
【００１１】
本発明により、単眼のカメラが撮影した画像に基づいて移動体が移動可能な領域を判定することが可能となる。
【図面の簡単な説明】
【００１２】
【図１】第１の実施形態の移動体制御システム１００の機能構成の一例を示す図。
【図２】第１の実施形態における第１基準距離画像を説明する説明図。
【図３】第１の実施形態における第１基準距離画像の一例を示す図。
【図４】第１の実施形態における制御部２０の機能構成の一例を示す図。
【図５】第１の実施形態における移動体制御装置２が実行する具体的な処理の流れの一例を示すフローチャート。
【図６】第１の実施形態における移動可能領域判定処理の実行後の移動可能領域の一例を示す図。
【図７】第２の実施形態の移動体制御システム１００ａの機能構成の一例を示す図。
【図８】第２の実施形態における制御部２０ａの機能構成の一例を示す図。
【図９】第２の実施形態における移動体制御装置２ａが実行する具体的な処理の流れの一例を示すフローチャート。
【図１０】変形例における制御部２０ｂの機能構成の一例を示す図。
【図１１】変形例における二次元マップ生成部２０６が生成する二次元地図の一例を示す図。
【図１２】変形例における移動体制御システム１００ｂの機能構成の一例を示す図。
【図１３】変形例における制御部２０ｂの機能構成の一例を示す図。
【図１４】変形例における第２基準距離画像を説明する説明図。
【図１５】変形例における移動体制御システム１００ｃの機能構成の一例を示す図。
【図１６】変形例における制御部２０ｃの機能構成の一例を示す図。
【図１７】変形例における移動体制御システム１００ｄのシステム構成の一例を示す図。
【発明を実施するための形態】
【００１３】
以下、図面を参照しながら本発明の実施形態について詳しく説明する。
【００１４】
（第１の実施形態）
図１は、第１の実施形態の移動体制御システム１００のシステム構成の一例を示す図である。
移動体制御システム１００は、移動体1及び移動体制御装置２を備える。
移動体１は、移動体制御装置２と無線又は有線によって通信可能に構成されており、移動体制御装置２の制御によって第１面９１の上を移動する。移動体１は、単眼のカメラ１１（以下単に「カメラ１１」という。）を備える。カメラ１１は、単眼のカメラであればどのようなカメラであってもよい。カメラ１１は、例えば、単眼のＲＧＢカメラである。カメラ１１の光軸Ｋ１と、第１面９１に垂直な線（以下「第１垂直線Ｖ１」という。）とのなす角とは、角度θである。第１垂直線Ｖ１とカメラ１１の光軸Ｋ１とは平行ではない。すなわち、角度θは０ｄｅｇ以外の角度であればどのような角度であってもよい。また、カメラ１１と第１面９１との距離は、移動体１の第１面９１上の位置によらず一定の距離Ｌ１である。第１面９１は、移動体１が表面を移動可能な物の表面である。第１面９１は、移動体１が表面を移動可能な物の表面であればどのような面であってもよく、例えば、地面であってもよい。第１面９１は、例えば床であってもよい。第１面９１は平坦な坂道であってもよい。以下、説明の簡単のため、第１面９１は平面であると仮定する。しかしながら、第１面９１は、平面に略同一であれば、凸凹があってもよい。なお、第１面９１は、カメラ１１と第１面９１との距離が一定であるため、移動体１の移動方向に平行な面（移動面）である。
【００１５】
移動体１は、不図示の通信部を備え、カメラ１１で撮像した画像（以下「移動体撮影画像」という。）の画像データ（以下「移動体撮影画像データ」という。）を移動体制御装置に送信する。
【００１６】
移動体制御装置２は、バスで接続されたＣＰＵ（Central Processing Unit）等のプロセッサ２１やメモリ２２や補助記憶装置２３などを備え、プログラムを実行する。移動体制御装置２は、移動体制御プログラムの実行によって通信部２４及び入力部２５を備える装置として機能する。なお、移動体制御装置２の各機能の全て又は一部は、ＡＳＩＣ（Application Specific Integrated Circuit）やＰＬＤ（Programmable Logic Device）やＦＰＧＡ（Field Programmable Gate Array）やＧＰＵ（Graphics Processing Unit）等のハードウェアを用いて実現されてもよい。移動体制御プログラムは、コンピュータ読み取り可能な記録媒体に記録されてもよい。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置である。プログラムは、電気通信回線を介して送信されてもよい。
【００１７】
通信部２４は、自装置を移動体１に接続するための通信インタフェースを含んで構成される。通信部２４は、通信インタフェースを介して、移動体１と通信する。
【００１８】
入力部２５は、マウスやキーボード、タッチパネル等の入力装置を含んで構成される。入力部２５は、これらの入力装置を自装置に接続するインタフェースとして構成されてもよい。入力部２５は、自装置に対する各種情報の入力を受け付ける。各種情報は、例えば、移動体制御プログラムの実行開始の指示情報（以下「プログラム開始指示情報」という。）であってもよい。入力部２５にプログラム開始指示情報が入力されると移動体制御装置２は移動体制御プログラムの実行を開始する。
【００１９】
プロセッサ２１は、メモリ２２又は補助記憶装置２３に記憶された各種プログラムを実行することによって制御部２０として機能する。プロセッサ２１が実行するプログラムの１つは、移動体制御プログラムである。プロセッサ２１が実行するプログラムの１つは、入力部２５を制御するプログラムである。制御部２０は、プロセッサ２１による各種プログラムの実行によって移動体１及び移動体制御装置２の各機能部の動作を制御する。
【００２０】
補助記憶装置２３は、磁気ハードディスク装置や半導体記憶装置などの記憶装置を用いて構成される。補助記憶装置２３は、例えば、ＨＤＤ（Hard Disk Drive）やＳＳＤ(Solid State Drive)を用いて構成されてもよい。補助記憶装置２３は、セグメンテーション情報及び第１基準距離画像を予め記憶する。セグメンテーション情報は、移動体撮影画像における移動可能領域が満たす条件を示す情報である。移動可能領域は、領域内の画素が示す位置が、移動体１が移動可能な位置である移動体撮影画像における領域である。移動可能領域内の画素が示す位置は、例えば、第１面９１上の箇所である。セグメンテーション情報は、例えば、予めカメラ１１によって撮影された複数の画像に基づき所定の機械学習の手法によって取得された学習結果のモデルであって、カメラ１１によって撮影された画像中の移動可能領域を判定するモデルであってもよい。
このように、セグメンテーション情報は、予め定められた移動体撮影画像の画素についての条件を示す情報であって、移動体撮影画像の画素が移動体１が移動可能な位置を示す画素である条件を示す情報である。
【００２１】
次に、第１基準距離画像について説明する。
図２は、第１の実施形態における第１基準距離画像を説明する説明図である。
第１基準距離画像は、距離センサ１０によって仮想的な面である第２面９２を撮影したと仮定した場合における距離画像である。距離センサ１０は、距離画像を撮影するカメラである。図２において距離センサ１０は、撮影した画像の画角がカメラ１１が撮影した画像の画角と略同一である。図２において距離センサ１０は、第２面までの距離が単眼カメラから第１面９１までの距離と略同一である。以下、第１基準距離画像の各画素が示す距離を画素距離という。第２面９２は、平坦な仮想的な面である。第２面９２は、距離センサ１０との距離が距離Ｌ１であって、第２垂直線Ｖ２と距離センサ１０の光軸Ｋ２とのなす角がθである面である。第２垂直線Ｖ２は、第２面に垂直な線である。なお、距離センサ１０の光軸Ｋ２とは、距離センサ１０が備えるレンズの光軸に平行なベクトルを距離センサベクトルとして、距離センサ１０が備える全ての距離センサベクトルの合成ベクトルの向きである。第２面９２は、水平線までが平坦な仮想的な面であってもよい。
【００２２】
なお、第１基準距離画像は、必ずしも、撮影した画像の画角がカメラ１１が撮影した画像の画角と略同一である距離センサ１０によって撮影された画像である必要は無い。また、第１基準距離画像は、必ずしも、第２面までの距離が単眼カメラから第１面９１までの距離と略同一である距離センサ１０によって撮影された画像である必要は無い。第１基準距離画像は、光軸Ｋ２と第２面との関係が光軸Ｋ１と第１面９１との関係と同一である距離センサ１０によって撮影された画像（以下「センサ画像」という。）であれば、どのような画像であってもよい。第１基準距離画像は、カメラ１１を含む光学系の情報に基づき、計算によってセンサ画像に変換可能であればどのような画像であってもよい。計算は、例えば、制御部２０が実行してもよい。
なお、光軸Ｋ１と第１面９１との関係とは、光軸Ｋ１と第１面９１に垂直な線とのなす角と、光軸Ｋ１と第１面９１との間の距離とを意味する。
【００２３】
図３は、第１の実施形態における第１基準距離画像の一例を示す図である。
図３は、色が濃い画素ほど、画素距離の値が大きい画素であることを示す。
第１基準距離画像の各画素の値は、予め画素ごとに与えられた値であってもよいし、画素と画素距離との関係を示す数式によって与えられる値であってもよい。
【００２４】
図４は、第１の実施形態における制御部２０の機能構成の一例を示す図である。
制御部２０は、画像取得部２０１、移動可能領域判定部２０２、画像内距離情報取得部２０３及び移動体動作制御部２０４を備える。
【００２５】
画像取得部２０１は、移動体撮影画像を取得する。
移動可能領域判定部２０２は、移動体撮影画像及びセグメンテーション情報に基づいて、移動体撮影画像に写る移動可能領域を判定する。より具体的には、移動可能領域判定部２０２は、移動体撮影画像及びセグメンテーション情報に基づいて移動体撮影画像の各画素が移動画素か否かを判定する。以下、移動可能領域判定部２０２が、移動体撮影画像及びセグメンテーション情報に基づいて移動体撮影画像の各画素が移動画素か否かを判定する処理を移動可能領域判定処理という。
【００２６】
画像内距離情報取得部２０３は、移動体撮影画像及び第１基準距離画像に基づいて、移動可能領域判定部２０２が判定した移動可能領域を示す画素ごとに画素距離を取得する。
具体的には、移動可能領域判定部２０２が移動可能領域を表す画素であると判定した画素を移動画素として、移動体撮影画像の移動画素に対応する第１基準距離画像の画素の画素距離を移動画素ごとに取得する。
【００２７】
移動体動作制御部２０４は、画像内距離情報取得部２０３が取得した各移動画素の画素距離に基づいて、移動体１の動作を制御する。具体的には、例えば、画素距離が所定の距離である移動画素が示す位置まで移動するように移動体１の動作を制御する。
【００２８】
図５は、第１の実施形態における移動体制御装置２が実行する具体的な処理の流れの一例を示すフローチャートである。
カメラ１１によって撮影された移動体画像を、画像取得部２０１が取得する（ステップＳ１０１）。移動可能領域判定部２０２が移動可能領域判定処理を実行する。具体的には、移動可能領域判定部２０２が、ステップＳ１０１において取得された移動体画像と、セグメンテーション情報とに基づいて移動体撮影画像の各画素が移動画素か否かを判定する（ステップＳ１０２）。
【００２９】
なお、ステップＳ１０２の処理とステップＳ１０３の処理とは必ずしもステップＳ１０２の処理が実行された後にステップＳ１０３の処理が実行される順番で処理される必要は無い。ステップＳ１０２の処理とステップＳ１０３の処理とは、ステップＳ１０１の処理が実行された後であって、ステップＳ１０４の処理が実行される前に実行されれば、どのような順番で実行されてもよい。例えば、ステップＳ１０３の処理は、ステップＳ１０２の処理の後に実行されてもよいし、ステップＳ１０２の処理とステップＳ１０３の処理とは並列に処理されてもよい。
【００３０】
図６は、第１の実施形態における移動可能領域判定処理の実行後の移動可能領域の一例を示す図である。
図６は、移動可能領域判定処理の実行後に移動可能領域を示す画像が重畳された移動体撮影画像Ｇ１を示す。
【００３１】
図５の説明に戻る。画像内距離情報取得部２０３が、ステップＳ１０１において取得された移動体撮影画像と予め記憶された第１基準距離画像とに基づいて、ステップＳ１０２において移動画素であると判定された画素ごとに画素距離を取得する（ステップＳ１０３）。
【００３２】
移動体動作制御部２０４が、ステップＳ１０３において取得された各移動画素の画素距離に基づいて、移動体１の動作を制御する（ステップＳ１０４）。
【００３３】
このように構成された第１の実施形態の移動体制御システム１００は、単眼であるカメラ１１によって撮影された画像に基づいて、移動体１が移動可能な位置を判定することで、移動体１を移動させることができる。そのため、移動体制御システム１００における移動体制御装置２は、安価なデバイスである単眼のカメラ１１が撮影した画像に基づいて移動可能な領域を判定し、移動体１を移動させることができる。
【００３４】
（第２の実施形態）
図７は、第２の実施形態の移動体制御システム１００ａのシステム構成の一例を示す図である。
移動体制御システム１００ａは、移動体制御装置２に代えて移動体制御装置２ａを備える点で、移動体制御システム１００と異なる。移動体制御装置２ａは、補助記憶装置２３に代えて補助記憶装置２３ａを備える点と、制御部２０に代えて制御部２０ａを備える点で移動体制御装置２と異なる。
補助記憶装置２３ａは、セグメンテーション情報及び第１基準距離画像にくわえて、さらに、経路情報及び接続関係情報を備える点で、補助記憶装置２３と異なる。
【００３５】
経路情報は、予め定められた複数の所定の位置（以下「目印位置」という。）における移動体１の動作を示す情報である。接続関係情報は、複数の目印位置の相対的な位置関係を示す情報である。すなわち、接続関係情報は、各目印位置を節点とするトポロジーを示す情報である。
【００３６】
以下、説明の簡単のため移動体制御システム１００と同様の機能を有するものについては、図１と同じ符号を付すことで説明を省略する。
【００３７】
図８は、第２の実施形態における制御部２０ａの機能構成の一例を示す図である。制御部２０ａは、局所的トポロジカルマップ生成部２０５を備える点と、移動体動作制御部２０４に代えて移動体動作制御部２０４ａを備える点とで、制御部２０と異なる。
以下、制御部２０が備える各機能部と同様の機能を備えるものについては、図４同じ符号を付すことで説明を省略する。
【００３８】
局所的トポロジカルマップ生成部２０５は、移動体画像、経路情報及び接続関係情報に基づいて、局所的トポロジカルマップ情報を生成する。局所的トポロジカルマップ情報は、画像取得部２０１が取得した画像に写る目印位置から見た移動体１の相対的な位置を示す情報である。
【００３９】
移動体動作制御部２０４ａは、画像内距離情報取得部２０３が取得した各移動画素の画素距離と、局所的トポロジカルマップ情報とに基づいて、移動体１の動作を制御する。具体的には、例えば、画素距離が所定の距離である移動画素が示す位置まで移動するように、局所的トポロジカルマップ情報にも基づいて、移動体１の動作を制御する。
【００４０】
図９は、第２の実施形態における移動体制御装置２ａが実行する具体的な処理の流れの一例を示すフローチャートである。以下、移動体制御装置２ａが実行する処理と同様の処理については、図５と同じ符号を付すことで説明を省略する。
【００４１】
ステップＳ１０３の次に、局所的トポロジカルマップ生成部２０５が、ステップＳ１０１において取得された移動体画像と、経路情報及び接続関係情報とに基づいて、局所的トポロジカルマップ情報を取得する（ステップＳ１０５）。
移動体動作制御部２０４ａが、ステップＳ２０３において取得された各移動画素の画素距離と、局所的トポロジカルマップ情報とに基づいて、移動体１の動作を制御する（ステップＳ１０４ａ）。
【００４２】
なお、ステップＳ１０５の処理は、ステップＳ１０１の処理の実行後であって、ステップＳ１０４ａの処理の実行前に実行されれば必ずしもステップＳ１０３の次に実行される必要は無い。
【００４３】
このように構成された第２の実施形態の移動体制御システム１００ａは、単眼であるカメラ１１によって撮影された画像に基づいて、移動体１が移動可能な位置を判定し、さらに、局所的トポロジカルマップ情報にも基づいて、移動体１を移動させることができる。第２の実施形態の移動体制御システム１００ａは、局所的トポロジカルマップ情報にも基づいて、移動体１の動作を制御するため、第１の実施形態の移動体制御システム１００よりもより精度よく、移動体１を移動させることができる。そのため、移動体制御システム１００ａにおける移動体制御装置２ａは、安価なデバイスである単眼のカメラ１１が撮影した画像に基づいて移動可能な領域を判定し、移動体１を移動させることができる。
【００４４】
また、このように構成された第２の実施形態の移動体制御システム１００ａは、局所的トポロジカルマップ情報を生成する。そのため、このように構成された第２の実施形態の移動体制御システム１００ａは、移動体１の自己位置を推定することができ、大域的な経路を計画することができる。
【００４５】
（変形例）
なお、制御部２０及び制御部２０ａは、二次元マップ生成部２０６を備えてもよい。以下、二次元マップ生成部２０６を備える制御部２０及び制御部２０ａを制御部２０ｂという。以下、制御部２０ｂを、二次元マップ生成部２０６を備える制御部２０として説明するが、制御部２０ｂは、二次元マップ生成部２０６を備える制御部２０ａであっても、説明は同様である。以下、制御部２０が備える各機能部と同様の機能を有するものについては、図４と同じ符号を付すことで説明を省略する。
【００４６】
図１０は、変形例における制御部２０ｂの機能構成の一例を示す図である。
制御部２０ｂは、二次元マップ生成部２０６を備える点で制御部２０及び制御部２０ａと異なる。二次元マップ生成部２０６は、画像内距離情報取得部２０３が取得した移動画素ごとの画素距離に基づいて、移動体撮影画像が撮影した空間の俯瞰図である二次元地図を生成する。
【００４７】
図１１は、変形例における二次元マップ生成部２０６が生成する二次元地図の一例を示す図である。
図１１は、二次元マップ生成部２０６によって生成された画像であって、移動体１が移動する面の俯瞰図を表す画像である。図１１は、移動体１が移動可能な位置Ｐ１の境界を示す。
【００４８】
なお、移動体１は、加速度センサを備え、加速度センサの測定結果に基づいて移動が制御されてもよい。加速度センサを備えることで、移動体制御システム１００は、移動体１が第１面９１の凸部又は凹部に乗り上げた場合に、乗り上げたことによる移動体１と第１面９１との距離Ｌ１の変化や、なす角θの変化の影響を反映して移動体１の動作を制御することができる。
【００４９】
図１２は、変形例における移動体制御システム１００ｂの機能構成の一例を示す図である。移動体制御システム１００ｂは、移動体１に代えて移動体１ｂを備える点と、移動体制御装置２又は２ａに代えて移動体制御装置２ｂを備える点とで、移動体制御システム１００又は１００ａと異なる。
【００５０】
以下、説明の簡単のため、移動体制御システム１００ｂの説明において、移動体制御システム１００と比較して説明するが、移動体制御システム１００ａについても同様である。
以下、移動体制御システム１００が備える各機能部と同じ機能を有するものについては、図１と同じ符号を付すことで説明を省略する。
【００５１】
移動体１ｂは、加速度センサ１２を備える。加速度センサ１２は、移動体１ｂの加速度を測定する。移動体１ｂは、加速度センサ１２の測定結果（以下「加速度情報」という。）を、移動体制御装置２ｂに送信する。
【００５２】
移動体制御装置２ｂは、制御部２０に代えて制御部２０ｂを備える点で、移動体制御装置２と異なる。
【００５３】
図１３は、変形例における制御部２０ｂの機能構成の一例を示す図である。
制御部２０ｂは、基準距離画像更新部２０７を備える点で制御部２０と異なる。以下、制御部２０が備える各機能部と同様の機能を有するものについては、図４と同じ符号を付すことで説明を省略する。
【００５４】
基準距離画像更新部２０７は、加速度情報に基づいて、第１基準距離画像を更新する。具体的には、基準距離画像更新部２０７は、加速度情報に基づいて移動体１の重力に対する傾きを取得し、取得した傾きに基づいて第１基準距離画像を第２基準距離画像に更新する。
【００５５】
図１４は、変形例における第２基準距離画像を説明する説明図である。
第２基準距離画像は、距離センサ１０によって仮想的な面である第３面９３を撮影したと仮定した場合における距離画像である。第３面９３は、平坦な仮想的な面であって、距離センサ１０との距離が距離Ｌ２であって、第３垂直線Ｖ３と距離センサ１０の光軸Ｋ２とのなす角が（θ＋φ）である平面である。第３垂直線Ｖ３は、第３面に垂直な線である。第３面９３は、水平線までが平坦な仮想的な面であってもよい。
【００５６】
距離Ｌ２は、Ｌ１とは異なる距離であって、第１面９１の凸部又は凹部に乗り上げた移動体１と第１面９１との間の距離である。φは、加速度情報に基づき基準距離画像更新部２０７によって取得される移動体１の傾きの角度である。
角度（θ＋φ）は第１面９１の凸部又は凹部に乗り上げた移動体１ｂが備えるカメラ１１の光軸Ｋ１と、第１面９１の凸部又は凹部ではない面に垂直な線（すなわち、図１の第１垂直線Ｖ１）とのなす角である。
【００５７】
このように構成された変形例の移動体制御システム１００ｂは、加速度センサ１２の測定結果に基づいて、移動体１ｂを移動させることができる。そのため、移動体制御システム１００ｂは、移動体１が凸部又は凹部に乗り上げた場合であっても、安価なデバイスである単眼のカメラ１１が撮影した画像に基づいて移動体１を移動させることができる。
【００５８】
なお、移動体制御システム１００は、移動体１が第１面の凸部又は凹部に乗り上げた場合に、必ずしも移動体制御装置２のプログラムによって移動体１の動作を制御する必要はない。移動体制御システム１００は、乗り上げたことによる移動体１と第１面９１との距離Ｌ１の変化や、なす角θの変化の影響を反映して移動体１の動作を機械的に制御してもよい。以下、移動体１の動作を機械的に制御する移動体制御システム１００を移動体制御システム１００ｃという。
【００５９】
図１５は、変形例における移動体制御システム１００ｃの機能構成の一例を示す図である。移動体制御システム１００ｃは、移動体１に代えて移動体１ｃを備える点で、移動体制御システム１００又は１００ａと異なる。
【００６０】
以下、説明の簡単のため、移動体制御システム１００ｃの説明において、移動体制御システム１００と比較して説明するが、移動体制御システム１００ａについても同様である。
以下、移動体制御システム１００が備える各機能部と同じ機能を有するものについては、図１と同じ符号を付すことで説明を省略する。
【００６１】
移動体１ｃは、加速度センサ１２及びカメラ駆動部１３を備える。加速度センサ１２は、移動体１ｃの加速度を測定する。カメラ駆動部１３は、加速度センサ１２が測定した加速度に基づいて、カメラ１１の向き又は位置がカメラ基準条件を満たすようにカメラ１１の向き又は位置を変化させる。カメラ基準条件は、カメラ向き条件とカメラ位置条件とを含む。カメラ向き条件は、カメラ１１の光軸Ｋ１と第１面９１の凸部及び凹部以外の第１面９１の箇所における第１垂直線Ｖ１とのなす角が、移動体１ｃが凸部又は凹部に乗り上げていない場合における、カメラ１１の光軸Ｋ１と第１垂直線Ｖ１とのなす角に等しいという条件である。カメラ位置条件は、カメラ１１から第１面９１までの距離が、カメラ１１の高度と第１面９１の凸部及び凹部以外の第１面９１の箇所の高度との差に等しいという条件である。
【００６２】
図１６は、変形例における制御部２０ｃの機能構成の一例を示す図である。制御部２０ｄは、大域的経路計画部２０８を備える点で制御部２０ａと異なる。
大域的経路計画部２０８は、局所トポロジカルマップ情報に基づいて、移動体１の大域的な移動経路を示す情報を生成する。大域的な移動経路とは、移動体１の移動先として予め定められた目標地点までの移動体１の移動の経路である。目標地点は、例えば、移動体１の現在値をビルの１階としてビルの３階のひとつの部屋である。目標地点は、例えば、移動体１の現在値における移動体撮影画像には写らない地点であってもよい。
【００６３】
なお、制御部２０及び制御部２０ａが備えるプロセッサ及びメモリは必ずしも１つである必要は無い。制御部２０及び制御部２０ａは、移動体制御装置２の動作を制御するプロセッサ及びメモリと、移動体１のモータの制御専用の小型のプロセッサ及びメモリとを備えてもよい。
【００６４】
図１７は、変形例における移動体制御システム１００ｄのシステム構成の一例を示す図である。
移動体制御システム１００ｄは、複数のプロセッサ及びメモリを備える点で移動体制御システム１００と異なる。以下、移動体制御システム１００と同様の機能を有するものについては同じ符号を付すことで説明を省略する。移動体制御システム１００ｄにおける制御部２０は、プロセッサ２１に代えてプロセッサ２１ａ及びプロセッサ２１ｂを備える。
移動体制御システム１００ｄにおける制御部２０は、メモリ２２に代えてメモリ２２ａ及びメモリ２２ｂを備える。
プロセッサ２１ａは、メモリ２２ａ又は補助記憶装置２３に記憶された各種プログラムを実行する。プロセッサ２１ａは、プログラムを実行することで、プロセッサ２１ｂ及びメモリ２２ｂの動作を含む移動体制御システム１００ｄの動作を制御する。プロセッサ２１ｂは、メモリ２２ｂ又は補助記憶装置２３に記憶された各種プログラムを実行する。プロセッサ２１ｂは、プログラムを実行することで、移動体１のモータ等の駆動部の動作を制御する。具体的には、プロセッサ２１ｂは、プログラムを実行することで、移動体動作制御部２０４として機能する。プロセッサ２１ａは、プログラムを実行することで、画像取得部２０１、移動可能領域判定部２０２及び画像内距離情報取得部２０３として機能する。
【００６５】
なお、局所的トポロジカルマップ生成部２０５は、さらに、節点間距離情報にも基づいて、各節点の距離を示す情報を有する局所的トポロジカルマップ情報を生成してもよい。なお、このような場合、節点間距離情報は、予め補助記憶装置２３ａに記憶されている。
【００６６】
なお、局所的トポロジカルマップ生成部２０５は、さらに、節点座標情報にも基づいて、節点の全部又は一部の座標を示す情報を有する局所的トポロジカルマップ情報を生成してもよい。なお、このような場合、節点座標情報は、予め補助記憶装置２３ａに記憶されている。
【００６７】
なお、移動体１は、必ずしも、第１面９１に接して移動する必要はない。移動体１は、飛行してもよい。飛行する移動体１とは、例えば、ドローンである。
【００６８】
なお、移動体制御装置２、２ａ及び２ｂは、ネットワークを介して通信可能に接続された複数台の装置を用いて実装されてもよい。
この場合、移動体制御装置２は、例えば、移動可能領域判定部２０２と、画像内距離情報取得部２０３とは異なる装置に実装されてもよい。
【００６９】
なお、移動体撮影画像は単眼カメラ画像の一例である。セグメンテーション情報は判定情報の一例である。移動可能領域判定部２０２は判定部の一例である。なお、第２面９２及び第３面９３は、仮想面の一例である。移動体撮影画像及びセグメンテーション情報に基づいて移動可能領域判定部２０２が、移動体撮影画像の各画素が移動画素か否かを判定した結果は、判定部の判定結果の一例である。なお、画像内距離情報取得部２０３は、距離取得部の一例である。
【００７０】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【００７１】
１００、１００ａ、１００ｂ、１００ｃ…移動体制御システム、  ２、２ａ、２ｂ…移動体制御装置、  ２０、２０ａ、２０ｂ…制御部、２１…プロセッサ、  ２２…メモリ、  ２３…補助記憶装置、  ２４…通信部、  ２５…入力部、  ２０１…画像取得部、  ２０２…移動可能領域判定部、  ２０３…画像内距離情報取得部、  ２０４…移動体動作制御部、  ２０５…局所的トポロジカルマップ生成部、  ２０６…二次元マップ生成部、  ２０７…基準距離画像更新部、  ２０８…大域的経路計画部
【図１】
2020154751.tif 000003
【図２】
2020154751.tif 000004
【図３】
2020154751.tif 000005
【図４】
2020154751.tif 000006
【図５】
2020154751.tif 000007
【図６】
2020154751.tif 000008
【図７】
2020154751.tif 000009
【図８】
2020154751.tif 000010
【図９】
2020154751.tif 000011
【図１０】
2020154751.tif 000012
【図１１】
2020154751.tif 000013
【図１２】
2020154751.tif 000014
【図１３】
2020154751.tif 000015
【図１４】
2020154751.tif 000016
【図１５】
2020154751.tif 000017
【図１６】
2020154751.tif 000018
【図１７】
2020154751.tif 000019