JP6649743B2 - 一致性評価装置および一致性評価方法 - Google Patents

一致性評価装置および一致性評価方法 Download PDF

Info

Publication number
JP6649743B2
JP6649743B2 JP2015212282A JP2015212282A JP6649743B2 JP 6649743 B2 JP6649743 B2 JP 6649743B2 JP 2015212282 A JP2015212282 A JP 2015212282A JP 2015212282 A JP2015212282 A JP 2015212282A JP 6649743 B2 JP6649743 B2 JP 6649743B2
Authority
JP
Japan
Prior art keywords
measurement
map
recording
evaluation
point
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
JP2015212282A
Other languages
English (en)
Other versions
JP2017083663A (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.)
Sharp Corp
Original Assignee
Sharp Corp
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 Sharp Corp filed Critical Sharp Corp
Priority to JP2015212282A priority Critical patent/JP6649743B2/ja
Publication of JP2017083663A publication Critical patent/JP2017083663A/ja
Application granted granted Critical
Publication of JP6649743B2 publication Critical patent/JP6649743B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Instructional Devices (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Description

本発明は、一致性評価装置および一致性評価方法に関する。
従来、建物内や屋外の限定された領域内を自律的に走行する自律走行体が知られている。また、近年、自律走行体が移動すべき領域であって、周囲の環境に応じたマップを作成する機能を有する自律走行体が開発されている。距離センサを有するロボットによるマップ作成手法の一つとして、SLAM(Simultaneous Localization and Mapping)が知られている。SLAMに関する技術の例が、以下に説明するように非特許文献1〜4に開示されている。
図17は、非特許文献1の技術を説明するための図である。非特許文献1には、スキャンマッチの一方式が開示されている。この方式では、基準スキャンを用いて図17に示す基準マップを作成する。この基準マップは、複数のグリッドによって構成されている。各グリッドは、基準マップにおけるそのグリッドがある場所での物体(壁など)の検出確率を表す値を有する。図17の(b)において、白い場所では検出確率が高く、黒い場所では低い。
非特許文献1の技術では、基準スキャンに含まれる各測定点を、基準グリッドマップに投影させる。そして、投影させた各点の位置を中心として、所定のぼやけ範囲に亘って等方(同心円状)に確率分布を算出する。ここで、検出確率およびぼやけ範囲は、計算効率の観点から、理論値(有理数)ではなく、規定範囲(たとえば0〜255)内の整数等によって表される。
基準マップの生成後、スキャンマッチの対象とするスキャン(以下、基準スキャン)をs、基準マップに投影する。次に、基準スキャンの位置に関するx、y、およびθ値を、所定の探索範囲で変化させることによって、基準マップ内の探索範囲を全域走査する。これにより、所定の評価値が得られる。最後に、各評価値P[θ][x][y]を加重平均することによって、最大評価位置(x、y、θ)を算出する。この位置が、対象スキャンのマッチ位置に決定される。
非特許文献2には、非特許文献1に開示されたスキャンマッチを利用するSLAMの一例が開示されている。
図18は、非特許文献3の技術を説明するための図である。非特許文献3には、スキャンマッチの一方式が開示されている。この技術では、基準マップを構成する各グリッドが、所定の方位値を有している。各グリッドの方位値は、対応するグリッドの位置がスキャンによって検出されたときの測定方向を平均することによって、算出される。また、図18に示すように、薄い壁に対しては、グリッドが2つの方位値を有することによって、1つのグリッドが壁の表裏2面を表現する。
図19は、非特許文献4の技術を説明するための図である。非特許文献4には、スキャンデータを用いたマップ生成の一方式が開示されている。この技術では、スキャンデータと、それに隣接するデータとの位置関係に基づき壁の向きを推測する。そして、図19に示すように、この推測結果に基づき、スキャンデータに含まれる各点の測定距離の誤差を補正する。
Real-Time Correlative Scan Matching, Olson et al, Robotics and Automation, 2009. ICRA '09. IEEE International Conference on Page(s):4387-4393 Efficient Sparse Pose Adjustment for 2D Mapping, Konolige et al, Intelligent Robots and Systems (IROS), 2010 IEEE/RSJ International Conference on Page(s):22-29 High Quality Pose Estimation by Aligning Multiple Scans to a Latent Map", Huang et al, Robotics and Automation (ICRA), 2010 IEEE International Conference on Page(s):1353-1360 Highly Accurate Maximum Likelihood Laser Mapping by Jointly Optimizing Laser Points and Robot Pose, Ruhnke M. et al , Robotics and Automation (ICRA), 2011 IEEE International Conference on Page(s):2812-2817
非特許文献1の技術では、各グリッドが、検出点における検出確率の情報は有するが、方向の情報は有しない。したがって、壁の表裏を区別することができない。そのため、スキャンマッチ時に、逆向きの壁同士を一致させる間違いによって、通路が一本ずれた形で対象スキャンと基準スキャンとがマッチしてしまうなど、スキャンマッチが正確になされない場合がある。
非特許文献2の技術は非特許文献1のスキャンマッチを利用するものであるので、非特許文献1と同様の問題がある。
特許文献3の技術では、グリッドが1または2の方位値を有する。したがって、グリッドは、3面以上から測定された点(細い棒など)を正しく表現することができない。その結果、スキャンマッチによる評価結果が不適切に上下する問題がある。また、この技術には、グリッドが「2つの方位値」を有する場合があるという例外処理が必要になる。この例外処理は、スキャンマッチにおける繰り返しループ処理内の最内ループに配置される。この結果、スキャンマッチに要する計算時間が著しく長くなるという問題もある。
特許文献4には、スキャンごとの距離誤差を低減する技術が開示されるにすぎず、これをスキャンマッチに適用する工夫は何ら示されていない。
本発明は、上記の問題点に鑑みてなされたものである。そしてその目的は、記録情報における記録点と、測定点との一致性をより正確に評価することができる一致性評価装置および一致性評価方法を提供することにある。
本発明の一態様に係る一致性評価装置は、少なくとも1つの記録点に対するマップ上における位置情報および方向情報を、記録情報として記録する記録部と、所定の測定位置と周囲の測定点との距離と、当該測定位置から上記測定点への測定方向とを表す測定データを取得する取得部と、取得された上記測定データに基づき、上記マップ上における上記測定点の位置および測定方向を算出する算出部と、上記記録情報における各上記記録点の上記マップ上における位置情報と、取得された測定データから算出された上記測定点の上記マップ上における位置との、それぞれの一致度合いを表す各位置評価値を算出する位置評価部と、上記記録情報における各上記記録点の方向情報と、取得された上記測定データから算出された上記測定点の測定方向とのそれぞれの一致度合いを表す各方向評価値を算出する方向評価部と、算出された上記各位置評価値および上記各方向評価値に基づき、上記測定点が上記記録情報における各上記記録点に一致するか否かに関する評価を行う一致性評価部とを備えていることを特徴としている。
本発明の一態様に係る一致性評価方法は、少なくとも1つの記録点に対するマップ上における位置情報および方向情報を、記録情報として記録する記録工程と、所定の測定位置と周囲の測定点との距離と、当該測定位置から上記測定点への測定方向とを表す測定データを取得する取得工程と、取得された上記測定データに基づき、上記マップ上における上記測定点の位置および測定方向を算出する算出工程と、上記記録情報における各上記記録点の上記マップ上における位置情報と、取得された測定データから算出された上記測定点の上記マップ上における位置との、それぞれの一致度合いを表す各位置評価値を算出する位置評価工程と、上記記録情報における各上記記録点の方向情報と、取得された上記測定データから算出された上記測定点の測定方向とのそれぞれの一致度合いを表す各方向評価値を算出する方向評価工程と、算出された上記各位置評価値および上記各方向評価値に基づき、上記測定点が上記記録情報における各上記記録点に一致するか否かに関する評価を行う一致性評価工程とを有することを特徴としている。
本発明の一態様によれば、記録情報における記録点と、測定点との一致性をより正確に評価することができるという効果を奏する。
本発明の実施形態1に係るロボットの要部構成を示すブロック図である。 本発明の実施形態1に係るロボットの外観を示す図である。 本発明の実施形態1に係るロボットが備えるを説明する図である。 本実施形態に係るロボットにおけるマップ作成の概要を説明する図である。 本発明の実施形態1における、方位マップを構成するグリッドにおいて定義される方位区分の詳細を説明するための図である。 本発明の実施形態1における方位ビット値の算出例および方位マップの例を示す図である。 本発明の実施形態1におけるノード追加部による処理の流れを示すフローチャートである。 本発明の実施形態1におけるループ検出部による処理の流れを示すフローチャートである。 本発明の実施形態1における基準マップを作成するための処理手順を示す図である。 本発明の実施形態1におけるマッチ位置算出のための基本的な処理手順を示す図である。 本発明の実施形態1における方位マップを作成するための処理手順を示す図である。 本発明の実施形態1に係るマッチ位置算出のための追加処理を示す図である。 本発明の実施形態1における方位評価の一例を説明する図である。 本発明の実施形態2における方位マップを構成するグリッドにおいて定義される方位区分の詳細を説明するための図である。 本発明の実施形態2における方位ビット値の算出例および方位マップの例を示す図である。 本発明の実施形態3に係るロボットの要部構成を示すブロック図である。 非特許文献1の技術を説明するための図である。 非特許文献2の技術を説明するための図である。 非特許文献3の技術を説明するための図である。
〔実施形態1〕
図1〜図7を参照して、本発明の実施形態1について以下に説明する。
(ロボット1の概要)
本実施形態に係るロボット1(一致性評価装置)は、清掃作業を行う機能を有し、さらに、左右独立した駆動輪によって平面である床面を自律的に走行可能な装置である。本実施軽形態では、ロボット1は床面の清掃を行う自律走行体であるものとする。図示しないが、ロボット1は、清掃作業を行うための作業ユニットを備える。作業ユニットは、床に落ちているゴミを吸引する吸引部や、モップ、洗浄液タンクおよび廃液タンクを有するウェット洗浄部等を有する。なお、作業ユニットが有する機能は清掃に限定されず、たとえば、回転する刈刃を有することで芝を刈る芝刈り機能であってもよい。
ロボット1は、周囲の地形などの環境に応じて、自律走行して清掃すべき領域や清掃順等を特定するためのマップを作成する機能を有する。ロボット1は、マップを作成する機能として、ロボット1が自律走行をしてマップを作成する機能を有する。
(座標系)
本実施形態において、ロボット1aは、マップ作成のために、それぞれ区別される複数の座標系を用いる。具体的には、車体座標系、センサ座標系、ワールド座標系、およびグリッド座標系が用いられる。
車体座標系とは、ロボット1a中の所定の基準点を原点とする座標系である。原点は、ロボット1aの各駆動輪22の中央にある。ロボット1aの進行方向前方へ向かう方向を、x軸プラス方向とし、左側に向かう方向をy軸プラス方向とする。
センサ座標系とは、図3に示すように、LRF3から見た座標系のことである。車体座標系に、LRF3の取り付け位置分のオフセットを加えることによって、センサ座標系が得られる。
ワールド座標系は、ロボット1a内部で計算する、所定の外部基準点を原点とする座標系である。たとえば、ロボット1aの走行開始時のロボット1aの座標を原点として設定される。ワールド座標系は、オドメトリ座標系とも呼ばれる。
グリッド座標系は、後述するマップにおいてグリッド数で各座標を表す座標系である。マップにおける右方向をx軸プラス方向とし、上方向をy軸プラス方向とする。グリッド座標系における原点は、この座標系の利用場面によって異なり、適宜設定される。
(ロボット1の構成)
図1は、本発明の実施形態1に係るロボット1の要部構成を示すブロック図である。この図に示すように、ロボット1は、駆動部2、LRF(Laser Range Finder)3、制御部4、および記憶部5(記録部)を備えている。
(駆動部2)
駆動部2は、左右2式のモータ21、駆動輪22、およびエンコーダ23を備えている。モータ21は、駆動輪22と接続されており、制御部4による制御に応じて駆動輪22を回転させる。駆動輪22は、本体部の左右に1つずつ配されている。2個の駆動輪22は、自身に接続されているモータ21によって回転する。エンコーダ23は、各駆動輪22に接続されている。各駆動輪22の回転数を検出し制御部4へ出力する。
(LRF3)
LRF3は、光学式の距離センサを回転軸周りに回転させながら回転軸と直交する走査平面内の周囲物体までの距離を測定する測定器である。LRF3は、レーザ光出力部31、レーザ光受光部32およびスキャンデータ出力部33を備えている。レーザ光出力部31、レーザ光受光部32は、LRF3における所定の回転軸で回転する走査機構上に配置されている。
図2は、本発明の実施形態1に係るロボット1の外観を示す図である。この図に示すように、LRF3は、ロボット1のうち進行方向前側の面である、本体部の前面に配されている。なお、さらに、本体部の前面とは逆側である本体部の後面にも配されていてもよい。LRF3は、レーザ光Lを放射状に出力して水平面内をスキャンすることで、ロボット1と、ロボット1の周囲の壁10などの物体とのセンサ座標系における距離を測定し、スキャンデータとして出力するものである。
図3は、本発明の実施形態1に係るロボット1が備えるLRF3を説明する図である。LRF3は、レーザ光Lの照射した角度と、照射してから反射するまでに要した時間とに基づいて、ある時点での測定方向についてのレーザ光Lを反射した障害物の距離を検出する、いわゆるTOF(time of flight)の原理による障害物検知(センシング)を行う。LRF3は、その回転軸が略鉛直方向になるようにロボット1に設置されている。LRF3は、回転軸を回転しつつ繰り返し、測定光の発信と反射光の受信とを行うことによって、略水平面内の周囲各方向の距離を測定する。
図3に示すように、LRF3の左右方向の視野は、ロボット1の進行方向前方を0度として、左右100度である。LRF3は、1度ごとに距離を測定する。上述したように、本実施形態では、ロボット1の進行方向前方へ向かう方向をセンサ座標系におけるx軸プラス方向とする。また、当該x軸と直角に交差する方向をy軸方向とする。さらに、ロボット1を平面視したとき、x軸から反時計回り方向を角度のプラス方向とし、x軸から時計回り方向を角度のマイナス方向とする。さらに、y軸のうち、x軸プラス方向を反時計回りへ90度回転させた方向(図3の紙面左向き方向)をy軸プラス方向とし、x軸プラス方向から時計回りへ90度回転させた方向(図3の紙面右向き方向)をy軸マイナス方向とする。
LRF3が取得するスキャンデータは、−100度〜0度〜+100度の合計201件の測定データによって構成されている。LRF3は、測定周期ごとに、現在の測定位置において周囲の測定点に対する測定を行い、それによって取得したスキャンデータを制御部4に出力する。LRF3の測定周期は任意で設定すればよいが、一例として、50msであるものとする。
LRF3は、ある方位の距離が測定できなかった場合、その方位の距離データを、あかじめ設定した所定の無効値とする。このLRF3によって距離が測定できなかった場合とは、その方位の壁までの距離が遠すぎたり、反射率が低くすぎたりするなどによって、レーザ光Lの反射光の強度が小さすぎ、レーザ光受光部32が反射光を検出できない場合や、ロボット1の周囲の光が強すぎることでレーザ光受光部32がレーザ光Lの反射光を識別できない場合などを挙げることができる。
また、無効値は、LRF3として規定されている定格距離よりも大幅に大きな値を設定しておく。一例として、LRF3の定格距離が10mと定められている場合、無効値は99mと設定しておく。この場合、LRF3が測定したスキャンデータが99mである場合、その方位に存在する壁は、LRF3にて距離を測定できない程遠い位置に存在すると判定できる。
(制御部4)
制御部4は、ノード追加部41(取得部、算出部、位置評価部、方向評価部、一致性評価部)、ループ検出部42(取得部、算出部、位置評価部、方向評価部、一致性評価部)、およびマップ生成部43を備えている。ノード追加部41、ループ検出部42、およびマップ生成部43は、後述するSLAM機能を実現する構成要素である。
ノード追加部41は、LRF3からの出力である距離情報(スキャンデータ)およびエンコーダ23からの出力である回転数情報から、各方位における壁等の障害物の距離および自己位置を表すノードと呼ばれる、所定のタイミングにおけるデータを生成し、ノード情報16cとして記憶部5に記憶する。ノード追加部41は、たとえば、ロボット1が所定距離や所定角度を移動したとき等、あらかじめ設定された所定のタイミングごとにノードを生成し、ノード51aとして記憶部5に順次追加して記憶する。
ノード追加部41は、各ノードをつなぎ合わせる際、各ノードに示されている自己位置を中心に、各ノードにおける障害物の位置同士が最もよく重なり合う位置を見つける、いわゆるスキャンマッチ処理を行う。これによって、ノード追加部41は、各ノード同士をつなぎ合わせる際の精度を向上させる。
マップ生成部43は、測定範囲外形相当の面積を持つあらかじめ用意した空マップに、ノード追加部41がつなぎ合わせた各ノードにおける障害物の位置を描いていく。そして、マップ生成部43は、この空マップに入力した障害物の位置の内側を、ロボット1の走行可能領域として特定する。これによって、マップ生成部43はマップを作成し、作成したマップを出力マップ53cとして記憶部5に記憶する。
(記憶部5)
記憶部5は、ロボット1におけるマップ作成に関する各種のデータを記憶している。具体的には、記憶部5には、ノード群51、拘束群52、およびマップ群53が記憶されている。
ノード群51は、ノード追加部41によって追加された複数のノード51aによって構成されている。各ノード51aは、LRF3の位置51bと、その位置51bにおいて取得されたスキャンデータ51cとによって構成されている。なお、各ノード51aには、生成順にノード番号が付与されている。ノード51aの位置51bは、ワールド座標系上の位置である。
拘束群52は、ノード追加部41またはループ検出部42によって追加された複数の拘束52aによって構成されている。各拘束52aは、2つのノードの位置関係を規定するデータである。一方を基準ノードと呼び、他方を対象ノードと呼ぶ。各拘束52aでは、基準ノードのセンサ座標系における、対象ノードの位置が車体座標系において規定されている。
マップ群53は、基準マップ53a(記録情報)、方位マップ53b(記録情報)、出力マップ53cによって構成されている。基準マップ53aは、少なくとも1つのノード51aを用いて作成され、各ノード51aに含まれるスキャンデータ51cに含まれる各測定データから算出されるプロット(測定点)の位置における壁の有無が規定されるマップである。
方位マップ53bは、少なくとも1つのノード51aを用いて作成され、各スキャンデータ51cに含まれる距離データから得られる各プロット(測定点)の方位を表す情報を有するマップである。
出力マップ53cは、追加された全ノード51aおよび全拘束52aの情報が反映された最終的なマップである。出力マップ53cは、まずワールド座標系においてマップ上に各ノード51aをプロットし、さらにワールド座標系上の各プロットの位置をグリッド座標系上の位置に換算することによって、作成される。出力マップ53cはたとえばロボット1aに出力され、ユーザの目に触れる。また、出力マップ53cは、たとえば経路探索または自立走行をロボット1が行う際の、ロボット1の内部制御にも利用される。
(マップ作成)
次に、主に図4を参照して、本実施形態におけるマップ作成の概要について説明する。
図4は、本実施形態に係るロボット1aにおけるマップ作成の概要を説明する図である。
ロボット1は、自己位置を推定しつつマップを作成する、いわゆるSLAM(Simultaneous Localization and Mapping)処理を用いることによって、マップを作成する。ロボット1は、移動するにつれて、ノード追加部41、ループ検出部42、およびマップ生成部43がそれぞれ所定の処理を実行することによって、マップを作成する。
(ノード追加部41の処理)
1.オドメトリ処理
ノード追加部41は、まず、オドメトリ処理を実行する。エンコーダ23は、駆動輪22の回転数を回転数情報として制御部4へ出力する。LRF3のスキャンデータ出力部33は、あらかじめ設定された所定の測定周期(たとえば50ms)ごとに、スキャンデータを制御部4へ出力する。そして、ノード追加部41は、駆動輪22の回転数から車体の移動距離と方位を計算することによって、ロボット1が有するワールド座標系上の自己の位置(x、y、θ)を計算する(すなわちオドメトリ処理を行う)。これによって、ノード追加部41は、ロボット1のワールド座標系上の自己位置を認識する。続いて、ノード追加部41は、自己の位置(x、y、θ)に、LRF3の取り付け分のオフセットを加えることによって、ワールド座標系上のLRF3の位置(x、y、θ)を算出する。
2.ノード追加処理
次にノード追加部41は、ロボット1が、距離または方位角が所定以上となる程度移動するごとに、そのときのLRF3の位置(x、y、θ)およびスキャンデータからなるノード51aとして記憶部5に記憶する。
各ノードは、LRF3からの出力をSLAM処理に適したタイミングでノード追加部41が生成するものである。LRF3からの出力として、一例として50msごとなど、比較的、短い時間間隔で一式のスキャンデータが制御部4へ出力されるため、このLRF3の出力ごとにノードを生成するとデータ量が多くなりすぎる。このため、ノード追加部41は、適度に間引いた時間間隔で、各ノード51aを生成し記憶部5へ記憶していく。なお、このノード追加部41がノード51aを生成するタイミングは、任意で設定すればよい。
3.拘束追加
次にノード追加部41は、記憶部5に記憶された各ノード情報51aを参照し、各ノードの位置関係を算出する。ノード追加部41は、オドメトリ処理による平面座標上のLRF3の(x、y、θ)を初期値として、各ノードにおける距離形状同士が最もよく重なり合う位置関係を見つける、いわゆるスキャンマッチ処理を行い、各ノード同士をつなぎ合わせる際の壁等の障害物の精度を向上させる。あるノードと他のノードとの位置関係は、拘束と呼ばれる。すなわちノード追加部41は、スキャンマッチによって各ノード間の拘束を作成し、これを表す拘束情報52aを記憶部5に記憶する。
(ループ検出部42の処理)
ループ検出部42は、ループ閉合処理を実行する。この処理は、ロボット1の軌跡上において、ロボット1が同じ場所を2回通るループ経路がある場合に、マップを正しく作成するために、ループ経路における最初の位置と最後の位置とが一致するようにマップを変形する処理のことである。言い換えると、ループ経路における最初の位置と最後の位置とが一致する拘束を生成し、これに基づいてノードの位置を修正することである。図4の例では、ノードN2からノードN1への拘束がこれに該当する。
ループ閉合処理は、ループ検出処理およびグラフ最適化処理を含む。
1.ループ検出処理
図4の例では、ループ検出部42は、スキャンマッチを実行することによって、ループ経路を構成するノードN2からノードN1への拘束を生成する。その際、ループ検出部42は、拘束判定の対象であるノードを対象に、各方位における壁10までの距離を平面座標系に投影演算することで一式の距離形状を生成する。ノードごとに、LRF3が検出した壁10の位置は、制御部4において、複数の点Pからなる距離形状で表される。
図4の(b)は、ノードN1での距離形状を表している。図4の(c)は、ノードN1から、ロボット1が移動経路Rを通って移動した後のノードN2での距離形状を表している。
ループ検出部42は、ノードN1における距離形状と、ノードN2における距離形状とに基づき、ノードN1とノードN2との拘束を生成する。その際、ループ検出部42は、図4の(d)のようにノードN1とノードN2との位置関係を正しく算出できれば、適切な拘束を生成することができる。一方、図4の(e)のようにノードN1とノードN2との位置関係を間違って算出(外れ値を算出)してしまうと、誤った拘束を生成する。図4の(e)では、ノードN1の距離形状における壁と、ノードN2の距離形状における壁とを、壁の表裏を間違えて重ね合わせている。なお、外れ値(Outlier)とは、一般的には、統計などで集団から離れたところにあるデータを示す用語であり、本来は、間違った値という意味を持たないが、SLAMの分野では、外れ値は「他のデータと矛盾する間違った値」の意味で実質的に用いられる。
本発明によって実現される新規なスキャンマッチは、ループ検出部42によるループ閉合に関する拘束生成時に特に用いられる。このスキャンマッチによって、図4の(e)のような誤った拘束を生成することを防止し、図4の(d)に示すような正しい拘束を生成することが実現される。なお、本発明のスキャンマッチは、上述したノード追加部41による通常の拘束生成時に用いてもよい。
2.グラフ最適化処理
ループ検出部42は、新たに生成した拘束を記憶部5に記憶する。これにより、新たな拘束が基準マップ53aに追加される。ループ検出部42は、追加した拘束を含む基準マップ53a内の全拘束の誤差を最小化するように、基準マップ53a内の全ノードの位置を調整する(グラフ最適化)。この処理によって、ループ経路における開始位置と終了位置とが一致する。ループ検出部42は、具体的なグラフ最適処理として、たとえば非特許文献2に記載された従来の方法を利用することができる。この処理は本発明における本質的な特徴点ではないため、これ以上の詳細な説明は省略する。
(マップ生成部43の処理)
マップ生成部43は、測定範囲外形相当の面積を持つあらかじめ用意した空マップに、各ノードにおける障害物の位置である各点Pの位置を描いていく。マップ生成部43は、最初は未知領域である空マップ上の、壁や柱等の障害物の位置座標を、各ノードにおける障害物を表す各点Pの位置から算出し、空マップに入力していく。そして、マップ生成部43は、この空マップに入力した各点Pの位置の内側を、ロボット1の走行可能領域として特定する。これによって、マップ生成部43は出力マップ53cを作成し記憶部5に記憶する。
(方位区分の定義)
詳しくは後述するが、本実施形態のロボット1aは、基準マップ53aに加えて、各基準スキャンに含まれるプロットの方位を表す所定の方位マップ53bを作成することによって、スキャンマッチを正確に実行する。図5は、本発明の実施形態1における、方位マップ53bを構成するグリッドGにおいて規定される方位区分の詳細を説明するための図である。方位マップ53bは、複数のグリッドGによって構成されている。各グリッドGは、その位置に壁が測定された場合、どの方位から測定されたかを、以下に説明する方位ビット値(記録点の測定方向の情報)として保持する。各グリットGには、全方位範囲が所定の方位範囲ごとに区分された複数の方位区分が規定されている。図5に示すように、本実施形態では、方位マップ53b内の各グリッドGにおいて規定される方位区分は8種類であり、それぞれ、45度分の異なる角度範囲を有する。具体的には次のとおりである:
方位区分0=0〜22.5°および337.5〜360°間
方位区分1=22.5〜67.5°間
方位区分2=67.5〜112.5°間
方位区分3=112.5〜157.5°間
方位区分4=157.5〜202.5°間
方位区分5=202.5〜247.5°間
方位区分6=247.5〜292.5°間
方位区分7=292.5〜337.5°間。
このように複数の方位区分0〜7は、グリッドGにおける全方位範囲が整数値の個数に均等に区分されたものである。なお、本実施形態では、方位マップ53bにおけるx軸プラス方向を、方位マップ53bにおける0度方向とする。
ノード追加部41は、方位マップ53bの作成時、まず、スキャンデータ51c中の各プロットの戻り光線方位が属する方位区分を算出する。戻り光線方位とは、グリッドGからLRF3に向かう光線の方向を方位マップ53bにおいて見た角度のことである。
グリッドGにおいて、各方位区分に加えて所定の隣接幅があらかじめ規定されている。本実施形態では隣接幅は1である。ノード追加部41は、プロットの戻り光線方位が属する方位区分を隣接幅だけ広げることによって、プロットの戻り光線方位に対応する、数値列としての方位範囲を算出する。戻り光線方位が属する方位区分と、そのとき算出される方位範囲との関係は次のとおりである。
方位区分=0のとき、方位範囲=(7、0、1)
方位区分=1のとき、方位範囲=(0、1、2)
方位区分=2のとき、方位範囲=(1、2、3)
方位区分=3のとき、方位範囲=(2、3、4)
方位区分=4のとき、方位範囲=(3、4、5)
方位区分=5のとき、方位範囲=(4、5、6)
方位区分=6のとき、方位範囲=(5、6、7)
方位区分=7のとき、方位範囲=(6、7、0)。
ここで、方位範囲における各数字は、グリッドGにおいて規定される方位区分の番号を示す。
ノード追加部41は、あるプロットに対して算出した方位範囲を用いて、方位マップ53bにおける当該プロットに対応するグリッドGの方位ビット値を算出する。方位ビット値とは、方位範囲に含まれる各0〜7の数値の有無を、それぞれ1桁〜8桁目のビット(測定方向の存在を示す評価値)の真偽に対応させ、各ビットをOR演算することによって算出される値(測定方向の情報)である。具体的には、方位範囲に含まれる数字に対応する桁のビットを1とし、含まれない数字に対応する桁のビットを0として、各ビットの値をOR演算する。これにより、本実施形態の方位ビット値は0〜255のいずれかの値を取る。方位ビット値が0であれば、グリッドGにおける方位区分の値はすべて0である。一方、方位ビット値が255であれば、グリッドGにおける方位区分の値はすべて1である。
図6は、本発明の実施形態1における方位ビット値の算出例および方位マップ53bの例を示す図である。この図の(a)では、1つのグリッドGが9つの同じ大きさのサブグリッドGに分割され、中央を除く8つの各サブグリッドGに対して、図15に規定される方位区分0〜7のうち、サブグリッドGの配置によって決まる方位に対応する方位区分の番号が振られている。
図6の(a)に示すように、プロットの戻り光線方位が方位区分1に含まれる場合、方位区分1には方位区分0および2が隣接している。そのため、方位範囲=(0、1、2)である。この場合、このプロットに対応するグリッドGの方位ビット値は、2^0|2^1|2^2=0000111b=07h(16進数)である。これを10進数で表すと、2+2+2=7である。
ノード追加部41は、あるプロットに対応するグリッドGに対して算出した方位ビット値を、このグリッドGが有する方位ビット値の既存値と論理OR演算することによって、このグリッドGの方位ビット値を更新する。この結果、グリッドGは、複数の異なるプロットから算出される複数の方位区分を表す方位ビット値を有することができるようになる。たとえばグリッドGの方位ビット値が15(2+2+2+2)であれば、このグリッドGでは、方位区分0〜3がすべて「有」であることが分かる。
図6の(b)に、本実施形態における方位マップ53bの例を示す。この例では、2つのスキャンデータを合成することによって作成された方位マップ53bを示す。ノードN11において取得されたスキャンデータを方位マップ53bに投影すると、このスキャンデータに含まれる2つのプロットが、グリッドG1およびグリッドG2に向かっている。したがって、グリッドG1およびグリッドG2におけるこれらのプロットの投影に対応する方位範囲(戻り光線方位が属する方位区分およびその隣接箇所)が「有」になる(図中の網掛け箇所)。
一方、ノードN12において取得されたスキャンデータを方位マップ53bに投影すると、このスキャンデータに含まれる2つのプロットが、グリッドG1〜G3に向かっている。したがって、グリッドG1〜G3におけるこれらのプロットの投影に対応する方位範囲が「有」になる(図中の網掛け箇所)。
本実施形態では、各グリッドGの方位区分が8種類であるので、各グリッドGが有することができる方位ビット値は、8ビット(0〜255までのいずれか)の値を取る。したがって、各グリッドGにおけるプロットの方位を細かく規定することができる。
(処理の流れ)
図7および図8を参照して、ノード追加部41における処理の流れおよびループ検出部42による処理の流れをそれぞれ以下に説明する。図7は、本発明の実施形態1におけるノード追加部41による処理の流れを示すフローチャートである。図8は、本発明の実施形態1におけるループ検出部42による処理の流れを示すフローチャートである。ロボット1では、ノード追加部41による一連の処理およびループ検出部42による一連の処理は、並行して実行される。
図7に示すように、ノード追加部41はまず、エンコーダ23から取得した回転量情報と、スキャンデータ出力部33から取得したスキャンデータとを用いて、オドメトリ処理を実行する(S1)。次に、ノード追加部41は、ノードを追加すべきかを判定する(S2)。S2がNOなら、図7の処理は最初に戻る。一方、S2がYESなら、ノード追加部41は、スキャンマッチを実行することによって、ノードおよび拘束を生成する(S3)。以下では、このとき拘束と共に追加される最新のノードを対象ノードと呼び、その一つ前に追加されたノードを基準ノードと呼ぶ。ノード追加部41は、生成したノードおよび拘束を基準マップ53aに追加する(S4、S5)。この後、図7の処理はS1に戻る。すなわちノード追加部41は、図7に示す一連の処理を繰り返し実行する。
図8に示すように、ループ検出部42はまず、ループを構成する拘束の候補に残りがあるか否かを判定する(S11)。本実施形態では、拘束の候補とは、ノード番号が所定値(たとえば10)以上離れている2つのノードのことである。これらの2つのノードのうち、一方を基準ノードNR1、他方を対象ノードNTと称する。ループ検出部42は、拘束として追加すべきか否かを判定済みの2つのノードの組み合わせについては、その記録を残しておく。そして、記録済みの組み合わせの2つのノードについては、S11において、拘束候補から除外する。S11がNOなら、ループ検出部42は一定時間待機する(S12)。この後、図8の処理はS11に戻る。
一方、S11がYESなら、ループ検出部42は、拘束候補の1件を評価する(S13)。次にループ検出部42は、拘束を追加すべきか否かを判定する(S14)。具体的には、ループ検出部42は、2つのノードの位置間の距離が、所定値(たとえば5メートル)よりも小さい場合、これらの2つのノード間の拘束を追加すべきであると判定する。S14がYESなら、ループ検出部42はスキャンマッチを実行し(S15)、その結果に基づき、拘束を基準マップ53aに追加する(S15)。その後、ループ検出部42はグラフ最適化を実行する(S16)。この後、図8の処理はS11に戻る。すなわちループ検出部42は、図8に示す一連の処理を繰り返し実行する。
(スキャンマッチの詳細)
図9〜図12を参照して、本実施形態におけるスキャンマッチの詳細を説明する。図9は、本実施形態における基準マップ53aを作成するための処理手順を示す図である。図10は、本実施形態におけるマッチ位置算出のための基本的な処理手順を示す図である。図9および図10に示す一連の処理は、従来技術と同様のものである。一方、図11および図12に示す一連の処理は、それぞれ、図8および図10に対して追加で行われる、本実施形態に特有な処理である。
本実施形態において、ノード追加部41およびループ検出部42のうち少なくともいずれかが、図9〜図12に示すスキャンマッチ処理を行うことができる。以下では、ループ検出部42が、まず基準マップ53aおよび方位マップ53bを作成し、これらのマップを用いてマッチ位置の算出処理を実行することを例に挙げて、図9〜図12に示すスキャンマッチの詳細を説明する。
(基準マップ53aの作成)
ループ検出部42は、まず、複数のグリッド(領域)によって区分されている空の基準マップ53aを用意する。各グリッドのサイズ(一辺の長さ)は固定値であり、本実施形態では50mmとする。基準マップ53aのサイズ(一辺の長さ)は固定値であり、本実施形態では400グリッドとする。このサイズは、概ね、LRF3を定格距離の2倍をグリッドサイで割った値に決定する。基準マップ53aの原点は、その中央にある。基準マップ53aの各座標軸方向は、いずれも、基準ノードNR1のセンサ座標系における各座標軸方向に合わせて作成される。各グリッドは、基準マップ53a内のそのグリッドの位置における所定のグリッド値(占有確率)を有する。この占有確率は、そのグリッドの位置に実際の壁がある確率のことである。基準マップ53aの各グリッドに元々規定される座標情報と、そのグリッドの値との組み合わせが、記録点または測定点の位置情報に相当する。空の基準マップ53aの作成時点において、すべてのグリッドの値(占有確率)は、後述する所定の最低値である。
ループ検出部42は、少なくとも1つのスキャンを用いて、基準マップ53aを作成する。ここでいう少なくとも1つのスキャンとは、ノード群51に含まれる、基準ノードNR1を含む所定数(たとえば過去の5件)のノードである。以下では、ループ検出部42が、5つのノードNR1〜NR5を用いて基準マップ53aを作成する例を説明する。
まず、ループ検出部42は、基準マップ53aにおける、5つのノードを1つずつ対象スキャンとして選択する。そして、対象スキャン内のスキャンデータ51cに含まれる各測定データから、評価対象である各プロットの位置P[x、y]を算出する。この位置P[x、y]は、基準マップ53aにおけるプロットに対するグリッドの座標(グリッド座標)である。具体的には、ノード追加部41は、対象ノード内のスキャンデータに含まれる−100度から+100度までの各方位における壁10までの各距離を、基準ノードNR1のセンサ座標系において該当ノードNRの位置および方位を起点にして平面座標系に投影演算し、これによって得られた各座標をグリッドサイズで割ることによって、グリッド座標である各対象プロットの各位置P[x、y](測定点の位置)を算出する。これにより、1つの対象スキャンから201件のプロット位置P[x、y]が算出される。
図9に示す処理では、所定のぼやけ幅があらかじめ決定されている。このぼやけ幅は、x軸方向およびy方向のいずれにおいても、−w〜w(Wは整数)の範囲の値を取り得る。ループ検出部42は、x軸方向の所定のぼやけ幅xと、y軸方向のぼやけ幅yの組み合わせごとに、図9の7行および8行の処理を実行する。
まずループ検出部42は、プロット位置P[x、y]を、x軸方向にxだけずらし、かつ、y軸方向にyだけずらしたことによって、位置P[x+x、y+x]を算出する。そして、P[x+x、y+x]に対応するグリッドにおける占有確率(測定点の存在を示す評価値)を、算出する。なお、ループ検出部42は、この処理を全xdおよび全ydの組み合わせに対して実行することによって、P[x、y]を頂点とする正規分布を算出することができる。
次に、ループ検出部42は、P[x+x、y+x]に対応するグリッドにおける、占有確率の既存値を、基準マップ53aから取得する。ループ検出部42は、対象プロットのP[x+x、y+x]に対して算出した占有確率と、P[x+x、y+x]に対応するグリッドにおける占有確率の既存値とを比較する。そして、より大きい方の値を、基準マップ53aにおけるP[x+x、y+x]に対応するグリッドに書き込む。P[x+x、y+x]に対して算出した占有確率が既存値よりも大きければ、P[x+x、y+x]に対応するグリッドの占有確率が新たな値(記録点の存在を示す評価値)に更新される。
以上の処理によって、ループ検出部42は、基準マップ53aを作成する。ループ検出部42は、スキャンマッチを実行するたびに、基準マップ53aを作り直す。これは、基準マップ53aの作成に用いられるノード51a(複数のノード51aが用いられる場合はノード範囲)が、スキャンマッチごとに異なるからである。なお、基準マップ53aにおける各グリッドの(占有確率)を輝度に対応させて画像化すると、図17の(b)に示すようなマップが得られる。
本実施形態では、ループ検出部42は、図9に示す一連の処理を実行するとき、さらに、図11に示す一連の処理も実行することによって、基準マップ53aに加えて方位マップ53bも作成する。図11は、本実施形態における方位マップ53bを作成するための処理手順を示す図である。
ループ検出部42は、図9の1行目の処理によって空の基準マップ53aを作成するとき、さらに、図11の1.1行目の処理によって、空の方位マップ53bを作成する。方位マップ53bのサイズ、グリッドサイズ、および原点の位置は、いずれも空の基準マップ53aと同じである。ただし、方位マップ53bのグリッドは、占有確率ではなく方位ビット値を値として有し、各グリッドの初期値はいずれも0とする。方位マップ53bの各グリッドに元々規定される座標情報と、そのグリッドの値との組み合わせが、記録点または測定点の方向情報に相当する。
(方位マップ53bの作成)
ループ検出部42は、図9の8行目の処理を実行するとき、さらに、図11の8.1行〜8.5行に示す処理を実行することによって、必要に応じて方位マップ53bにおける各グリッドの値を更新する。具体的には、まずループ検出部42は、基準マップ53aにおけるP[x+x、y+x]に対応するグリッドの占有確率を取得し、それが0であるか否かを判定する。そして、占有確率が0ではない場合、ループ検出部42は、P[x+x、y+x]に対応するグリッドの方位区分および隣接幅に基づき、P[x+x、y+x]の方位範囲を算出する(8.2行)。次にループ検出部42は、算出したP[x+x、y+x]の方位範囲に基づき、P[x+x、y+x]の方位ビット値を算出する(8.3行)。最後にループ検出部42は、P[x+x、y+x]の方位ビット値と、方位マップ53bにおけるP[x+x、y+x]に対応するグリッドの既存値と論理OR演算する。ループ検出部42は、この演算によって得た値を、方位マップ53bにおける当該グリッドの書き込むことによって、当該グリッド既存値を更新する(8.4行)。
以上の処理によって、ループ検出部42は、方位マップ53bを作成する。ループ検出部42は、スキャンマッチを実行するたびに、方位マップ53bを作り直す。これは、方位マップ53bの作成に用いられるノード51a(複数のノード51aが用いられる場合はノード範囲)が、スキャンマッチごとに異なるからである。
(マッチ位置の算出)
ループ検出部42は、続いて図10に示す処理を実行することによって、基準マップ53aにおける対象スキャンのマッチ位置を算出する。ループ検出部42は、まず、基準マップ53aにおいて対象スキャンを探索するときの所定の探索範囲を算出する。本実施形態では、ループ検出部42は、探索範囲として、θの最小値θmin、最大値θmax、および間隔θstep、xの最小値xminおよびxmax、ならびにyの最小値yminおよび最大値ymaxを算出する。xmin、xmax、ymin、およびymaxは、いずれもグリッド座標でありかつ整数値を取る。xmin、xmax、ymin、ymax、θmin、およびθmaxは、それぞれ探索開始位置PS(x、y、θ)に対して所定の探索幅を加えることによって、決定される。具体的には、探索開始位置PSは基準ノードNR1の位置から見た対象ノードNTの位置として、ノードNR1におけるセンサ座標系で算出されたのち、グリッド座標に換算して決定される。さらに、xmin、xmax、ymin、ymax、θminおよびθmaxは、それぞれ所定値w2またはwθを用いて、以下の通り算出される。
max=PS(x)+w2
min=PS(x)−w2
max=PS(y)+w2
min=PS(y)−w2
θmax=PS(θ)+wθ
θmin=PS(θ)−wθ
次に、ループ検出部42は、θmin〜θmaxのうちいずれかのθと、xmin〜xmaxのうちいずれかのxと、ymin〜ymaxのうちいずれかのyとの異なる組み合わせごとに、図10の5行〜7行の処理を実行する。このときループ検出部42は、θをθstepずつ順次増加させ、xおよびyを1つずつ順次増加させる。
具体的には、ループ検出部42はまず、対象スキャンの各オフセット後プロットを算出する(5行)。ここでいうオフセット後プロットとは、対象スキャンを基準マップ53aにおけるオフセットされた座標(x、y、θ)に投影した場合の各プロットのことである。対象スキャンには合計201件のプロットが含まれるので、全オフセット後プロットは、各座標(x、y)を要素とする201件の配列である。
次に、ループ検出部42は、基準マップ53aにおける各オフセット後プロットに対応する各グリッドの占有確率を取得する(6行)。これにより、合計201個の占有確率(
記録点の存在を示す評価値)が取得される。
ループ検出部42は、全オフセット後プロット分の各占有確率を総合(積算)することによって、現在のオフセット位置(x、y、θ)における所定のオフセット確率を算出する(7行)。これにより、201個の占有確率に基づき1つのオフセット確率が算出される。このオフセット確率は、基準マップ53aにおける記録済みのプロット(測定された壁)の位置と、スキャンデータ51cから算出されるプロットの位置との一致度合いを示す位置評価値である。
以上の処理によって、ループ検出部42は、一つの対象スキャンに対して、全部でオフセット回数NO=(2×wθ÷θstep+1)×(2×w2+1)×(2×w2+1)個のオフセット確率を算出する。ループ検出部42は、こうして算出した全オフセット条件のオフセット確率とオフセット量(x、y、θ)とを掛け合わせ、これにより得られたx、y、およびθの各201件の総和をオフセット回数NOで除算する(すなわち加重平均する)ことによって、基準マップ53aにおける対象スキャンのマッチ位置(x、y、θ)を算出する(行11)。なお、x、y、およびθは、整数ではなく、小数点以下の値を持つ数である。
(マッチ位置算出の追加処理)
図12は、本実施形態に係るループ検出部42によって実行されるスキャンマッチの追加処理を示す図である。ループ検出部42は、図10の5行に示す処理を実行するとき、さらに、図12の5.1行に示す処理を実行する。具体的には、ループ検出部42は、算出されたオフセット後プロットの各点について、戻り光線方位が属する方位区分を求め、さらに、それを元に方位ビット値(全201件)を算出する。
さらに、ループ検出部42は、図10の行6に示す処理を実行するとき、図12の6.1行〜6.4行に示す処理を追加で実行する。具体的には、ループ検出部42は、方位マップ53bにおける各オフセット後プロットに対応する各グリッドから、現在の方位ビット値(全201個)を取得する(6.1行)。次に、ループ検出部42は、オフセット後プロットごとに、対応するプロット方位区分のビット値と、対応するグリッドの現在の方位ビット値とをAND演算する(6.2行)。すなわちこのAND演算は、201件の方位ビット値のすべてに対して行われる。このAND演算によって得られる演算結果は、方位マップ53bに記録済みのプロットの測定方向と、対象スキャンから算出されたプロットの測定方向との一致度合いを示す方向評価値である。
ループ検出部42は、あるオフセット後プロットにおける演算結果が偽の場合、方位が一致しないと判定し、方位マップ53bにおける当該オフセットプロットに対応するグリッドから取得した占有確率を、所定の最低値に変更する(6.3行)。ここでいう最低値とは、占有確率の最大値(基準マップ53a作成時における正規分布の頂点の値)に対して十分小さな値、たとえば最大値の100分の1の値である。一方、あるオフセット後プロットにおける演算結果が真の場合、方位が一致したと判定し、基準マップ53aにおける当該オフセット後プロットに対応するグリッドから取得した占有確率を、現在の値に維持する。これにより、201件の各占有確率が、最低値に変更されるか、または、現在の値のままになる。方位が一致すればするほど、各占有確率が最低値に変更される可能性が低くなるので、図10の7行において算出されるオフセット確率の値は、より高くなる。
このように、本実施形態では、各グリッド値(占有確率)が、方向評価値に基づき、最低値に変更されるか、または現在の値に維持されるので、各グリッド値から算出される位置評価値(オフセット確率)は、結果的に、方向評価値を内包する値であると言える。このことは、本実施形態において位置評価値(オフセット確率)に基づき評価を行うことが、位置評価値と、それに内包される方向評価値との両方に基づき評価を行うことと同義であることを、意味する。
なお、ループ検出部42は、算出された各位置評価値および各方向評価値に基づき、対象スキャンのプロットが基準マップ53aにおける記録済みのプロットに一致するか否かに関する評価を行ってもよい。その際、ループ検出部42は、基準マップ53aに記録済みのプロットのうち、位置評価値が所定の範囲内であり、かつ、方向評価値が所定の範囲内であるプロットを、対象スキャンの測定点と一致する一致点または当該一致点の候補と判定することができる。
(方位評価の一例)
図13は、本実施形態における方位評価の一例を説明する図である。この図には、方位マップ53bの一部分を示す。
図13において、対象スキャンのオフセット位置が位置O21になったとき、方位マップ53bに投影されたプロットPA1〜PA3は、方位マップ53bにおけるG21〜G23に向かう。ここで、プロットPA1〜PA3に対して算出される方位区分(図12における斜線箇所)は、グリッドG21〜G23において真である方位区分(図12における網掛け箇所)に重なっている。これにより、プロットPA1〜PA3の方位ビット値と、グリッドG21〜G23の方位ビット値既存値とをそれぞれAND演算すれば、いずれも演算結果は真となる。したがって、3つのプロットPA1〜PA3のすべておいて、その方位が、基準マップ53aにおける対応グリッドG21〜G23のすべての方位と一致しているので、オフセット位置O21における対象スキャンのオフセット確率は高くなる。
一方、図13において、対象スキャンのオフセット位置が位置O22になったとき、方位マップ53bに投影されたプロットPB1〜PB3は、方位マップ53bにおけるG31〜G33に向かう。ここで、プロットPB1〜PB3に対して算出される方位区分(図12における斜線箇所)のうち、グリッドG31〜G233において真である方位区分(図13における網掛け箇所)に重なっているのは、わずかにプロットPB3のみである。すなわち、プロットPB2およびPB3の方位区分は、対応するグリッドG32およびG33において偽である方位区分(図13における空白箇所)に重なっている。これにより、プロットPB1の方位ビット値とグリッドG33の方位ビット値の既存値とをAND演算すれば結果は真になるが、プロットPB2およびPB3の各方位ビット値と、グリッドG32およびG31の各方位ビット値の既存値とをそれぞれAND演算すれば、結果はいずれも偽になる。したがって、3つのプロットPB1〜PB3のうち、その方位が、基準マップ53aにおける対応グリッドG31〜G33の方位と一致しているのは1つのみであるので、オフセット位置O22における対象スキャンのオフセット確率は低くなる。
以上のように、図13の例では、オフセット位置O21におけるオフセット確率が、オフセット位置O22におけるオフセット確率よりも高い。したがって、スキャンマッチによって対象スキャンのマッチ位置として算出されるのは、よりオフセット確率が高いオフセット位置O21の方である。すなわち、ループ検出部42は、対象スキャンを基準マップ53aにおけるより正しい位置にスキャンマッチすることができる。
一方、従来のスキャンマッチでは、本実施形態のような、方位マップ53bを用いた、プロットの戻り光線方位が属する方位区分の算出(方位ビット値の算出)を行わない。したがって、オフセット位置O22のオフセット確率は、オフセット位置O21のオフセット確率と同じように高くなる。このことから、スキャンマッチ時の探索範囲にオフセット位置O21およびオフセット位置O22の両方が含まれていれば、対象スキャンのマッチ位置として、よりオフセット位置O22に近い位置が算出されることになる。本来なら、この対象スキャンのマッチ位置はよりオフセット位置OAに近い位置に算出されるべきであるので、従来技術ではマッチ位置に誤差が生じる結果となる。
特に、スキャンマッチ時の探索範囲にオフセット位置O21が含まれずにオフセット位置O22が含まれる場合、この誤差が極端に大きくなる。具体的には、対象スキャンに含まれる各プロットによって規定される一対の壁のうち、本来なら正しくマッチされるべき壁ではなく、その反対側にある壁の方が、基準マップ53aにおけるいずれかの基準スキャンに含まれる各プロットによって規定される壁に、マッチしてしまう不具合が発生する(図4の(e)のような外れ値の発生)。
(変形例)
基準マップ53aの原点、分解能、および座標方向は、上述した例に限らず、他の値に設定されてもよい。このことは、方位マップ53bおよび出力マップ53cでも同様である。
方位マップ53bにおける方位区分は、上述した8種類に限らず、任意の種類であればよい。コンピュータの構成上、方位区分の種類は8×2(nは0以上の整数)種類であることが望ましい。
各方位区分の値と角度範囲との対応関係は、上述の例に限らず、他の関係に変更することができる。たとえば、方位区分0を、x軸方向を基準とした0〜22.5°および337.5〜360°範囲ではなく、別の範囲としてもよい。
方位マップ53bの各グリッドにおける隣接幅は、1以外の値、たとえば2または0であってもよい。
上述の例では、ノード追加部41が、基準マップ53aの生成時に、併せて方位マップ53bを生成し、その際、隣接幅分の他の方位が含まれるように各グリッドにおける方位を算出しているが、本発明はこれに限られない。たとえば、ループ検出部42が、対象スキャンの各方位ビット値を算出する際(図12の5.1行)に、これに隣接するビットを真にするようにしてもよい。
〔実施形態2〕
図14および15を参照して、本発明に係る実施形態2を以下に説明する。上述した実施形態1と共通する各部材には同じ符号を付し、詳細な説明を省略する。
(方位区分の定義)
図14は、本発明の実施形態2における方位マップ53bを構成するグリッドにおいて定義される方位区分の詳細を説明するための図である。この図に示すように、本実施形態では、方位マップ53b内の各グリッドにおいて定義される方位区分は、4種類であり、それぞれ、90度分の異なる角度範囲を有する。具体的には次のとおりである:
方位区分0:0〜90°間
方位区分1:90〜180°間
方位区分2:180〜270°間
方位区分3:270〜360°間。
なお、本実施形態では、隣接幅は0である。
ノード追加部41は、スキャンデータ51cに含まれるあるプロットの戻り光線方位が属する方位区分の番号がnである場合、このプロットの方位ビット値を、2であると算出する。
図15は、本発明の実施形態2における方位ビット値の算出例および方位マップ53bの例を示す図である。この図の(a)に示すように、プロットの戻り光線方位が方位区分0に含まれる場合、このプロットに対応するグリッドGの方位ビット値は、2=1である。算出される方位ビット値の値は、そのプロットの戻り光線方位が属する方位区分に応じて、2=1(方位区分0)、2=2(方位区分1)、2=4(方位区分2)、または2=8(方位区分4)のいずれかである。
ノード追加部41は、実施形態1と同様に、あるプロットに対応するグリッドGに対して算出した方位ビット値を、このグリッドGが有する方位ビット値の既存値と論理OR演算することによって、このグリッドGの方位ビット値を更新する。この結果、グリッドGは、複数の異なる方位区分の有無を表す方位ビット値を有することができる。たとえばグリッドGの方位ビット値が3(2+2)であれば、このグリッドGでは方位区分0および方位区分1が「有」であることが分かる。
図15の(b)に、本実施形態における方位マップ53bの例を示す。この例では、2つのスキャンデータを合成することによって作成された方位マップ53bを示す。ノード21において取得されたスキャンデータを方位マップ53bに投影すると、このスキャンデータに含まれる2つのプロットが、グリッドG41およびグリッドG42に向かっている。したがって、グリッドG41およびグリッドG42におけるこれらのプロットの投影に対応する方位区分が「有」になる(図中の網掛け箇所)。
一方、ノード22において取得されたスキャンデータを方位マップ53bに投影すると、このスキャンデータに含まれる3つのプロットが、グリッドG41〜G43に向かっている。したがって、グリッドG41〜G43におけるこれらのプロットの投影に対応する方位区分が「有」になる(図中の網掛け箇所)。
本実施形態では、各グリッドの方位区分が4種類であるので、各グリッドが有することができる方位ビット値は、4ビット(0〜15までのいずれか)の値を取る。したがって、グリッドの方位ビット値が8ビット(0〜255までのいずれか)の値を取る実施形態1に比べて、方位マップ53bのサイズを小さくすることができるという利点が得られる。
〔実施形態3〕
図16を参照して、本発明に係る実施形態3を以下に説明する。上述した実施形態1または2と共通する各部材には同じ符号を付し、詳細な説明を省略する。
図16は、本発明の実施形態3に係るロボット1aの要部構成を示すブロック図である。この図に示すように、ロボット1aは、駆動部2、LRF3、制御部4a、記憶部5、およびディスプレイ6を備えている。駆動部2、LRF3、および記憶部5は、実施形態1および2と同様である。一方、制御部4は、実施形態1または2に係るロボット1が備える各部材に加えて、さらにマップ表示部44を備えている。
本実施形態では、マップ生成部43は、出力マップ53cを構成する各グリッドの方位ビット値を算出することによって、方位マップ53bと同等の方位マップを作成する。マップ生成部43は、方位ビット値を含まないグリッドからなる通常のマップと、方位ビット値を有するグリッドからなる方位マップとによって構成される出力マップ53cを作成し、マップ表示部44に出力する。マップ表示部44は、入力された出力マップ53cをディスプレイ6に表示させる。
その際、マップ表示部44は、図13と同様に、各グリッドを方位区分ごとにサブグリッドに分割して表示し、さらに、各サブグリッドにおいて方位の真偽(壁検出の有無)を表示する。この結果、通常のマップに加えて、方位ごとの壁の有無もディスプレイ6に表示される。したがってロボット1aのユーザは、より詳細なマップを視認することができる。
〔まとめ〕
本発明の態様1に係る一致性評価装置は、少なくとも1つの記録点に対するマップ上における位置情報および方向情報を、記録情報として記録する記録部と、所定の測定位置と周囲の測定点との距離と、当該測定位置から上記測定点への測定方向とを表す測定データを取得する取得部と、取得された上記測定データに基づき、上記マップ上における上記測定点の位置および測定方向を算出する算出部と、上記記録情報における各上記記録点の上記マップ上における位置情報と、取得された測定データから算出された上記測定点の上記マップ上における位置との、それぞれの一致度合いを表す各位置評価値を算出する位置評価部と、上記記録情報における各上記記録点の方向情報と、取得された上記測定データから算出された上記測定点の測定方向とのそれぞれの一致度合いを表す各方向評価値を算出する方向評価部と、算出された上記各位置評価値および上記各方向評価値に基づき、上記測定点が上記記録情報における各上記記録点に一致するか否かに関する評価を行う一致性評価部とを備えていることを特徴としている。
上記の構成によれば、位置評価値および方向評価値の双方に基づき、記録点と測定点との一致性が評価されるので、方向の一致性を考慮しない従来技術とは異なり、測定方向が異なる測定点と記録点とが誤って一致すると評価されることが防止される。したがって、測定点と記録点との一致性をより正確に評価することができる。
本発明の態様2に係る一致性評価装置は、上記態様1において、上記算出部は、少なくとも1つの上記測定位置において取得された上記測定データに基づき、当該測定データごとに上記マップ上における各上記測定点の位置および測定方向を算出し、上記記録部は、s算出された上記測定点ごとの上記位置および測定方向に基づき、各上記測定点に対応する上記マップ上の各上記記録点の上記位置情報および上記方向情報を、上記記録情報として記録することを特徴としている。
上記の構成によれば、測定データを用いて記録情報を生成することができるので、あらかじめ記録情報が用意されていなくても、一致性評価装置が自ら生成した記録情報における記録点と測定点との一致性を評価することができる。
本発明の態様3に係る一致性評価装置は、上記態様1または2において、上記一致性評価部は、上記記録情報における上記マップ上の各上記記録点のうち、上記位置評価値が所定の範囲内であり、かつ、上記方向評価値が所定の範囲内である上記記録点を、上記測定点と一致する一致点または当該一致点の候補と判定するか、または一致度を算出することを特徴としている。
上記の構成によれば、記録点と測定点との一致点または当該一致点の候補を適切に判定することができる。
本発明の態様4に係る一致性評価装置は、上記態様1〜3のいずれかにおいて、上記一致性評価部は、各上記位置評価値および各上記方向評価値に基づき、上記測定点が上記記録情報における上記マップ上のどの上記記録点に一致するかに関する1つの評価値を算出し、上記1つの評価値に基づいて、上記測定点に一致する上記記録情報における上記マップ上の1つの上記記録点を判定するか、または上記マップ上の一致位置を算出することを特徴としている。
上記の構成によれば、測定点に一致する一つの記録点を適切に判定したり、マップ上の記録点と測定点との一致位置を適切に算出したりすることができる。
本発明の態様5に係る一致性評価装置は、上記態様1〜4のいずれかにおいて、上記位置評価部は、上記マップにおける、上記記録点の上記位置情報と上記測定点の上記位置との相対的な位置関係に基づき、上記記録点と上記測定点との一致度合いを表す上記位置評価値を算出することを特徴としている。
上記の構成によれば、測定点と記録点との相対的な位置関係に基づき、測定点と記録点との一致性を評価することができる。
本発明の態様6に係る一致性評価装置は、上記態様1〜5のいずれかにおいて、上記取得部は、上記測定位置と、異なる複数の上記測定点との各上記距離と、当該測定位置から複数の上記測定点のそれぞれへの各上記測定方向とを表す複数の上記測定データを取得し、上記算出部は、取得された上記複数の測定データのそれぞれに基づき、上記測定データごとに上記マップ上における上記測定点の位置および測定方向を算出し、上記一致性評価部は、異なる上記測定点ごとに算出された上記各位置評価値および上記各方向評価値を総合することによって、複数の上記測定点のそれぞれに一致する複数の上記記録点を判定するか、または1つの一致度を算出することを特徴としている。
上記の構成によれば、複数の測定点と複数の記録点との一致性を一度に判定したり、複数の測定点と複数の記録点との一致性に関する1つの一致度を算出したりすることができる。
本発明の態様7に係る一致性評価装置は、上記態様1〜6のいずれかにおいて、上記マップは、複数の領域に区分されており、上記算出部は、上記マップにおける上記領域ごとに、上記測定データに基づき上記測定点の存在を示す評価値および上記測定点の測定方向を算出し、上記記録部は、上記マップの上記領域ごとに算出された上記測定点の存在を示す評価値および上記測定点の測定方向に基づき、上記測定点に対応する上記マップ上の上記記録点の存在を示す評価値および上記方向情報を、上記記録情報として記録することを特徴としている。
上記の構成によれば、領域ごとに記録点の存在を示す評価値および記録点の方向情報が規定された記録情報を記録することができる。
本発明の態様8に係る一致性評価装置は、上記態様6において、各上記領域において、所定の方位範囲ごとに区分された複数の方位区分が規定されており、上記算出部は、上記マップにおける上記領域ごとに、上記測定データに基づき当該領域の各上記方位区分における上記測定点の測定方向の存在を示す各評価値を組み合わせた上記測定方向の情報を算出することを特徴としている。
上記の構成によれば、各領域における記録点の各方位からの測定方向の有無がより詳細に規定された記録情報を記録することができる。
本発明の態様9に係る一致性評価装置は、上記態様8において、上記複数の方位区分は、上記領域における全方位範囲が整数値の個数に均等に区分されたものであることを特徴としている。
上記の構成によれば、記録点の測定方向の有無が方位ごとに均等に評価された記録情報を記録することができる。
本発明の態様10に係る一致性評価装置は、上記態様8または9において、上記算出部は、上記複数の方位区分のうち1つの方位区分に対応する上記測定点の測定方向を算出した場合、当該1つの方位区分と、当該1つの方位区分に隣接する複数の上記方位区分とにそれぞれ上記測定点の測定方向の存在を示す上記評価値を割り当てることによって、上記測定方向の情報を算出することを特徴としている。
上記の構成によれば、ある方向からの記録点の測定方向の有無を、より広がりを持たせて、記録情報における記録点の測定方向の情報に反映させることができる。
本発明の態様11に係る一致性評価方法は、少なくとも1つの記録点に対するマップ上における位置情報および方向情報を、記録情報として記録する記録工程と、所定の測定位置と周囲の測定点との距離と、当該測定位置から上記測定点への測定方向とを表す測定データを取得する取得工程と、取得された上記測定データに基づき、上記マップ上における上記測定点の位置および測定方向を算出する算出工程と、上記記録情報における各上記記録点の上記マップ上における位置情報と、取得された測定データから算出された上記測定点の上記マップ上における位置との、それぞれの一致度合いを表す各位置評価値を算出する位置評価工程と、上記記録情報における各上記記録点の方向情報と、取得された上記測定データから算出された上記測定点の測定方向とのそれぞれの一致度合いを表す各方向評価値を算出する方向評価工程と、算出された上記各位置評価値および上記各方向評価値に基づき、上記測定点が上記記録情報における各上記記録点に一致するか否かに関する評価を行う一致性評価工程とを有することを特徴としている。
上記の構成によれば、測定点と記録点との一致性をより正確に評価することができる。
〔ソフトウェアによる実現例〕
ロボット1における制御部4(およびロボット1aにおける制御部4a)の制御ブロックは、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、CPU(Central Processing Unit)を用いてソフトウェアによって実現してもよい。
後者の場合、ロボット1における制御部4(およびロボット1aにおける制御部4a)は、各機能を実現するソフトウェアであるプログラムの命令を実行するCPU、プログラムおよび各種データがコンピュータ(またはCPU)で読み取り可能に記録されたROM(Read Only Memory)または記憶装置(これらを「記録媒体」と称する)、プログラムを展開するRAM(Random Access Memory)などを備えている。そして、コンピュータ(またはCPU)がプログラムを記録媒体から読み取って実行することによって、本発明の目的が達成される。記録媒体としては、「一時的でない有形の媒体」、たとえば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介してコンピュータに供給されてもよい。なお、本発明は、プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
(付記事項)
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能である。異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態も、本発明の技術的範囲に含まれる。さらに、各実施形態にそれぞれ開示された技術的手段を組み合わせることによって、新しい技術的特徴を形成できる。
各実施形態では、自律走行体の一例として清掃用のロボットを挙げて説明したが、本発明は清掃用のロボットに限定されるものではない。たとえば、空気清浄機器、撮影機器、各種ロボット機器(たとえば、警備ロボット、家事支援ロボット、動物型ロボット等)に対しても本発明を適用できる。
ロボット1における制御部4および記憶部5は、ロボット1から離れた場所にある別のマップ生成装置(コンピュータ)に備えられていてもよい。この場合、ロボット1とマップ作成装置は、ロボットシステムを構成する。ロボット1は、駆動部2、LRF3、および図示しない送信部を備えている。一方、マップ作成装置は、制御部4、記憶部5、および図示しない受信部を備えている。ロボット1は、取得した回転情報およびスキャンデータを通信部を通じてマップ作成装置に送信する。マップ作成装置は、図示しない受信部を通じて回転情報およびスキャンデータを受信し、これらの情報およびデータを用いて出力マップを作成する。
ロボット1は、LRF3の代わりに、自身と環境(障害物)との距離を測定できることが任意のアレイセンサ(たとえば超音波アレイセンサ)を備えていてもよい。この場合、アレイセンサがスキャンデータまたはそれと同等の距離測定データを生成し、制御部4に出力する。
ロボット1は、LRF3の代わりに、3次元の距離データを測定することができる任意の3次元測定センサを備えてもよい。この場合、3次元測定センサは、3次元の距離データを取得し、制御部4に出力する。制御部4は、3次元の距離データに基づき、3次元の各種マップを作成する。この態様では、方位区分を、実世界における特定の座標平面を境界とする8象限に対応させて決定することが好ましい。具体的には、ロボット1の上方向をz軸プラス方向として、x軸、y軸、およびz軸のプラス方向およびマイナス方向の組み合わせ(2=8通り)のそれぞれを、方位区分0〜7に割り当てる。これにより、各グリッドにおいて定義される方位区分が実施形態1と同様に8種類となるため、計算上都合がよくなる。
1、1a ロボット
2 駆動部
3 LRF
4、4a 制御部(取得部)
5 記憶部(記録部)
6 ディスプレイ
21 モータ
22 各駆動輪
22 駆動輪
23 エンコーダ
31 レーザ光出力部
32 レーザ光受光部
33 スキャンデータ出力部
41 ノード追加部(算出部、位置評価部、方向評価部、一致性評価部)
42 ループ検出部(算出部、位置評価部、方向評価部、一致性評価部)
43 マップ生成部
44 マップ表示部

Claims (11)

  1. 少なくとも1つの記録点に対するマップ上における位置情報および方向情報を、記録情報として記録する記録部と、
    所定の測定位置と周囲の測定点との距離と、当該測定位置から上記測定点への測定方向とを表す測定データを取得する取得部と、
    取得された上記測定データに基づき、上記マップ上における上記測定点の位置および測定方向を算出する算出部と、
    上記記録情報における各上記記録点の上記マップ上における位置情報と、取得された測定データから算出された上記測定点の上記マップ上における位置との、それぞれの一致度合いを表す各位置評価値を算出する位置評価部と、
    上記記録情報における各上記記録点の方向情報と、取得された上記測定データから算出された上記測定点の測定方向とのそれぞれの一致度合いを表す各方向評価値を算出する方向評価部と、
    算出された上記各位置評価値および上記各方向評価値に基づき、上記測定点が上記記録情報における各上記記録点に一致するか否かに関する評価を行う一致性評価部とを備えていることを特徴とする一致性評価装置。
  2. 上記算出部は、少なくとも1つの上記測定位置において取得された上記測定データに基づき、当該測定データごとに上記マップ上における各上記測定点の位置および測定方向を算出し、
    上記記録部は、算出された上記測定点ごとの上記位置および測定方向に基づき、各上記測定点に対応する上記マップ上の各上記記録点の上記位置情報および上記方向情報を、上記記録情報として記録することを特徴とする請求項1に記載の一致性評価装置。
  3. 上記一致性評価部は、上記記録情報における上記マップ上の各上記記録点のうち、上記位置評価値が所定の範囲内であり、かつ、上記方向評価値が所定の範囲内である上記記録点を、上記測定点と一致する一致点または当該一致点の候補と判定するか、または、一致度を算出することを特徴とする請求項1または2に記載の一致性評価装置。
  4. 上記一致性評価部は、各上記位置評価値および各上記方向評価値に基づき、上記測定点が上記記録情報における上記マップ上のどの上記記録点に一致するかに関する1つの評価値を算出し、上記1つの評価値に基づいて、上記測定点に一致する上記記録情報における上記マップ上の1つの上記記録点を判定するか、または上記マップ上の1つの一致位置を算出することを特徴とする請求項1〜3のいずれか1項に記載の一致性評価装置。
  5. 上記位置評価部は、上記マップにおける、上記記録点の上記位置情報と上記測定点の上記位置との相対的な位置関係に基づき、上記記録点と上記測定点との一致度合いを表す上記位置評価値を算出することを特徴とする請求項1〜4のいずれか1項に記載の一致性評価装置。
  6. 上記取得部は、上記測定位置と、異なる複数の上記測定点との各上記距離と、当該測定位置から複数の上記測定点のそれぞれへの各上記測定方向とを表す複数の上記測定データを取得し、
    上記算出部は、取得された上記複数の測定データのそれぞれに基づき、上記測定データごとに上記マップ上における上記測定点の位置および測定方向を算出し、
    上記一致性評価部は、異なる上記測定点ごとに算出された上記各位置評価値および上記各方向評価値を総合することによって、複数の上記測定点のそれぞれに一致する複数の上記記録点を判定するか、または1つの一致度を算出することを特徴とする請求項1〜5のいずれか1項に記載の一致性評価装置。
  7. 上記マップは、複数の領域に区分されており、
    上記算出部は、上記マップにおける上記領域ごとに、上記測定データに基づき上記測定点の存在を示す評価値および上記測定点の測定方向を算出し、
    上記記録部は、上記マップの上記領域ごとに、上記領域を上記記録点として、算出された上記測定点の存在を示す評価値および上記測定点の測定方向を、上記記録情報として記録することを特徴とする請求項1〜6のいずれか1項に記載の一致性評価装置。
  8. 各上記領域において、所定の方位範囲ごとに区分された複数の方位区分が規定されており、
    上記算出部は、上記マップにおける上記領域ごとに、上記測定データに基づき当該領域の各上記方位区分における上記測定点の測定方向の存在を示す各評価値を組み合わせた上記測定方向の情報を算出することを特徴とする請求項7に記載の一致性評価装置。
  9. 上記複数の方位区分は、上記領域における全方位範囲が整数値の個数に均等に区分されたものであることを特徴とする請求項8に記載の一致性評価装置。
  10. 上記算出部は、上記複数の方位区分のうち1つの方位区分に対応する上記測定点の測定方向を算出した場合、当該1つの方位区分と、当該1つの方位区分に隣接する複数の上記方位区分とにそれぞれ上記測定点の測定方向の存在を示す上記評価値を割り当てることによって、上記測定方向の情報を算出することを特徴とする請求項8または9に記載の一致性評価装置。
  11. 記録部、取得部、算出部、位置評価部、方向評価部、および一致性評価部を備えている一致性評価装置によって実行される一致性評価方法であって、
    前記記録部が、少なくとも1つの記録点に対するマップ上における位置情報および方向情報を、記録情報として記録する記録工程と、
    前記取得部が、所定の測定位置と周囲の測定点との距離と、当該測定位置から上記測定点への測定方向とを表す測定データを取得する取得工程と、
    前記算出部が、取得された上記測定データに基づき、上記マップ上における上記測定点の位置および測定方向を算出する算出工程と、
    前記位置評価部が、上記記録情報における各上記記録点の上記マップ上における位置情報と、取得された測定データから算出された上記測定点の上記マップ上における位置との、それぞれの一致度合いを表す各位置評価値を算出する位置評価工程と、
    前記方向評価部が、上記記録情報における各上記記録点の方向情報と、取得された上記測定データから算出された上記測定点の測定方向とのそれぞれの一致度合いを表す各方向評価値を算出する方向評価工程と、
    前記一致性評価部が、算出された上記各位置評価値および上記各方向評価値に基づき、上記測定点が上記記録情報における各上記記録点に一致するか否かに関する評価を行う一致性評価工程とを有することを特徴とする一致性評価方法。
JP2015212282A 2015-10-28 2015-10-28 一致性評価装置および一致性評価方法 Active JP6649743B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015212282A JP6649743B2 (ja) 2015-10-28 2015-10-28 一致性評価装置および一致性評価方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015212282A JP6649743B2 (ja) 2015-10-28 2015-10-28 一致性評価装置および一致性評価方法

Publications (2)

Publication Number Publication Date
JP2017083663A JP2017083663A (ja) 2017-05-18
JP6649743B2 true JP6649743B2 (ja) 2020-02-19

Family

ID=58712055

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015212282A Active JP6649743B2 (ja) 2015-10-28 2015-10-28 一致性評価装置および一致性評価方法

Country Status (1)

Country Link
JP (1) JP6649743B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10274325B2 (en) * 2016-11-01 2019-04-30 Brain Corporation Systems and methods for robotic mapping
JP6742479B1 (ja) * 2019-06-27 2020-08-19 三菱重工業株式会社 地図生成装置、地図生成方法及びプログラム
KR102224637B1 (ko) 2019-07-05 2021-03-08 엘지전자 주식회사 이동 로봇 및 그 제어방법
KR102361130B1 (ko) 2019-07-11 2022-02-09 엘지전자 주식회사 이동 로봇 및 그 제어방법
KR102297496B1 (ko) 2019-07-11 2021-09-02 엘지전자 주식회사 인공지능을 이용한 이동 로봇 및 이동 로봇의 제어방법
KR102302575B1 (ko) * 2019-07-16 2021-09-14 엘지전자 주식회사 이동 로봇 및 그 제어방법
KR102589296B1 (ko) * 2019-07-19 2023-10-13 네이버랩스 주식회사 항공사진을 이용하여 3차원 지도를 생성하는 장치 및 방법

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4368317B2 (ja) * 2005-03-11 2009-11-18 セコム株式会社 移動ロボット
JP4788722B2 (ja) * 2008-02-26 2011-10-05 トヨタ自動車株式会社 自律移動ロボット、自己位置推定方法、環境地図の生成方法、環境地図の生成装置、及び環境地図のデータ構造
JP4930443B2 (ja) * 2008-04-10 2012-05-16 トヨタ自動車株式会社 地図データ生成装置および地図データ生成方法
JP6191484B2 (ja) * 2014-02-03 2017-09-06 トヨタ自動車株式会社 移動ロボットの自己位置推定方法

Also Published As

Publication number Publication date
JP2017083663A (ja) 2017-05-18

Similar Documents

Publication Publication Date Title
JP6649743B2 (ja) 一致性評価装置および一致性評価方法
EP3447532B1 (en) Hybrid sensor with camera and lidar, and moving object
CN111881239B (zh) 构建方法、构建装置、智能机器人及可读存储介质
CN112868225A (zh) 结合数据以构建平面图的方法和装置
CN113074727A (zh) 基于蓝牙与slam的室内定位导航装置及其方法
CN113741438B (zh) 路径规划方法、装置、存储介质、芯片及机器人
KR20190131402A (ko) 카메라와 라이다를 이용한 융합 센서 및 이동체
US20090149990A1 (en) Method, medium, and apparatus for performing path planning of mobile robot
CN110850859B (zh) 一种机器人及其避障方法和避障系统
CN111522022B (zh) 基于激光雷达的机器人进行动态目标检测方法
CN108332752B (zh) 机器人室内定位的方法及装置
CN111066064A (zh) 使用误差范围分布的网格占用建图
WO2019136613A1 (zh) 机器人室内定位的方法及装置
Lee et al. LiDAR odometry survey: recent advancements and remaining challenges
CN112506200A (zh) 机器人定位方法、装置、机器人及存储介质
CN113768419A (zh) 确定扫地机清扫方向的方法、装置及扫地机
CN116608847A (zh) 基于面阵激光传感器和图像传感器的定位和建图方法
CN116465393A (zh) 基于面阵激光传感器的同步定位和建图方法及装置
Spampinato et al. An embedded stereo vision module for 6D pose estimation and mapping
Jung et al. Structured light 2D range finder for simultaneous localization and map-building (SLAM) in home environments
AU2021273605B2 (en) Multi-agent map generation
Vaščák et al. Map merging for multi-robotic applications
Eryomin et al. Optical Sensors Fusion Approaches for Map Construction: A Review of Recent Studies
CN112630745B (zh) 一种基于激光雷达的环境建图方法和装置
Cui et al. Real-Time Generation and Automatic Update of 3D Point Cloud Maps in Featureless Environments Based on Multi-Sensor Fusion

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180920

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190618

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190716

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190722

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: 20200107

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200117

R150 Certificate of patent or registration of utility model

Ref document number: 6649743

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150