【文献】
小野晋太郎, 外3名,“複数車載カメラ映像の時空間マッチングによる広域都市モデリングシステム”,第16回画像センシングシンポジウム講演論文集,日本,画像センシング技術研究会,2010年 6月 9日,p.(IS4-08-1)-(IS4-08-8)
(58)【調査した分野】(Int.Cl.,DB名)
【発明の概要】
【発明が解決しようとする課題】
【0006】
ところで、環境内を移動する移動体の自己位置を精度良く推定するためには、精度の良い環境地図を生成することが望ましい。例えば、単眼カメラで環境内を撮影した画像を用いて環境地図を生成する場合、撮影方向に対する距離情報が十分には得られないため、環境地図が精度良く生成されない場合がある。
【0007】
しかしながら、上記特許文献1に記載の技術では、環境地図を精度良く生成することについては考慮されていない。また、上記特許文献2に記載の技術では、環境地図を安価に生成することは考慮されているものの、環境地図を精度良く生成することについては考慮されていない。
【0008】
本発明は、以上の事情を鑑みて成されたものであり、環境地図を精度良く生成することができる環境地図生成方法、環境地図生成装置、及び環境地図生成プログラムを提供することを目的とする。
【課題を解決するための手段】
【0009】
上記目的を達成するために、本発明に係る環境地図生成方法は、移動方向に制約のある移動体に設けられた第1撮影装置により、前記移動体を
第1移動経路に沿って
前記移動体が駐車する駐車場の駐車位置まで移動させながら複数の位置の各々で前記移動体の前後の何れかの撮影方向に向かって第1画像を撮影し、前記
第1移動経路に対して交差する方向に
、全方位に移動可能な第2移動体に設けられた第2撮影装置を移動させながら
前記駐車位置に向かう前記第1移動経路とは異なる第2移動経路上の複数の位置の各々で前記撮影方向に向かって前記第2撮影装置により第2画像を撮影し、撮影して得られた複数の前記第1画像、及び複数の前記第2画像を含む画像群の画像各々から特徴点を抽出し、
複数の前記第1画像の一方の画像から抽出した特徴点、及び他方の画像から抽出した特徴点を対応付け
るとともに、複数の前記第2画像の一方の画像から抽出した特徴点、及び他方の画像から抽出した特徴点を対応付け、対応付けた各特徴点の3次元位置を算出し、各特徴点の3次元位置を含む環境地図を生成する、処理を含む。
【0010】
なお、本発明に係る環境地図生成方法は、前記
第1移動経路に対して交差する方向が、前記
第1移動経路に対して直交する方向であってもよい。
【0012】
一方、上記目的を達成するために、本発明に係る環境地図生成装置は、移動方向に制約のある移動体に設けられた第1撮影装置により、前記移動体を
第1移動経路に沿って
前記移動体が駐車する駐車場の駐車位置まで移動させながら複数の位置の各々で前記移動体の前後の何れかの撮影方向に向かって撮影して得られた複数の第1画像、及び前記
第1移動経路に対して交差する方向に
、全方位に移動可能な第2移動体に設けられた第2撮影装置を移動させながら
前記駐車位置に向かう前記第1移動経路とは異なる第2移動経路上の複数の位置の各々で前記撮影方向に向かって前記第2撮影装置により撮影して得られた複数の第2画像を取得する取得部と、複数の前記第1画像、及び複数の前記第2画像を含む画像群の画像各々から特徴点を抽出する抽出部と、
複数の前記第1画像の一方の画像から抽出された特徴点、及び他方の画像から抽出された特徴点を対応付け
るとともに、複数の前記第2画像の一方の画像から抽出した特徴点、及び他方の画像から抽出した特徴点を対応付ける対応付け部と、対応付けられた各特徴点の3次元位置を算出し、各特徴点の3次元位置を含む環境地図を生成する生成部と、を含む。
【0013】
また、上記目的を達成するために、本発明に係る環境地図生成プログラムは、移動方向に制約のある移動体に設けられた第1撮影装置により、前記移動体を
第1移動経路に沿って
前記移動体が駐車する駐車場の駐車位置まで移動させながら複数の位置の各々で前記移動体の前後の何れかの撮影方向に向かって撮影して得られた複数の第1画像、及び前記
第1移動経路に対して交差する方向に
、全方位に移動可能な第2移動体に設けられた第2撮影装置を移動させながら
前記駐車位置に向かう前記第1移動経路とは異なる第2移動経路上の複数の位置の各々で前記撮影方向に向かって前記第2撮影装置により撮影して得られた複数の第2画像を取得し、撮影して得られた複数の前記第1画像、及び複数の前記第2画像を含む画像群の画像各々から特徴点を抽出し、
複数の前記第1画像の一方の画像から抽出した特徴点、及び他方の画像から抽出した特徴点を対応付け
るとともに、複数の前記第2画像の一方の画像から抽出した特徴点、及び他方の画像から抽出した特徴点を対応付け、対応付けた各特徴点の3次元位置を算出し、各特徴点の3次元位置を含む環境地図を生成する、処理をコンピュータに実行させるものである。
【発明の効果】
【0014】
本発明によれば、環境地図を精度良く生成することができる。
【発明を実施するための形態】
【0016】
以下、図面を参照して、本発明を実施するための形態例を詳細に説明する。なお、本実施形態では、移動体の移動経路に制約がある局所的な空間内での局所的な環境地図を生成する場合の形態例を説明する。具体的には、車両のユーザの自宅の駐車場における環境地図を生成する場合の形態例を説明する。
【0017】
まず、
図1を参照して、本実施形態に係る環境地図生成装置10の機能的な構成を説明する。なお、環境地図生成装置10の例としては、パーソナルコンピュータ及びサーバコンピュータ等の情報処理装置が挙げられる。
【0018】
図1に示すように、環境地図生成装置10は、取得部12、抽出部14、対応付け部16、及び生成部18を含む。また、環境地図生成装置10の所定の記憶領域には、第1撮影装置の一例としてのカメラ30により複数の位置で撮影された複数の画像(以下、「第1画像」という)の各々を示す画像データ(以下、「第1画像データ」という)20が記憶される。また、環境地図生成装置10の所定の記憶領域には、第2撮影装置の一例としてのカメラ32により複数の位置で撮影された複数の画像(以下、「第2画像」という)の各々を示す画像データ(以下、「第2画像データ」という)22が記憶される。
【0019】
図2及び
図3を参照して、第1画像及び第2画像について説明する。
図2に示すように、カメラ30は、移動方向に制約のある移動体の一例としての車両34の後部に設けられ、車両34の後方の第1画像を撮影する。本実施形態では、カメラ30は、車両34が駐車場の駐車位置に駐車する際の車両34の移動経路R1上の複数の位置の各々で第1画像を撮影する。
【0020】
一方、
図3に示すように、カメラ32は、上記駐車位置に向かう移動経路R1とは異なる移動経路R2上の複数の位置の各々で第2画像を撮影する。具体的には、移動経路R2は、移動経路R1に対して直交する方向を含む経路である。また、カメラ32は、移動経路R2上において、対応する移動経路R1上でのカメラ30の撮影方向と同じ方向に向かって第2画像を撮影する。本実施形態では、車両の納車時に車両のディーラーの担当者等の作業者がカメラ32を手で持ち、移動経路R2上を移動しながらカメラ32を操作して複数の位置で第2画像を撮影する。本実施形態に係る第2画像データ22群には、移動経路R2上における移動経路R1に対して直交する方向の経路で撮影された第2画像を示す画像データが含まれる。
【0021】
取得部12は、環境地図生成装置10の記憶領域に記憶された第1画像データ20群から、第1画像データ20を時系列の順番に1つずつ取得する。また、取得部12は、環境地図生成装置10の記憶領域に記憶された第2画像データ22群から、第2画像データ22を時系列の順番に1つずつ取得する。なお、取得部12は、第1画像データ20及び第2画像データ22を、ネットワークを介して取得してもよいし、フラッシュメモリ等の記録媒体を介して取得してもよい。
【0022】
抽出部14は、取得部12により取得された第1画像データ20について、時系列に連続する2つの第1画像データ20のペアを生成する。また、抽出部14は、ペアの第1画像データ20の各々が示す画像から特徴点を抽出する。また、抽出部14は、取得部12により取得された第2画像データ22について、時系列に連続する2つの第2画像データ22のペアを生成する。また、抽出部14は、ペアの第2画像データ22の各々が示す画像から特徴点を抽出する。
【0023】
抽出部14による特徴点の抽出処理には、例えば、ORB−SLAMを適用することができる。ORB−SLAMは、特徴量の記述にORB(Oriented FAST and Rotated BRIEF)を用いる。ORB−SLAMは、特徴点としてコーナーを検出し、検出手法にFAST(Features from Accelerated Segment Test)を用いるものである。また、ORBの特徴量記述は、BRIEF(Binary Robust Independent Elementary Features)をベースとして、スケール不変性と回転不変性とを有するように発展させたものである。ORB−SLAMについては以下の参考文献1に開示されているため、詳細な説明を省略する。なお、ORB−SLAMでは、特徴点がランダムに抽出されるため、同じ画像に対して特徴点の抽出処理を複数回繰り返してもよい。これにより、より多くの特徴点が抽出される。
[参考文献1]Raul Mur-Artal, J.M.M.Montiel and Juan D.Tardos. ORB-SLAM: A Versatile and Accurate Monocular SLAM System. IEEE Transactions on Robotics, vol.31, no.5, pp.1147-1163, 2015.
【0024】
図4に、抽出部14により抽出された特徴点の一例を示す。
図4では、特徴点が正方形の印で示されている。
【0025】
対応付け部16は、抽出部14により抽出されたペアの第1画像データ20の各々が示す画像の特徴点を対応付ける。また、対応付け部16は、ペアの第2画像データ22の各々が示す画像の特徴点を対応付ける。
【0026】
生成部18は、対応付け部16により対応付けられた各特徴点の位置に基づいて、環境地図を示す環境地図情報24を生成する。本実施形態では、生成部18は、初期化段階において、対応付け部16により対応付けられた複数組の特徴点のペアから、例えば、5点法及び7点法等を用いて、一方の画像を基準とする基本行列を推定する。なお、生成部18は、他方の画像を基準とする基本行列を推定してもよい。ここで、上記で取得された画像データの画像を、他方の画像とし、一つ前の画像データの画像を、一方の画像として説明する。
【0027】
また、生成部18は、特異値分解等によって、推定して得られた基本行列から並進ベクトル及び回転行列を算出する。この並進ベクトル及び回転行列の算出により、生成部18は、一方の画像の撮影時のカメラの位置及び姿勢を基準とする他方の画像の撮影時のカメラの位置及び姿勢を推定する。なお、生成部18は、一方の画像の撮影時のカメラの位置を原点とし、一方の画像の撮影時のカメラの姿勢を基準として、3次元の地図座標系を設定する。
【0028】
また、生成部18は、対応付けられた特徴点のペアの一方の画像内の位置及び他方の画像内の位置と、推定した、一方の画像の撮影時のカメラの位置及び姿勢に対する他方の画像の撮影時のカメラの位置及び姿勢とを用いて、三角測量の原理によって、一方の画像の撮影時のカメラの位置及び姿勢に対する、特徴点の三次元座標を算出する。生成部18は、この三次元座標を、地図座標系の三次元座標に変換する。
【0029】
そして、生成部18は、各特徴点について求めた地図座標系の三次元座標及び特徴量を含めた環境地図情報24を生成する。また、生成部18は、地図座標系における一方の画像の撮影時のカメラの位置及び姿勢と、他方の画像の撮影時のカメラの位置及び姿勢とを求め、画像データ、及び画像に含まれる特徴点情報と共に、環境地図情報24に格納する。
【0030】
そして、生成部18は、初期化段階ではない場合、環境地図情報24の各特徴点と、他方の画像の特徴点とを照合して、地図座標系における他方の画像の撮影時のカメラの位置及び姿勢を求める。
【0031】
また、生成部18は、対応付け部16により対応付けられた特徴点のうち、環境地図情報24に登録されていない新しい特徴点が存在する場合には、以下に示す処理を行う。すなわち、この場合、生成部18は、当該新しい特徴点の一方の画像内の位置及び他方の画像内の位置と、環境地図情報24から得られる、一方の画像の撮影時のカメラの位置及び姿勢と、求められた他方の画像の撮影時のカメラの位置及び姿勢とを用いて、三角測量の原理によって、一方の画像の撮影時のカメラの位置及び姿勢に対する、特徴点の三次元座標を算出する。生成部18は、この三次元座標を、地図座標系の三次元座標に変換する。
【0032】
そして、生成部18は、新しい特徴点について求めた地図座標系の三次元座標及び特徴量を環境地図情報24に格納する。また、生成部18は、求められた他方の画像の撮影時のカメラの位置及び姿勢を、画像データ、及び画像に含まれる特徴点情報と共に、環境地図情報24に格納する。
【0033】
次に、
図5を参照して、車両34の自己位置を推定する場合の車両制御装置36の機能的な構成を説明する。車両制御装置36は、車両34の内部に設けられる。なお、車両制御装置36の例としては、ECU(Electronic Control Unit)等のマイクロコンピュータが挙げられる。
【0034】
図5に示すように、車両制御装置36は、撮影制御部40、抽出部42、及び推定部44を含む。車両制御装置36の所定の記憶領域には、環境地図生成装置10により生成された環境地図情報24が記憶される。
【0035】
撮影制御部40は、カメラ30に対して画像を撮影させる制御を行い、カメラ30により撮影された画像を示す画像データを取得する。抽出部42は、環境地図生成装置10の抽出部14と同様の処理により、撮影制御部40による制御によってカメラ30により撮影された画像から特徴点を抽出する。
【0036】
推定部44は、抽出部42により抽出された特徴点の特徴量に基づいて、抽出された特徴点と、環境地図情報24に含まれる特徴点とを照合して、地図座標系における画像の撮影時のカメラ30の位置及び姿勢を求め、車両34の自己位置及び姿勢とする。なお、車両34の自己位置の基準を後輪の軸の中央部等のカメラ30の位置以外とした場合は、カメラ30の位置と車両34の自己位置の基準との相対的な位置関係に基づき、推定したカメラ30の位置及び姿勢から車両34の自己位置及び姿勢を求めてもよい。
【0037】
次に、
図6を参照して、環境地図生成装置10のハードウェア構成を説明する。
図6に示すように、環境地図生成装置10は、CPU(Central Processing Unit)61、一時記憶領域としてのメモリ62、及び不揮発性の記憶部63を備える。また、環境地図生成装置10は、表示装置及び入力装置等の入出力装置64を備える。また、環境地図生成装置10は、ネットワークに接続されるネットワークI/F65を備える。CPU61、メモリ62、記憶部63、入出力装置64、及びネットワークI/F65は、バス66を介して互いに接続される。
【0038】
記憶部63は、HDD(Hard Disk Drive)、SSD(Solid State Drive)、及びフラッシュメモリ等によって実現することができる。記憶媒体としての記憶部63には、環境地図生成プログラム70が記憶される。また、記憶部63は、第1画像データ20、第2画像データ22、及び環境地図情報24が記憶される情報記憶領域71を有する。CPU61は、環境地図生成プログラム70を記憶部63から読み出してメモリ62に展開して実行する。CPU61が、環境地図生成プログラム70を実行することによって、
図1に示す取得部12、抽出部14、対応付け部16、及び生成部18として機能する。
【0039】
次に、
図7を参照して、車両制御装置36のハードウェア構成を説明する。
図7に示すように、車両制御装置36は、CPU81、一時記憶領域としてのメモリ82、及び不揮発性の記憶部83を備える。また、車両制御装置36は、カメラ30が接続される入出力I/F84、及びネットワークに接続されるネットワークI/F85を備える。CPU81、メモリ82、記憶部83、入出力I/F84、及びネットワークI/F85は、バス86を介して互いに接続される。
【0040】
記憶部83は、HDD、SSD、及びフラッシュメモリ等によって実現することができる。記憶媒体としての記憶部83には、自己位置推定プログラム90が記憶される。また、記憶部83は、環境地図情報24が記憶される情報記憶領域91を有する。CPU91は、自己位置推定プログラム90を記憶部83から読み出してメモリ82に展開して実行する。CPU81が、自己位置推定プログラム90を実行することによって、
図5に示す撮影制御部40、抽出部42、及び推定部44として機能する。
【0041】
次に、
図8〜
図11を参照して、本実施形態に係る環境地図情報24を生成する処理の流れを説明する。
【0042】
図8に示すステップS10で、作業者は、車両34を運転し、移動経路R1に沿って車両34を移動させる。車両34が移動経路R1上を移動している間、車両制御装置36は、カメラ30を制御し、所定の時間間隔で第1画像を撮影させる。ステップS12で、作業者は、車両34を移動経路R1の終点である所定の駐車位置に駐車した後、ステップS10でのカメラ30による撮影により得られた複数の第1画像データ20を、環境地図生成装置10の記憶部63に格納する。
【0043】
ステップS14で、作業者は、前述したように、カメラ32を手に持ち、移動経路R2上を移動しながらカメラ32を操作して複数の位置で第2画像を撮影する。ステップS16で、作業者は、ステップS14でのカメラ32による撮影により得られた複数の第2画像データ22を、環境地図生成装置10の記憶部63に格納する。
【0044】
ステップS16の作業が終了すると、作業者は、入出力装置64の入力装置を介して、環境地図生成プログラム70の実行指示を入力する。この実行指示が入力されると、ステップS18で、環境地図生成装置10のCPU61は、環境地図生成プログラム70を実行する。CPU61が環境地図生成プログラム70を実行することにより、
図9に示す環境地図生成処理が実行される。
【0045】
図9に示すステップS30で、取得部12は、記憶部63に記憶された第1画像データ20群から、1つの第1画像データ20を取得する。なお、本実施形態では、ステップS30の処理が繰り返し実行される場合に、取得部12は、第1画像データ20を時系列の順番に取得する。ステップS34で、抽出部14は、直前のステップS30で取得された第1画像データ20と、前回の繰り返し処理におけるステップS30で取得された第1画像データ20とのペアを生成する。
【0046】
ステップS36で、抽出部14は、ステップS34で生成されたペアの画像データの各々を用いて、一方の画像及び他方の画像から特徴点を抽出する。ステップS38で、対応付け部16は、ステップS36で抽出された一方の画像の特徴点と、他方の特徴点とを対応付ける。
【0047】
ステップS40で、生成部18は、環境地図情報24を生成する初期化段階であるか否かを判定する。環境地図情報24に、何らデータが格納されていない場合には、処理はステップS42へ移行する。一方、環境地図情報24に、データが既に格納されている場合には、処理はステップS48へ移行する。
【0048】
ステップS42で、生成部18は、ステップS38で対応付けられた複数組の特徴点のペアから、一方の画像を基準とする基本行列を推定する。また、生成部18は、特異値分解等によって、推定して得られた基本行列から並進ベクトル及び回転行列を算出し、一方の画像の撮影時のカメラ30の位置及び姿勢を基準とする他方の画像の撮影時のカメラ32の位置及び姿勢を推定する。
【0049】
ステップS44で、生成部18は、対応付けられた特徴点のペアの一方の画像内の位置及び他方の画像内の位置と、推定した、一方の画像の撮影時のカメラの位置及び姿勢に対する他方の画像の撮影時のカメラの位置及び姿勢とを用いて、三角測量の原理によって、一方の画像の撮影時のカメラの位置及び姿勢に対する、特徴点の三次元座標を算出する。また、生成部18は、この三次元座標を、地図座標系の三次元座標に変換する。
【0050】
ステップS46で、生成部18は、各特徴点についてステップS44で求めた地図座標系の三次元座標及び特徴量を含めた環境地図情報24を生成する。また、生成部18は、地図座標系における一方の画像の撮影時のカメラの位置及び姿勢と、他方の画像の撮影時のカメラの位置及び姿勢とを求め、画像データ、及び画像に含まれる特徴点情報と共に、環境地図情報24に格納する。
【0051】
一方、ステップS48で、生成部18は、初期化段階ではない場合、環境地図情報24の各特徴点と、他方の画像の特徴点とを照合して、地図座標系における他方の画像の撮影時のカメラの位置及び姿勢を求める。
【0052】
ステップS50で、生成部18は、ステップS38で対応付けられた特徴点のうち、環境地図情報24に登録されていない新しい特徴点が存在する場合には、以下に示す処理を行う。すなわち、この場合、生成部18は、当該新しい特徴点の一方の画像内の位置及び他方の画像内の位置と、環境地図情報24から得られる、一方の画像の撮影時のカメラの位置及び姿勢と、ステップS48で求めた他方の画像の撮影時のカメラの位置及び姿勢とを用いて、三角測量の原理によって、一方の画像の撮影時のカメラの位置及び姿勢に対する、特徴点の三次元座標を算出する。生成部18は、この三次元座標を、地図座標系の三次元座標に変換する。
【0053】
ステップS52で、生成部18は、新しい特徴点についてステップS50で求めた地図座標系の三次元座標及び特徴量を環境地図情報24に格納する。また、生成部18は、求められた他方の画像の撮影時のカメラの位置及び姿勢を、画像データ、及び画像に含まれる特徴点情報と共に、環境地図情報24に格納する。
【0054】
ステップS54で、生成部18は、全ての画像について、ステップS30からステップS52までの処理が完了したか否かを判定する。この判定が否定判定となった場合は、処理はステップS30に戻る。また、第1画像データ20群の全ての画像について、ステップS30からステップS52までの処理が終了した場合、第2画像データ22群の全ての画像についても同様に、ステップS30からステップS52までの処理が実行される。そして、第1画像データ20群及び第2画像データ22群の全ての画像についてステップS34からステップS52までの処理が終了すると、環境地図生成処理が終了する。なお、第2画像データ22群に対して上記ステップS30からS52までの処理を実行した後に、第1画像データ20群に対して上記ステップS30からS52までの処理を実行してもよい。
【0055】
以上の環境地図生成処理により生成された環境地図情報24に含まれる特徴点をプロットした模式図の一例を
図10に示す。また、作業者は、この環境地図情報24を、車両制御装置36の記憶部83に格納する。
【0056】
次に、例えば、車両34の運転者により自己位置推定プログラム90の実行指示が入力されると、車両制御装置36のCPU81は、自己位置推定プログラム90を実行する。CPU81が自己位置推定プログラム90を実行することにより、
図11に示す自己位置推定処理が実行される。
【0057】
図11に示すステップS60で、撮影制御部40は、カメラ30に対して画像を撮影させる制御を行い、カメラ30により撮影された画像を示す画像データを取得する。ステップS62で、抽出部42は、ステップS60で撮影された画像から特徴点を抽出する。ステップS64で、推定部44は、ステップS62で抽出された特徴点と、環境地図情報24に含まれる特徴点とを照合して、地図座標系における画像の撮影時のカメラ30の位置及び姿勢を求め、車両34の自己位置及び姿勢とする。
【0058】
ステップS64の処理が終了すると、自己位置推定処理が終了する。自己位置推定処理により推定された車両34の自己位置は、例えば、車両34が自動運転による駐車を行う場合等に用いられる。
【0059】
以上説明したように、本実施形態によれば、移動方向に制約のある車両34に設けられたカメラ30により、車両34を移動経路R1に沿って移動させながら複数の位置の各々で車両34の後方である撮影方向に向かって第1画像を撮影する。また、移動経路R1に対して直交する方向にカメラ32を移動させながら複数の位置の各々で撮影方向に向かってカメラ32により第2画像を撮影する。そして、撮影された複数の第1画像及び複数の第2画像を用いて、環境地図を生成する。
【0060】
すなわち、複数の第2画像には、第1画像の撮影位置から撮影方向に直交する方向に移動した位置で撮影された第2画像が含まれる。この第2画像は、第1画像との視差が大きいものとなるため、撮影方向に対する距離情報がより正確なものとなる。従って、本実施形態によれば、環境地図を精度良く生成することができる。
【0061】
なお、上記実施形態では、カメラ32により第2画像を撮影する際の移動経路R2に移動経路R1に対して直交する方向が含まれる場合について説明したが、これに限定されない。移動経路R2には、移動経路R1に対して交差する方向が含まれていればよい。この場合の移動経路R2の一例を
図12に示す。
【0062】
また、上記実施形態において、カメラ32を、例えば、水平方向に360度回転可能な車輪を有する台車等の全方位に移動可能な移動体に設ける形態としてもよい。この場合、この移動体を、移動経路R2上を移動させながらカメラ32により複数の第2画像を撮影する形態が例示される。
【0063】
また、上記実施形態では、カメラ30が車両34の後部に設けられ、車両34の後方を撮影する場合について説明したが、これに限定されない。例えば、カメラ30が車両34の前部に設けられ、車両34の前方を撮影する形態としてもよい。
【0064】
また、上記実施形態において環境地図生成装置10により実現される機能を、車両制御装置36により実現してもよい。
【0065】
また、上記実施形態では、環境地図生成プログラム70が記憶部63に予め記憶されている態様を説明したが、これに限定されない。環境地図生成プログラム70は、CD−ROM(Compact Disk Read Only Memory)、DVD−ROM(Digital Versatile Disk Read Only Memory)、及びUSB(Universal Serial Bus)メモリ等の記録媒体に記録された形態で提供されてもよい。また、環境地図生成プログラム70は、ネットワークを介して外部装置からダウンロードされる形態としてもよい。
【0066】
また、上記実施形態では、自己位置推定プログラム90が記憶部83に予め記憶されている態様を説明したが、これに限定されない。自己位置推定プログラム90は、CD−ROM、DVD−ROM、及びUSBメモリ等の記録媒体に記録された形態で提供されてもよい。また、自己位置推定プログラム90は、ネットワークを介して外部装置からダウンロードされる形態としてもよい。