JP6974189B2 - 地図作成装置 - Google Patents

地図作成装置 Download PDF

Info

Publication number
JP6974189B2
JP6974189B2 JP2018005018A JP2018005018A JP6974189B2 JP 6974189 B2 JP6974189 B2 JP 6974189B2 JP 2018005018 A JP2018005018 A JP 2018005018A JP 2018005018 A JP2018005018 A JP 2018005018A JP 6974189 B2 JP6974189 B2 JP 6974189B2
Authority
JP
Japan
Prior art keywords
sensor
measurement
structure data
graph structure
edge
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018005018A
Other languages
English (en)
Other versions
JP2019124808A (ja
Inventor
祐司 津坂
稔 田中
亮暢 藤井
誠 一瀬
宣敏 楫屋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyota Industries Corp
Toyota Central R&D Labs Inc
Original Assignee
Toyota Industries Corp
Toyota Central R&D Labs Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toyota Industries Corp, Toyota Central R&D Labs Inc filed Critical Toyota Industries Corp
Priority to JP2018005018A priority Critical patent/JP6974189B2/ja
Publication of JP2019124808A publication Critical patent/JP2019124808A/ja
Application granted granted Critical
Publication of JP6974189B2 publication Critical patent/JP6974189B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Instructional Devices (AREA)

Description

本明細書に開示する技術は、対象領域の環境地図を作成する地図作成装置に関する。
例えば、移動体に対象領域内を自律的に移動させる場合、対象領域内の障害物(例えば、壁等)を記憶する環境地図が必要となる。対象領域内の環境地図を作成する技術としては、例えば、Graph−based SLAM(Simultaneous Locallization and Mapping)技術が知られている。Graph−based SLAM技術では、通常、レーザレンジファインダ(LRF)等のセンサを搭載した移動体を対象領域内で移動させ、移動経路上の複数の計測点においてセンサにより環境情報を取得する。そして、地図作成装置を用いて、複数の計測点で取得した環境情報に基づいて環境地図を作成する。すなわち、地図作成装置には、複数の計測点のそれぞれについて、センサによって計測された環境情報と、各計測点における計測時のセンサの位置を規定するセンサ位置情報が入力される。次に、入力された環境情報とセンサ位置情報に基づいて、地図作成装置は、計測点のセンサ位置を規定するノードと、関連する2つのノード間の相対的位置関係を規定するエッジから構成されるグラフ構造データを生成する。地図作成装置は、複数のエッジが表す想定誤差を最小化することによってグラフ構造データを最適化する。Graph−based SLAM技術を用いることによって、地図作成装置は、誤差の小さい環境地図を作成することができる。
LRF等のセンサによって取得した環境情報に基づいて環境地図を作成する場合、センサの計測誤差等によって、作成された環境地図に誤差が生じる。このため、作成された環境地図を、真値情報を用いて修正する技術が知られている。例えば、特許文献1には、GPS測位機能によって取得した真値情報を用いて地図の精度を向上させる技術が開示されている。特許文献1の技術では、まず、GPS測位機能によって基準点(真値情報)を取得する。次に、地図作成装置は、3点の基準点によって囲まれた三角形に基づいて、元の地図において基準点に対応する3点によって囲まれる三角形を補正する。この補正は、3点の基準点によって囲まれた三角形ごとに行われる。3点の基準点によって囲まれた三角形ごとに元の地図を補正することによって、元の地図は部分ごとに精度の高い地図に変換される。
特開2002−341757号公報
精度の高い環境地図を作成するためには、例えば、対象領域内に配置される計測物を測量機器で計測し、その計測データに基づいて地図を作成する方法がある。しかしながら、対象領域内に配置される多数の計測物を全て測量機器で計測することは、時間や手間がかかるという問題があった。
Graph−based SLAM技術では、対象領域内の計測物を測量機器で計測していないため、簡易に環境地図を作成できる。しかしながら、センサによって複数の計測点で計測物を計測するため、複数の計測点ごとに計測誤差が生じる。このため、Graph−based SLAM技術を用いた地図作成装置は、グラフ構造データの最適化によって比較的誤差の小さい環境地図を作成することができるものの、測量機器で計測したデータに基づいて作成した地図と比較すると作成された環境地図に歪みが生じるという問題があった。
また、特許文献1の技術では、GPS測位機能によって取得した3点の基準点に基づいて元の地図を補正しているため、補正した部分については地図の精度を高くすることができる。しかしながら、3点の基準点によって囲まれた三角形ごとに元の地図を補正するため、部分ごとの地図の精度については高くすることができる一方、地図全体としては歪みが生じ易いという問題があった。また、特許文献1の技術では、補正のためにGPS測位機能を用いているため、倉庫等の屋内環境においては地図の補正ができない場合がある。
本明細書は、Graph−based SLAM技術を用いながら、比較的に精度の高い地図を作成する技術を開示する。
本明細書に開示する地図作成装置は、対象領域の環境地図を作成する。地図作成装置は、対象領域内の複数の計測点のそれぞれについて、センサによって計測された環境情報を記憶する環境情報記憶部と、複数の計測点のそれぞれについて、センサの移動量に基づいて算出される計測時のセンサの推定位置に関するセンサ推定位置情報を記憶するセンサ推定位置情報記憶部と、環境情報及びセンサ推定位置情報に基づいて、複数の計測点のそれぞれにおけるセンサの位置を規定するセンサノードと、隣接するセンサノード間におけるセンサの相対的位置関係を規定するセンサエッジとを備える第1のグラフ構造データを生成する第1グラフ構造データ生成部と、対象領域内の複数の設置点のそれぞれについて、センサ位置計測装置が設置される設置位置に関する設置位置情報を記憶する設置位置情報記憶部と、複数の計測点の中から選択された複数の計測点において、センサ位置計測装置を用いて計測されるセンサの計測位置に関するセンサ計測位置情報を記憶するセンサ計測位置情報記憶部と、センサ計測位置情報及び設置位置情報に基づいて、複数の設置点のそれぞれにおけるセンサ位置計測装置の設置位置を規定する計測装置ノードと、複数の設置点間におけるセンサ位置計測装置の相対的位置関係を規定する計測装置エッジと、複数の設置点のそれぞれにおいてセンサ位置計測装置で計測されたセンサの位置を規定するセンサ計測ノードと、センサ計測ノードとそのセンサ計測ノードに対応する計測装置ノードの相対的位置関係を規定するセンサ計測エッジとを備える第2のグラフ構造データを生成する第2グラフ構造データ生成部と、計測装置エッジ及びセンサ計測エッジから算出される誤差関数の和が最小となるように第2のグラフ構造データを最適化することにより、センサの真位置を算出するセンサ真位置算出部と、センサ真位置算出部により算出されたセンサの真位置と、そのセンサ真位置に対応するセンサノードに基づいて、算出されたセンサの真位置が規定するセンサの位置と対応するセンサノードが規定するセンサの位置とのずれを規定するセンサ位置エッジを第1のグラフ構造データに追加するセンサ位置エッジ追加部と、センサ位置エッジが追加された第1のグラフ構造データについて、各エッジから算出される誤差関数の和が最小となるように第1のグラフ構造データを最適化するグラフ構造データ最適化部と、を備えている。
上記の地図作成装置では、センサ真位置が規定するセンサの位置とセンサ推定位置情報に基づくセンサの位置とのずれを規定するセンサ位置エッジを第1のグラフ構造データに追加することによって、第1のグラフ構造データに真値又は真値に近似する情報(真値情報)が取込まれる。そして、真値情報が取込まれたグラフ構造データに含まれる誤差情報から算出される誤差関数の和が最小となるようにグラフ構造データを最適化する。また、センサ計測位置情報及びセンサ位置計測装置の設置位置情報に基づいて、センサ位置計測装置によって計測されたセンサの計測位置を最適化するため、第1のグラフ構造データに取り込む真値情報の精度をより高くすることができる。これにより、従来のGraph−based SLAM技術を用いて作成した地図と比較して地図の精度を向上できる。また、センサ位置エッジを導入したグラフ構造データを全体として最適化するため、真値情報を用いて地図を部分的に補正する場合と比較して地図全体の精度を高めることができる。
実施例に係る地図作成装置のシステム構成を示す図。 地図作成処理を示すフローチャート。 移動体に搭載されるセンサが対象領域内の計測物を計測する状態を模式的に示す図。 測量器が対象領域内に設置された基準点の位置を計測する状態を模式的に示す図。 測量器が移動体に搭載されるセンサの位置を計測する状態を模式的に示す図。 設置位置を変更された測量器が、対象領域内に設置された基準点の位置及び移動体に搭載されるセンサの位置を計測する状態を模式的に示す図。 センサノード及びセンサエッジを模式的に示す図。 測量器ノード、測量器エッジ、センサ計測ノード及びセンサ計測エッジにより構成される第2のグラフ構造データを模式的に示す図。 センサ計測ノード及びセンサ位置エッジが追加された第1のグラフ構造データを模式的に示す図。 ループクローズエッジが追加された第1のグラフ構造データを模式的に示す図。 センサが倉庫内の環境情報を計測する状態の一例を模式的に示す図。
以下に説明する実施例の主要な特徴を列記しておく。なお、以下に記載する技術要素は、それぞれ独立した技術要素であって、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時の請求項に記載の組合せに限定されるものではない。
(特徴1)本明細書に開示する地図作成装置は、最適化された第1のグラフ構造データを構成する複数のセンサノードから選択された少なくとも2つのセンサノード間におけるセンサの相対的位置関係を規定するループクローズエッジを最適化された第1のグラフ構造データに追加し、各エッジから算出される誤差関数の和が最小となるように第1のグラフ構造データを最適化するループクローズ部をさらに備えていてもよい。このような構成によると、最適化された第1のグラフ構造データに、センサノード間におけるセンサの相対的位置関係を規定するループクローズエッジを追加することによって、ループクローズされるセンサ間の相対的な姿勢のずれを第1のグラフ構造データに取り込むことができる。第1のグラフ構造データがさらに最適化されるため、さらに地図全体の精度を高くすることができる。
(特徴2)本明細書に開示する地図作成装置は、最適化された第1のグラフ構造データ内のセンサノードと、センサノードが規定するセンサの位置から計測された環境情報を用いて環境地図を作成する環境地図作成部をさらに備えていてもよい。このような構成によると、真値情報が取込まれ、最適化された第1のグラフ構造データ内のセンサノードが規定するセンサの位置から計測された環境情報に基づいて、精度の高い地図を作成することができる。
(特徴3)本明細書に開示する地図作成装置では、センサ計測位置情報は、センサ位置計測装置によって、複数の計測点の中から選択された2以上の計測点において計測されたセンサの位置に関する情報であってもよい。2以上の計測点間の距離は、センサによって環境情報を計測可能な距離より短くてもよい。このような構成によると、センサで計測可能な距離より短い間隔で、センサの位置の真値情報が第1のグラフ構造データに追加される。このため、地図全体の精度を好適に高くすることができる。
以下、実施例に係る地図作成装置10について説明する。地図作成装置10は、対象領域の環境地図を作成する。地図作成装置10は、例えば、CPU、ROM、RAM等を備えたコンピュータによって構成することができる。コンピュータがプログラムを実行することで、地図作成装置10は、図1に示すグラフ構造データ生成部14、センサ真位置算出部18、センサ位置エッジ追加部20、グラフ構造データ最適化部22、ループクローズ部24、環境地図作成部26等として機能する。地図作成装置10の各部14、18、20、22、24、26の処理については、後で詳述する。
また、図1に示すように、地図作成装置10は、環境計測データ記憶部12と、測量データ記憶部16を備えている。環境計測データ記憶部12は、センサ52によって計測された対象領域内の環境情報及びセンサ推定位置情報を記憶する。後述するようにセンサ52は移動体50に搭載される。移動体50は対象領域内を移動しながら、センサ52によって対象領域内の環境(例えば、壁等の計測物)を計測する。センサ52によって取得された環境情報は、その環境情報が取得されたときのセンサ52の位置(センサ52の推定位置ともいう)と共に環境計測データ記憶部12に記憶される。測量データ記憶部16は、測量器56によって計測されたセンサ52の位置(センサ52の計測位置ともいう)に関するセンサ計測位置情報及び測量器56の設置位置に関する設置位置情報を記憶する。環境計測データ記憶部12に記憶される環境情報及びセンサ推定位置情報と、測量データ記憶部16に記憶されるセンサ計測位置情報及び設置位置情報については、後で詳述する。
図2〜図10を参照して、地図作成装置10が行う処理について説明する。図2は、地図作成装置10が行う地図作成処理を示すフローチャートである。図2に示すように、まず、地図作成装置10は、移動体50から対象領域内の複数の計測地点A〜J(図3参照)において計測された環境情報及びセンサ推定位置情報を取得し、環境計測データ記憶部12に記憶する(S10)。ここで、移動体50によって環境情報を計測する手順について説明する。
移動体50は、車輪駆動型の移動体である。移動体50は、図示しない操作装置を備えており、例えば、ジョイスティック等のリモコンで操縦される。なお、本実施例では、移動体50はリモコンで操縦されるが、このような構成に限定されない。例えば、移動体50は、作業者がハンドル操作によって運転することによって移動してもよいし、作業者が手で押すことによって移動してもよい。また、移動体50は飛翔体であってもよい。
移動体50は、センサ52と記憶部54を備えている(図1参照)。本実施例では、移動体50が搭載するセンサ52は、レーザレンジファインダ(LRF)である。LRFは、レーザ光を射出し、射出したレーザ光が物体で反射して返ってくるまでの時間を計測する。LRFで計測された時間から、LRFから物体までの距離が計測される。また、LRFからレーザ光を射出した方向(すなわち、物体から反射されるレーザ光の入射角度)は既知であるため、LRFに対する物体の方位を決定することができる。LRFは、計測地点から見た壁や柱等(以下、「計測物62」という)の位置、姿勢及び形状等の環境情報を計測することができる。LRFで計測された環境情報は記憶部54に記憶される。また、センサ52には、図示しない測量用の反射板が設置されている。測量用の反射板は、測量器56によってセンサ52の位置を計測するために用いられる。測量器56によるセンサ52の位置の計測については、後で詳述する。
各計測地点におけるセンサ52の姿勢及び位置は、各計測地点においてセンサ52によって計測された環境情報を用いて算出される。詳細には、1つの計測地点においてセンサ52が計測した環境情報と、次の計測地点においてセンサ52が計測した環境情報をマッチングさせることによって、両者の間の位置及び姿勢の変位を算出する。ここで算出された変位が、1つの計測地点から次の計測地点までのセンサ52の移動量といえる。マッチングの方法としては、パターンマッチングやICP(Iterative Closest Point)等の公知の方法を用いることができる。このように、各計測地点の間のセンサ52の移動量を算出することによって、各計測地点におけるセンサ52の姿勢及び位置を算出することができる。また、移動体50は、車輪の回転角を検出するセンサ(例えば、エンコーダ)を備えていてもよい。このセンサによって車輪の回転角を検出することで、移動体50の移動方向及び移動量を算出することができる。このため、移動体50は、算出された移動体50の移動方向及び移動量に基づいて、各計測地点における移動体50の姿勢及び位置を算出することができる。移動体50へのセンサ(LRF)52の設置状態は既知であるため、算出された各計測地点における移動体50の姿勢及び位置に基づいて、各計測地点におけるセンサ52の姿勢及び位置を算出してもよい。さらに、センサ52が計測した環境情報をマッチングさせる方法と、車輪の回転角を検出するセンサによって算出する方法を組み合わせてもよい。
記憶部54には、各計測点においてセンサ52で計測された環境情報に対応付けて、その計測点におけるセンサ52の姿勢及び位置が記憶される。本実施例では、センサ52が計測する環境情報及び算出されるセンサ推定位置情報を合わせて「環境計測データ」と称することがある。なお、センサ52はLRFに限定されるものではない。センサ52は、環境情報を計測できればよく、例えば、センサ52は画像情報によって計測物62を計測するものであってもよい。センサ52によって計測された計測物62の環境情報は、移動体50の記憶部54に時系列で記憶される。また、センサ52の位置及び姿勢も上記の方法(いわゆる、オドメトリ)に限られず、例えば、GPSセンサ等を用いて検出するようにしてもよい。
図3は、移動体50に搭載されるセンサ52が、対象領域内の計測物62を計測する状態を模式的に示している。移動体50は、対象領域内に設定される移動経路60上を移動する。詳細には、移動体50は、地点Aを始点として移動経路60上を移動し、地点Aの近傍の地点Jまで(すなわち、地点Jを終点として)移動する。対象領域内には、壁や柱等(すなわち、計測物62)が配置されており、センサ52は、計測地点から計測物62までの距離及び計測物62の形状等を計測する。図3に示される矢印は、移動体50が計測地点Bに移動したときにセンサ52から計測物62aに射出されるレーザと、移動体50が計測地点Dに移動したときにセンサ52から計測物62b、62cに射出されるレーザを示している。なお、以下の明細書において、計測物62を区別する必要があるときは計測物62a、62b、62cのように沿字のアルファベットを用いて記載し、区別する必要のないときは単に計測物62と記載する場合がある。また、他の構成要素についても同一構成のものについて区別する必要がないときは、上記と同様に沿字のアルファベットを省略して単に数字で記載することがある。
図3に示すように、例えば、センサ52は、地点Bにおいて計測可能な計測物62a及び計測物62dの環境情報を計測し、また、移動体50(詳細には、移動体50に搭載された演算装置)は地点Bにおける計測時のセンサ推定位置情報を算出する。計測された環境情報と算出されたセンサ推定位置情報は記憶部54に記憶される。また、移動体50が地点Eに移動すると、センサ52は、地点Eにおいて計測可能な計測物62bの環境情報、計測物62c及び計測物62dの環境情報を計測し、また、地点Eにおける計測時のセンサ推定位置情報が算出される。このようにして、移動体50は、移動経路60上を移動し、センサ52は、対象領域内の計測物62を計測し、その計測物62を計測した地点のセンサ推定位置情報が算出される。計測された環境情報と算出されたセンサ推定位置情報は、時系列順に記憶部54に蓄積される。記憶部54に蓄積された環境情報とセンサ推定位置情報は、地図作成装置10に入力され、環境計測データ記憶部12に記憶される。なお、環境計測データ記憶部12は、「環境情報記憶部」及び「センサ推定位置情報記憶部」の一例である。
次に、地図作成装置10は、測量器56で計測されたセンサ52の位置に関する情報(すなわち、対象領域内の複数の計測地点A〜Jの中から選択された地点において測量器56を用いて計測されたセンサ52の位置に関する情報(以下、センサ計測位置情報ともいう))と、測量器56の設置位置に関する情報(以下、設置位置情報ともいう)を取得し、測量データ記憶部16に記憶する(S12)。ここで、測量器56によってセンサ計測位置情報を計測する手順について説明する。
センサ計測位置情報は、基本測量や公共測量に用いられるトータルステーション等の測量器56によって計測される。測量器56は、図示しないレーザセンサを備えており、反射板までの距離及び向きを計測することによって、反射板が設置される位置を精度良く測量する。本実施例では、測量器56は、対象領域内に設置された複数の反射板(基準用反射板ともいう)の位置と、上述のセンサ52に設置された反射板の位置を計測する。計測された基準用反射板の位置に基づいて、測量器56で計測する際の基準点(例えば、座標の原点)と座標軸の軸方向を決定することができる。なお、基準用反射板に代わり、例えば、プリズムを設置して、その位置を計測してもよいし、対象領域内に存在する特徴的な模様等の位置を計測してもよい。また、測量器56は、決定された基準点と座標軸の軸方向に基づいて、測量器56の設置位置と、測量器56によって計測されたセンサ52の位置(すなわち、センサ52の計測位置)を算出することができる。また、測量器56は、記憶部58を備えている。記憶部58には、測量器56の設置位置に対応付けて、その設置位置に設置された測量器56から計測されたセンサ52の位置が記憶される。本実施例では、測量器56の設置位置情報及びセンサ計測位置情報を合わせて、「測量データ」と称することがある。なお、本実施例では、測量データは、測量器56を用いて計測しているが、このような構成に限定されない。センサ52の位置を計測する精度が高い方法であればよく、例えば、ARマーカーやQRコード(登録商標)等をカメラで計測してもよいし、GPS測量や航空測量を用いてもよい。また、メジャーやコンベックス等を用いて測定してもよいし、CAD図等の座標値を示す図面を用いてもよい。また、測量器56は、「センサ位置計測装置」の一例である。
図4〜図6は、測量器56が対象領域内に設置された基準用反射板の位置とセンサ52に設置された反射板の位置を計測する状態を模式的に示している。本実施例では、測量器56を用いてセンサ52の位置を計測する地点として、センサ52が環境情報を計測する10箇所の計測地点A〜Jの中から5箇所の地点A、C、E、G、Jを選択している。測量器56が計測するセンサ52の位置の数は特に限定されないが、測量器56で計測するセンサ52間の距離が、センサ52によって環境情報を計測可能な距離より短くすることが好ましい。測量器56で計測するセンサ52間の距離をセンサ52によって環境情報を計測可能な距離より短くすることによって、地図全体の精度を好適に高くできる。一方、測量器56で計測するセンサ52間の距離をセンサ52によって環境情報を計測可能な距離より長くすると、測量器56で計測する作業が増大することを抑制できる。したがって、測量器56で計測するセンサ52間の距離は、対象領域の環境によって作業者が適宜決定することができる。以下に、測量器56を用いてセンサ52の位置を計測する手順について説明する。
まず、センサ52によって環境情報を取得する前(すなわち、移動体50が移動経路60上を移動する前)に、測量器56を用いて基準用反射板の位置を計測する。例えば、図4に示すように、対象領域内の地点Kに測量器56を設置し、対象領域内の地点L及び地点Mに基準用反射板を設置する。測量器56は、見通しの良い位置に配置することが好ましく、センサ52の位置を計測する5箇所の地点A、C、E、G、Jのうち、できるだけ多くの地点を計測可能な位置に設置するとよい。また、基準用反射板は、地点Kに設置された測量器56によって計測可能な位置に配置する。
次いで、測量器56は、地点L及び地点Mに設置された基準用反射板の位置を計測する。測量器56(詳細には、測量器56に搭載された演算装置)は、計測された基準用反射板の位置に基づいて、原点と座標軸の軸方向を決定する。測量器56は、決定した原点と座標軸の軸方向に基づいて、測量器56の設置地点Kの位置(例えば、地点Kの座標)及び姿勢を算出する。決定された原点及び座標軸の軸方向と、算出された測量器56の設置地点Kの位置は、記憶部58に記憶される。
次いで、測量器56は、センサ52の位置を計測する。測量器56は、移動体50に搭載されたセンサ52が複数の計測地点A〜Jにおける環境情報を計測しながら移動経路60上を移動する際に、複数の計測地点A〜Jの中から選択した5箇所の地点A、C、E、G、Jにおけるセンサ52の位置をそれぞれ計測する。測量器56によってセンサ52の位置を計測する際には、移動経路60上を移動する移動体50を停止させ、移動体50(すなわち、センサ52)を停止させた状態で測量器56はセンサ52の位置を計測する。
図5は、地点Kに設置された測量器56が地点A、C、Eにおけるセンサ52の位置を計測する状態を模式的に示している。まず、移動体50が移動経路60の始点である地点Aに位置する状態で、移動体50を停止させる。そして、移動体50を停止させた状態で、地点Aにおけるセンサ52の位置を地点Kに設置された測量器56で計測する。図5に示すように、地点Kに設置された測量器56と地点Aに位置するセンサ52の間には計測物62等の測量器56による計測を妨害するものが配置されていないため、測量器56は地点Aに位置するセンサ52の位置を計測することができる。計測された地点Aにおけるセンサ52の位置は、記憶部58に記憶される。なお、移動体50が地点Aに位置する間に、移動体50に搭載されるセンサ52は、地点Aから計測物62(すなわち、環境情報)を計測する。地点Aにおけるセンサ52の位置の計測が終了すると、移動体50を移動させる。移動体50が地点Aから地点Bを介して地点Cまで移動する間、センサ52は、地点B及び地点Cから計測物62を計測する。以下の説明では、センサ52による計測物62の計測についての説明は省略するが、移動体50が移動経路60を移動する間、上述したように、センサ52は地点A〜Jにおいて計測物62を計測する。このように、移動体50が移動経路60上を移動する間、測量器56によるセンサ52の位置の計測と、センサ52による計測物62の計測を同時に行う。
移動体50が地点Cに位置すると、移動体50を停止させる。そして、移動体50を停止させた状態で、地点Cにおけるセンサ52の位置を地点Kに設置された測量器56で計測する。地点Kに設置された測量器56と地点Cに位置するセンサ52の間には計測物62等が配置されていないため、測量器56は地点Cに位置するセンサ52の位置を計測することができる。計測された地点Cにおけるセンサ52の位置は、記憶部58に記憶される。地点Cにおけるセンサ52の位置の計測が終了すると、移動体50を移動させる。同様に、移動体50を次の計測地点である地点Eまで移動させ、地点Kに設置された測量器56を用いて地点Eにおけるセンサ52の位置を計測する。地点Kに設置された測量器56と地点Eに位置するセンサ52の間には計測物62等が配置されていないため、測量器56は地点Eに位置するセンサ52の位置を計測することができる。計測された地点Eにおけるセンサ52の位置は、記憶部58に記憶される。
地点Eにおけるセンサ52の計測が終了すると、移動体50を次の計測地点である地点Gまで移動させ、移動体50を停止させる。しかしながら、地点Kに設置された測量器56と地点Gに位置するセンサ52の間には計測物62dが配置されているため、地点Kに設置された測量器56は地点Gに位置するセンサ52の位置を計測することができない。このため、地点Gに位置するセンサ52の位置を計測できるように、測量器56の設置位置を変更する。例えば、図6に示すように、測量器56を地点Kから地点Nに移動させる。
測量器56を地点Nに設置すると、再び測量器56を用いて基準用反射板の位置を計測する。このとき、先に設置された基準用反射板の位置(すなわち、地点Lと地点Mに設置された基準用反射板の位置)を地点Nから計測できない場合には、地点Nから計測できる位置に基準用反射板をさらに設置する。測量器56は、計測された基準用反射板の位置に基づいて、原点と座標軸の軸方向を決定し、測量器56の設置地点Nの位置を算出する。決定された原点及び座標軸の軸方向と、算出された測量器56の設置地点Nの位置は、記憶部58に記憶される。
次いで、地点Nに設置された測量器56を用いて、地点Gにおけるセンサ52の位置を計測する。地点Nに設置された測量器56と地点Gに位置するセンサ52の間には計測物62等が配置されていないため、測量器56は地点Gに位置するセンサ52の位置を計測することができる。そして、地点Gにおけるセンサ52の計測が終了すると、次の計測地点である地点Jまで移動体50を移動させ、地点Nに設置された測量器56を用いて、地点Jに位置するセンサ52の位置を計測する。計測された地点G及び地点Jにおけるセンサ52の位置は、記憶部58に記憶される。このようにして、測量器56を用いて、複数の計測地点A〜Jの中から選択した5箇所の地点A、C、E、G、Jにおけるセンサ52の位置をそれぞれ計測する。センサ52の計測位置は、測量器56によって計測されるため、記憶部58には、センサ52の位置に関する真値又は真値に近似する情報(真値情報)が記憶される。記憶部58に蓄積された測量器56の設置位置情報とセンサ計測位置情報は、地図作成装置10に入力され、測量データ記憶部16に記憶される。なお、測量データ記憶部16は、「センサ計測位置情報記憶部」及び「設置位置情報記憶部」の一例である。
なお、本実施例では、測量器56の設置位置を1回変更し(すなわち、設置位置を地点Kから地点Nに変更し)、5箇所の地点A、C、E、G、Jにおけるセンサ52の位置を計測したが、このような構成に限定されない。例えば、1つの設置位置から5箇所の計測地点おけるセンサ52の位置の全てを計測可能であれば、測量器56を移動させることなく、その1つの設置位置から5箇所の計測地点におけるセンサ52の位置の全てを計測してもよい。また、例えば、壁等の計測物62が多く配置されている場合や対象領域が広域である場合には、測量器56の設置位置を2回以上変更してもよい。また、本実施例では、1台の測量器56で5箇所の計測地点におけるセンサ52の位置の全てを計測しているが、このような構成に限定されない。例えば、2台以上の測量器56を用いてセンサ52の位置を計測してもよい。また、本実施例では、測量器56は2箇所の地点K、Mに設置した基準用反射板の位置を計測しているが、このような構成に限定されない。測量器56で計測する基準用反射板の位置や数は上記の例に限定されるものではなく、3箇所以上の地点に設置した基準用反射板の位置を計測してもよい。
次に、地図作成装置10では、ステップS10で環境計測データ記憶部12に記憶された環境情報及びセンサ推定位置情報に基づいて、グラフ構造データ生成部14が対象領域内のグラフ構造データ28(以下、第1のグラフ構造データ28ともいう)を生成する(S14)。第1のグラフ構造データ28は、センサノード30及びセンサエッジ32によって構成される。グラフ構造データ生成部14は、環境情報及びセンサ推定位置情報に基づいてセンサノード30及びセンサエッジ32を生成し、生成したセンサノード30がセンサエッジ32により関連付けられた第1のグラフ構造データ28を生成する。
すなわち、図7に示すように、グラフ構造データ生成部14は、まず、環境計測データ記憶部12が記憶するセンサ推定位置情報に基づいて、各計測地点A〜Jにおける計測時のセンサ52の位置や姿勢を規定するセンサノード30a〜30jをそれぞれ生成する。なお、隣接する計測地点の間隔は、対象領域内に設置されている複数の計測物62の環境情報を計測できる間隔であればよい。
次に、グラフ構造データ生成部14は、環境計測データ記憶部12に記憶される時系列に蓄積されたセンサ推定位置情報及び環境情報に基づいて、隣接するセンサノード30間におけるセンサ52の相対的位置関係を規定するセンサエッジ32を生成する。センサエッジ32は、センサエッジ32の両端にある2つのセンサノード30の各姿勢についての制約を表しており、具体的には、上述したように、各計測地点においてセンサ52が計測した環境情報をマッチングさせることによって算出することができる。
例えば、グラフ構造データ生成部14は、環境計測データ記憶部12に記憶される時系列に蓄積された計測地点A、Bの環境情報及びセンサ推定位置情報から、計測地点A、B間のセンサ52の移動量(すなわち、移動体50が地点A、B間を移動したことによって移動したセンサ52の移動量)を算出する。この移動量と計測地点A、Bのセンサ推定位置情報から、グラフ構造データ生成部14は、センサノード30aとセンサノード30bとを連結するセンサエッジ32aを生成する。センサエッジ32aは、センサノード30a、30b間におけるセンサ52の相対的位置関係を規定する。すなわち、センサエッジ32aは、センサ52が計測地点Aから計測地点Bまで移動したという事象を表している。同様にして、グラフ構造データ生成部14は、時系列に蓄積された計測地点B、Cの環境情報及びセンサ推定位置情報から、センサノード30bとセンサノード30cとを連結するセンサエッジ32bを生成する。このようにして、グラフ構造データ生成部14は、全ての隣接するセンサノード30間に、センサエッジ32を生成する。そして、グラフ構造データ生成部14は、生成したセンサノード30及びセンサエッジ32から第1のグラフ構造データ28を生成する。なお、グラフ構造データ生成部14は、「第1グラフ構造データ生成部」の一例である。
次に、地図作成装置10では、ステップS12で測量データ記憶部16に記憶された測量器56の設置位置情報及びセンサ計測位置情報に基づいて、センサ真位置算出部18が、測量器56によって計測されたセンサ52の位置についてセンサ真位置を算出する(S16)。センサ真位置の算出は、以下の手順で実行される。
まず、センサ真位置算出部18は、測量データ記憶部16に記憶された測量器56の設置位置情報及びセンサ計測位置情報に基づいて、グラフ構造データ38(以下、第2のグラフ構造データ38ともいう)を生成する。第2のグラフ構造データ38は、測量器ノード40、測量器エッジ42、センサ計測ノード44及びセンサ計測エッジ46によって構成される。センサ真位置算出部18は、測量器56の設置位置情報及びセンサ計測位置情報に基づいて測量器ノード40、測量器エッジ42、センサ計測ノード44及びセンサ計測エッジ46を生成し、生成した測量器ノード40及びセンサ計測ノード44が測量器エッジ42及びセンサ計測エッジ46により関連付けられた第2のグラフ構造データ38を生成する。なお、測量器ノード40は、「計測装置ノード」の一例であり、測量器エッジ42は、「計測装置エッジ」の一例である。
図8に示すように、センサ真位置算出部18は、測量データ記憶部16に記憶された測量器56の設置位置情報に基づいて、測量器56の設置位置を規定する測量器ノード40a、40bを生成する。測量器ノード40aは、地点Kに設置された測量器56の位置を規定し、測量器ノード40bは、地点Nに設置された測量器56の位置を規定する。そして、センサ真位置算出部18は、地点Kに設置された測量器56から計測された基準用反射板の位置である地点L、Mの位置と、地点Nに設置された測量器56から計測された基準用反射板の位置である地点L、Mの位置に基づいて、各地点K、Nに設置された測量器56間の相対的位置や姿勢関係を規定する測量器エッジ42を生成する。
次いで、センサ真位置算出部18は、測量データ記憶部16に記憶されたセンサ計測位置情報に基づいて、センサ52の計測位置を規定するセンサ計測ノード44a〜44eを生成する。また、センサ真位置算出部18は、測量データ記憶部16に記憶された測量器56の設置位置情報及びセンサ計測位置情報に基づいて、センサ計測ノード44とそのセンサ計測ノード44を規定するセンサ52の位置を計測した地点の測量器ノード40との相対的位置関係を規定するセンサ計測エッジ46a〜46eを生成する。
具体的には、センサ計測ノード44aは、地点Kに設置された測量器56が計測した地点Aにおけるセンサ52の位置を規定する。また、センサ計測エッジ46aは、測量器ノード40aとセンサ計測ノード44aの間の相対位置を規定する。同様に、センサ計測ノード44b、44cは、地点Kに設置された測量器56が計測した地点C、Eにおけるセンサ52の位置をそれぞれ規定し、センサ計測エッジ46b、46cは、測量器ノード40aとセンサ計測ノード44b、44cの間の相対位置をそれぞれ規定する。また、センサ計測ノード44d、44eは、地点Nに設置された測量器56が計測した地点G、Jにおけるセンサ52の位置をそれぞれ規定し、センサ計測エッジ46d、46eは、測量器ノード40bとセンサ計測ノード44d、44eの間の相対位置や姿勢関係をそれぞれ規定する。
さらに、センサ真位置算出部18は、測量データ記憶部16に記憶された測量器56の設置位置情報及び基準用反射板の位置に関する情報に基づいて、基準用反射板の位置を規定するノードを生成すると共に、基準用反射板の位置を規定するノードとそのノードを規定する基準用反射板の位置を計測した地点の測量器ノード40との相対的位置関係を規定するエッジを生成する。本実施例では、測量器56の設置位置情報及び基準用反射板の位置に関する情報に基づいて生成されるノード及びエッジについても「センサ計測ノード44」及び「センサ計測エッジ46」と称する。具体的には、センサ計測ノード44f、44gは、地点Kに設置された測量器56が計測した地点L、Mに設置される基準用反射板の位置をそれぞれ規定し、センサ計測エッジ46f、46gは、測量器ノード40aとセンサ計測ノード44f、44gの間の相対位置や姿勢関係をそれぞれ規定する。同様に、センサ計測ノード44h、44iは、地点Nに設置された測量器56が計測した地点L、Mに設置される基準用反射板の位置をそれぞれ規定し、センサ計測エッジ46h、46iは、測量器ノード40bとセンサ計測ノード44h、44iの間の相対位置や姿勢関係をそれぞれ規定する。センサ真位置算出部18は、測量器56の設置位置情報、センサ計測位置情報及び基準用反射板の位置に関する情報に基づいて生成した測量器ノード40、測量器エッジ42、センサ計測ノード44及びセンサ計測エッジ46から、第2のグラフ構造データ38を生成する。
第2のグラフ構造データ38を生成すると、センサ真位置算出部18は、第2のグラフ構造データ38を最適化する。具体的には、センサ真位置算出部18は、第2のグラフ構造データ38内の測量器エッジ42及びセンサ計測エッジ46に基づいて算出される誤差関数の和が最小となるように第2のグラフ構造データ38を最適化する。誤差関数は、Graph−based SLAM技術で用いられている、公知の方法を用いて生成することができ、また、最適化方法についても、最急降下法や共役勾配法等の最小二乗法等の公知の方法を用いることができる。センサ真位置算出部18は、第2のグラフ構造データ38内の全てのエッジ(測量器エッジ42及びセンサ計測エッジ46)から誤差関数を算出し、これら算出された誤差関数を加算し、次いで、この誤差関数の和が最小となるように最適化する。
センサ真位置算出部18は、最適化された第2のグラフ構造データ38を構成するセンサ計測ノード44により規定されるセンサ52の計測位置を算出する。ここで算出されたセンサ52の計測位置が、第1のグラフ構造データ28においてセンサ52の真位置として用いられる。センサ52の位置(計測位置)は測量器56によって計測されるため、真値に近い正確な位置を計測することができる。しかしながら、上述したように、本実施例では、測量器56を用いてセンサ52を計測する際に、測量器56の設置位置を地点Kから地点Nに移動させている。このように測量器56の設置位置を移動させると、測量器56が計測するセンサ52の計測位置に誤差が生じることがある。測量器56の設置位置情報及びセンサ計測位置情報に基づいて生成した第2のグラフ構造データ38を最適化することによって、センサ52の計測位置を全体としてより真値に近づけることができる。このため、センサ52の位置についての真値情報の精度をより高くすることができる。なお、センサ真位置算出部18は、「第2グラフ構造データ生成部」及び「センサ真位置算出部」の一例である。
次に、地図作成装置10は、センサ位置エッジ追加部20によって、センサ位置エッジ48を第1のグラフ構造データ28内に追加する(S18)。センサ位置エッジ48は、ステップS16で算出されたセンサ52の真位置と、その位置に対応する第1のグラフ構造データ28内のセンサ52の位置とのずれを規定する。図9に示すように、センサ位置エッジ追加部20は、まず、ステップS16で最適化されたセンサ計測ノード44(すなわち、算出されたセンサ52の真位置)を、グラフ構造データ生成部14によって生成された第1のグラフ構造データ28に追加する。次いで、センサ位置エッジ追加部20は、追加されたセンサ計測ノード44と、そのセンサ計測ノード44に対応する第1のグラフ構造データ28内のセンサノード30に基づいて、両位置のずれを規定するセンサ位置エッジ48を生成する。センサ位置エッジ追加部20は、生成したセンサ位置エッジ48を第1のグラフ構造データ28に追加する。
図9に示すように、地点Aにおける計測時のセンサ52の推定位置を規定するセンサノード30aと、地点Aにおけるセンサ52の真位置を規定するセンサ計測ノード44aは一致しないことがある。センサ位置エッジ48aは、センサノード30aとセンサ計測ノード44aのずれを規定している。同様にして、センサ位置エッジ48bは、センサノード30cとセンサ計測ノード44bのずれを規定しており、センサ位置エッジ48cは、センサノード30eとセンサ計測ノード44cのずれを規定しており、センサ位置エッジ48dは、センサノード30gとセンサ計測ノード44dのずれを規定しており、センサ位置エッジ48eは、センサノード30jとセンサ計測ノード44eのずれを規定している。センサ位置エッジ48を追加することによって、第1のグラフ構造データ28に真値情報を取り込むことができる。
次に、地図作成装置10は、グラフ構造データ最適化部22によって、センサ計測ノード44及びセンサ位置エッジ48が追加された第1のグラフ構造データ28を最適化する(S20)。具体的には、グラフ構造データ最適化部22は、第1のグラフ構造データ28内のセンサエッジ32及びセンサ位置エッジ48に基づいて算出される誤差関数の和が最小となるように第1のグラフ構造データ28を最適化する。なお、第1のグラフ構造データ28の最適化については、ステップS16においてセンサ真位置算出部18が第2のグラフ構造データ38を最適化する手順と同様であるため、詳細な説明は省略する。センサエッジ32に加え、センサ位置エッジ48を用いて最適化することによって、真値情報を取り込んだ第1のグラフ構造データ28を最適化することができる。
次に、地図作成装置10では、ループクローズ部24がループクローズエッジ49を追加して第1のグラフ構造データ28をさらに最適化する(S22)。ループクローズエッジ49は、ステップS20で最適化された第1のグラフ構造データ28を構成する複数のセンサノード30の中から選択された2つのセンサノード30を規定するセンサ52間の相対位置や姿勢を規定する。本実施例では、移動経路60の始点である地点Aにおける推定位置を規定するセンサノード30aと、終点である地点Jにおける推定位置を規定するセンサノード30jを選択する。選択する2つのセンサノード30は、2つのセンサノード30によって規定されるセンサ52間の距離が比較的近く、かつ、2つのセンサノード30によって規定されるセンサ52が環境情報を計測した時間が比較的離れているほうがよい。センサ52間の距離が近いと、2つの位置から同一の計測物62を計測することができる。また、センサ52が環境情報を計測した時間が離れると、2つの位置から計測された同一の計測物62の姿勢誤差等が大きくなる。このため、2つのセンサノード30が規定するセンサ52から計測された同一の計測物62間にずれが生じ易くなる。ループクローズエッジ49は、これら2つのセンサノード30を規定するセンサ52間の相対位置や姿勢を規定することで、上記したずれが生じることを抑制する。
図10に示すように、まず、ループクローズ部24は、移動体50の移動経路60の始点である地点Aに対応するセンサノード30aと、移動経路60の終点である地点Jに対応するセンサノード30jの間に、ループクローズエッジ49を生成する。具体的には、ループクローズ部24は、地点Aにおいてセンサ52が計測した環境情報と、地点Jにおいてセンサ52が計測した環境情報に基づいて、両者のずれを規定するループクローズエッジ49を生成する。ループクローズエッジ49は、センサノード30aとセンサノード30jとの間の姿勢の制約を表す情報行列を含む。この情報行列の算出には、パターンマッチングやICP等の公知の方法を用いることができる。なお、本実施例では、追加するループクローズエッジ49は1つであるが、追加するループクローズエッジ49の数は特に限定されるものではなく、2つ以上のループクローズエッジ49を追加してもよい。また、本実施例では、ループクローズエッジ49を生成するために、移動経路60の始点である地点Aに対応するセンサノード30aと、終点である地点Jに対応するセンサノード30jを選択しているが、複数のセンサノード30の中から選択する2つのセンサノード30の組み合わせは特に限定されない。ループクローズ部24は、生成したループクローズエッジ49を第1のグラフ構造データ28に追加する。
次いで、ループクローズ部24は、ループクローズエッジ49が追加された第1のグラフ構造データ28を最適化する。具体的には、ループクローズ部24は、ステップS20において最適化された第1のグラフ構造データ28内のセンサエッジ32、センサ位置エッジ48(図10では図示省略)及びループクローズエッジ49に基づいて算出される誤差関数の和が最小となるように第1のグラフ構造データ28を最適化する。なお、ステップS22における第1のグラフ構造データ28の最適化については、ステップS16において第2のグラフ構造データ38を最適化する手順及びステップS20において第1のグラフ構造データ28を最適化する手順と同様であるため、詳細な説明は省略する。センサエッジ32及びセンサ位置エッジ48に加え、ループクローズエッジ49を用いて最適化することによって、センサ52間の相対的な姿勢のずれを取り込んだ第1のグラフ構造データ28を最適化することができる。
最後に、地図作成装置10は、環境地図作成部26によって、グラフ構造データ最適化部22及びループクローズ部24によって最適化された第1のグラフ構造データ28に基づいて環境地図を作成させる(S24)。具体的には、環境地図作成部26は、グラフ構造データ最適化部22及びループクローズ部24によって最適化された第1のグラフ構造データ28を構成するセンサノード30(以下では、最適化されたセンサノード30ともいう)に基づいて、そのセンサノード30に対応する位置から計測したセンサ52の環境情報を用いて環境地図を作成する。グラフ構造データ最適化部22及びループクローズ部24によって最適化された第1のグラフ構造データ28には、真値情報が組み込まれている。このため、最適化されたセンサノード30が規定するセンサ52の位置及び姿勢は、真値情報によって精度が高くなっている。環境地図作成部26は、センサ52が計測した環境情報に、最適化されたセンサノード30が規定するセンサ52の位置及び姿勢を適用する。これによって、環境情報の精度を高くすることができる。環境地図作成部26は、各センサノード30について、センサ52が計測した環境情報に、最適化されたセンサノード30が規定するセンサ52の位置及び姿勢をそれぞれ適用する。そして、環境地図作成部26は、最適化されたセンサノード30が規定するセンサ52の位置及び姿勢が適用された複数の環境情報をICP等の公知の方法を用いてマッチングし、環境地図を作成する。このように、グラフ構造データ最適化部22及びループクローズ部24によって最適化された第1のグラフ構造データ28に基づいて環境地図を作成することによって、環境地図全体の精度を高めることができる。
本実施例の地図作成装置10は、センサ計測ノード44が規定するセンサ52の真位置と、その位置に対応するセンサノード30が規定するセンサ52の位置とのずれを規定するセンサ位置エッジ48を第1のグラフ構造データ28に追加する。これによって、第1のグラフ構造データ28に真値情報を取込むことができる。また、真値情報は、測量器56の設置位置情報及びセンサ計測位置情報に基づいて生成した第2のグラフ構造データ38を最適化して算出される。これよって、センサ52の計測位置を全体としてより真値に近づけることができ、センサ52の位置についての真値情報の精度をより高くすることができる。また、真値情報が取り込まれた第1のグラフ構造データ28の各エッジ32、48に基づいて算出される誤差関数の和が最小となるように第1のグラフ構造データ28を最適化する。これによって、環境地図全体の精度を高めることができる。
(変形例)
上記の実施例では、対象領域内の中央に比較的小さい計測物62dのみが配置されており、移動体50は比較的広い領域を移動可能となっていたが、このような構成に限定されない。例えば、対象領域内の比較的広い範囲に計測物が配置されており、移動体50が移動可能な範囲が狭くなっている場合であっても、本実施例の技術を適用して対象領域内の地図を作成することができる。具体的には、対象領域は、例えば工場や倉庫等であり、移動体50は、対象領域(すなわち、工場や倉庫等)内の比較的狭い通路等を移動してもよい。
図11は、センサ52が倉庫70内の環境情報を計測する状態の一例を模式的に示している。図11に示すように、倉庫70内には、3つの棚72a〜72cが設置されている。移動体50は、移動経路74を移動する。詳細には、移動経路74は、区間74a〜74fに区分される。区間74aは、棚72aと倉庫70の壁の間のX方向に伸びる区間である。区間74bは、棚72aと倉庫70の壁の間及び棚72bと倉庫70の壁の間のY方向に伸びる区間である。区間74cは、棚72bと倉庫70の壁の間のX方向に伸びる区間である。区間74dは、棚72bと棚72cの間のY方向に伸びる区間である。区間74eは、棚72cと倉庫70の壁の間のX方向に伸びる区間である。区間74fは、棚72cと倉庫70の壁の間及び棚72aと倉庫70の壁の間のY方向に伸びる区間である。このような倉庫70においては、例えば、移動体50は、始点76から、区間74aを+X方向に移動する。そして、移動体50は、区間74bを−Y方向に移動し、さらに区間74cを−X方向に移動する。その後、移動体50は、区間74dを+Y方向に移動した後、同じ区間74dを−Y方向に移動する。そして、移動体50は、区間74eを−X方向に移動した後、区間72fを+Y方向に移動し、始点76の近傍に設定される終点78まで移動し、移動を終了する。この間、センサ52は複数地点で環境情報を計測する。
倉庫70内のように、見通しが悪く、移動体50が移動可能な領域(すなわち、通路等)が比較的狭い場合には、センサ52による計測物(すなわち、壁や棚72等)の計測地点が多いほうが作成される環境地図の精度を高くできる。このため、移動体50が移動経路74を移動する間、可能な限り多くの地点で環境情報を計測したほうがよい。具体的には、倉庫70等では、例えば、移動体50は1〜2m程度移動する毎に環境情報を計測してもよく、移動経路74の距離によるが、合計1000箇所以上の地点で環境情報を計測してもよい。
測量器56による計測についても、計測地点が多いほうが作成される環境地図の精度を高くできる。しかしながら、測量器56による計測は、作業者によって行われるため、計測地点が多いと作業負担が増大する。このため、測量器56による計測は、倉庫70内において特徴を有する箇所を全て含むように計測すると共に、可能な限り少ない方がよい。
例えば、まず、測量器56を区間74aと区間74bの間の地点80aに設置する。測量器56を地点80aに設置すると、区間74aに位置するときのセンサ52の位置と、区間74bに位置するときのセンサ52の位置を計測できる。このとき、区間74aに位置するセンサ52については始点76を含む2〜3地点においてセンサ52の位置を計測し、区間74bに位置するセンサ52については2〜3地点においてセンサ52の位置を計測する。次に、測量器56を区間74bと区間74dの間の地点80bに設置する。測量器56を地点80bに設置すると、区間74cに位置するときのセンサ52の位置と、区間74dに位置するときのセンサ52の位置と、区間74eに位置するときのセンサ52の位置を計測できる。このとき、各区間74c、74d、74eに位置するセンサ52について、1〜3地点ずつセンサ52の位置を計測する。最後に、測量器56を区間74fの中間付近の地点80cに設置する。測量器56を地点80cに設置すると、区間74fに位置するときのセンサ52の位置を計測できる。このとき、終点78を含む2〜3地点のセンサ52の位置を計測する。このように計測することによって、各区間74a〜74fについてのセンサ計測情報を取得できると共に、作業者による作業負担の増大を抑制することができる。
上記の変形例では、倉庫70内において、例えば、センサ52によって合計1000箇所以上の地点から環境情報を計測すると共に、測量器56によって約10〜20箇所のセンサ52の位置を計測する。センサ52によって多くの地点から環境情報を計測することによって、倉庫70内の環境情報を多く取得することができる。また、測量器56によるセンサ52の位置の計測地点を最小限まで減らすことによって、作業者による作業負担の増大を抑制できる。上記の変形例においても、センサ52が計測した環境情報及び算出されたセンサ推定位置情報に基づいて生成された第1のグラフ構造データ28に、測量器56が計測したセンサ52の位置から算出されるセンサ52の真位置を取り込むことによって、環境地図の精度を高くすることができる。したがって、倉庫70等のような見通しの悪い領域内であっても、精度の高い環境地図を作成することができる。
本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。例えば、上記の実施例では、ステップS16において、センサ計測位置情報と測量器56の設置位置情報に基づいて、センサ真位置を算出しているが、このような構成に限定されない。ステップS16を省略してもよく、この場合には、ステップS18において、測量器56によって計測されたセンサ計測位置をセンサ52の真位置として第1のグラフ構造データ28に追加してもよい。また、上記の実施例では、ステップS22において、ループクローズエッジ49を追加して第1のグラフ構造データ28をさらに最適化しているが、このような構成に限定されない。例えば、ステップS20において最適化された第1のグラフ構造データ28を構成するセンサノード30に生じるずれが小さい場合には、ステップS22を省略してもよい。この場合には、ステップS20において最適化された第1のグラフ構造データ28に基づいて環境地図を作成してもよい。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
10:地図作成装置
12:環境計測データ記憶部
14:グラフ構造データ生成部
16:測量データ記憶部
18:センサ真位置算出部
20:センサ位置エッジ追加部
22:グラフ構造データ最適化部
24:ループクローズ部
26:環境地図作成部
28:第1のグラフ構造データ
30:センサノード
32:センサエッジ
38:第2のグラフ構造データ
40:測量器ノード
42:測量器エッジ
44:センサ計測ノード
46:センサ計測エッジ
48:センサ位置エッジ
49:ループクローズエッジ
50:移動体
52:センサ
54:移動体の記憶部
56:測量器
58:測量器の記憶部
60:移動体の移動経路
62:計測物
70:倉庫
72:棚
74:倉庫内の移動経路
80:測量器の設置地点

Claims (4)

  1. 対象領域の環境地図を作成する装置であって、
    前記対象領域内の複数の計測点のそれぞれについて、センサによって計測された環境情報を記憶する環境情報記憶部と、
    前記複数の計測点のそれぞれについて、前記センサの移動量に基づいて算出される計測時の前記センサの推定位置に関するセンサ推定位置情報を記憶するセンサ推定位置情報記憶部と、
    前記環境情報及び前記センサ推定位置情報に基づいて、前記複数の計測点のそれぞれにおける前記センサの位置を規定するセンサノードと、隣接するセンサノード間における前記センサの相対的位置関係を規定するセンサエッジとを備える第1のグラフ構造データを生成する第1グラフ構造データ生成部と、
    前記対象領域内の複数の設置点のそれぞれについて、センサ位置計測装置が設置される設置位置に関する設置位置情報を記憶する設置位置情報記憶部と、
    前記複数の計測点の中から選択された複数の計測点において、前記センサ位置計測装置を用いて計測されるセンサの計測位置に関するセンサ計測位置情報を記憶するセンサ計測位置情報記憶部と、
    前記センサ計測位置情報及び前記設置位置情報に基づいて、前記複数の設置点のそれぞれにおける前記センサ位置計測装置の設置位置を規定する計測装置ノードと、前記複数の設置点間における前記センサ位置計測装置の相対的位置関係を規定する計測装置エッジと、前記複数の設置点のそれぞれにおいて前記センサ位置計測装置で計測された前記センサの位置を規定するセンサ計測ノードと、前記センサ計測ノードとそのセンサ計測ノードに対応する計測装置ノードの相対的位置関係を規定するセンサ計測エッジとを備える第2のグラフ構造データを生成する第2グラフ構造データ生成部と、
    前記計測装置エッジ及び前記センサ計測エッジから算出される誤差関数の和が最小となるように前記第2のグラフ構造データを最適化することにより、センサの真位置を算出するセンサ真位置算出部と、
    前記センサ真位置算出部により算出されたセンサの真位置と、そのセンサ真位置に対応するセンサノードに基づいて、前記算出されたセンサの真位置が規定するセンサの位置と前記対応するセンサノードが規定するセンサの位置とのずれを規定するセンサ位置エッジを前記第1のグラフ構造データに追加するセンサ位置エッジ追加部と、
    前記センサ位置エッジが追加された前記第1のグラフ構造データについて、各エッジから算出される誤差関数の和が最小となるように前記第1のグラフ構造データを最適化するグラフ構造データ最適化部と、を備えている、地図作成装置。
  2. 最適化された第1のグラフ構造データを構成する複数のセンサノードから選択された少なくとも2つのセンサノード間における前記センサの相対的位置関係を規定するループクローズエッジを前記最適化された第1のグラフ構造データに追加し、各エッジから算出される誤差関数の和が最小となるように前記第1のグラフ構造データを最適化するループクローズ部をさらに備える、請求項1に記載の地図作成装置。
  3. 最適化された前記第1のグラフ構造データ内のセンサノードと、センサノードが規定する前記センサの位置から計測された環境情報を用いて環境地図を作成する環境地図作成部をさらに備える、請求項1又は2に記載の地図作成装置。
  4. 前記センサ計測位置情報は、前記センサ位置計測装置によって、前記複数の計測点の中から選択された2以上の計測点において計測されたセンサの位置に関する情報であり、
    前記2以上の計測点間の距離は、前記センサによって環境情報を計測可能な距離より短い、請求項1〜3のいずれか一項に記載の地図作成装置。
JP2018005018A 2018-01-16 2018-01-16 地図作成装置 Active JP6974189B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018005018A JP6974189B2 (ja) 2018-01-16 2018-01-16 地図作成装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018005018A JP6974189B2 (ja) 2018-01-16 2018-01-16 地図作成装置

Publications (2)

Publication Number Publication Date
JP2019124808A JP2019124808A (ja) 2019-07-25
JP6974189B2 true JP6974189B2 (ja) 2021-12-01

Family

ID=67398666

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018005018A Active JP6974189B2 (ja) 2018-01-16 2018-01-16 地図作成装置

Country Status (1)

Country Link
JP (1) JP6974189B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7448945B2 (ja) 2020-05-22 2024-03-13 国立大学法人金沢大学 3次元マップ生成方法及び3次元マップ生成装置
CN113835422B (zh) * 2020-06-08 2023-09-29 杭州海康机器人股份有限公司 一种视觉地图构建方法和移动机器人
EP4354079A1 (en) * 2021-06-11 2024-04-17 Nikon Corporation Position measurement device and position measurement method

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5852645B2 (ja) * 2011-05-20 2016-02-03 株式会社日立製作所 軌跡補正方法、軌跡補正装置および移動体装置
JP6191484B2 (ja) * 2014-02-03 2017-09-06 トヨタ自動車株式会社 移動ロボットの自己位置推定方法
JP2016080460A (ja) * 2014-10-15 2016-05-16 シャープ株式会社 移動体

Also Published As

Publication number Publication date
JP2019124808A (ja) 2019-07-25

Similar Documents

Publication Publication Date Title
JP5452442B2 (ja) ロボットシステム及び地図更新方法
JP6974189B2 (ja) 地図作成装置
US5911767A (en) Navigation system for an autonomous mobile robot
DK2343615T3 (en) Independent movement device
JP4660387B2 (ja) 移動体の位置情報補正装置及び方法、その装置を制御するコンピュータプログラムを保存するコンピュータで読み取り可能な記録媒体
JP2006322937A (ja) オブジェクトの表面の3d座標を判定する方法
JP2005032196A (ja) 移動ロボット用経路計画システム
KR20170088228A (ko) 다중로봇의 자기위치인식에 기반한 지도작성 시스템 및 그 방법
JP6874343B2 (ja) 地図作成装置
US9943959B2 (en) Map localizing with partially obstructed ranging devices for autonomous robots and vehicles
JP2016103158A (ja) 移動量推定装置、自律移動体、及び移動量の推定方法
CN114236564B (zh) 动态环境下机器人定位的方法、机器人、装置及存储介质
JP5728564B2 (ja) ロボットシステム及び地図更新方法
KR20180078736A (ko) 중복 그리드 기법을 이용한 실내 지도 생성 장치 및 방법
JP2018084995A (ja) 経路データ生成装置、それを備える移動体及び経路データ生成方法
KR20180105326A (ko) 물류 자동화를 위한 자율주행 로봇의 환경인식 및 자기위치 추정 방법
JP6589578B2 (ja) 移動量推定装置、自律移動体、及び移動量の推定方法
JP5210396B2 (ja) コンピュータを援用してセンサデータから物体の運動を計算する方法
JP5953393B2 (ja) ロボットシステム及び地図更新方法
JP2019168514A (ja) 地図データ生成装置
JP5895682B2 (ja) 障害物検出装置及びそれを備えた移動体
JP6428569B2 (ja) 環境地図の更新方法
KR20230082885A (ko) 자율주행로봇의 성능평가 방법 및 성능평가 시스템
JP4108424B2 (ja) センサバイアス誤差推定用の目標位置決定方法
JP2018084544A (ja) 位置推定装置、地図情報作製装置、移動体、位置推定方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201113

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210929

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20211026

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211104

R150 Certificate of patent or registration of utility model

Ref document number: 6974189

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150