3D Campus
移動ロボットに載る目だけでキャンパス全体を測る
上に表示しているのは,埼玉大学のキャンパスです.写真でも図面でもなく, 50万個の点が集まって建物や木の形になっています. ドラッグすると回せるので,好きな角度から眺めてみてください. オレンジ色の線は,このデータを取るためにロボットが実際に通った経路です.
このデータは,レーザーで距離を測るセンサー(LiDAR)を積んだロボットを 人が押して歩き,キャンパスを一周して作りました. 今回の目的は測ることなので,自律走行はさせていません. LiDARはくるくると回りながら周囲にレーザーを飛ばし, 跳ね返ってくるまでの時間から「その方向の何メートル先に何かがある」を測ります. これを1周ぶん集めたものが1回のスキャンで, 点が数万個ぶんの,ロボットの周りだけの立体的なスケッチになります.
使っているのは垂直16チャンネルのLiDARです. 自動運転の研究でよく使われる64チャンネル級は一台で1,000万円ほどしますが, 16チャンネルなら価格の桁がひとつ下がり, 移動ロボットが積める大きさと重さにも収まります. 自己位置推定に必要な性能は備えているので, 実際に街なかで働くロボットが載せるとしたら現実的にはこの帯です. 高性能な機材で精密な地図を作ることではなく, ロボットが実際に積める目だけで,どこまでの地図が立ち上がるか. それがこの取り組みの中身です.
ただし1回のスキャンで分かるのは,そのときロボットがいた場所から見える範囲だけです. キャンパス全体の地図にするには, ロボットが少し進むたびに得られる新しいスキャンを, それまでに作った地図の正しい位置に継ぎ足していかなければなりません. このとき「今のスキャンが地図のどこに当てはまるか」を, 点の並び方だけを手がかりに探し当てる必要があります. これが自己位置推定と地図構築を同時に行う SLAM と呼ばれる処理で, 当研究室が長く取り組んできたテーマです.
継ぎ足しの向きや位置はごくわずかずつずれていきます. 1回のずれは数センチでも,6キロメートル進むあいだに積み重なると, 同じ建物が二重に描かれるような形で表面化します. とくに今回使ったJT16は上向き0°〜40°しか見ないセンサーで, 搭載した高さからは真下の路面が観測できません. 平らな面が点群にほとんど写らないぶん,高さ方向のずれが起こりやすくなります. そこで,同じ場所を2度通ったときに生じる推定のとびを手がかりにずれを見つけ, そこから過去にさかのぼって,なだらかに地図を作り直す方法を考えました. 上のデータは,その補正を効かせて作ったものです.
手法の詳細は学会発表のスライドにまとめてあります(Works から開けます).