Research

本研究室では、ロボットのSLAM問題を主な研究対象としています。

SLAM問題とは?

ロボットが目的地まで安全かつ正確に走行するためには、周囲の地図を生成するとともに、この地図上で自己位置を推定する必要があります。このように、地図生成と自己位置を同時に行う問題を、SLAM(Simultaneous Localization And Mapping)と呼びます。SLAM問題は、ロボットの分野の最も基礎的な問題の一つです。主な応用としては、たとえば、自律走行車や環境再構築などがあります。具体的なサブテーマとしては、たとえば、物体識別(segmentation)、分類(classification)、動物体追跡(visual tracking)、パタン認識と機械学習(pattern recognition & machine learning)、フィルタリング(filtering)、全体最適化(optimization)、記憶と検索(database & information retrieval)、圧縮と復元(data compression & recovery)などが挙げられます。

SLAMの研究をはじめるには?

卒研などで、これからSLAMの研究をはじめる場合、手短な方法として、実際に、ソフトウェアを動かしてみる方法が考えられます。世界の様々な研究機関で、SLAM問題を解くためのアルゴリズムが開発されており、いくつかのアルゴリズムは、公開ソフトウェアとして提供されています(http://openslam.org/)。これらのソフトウェアを自分のPCにダウンロードして使ってみると、SLAMシステムが、どのように動作するのかについて、直感的に理解しやすいのではないかと思います。ソフトウェアを動かすために最低限必要な知識として、SLAM問題の全体像、目的、入出力などがあります。これらの知識を得るための解説書としては、2005年に出版されたprobabilistic robotics(http://www.probabilistic-robotics.org/)や、その和訳版があります。また、ソフトウェアを動かすために必要な入力データは、多くの場合、ロボットの移動と知覚の時系列データです。これらのデータとしては、radish(http://radish.sourceforge.net/)などのサイトで公開されているデータを利用できます。あるいは、カメラなどのセンサを使えば、自分でセンサデータを取得することも可能です。注意すべき点として、入出力のデータ形式は、ソフトウェアごとに異なっており、各々のソフトウェアに合ったデータ形式へ事前に変換しておく必要があります。なお、ソフトウェアが動作している様子は、動画サイト(http://www.youtube.com/)などで公開されていますので、事前にみておくと参考になります。

どんな研究がなされているのか?

SLAMの最新の研究成果は、下記のような、ロボット関連の国際会議で発表されます。
IEEE International Conference on Robotics and Automation (ICRA)
IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)
また、環境再構築(Structure from Motion)や場所認識(place recognition)の観点から、コンピュータビジョン関連の国際会議(ICCV,CVPR,ECCV)でも発表されます。その他、SLAM問題は、地図学習、地図データベースの観点から、機械学習の分野(NIPS,ICML)や、データベース分野(VLDB, SIGMOD)、人工知能の分野(AAAI)との関連があります。

アプローチ:マップマッチング

本研究室では、1995年ごろから、マップマッチングと呼ぶ計算手法の研究に取り組んでいます。マップマッチングの基本的なアイデアは、2枚の地図を所与とし、一方を他方へ最も大きく重ねるような変換(回転・並進など)を推定することにあります。基本的な解法として、RANSACなどの照合手法や、ランダム写像などの検索手法が挙げられます。マップマッチング技術は、以下のような文脈において重要になります。

動物体検出 マップマッチングを用いて、異なる時刻の地図を比較することで、静止物体(壁、標識)と動物体(人、イス)とを識別します。現在、多くのSLAM手法は、静止物体のみを地図に記録するという立場をとります。
Hongbin Zha, Kanji Tanaka, Tsutomu Hasegawa, Detecting Changes in a Dynamic Environment for Updating its Maps by Using a Mobile Robot, Proc. IEEE/RSJ Int. Conf. Intelligent Robots and Systems (IROS), 1997.

地図結合 マップマッチングを用いて、小規模な地図群を位置合せ・結合することで、大規模な地図を生成します。
Kanji Tanaka, Eiji Kondo, Incremental RANSAC for online relocation in large dynamic environments, Proc. Int. Conf. Robotics and Automation (ICRA), 2006

地図検索 マップマッチングを用いて、大規模な環境地図を検索し、ロボット周囲の局所地図と合致する箇所を見つけだすことで、ロボットの自己位置を推定します。
Kanji Tanaka, Tsutomu Hasegawa, Hongbin Zha, Eiji Kondo, Nobuhiro Okada, Mobile Robot Localization with an Incomplete Map in Non-Stationary Environments, Proc. Int. Conf. Robotics and Automation (ICRA), 2003

繰返しパタン検出 マップマッチングを用いて、地図間の重なり領域を求めることで、繰返しパタン(ドア、壁)を検出します。たとえば、地図圧縮の観点からは、繰返しパタンをすべて記憶することは冗長であり、その冗長性を圧縮の手段として利用することができます。
Tomomi Nagasaka, Kanji Tanaka, Dictionary-based Map Compression for Sparse Feature Maps, Proc. Int. Conf. Robotics and Automation (ICRA), 2011