(57)【要約】【課題】物体の誤判定を抑制して地図精度を向上させることができる情報処理装置および移動ロボットを提供。【解決手段】情報処理装置（２）は、移動ロボット（１）の周囲の物体の有無を検出情報として取得する検出手段（４）と、検出手段（４）を制御する制御手段（３）と、占有地図（Ｍ２）を構築するための地図構築手段（５）と、を備える。地図構築手段（５）は、検出情報を時系列に記憶する記憶部（５５）と、検出情報に基づいて地図を作成する地図作成部（５２）と、地図作成部（５２）にて作成された暫定地図における判定点の周囲の物体の有無に基づいて、判定点の法線を取得する法線取得部（５３）と、各判定点におけるビーム線と法線とのなす角度に基づいて、各判定点の検出情報の有効性を判定する有効性判定部（５４）と、を備える。【選択図】図１
2020183658.tif 000002
【特許請求の範囲】
【請求項１】
移動体の周囲の物体を検出した検出情報を処理することで移動体の移動経路周辺の占有確率を表す地図である占有地図を構築するための情報処理装置であって、
前記移動体の周囲にビーム線を放射することで物体の有無をビーム線ごとに検出情報として取得する検出手段と、
前記検出手段を制御する制御手段と、
前記占有地図を構築するための地図構築手段と、を備え、
前記地図構築手段は、
前記検出手段にて取得された検出情報を時系列に記憶する記憶部と、
前記記憶部に記憶された検出情報に基づき前記移動体の周囲の地図を作成する地図作成部と、
前記検出情報におけるビーム線上に複数の判定点を設定し、前記地図作成部にて作成された暫定地図における各判定点の周囲の物体の有無に基づいて、各判定点の法線を取得する法線取得部と、
前記各判定点における前記ビーム線と前記法線とのなす角度である入射角に基づいて、各判定点の検出情報の有効性を判定する有効性判定部と、を備え、
前記地図作成部は、前記各判定点の有効性が反映された検出情報を用いて前記占有地図を構築する
ことを特徴とする情報処理装置。
【請求項２】
請求項１に記載された情報処理装置において、
前記地図構築手段は、
所定時間に亘る前記移動体の移動および前記検出手段による検出情報の取得の後に、前記記憶部に記憶された全時刻の前記検出情報に基づいて、前記地図作成部に前記暫定地図を作成させる第１処理ステップと、
前記暫定地図における各判定点の周囲の物体の有無を用いて前記法線取得部に各判定点の法線を取得させ、各判定点における前記入射角に基づいて前記有効性判定部に各判定点の検出情報の有効性を判定させ、各判定点の有効性が反映された検出情報を用いて前記地図作成部に前記占有地図を構築させる第２処理ステップと、
を実行する
ことを特徴とする情報処理装置。
【請求項３】
請求項１または請求項２に記載された情報処理装置において、
前記有効性判定部は、各判定点の検出情報の有効性を示す重みとして、各判定点における前記入射角に基づき、当該入射角が大きいほど小さな重みを設定し、当該入射角が小さいほど大きな重みを設定し、
前記地図作成部は、前記有効性判定部にて設定された各判定点の重みが反映された検出情報を用いて前記占有地図を構築する
ことを特徴とする情報処理装置。
【請求項４】
請求項１または請求項２に記載された情報処理装置において、
前記地図作成部は、前記有効性判定部にて有効でないと判定された判定点の検出情報を使用することなく前記占有地図を構築する
ことを特徴とする情報処理装置。
【請求項５】
請求項１または請求項２に記載された情報処理装置において、
前記地図作成部は、前記有効性判定部にて有効でないと判定された無効判定点の属する前記ビーム線上に設定された他の判定点のうち、前記無効判定点よりも遠方側にある全ての判定点の検出情報を使用することなく、前記無効判定点よりも近い側の各判定点の検出情報を用いて前記占有地図を構築する
ことを特徴とする情報処理装置。
【請求項６】
請求項１から請求項５のいずれかに記載された情報処理装置と、
前記移動体を移動させる移動手段と、を備える
ことを特徴とする移動ロボット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置および移動ロボットに関する。
【背景技術】
【０００２】
従来、自律走行可能な移動体が自律走行するための技術として、ＳＬＡＭ(Simultaneous Localization and Mapping) と称される自己位置推定と環境地図作成の技術が用いられている。環境地図としては、移動体の移動範囲における物体の有無に基づいて作成された占有格子地図や点群地図が用いられることがある（例えば、特許文献１、２参照）。占有格子地図は、移動範囲の平面や空間を複数の区画（セル）に分割して記憶するとともに、分割した各区画に対して物体の有無に応じたセル値が付与されている。点群地図は、移動範囲の平面や空間に存在する物体を微小領域ごとに離散化した点（座標）として表し、その集合である点群データが地図として利用される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−１５７０８７号公報
【特許文献２】特開２０１８−００５７０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、占有格子地図や点群地図は、レーザースキャナ（ＬＩＤＡＲ（Light Detection and Ranging））を用いて空間内の物体を検出し、取得した検出情報に基づいて作成される。この際、レーザースキャナは、照射したレーザービームが物体表面や路面に反射して戻ってくることで、物体の有無を検出情報として取得する。そして、ビーム線上の判定点（セルや点）ごとに、レイキャスティング処理によって占有確率を求める。しかしながら、物体表面や路面に対するビーム線の照射角度が浅い場合、その表面をビーム線が通過したと検知されることがあり、物体が無いと誤判定されて地図から消えてしまうという問題がある。【０００５】
本発明の目的は、物体の誤判定を抑制して地図精度を向上させることができる情報処理装置および移動ロボットを提供することである。
【課題を解決するための手段】
【０００６】
本発明の情報処理装置は、移動体の周囲の物体を検出した検出情報を処理することで移動体の移動経路周辺の占有確率を表す地図である占有地図を構築するための情報処理装置であって、前記移動体の周囲にビーム線を放射することで物体の有無をビーム線ごとに検出情報として取得する検出手段と、前記検出手段を制御する制御手段と、前記占有地図を構築するための地図構築手段と、を備え、前記地図構築手段は、前記検出手段にて取得された検出情報を時系列に記憶する記憶部と、前記記憶部に記憶された検出情報に基づき前記移動体の周囲の地図を作成する地図作成部と、前記検出情報におけるビーム線上に複数の判定点を設定し、前記地図作成部にて作成された暫定地図における各判定点の周囲の物体の有無に基づいて、各判定点の法線を取得する法線取得部と、前記各判定点における前記ビーム線と前記法線とのなす角度である入射角に基づいて、各判定点の検出情報の有効性を判定する有効性判定部と、を備え、前記地図作成部は、前記各判定点の有効性が反映された検出情報を用いて前記占有地図を構築することを特徴とする。【０００７】
このような本発明によれば、情報処理装置は、法線取得部にてビーム線上の判定点の法線を取得し、有効性判定部にてビーム線と法線とのなす角度である入射角に基づいて各判定点の検出情報の有効性を判定し、地図作成部にて各判定点の有効性が反映された検出情報を用いて占有地図を構築する。したがって、物体表面に対してビーム線が浅い角度で照射され、物体が無いと誤判定したような有効性が低い検出情報を排除することができ、物体を正しく検知した有効性が高い検出情報に基づいて占有地図を構築することで、地図精度を向上させることができる。【０００８】
本発明では、前記地図構築手段は、所定時間に亘る前記移動体の移動および前記検出手段による検出情報の取得の後に、前記記憶部に記憶された全時刻の前記検出情報に基づいて、前記地図作成部に前記暫定地図を作成させる第１処理ステップと、前記暫定地図における各判定点の周囲の物体の有無を用いて前記法線取得部に各判定点の法線を取得させ、各判定点における前記入射角に基づいて前記有効性判定部に各判定点の検出情報の有効性を判定させ、各判定点の有効性が反映された検出情報を用いて前記地図作成部に前記占有地図を構築させる第２処理ステップと、を実行することが好ましい。【０００９】
このような構成によれば、情報処理装置の地図構築手段は、第１処理ステップにおいて、全時刻の検出情報に基づいて地図作成部に暫定地図を作成させた後に、第２処理ステップにおいて、暫定地図における各判定点の周囲の物体の有無を用いて法線取得部に各判定点の法線を取得させ、有効性判定部に各判定点の検出情報の有効性を判定させ、判定点の有効性が反映された検出情報を用いて地図作成部に占有地図を作成させることで、地図精度をさらに向上させることができる。すなわち、全時刻の検出情報に基づく暫定地図を用いて法線取得部が判定点の法線を取得するので、全時刻を蓄積したデータにより精度よく判定点の法線を求めることができる。法線取得部は、リアルタイムに得られる検出情報では法線が求まらない判定点に対しても、全時刻の検出情報を用いることで法線を取得することができ、有効性判定部は、求めた法線を使用して有効性を判定することができる。さらに、有効性判定部は、全時刻の検出情報に基づき法線が存在すると分かっている判定点のみを処理すればよいため、計算コストを下げて効率よく地図を構築することができる。【００１０】
本発明では、前記有効性判定部は、各判定点の検出情報の有効性を示す重みとして、各判定点における前記入射角に基づき、当該入射角が大きいほど小さな重みを設定し、当該入射角が小さいほど大きな重みを設定し、前記地図作成部は、前記有効性判定部にて設定された各判定点の重みが反映された検出情報を用いて前記占有地図を構築することが好ましい。【００１１】
このような構成によれば、有効性判定部は、各判定点におけるビーム線の入射角に基づき、入射角が大きいほど小さな重みを設定し、入射角が小さいほど大きな重みを設定するので、判定点の検出情報の有効性を段階的に評価することができる。また、地図作成部は、各判定点の重みが反映された検出情報を用いて占有地図を構築するので、物体の誤判定を抑制しつつ地図精度を向上させることができる。【００１２】
本発明では、前記地図作成部は、前記有効性判定部にて有効でないと判定された判定点の検出情報を使用することなく前記占有地図を構築することが好ましい。【００１３】
このような構成によれば、地図作成部は、ビーム線が浅い照射となり有効性判定部にて有効でないと判定された判定点の検出情報の影響を除外することができ、計算コストを下げつつ効率よく地図を構築することができる。【００１４】
本発明では、前記地図作成部は、前記有効性判定部にて有効でないと判定された無効判定点の属する前記ビーム線上に設定された他の判定点のうち、前記無効判定点よりも遠方側にある全ての判定点の検出情報を使用することなく、前記無効判定点よりも近い側の各判定点の検出情報を用いて前記占有地図を構築することが好ましい。【００１５】
このような構成によれば、地図作成部は、有効性判定部にて無効とされた無効判定点よりも遠方側にある全ての判定点の検出情報を使用しないようにすることで、使用するデータ量を削減することができ、さらに効率よく地図を構築することができる。【００１６】
本発明の移動ロボットは、前記情報処理装置と、前記移動体を移動させる移動手段と、を備えることを特徴とする。【００１７】
このような本発明によれば、移動ロボットは、情報処理装置および移動手段を備え、地図構築手段によって地図を構築することで、前述したのと同様に、移動経路周辺の占有地図を効率よく構築することができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の一実施形態に係る移動ロボットの概略構成を示すブロック図
【図２】前記移動ロボットによる物体検出動作を説明する占有格子地図の平面図
【図３】前記移動ロボットによる物体検出動作を説明する占有格子地図の側面図
【図４】前記移動ロボットの検出動作におけるビーム線の照射状態を示す図
【図５】前記移動ロボットによる検出動作の課題を説明する平面図
【図６】前記検出手段が取得した検出情報のビーム線上の判定点を示す図
【図７】前記移動ロボットの動作を示すフローチャート
【図８】前記移動ロボットが地図を作成する際の動作を示す平面図
【図９】前記移動ロボットの情報処理装置が作成する地図を示す図
【図１０】前記移動ロボットの他の動作を示すフローチャート
【発明を実施するための形態】
【００１９】
以下、本発明の一実施形態を図１〜図９に基づいて説明する。
図１は、本発明の一実施形態に係る移動ロボット１の概略構成を示すブロック図である。
本実施形態の移動体である移動ロボット１は、図１に示すように、制御手段３と、検出手段４と、地図構築手段５と、移動手段６と、を備え、制御手段３、検出手段４および地図構築手段５によって情報処理装置２が構成されている。検出手段４は、移動ロボット１の周囲にビーム線Ｂを放射することで物体の有無を検出するレーザースキャナ４１を有し、照射したビーム線Ｂごとに検出情報を取得する。移動手段６は、モータ等の駆動部６１と、駆動部６１によって回転駆動される車輪６２と、を有し、移動ロボット１を自律走行させる。
【００２０】
制御手段３は、ＣＰＵ等の演算手段やＲＯＭ、ＲＡＭ等の記憶手段を備えて移動ロボット１の動作を制御するものであって、移動手段６を制御する移動制御部３１と、検出手段４を制御する検出制御部３２と、を備える。地図構築手段５は、ＳＬＡＭ技術によって移動ロボット１の自己位置を推定する自己位置推定部５１と、後述するように移動ロボット１の周囲の地図を作成する地図作成部５２と、法線取得部５３と、有効性判定部５４と、検出手段４が取得した検出情報や、地図作成部５２が作成した地図、各種のデータ等を記憶する記憶部５５と、を備えて構成されている。地図作成部５２が作成する地図としては、占有格子地図や点群地図など任意の地図が利用可能であるが、以降では占有格子地図を作成する場合について説明する。
【００２１】
検出手段４のレーザースキャナ４１は、例えば、赤外線レーザー等のレーザー光を周囲に照射して物体までの距離を測定するＬＩＤＡＲ（Light Detection and Ranging）が好適である。このレーザースキャナ４１は、ＳＬＡＭ技術によって取得した自己位置であるセンサ中心と方位を基準位置とし、センサ中心からの距離と、センサ中心回りの角度（方向）と、センサ中心からの高さ（仰角または俯角）と、に基づいて物体の有無や位置を検出する。この物体検出（以下では、単にスキャンと称することがある）では、レーザースキャナ４１の１周期（例えば、１回転、３６０°）分の検出において、所定の解像度（例えば、１°）で照射されるビーム線Ｂに基づき、１周期分の検出値を１単位（１スキャン）とし、この１スキャンの検出値が検出情報として時系列で記憶部５５に記憶される。
【００２２】
次に、図２、図３を参照して占有格子地図の作成に係る基本的な概念を説明する。図２、図３は、それぞれ移動ロボット１による物体検出動作を説明する占有格子地図の平面図および側面図である。占有格子地図Ｍは、対象空間を三次元空間に規定し、この空間を所定サイズ（例えば、１０ｃｍ立方）のセルＣに分割し、セルＣごとにセル値を設定する。この占有格子地図Ｍの作成方法としては、例えば、レイキャスティングが標準的であり、以下ではレイキャスティングを用いた占有格子地図Ｍの作成手順を説明する。
【００２３】
占有格子地図Ｍのセル値は、占有確率や対数オッズで管理する。レイキャスティングでは、センサ中心からビーム線Ｂを模擬した直線を伸ばし、ビーム線Ｂが通過したセルＣの値を更新する。レーザースキャナ４１からのビーム線Ｂが物体に当たった位置にあるセルＣは占有セルＣ１（例えば、対数オッズ＝１）、ビーム線Ｂが通過したセルＣは自由セルＣ２（例えば、対数オッズ＝−１）、計測範囲外にあって未観測のセルＣは未知セルＣ３（例えば、対数オッズ＝０）となる。占有格子地図Ｍのセル値は、複数のスキャンによるセル値を合算して対数オッズを計算する。例えば、あるセルＣの占有が３回、自由が２回あれば、対数オッズは３＋（−２）＝１となる。このようにスキャンを繰り返して積算した対数オッズから各セルＣの占有確率、すなわち、そのセルＣに物体が有る（占有）、無い（自由）、未知のいずれかが確率値として計算され、これにより占有格子地図Ｍが作成される。
【００２４】
ところで、各セルＣのセル値を得るためには、レーザースキャナ４１からのビーム線Ｂが通過したかあるいは物体に当たったことを正しく検知することが必要となる。図４は、移動ロボット１の検出動作におけるビーム線Ｂの照射状態を示す図である。図４に示すように、照射されたビーム線Ｂが物体Ｏに当たる際、ビーム線Ｂの方向ベクトルＶ１と物体Ｏの表面に直交する法線の方向ベクトルＶ２とは様々な角度で交差する。このビーム線Ｂの方向ベクトルＶ１と法線の方向ベクトルＶ２とのなす角度θ（以下では、入射角θと称することがある）が、占有格子地図Ｍのセル値に影響を与えることがある。
【００２５】
図３の側面図に示すように、レーザースキャナ４１の正面にある壁面に対しては、ビーム線Ｂの入射角θが小さくなり、レーザースキャナ４１の下方にある路面に対しては、ビーム線Ｂの入射角θが大きくなる。占有格子地図Ｍは、空間や物体を分割したセルＣに離散化して表現しているため、物体表面に対する入射角θが大きい場合、ビーム線Ｂが当たったと判定された占有セルＣ１は、物体であるにも関わらず他のビーム線Ｂが通過したと判定される。このような離散化による判定誤りが生じることで、ビーム線Ｂが浅く入射する路面のセルＣに関して、占有セルＣ１として判定されるべきところ、ビーム線Ｂが通過したという情報が積算されることにより自由セルＣ２と判定されることがある。このように物体が存在するにも関わらず自由セルＣ２と誤判定されたセルＣを以下では誤判定セルＣ２′と呼ぶことにする。また、入射角θが小さい、すなわちビーム線Ｂが物体Ｏの表面に対して深い角度で当たると、物体Ｏの表面に反射したビーム線Ｂを受光しやすく、比較的高い検知精度が得られる。一方、入射角θが大きい、すなわちビーム線Ｂが物体Ｏの表面に対して浅い角度で当たると、検知精度が低下することもある。
【００２６】
図５は、移動ロボットによる検出動作の課題を説明する平面図である。図５（Ａ）〜（Ｃ）において、移動ロボット１は、図の上方から下方に向かって移動しつつ自身の左側（図では右側）に存在する壁面をレーザースキャナ４１でスキャンし、物体である壁に相当するセルＣのセル値を設定している。図５（Ａ）に示すように、壁面をスキャンし始めた初期において、移動ロボット１の近傍に存在する壁面に対しては、入射角θが小さいため壁面を検知し占有セルＣ１として判定し、その検出情報が記憶部５５に時系列で記憶される。一方、移動ロボット１の遠方（図の下側）に存在する壁面に対しては、入射角θが大きいため自由セルＣ２と誤って判定したり、または壁面が検知されず未知セルＣ３と判定したりしてしまい、その検出情報が記憶部５５に時系列で記憶されていく。
【００２７】
次に、図５（Ｂ）に示すように、壁の中間部まで移動した中期において、移動ロボット１の近傍に存在する壁面に対して入射角θが小さくなるため、初期には自由セルＣ２または未知セルＣ３となっていたセルＣに対しても正しく検知することができ、占有セルＣ１として記憶部５５の検出情報が更新される。一方、図５（Ｂ）の上側の壁面に対しては、初期において占有セルＣ１としていたにも関わらず、入射角θが大きくなってしまうため、ビーム線Ｂが通過したと判定され、誤判定セルＣ２′として検出情報を更新してしまう。すなわち、過去において正しく占有セルＣ１として判定していたセルＣに対して、入射角θの大きいビーム線Ｂを積算してしまうことで、誤判定セルＣ２′であるとの誤判定が生じたまま検出情報が更新されてしまうことになる。
【００２８】
さらに、図５（Ｃ）に示すように、壁の他端側まで移動した後期において、移動ロボット１の近傍に存在する壁面に対して入射角θが小さくなるため、初期および中期には自由セルＣ２または未知セルＣ３となっていたセルＣに対しても正しく検知することができ、多くは占有セルＣ１として記憶部５５の検出情報が更新される。しかし、過去のスキャンにおいて自由セルＣ２としていたセル値が積算されているため、占有セルＣ１にならずに誤判定セルＣ２′のまま更新されないセルＣも残ってしまう。すなわち、過去のスキャン結果が未来のスキャンに影響し、誤判定セルＣ２′であるとの情報が残り、検出情報を正しく更新できないという事態も生じることになる。また、図５（Ｃ）の上側のセルＣに対して、入射角θがさらに大きくなることから、誤判定セルＣ２′に書き換えられたセルＣの範囲が拡大している。
【００２９】
本実施形態では、誤判定セルＣ２′を含んだ検出情報が占有格子地図Ｍの作成に与える影響を抑制するために、ビーム線Ｂごとの検出情報におけるビーム線Ｂ上に複数の判定点を設定し、各判定点の法線を制御手段３の法線取得部５３が取得するとともに、各判定点におけるビーム線Ｂと法線との入射角θに基づいて、各判定点の検出情報の有効性を有効性判定部５４が判定する。このようなビーム線Ｂ上の判定点の概念について、図６を参照して説明する。
【００３０】
図６は、検出手段が取得した検出情報のビーム線Ｂ上の判定点を示す図である。図６に示す占有格子地図Ｍにおいて、ある１本のビーム線Ｂｉは、複数のセルＣを通過しており、ビーム線Ｂｉの先端が物体に当たった占有セルＣ１として検知されている。この占有セルＣ１の中心座標を判定点Ｐ１に設定する。そして、ビーム線Ｂｉが通過した他のセルＣに対し、順に判定点Ｐ２，Ｐ３，Ｐ４…を設定する。ここで、判定点Ｐ２，Ｐ３に設定したセルＣは、占有格子地図Ｍにおいては占有セルＣ１と判定されているが、ビーム線Ｂｉは通過しているため自由セルＣ２と判定され、誤判定セルＣ２′となる可能性がある。また、判定点Ｐ４，Ｐ５，Ｐ６に設定したセルＣは、占有格子地図Ｍにおいて自由セルＣ２であり、ビーム線Ｂｉも通過しているため自由セルＣ２として検知される。
【００３１】
このようなビーム線Ｂｉ上の判定点Ｐ１〜Ｐ６…Ｐｎに対して、法線取得部５３が法線の方向ベクトルＶ２を取得する。法線取得部５３は、対象とする判定点に対し、その周囲の複数（例えば、２６近傍）のセルＣを参照し、各セルＣのセル値に基づいて物体の有無を判断し、法線の方向ベクトルＶ２を取得する。具体的には、判定点Ｐの近傍セルのうちセル値の高いセルの集合Ｓを求め、集合Ｓの点と判定点Ｐで構成される各直線（二次元地図の場合）あるいは各平面（三次元地図の場合）に直交するベクトルの平均値を法線ベクトルＶ２とする。あるいは、集合Ｓに対して主成分分析を行うことによって法線ベクトルＶ２を求めてもよい。このようにして判定点Ｐ１〜Ｐ６…Ｐｎごとに法線の方向ベクトルＶ２を取得したら、有効性判定部５４は、ビーム線Ｂｉの方向ベクトルＶ１と法線の方向ベクトルＶ２との入射角θに基づいて、各判定点の検出情報の有効性を判定する。なお、法線取得部５３は、対象とする判定点の周囲に物体（占有セルＣ１）が無ければ、その判定点に対して法線の方向ベクトルＶ２を計算しない。
【００３２】
有効性判定部５４は、例えば、ビーム線Ｂｉの単位方向ベクトルＶ１と法線の単位方向ベクトルＶ２との内積（ｃｏｓθ）の絶対値（０〜１）を用いて各判定点の検出情報（セル値）の有効性を判定する。ここで、無効の判断としては、例えば、内積の絶対値が０．５未満（θ＞６０°）の場合など適宜に設定可能である。判定方法としては、以下のように３通りの方法が適用可能である。まず、第１の判定方法としては、ビーム線Ｂｉ上に無効な判定点があれば、その無効判定点のセルＣのセル値を無効にして対数オッズに加算せず、有効な判定点のセルＣのセル値だけを対数オッズに加算して地図作成に使用する。
【００３３】
第２の判定方法としては、ビーム線Ｂｉ上の判定点Ｐ１〜Ｐ６…Ｐｎの中に無効な判定点があれば、その無効判定点よりも遠方側にある全ての判定点のセルＣのセル値を使用せず、無効判定点よりも近い側の判定点のセルＣのセル値を地図作成に使用する。すなわち、図６において、例えば、判定点Ｐ３が無効の場合、判定点Ｐ１〜Ｐ３のセルＣのセル値を使用せず、無効判定点よりも近い側の判定点Ｐ４〜Ｐ６…ＰｎのセルＣのセル値は対数オッズに加算して地図作成に使用する。
【００３４】
第３の判定方法としては、ビーム線Ｂｉ上の判定点Ｐ１〜Ｐ６…Ｐｎにて計算した内積の絶対値を重みとして用い、判定点のセルＣのセル値に重みを掛けるようにする。すなわち、ある判定点におけるビーム線Ｂｉの単位方向ベクトルＶ１と法線の単位方向ベクトルＶ２との内積が０．５（θ＝６０°）であれば、例えば、そのセルＣの物体無しの自由セル値−１に０．５を掛け、この重みを掛けたセル値−０．５を対数オッズに加算し地図作成に使用する。なお、セル値に掛ける重みとしては、内積の絶対値をそのまま用いるものに限らず、適宜な重み係数をさらに掛けるようにしてもよいし、内積の絶対値に下限値（例えば、０．１）を設定し、下限値未満の判定点は無効にするようにしてもよい。
【００３５】
以上のように有効性判定部５４が各判定点のセル値の有効性を判定し、記憶部５５の検出情報を更新したら、更新した検出情報に基づいて、地図作成部５２は、移動ロボット１の移動経路周辺の占有格子地図Ｍ（後述する占有地図Ｍ２に相当する地図）を作成する。
【００３６】
以下、図７〜図９も参照して移動ロボット１による占有格子地図Ｍの作成方法について詳しく説明する。図７は、移動ロボットの動作を示すフローチャートである。図８は、移動ロボットが地図を作成する際の動作を示す平面図である。図９は、移動ロボットの情報処理装置が作成する地図を示す図であり、図９（Ａ）には従来の手法で作成した占有格子地図Ｍ１が示され、図９（Ｂ）には本実施形態の手法で作成する占有地図Ｍ２が示される。なお、ここでは、移動ロボット１の走行に係る動作については説明を省略し、走行に伴って占有地図Ｍ２を作成する手順に着目して説明する。
【００３７】
移動ロボット１の走行環境としては、図８の例では、壁Ｗで囲まれた空間Ｓの内部であり、この空間Ｓには、物体Ｏが設置されている。移動ロボット１は、図８の右下の出発点からスタートして反時計回りの移動経路Ｒに沿って走行し、空間Ｓ内を一周して出発点まで戻ってくるものとする。図７のフローチャートに示すように、制御手段３の移動制御部３１によって移動ロボット１の走行が開始されると、制御手段３の検出制御部３２によって検出手段４のレーザースキャナ４１が駆動制御され、移動ロボット１の周囲の物体の検出が開始される（検出情報取得工程：ステップＳＴ１１）。制御手段３は、レーザースキャナ４１によって検出した検出値を検出情報として記憶部５５に記憶させる。
【００３８】
制御手段３は、例えば、移動ロボット１が出発点まで戻ってきたか否かにより、レーザースキャナ４１による検出を終了するか否かを判断する（ステップＳＴ１２）。移動ロボット１が出発点まで戻ってくれば、検出を終了し（ステップＳＴ１２でＹＥＳ）、次のステップＳＴ１３に進み、出発点まで戻っていなければ、検出を継続し（ステップＳＴ１２でＮＯ）、検出情報取得工程（ステップＳＴ１１）を繰り返す。これにより、レーザースキャナ４１によって取得される検出情報は、時系列に記憶部５５に記憶される。制御手段３が検出情報取得工程（ステップＳＴ１１）を終了したら、地図構築手段５は、検出情報ｉのインデックスをゼロリセット（ｉ＝０）する（ステップＳＴ１３）。
【００３９】
次に、地図構築手段５は、記憶部５５に記憶した全時刻の検出情報ｉに対して、自己位置推定部５１によって自己位置の推定を行うとともに（自己位置推定工程：ステップＳＴ１４）、全時刻の検出情報ｉに基づいて、地図作成部５２に暫定地図を作成させる（暫定地図作成工程：ステップＳＴ１５）。制御手段３は、全ての検出情報ｉに対する演算が終了したか否かを判断し（ステップＳＴ１６）、全ての検出情報ｉの演算が終了していれば（ステップＳＴ１６でＹＥＳ）、地図構築手段５は、作成した暫定地図を記憶部５５に記憶させてから次のステップＳＴ１８に進む。全ての検出情報ｉの演算が終了していなければ（ステップＳＴ１６でＮＯ）、ステップＳＴ１７で次の検出情報ｉ（ｉ＝ｉ＋１）について自己位置推定工程（ステップＳＴ１４）および暫定地図作成工程（ステップＳＴ１５）を繰り返す。
【００４０】
この暫定地図作成工程（ステップＳＴ１５）では、レイキャスティングを行わず、ビーム線Ｂｉ先端の占有セル値のみを更新（＋１）して、物体が存在した占有セルＣ１が暫定地図に残り、ビーム線Ｂが通過したことによる自由セルＣ２は暫定地図に反映しない。以上のステップＳＴ１１〜ステップＳＴ１７によって本発明の第１処理ステップが構成されている。なお、従来の手法のように、有効性を判定せずにこの段階でレイキャスティングを行い、自由セルＣ２まで積算してしまうと、図９（Ａ）に示すような占有格子地図Ｍ１が作成され、この占有格子地図Ｍ１は、壁Ｗや物体Ｏが存在するはずの位置において、前述したように、ビーム線Ｂの入射角θが大きいためにセルの離散化によるビーム線Ｂの通過の判定誤りにより誤判定セルＣ２′とされた部分ができてしまう。
【００４１】
次に、地図構築手段５は、記憶部５５に記憶された全ての検出情報におけるビーム線Ｂｉ上に複数の判定点Ｐｊを設定し、判定点Ｐｊのインデックスをゼロリセット（ｊ＝０）する（ステップＳＴ１８）。次に、地図構築手段５は、法線取得部５３によって、判定点Ｐｊの法線の方向ベクトルＶ２を取得する（法線取得工程：ステップＳＴ１９）。地図構築手段５は、全ての判定点Ｐｊに対する法線取得が終了したか否かを判断し（ステップＳＴ２０）、終了したら（ステップＳＴ２０でＹＥＳ）次のステップＳＴ２２に進み、終了していなければ（ステップＳＴ２０でＮＯ）ステップＳＴ２１で次の判定点Ｐｊ（ｊ＝ｊ＋１）について法線取得工程（ステップＳＴ１９）を実行する。
【００４２】
以上の処理により全ての判定点Ｐｊについて、法線の取得が終了したら（ステップＳＴ２０でＹＥＳ）、地図構築手段５は、記憶部５５に記憶された全ての検出情報ｉのインデックスをゼロリセット（ｉ＝０）する（ステップＳＴ２２）。次に、地図構築手段５は、有効性判定部５４によって、ビーム線Ｂｉの単位方向ベクトルＶ１と判定点Ｐｊの法線の単位方向ベクトルＶ２との内積を計算し、その計算に基づいて判定点Ｐｊの検出情報の有効性を判定する（有効性判定工程：ステップＳＴ２３）。この有効性判定工程（ステップＳＴ２３）では、前述した第１〜第３の判定方法のいずれかにより判定点Ｐｊの検出情報の有効性を判定する。
【００４３】
続いて、地図構築手段５は、レイキャスティングによって、ビーム線Ｂｉ先端の占有セルＣ１のセル値は更新せず、ビーム線Ｂｉ上の自由セルＣ２のセル値を更新（−１）し、各セルＣのセル値を評価する（レイキャスティング工程：ステップＳＴ２４）。レイキャスティング工程（ステップＳＴ２４）では、判定点Ｐｊごとに有効性が反映された検出情報、すなわち有効性判定工程（ステップＳＴ２３）にて無効と判定されたセル値が除外された検出情報（第１または第２の判定方法の場合）、あるいは有効性判定工程（ステップＳＴ２３）にてセル値に重みが掛けられた検出情報（第３の判定方法の場合）に基づいてセル値を更新する。
【００４４】
地図構築手段５は、全ての検出情報ｉに対する有効性判定およびレイキャスティングが終了したか否かを判断し（ステップＳＴ２５）、終了したら（ステップＳＴ２５でＹＥＳ）次のステップＳＴ２７に進み、終了していなければ（ステップＳＴ２５でＮＯ）ステップＳＴ２６で次の検出情報ｉ（ｉ＝ｉ＋１）について有効性判定工程（ステップＳＴ２３）およびレイキャスティング工程（ステップＳＴ２４）を実行する。全ての検出情報ｉについて、有効性判定およびレイキャスティングが終了したら（ステップＳＴ２５でＹＥＳ）、地図作成部５２は、レイキャスティングの結果に基づいて占有地図Ｍ２を作成し、作成した占有地図Ｍ２を記憶部５５に記憶させる（占有地図作成工程：ステップＳＴ２７）。その後、制御手段３は、各部の動作を停止させる。このように構築された占有地図Ｍ２は、図９（Ｂ）に示すように、誤判定セルＣ２′が無いか少なく、空間Ｓの壁Ｗや物体Ｏの位置や形状を正しく再現した地図として構築される。以上のステップＳＴ１８〜ステップＳＴ２７によって本発明の第２処理ステップが構成されている。
【００４５】
このような本実施形態によれば、以下の作用・効果を奏することができる。
（１）移動ロボット１の情報処理装置２は、法線取得部５３にてビーム線Ｂｉ上の判定点Ｐｊの法線の方向ベクトルＶ２を取得し、有効性判定部５４にてビーム線Ｂｉの単位方向ベクトルＶ１と法線の単位方向ベクトルＶ２との内積（ｃｏｓθ）の絶対値に基づいて各判定点Ｐｊのセル値の有効性を判定し、地図作成部５２にて各判定点Ｐｊの有効性が反映されたセル値を用いて占有地図Ｍ２を構築する。したがって、物体表面に対してビーム線Ｂが浅い角度で照射され、物体が無いと誤判定したような誤判定セルＣ２′のセル値を排除することができ、物体を正しく検知した有効性が高いセル値に基づいて占有地図Ｍ２を構築することで、地図精度を向上させることができる。
【００４６】
（２）情報処理装置２の地図構築手段５は、第１処理ステップ（ステップＳＴ１１〜ＳＴ１４）において、走行した全時刻の検出情報に基づいて地図作成部５２に暫定地図を作成させた後に、第２処理ステップ（ステップＳＴ１５〜ＳＴ２３）において、暫定地図における各判定点Ｐｊの周囲の物体の有無を用いて法線取得部５３に各判定点Ｐｊの法線を取得させ、有効性判定部５４に各判定点Ｐｊのセル値の有効性を判定させ、判定点Ｐｊの有効性が反映されたセル値を用いて地図作成部５２に占有地図Ｍ２を作成させることで、地図精度をさらに向上させることができる。すなわち、全時刻の検出情報に基づく暫定地図を用いて法線取得部５３が判定点Ｐｊの法線を取得するので、全時刻を蓄積したデータにより精度よく判定点Ｐｊの法線を求めることができる。
【００４７】
（３）さらに、第２処理ステップにおいて、法線取得部５３は、リアルタイムに得られる検出情報では法線が求まらない判定点Ｐｊに対しても、全時刻の検出情報を用いることで法線を取得することができ、有効性判定部５４は、求めた法線を使用して有効性を判定することができる。さらに、有効性判定部５４は、全時刻の検出情報に基づき法線が存在すると分かっている判定点Ｐｊのみを処理すればよいため、地図作成部５２は、計算コストを下げて効率よく占有地図Ｍ２を構築することができる。
【００４８】
（４）有効性判定部５４が第１の判定方法によって、無効な判定点ＰｊのセルＣのセル値を無効にして対数オッズに加算しないようにすれば、地図作成部５２は、ビーム線Ｂが浅い照射となり無効と判定された判定点Ｐｊのセル値の影響を除外することができ、地図作成部５２は、計算コストを下げつつ効率よく占有地図Ｍ２を構築することができる。
【００４９】
（５）また、有効性判定部５４が第２の判定方法によって、ビーム線Ｂｉ上の無効な判定点Ｐｊよりも遠方側にある全ての判定点ＰｊのセルＣのセル値を使用せず、無効な判定点Ｐｊよりも近い側の判定点ＰｊのセルＣのセル値を地図作成に使用するようにすれば、地図作成部５２は、無効とされた判定点Ｐｊよりも遠方側にある全ての判定点Ｐｊのセル値を使用しないことで、使用するデータ量を削減することができ、さらに効率よく占有地図Ｍ２を構築することができる。
【００５０】
（６）また、有効性判定部５４が第３の判定方法によって、ビーム線Ｂｉ上の各判定点Ｐｊにて計算した内積の絶対値を重みとして用い、判定点ＰｊのセルＣのセル値に重みを掛けるようにすれば、判定点Ｐｊのセル値の有効性を段階的に評価することができ、地図作成部５２は、各判定点Ｐｊの重みが反映された検出情報を用いて占有地図Ｍ２を構築するので、物体の誤判定を抑制しつつ地図精度を向上させることができる。
【００５１】
〔実施形態の変形〕
なお、本発明は、前記実施形態に限定されるものではなく、本発明の目的を達成できる範囲での変形、改良等は本発明に含まれるものである。
例えば、前記実施形態では、移動ロボット１として具体的なものを例示しなかったが、移動ロボット１としては、サービスロボットやホームロボットなどであって、より具体的には、掃除ロボットや警備ロボット、運搬ロボット、案内ロボットなどが例示できる。さらに、本発明の情報処理装置２は、移動ロボット１に利用されるものに限らず、自動運転車や作業車などの移動体に利用することもできる。さらに、移動体の移動範囲は、二次元平面空間であっても三次元空間であってもよく、三次元空間の場合には移動体がドローンなどの飛行体であってもよい。
【００５２】
前記実施形態では、移動ロボット１が情報処理装置２を備えていたが、占有格子地図Ｍを作成する地図作成部５２や、法線取得部５３、有効性判定部５４、記憶部５５などは、移動ロボット１ではなく、移動体と通信可能な他の機器に設けられ、他の機器によって占有格子地図Ｍが作成され、その占有格子地図Ｍに基づいて移動体が自律走行するように構成されていてもよい。また、移動体としては、移動手段６を備えていなくてもよく、検出手段４が設置された台車等を使用者が手動で移動させつつ周囲を検出するような構成であってもよい。
【００５３】
前記実施形態の占有格子地図Ｍの作成方法では、移動ロボット１が空間Ｓ内を一周して出発点まで戻ってきてから、走行した全時刻の検出情報に基づいて暫定地図作成工程（ステップＳＴ１５）にて暫定地図を作成し（第１処理ステップ）、暫定地図に基づいて法線取得部５３が全ての判定点Ｐｊについて法線を計算し、有効性判定部５４が判定点Ｐｊの有効性を判定してから、地図作成部５２が占有地図Ｍ２を構築した（第２処理ステップ）が、このような処理手順に限られない。すなわち、暫定地図を作成するタイミングとしては、移動ロボット１が走行した全時刻の検出情報を取得した後ではなく、走行中に所定回数のスキャンを実行したときにその区間の暫定地図を作成してもよい。その際、暫定地図の作成に続いて、判定点Ｐｊの法線の計算、判定点Ｐｊの有効性の判定、および占有地図Ｍ２の構築を実行してもよいし、全走行経路の暫定地図を作成してから占有地図Ｍ２の構築を実行してもよい。また、図１０に示すように、移動ロボット１の走行中に周囲の物体の検出から暫定地図の作成および占有地図Ｍ２の構築をリアルタイムで実行する処理手順を採用してもよい。
【００５４】
図１０は、移動ロボットの他の動作を示すフローチャートである。図１０のフローチャートに示すように、移動ロボット１の走行が開始されると、検出手段４のレーザースキャナ４１によって移動ロボット１の周囲の物体の検出が開始され（検出情報取得工程：ステップＳＴ３１）、レーザースキャナ４１によって取得される検出情報が記憶部５５に記憶される。また、地図構築手段５は、ＳＬＡＭ技術によって自己位置推定部５１に移動ロボット１の自己位置の推定を開始させる（自己位置推定工程：ステップＳＴ３２）。１スキャン分の検出情報が取得されると、地図作成部５２が暫定地図を作成する（暫定地図作成工程：ステップＳＴ３３）。この暫定地図作成工程（ステップＳＴ３３）では、最新の１スキャン分の検出情報と、それ以前に取得された検出情報と、に基づいて暫定地図を作成する。
【００５５】
次に、ステップＳＴ３４からステップＳＴ３７は、前記実施形態のステップＳＴ１８からステップＳＴ２１と同様であり、法線取得部５３が各判定点Ｐｊの法線の方向ベクトルＶ２を取得する（法線取得工程：ステップＳＴ３５）。
【００５６】
続いて、有効性判定部５４がビーム線Ｂの単位方向ベクトルＶ１と各判定点Ｐｊの法線の単位方向ベクトルＶ２との内積を計算し、その計算に基づいて各判定点Ｐｊの検出情報の有効性を判定する（有効性判定工程：ステップＳＴ３８）。
続いて、地図構築手段５は、レイキャスティングによって、ビーム線Ｂ先端の占有セルＣ１のセル値は更新せず、ビーム線Ｂ上の自由セルＣ２のセル値を更新（−１）し、各セルＣのセル値を評価する（レイキャスティング工程：ステップＳＴ３９）。このレイキャスティング工程（ステップＳＴ３９）では、前述のレイキャスティング工程（ステップＳＴ２４）と同様に、判定点Ｐｊごとに有効性が反映された検出情報に基づいてレイキャスティングを実行するが、その対象は、その時までにスキャンが行われた範囲の検出情報である点が相違する。次に、地図作成部５２は、レイキャスティングの結果に基づいて占有地図Ｍ２を作成する（占有地図作成工程：ステップＳＴ４０）。
【００５７】
その後、制御手段３は、移動ロボット１の走行を継続するか否かを判断し（ステップＳＴ４１）、走行を継続する場合（ステップＳＴ４１でＹＥＳ）、検出情報取得工程（ステップＳＴ３１）に戻って前記手順を繰り返す。走行を継続しない場合（ステップＳＴ４１でＮＯ）、制御手段３は、レーザースキャナ４１による検出を終了し（ステップＳＴ４２）、占有地図作成工程（ステップＳＴ４０）で順次作成した占有地図Ｍ２を記憶部５５に記憶させてから各部の動作を停止させる。以上のように占有地図Ｍ２をリアルタイムで構築する手順によれば、前記実施形態のような第１処理ステップおよび第２処理ステップを実行する場合と比較して、占有地図Ｍ２を随時更新することができる。
【００５８】
また、前記実施形態では、移動体の移動経路周辺の占有確率を表す地図である占有地図Ｍ２として、占有格子地図を用いたが、これに限られない。すなわち、占有地図のセルが正方形あるいは立方体でなくてもよいし、セルを格子状に整列しなくてもよい。例えば、点群地図の各点の周りだけに球状のセルを設定してもよく、この場合は、測定点が存在しない領域は占有確率を計算しない。また、前記実施形態では、暫定地図を作成してから、この暫定地図上に判定点を設定したが、これに限らず、暫定地図に代えて、１つ前の時刻に作成された占有地図に基づき、この占有地図上に判定点を設定して法線を算定するようにすることも可能である。この場合には、１つ前の時刻までに作成された占有地図が本発明の暫定地図に相当する。
【産業上の利用可能性】
【００５９】
以上のように、本発明は、周囲の物体の検出情報に基づいて地図を作成しつつ移動するロボットなどの各種の移動体において、物体の誤判定を抑制して地図精度を向上させることができる情報処理装置および移動ロボットに好適に利用できる。
【符号の説明】
【００６０】
１      移動ロボット（移動体）
２      情報処理装置
３      制御手段
４      検出手段
５      地図構築手段
６      移動手段
５１      自己位置推定部
５２      地図作成部
５３      法線取得部
５４      有効性判定部
５５      記憶部
Ｂ        ビーム線
Ｍ２      占有地図
Ｐｊ      判定点
【図１】
2020183658.tif 000003
【図２】
2020183658.tif 000004
【図３】
2020183658.tif 000005
【図４】
2020183658.tif 000006
【図５】
2020183658.tif 000007
【図６】
2020183658.tif 000008
【図７】
2020183658.tif 000009
【図８】
2020183658.tif 000010
【図９】
2020183658.tif 000011
【図１０】
2020183658.tif 000012
【国際調査報告】
2020183658.tif 000013
2020183658.tif 000014
2020183658.tif 000015
2020183658.tif 000016