<aside>
</aside>
周辺に有意な特徴が少ない空間でVisual SLAMを用いた自律移動を実行する際に、壁面や設備に補助シートを貼付け設置することにより、自律移動の位置決め精度やロバスト性を向上させることができる。
本頁ではVisual SLAM用補助シートの内容と貼付け設置方法を概説する。
TriOrbのVisual SLAMでは画像特徴点マッチングに基づく疎なマッピング手法(feature based method)を採用している*1。
「画像特徴点」の算出アルゴリズムには様々なものが提案されており、TriOrbのVisual SLAMでは以下のように画像特徴点を算出している。
- 画像全体(もしくは何らかのマスクが施された領域)からFASTアルゴリズムによるコーナーを検出*2
- 検出されたコーナー周辺の輝度勾配から特徴ベクトルを算出
- コーナー位置情報+特徴ベクトル」を画像特徴点として取り扱う
FASTアルゴリズムによるコーナー”らしさ”は、画像内のエッジ部分の輝度勾配が大きいほど”他の特徴点と判別がつきやすい良いコーナー”となり、逆に輝度勾配が小さいほど”他の特徴点と混同しやすい悪いコーナー”となる。

つまり、Visual SLAMを用いてマッピング・自律移動を行う空間の壁等が単調な場合、良いコーナーを導出できず特徴点マッチング手法に基づく疎なマッピングが上手くいかない。例として通路左右壁を見た時に、 (図 1)良くない(マッピングが難しい)通路、(図 2)悪くない(条件によっては問題ない)通路の例、(図 3)良い(自律移動が容易な)通路を以下に示す。

図 1. 通路左右の壁が真っ白でVisual SLAMにとって難しい通路の例

図 2. 上記通路に比べてやや難易度が低い通路の例

図 3. Visual SLAMによるマッピング・自律移動が容易な通路の例
このように、Visual SLAMでは空間そのものの見た目を利用してマッピング・自律移動を行うため、得意な空間と苦手な空間があり、空間側は変更できない場合が殆どである。
そこで、マッピング・自律移動し難く空間側の変更も難し場合においても壁面に有意な特徴を貼り付けることにより、マッピング・自律移動し易い空間化するため、TriOrbではVisual SLAM用補助シートを提供している。
*1 … 画像特徴点を用いないその他Visual SLAM手法としては直接法(Direct method)が一般的である
*2 … OpenCVチュートリアル/FASTを使ったコーナー検出
Visual SLAM用補助シート印刷のための自動生成ツールをWebアプリとして提供している。
TriOrb_Marker_Generator : https://triorb-inc.github.io/TriOrb_Marker_Generator/
パラメーターのPolygon Numは、実際にマッピング・自律移動させながら環境に合わせて調整することを推奨する。
なお、同一の補助シートは2部以上印刷・設置してはいけない。
図 1. のような通路中央をTriOrb BASEで自律走行させる場合、以下のようにVisual SLAM用補助シートの設置を推奨する。
なお、通路前後方向カメラのみを用いた場合であっても自律走行可能であるため、動作確認を行いながら補助シート設置要否を判断する。
AMRが通路を走行する際の条件およびカメラの搭載条件が図 1b のような場合を仮定する。
図 1b. 通路幅 - AMR - カメラの位置関係定義
このとき、通路右側面の壁は真っ白で前記コーナーらしい特徴点が一切検出できない見た目であるとする。
(コーナー)特徴点検出が比較的安定的にしやすい視野角が120°程度までであるため、AMRに搭載された右カメラの水平視野角が120°以上のときは120°を基準に、カメラの水平視野角が120°未満のときはカメラ視野角を基準に設置位置を考える。
視野角を120°としたとき、ある瞬間に撮影することが出来る右壁面の距離L(図 1b では縦方向長さ)は $L = 2 * 500mm * tan(120°/2) = 1732mm$である。この距離以下の間隔で補助シートを右壁面に設置すれば、図 1のような見た目の通路であっても右カメラを活用しながらマッピング及び自律移動が可能である。
図 4. (図1b のような通路走行時に右カメラを有効活用する場合の)右壁面補助シート設置例
補助シートの見かけ上の大きさが非常に小さい場合は有効に機能しない。特徴点シートが占める視野角が15°程度以上の大きさで映るよう補助シートのサイズを決定する。図1bおよび図4の環境の場合の推奨最小シート幅・高さは $500mm * tan(15°) = 134mm$程度である。
また、補助シートに印刷される三角形の個数(Polygon Num)は、ある瞬間の画像内に映っている補助シートの合計が600程度となるように設定する。図4のように視野角120°内に3枚の補助シートが映るような設置方法の場合、補助シート1枚辺りの三角形の個数(Polygon Num)は $600個/3枚 = 200個$程度が良い。実環境では元々の空間に存在するコーナーの量に応じて前記の1/4程度まで減らしながら確認を行う。
$$ \color{#223B80}\textsf{© Copyright 2024 TriOrb Inc.} $$