(57)【要約】【課題】より高速で精度良く環境における位置・姿勢を求めることができるようにした移動ロボットの自己位置同定方法及び移動ロボットを提供する。【解決手段】モデルデータとシーンデータとのマッチングを行って環境に対する位置関係を求める自己位置同定方法において、前記モデルデータを所定の回転角度だけ回転して回転モデルデータを作成し、前記回転モデルデータと前記シーンデータから１点ずつ取り出した組合せについて位置情報の偏差をとり、前記偏差の頻度を投票点およびその周りに重み付けをして投票し、前記回転角度の値を変えながら投票を行って、頻度が最も多いときの偏差と回転角度によって、前記モデルデータに対する相対位置・姿勢を求めるという手順で処理する。【選択図】図２
2010238217.tif 000002
【特許請求の範囲】
【請求項１】
環境認識センサを備えた移動ロボットにて、予め登録されたモデルデータと前記環境認識センサで計測したシーンデータとのマッチングを行って環境に対する位置関係を求める自己位置同定方法において、
前記モデルデータを所定の回転角度だけ回転して回転モデルデータを作成する処理と、
前記回転モデルデータと前記シーンデータから１点ずつ取り出した組合せについて、位置情報の偏差をとる処理と、
前記偏差の頻度を投票点およびその周りに重み付けをして投票する処理と、
前記回転角度の値を変えながら前記投票を行って、頻度が最も多いときの偏差と回転角度によって、前記モデルデータに対する相対位置・姿勢を求める処理を実行することを特徴とする移動ロボットの自己位置同定方法。
【請求項２】
前記投票する処理では、モデルデータとシーンデータのいずれかにおいて、センサから近いところは投票幅を狭くして重み付けを急にし、遠いところは投票幅を広くして重み付けを緩やかにする
ことを特徴とする請求項１記載の移動ロボットの自己位置同定方法。
【請求項３】
モデルデータ内でマッチングをとりたい領域を複数指定し、指定された各領域に対してのみマッチング行い、各指定領域のマッチング結果に対し平均を取る
ことを特徴とする請求項１又は２記載の移動ロボットの自己位置同定方法。
【請求項４】
各指定領域のマッチング結果に対する平均処理は、重み付き平均である
ことを特徴とする請求項３記載の移動ロボットの自己位置同定方法。
【請求項５】
前記投票する処理では、モデルデータおよびシーンデータに付随する計測の誤差に応じた重みの積に応じて前記投票の重みを決定する
ことを特徴とする請求項１〜４のいずれか１項に記載の移動ロボットの自己位置同定方法。
【請求項６】
モデルデータおよびシーンデータのそれぞれにおいて、
データを測定点群に分割し、各測定点群において極座標系での極大点、極小点、および他測定点群に隣接する端点を特徴点として求め、前記特徴点周辺のデータのみを前記投票に用いる
ことを特徴とする請求項１〜５のいずれか1項に記載の移動ロボットの自己位置同定方法。
【請求項７】
環境内を移動するための駆動機構と、
前記駆動機構を駆動するモータと、
前記モータの回転量を計測するエンコーダと、
移動を制御する制御装置と、
前記環境の状況を計測して得られた複数の点の位置情報を含むシーンデータを前記制御装置に入力する環境認識センサと、を有し、
前記制御装置は、
予め登録された前記環境内の地図情報を表わす複数の点の位置情報を有するモデルデータを記憶するモデルデータ記憶部と、
前記モデルデータの情報を予め設定された所定の角度毎に回転させた回転モデルデータを作成する回転モデルデータ作成部と、
前記回転モデルデータと前記シーンデータから１点ずつ取り出した組合せについて、位置情報の偏差をとり、前記偏差の頻度を投票点およびその周りに重み付けをして投票し、さらに前記回転モデルデータの回転角度の値を変えながら前記投票を行って頻度が最も多いときの偏差と回転角度を求める投票部と、
前記投票部から、前記環境においての自身の位置・姿勢を取得する自己位置出力部と、を有して構成されている
ことを特徴とする、移動ロボット。
【請求項８】
前記環境認識センサは、自身を中心とした前記平面上の扇状の計測範囲を所定の所定の角度毎に走査して、周囲の物体までの距離を計測する二次元スキャン型距離センサであり、
前記投票部は、前記モデルデータと前記シーンデータのいずれかにおいて、前記二次元スキャン型距離センサから近いところは投票幅を狭くして重み付けを急にし、遠いところは投票幅を広くして重み付けを緩やかにする
ことを特徴とする請求項７記載の移動ロボット。
【請求項９】
前記制御装置は
前記モデルデータの位置情報の内、前記の投票を実行したい領域を指定するマッチング領域指定部を有し、
前記回転モデルデータ作成部および前記投票部では、前記マッチング領域指定部で指定された各領域に対してのみ処理を実行し、前記指定された領域に対するマッチング結果に対し平均を取る
ことを特徴とする請求項７又は８記載の移動ロボット。
【請求項１０】
前記各指定領域のマッチング結果に対する平均処理は、重み付き平均である
ことを特徴とする請求項９記載の移動ロボット。
【請求項１１】
前記投票する処理では、モデルデータおよびシーンデータに付随する計測の誤差に応じた重みの積に応じて前記投票の重みを決定する
ことを特徴とする請求項７〜１０のいずれか１項に記載の移動ロボット。
【請求項１２】
モデルデータおよびシーンデータのそれぞれにおいて、
データを測定点群に分割し、各測定点群において極座標系での極大点、極小点、および他測定点群に隣接する端点を特徴点として求め、前記特徴点周辺のデータのみを前記投票に用いる
ことを特徴とする請求項７〜１１のいずれか１項に記載の移動ロボット。
【請求項１３】
モデルデータおよびシーンデータのそれぞれにおいて、
データを測定点群に分割し、各測定点群において測定点間の距離が予め与えられた範囲内にあれば、測定点間を補間する
ことを特徴とする請求項１〜６のいずれか1項に記載の移動ロボットの自己位置同定方法。
【請求項１４】
モデルデータおよびシーンデータのそれぞれにおいて、
データを測定点群に分割し、各測定点群において測定点間の距離が予め与えられた範囲内にあれば、測定点間を補間する
ことを特徴とする請求項７〜１２のいずれか１項に記載の移動ロボット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オフィス、工場等の施設内において、環境情報を計測して移動する移動ロボットの自己位置同定方法及び移動ロボットに関する。
【背景技術】
【０００２】
主に車輪などの駆動機構を有する移動ロボットは、移動面とのすべりなどによりエンコーダ等の内界センサを使って自己位置を求め制御を行っても目標位置からの位置誤差が大きくなる。そのため、レーザセンサ、超音波センサなどの外界センサを用いて、環境との位置関係を求めて自己位置同定し、目標位置とのずれを補正している。環境との位置関係は、例えば、予め登録されたモデルデータ（地図データ）と外界センサのシーンデータとのマッチングによって求められる。従来のマッチングはモデルデータを所定の回転角度だけ回転して回転モデルデータを作成し、回転モデルデータとシーンデータから１点ずつ取り出した組合せについて位置情報の偏差をとって投票し、さらには、回転角度の値を変えながら投票を行って、頻度が最も多いときの偏差と回転角度によって、モデルデータに対する相対位置・姿勢を求めている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−２４９２５６号公報（第７−８頁、図２）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら従来の技術では、外界センサから取得したモデルデータとシーンデータとの位置偏差を単純に投票しているので、センサの誤差により、モデルデータおよびシーンデータにおいて、拡大・縮小誤差が発生し、ある一部分の一致度を重視してその位置を最大値と取るなど、環境における自身の相対位置及び姿勢の検出精度に限界があり、移動ロボットの走行位置制御の精度も低下するという課題があった。
【０００５】
また、従来のマッチングでは、要求される処理速度に応じてデータの一部を用いてマッチングを行うこともできるが、データの選択によっては重要でない部分を多く選択したり、また、モデルデータの選択によっては対応するシーンが隠れてマッチングが取れない場合が発生する。そのため、精度が低下したり、ロバスト性（ノイズや外乱等に対する安定性（頑健性））が低下するという課題もあった。
また、従来のマッチングでは、外界センサに二次元レーザレンジファインダを用いた場合など、外界センサの計測方法（極座標系での距離計測）に依存した測定点密度の違いが生じてマッチング時に誤認識するという課題もあった。
本発明はこのような課題に鑑みてなされたものであり、より高速で精度良く環境における位置・姿勢を求めることができるようにした移動ロボットの自己位置同定方法及び移動ロボットを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するため、本発明は、次のようにしたのである。
請求項１にかかる移動ロボットの自己位置同定方法は、モデルデータを所定の回転角度だけ回転して回転モデルデータを作成し、前記回転モデルデータと前記シーンデータから１点ずつ取り出した組合せについて位置情報の偏差をとり、前記偏差の頻度を投票点およびその周りに重み付けをして投票し、さらに前記回転角度の値を変えながら投票を行って、頻度が最も多いときの偏差と回転角度によって、前記モデルデータに対する相対位置・姿勢を求めるという手順をとったのである。
【０００７】
請求項２にかかる移動ロボットの自己位置同定方法は、前記投票処理では、モデルデータとシーンデータのいずれかにおいて、センサから近いところは投票幅を狭くして重み付けを急にし、遠いところは投票幅を広くして重み付けを緩やかにするという手順をとったのである。
請求項３にかかる移動ロボットの自己位置同定方法は、モデルデータ内でマッチングをとりたい領域を複数指定し、指定された各領域に対してのみマッチング行い、各指定領域のマッチング結果に対し平均を取るという手順をとったのである。
【０００８】
請求項４にかかる移動ロボットの自己位置同定方法は、各指定領域のマッチング結果に対し重み付き平均を取るという手順をとったのである。
請求項５にかかる移動ロボットの自己位置同定方法は、前記投票処理では、モデルデータおよびシーンデータに付随する計測の誤差に応じた重みの積に応じて投票の重みを決定するという手順をとったのである。
請求項６にかかる移動ロボットの自己位置同定方法は、モデルデータおよびシーンデータのそれぞれにおいて、データを測定点群に分割し、各測定点群において極座標系での極大点、極小点、および他測定点群に隣接する端点を特徴点として求め、前記特徴点周辺のデータのみを投票に用いるという手順をとったのである。
【０００９】
また、請求項７にかかる移動ロボットは、環境内を移動するための駆動機構と、前記駆動機構を駆動するモータと、前記モータの回転量を計測するエンコーダと、移動を制御する制御装置と、前記環境の状況を計測して得られた複数の点の位置情報を含むであるシーンデータを前記制御装置に入力する環境認識センサと、を有し、前記制御装置は、予め登録された前記環境内の地図情報を表わす複数の点の位置情報を有するモデルデータを記憶するモデルデータ記憶部と、前記モデルデータの情報を予め設定された所定の角度毎に回転させた回転モデルデータを作成する回転モデルデータ作成部と、前記回転モデルデータと前記シーンデータから１点ずつ取り出した組合せについて、位置情報の偏差をとり、前記偏差の頻度を投票点およびその周りに重み付けをして投票し、さらに前記回転モデルデータの回転角度の値を変えながら投票を行って頻度が最も多いときの偏差と回転角度を求める投票部と、前記投票部から、前記環境においての自身の位置・姿勢を取得する自己位置出力部と、を有して構成されている。
【００１０】
また、請求項８にかかる移動ロボットは、前記環境認識センサは、自身を中心とした前記平面上の扇状の計測範囲を所定の所定の角度毎に走査して、周囲の物体までの距離を計測する二次元スキャン型距離センサであり、前記投票部は、前記モデルデータと前記シーンデータのいずれかにおいて、前記二次元スキャン型距離センサから近いところは投票幅を狭くして重み付けを急にし、遠いところは投票幅を広くして重み付けを緩やかにするものである。
また、請求項９にかかる移動ロボットは、前記制御装置は前記モデルデータの位置情報の内、投票を実行したい領域を指定するマッチング領域指定部を有し、前記回転モデルデータ作成部および前記投票部では、前記マッチング領域指定部で指定された各領域に対してのみ処理を実行し、前記指定された領域に対するマッチング結果に対し平均を取るように構成されている。
【００１１】
また、請求項１０にかかる移動ロボットは、前記各指定領域のマッチング結果に対する平均処理は、重み付き平均であることを特徴としている。
また、請求項１１にかかる移動ロボットは、前記投票処理では、モデルデータおよびシーンデータに付随する計測の誤差に応じた重みの積に応じて投票の重みを決定することを特徴としている。
また、請求項１２にかかる移動ロボットは、モデルデータおよびシーンデータのそれぞれにおいて、データを測定点群に分割し、各測定点群において極座標系での極大点、極小点、および他測定点群に隣接する端点を特徴点として求め、前記特徴点周辺のデータのみを投票に用いることを特徴としている。
また、請求項１３にかかる移動ロボットの自己位置同定方法は、モデルデータおよびシーンデータのそれぞれにおいて、データを測定点群に分割し、各測定点群において測定点間の距離が予め与えられた範囲内にあれば、測定点間を補間することを特徴としている。
また、請求項１４にかかる移動ロボットは、モデルデータおよびシーンデータのそれぞれにおいて、データを測定点群に分割し、各測定点群において測定点間の距離が予め与えられた範囲内にあれば、測定点間を補間することを特徴としている。
【発明の効果】
【００１２】
請求項１、２、５に記載の発明によると、重み付きの投票幅を持たせてセンサの誤差を考慮することにより、モデルデータおよびシーンデータにおいて、拡大・縮小誤差が発生しても、一部分の一致度を重視することなく最大値を取るので、誤認識なく相対位置・姿勢を求めることができる。
また、請求項３、４に記載の発明によると、領域を限定し、センサの誤差を考慮した重み付けのマッチングを行い、マッチング結果に対して重み付き平均をとることにより、部分的なデータを使ってマッチングしても、高速かつ誤認識なく相対位置・姿勢を求めることができる。
また、請求項６に記載の発明によると、特徴点周辺のデータのみを投票に用いることにより、部分的なデータを使ってマッチングしても、高速かつ誤認識なく相対位置・姿勢を求めることができる。
【００１３】
請求項７、８、１１に記載の発明によると、重み付きの投票幅を持たせてセンサの誤差を考慮することにより、モデルデータおよびシーンデータにおいて、拡大・縮小誤差が発生しても、一部分の一致度を重視することなく最大値を取るので、誤認識なく相対位置・姿勢を求めることができる。
また、請求項９、１０に記載の発明によると、領域を限定し、センサの誤差を考慮した重み付けのマッチングを行い、マッチング結果に対して重み付き平均をとることにより、部分的なデータを使ってマッチングしても、高速かつ誤認識なく相対位置・姿勢を求めることができる。
また、請求項１２に記載の発明によると、特徴点周辺のデータのみを投票に用いることにより、部分的なデータを使ってマッチングしても、高速かつ誤認識なく相対位置・姿勢を求めることができる。
また、請求項１３、１４に記載の発明によると、センサから得られた測定点のデータを補間して投票することにより、モデルデータおよびシーンデータにおいて、センサの計測方法に依存した測定点密度の違いが生じても、誤認識なく相対位置・姿勢を求めることができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１実施形態にかかる移動ロボットの構成を示す構成図
【図２】本発明の第１実施形態にかかる処理手順を示すフローチャート
【図３】本発明の第１実施形態にかかる投票テーブル決定の様子を示す説明図
【図４】本発明の第１実施形態にかかる投票の様子を示す説明図
【図５】本発明の第２実施形態にかかる領域指定の様子を示す説明図
【図６】本発明の第３実施形態にかかる重み付きデータを示す説明図
【図７】本発明の第４実施形態にかかる極座標系による特徴抽出の様子を示す説明図
【図８】本発明の第５実施形態にかかる測定点補間の様子を示す説明図
【図９】本発明の第５実施形態にかかる処理手順を示すフローチャート
【図１０】本発明の第５実施形態にかかる格子生成の様子を示す説明図
【発明を実施するための形態】
【００１５】
以下、本発明の方法の具体的な実施形態について、図に基づいて説明する。
［第１実施形態］
【００１６】
図１（ａ）および（ｂ）に示すように移動ロボット１は、移動ロボット制御装置２、モータ３、エンコーダ４、駆動機構５、環境認識センサ６から構成されている。
移動ロボット１は、面上の走行環境（以下、環境）を自律移動するものであり、ここで環境とは、壁、障害物など、移動ロボット１の周囲にある物体や、移動ロボット１が移動できる空間を意味する。
【００１７】
移動ロボット制御装置（制御装置）２は、環境認識センサ６およびエンコーダ５からの情報を取り込んで環境における自己の位置を計算し、前記自己位置を使って指令生成およびサーボ制御を行ってモータ３の駆動制御を行う。モータ３は、駆動機構５を駆動する。エンコーダ４は、モータ３の回転量を計測し、内界センサ情報を生成する。また、内界センサ情報は、エンコーダだけでなくジャイロセンサ等の方位センサを移動ロボット１に組み込んで適用するようにしても良い。
【００１８】
駆動機構５は、前記モータ３の出力軸に接続された車輪あるいは操舵軸を複数組有し移動ロボット１を駆動する。環境認識センサ６は、例えば二次元レーザレンジファインダのような二次元スキャン型距離センサであり、そのレーザ光線が、左右に傾いていない平面（スキャン平面）内において、センサ取付位置を中心にして扇状にスキャンされ、壁などの周囲物体までの距離を計測する。本発明は移動ロボット制御装置２において、環境との位置関係を求めて自己位置を計算するのに実施される処理である。
【００１９】
図２は移動ロボット１においてマッチングする処理手順を示すフローチャートである。この図を用いて本発明の方法を順を追って説明する。また、以下の説明では、移動ロボット１と環境認識センサ６の原点は同じとする。
ステップ１で、予め登録されたモデルデータを所定の回転角度だけ回転して回転モデルデータを作成する。
【００２０】
モデルデータは、教示位置において環境認識センサ６で計測したデータであって、移動ロボット１が存在する環境においての壁、障害物、移動空間等の位置情報を含んでいる。
回転モデルデータはモデルデータの点の座標１（ｘi ，ｙi ）ｉ＝ｌ，．．．，ｐを使って、座標１を０度から３５９度まで１度間隔で回転させた座標２を計算する。この座標２は、
（ｘr,i ，ｙr,i ）ｉ＝ｌ，．．．，ｐ    ｒ＝０，１，２，．．．，３５９
で表し、ｒが回転角度である。
即ち、「モデルデータ」とはｐ個の点の座標情報を含むものであり、「回転モデルデータ」とは１度から３５９度まで１度毎に回転させた３５９通りのｐ個の点である。
【００２１】
ステップ２から５で、シーンデータから求められた各点の座標３（Ｘj ，Ｙj ）ｊ＝１，．．．，ｑを使って、ｒを０から３５９まで、ｉをｌからｐまで、更に、ｊをｌからｑまで変えて投票処理を繰り返す。
ステップ２では、二次元の投票空間Ｖ（ｄｘ，ｄｙ）を初期化する。投票空間Ｖ（ｄｘ，ｄｙ）は、初期値は全て０であり、添え字ｄｘ，ｄｙの値が偏差を表す。
ステップ３では、各回転角度ｒのときのｉとｊの繰り返しにより、前記回転モデルデータと前記シーンデータから１点ずつ取り出した組合せについて、位置情報の偏差ｄｘrij，ｄｙrijを計算する。
【００２２】
ステップ４で、前記偏差の頻度を投票点およびその周りに重み付けをして投票する。まずは、環境認識センサ６の測定距離誤差を考慮して投票テーブルを決定する。投票テーブルは、偏差を投票点として投票点とその周りの点にカウント加算値（頻度の加算得点）を定義したデータテーブルである。
図３は、投票テーブル決定の様子を示す説明図である。例えば、測定距離誤差が１０００ｍｍまでは１０ｍｍ、１０００ｍｍ以降は距離の１％の二次元レーザレンジファインダを用いて、投票間隔が１０ｍｍの投票空間に投票する場合を考える。
【００２３】
図３の点１（ｘｉ１，ｙｉ１）のように、モデルデータのある１点が測定距離１０００ｍｍ地点にある場合は、測定距離誤差１０ｍｍのため、投票点の隣接点にも投票できるように３行３列の投票テーブル１を用いる。投票テーブル１は、投票点を＋１０、隣接点＋５としている。一方、図３の点２（ｘｉ２，ｙｉ２）のように、モデルデータのある１点が測定距離２０００ｍｍ地点にある場合は、測定距離誤差２０ｍｍのため、投票点の隣接点および隣接点の隣接点にも投票できるように５行５列の投票テーブル２を用いる。投票テーブル２は、投票点を＋１０、隣接点＋６、隣接点の隣接点を＋３としている。
【００２４】
このように、モデルデータにおいて、環境認識センサ６（即ち、移動ロボット１）から近いところは投票幅を狭くして重み付けを急にし、遠いところは投票幅を広くして重み付けを緩やかにする。ただし、処理時間に応じて投票幅に制限をかけるようにする。次に、ステップ３で求められた偏差ｄｘrij，ｄｙrijと、モデルデータの各点の位置関係に基づいた投票テーブルを用いて、投票空間Ｖ（ｄｘ，ｄｙ）に投票する。
【００２５】
図４は、投票の様子を示す説明図である。図４では、偏差ｄｘrij，ｄｙrijが１０，１０で、投票テーブル１を用いた場合を示しており、投票空間Ｖ（ｄｘ，ｄｙ）の１０，１０の位置を投票点としてその周りに投票テーブル１に従った投票を行う。その結果、投票点でカウント値が８０から９０に、その周りでカウント値が０から５に増加する。この重み付きの投票により、投票空間Ｖ（ｄｘ，ｄｙ）のカウント値を増やすことで、投票空間上での頻度を求めていく。この例では、モデルデータの計測値を元に投票テーブルを決定するものであるが、処理時間などに応じ、シーンデータを考慮した投票テーブルを用いるようにしてもよい。
ステップ５で、投票の最大値Ｖｍａｘを求める。Ｖｍａｘは初期値を０とし（ステップ１後実施）、更新された投票空間Ｖ（ｄｘ，ｄｙ）における投票の最大値と前回のＶｍａｘを比較し、大きい方を最大値として更新する。更新後は、Ｖｍａｘおよび、投票が最大となるときのｒ、ｄｘ、ｄｙを保存しておく。
ステップ６で、ステップ２から５を反復計算した結果求められた、投票最大時のｒ、ｄｘ、ｄｙを取得する。この値が前記モデルデータに対する相対位置・姿勢になる。
【００２６】
このように、重み付きの投票幅を持たせてセンサの誤差を考慮することにより、モデルデータおよびシーンデータにおいて、拡大・縮小誤差が発生しても、モデルデータ全体との一致度が評価でき、一部分の一致度を重視することなく最大値を取るので、誤認識なく相対位置・姿勢を求めることができるのである。
［第２実施形態］
【００２７】
次に本発明の第２の実施形態にかかる移動ロボットの自己位置同定方法について説明する。図５は第２の実施形態にかかる領域指定の様子を示す説明図である。なお、本実施形態は上述の第１実施形態と同様の部分については説明を省略する。
図５のように、モデルデータ内でマッチングをとりたい領域を指定領域１、指定領域２のように複数指定し、指定された各領域に対して第１実施形態同様のマッチング行う。その後、各領域の結果に対し重み付き平均をとることで最終的な相対位置・姿勢を求めるようにする。
すなわち、指定領域１の結果を（ｒ１’，ｄｘ１’，ｄｙ１’）、重みをｗ１’（０≦ｗ１’≦１）、指定領域２の結果を（ｒ２’，ｄｘ２’，ｄｙ２’）、重みをｗ２’（０≦ｗ２’≦１）とすると、次式（１）〜（３）により重み付き平均をとることで最終的な相対位置・姿勢（ｒ，ｄｘ，ｄｙ）を求める。
【数１】
2010238217.tif 000003
【数２】
2010238217.tif 000004
【数３】
2010238217.tif 000005
ただし、ｗ１’＋ｗ２’＝１となるようにｗ１’、ｗ２’を定める。なお、上記は指定領域が２つの場合を例に示したが、それ以外の場合にも拡張できるのは勿論である。
このように、領域を限定し、センサの誤差を考慮した重み付けのマッチングを行い、マッチング結果に対して重み付き平均をとることにより、高速かつ誤認識なく相対位置・姿勢を求めることができる。
［第３実施形態］
【００２８】
次に本発明の第３の実施形態にかかる移動ロボットの自己位置同定方法について説明する。図６は第３の実施形態にかかる重み付きデータを示す説明図である。なお、本実施形態は上述の第１，２実施形態と同様の部分については説明を省略する。
図６では、モデルデータまたはシーンデータの極座標系での計測値（Ｒｐ，θｐ）と計測の誤差に応じた重みｗｐがセットとなったデータ列が示されている。なお、データ列は直交座標系での値に変換したものでも良い。このような形態のデータ列を用いて偏差の頻度を投票する場合、例えばモデルデータの重みをｗｐｍｉ（ｉ＝ｌ，．．．，ｐ）、シーンデータの重みをｗｐｓｊ（ｊ＝ｌ，．．．，ｐ）とすると、投票の際に使用するの重みｗｐｖｉ，ｊは次式のように２つの重みの積になる。
【数４】
2010238217.tif 000006
この重みを用いて第１実施形態と同様に投票テーブルを作成して投票を行い、頻度が最も多いときの偏差と回転角度によって、モデルデータに対する相対位置・姿勢を求めるようにする。
このように、重み付きの投票幅を持たせてセンサの誤差を考慮することにより、モデルデータおよびシーンデータにおいて、拡大・縮小誤差が発生しても、モデルデータ全体との一致度が評価でき、一部分の一致度を重視することなく最大値を取るので、誤認識なく相対位置・姿勢を求めることができるのである。
［第４実施形態］
【００２９】
次に本発明の第４の実施形態にかかる移動ロボットの自己位置同定方法について説明する。図７（ａ）（ｂ）はいずれも第４の実施形態にかかる極座標系による特徴抽出の様子を示す説明図である。なお、本実施形態は上述の第１〜３実施形態と同様の部分については説明を省略する。
図７（ａ）では、モデルデータまたはシーンデータの測定点を直交座標系のグラフで表したものである。これを極座標系に変換すると、図７（ｂ）のグラフで表される。図７（ｂ）のグラフにおいて、隣接する測定点間の距離（Ｒｐ）を評価して、連続した測定点の集まりである測定点群に分割する。すなわち、隣接測定点間の距離が大きい場合、その隣接測定点間で測定対象が不連続になっているものとして、測定点の列を分解して測定点群とする。ただしθｐに対するＲｐの値がない場合は無条件に分割する。
【００３０】
その結果、図７のような場合、測定点群１と測定点群２に分割される。各測定点群において、距離Ｒｐが極大または極小となる点を求める。なお、極大点または極小点を求める前に、θｐ−Ｒｐグラフにおいて、移動平均やメディアンフィルタ等のフィルタをかけても良い。さらにある測定点群について隣接した測定点群が存在する場合、図７（ｂ）のように前記測定点群の端点についても求める。そして、各測定点群において、前記極大点、極小点、端点を特徴点とし、予め与えられた投票使用範囲パラメータによって、特徴点周辺のデータのみを使って、第１実施形態同様に投票を行い、モデルデータに対する相対位置・姿勢を求めるようにする。
【００３１】
このように、特徴点周辺のデータのみを投票に用いることにより、部分的なデータを使ってマッチングしても、高速かつ誤認識なく相対位置・姿勢を求めることができるのである。
［第５実施形態］
【００３２】
次に本発明の第５の実施形態にかかる移動ロボットの自己位置同定方法について説明する。図８（ａ）（ｂ）はいずれも第５の実施形態にかかる測定点補間の様子を示す説明図である。なお、本実施形態は上述の第１〜４実施形態と同様の部分については説明を省略する。
【００３３】
図８（ａ）では、モデルデータまたはシーンデータの測定点を直交座標系のグラフで表したものであり、測定点群Ａおよび測定点群Ｂは同じ形の物体を二次元レーザレンジファインダで測定した結果である。レーザーレンジファインダはレーザーを扇状に照射するためレーザーレンジファインダ近くに物体がある場合は測定点が密に、遠くにあれば測定点が疎となったデータが計測される。このため測定点群Ａの方が測定点群Ｂより移動ロボットに近いため、測定点の密度が密になっている。これを図８（ｂ）のように補間し、測定点の位置関係による密度の違いが生じにくいように、投票に使用する測定点のデータを等間隔に生成し直す。
【００３４】
次に、この測定点データの補間方法について、図９に示すフローチャートを用いて説明する。まずステップ１１で、隣接する測定点間の距離ｌｎを求める。次にステップ１２で、隣接する測定点間の距離ｌｎか予め与えられた範囲内に入るかを次式に判定する。
【数５】
2010238217.tif 000007
【００３５】
ただし、ｌｍｉｎ、ｌｍａｘは予め与えられた設定値であり、ｌｍｉｎは、必要以上に補間しないように設けた距離の下限値で、ｌｍａｘは、直線的に補間するのを許すための距離の上限値である。ステップ１３で、式（５）の判定により、距離ｌｎがｌｍｉｎとｌｍａｘの間に入れば、隣接する測定点間を線分で結ぶ。ステップ１４で、前記線分を含んだ一辺が投票間隔の格子を生成する。格子の生成は、例えば図１０のように測定点ｓから測定点ｇに結んだ線分の場合、ｘｓからｘ１の区間では、ｙ’ｓ（測定点ｓのＹＲ座標）とｙ’１（境界点１のＹＲ座標）の位置により格子１、２が生成され、ｘ１からｘ２の区間では、ｙ’１とｙ’２（境界点２のＹＲ座標）の位置により格子３、４、５が生成され、ｘ２からｘｇの区間では、ｙ’２とｙ’ｇ（測定点ｇのＹＲ座標）の位置により格子６、７が生成され、最終的には７個の格子が生成される。このようにして測定点間を結んだ線分を含む格子を生成する。最後にステップ１５で、格子の中心を新たな測定点として更新する。
【００３６】
このように、センサから得られた測定点のデータを補間することにより、モデルデータおよびシーンデータにおいて、センサの計測方法に依存した測定点密度の違いが生じても、投票により誤認識なく相対位置・姿勢を求めることができるのである。
センサの誤差を考慮したマッチングを行うため、画像距離センサなどのセンサを用いて予め登録された対象物に対する補正量を計測してロボットアームを作業させるといった用途にも適用できる。
【００３７】
以上、本発明の実施の形態について説明したが、本発明にかかる移動ロボットや移動ロボットの自己位置同定方法が上述の実施形態のものに限定されるものではなく、適宜変更して適用可能である。
【符号の説明】
【００３８】
１  移動ロボット
２  移動ロボット制御装置
３  モータ
４  エンコーダ
５  駆動機構
６  環境認識センサ
【図１】
2010238217.tif 000008
【図２】
2010238217.tif 000009
【図３】
2010238217.tif 000010
【図４】
2010238217.tif 000011
【図５】
2010238217.tif 000012
【図６】
2010238217.tif 000013
【図７】
2010238217.tif 000014
【図８】
2010238217.tif 000015
【図９】
2010238217.tif 000016
【図１０】
2010238217.tif 000017