Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
unsupervised-learning-of-depth-and-ego-motion-f...
Search
望月紅葉さんと幸せな家庭を築きたい
February 22, 2018
Research
0
400
unsupervised-learning-of-depth-and-ego-motion-from-monocular-video-using-3d-geometric-constraints
暫定版ですが
望月紅葉さんと幸せな家庭を築きたい
February 22, 2018
Tweet
Share
More Decks by 望月紅葉さんと幸せな家庭を築きたい
See All by 望月紅葉さんと幸せな家庭を築きたい
shadow-detection-with-conditional-generative-adversarial-networks
momijifullmoon
0
140
NIPS2017reading_3Dreconstruction
momijifullmoon
0
1.5k
ABEJA Innovation Meetup NIPS PointNet++
momijifullmoon
1
480
Other Decks in Research
See All in Research
ダイナミックプライシング とその実例
skmr2348
3
600
国際会議ACL2024参加報告
chemical_tree
1
440
非ガウス性と非線形性に基づく統計的因果探索
sshimizu2006
0
550
文書画像のデータ化における VLM活用 / Use of VLM in document image data conversion
sansan_randd
2
530
リモートワークにおけるパッシブ疲労
matsumoto_r
PRO
6
5k
大規模日本語VLM Asagi-VLMにおける合成データセットの構築とモデル実装
kuehara
3
480
A Segment Anything Model based weakly supervised learning method for crop mapping using Sentinel-2 time series images
satai
3
140
20241115都市交通決起集会 趣旨説明・熊本事例紹介
trafficbrain
0
1k
新規のC言語処理系を実装することによる 組込みシステム研究にもたらす価値 についての考察
zacky1972
1
320
Segment Any Change
satai
3
210
IM2024
mamoruk
0
230
Satellite Sunroof: High-res Digital Surface Models and Roof Segmentation for Global Solar Mapping
satai
3
140
Featured
See All Featured
Why Our Code Smells
bkeepers
PRO
336
57k
Navigating Team Friction
lara
183
15k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
133
33k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
Fireside Chat
paigeccino
34
3.2k
Designing for humans not robots
tammielis
250
25k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.3k
The World Runs on Bad Software
bkeepers
PRO
67
11k
Optimising Largest Contentful Paint
csswizardry
34
3.1k
Practical Orchestrator
shlominoach
186
10k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
Transcript
Unsupervised Learning of Depth and Ego-Motion from Monocular Video Using
3D Geometric Constraints 特に標記が無ければ、スライド内の図は https://arxiv.org/pdf/1802.05522v1.pdf から引用 1
概要 筆者 Reza Mahjourian*, Martin Wicke, Anelia Angelova
*University of Texas at Austin, Google Brain 簡単な内容 教師無し学習による単眼ビデオの ego-motion(位置姿勢)と深度の推定 3次元構造を考慮するようなloss関数を定義し学習を行う 学習時には単眼ビデオの時系列が必要であるが、 推論の際には、一枚の画像で良い 2
Outline ① 背景 ② 関連研究 ③ 手法 ④ 実験 ⑤
まとめと今後の研究 6
背景 1/3 三次元復元とego-motion推定の重要性 応用先 • ロボティクス • 自動運転
なぜ必要か • 3次元の位置情報と周辺の幾何的情報 ロボットのモーションプランニング、意思決定に必要 7
背景 2/3 三次元復元とego-motion推定の課題 教師付き学習が主流 • 深度とego-motionの真値は精度が命 • KITTIやCityscapesのデータセットで実験はできる
↔自分で真値を取るのは大変☹ – LIDERとカメラの同期が難しい – LIDERのスキャン範囲とカメラの画角と一致しない 教師無し学習で推定できたらいいよね 8
背景 3/3 目的 単眼ビデオカメラ(stereoではない)を用いた 教師無し学習による深度とego-motionの推定 Contributions
Imposing 3D constraints. • 3次元情報に関するloss関数を提案 Principled masking. • 異なるフレームで写っていない領域をマスクする Learning from an uncalibrated video stream. • 手持ちの市販スマホカメラで撮影したビデオを学習し、 KITTIデータセットでテスト 9
関連研究 1/2 古典的な深度とego-motion推定手法 stereoで特徴点matching Deep何某で深度とego-motion推定手法 単画像vs.
深度センサーで学習(FCN, U-Netで深度画像推定) stereo画像の片方を入力にして、もう一方を復元する学習結果 を元に深度画像を作成 stereo画像のペアから深度画像推定 10
関連研究 2/2 教師無しDeep何某で深度とego-motion推定手法 単眼ビデオを使ったSfMLearner @CVPR, 2017 11 https://people.eecs.berkeley.edu/~tinghuiz/pr
ojects/SfMLearner/images/teaser.png 学習概念図 • DepthCNN target viewの深度画像推定 • PoseCNN target viewとnearby viewの ego-motionを推定 これらの推定を2次元的な情報で行う 紹介する論文は、 3次元的な情報を使って、 深度とego-motionを推定します
手法: 全体像 1/4 12 入力:フレームtの画像X ,フレームt-1の画像X−1
手法: 全体像 2/4 13 幾何変換して異なるフレーム画像と2D loss計算
手法: 全体像 3/4 14 3D 点群のloss計算
手法: 全体像 4/4 15 出力:ego-motion, 深度画像
手法: 問題設定 1/2 定式化 入力: −1 , (フレームt、t-1のビデオフレーム) 出力:
−1 , (t-1、tのときの深度画像), (t-1からtへのカメラの動き(位置・姿勢)) がわかれば、フレームtの点群 が推定できる 深度は画像なので、 , の座標で表せられる ※Kはカメラの内部パラメーターの行列 16
手法: 問題設定 2/2 定式化 がわかると、 −1 = でフレームtの点群からt-1の点群が推定できる −1
はt-1のフレームに −1 で戻せる 式(1)はフレームtからフレームt-1への写像だと解釈できる と に基づいた、 −1 から への復元の問題になる(式 (2)) −1 と重複してるピクセルを(i , ) この復元の問題を、逆方向でも繰り返し行う (−1 と−1 に基づいた、 から −1 への復元) 17
手法: Principled masking 移動しながら撮影 フレームtとt-1で重複しない ピクセルが存在 の画像復元する際に
loss計算できない 計算しない領域を 明示的に学習 マスク−1 , を作る 18
手法: loss設計 1/9 Image Reconstruction Loss から復元した −1 −1
から復元した このlossはnoisiyなので正則化が必要 画像の環境の影響を受けてしまう。 19 最小化
手法: loss設計 2/9 3D Point Cloud Alignment Loss
Iterative Closest Point(ICP) と , −1 と −1 これらを直接比較するICP AとBの点群があった時に AとBが重なるような変形T‘ をAとBを最小化して求める (∙): 点同士の対応関係 出力として、点同士の残差距離も出せる = − ′−1 ∙ 20
手法: loss設計 3/9 3D Point Cloud Alignment Loss 21
ego-motion , 深度画像 推定のためにICP を用いる
手法: loss設計 4/9 3D Point Cloud Alignment Loss 22
Deep何某で完璧な , が推定できていたら、 −1 と −1 は完璧に重なる
手法: loss設計 5/9 3D Point Cloud Alignment Loss 23
, が推定できていないと、 −1 と −1 は違う位置に投影される
手法: loss設計 6/9 3D Point Cloud Alignment Loss 24
, が推定できていないと、 −1 と −1 は違う位置に投影される
手法: loss設計 7/9 3D Point Cloud Alignment Loss 25
を使って、′と を求め , を改善していく
手法: loss設計 8/9 3D Point Cloud Alignment Loss
lossの設計は式(5)のようになる 本研究の3D lossとする。 26 ∙ 1 はL1-norm
手法: loss設計 9/9 Additional Image-Based Losses Structured similarity
(SSIM) • 画像復元結果の質に関するloss Depth smoothness loss • 深度画像推定の際の正則化 27
手法: 学習設定 1/2 最適化 lossの混ぜ方 α = 0.85,
= 0.1, = 0.05, = 0.15 超パラ • オプティマイザ:Adam(β1 = 0.9, β2 = 0.999) • 学習率:0.0002 28
手法: 学習設定 2/2 層設計 SfMLearnerの層設計を用いる • 深度画像推定:各ピクセルの深度を推定 •
ego-motion推定:2フレーム間の回転・移動 29 SfMLearnerの層設計 https://arxiv.org/pdf/1704.07813.pdf 深度画像推定 ego-motion推定
実験: データセット データセット KITTI Dataset • 車載動画のデータセット •
訓練に単眼ビデオ画像を使用(40 kフレーム) • 検証に3D点群、車両の姿勢データを用いる(4kフレーム) Uncalibrated Bike Video Dataset(Bike Videos) • 自転車に乗っている間の手持ち動画(720x1280, 30fps) • カメラの内部パラメータはググった – レンズの歪みの情報は無かった 30
実験: KITTI Dataset 1/6 深度画像推定の結果 KITTI Dataset Test画像に対して
31
実験: KITTI Dataset 2/6 深度画像推定の定量評価 KITTI Dataset(K)のみを学習した結果 •
提案手法により真値とのmean absolute relativeが 0.208 m(Zhou et.al.)から 0.163 mに 32
実験: KITTI Dataset 3/6 深度画像推定の定量評価 CityScapes(CS)で学習→KITTI Dataset(K)を学習した結果 •
提案手法により真値とのmean absolute relativeが 0.198 m(Zhou et.al.)から 0.159 mに 33
実験: KITTI Dataset 4/6 深度画像推定の定性評価 提案手法の方がZhou et.al.よりも見た目が良いことが確認 34
実験: KITTI Dataset 4/6 3D lossの評価 3Dlossを取り入れることで画像内のテクスチャが無い個所の 影響が軽減される
35 3D loss なし 3D loss あり 入力
実験: KITTI Dataset 5/6 3D lossの評価 3Dlossを取り入れることで正則化がかかり、過学習抑制 36
実験: KITTI Dataset 6/6 ego-motionの評価 visual-SLAMの手法(ORB-SLAM)と比較 KITTI Datasetのオドメトリに対して同程度の誤差
37
実験: Bike Videos学習 1/2 Bike Videos学習→KITTI Dataset深度画像推定結果 38
実験: Bike Videos学習 2/2 Bike Videos学習→KITTI Dataset深度画像定量評価 Bike
Videos vs. KITTI Dataset • 画角:~51° vs. ~81° • レンズ: レンズ補正無し vs. 補正済み • 被写体:US道路 vs. 欧州道路 • 撮影方法:手持ち vs. 車載 39 KITTI自身で学習した結果に近い結果に
まとめと今後の研究 まとめ 単眼ビデオ画像から深度、ego-motion推定を行う 教師無し学習手法を提案 3D構造を考慮するlossを取り入れることで、高精度になった 手持ちビデオデータセットで学習したモデルを車載ビデオの
データセットに適用しても推定可能だった 今後の研究 動く物体が画像内に入った時の学習手法 40