JP2010112836A - 自己位置同定装置および該自己位置同定装置を備えた移動ロボット - Google Patents
自己位置同定装置および該自己位置同定装置を備えた移動ロボット Download PDFInfo
- Publication number
- JP2010112836A JP2010112836A JP2008285752A JP2008285752A JP2010112836A JP 2010112836 A JP2010112836 A JP 2010112836A JP 2008285752 A JP2008285752 A JP 2008285752A JP 2008285752 A JP2008285752 A JP 2008285752A JP 2010112836 A JP2010112836 A JP 2010112836A
- Authority
- JP
- Japan
- Prior art keywords
- self
- feature
- line segment
- point
- identification device
- 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.)
- Pending
Links
Landscapes
- Length Measuring Devices By Optical Means (AREA)
Abstract
【課題】より汎用的な環境において地図を用いずに自己位置を求めることができる自己位置同定装置および、該自己位置同定装置を備えた移動ロボットを提供する。
【解決手段】環境情報の特徴点を抽出する特徴点抽出部11と、連続する2フレーム間の特徴点集合を対応付ける特徴点対応部12と、対応点集合から自己移動量を計算する自己移動量演算部13と、自己移動量を座標変換して自己位置を求める位置変換部14と、自己位置を記憶する位置記憶部15と、デッドレコニング値を求めるデッドレコニング演算部16とを備えた自己位置同定装置において、環境認識センサからの計測データを元に環境情報の特徴線分を抽出する特徴線分抽出部17と、抽出された特徴線分から仮想特徴点を求める仮想特徴点抽出部19と、連続する2フレーム間の特徴線分集合を対応付ける特徴線分対応部18とを備える。
【選択図】図1
【解決手段】環境情報の特徴点を抽出する特徴点抽出部11と、連続する2フレーム間の特徴点集合を対応付ける特徴点対応部12と、対応点集合から自己移動量を計算する自己移動量演算部13と、自己移動量を座標変換して自己位置を求める位置変換部14と、自己位置を記憶する位置記憶部15と、デッドレコニング値を求めるデッドレコニング演算部16とを備えた自己位置同定装置において、環境認識センサからの計測データを元に環境情報の特徴線分を抽出する特徴線分抽出部17と、抽出された特徴線分から仮想特徴点を求める仮想特徴点抽出部19と、連続する2フレーム間の特徴線分集合を対応付ける特徴線分対応部18とを備える。
【選択図】図1
Description
本発明は、オフィス、工場等の施設内において、環境情報を計測し、その結果を用いて移動する移動ロボットに搭載された自己位置同定装置に関する。
車輪などの駆動機構によって移動ロボットは、エンコーダ等の内界センサを使って自己位置を求め制御を行っても、車輪と床面との間の滑りの発生などによって目標位置からの位置誤差が大きくなる。そのため、レーザセンサ、超音波センサなどの外界センサを用いて、周囲環境との位置関係を計測して自己位置同定し、目標位置とのずれを補正している。
従来の移動ロボットの自己位置同定では、外界センサとしてレーザレンジファインダのようなレーザセンサを用いて周期的に周囲環境を計測し、1周期分の計測データを1フレームとして、連続する2フレームについて、それぞれにおける特徴点集合を求め、フレーム間で特徴点の対応付けを行い、フレーム間で対応付けされた特徴点間の二乗距離の和を最小化するように移動ロボットの自己移動量(Δx,Δy,Δθ)を計算し、自己移動量を座標変換し自己位置を求めている(例えば、非特許文献1参照)。
また、レーザセンサによって得られた計測データから線分要素を生成し、線分要素の傾きと線分要素の中点の位置関係から線分要素の融合を行って線分情報を抽出して、予め記憶された地図情報と比較することにより自己位置を同定しているものもある(例えば、特許文献1参照)。
従来の移動ロボットの自己位置同定では、外界センサとしてレーザレンジファインダのようなレーザセンサを用いて周期的に周囲環境を計測し、1周期分の計測データを1フレームとして、連続する2フレームについて、それぞれにおける特徴点集合を求め、フレーム間で特徴点の対応付けを行い、フレーム間で対応付けされた特徴点間の二乗距離の和を最小化するように移動ロボットの自己移動量(Δx,Δy,Δθ)を計算し、自己移動量を座標変換し自己位置を求めている(例えば、非特許文献1参照)。
また、レーザセンサによって得られた計測データから線分要素を生成し、線分要素の傾きと線分要素の中点の位置関係から線分要素の融合を行って線分情報を抽出して、予め記憶された地図情報と比較することにより自己位置を同定しているものもある(例えば、特許文献1参照)。
図9は非特許文献1において自己位置を計算する処理手順を示すフローチャートである。この図を用いて順を追って説明する。
ステップ101で、レーザセンサによって得られた計測データから特徴点を抽出する。計測データの中には、周囲環境のうち移動ロボットから遠い壁面などを計測したデータも含まれている。それらを排除するため閾値を設け、計測データ中、背景から閾値以上手前に突き出た部分を特徴点とする。
ステップ102で、デッドレコニング値を取り込み、今回取得した特徴点に対し座標変換を行い、絶対位置を求める。
なお、絶対位置とは移動ロボットが移動する環境内の予め決められた点を原点とする世界(ワールド)座標系における位置である。これに対し、移動ロボットを原点とするロボット座標系における位置を相対位置とする。
ステップ103で、前回の特徴点の絶対位置を取得する。
ステップ104で、特徴点の絶対位置を比較し特徴点間の距離が閾値よりも近いもの同士を対応付ける。
ステップ105で、ステップ104にて対応付けられた特徴点の組Pj(Xj,Yj)(前回のフレームの特徴点)とP’j(X’j,Y’j)(今回のフレームの特徴点)を特徴点の対応点集合として出力する。
ステップ106で、自己移動量(Δx,Δy,Δθ)を次の式(1)〜(3)により計算する。
ステップ101で、レーザセンサによって得られた計測データから特徴点を抽出する。計測データの中には、周囲環境のうち移動ロボットから遠い壁面などを計測したデータも含まれている。それらを排除するため閾値を設け、計測データ中、背景から閾値以上手前に突き出た部分を特徴点とする。
ステップ102で、デッドレコニング値を取り込み、今回取得した特徴点に対し座標変換を行い、絶対位置を求める。
なお、絶対位置とは移動ロボットが移動する環境内の予め決められた点を原点とする世界(ワールド)座標系における位置である。これに対し、移動ロボットを原点とするロボット座標系における位置を相対位置とする。
ステップ103で、前回の特徴点の絶対位置を取得する。
ステップ104で、特徴点の絶対位置を比較し特徴点間の距離が閾値よりも近いもの同士を対応付ける。
ステップ105で、ステップ104にて対応付けられた特徴点の組Pj(Xj,Yj)(前回のフレームの特徴点)とP’j(X’j,Y’j)(今回のフレームの特徴点)を特徴点の対応点集合として出力する。
ステップ106で、自己移動量(Δx,Δy,Δθ)を次の式(1)〜(3)により計算する。
ただし、式(1)〜(3)において、[・]は、jを1からNまで変化させた場合の総和を表す。ここでNは対応付けられた特徴点の組の数である。
ステップ107で、ステップ106で計算された自己移動量を前回の自己位置を用いて座標変換し今回の自己位置を計算する。また、特徴点の計測位置である特徴相対位置と今回の自己位置を使って特徴点の絶対位置も計算する。
ステップ108で、ステップ107で計算された自己位置および特徴点の絶対位置を保存する。
ステップ107で、ステップ106で計算された自己移動量を前回の自己位置を用いて座標変換し今回の自己位置を計算する。また、特徴点の計測位置である特徴相対位置と今回の自己位置を使って特徴点の絶対位置も計算する。
ステップ108で、ステップ107で計算された自己位置および特徴点の絶対位置を保存する。
図10は特許文献1において自己位置を計算する処理手順を示すフローチャートである。この図を用いて順を追って説明する。
ステップ201で、4つの隣接する測定点から線分要素を生成し、線分要素の傾きと線分要素の中点の位置関係から線分要素の融合を行って線分情報を抽出する。また、2線分の距離、角度関係を判定し、オクルージョンなどによって生じる欠損を補間している。
ステップ202で、すべての線分について2本ずつの組み合わせを作り、組み合わせられた2線分の長さ、傾き、位置関係から5つの特徴量を抽出する。
ステップ203で、地図情報として予め生成されたバイナリトリーの検索を行い、5つの特徴量に近似度の高い検索ユニットを選択する。これにより地図との比較が行われたことになる。そして、選択された検索ユニットから位置候補を算出し、位置候補を密度地図上に割り当て最も密度の高い小領域の位置を最尤位置候補として選定し、自己位置として同定する。
このように、従来の自己位置同定は、外界センサを用いて、環境との位置関係を計測して自己位置を求めているのである。
特開平4−216487号公報(第3−5頁、図4)
根岸, 三浦, 白井「全方位ステレオとレーザレンジファインダの統合による移動ロボットの地図生成」日本ロボット学会誌Vol. 21 No. 6, pp.690〜696, 2003
ステップ201で、4つの隣接する測定点から線分要素を生成し、線分要素の傾きと線分要素の中点の位置関係から線分要素の融合を行って線分情報を抽出する。また、2線分の距離、角度関係を判定し、オクルージョンなどによって生じる欠損を補間している。
ステップ202で、すべての線分について2本ずつの組み合わせを作り、組み合わせられた2線分の長さ、傾き、位置関係から5つの特徴量を抽出する。
ステップ203で、地図情報として予め生成されたバイナリトリーの検索を行い、5つの特徴量に近似度の高い検索ユニットを選択する。これにより地図との比較が行われたことになる。そして、選択された検索ユニットから位置候補を算出し、位置候補を密度地図上に割り当て最も密度の高い小領域の位置を最尤位置候補として選定し、自己位置として同定する。
このように、従来の自己位置同定は、外界センサを用いて、環境との位置関係を計測して自己位置を求めているのである。
しかしながら非特許文献1の自己位置同定は、計測データの中から角部などを特徴点として抽出してフレーム間に対応付けを行っているが、廊下など、移動ロボットの両側に平らな壁面が存在し計測データが直線になっている場合には対応付けができず、自己位置が求められないという問題があった。
また、特許文献1のような場合は、計測データから特徴を求め、地図と比較して自己位置を求めているため、自己位置を求めるのに地図が必要であるという問題があった。また、計測データから線分を抽出して特徴を誘導するが、線分要素の中点の位置関係から線分要素の融合を行って線分情報を得るため、線分要素の長さによって融合の可否の結果が変わってきて正しく線分抽出できないというような問題もあった。また、2線分の距離、角度関係を判定し、欠損を補間しているが、欠損を補間できない場合、特徴量を求められないという問題があった。
さらには、補間する形状を段差や角に限定しているため、実際の形状が補間した形状と異なる場合に地図と比較して誤った結果を出力する可能性があった。
本発明はこのような問題点に鑑みてなされたものであり、角の多い複雑な環境だけでなく、廊下など両側に平らな壁面があるような環境やあるいはそれらが複合した環境、さらには、オクルージョンなどにより欠損がある環境等、より汎用的な環境において地図を用いずに自己位置を求めることができる自己位置同定装置および、該自己位置同定装置を備えた移動ロボットを提供することを目的とする。
また、特許文献1のような場合は、計測データから特徴を求め、地図と比較して自己位置を求めているため、自己位置を求めるのに地図が必要であるという問題があった。また、計測データから線分を抽出して特徴を誘導するが、線分要素の中点の位置関係から線分要素の融合を行って線分情報を得るため、線分要素の長さによって融合の可否の結果が変わってきて正しく線分抽出できないというような問題もあった。また、2線分の距離、角度関係を判定し、欠損を補間しているが、欠損を補間できない場合、特徴量を求められないという問題があった。
さらには、補間する形状を段差や角に限定しているため、実際の形状が補間した形状と異なる場合に地図と比較して誤った結果を出力する可能性があった。
本発明はこのような問題点に鑑みてなされたものであり、角の多い複雑な環境だけでなく、廊下など両側に平らな壁面があるような環境やあるいはそれらが複合した環境、さらには、オクルージョンなどにより欠損がある環境等、より汎用的な環境において地図を用いずに自己位置を求めることができる自己位置同定装置および、該自己位置同定装置を備えた移動ロボットを提供することを目的とする。
上記問題を解決するため、本発明は、次のように構成したのである。
請求項1に記載の発明は、環境認識センサよって周期的に得られる計測データを元に環境情報の特徴点を抽出する特徴点抽出部と、1周期分の前記計測データを1フレームとして、連続する2フレーム間の特徴点集合を対応付ける特徴点対応部と、対応点集合から自己移動量を計算する自己移動量演算部と、前記自己移動量を座標変換して自己位置を求める位置変換部と、前記自己位置を記憶する位置記憶部と、内界センサからの情報を元にデッドレコニング値を求めるデッドレコニング演算部とを備えた自己位置同定装置において、前記環境認識センサからの計測データを元に環境情報の特徴線分を抽出する特徴線分抽出部と、抽出された前記特徴線分から仮想特徴点を求める仮想特徴点抽出部と、前記連続する2フレーム間の特徴線分集合を対応付ける特徴線分対応部と、を備えたことを特徴とするものである。
請求項1に記載の発明は、環境認識センサよって周期的に得られる計測データを元に環境情報の特徴点を抽出する特徴点抽出部と、1周期分の前記計測データを1フレームとして、連続する2フレーム間の特徴点集合を対応付ける特徴点対応部と、対応点集合から自己移動量を計算する自己移動量演算部と、前記自己移動量を座標変換して自己位置を求める位置変換部と、前記自己位置を記憶する位置記憶部と、内界センサからの情報を元にデッドレコニング値を求めるデッドレコニング演算部とを備えた自己位置同定装置において、前記環境認識センサからの計測データを元に環境情報の特徴線分を抽出する特徴線分抽出部と、抽出された前記特徴線分から仮想特徴点を求める仮想特徴点抽出部と、前記連続する2フレーム間の特徴線分集合を対応付ける特徴線分対応部と、を備えたことを特徴とするものである。
また、請求項2に記載の発明は、前記特徴線分抽出部は、前記環境認識センサからの計測データを複数の測定点群に分割し、各測定点群内において、測定点の最小二乗近似直線と各測定点との距離が所定の閾値以内となるよう前記測定点群をさらに分割して線分を抽出することを特徴とするものである。
また、請求項3に記載の発明は、前記特徴線分対応部は、前記連続する2フレーム間の特徴線分集合の対応付けにおいて2つの線分の傾きの一致度と線分の端点の絶対位置とを基に端点と線分の重なり具合を評価し、線分に重なった端点ともう一方の線分の両端点の絶対位置から、対応点の相対位置を求めることを特徴とするものである。
また、請求項4に記載の発明は、前記端点と線分の重なり具合の評価は、前記2つの線分の長さを比較して短線分と長線分に選別し、短線分の端点と長線分との距離が所定の閾値以内であるか否かによって行うことを特徴とするものである。
また、請求項5に記載の発明は、前記仮想特徴点抽出部は、前記特徴線分抽出部にて抽出された複数の特徴線分を延長した直線の交点を求め。前記交点を仮想特徴点として抽出することを特徴とするものである。
また、請求項6に記載の発明は、前記特徴点の数と前記仮想特徴点の数との合計が予め定められた定数より大きい場合には、前記特徴線分対応部における特徴線分の対応付けを行わないことを特徴とするものである。
また、請求項7に記載の発明は、前記内界センサとして方位センサを備え、前記自己移動量において、姿勢回転量のみを前記方位センサの情報から求め、今回フレームのデータを前記姿勢回転量だけ回転させたデータから特徴点、特徴線分、および仮想特徴点を求めて前回フレームのデータとの対応付けを行い、前記自己移動量演算部にて、前記対応点集合から各点の並進移動量を求め、平均を取ることにより自己の並進移動量を求め前記姿勢回転量と合わせて自己移動量とすることを特徴とするものである。
また、請求項8に記載の発明は、前記内界センサとして方位センサを備え、前記自己移動量において、姿勢回転量のみを前記方位センサの情報から求め、今回フレームのデータを前記姿勢回転量だけ回転させたデータから特徴点、特徴線分、および仮想特徴点を求めて前回フレームのデータとの対応付けを行い、前記自己移動量演算部にて、前記対応点集合から各点の並進移動量を求め、投票によって最頻値を取ることにより自己の並進移動量を求め前記姿勢回転量と合わせて自己移動量とすることを特徴とするものである。
また、請求項9に記載の発明は、請求項1乃至8に記載された自己位置同定装置を備えたことを特徴とする移動ロボットである。
請求項1乃至8に記載の発明によると、特徴点だけでなく仮想特徴点を含めた線分も併用して対応を行っており、仮想特徴点は、2フレームの計測データのずれ量を求める際の対応点として求めているだけなので実際の形状と一致している必要がなく、オクルージョンなどにより欠損があっても、形状を補間せずに2フレームの計測データのずれ量を正確に求めることができる。そのため、角の多い複雑な環境だけでなく、廊下など両側に平らな壁面があるような環境やあるいはそれらが複合した環境、さらには、欠損がある環境等、より汎用的な環境において地図を用いずに自己位置を求めることができる。
また請求項9に記載の発明によると、自己位置同定装置によって地図を用いずに自己位置を求めて環境内を移動可能な移動ロボットを実現できる。
また請求項9に記載の発明によると、自己位置同定装置によって地図を用いずに自己位置を求めて環境内を移動可能な移動ロボットを実現できる。
以下、本発明の実施の形態について図を参照して説明する。
図1は、本発明の自己位置同定装置の内部構成を示す図である。自己位置同定装置2は、例えば、CPUやメモリを内蔵した計算機であり、特徴点抽出部11、特徴点対応部12、自己移動量演算部13、位置変換部14、位置記憶部15、デッドレコニング演算部16、特徴線分抽出部17、特徴線分対応部18、仮想特徴点抽出部19から構成され、環境認識センサなどの情報を入力して移動ロボットの自己位置を計算し出力する。
特徴点抽出部11は、環境認識センサからの情報を元に所定の周期で移動ロボット周辺の環境形状を認識し、角部などの特徴点集合を抽出する。
特徴点集合はこの周期に応じて抽出される。定期的に得られる特徴点情報を1フレームとすると、特徴点対応部12では、その特徴点集合をフレームごとに保存して、時間的に連続する2フレーム間の特徴点集合を特徴点の絶対位置を評価して対応付ける。
自己移動量演算部13は、特徴点対応部12から出力された対応点集合を用いてフレーム間で対応付けられた特徴点間の二乗距離の和を最小化するように移動ロボットの自己移動量を計算する。位置変換部14は、自己移動量演算部13から出力された自己移動量を座標変換して自己位置を計算する。
また、今回のフレームの特徴点、仮想特徴点、特徴線分端点について、相対位置(以降、特徴相対位置と呼ぶ)を入力し、特徴相対位置と自己位置を使って特徴点、仮想特徴点、特徴線分端点の絶対位置(以降、特徴位置と呼ぶ)も計算する。
特徴点集合はこの周期に応じて抽出される。定期的に得られる特徴点情報を1フレームとすると、特徴点対応部12では、その特徴点集合をフレームごとに保存して、時間的に連続する2フレーム間の特徴点集合を特徴点の絶対位置を評価して対応付ける。
自己移動量演算部13は、特徴点対応部12から出力された対応点集合を用いてフレーム間で対応付けられた特徴点間の二乗距離の和を最小化するように移動ロボットの自己移動量を計算する。位置変換部14は、自己移動量演算部13から出力された自己移動量を座標変換して自己位置を計算する。
また、今回のフレームの特徴点、仮想特徴点、特徴線分端点について、相対位置(以降、特徴相対位置と呼ぶ)を入力し、特徴相対位置と自己位置を使って特徴点、仮想特徴点、特徴線分端点の絶対位置(以降、特徴位置と呼ぶ)も計算する。
位置記憶部15は、位置変換部14から出力された自己位置および特徴位置を保存する。デッドレコニング演算部16は、位置記憶部15から出力された自己位置にエンコーダなどによる内界センサ情報から求めた移動量を積算することよりデッドレコニング値を計算する。
特徴線分抽出部17は、特徴点抽出部11と同様に環境認識センサの情報を元に環境形状を認識するが、特徴点集合ではなく壁面部などの特徴線分集合を抽出する。
特徴線分対応部18は、特徴点対応部12のように、連続する2フレーム間の特徴線分集合を線分の傾きと線分の端点の絶対位置を評価して対応付ける。
仮想特徴点抽出部19は、特徴線分抽出部17から抽出された特徴線分集合から隣接する2本の特徴線分を取り出し、その2線分をそれぞれ延長した直線の交点を求める。求められた交点を仮想の特徴点として出力する。
特徴線分抽出部17は、特徴点抽出部11と同様に環境認識センサの情報を元に環境形状を認識するが、特徴点集合ではなく壁面部などの特徴線分集合を抽出する。
特徴線分対応部18は、特徴点対応部12のように、連続する2フレーム間の特徴線分集合を線分の傾きと線分の端点の絶対位置を評価して対応付ける。
仮想特徴点抽出部19は、特徴線分抽出部17から抽出された特徴線分集合から隣接する2本の特徴線分を取り出し、その2線分をそれぞれ延長した直線の交点を求める。求められた交点を仮想の特徴点として出力する。
図2(a)および(b)は、本発明の自己位置同定装置2を搭載した移動ロボットの内部構成を示す図である。移動ロボット1は、自己位置同定装置2、移動ロボット制御装置3、モータ4、エンコーダ5、駆動機構6、環境認識センサ7から構成される。移動ロボット制御装置3は、自己位置同定装置2で計算された自己位置を取得し、指令生成およびサーボ制御を行ってモータ4の駆動制御を行う。モータ4は、駆動機構6を駆動する。エンコーダ5は、モータ4の回転量を計測し内界センサ情報を生成する。内界センサ情報はエンコーダだけでなくジャイロセンサ等の方位センサを移動ロボット1に組み込んで適用するようにしても良い。駆動機構6は、モータ4の出力軸に接続された車輪あるいは操舵軸を複数組有し移動ロボット1を駆動する。
環境認識センサ7は、例えば2次元レーザレンジファインダのような2次元スキャン型距離センサであり、そのレーザ光線が、左右に傾いていない平面(スキャン平面)内において、センサ取付位置を中心にして扇状にスキャンされ、壁などの周囲物体までの距離を計測する。このような構成において、自己位置同定装置2は、環境認識センサ7およびエンコーダ5からの情報を取り込んで自己位置を計算し、移動ロボット1を制御するために必要な情報を生成しているのである。
本発明が従来技術と異なる部分は、自己位置同定装置2に特徴線分抽出部17、特徴線分対応部18、仮想特徴点抽出部19を設けた点である。
環境認識センサ7は、例えば2次元レーザレンジファインダのような2次元スキャン型距離センサであり、そのレーザ光線が、左右に傾いていない平面(スキャン平面)内において、センサ取付位置を中心にして扇状にスキャンされ、壁などの周囲物体までの距離を計測する。このような構成において、自己位置同定装置2は、環境認識センサ7およびエンコーダ5からの情報を取り込んで自己位置を計算し、移動ロボット1を制御するために必要な情報を生成しているのである。
本発明が従来技術と異なる部分は、自己位置同定装置2に特徴線分抽出部17、特徴線分対応部18、仮想特徴点抽出部19を設けた点である。
図3は自己位置同定装置2において特徴線分を用いて自己位置を計算する処理手順を示すフローチャートである。この図を用いて本発明における処理を順を追って説明する。
なお説明を簡単にするため、環境認識センサ7を原点とするセンサ座標系はロボット座標系と同一であるとする。
ステップ1では、特徴線分抽出部17にて次に述べるような方法で環境認識センサ7による複数の測定点を線分に分割して直線を抽出する。
まず隣接する測定点間の距離を評価して、連続した測定点群に分割する。すなわち、隣接測定点間の距離が大きい場合、その隣接測定点間で測定対象が不連続になっているものとして、測定点の列を分解して測定点群とする。
測定点列を測定点群に分解する様子を図4に示す。物体1、物体2について環境認識センサ7によって計測を行った場合、物体1と物体2の間で測定点の間の距離が大きくなるため、測定点列が測定点群1、2に分解される。
続いて各測定点群に対し、線分の抽出を行う。線分の抽出はまず、連続する測定点に対する最小二乗近似直線を生成して、測定点との最大距離が予め定められた閾値内であるか評価する。そして最大距離が閾値内であれば隣接する測定点と合併して前記と同様の評価を行う。もし測定点と最小二乗近似直線の距離が閾値を超えた場合は、該測定点の前の測定点で分割し、該測定点を始点として次の線分を抽出する。このような分割を繰り返し行うことで測定点群内において線分を抽出する。
なお説明を簡単にするため、環境認識センサ7を原点とするセンサ座標系はロボット座標系と同一であるとする。
ステップ1では、特徴線分抽出部17にて次に述べるような方法で環境認識センサ7による複数の測定点を線分に分割して直線を抽出する。
まず隣接する測定点間の距離を評価して、連続した測定点群に分割する。すなわち、隣接測定点間の距離が大きい場合、その隣接測定点間で測定対象が不連続になっているものとして、測定点の列を分解して測定点群とする。
測定点列を測定点群に分解する様子を図4に示す。物体1、物体2について環境認識センサ7によって計測を行った場合、物体1と物体2の間で測定点の間の距離が大きくなるため、測定点列が測定点群1、2に分解される。
続いて各測定点群に対し、線分の抽出を行う。線分の抽出はまず、連続する測定点に対する最小二乗近似直線を生成して、測定点との最大距離が予め定められた閾値内であるか評価する。そして最大距離が閾値内であれば隣接する測定点と合併して前記と同様の評価を行う。もし測定点と最小二乗近似直線の距離が閾値を超えた場合は、該測定点の前の測定点で分割し、該測定点を始点として次の線分を抽出する。このような分割を繰り返し行うことで測定点群内において線分を抽出する。
図5(a)、(b)は、ある測定点群において線分を抽出する様子を説明する図である。図5(a)では測定点2と最小二乗近似直線との距離が閾値を超えているのでその前の測定点1で測定点群を分割し、その時の最小二乗近似直線の一部を線分として抽出する。
そして、測定点2を始点として新たな線分を抽出する。このようにして図5(b)に示すような線分1および線分2が抽出される。線分の端点は隣接する線分を延長して線分同士が交わる場合はその交点とし、交わらない場合あるいは測定点群の始点や終点の場合は分割の始点または終点となる測定点とする。
そして、測定点2を始点として新たな線分を抽出する。このようにして図5(b)に示すような線分1および線分2が抽出される。線分の端点は隣接する線分を延長して線分同士が交わる場合はその交点とし、交わらない場合あるいは測定点群の始点や終点の場合は分割の始点または終点となる測定点とする。
ステップ2では、特徴線分抽出部17によって抽出された特徴線分集合から隣接する2本の特徴線分を仮想特徴点抽出部19にて取り出し、その2線分をそれぞれ延長した直線の交点を求める。求められた交点を仮想特徴点として特徴点対応部12に出力する。
図6(a)(b)は、仮想特徴点を抽出する様子を説明する図であり、図6(a)では、線分1と線分2の間に欠損があり、特徴点はないが、それぞれの線分を延長した直線の交点を求めることにより仮想特徴点を求めるようにする。図6(b)でも、図6(a)と同様にして仮想特徴点を求めるようにするが、仮想特徴点は図6(b)のように線分4上にあって欠損した部分になくてもよい。なお、特徴点抽出部11から抽出された特徴点の数と仮想特徴点の数との合計が予め定められた定数より大きければ、ステップ4から6までの処理は行わない。
図6(a)(b)は、仮想特徴点を抽出する様子を説明する図であり、図6(a)では、線分1と線分2の間に欠損があり、特徴点はないが、それぞれの線分を延長した直線の交点を求めることにより仮想特徴点を求めるようにする。図6(b)でも、図6(a)と同様にして仮想特徴点を求めるようにするが、仮想特徴点は図6(b)のように線分4上にあって欠損した部分になくてもよい。なお、特徴点抽出部11から抽出された特徴点の数と仮想特徴点の数との合計が予め定められた定数より大きければ、ステップ4から6までの処理は行わない。
ステップ3では、デッドレコニング演算部16からデッドレコニング値を取り込み、今回取得した線分の端点および仮想特徴点に対し座標変換を行い、絶対位置を求める。
ステップ4では、位置記憶部15から前回の特徴位置すなわち前回の特徴線分集合の端点の絶対位置を取得する。
ステップ5では、特徴線分対応部18にて、2フレーム間の線分集合対応付けを、線分の傾きの一致度とステップ3、4で求めた端点の位置とから、線分の重なり具合を評価して行う。
ステップ4では、位置記憶部15から前回の特徴位置すなわち前回の特徴線分集合の端点の絶対位置を取得する。
ステップ5では、特徴線分対応部18にて、2フレーム間の線分集合対応付けを、線分の傾きの一致度とステップ3、4で求めた端点の位置とから、線分の重なり具合を評価して行う。
図7は、線分集合の対応付けをするときの説明図である。図7のxy座標系は前述の絶対位置の基準となる世界座標系である。
まず各フレームの線分集合から線分を1本ずつ取り出し、取り出された2つの線分の長さを比較して長い方を長線分、短い方を短線分として選別する。その後、長線分と短線分の傾きの一致度と長線分と短線分の重なり具合の評価を行う。線分の傾きの一致度は図7に示すようにx軸とのなす角度をそれぞれθl、θsとし、また閾値をe1として次式により評価する。
まず各フレームの線分集合から線分を1本ずつ取り出し、取り出された2つの線分の長さを比較して長い方を長線分、短い方を短線分として選別する。その後、長線分と短線分の傾きの一致度と長線分と短線分の重なり具合の評価を行う。線分の傾きの一致度は図7に示すようにx軸とのなす角度をそれぞれθl、θsとし、また閾値をe1として次式により評価する。
線分の重なり具合の評価では、図7に示すように短線分の端点と長線分との距離rが閾値e2より小さいかを次式により判定する。ただし、短線分の端点から長線分に降ろした垂線が長線分と交わらない場合(長線分上に交点がない場合)は、除外して該端点に対しては判定を行わない。
上式のxl4、yl4は端点4のx座標、y座標、xi、yi(i=0、1)は短線分の端点のx座標、y座標である。判定を短線分の両端点に関し行い、少なくとも1つが式(5)(6)の条件を満たせば長線分と短線分とが重なっていると評価する。
なお長線分と短線分は、正確には図8のように一部がほぼ重なるような位置関係となるが、図7においては長線分、短線分の各端点や距離rについての説明を分かり易くするために拡大して長線分、短線分を離して描いている。
なお長線分と短線分は、正確には図8のように一部がほぼ重なるような位置関係となるが、図7においては長線分、短線分の各端点や距離rについての説明を分かり易くするために拡大して長線分、短線分を離して描いている。
続いてステップ6で、長線分に重なった短線分の端点の絶対位置と長線分の両端点の絶対位置とから長線分上の対応点(図8の端点1’)の相対位置(ロボット座標系位置)を求める。
図8は対応点の位置を求める説明図であり、この図をもとに説明する。端点1に対応する端点1’の絶対位置は同じであるので、図8のように長線分に重なった端点1と長線分の両端点3、4の絶対位置から端点1’が長線分上のどこにあるか、すなわち、式(7)で表される長線分の式における直線パラメータtを式(8)により求める。
図8は対応点の位置を求める説明図であり、この図をもとに説明する。端点1に対応する端点1’の絶対位置は同じであるので、図8のように長線分に重なった端点1と長線分の両端点3、4の絶対位置から端点1’が長線分上のどこにあるか、すなわち、式(7)で表される長線分の式における直線パラメータtを式(8)により求める。
ただし、p’は端点1’の絶対位置を表すベクトル、d’は端点4(絶対位置)からみた端点3(絶対位置)の位置ベクトル、a’は端点4の絶対位置を表すベクトル、e’は端点4(絶対位置)からみた端点1(絶対位置)の位置ベクトル、| |はベクトルの大きさを表す。その後、各端点の相対位置は環境認識センサの計測データよりわかっているため、式(8)で求められた直線パラメータtから端点1’の相対位置を次式により求める。
ただし、pは端点1’の相対位置を表すベクトル、dは端点4(相対位置)からみた端点3(相対位置)の位置ベクトル、aは端点4の相対位置を表すベクトルである。
そして、端点1と端点1’のうち、前回値と今回値を対応させることにより、特徴線分の対応点の組Pj(Xj,Yj)(前回値)とP’j(X’j,Y’j)(今回値)が特徴線分の対応点集合として求められる。
具体的には、端点1が元々前回値のデータであれば端点1をPに追加登録し端点1’をP’に追加登録する。端点1が今回値ならば逆に端点1をP’に登録し、端点1’をPに登録する。
そして、端点1と端点1’のうち、前回値と今回値を対応させることにより、特徴線分の対応点の組Pj(Xj,Yj)(前回値)とP’j(X’j,Y’j)(今回値)が特徴線分の対応点集合として求められる。
具体的には、端点1が元々前回値のデータであれば端点1をPに追加登録し端点1’をP’に追加登録する。端点1が今回値ならば逆に端点1をP’に登録し、端点1’をPに登録する。
ステップ7では、ステップ6で求めた特徴線分の対応点集合を特徴点および仮想特徴点の対応点集合に加えて対応点集合として出力する。ステップ8で、自己移動量(Δx,Δy,Δθ)を式(1)〜(3)により計算する。
ステップ9で、位置変換部14にて、ステップ8で計算された自己移動量を前回の自己位置を用いて座標変換し今回の自己位置(絶対位置)を計算する。また、今回の特徴相対位置と自己位置を使って特徴位置も計算する。
ステップ10で、ステップ9で計算された自己位置および特徴位置を位置記憶部15に保存する。
ステップ9で、位置変換部14にて、ステップ8で計算された自己移動量を前回の自己位置を用いて座標変換し今回の自己位置(絶対位置)を計算する。また、今回の特徴相対位置と自己位置を使って特徴位置も計算する。
ステップ10で、ステップ9で計算された自己位置および特徴位置を位置記憶部15に保存する。
このように、本発明では特徴線分抽出部17、特徴線分対応部18、仮想特徴点抽出部19によって特徴点だけでなく仮想特徴点を含めた線分も併用して対応を行っており、仮想特徴点は、2フレームの計測データのずれ量を求める際の対応点として求めているだけなので実際の形状と一致している必要がなく、オクルージョンなどにより欠損があっても、形状を補間せずに2フレームの計測データのずれ量を正確に求めることができる。そのため、角の多い複雑な環境だけでなく、廊下など両側に平らな壁面がある環境や、それらが複合した環境、さらには、欠損がある環境等、より汎用的な環境において地図を用いずに自己位置を求めることができる。
実施例1では、自己移動量演算部13において特徴点対応部12から出力された対応点集合を用いて式(1)〜(3)により自己移動量(Δx,Δy,Δθ)を計算していたが、本実施例ではジャイロ等の方位センサを具備した構成にし、姿勢回転量Δθは、方位センサから取得される姿勢θの値、すなわち前回フレーム計測時の値と今回フレーム計測時の値との差分として求め、今回フレームのデータをΔθだけ回転させたデータから特徴点、特徴線分、および仮想特徴点を求めて、前回フレームのデータとの対応付けを行う。
その後自己移動量演算部13にて対応点集合Pj(Xj,Yj)(前回値)とP’j(X’j,Y’j)(今回値)から各点の並進移動量(ΔXj,ΔYj)=(Xj−X’j,Yj−Y’j)を求め、次式のように平均を取ることにより自己の並進移動量Δx,Δyを求め、Δθと合わせて自己移動量とする。
その後自己移動量演算部13にて対応点集合Pj(Xj,Yj)(前回値)とP’j(X’j,Y’j)(今回値)から各点の並進移動量(ΔXj,ΔYj)=(Xj−X’j,Yj−Y’j)を求め、次式のように平均を取ることにより自己の並進移動量Δx,Δyを求め、Δθと合わせて自己移動量とする。
ただし、式(10)(11)において、[・]は、jを1からNまで変化させた場合の総和を表す。ここでNは対応付けられた特徴点の組の数である。
また、平均を取って自己の並進移動量を求める代わりに、各点の並進移動量(ΔXj,ΔYj)を精度、処理速度に応じて単位を変えて整数化し、整数化されたΔXj,ΔYjに関し、投票で最頻値を取ることにより自己の並進移動量を求めてもよい。
また、平均を取って自己の並進移動量を求める代わりに、各点の並進移動量(ΔXj,ΔYj)を精度、処理速度に応じて単位を変えて整数化し、整数化されたΔXj,ΔYjに関し、投票で最頻値を取ることにより自己の並進移動量を求めてもよい。
1 移動ロボット
2 自己位置同定装置
3 移動ロボット制御装置
4 モータ
5 エンコーダ
6 駆動機構
7 環境認識センサ
11 特徴点抽出部
12 特徴点対応部
13 自己移動量演算部
14 位置変換部
15 位置記憶部
16 デッドレコニング演算部
17 特徴線分抽出部
18 特徴線分対応部
19 仮想特徴点抽出部
2 自己位置同定装置
3 移動ロボット制御装置
4 モータ
5 エンコーダ
6 駆動機構
7 環境認識センサ
11 特徴点抽出部
12 特徴点対応部
13 自己移動量演算部
14 位置変換部
15 位置記憶部
16 デッドレコニング演算部
17 特徴線分抽出部
18 特徴線分対応部
19 仮想特徴点抽出部
Claims (9)
- 環境認識センサよって周期的に得られる計測データを元に環境情報の特徴点を抽出する特徴点抽出部と、
1周期分の前記計測データを1フレームとして、連続する2フレーム間の特徴点集合を対応付ける特徴点対応部と、
対応点集合から自己移動量を計算する自己移動量演算部と、
前記自己移動量を座標変換して自己位置を求める位置変換部と、
前記自己位置を記憶する位置記憶部と、
内界センサからの情報を元にデッドレコニング値を求めるデッドレコニング演算部とを備えた自己位置同定装置において、
前記環境認識センサからの計測データを元に環境情報の特徴線分を抽出する特徴線分抽出部と、
抽出された前記特徴線分から仮想特徴点を求める仮想特徴点抽出部と、
前記連続する2フレーム間の特徴線分集合を対応付ける特徴線分対応部と、
を備えたことを特徴とする自己位置同定装置。 - 前記特徴線分抽出部は、前記環境認識センサからの計測データを複数の測定点群に分割し、各測定点群内において、測定点の最小二乗近似直線と各測定点との距離が所定の閾値以内となるよう前記測定点群をさらに分割して線分を抽出することを特徴とする請求項1記載の自己位置同定装置。
- 前記特徴線分対応部は、前記連続する2フレーム間の特徴線分集合の対応付けにおいて
2つの線分の傾きの一致度と線分の端点の絶対位置とを基に端点と線分の重なり具合を評価し、
線分に重なった端点ともう一方の線分の両端点の絶対位置から、対応点の相対位置を求めることを特徴とする請求項1記載の自己位置同定装置。 - 前記端点と線分の重なり具合の評価は、前記2つの線分の長さを比較して短線分と長線分に選別し、短線分の端点と長線分との距離が所定の閾値以内であるか否かによって行うことを特徴とする請求項3記載の自己位置同定装置。
- 前記仮想特徴点抽出部は、前記特徴線分抽出部にて抽出された複数の特徴線分を延長した直線の交点を求め。前記交点を仮想特徴点として抽出することを特徴とする請求項1記載の自己位置同定装置。
- 前記特徴点の数と前記仮想特徴点の数との合計が予め定められた定数より大きい場合には、前記特徴線分対応部における特徴線分の対応付けを行わないことを特徴とする請求項1記載の自己位置同定装置。
- 前記内界センサとして方位センサを備え、前記自己移動量において、姿勢回転量のみを前記方位センサの情報から求め、今回フレームのデータを前記姿勢回転量だけ回転させたデータから特徴点、特徴線分、および仮想特徴点を求めて前回フレームのデータとの対応付けを行い、
前記自己移動量演算部にて、前記対応点集合から各点の並進移動量を求め、平均を取ることにより自己の並進移動量を求め前記姿勢回転量と合わせて自己移動量とすることを特徴とする請求項1乃至6のいずれか1項記載の自己位置同定装置。 - 前記内界センサとして方位センサを備え、前記自己移動量において、姿勢回転量のみを前記方位センサの情報から求め、今回フレームのデータを前記姿勢回転量だけ回転させたデータから特徴点、特徴線分、および仮想特徴点を求めて前回フレームのデータとの対応付けを行い、
前記自己移動量演算部にて、前記対応点集合から各点の並進移動量を求め、投票によって最頻値を取ることにより自己の並進移動量を求め前記姿勢回転量と合わせて自己移動量とすることを特徴とする請求項1乃至6のいずれか1項記載の自己位置同定装置。 - 請求項1乃至8に記載された自己位置同定装置を備えたことを特徴とする移動ロボット。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008285752A JP2010112836A (ja) | 2008-11-06 | 2008-11-06 | 自己位置同定装置および該自己位置同定装置を備えた移動ロボット |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008285752A JP2010112836A (ja) | 2008-11-06 | 2008-11-06 | 自己位置同定装置および該自己位置同定装置を備えた移動ロボット |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010112836A true JP2010112836A (ja) | 2010-05-20 |
Family
ID=42301498
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008285752A Pending JP2010112836A (ja) | 2008-11-06 | 2008-11-06 | 自己位置同定装置および該自己位置同定装置を備えた移動ロボット |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010112836A (ja) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2388658A2 (en) | 2010-05-17 | 2011-11-23 | Konica Minolta Business Technologies, Inc. | Fixing device and image forming apparatus |
JP2012096028A (ja) * | 2010-11-03 | 2012-05-24 | Lg Electronics Inc | ロボット掃除機及びその制御方法 |
JP2018105802A (ja) * | 2016-12-28 | 2018-07-05 | 日立Geニュークリア・エナジー株式会社 | 検査装置 |
CN110226186A (zh) * | 2016-12-26 | 2019-09-10 | 宝马股份公司 | 一种用于表示地图元素的方法和装置以及基于此定位车辆/机器人的方法和装置 |
JP2019537715A (ja) * | 2016-10-25 | 2019-12-26 | ツァイニャオ スマート ロジスティクス ホールディング リミティド | 障害物検出システム及び方法 |
CN110652256A (zh) * | 2018-06-28 | 2020-01-07 | 松下知识产权经营株式会社 | 移动机器人以及控制方法 |
JP2021169947A (ja) * | 2020-04-15 | 2021-10-28 | 株式会社日立製作所 | 物体認識装置及び物体認識方法 |
-
2008
- 2008-11-06 JP JP2008285752A patent/JP2010112836A/ja active Pending
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2388658A2 (en) | 2010-05-17 | 2011-11-23 | Konica Minolta Business Technologies, Inc. | Fixing device and image forming apparatus |
JP2012096028A (ja) * | 2010-11-03 | 2012-05-24 | Lg Electronics Inc | ロボット掃除機及びその制御方法 |
US8705842B2 (en) | 2010-11-03 | 2014-04-22 | Lg Electronics Inc. | Robot cleaner and controlling method of the same |
JP2019537715A (ja) * | 2016-10-25 | 2019-12-26 | ツァイニャオ スマート ロジスティクス ホールディング リミティド | 障害物検出システム及び方法 |
CN110226186A (zh) * | 2016-12-26 | 2019-09-10 | 宝马股份公司 | 一种用于表示地图元素的方法和装置以及基于此定位车辆/机器人的方法和装置 |
JP2018105802A (ja) * | 2016-12-28 | 2018-07-05 | 日立Geニュークリア・エナジー株式会社 | 検査装置 |
CN110652256A (zh) * | 2018-06-28 | 2020-01-07 | 松下知识产权经营株式会社 | 移动机器人以及控制方法 |
CN110652256B (zh) * | 2018-06-28 | 2022-07-29 | 松下知识产权经营株式会社 | 移动机器人以及控制方法 |
JP2021169947A (ja) * | 2020-04-15 | 2021-10-28 | 株式会社日立製作所 | 物体認識装置及び物体認識方法 |
JP7407648B2 (ja) | 2020-04-15 | 2024-01-04 | 株式会社日立製作所 | 物体認識装置及び物体認識方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107741234B (zh) | 一种基于视觉的离线地图构建及定位方法 | |
CN107239076B (zh) | 基于虚拟扫描与测距匹配的agv激光slam方法 | |
US11525923B2 (en) | Real-time three-dimensional map building method and device using three-dimensional lidar | |
JP4533659B2 (ja) | レーザー計測により地図画像を生成する装置及び方法 | |
JP2010112836A (ja) | 自己位置同定装置および該自己位置同定装置を備えた移動ロボット | |
Kuramachi et al. | G-ICP SLAM: An odometry-free 3D mapping system with robust 6DoF pose estimation | |
TWI772743B (zh) | 資訊處理裝置以及移動機器人 | |
JP2008076252A (ja) | 自己位置認識システム | |
JP2009157430A (ja) | 座標補正方法、座標補正プログラム、及び自律移動ロボット | |
JP2003015739A (ja) | 外環境地図、並びに自己位置同定装置および誘導制御装置 | |
Kim et al. | Autonomous mobile robot localization and mapping for unknown construction environments | |
JP2009128192A (ja) | 物体認識装置およびロボット装置 | |
Donoso-Aguirre et al. | Mobile robot localization using the Hausdorff distance | |
JP5477167B2 (ja) | 移動体 | |
JP2010238217A (ja) | 移動ロボットの自己位置同定方法及び移動ロボット | |
Lee et al. | Robust Robot Navigation using Polar Coordinates in Dynamic Environments | |
Kumar | Development of SLAM algorithm for a Pipe Inspection Serpentine Robot | |
Szaj et al. | Vehicle localization using laser scanner | |
Tungadi et al. | Multiple laser polar scan matching with application to SLAM | |
Torres-Torriti et al. | Scan-to-map matching using the Hausdorff distance for robust mobile robot localization | |
Shwe et al. | Vision-Based Mobile Robot Self-localization and Mapping System for Indoor Environment | |
Jež | 3D mapping and localization using leveled map accelerated ICP | |
US12146747B2 (en) | Self-localization device | |
Zhuang et al. | 3D-laser-based visual odometry for autonomous mobile robot in outdoor environments | |
Settimi et al. | TSLAM: a tag-based object-centered monocular navigation system for augmented manual woodworking |