そのため本手法では、対数化された単位クォータニオンで回転を表現するようにする。
対数化された単位クォータニオンは、3次元パラメーターなのでパラメーター数も増加せず、またクォータニオンを正則化することなしに L1 loss や L2 loss をとることが出来るので、正規化された単位クォータニオンのときのような回帰性能低下が発生しないメリットがある。
対数化クォータニオンは、以下のような式で与えられる。
MapNet のアーキテクチャ
MapNet では、PoseNet のように単一の入力画像に対する{入力画像・カメラ姿勢}のペアデータを学習&推論するだけでなく、入力画像に対する{入力画像・絶対的なカメラ姿勢 p }と、2つの入力画像間の相対的なカメラ姿勢 v の両方を学習&推論する。
MapNet は、以下の損失関数で学習される。
上図は、MapNet が学習した最後の活性化層の特徴ベクトルの分布を、MDS [2D multi-dimensional scaling] を使用して可視化した図である。
PoseNet では最終層からの特徴ベクトルがカメラ姿勢と相関がないように学習が行われているが、MapNet では最終層からの特徴ベクトルがカメラ姿勢と相関するようにに学習が行われている。
MapNet+
MapNet +では、正解カメラ姿勢データがアノテーションされていない追加データセット T に対しても、自己教師あり学習を用いて学習を行い、MapNetの重みを更新する。
具体的には、以下のような処理を行う。
1. 市販の VO アルゴリズムを用いると、ビデオ中の複数の画像データから画像ペア間の相対的なカメラ姿勢の正解データを生成することが出来るので、この VO アルゴリズムを用いてアノテーションされたデータセット D と同じシーンで構成される追加データセット T のカメラ姿勢をアノテーションする。また、他のセンサ情報(GPSなど)も活用し、カメラ姿勢をアノテーションする。
※ VO アルゴリズム : 論文「DSO: Direct sparse odometry」、「Semi-dense visual odometry for a monocular camera」
1. そして、MapNet を以下の式のように、追加データセット T に対する損失関数項 L_T が追加された損失関数で再学習する。
学習時の各ミニバッチは、アノテーション付きデータセット D とアノテーションなしデータセット T からそれぞれ半分ずつサンプリングしながら学習が行われる。
MapNet+PGO: Optimizing During Inference
推論時は、PGO [pose graph optimization] の手法を用いて、MapNet+ からの入力画像に対する絶対的な推定カメラ姿勢のT個のフレームでの系列 と VO アルゴリズムからの入力画像間の相対的なカメラ姿勢のT個のフレームでの系列 を融合させ、最終的なカメラ姿勢を出力する。(MapNet+PGO)
この融合された最終的なカメラ姿勢は、滑らかで大域的に安定したカメラ姿勢になっている。
※ PGO : 論文「Pose graph optimization in the complex domain: Duality, optimal solutions, and verification」など
具体的には、これらの処理は、T 個のフレームでのカメラ姿勢の最適値 に対して、以下の式で定義された損失関数を最小化するように解くことで得られる?
→ 学習ではなく、損失関数を最小化するような解を求めている?
0. 論文情報・リンク
1. どんなもの?
2. 先行研究と比べてどこがすごいの?
3. 技術や手法の"キモ"はどこにある?
アーキテクチャの全体像
入力画像からカメラパラメーターを回帰するネットワーク 本手法でのカメラパラメーター回帰ネットワークは、既存の image-based Camera Localization モデルである PoseNet のネットワーク構造をベースに以下のような変更を加えている。
ここで、カメラの向きに関して、PoseNet では正規化された単位クォータニオンで表現している。 しかしながら、クォータニオンは4つの次元で構成されるので、クォータニオンで回転を表現するとパラメーター数が増加し、NN で回帰する際の性能が悪くなる傾向がある。またクォータニオンを正則化して L2 loss をとるので、この面でも回帰性能が悪くなる傾向がある。
一方で、オイラー角(軸回りの回転)で回転表現するとパラメーターが増えることがないが、0 ~ 2πの範囲で周期的な値になるので、NN がうまく回帰できなくなる
そのため本手法では、対数化された単位クォータニオンで回転を表現するようにする。 対数化された単位クォータニオンは、3次元パラメーターなのでパラメーター数も増加せず、またクォータニオンを正則化することなしに L1 loss や L2 loss をとることが出来るので、正規化された単位クォータニオンのときのような回帰性能低下が発生しないメリットがある。
対数化クォータニオンは、以下のような式で与えられる。
MapNet のアーキテクチャ
MapNet+
MapNet+PGO: Optimizing During Inference
4. どうやって有効だと検証した?
既存のモデルとのカメラ姿勢回帰性能の比較検証
回転表現として対数化された単位クォータニオンを採用することによる回帰性能の定量検証
5. 議論はあるか?
6. 次に読むべき論文はあるか?
7. 参考文献