SlideShare a Scribd company logo
第5回3D勉強会@関東
Depth from Videos in the Wild:
Unsupervised Monocular Depth Learning
from Unknown Cameras
宮澤 一之
AI本部 AIシステム部
株式会社ディー・エヌ・エー
自己紹介
2
• 2007〜2010年 東北大学博士課程
生体認証やステレオビジョンの研究に従事
日本学術振興会特別研究員(DC1)
• 2010〜2019年 電機メーカ研究所
映像符号化、標準化活動
車載・監視カメラ物体認識、外観検査
• 2019年〜 DeNA
@kzykmyzw
宮澤 一之
株式会社ディー・エヌ・エー
AI本部 AIシステム部 AI研究開発エンジニア
3
● 論文情報
○ 2019年4月にarXiv公開され、ICCV2019にアクセプト
○ ソースコードも公開されている
● 論文概要
○ 単眼カメラ映像から教師なしでデプス、エゴモーション、物体の動き、
カメラパラメータを学習
○ オクルージョンとなる画素を学習時に推定してロスの計算から除外
○ 新たな正則化手法(Randomized Layer Normalization)を導入
4
arXiv
ICCV Camera-ready
GitHub
Unsupervised Learning of Monocular Depth Estimation
Unsupervised CNN:
Geometry to the Rescue
2016 2017 2018 2019
MonoDepth
SfMLearner
SfM-Net
vid2depth
Deep-VO-Feat
GeoNet
LEGO
MonoDepth2
Every Pixel Counts
Depth from
Videos in the Wild
Depth
Depth + Egomotion
Depth + Egomotion + Object Motion
Depth + Egomotion + Object Motion + Camera Intrinsic
struct2depth
(extended)
struct2depth
SfMLearner++
Every Pixel Counts++
SceneNet
Unsupervised Learning of Monocular Depth Estimation
Unsupervised CNN:
Geometry to the Rescue
2016 2017 2018 2019
MonoDepth
SfMLearner
SfM-Net
vid2depth
Deep-VO-Feat
GeoNet
LEGO
MonoDepth2
Every Pixel Counts
Depth from
Videos in the Wild
Depth
Depth + Egomotion
Depth + Egomotion + Object Motion
Depth + Egomotion + Object Motion + Camera Intrinsic
struct2depth
(extended)
struct2depth
SfMLearner++
Every Pixel Counts++
SceneNet
SfMLearner
7
Tinghui Zhou, et al., “Unsupervised Learning of Depth and Ego-Motion from Video,” CVPR2017
● 単眼映像を使った教師なし学習によるデプスとエゴモーション推定の先駆け
● 別視点画像を生成する処理を微分可能にし、学習プロセスに組み込み
SfMLearner
8
Tinghui Zhou, et al., “Unsupervised Learning of Depth and Ego-Motion from Video,” CVPR2017
Depth CNN:ターゲット視点画像からデプスマップを生成
SfMLearner
9
Tinghui Zhou, et al., “Unsupervised Learning of Depth and Ego-Motion from Video,” CVPR2017
Pose CNN:ソース視点と隣接視点間の相対的なカメラ運動を推定
View Synthesis as Supervision
10
I1
IN
It
Is
View Synthesis Objective学習用映像
画素
ターゲット視点画像
ソース視点画像をターゲット視点にワープした画像
Tinghui Zhou, et al., “Unsupervised Learning of Depth and Ego-Motion from Video,” CVPR2017
View Synthesis as Supervision
11
I1
IN
It
Is
View Synthesis Objective学習用映像
画素
ターゲット視点画像
ソース視点画像をターゲット視点にワープした画像
● ソース視点画像をターゲット視点画像にワープするためには、ソース視
点とターゲット視点との間で画素の対応関係を知る必要がある
● CNNで推定したターゲット視点におけるデプスと視点間のカメラ運動を
利用して対応関係を求める
Tinghui Zhou, et al., “Unsupervised Learning of Depth and Ego-Motion from Video,” CVPR2017
View Synthesis as Supervision
12
ターゲット視点画像上の画素 ptとソース視点画像上の画素 ps の対応関係
ターゲット視点のデプスマップ
ターゲット視点からソース視点へのカメラ運動
カメラ内部行列(既知)
Tinghui Zhou, et al., “Unsupervised Learning of Depth and Ego-Motion from Video,” CVPR2017
View Synthesis as Supervision
13
ターゲット視点画像上の画素 ptとソース視点画像上の画素 ps の対応関係
Differentiable Bilinear Sampling Mechanism*
*Max Jaderberg, et al., “Spatial Transformer Networks,” NIPS2015
Tinghui Zhou, et al., “Unsupervised Learning of Depth and Ego-Motion from Video,” CVPR2017
● 他視点画像の生成においては、以下の前提条件がある
○ シーンはスタティックであり、カメラ以外に運動する物体を含まない
○ ターゲット視点とソース視点の間にはオクルージョンがない
● 実際には上記前提が成り立たない画素が存在し、学習に悪影響となるた
め、そうした画素のロスへの寄与率を下げるExplainability Maskを導入
● Explainability Maskも教師なし学習で推定するが、オールゼロという自
明解に収束することを避けるため非ゼロ化を促進する正則化を導入
Explainability Mask
14
Target
View
Explainability Mask Target
View
Explainability Mask
Network Architecture
15
Single-view Depth Network Pose/Explainability Network
Tinghui Zhou, et al., “Unsupervised Learning of Depth and Ego-Motion from Video,” CVPR2017
Unsupervised Learning of Monocular Depth Estimation
Unsupervised CNN:
Geometry to the Rescue
2016 2017 2018 2019
MonoDepth
SfMLearner
SfM-Net
vid2depth
Deep-VO-Feat
GeoNet
LEGO
MonoDepth2
Every Pixel Counts
Depth from
Videos in the Wild
Depth
Depth + Egomotion
Depth + Egomotion + Object Motion
Depth + Egomotion + Object Motion + Camera Intrinsic
struct2depth
(extended)
struct2depth
SfMLearner++
Every Pixel Counts++
SceneNet
struct2depth
17Vincent Casser, et al., “Depth Prediction Without the Sensors:
Leveraging Structure for Unsupervised Learning from Monocular Videos,” AAAI2019
● デプスとエゴモーションに加え、シーン中の物体の動きも推定
● セグメンテーションマスクを入力し、物体ごとに3次元モーションを推定
● 推論時にも学習を行うことで精度を上げるTest Time Refinmentを提案
Motion Model
18
I1
I2
I3
I1→2
I2
I3→2
V V V
S1→2
S2
S3→2
映像 物体マスク
映像
(エゴモーション補正済)
背景マスク
(エゴモーション補正済)
Ego-motion
Network
Object Motion
Network
Ego-motion
i-th Object Motion
物体
Vincent Casser, et al., “Depth Prediction Without the Sensors:
Leveraging Structure for Unsupervised Learning from Monocular Videos,” AAAI2019
Unsupervised Learning of Monocular Depth Estimation
Unsupervised CNN:
Geometry to the Rescue
2016 2017 2018 2019
MonoDepth
SfMLearner
SfM-Net
vid2depth
Deep-VO-Feat
GeoNet
LEGO
MonoDepth2
Every Pixel Counts
Depth from
Videos in the Wild
Depth
Depth + Egomotion
Depth + Egomotion + Object Motion
Depth + Egomotion + Object Motion + Camera Intrinsic
struct2depth
(extended)
struct2depth
SfMLearner++
Every Pixel Counts++
SceneNet
Contributions
1. レンズ歪みも含めてカメラの内部パラメータを教師なしで学習
2. 推定したデプスに基づき、オクルージョンを幾何的に考慮
3. シーン中の移動物体の扱いを簡易化(セグメンテーションやト
ラッキングが不要)
20
Network Architecture
21
Motion-prediction Network
● デプス推定とモーション推定を異なるネットワークで実施
● デプス推定:UNet with ResNet18
● モーション推定:UNet inspired by FlowNet*
*Alexey Dosovitskiy, et al., “FlowNet: Learning Optical Flow with Convolutional Networks,” ICCV2015
Learning the Intrinsics
22
視点間の画素の対応関係
● 視点間の画素の対応関係は KRK-1 および Kt に依存するため、学習により
これらが正しい値に近づいていく
● しかし、正しくない内部行列 Ke に対して、やはり正しくない並進ベクト
ルを te = Ke
-1Kt と推定すると、Kete = Kt となり学習時のロスに影響しない
● つまり、エゴモーションが並進のみとなる場合カメラの内部パラメータ
は学習できない
K: カメラ内部行列
p, p’: 視点間の対応点
z, z’: pとp’でのデプス
R: 回転行列
t: 並進ベクトル
Learning the Intrinsics
23
K: カメラ内部行列
p, p’: 視点間の対応点
z, z’: pとp’でのデプス
R: 回転行列
t: 並進ベクトル
視点間の画素の対応関係
● 本論文では、KeReKe
-1 = KRK-1 となるような誤った推定 Ke, Re は存在しな
いことを証明
● エゴモーションに回転が含まれれば内部パラメータの学習は可能
● 回転角度と焦点距離の推定誤差との関係も導出(回転角度が大きいほど
学習効果が高い)
δfx, δfy: 焦点距離の誤差
rx, ry: 各軸の回転角度
w, h: 画像サイズ
s: max(w, h)
Learning Object Motion
● 前処理で自動車や人などを検出し、バウンディングボックスレベルでマスク
● マスク領域で並進ベクトル t の正則化を緩和(固定値からの逸脱を許容)
● バウンディングボックスレベルのマスクしか与えなくても、学習により移動
物体の境界に沿った動きの推定が可能であることを確認 24
画像+マスク
Motion field
Occlusion-aware Consistency
25Target View Source View
Occlusion-aware Consistency
26Target View Source View
推定したモーションに
したがってデプスをワープ
Occlusion-aware Consistency
27Target View Source View
オクルージョン発生
(デプスが複数の値をとる)
Occlusion-aware Consistency
28Target View Source View
ターゲット視点で推定したデプス
よりも前側にくる点だけをロスの
計算に含める(ZR’ ZL)
Occlusion-aware Consistency
29Target View Source View
ターゲット視点で推定したデプス
よりも前側にくる点だけをロスの
計算に含める(ZR’ ZL)
ソース視点とターゲット視点を入
れ替えて同様にオクルージョンを
考慮する(ZL’ ZR)
Losses
● 推定したデプスマップ、内部パラメータ、回転・並進に基づいてソース
視点画像をターゲット視点画像にワープし、以下のロスを適用
○ Structured Similarity(SSIM)ロス
○ カラーチャンネルごとのL1ロス
● モーションの推定についてはForwardとBackwardが一致するように
Cycle Consistencyを適用
● 推定結果が空間方向、時間方向に滑らかとなるような拘束を導入
30
Randomized Layer Normalization
● バッチ正規化について、以下の現象が発生
○ 推論時に学習モードでバッチ正規化を適用した方が精度が高い
○ 学習時にバッチサイズを大きくするにつれて精度が低下
● バッチ正規化からレイヤ正規化に変更し、さらに平均と分散にガウシアン
ノイズを乗ずることで大きな改善がみられた
● ノイズが正則化として働いたためと考えられる
31
Yuxin Wu, et al., “Group Normalization,” ECCV2018BatchChannel
Spatial
Experiments
● Datasets
○ KITTI
○ Cityscapes
○ EuRoC Micro Aerial Vehicle Dataset
○ YouTube8M videos
● Evaluation
○ Depth prediction
○ Recovery of camera intrinsics
○ Odometry estimation
32
Depth(KITTI・Cityscapes)
33
KITTI Cityscapes
● KITTI、Cityscapes共にいずれの評価指標でも従来手法を上回る
● 既知の内部パラメータよりも推定したパラメータを使った方が高精度
Depth(YouTube8M)
34
Depth(EuRoC)
35
Ablation Study
● 物体領域のマスクをバウンディングボックスからセグメンテーションマ
スクに置き換えてもデプスの推定精度に大きな変化はない
● シーンが複雑なCityscapesでは移動物体の考慮が大きな効果を発揮
36
Effect of Occlusion Aware Losses
37
Effect of Occlusion Aware Losses
38
Camera Intrinsics(EuRoC)
● EuRoCデータセットの11個のサブセット(カメラは全て同じ)でそれぞ
れ内部パラメータが収束するまで学習し、パラメータの統計量を評価
● 真値からのズレは数ピクセル程度に収まっている
39
Odometry(KITTI)
● ATE、trel のいずれの評価尺度でも従来手法を上回る
● 内部パラメータが既知の場合、推定結果と照らし合わせることで推論時
に補正を行うことが可能であり、これにより精度が大幅に改善
(Learned & corrected が補正後の結果) 40
ATE: Absolute Trajectory Error
trel: Average relative translational drift
まとめ
● 教師なし学習でデプスやモーションに加えてカメラの内部パラメータま
で推定したのは世界初
● ジオメトリを考慮したシンプルな正攻法でオクルージョンをケア
● 移動物体の扱いが簡単(バウンディングボックスを用意するだけ)
● 多様なデータセットと実験のいずれにおいてもSoTA性能を達成
● ソースコードが公開されている
● Randomized Layer Normalizationはちょっと謎な工夫
● 論文の記述にあいまいな箇所があり、arXiv版 → ICCVカメラレディ版で
改善されているもののカメラレディ版ではSupplementary Materialに詳
細な記述が回されている(そしてSMはまだ未公開)
● ICCVでの発表に期待
● 公開コードの再検証も必要 41
�
�
�
�
�
�
�
�
�
Inference-time Correction Using Known Intrinsics
● 回転角度と焦点距離のそれぞれに微小な誤差が含まれる場合、以下が成
り立つ
rx fy, ry fx ~ constant
● 推定値を f’x , r’y とすると、内部パラメータの真値が fx と与えられていれ
ば次式で推定値を補正できる
ry = r’y f’x / fx
42
43

More Related Content

PPTX
[DL輪読会]Pay Attention to MLPs (gMLP)
PDF
[DL輪読会]Learning Transferable Visual Models From Natural Language Supervision
PDF
R-CNNの原理とここ数年の流れ
PPTX
SLAM勉強会(PTAM)
PPTX
SfM Learner系単眼深度推定手法について
PPTX
Swin Transformer (ICCV'21 Best Paper) を完璧に理解する資料
PDF
cvpaper.challenge 研究効率化 Tips
PDF
画像生成・生成モデル メタサーベイ
[DL輪読会]Pay Attention to MLPs (gMLP)
[DL輪読会]Learning Transferable Visual Models From Natural Language Supervision
R-CNNの原理とここ数年の流れ
SLAM勉強会(PTAM)
SfM Learner系単眼深度推定手法について
Swin Transformer (ICCV'21 Best Paper) を完璧に理解する資料
cvpaper.challenge 研究効率化 Tips
画像生成・生成モデル メタサーベイ

What's hot (20)

PDF
ドメイン適応の原理と応用
PDF
SSII2022 [SS1] ニューラル3D表現の最新動向〜 ニューラルネットでなんでも表せる?? 〜​
PPTX
[DL輪読会]Objects as Points
PDF
Domain Adaptation 発展と動向まとめ(サーベイ資料)
PDF
動作認識の最前線:手法,タスク,データセット
PDF
SSII2021 [OS2-02] 深層学習におけるデータ拡張の原理と最新動向
PPTX
Curriculum Learning (関東CV勉強会)
PPTX
【論文読み会】BEiT_BERT Pre-Training of Image Transformers.pptx
PDF
【メタサーベイ】数式ドリブン教師あり学習
PDF
モデルアーキテクチャ観点からのDeep Neural Network高速化
PDF
Cvpr 2021 manydepth
PPTX
[DL輪読会]End-to-End Object Detection with Transformers
PDF
[DL輪読会]EdgeConnect: Generative Image Inpainting with Adversarial Edge Learning
PDF
画像をテキストで検索したい!(OpenAI CLIP) - VRC-LT #15
PDF
三次元表現まとめ(深層学習を中心に)
PDF
SSII2021 [SS1] Transformer x Computer Visionの 実活用可能性と展望 〜 TransformerのCompute...
PPTX
[DL輪読会]When Does Label Smoothing Help?
PDF
Transformer 動向調査 in 画像認識(修正版)
PPTX
[DL輪読会]ドメイン転移と不変表現に関するサーベイ
PDF
【DL輪読会】How Much Can CLIP Benefit Vision-and-Language Tasks?
ドメイン適応の原理と応用
SSII2022 [SS1] ニューラル3D表現の最新動向〜 ニューラルネットでなんでも表せる?? 〜​
[DL輪読会]Objects as Points
Domain Adaptation 発展と動向まとめ(サーベイ資料)
動作認識の最前線:手法,タスク,データセット
SSII2021 [OS2-02] 深層学習におけるデータ拡張の原理と最新動向
Curriculum Learning (関東CV勉強会)
【論文読み会】BEiT_BERT Pre-Training of Image Transformers.pptx
【メタサーベイ】数式ドリブン教師あり学習
モデルアーキテクチャ観点からのDeep Neural Network高速化
Cvpr 2021 manydepth
[DL輪読会]End-to-End Object Detection with Transformers
[DL輪読会]EdgeConnect: Generative Image Inpainting with Adversarial Edge Learning
画像をテキストで検索したい!(OpenAI CLIP) - VRC-LT #15
三次元表現まとめ(深層学習を中心に)
SSII2021 [SS1] Transformer x Computer Visionの 実活用可能性と展望 〜 TransformerのCompute...
[DL輪読会]When Does Label Smoothing Help?
Transformer 動向調査 in 画像認識(修正版)
[DL輪読会]ドメイン転移と不変表現に関するサーベイ
【DL輪読会】How Much Can CLIP Benefit Vision-and-Language Tasks?
Ad

Similar to Depth from Videos in the Wild: Unsupervised Monocular Depth Learning from Unknown Cameras (20)

PPTX
Devil is in the Edges: Learning Semantic Boundaries from Noisy Annotations
PDF
Depth Prediction Without the Sensors: Leveraging Structure for Unsupervised L...
PDF
DeepVIO: Self-supervised Deep Learning of Monocular Visual Inertial Odometry ...
PPTX
[CVPR2020読み会@CV勉強会] 3D Packing for Self-Supervised Monocular Depth Estimation
PDF
20150414seminar
PDF
NeurIPS2021論文読み会 (parameter prediction for unseen deep architecture)
PDF
Convolutional Neural Network @ CV勉強会関東
PPTX
「解説資料」ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
PPTX
【DL輪読会】ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
PDF
Deep Learningと画像認識   ~歴史・理論・実践~
PDF
Learning Spatial Common Sense with Geometry-Aware Recurrent Networks
PPTX
SIGGRAPH 2019 Report
PDF
先端技術とメディア表現 第4回レポートまとめ
PPTX
20190227 第51回CV勉強会@関東
PDF
CVPR2016 reading - 特徴量学習とクロスモーダル転移について
PDF
画像処理分野における研究事例紹介
PDF
MIRU_Preview_JSAI2019
PDF
論文輪読: Deep neural networks are easily fooled: High confidence predictions for...
PDF
Deep learningの概要とドメインモデルの変遷
PDF
動画像理解のための深層学習アプローチ
Devil is in the Edges: Learning Semantic Boundaries from Noisy Annotations
Depth Prediction Without the Sensors: Leveraging Structure for Unsupervised L...
DeepVIO: Self-supervised Deep Learning of Monocular Visual Inertial Odometry ...
[CVPR2020読み会@CV勉強会] 3D Packing for Self-Supervised Monocular Depth Estimation
20150414seminar
NeurIPS2021論文読み会 (parameter prediction for unseen deep architecture)
Convolutional Neural Network @ CV勉強会関東
「解説資料」ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
【DL輪読会】ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
Deep Learningと画像認識   ~歴史・理論・実践~
Learning Spatial Common Sense with Geometry-Aware Recurrent Networks
SIGGRAPH 2019 Report
先端技術とメディア表現 第4回レポートまとめ
20190227 第51回CV勉強会@関東
CVPR2016 reading - 特徴量学習とクロスモーダル転移について
画像処理分野における研究事例紹介
MIRU_Preview_JSAI2019
論文輪読: Deep neural networks are easily fooled: High confidence predictions for...
Deep learningの概要とドメインモデルの変遷
動画像理解のための深層学習アプローチ
Ad

More from Kazuyuki Miyazawa (11)

PDF
VoxFormer: Sparse Voxel Transformer for Camera-based 3D Semantic Scene Comple...
PDF
Teslaにおけるコンピュータビジョン技術の調査 (2)
PDF
EPro-PnP: Generalized End-to-End Probabilistic Perspective-n-Points for Monoc...
PDF
Data-Centric AIの紹介
PDF
Teslaにおけるコンピュータビジョン技術の調査
PDF
ドラレコ + CV = 地図@Mobility Technologies
PDF
MLP-Mixer: An all-MLP Architecture for Vision
PDF
CV分野での最近の脱○○系3選
PDF
kaggle NFL 1st and Future - Impact Detection
PDF
3D Perception for Autonomous Driving - Datasets and Algorithms -
PPTX
How Much Position Information Do Convolutional Neural Networks Encode?
VoxFormer: Sparse Voxel Transformer for Camera-based 3D Semantic Scene Comple...
Teslaにおけるコンピュータビジョン技術の調査 (2)
EPro-PnP: Generalized End-to-End Probabilistic Perspective-n-Points for Monoc...
Data-Centric AIの紹介
Teslaにおけるコンピュータビジョン技術の調査
ドラレコ + CV = 地図@Mobility Technologies
MLP-Mixer: An all-MLP Architecture for Vision
CV分野での最近の脱○○系3選
kaggle NFL 1st and Future - Impact Detection
3D Perception for Autonomous Driving - Datasets and Algorithms -
How Much Position Information Do Convolutional Neural Networks Encode?

Depth from Videos in the Wild: Unsupervised Monocular Depth Learning from Unknown Cameras

  • 1. 第5回3D勉強会@関東 Depth from Videos in the Wild: Unsupervised Monocular Depth Learning from Unknown Cameras 宮澤 一之 AI本部 AIシステム部 株式会社ディー・エヌ・エー
  • 2. 自己紹介 2 • 2007〜2010年 東北大学博士課程 生体認証やステレオビジョンの研究に従事 日本学術振興会特別研究員(DC1) • 2010〜2019年 電機メーカ研究所 映像符号化、標準化活動 車載・監視カメラ物体認識、外観検査 • 2019年〜 DeNA @kzykmyzw 宮澤 一之 株式会社ディー・エヌ・エー AI本部 AIシステム部 AI研究開発エンジニア
  • 3. 3
  • 4. ● 論文情報 ○ 2019年4月にarXiv公開され、ICCV2019にアクセプト ○ ソースコードも公開されている ● 論文概要 ○ 単眼カメラ映像から教師なしでデプス、エゴモーション、物体の動き、 カメラパラメータを学習 ○ オクルージョンとなる画素を学習時に推定してロスの計算から除外 ○ 新たな正則化手法(Randomized Layer Normalization)を導入 4 arXiv ICCV Camera-ready GitHub
  • 5. Unsupervised Learning of Monocular Depth Estimation Unsupervised CNN: Geometry to the Rescue 2016 2017 2018 2019 MonoDepth SfMLearner SfM-Net vid2depth Deep-VO-Feat GeoNet LEGO MonoDepth2 Every Pixel Counts Depth from Videos in the Wild Depth Depth + Egomotion Depth + Egomotion + Object Motion Depth + Egomotion + Object Motion + Camera Intrinsic struct2depth (extended) struct2depth SfMLearner++ Every Pixel Counts++ SceneNet
  • 6. Unsupervised Learning of Monocular Depth Estimation Unsupervised CNN: Geometry to the Rescue 2016 2017 2018 2019 MonoDepth SfMLearner SfM-Net vid2depth Deep-VO-Feat GeoNet LEGO MonoDepth2 Every Pixel Counts Depth from Videos in the Wild Depth Depth + Egomotion Depth + Egomotion + Object Motion Depth + Egomotion + Object Motion + Camera Intrinsic struct2depth (extended) struct2depth SfMLearner++ Every Pixel Counts++ SceneNet
  • 7. SfMLearner 7 Tinghui Zhou, et al., “Unsupervised Learning of Depth and Ego-Motion from Video,” CVPR2017 ● 単眼映像を使った教師なし学習によるデプスとエゴモーション推定の先駆け ● 別視点画像を生成する処理を微分可能にし、学習プロセスに組み込み
  • 8. SfMLearner 8 Tinghui Zhou, et al., “Unsupervised Learning of Depth and Ego-Motion from Video,” CVPR2017 Depth CNN:ターゲット視点画像からデプスマップを生成
  • 9. SfMLearner 9 Tinghui Zhou, et al., “Unsupervised Learning of Depth and Ego-Motion from Video,” CVPR2017 Pose CNN:ソース視点と隣接視点間の相対的なカメラ運動を推定
  • 10. View Synthesis as Supervision 10 I1 IN It Is View Synthesis Objective学習用映像 画素 ターゲット視点画像 ソース視点画像をターゲット視点にワープした画像 Tinghui Zhou, et al., “Unsupervised Learning of Depth and Ego-Motion from Video,” CVPR2017
  • 11. View Synthesis as Supervision 11 I1 IN It Is View Synthesis Objective学習用映像 画素 ターゲット視点画像 ソース視点画像をターゲット視点にワープした画像 ● ソース視点画像をターゲット視点画像にワープするためには、ソース視 点とターゲット視点との間で画素の対応関係を知る必要がある ● CNNで推定したターゲット視点におけるデプスと視点間のカメラ運動を 利用して対応関係を求める Tinghui Zhou, et al., “Unsupervised Learning of Depth and Ego-Motion from Video,” CVPR2017
  • 12. View Synthesis as Supervision 12 ターゲット視点画像上の画素 ptとソース視点画像上の画素 ps の対応関係 ターゲット視点のデプスマップ ターゲット視点からソース視点へのカメラ運動 カメラ内部行列(既知) Tinghui Zhou, et al., “Unsupervised Learning of Depth and Ego-Motion from Video,” CVPR2017
  • 13. View Synthesis as Supervision 13 ターゲット視点画像上の画素 ptとソース視点画像上の画素 ps の対応関係 Differentiable Bilinear Sampling Mechanism* *Max Jaderberg, et al., “Spatial Transformer Networks,” NIPS2015 Tinghui Zhou, et al., “Unsupervised Learning of Depth and Ego-Motion from Video,” CVPR2017
  • 14. ● 他視点画像の生成においては、以下の前提条件がある ○ シーンはスタティックであり、カメラ以外に運動する物体を含まない ○ ターゲット視点とソース視点の間にはオクルージョンがない ● 実際には上記前提が成り立たない画素が存在し、学習に悪影響となるた め、そうした画素のロスへの寄与率を下げるExplainability Maskを導入 ● Explainability Maskも教師なし学習で推定するが、オールゼロという自 明解に収束することを避けるため非ゼロ化を促進する正則化を導入 Explainability Mask 14 Target View Explainability Mask Target View Explainability Mask
  • 15. Network Architecture 15 Single-view Depth Network Pose/Explainability Network Tinghui Zhou, et al., “Unsupervised Learning of Depth and Ego-Motion from Video,” CVPR2017
  • 16. Unsupervised Learning of Monocular Depth Estimation Unsupervised CNN: Geometry to the Rescue 2016 2017 2018 2019 MonoDepth SfMLearner SfM-Net vid2depth Deep-VO-Feat GeoNet LEGO MonoDepth2 Every Pixel Counts Depth from Videos in the Wild Depth Depth + Egomotion Depth + Egomotion + Object Motion Depth + Egomotion + Object Motion + Camera Intrinsic struct2depth (extended) struct2depth SfMLearner++ Every Pixel Counts++ SceneNet
  • 17. struct2depth 17Vincent Casser, et al., “Depth Prediction Without the Sensors: Leveraging Structure for Unsupervised Learning from Monocular Videos,” AAAI2019 ● デプスとエゴモーションに加え、シーン中の物体の動きも推定 ● セグメンテーションマスクを入力し、物体ごとに3次元モーションを推定 ● 推論時にも学習を行うことで精度を上げるTest Time Refinmentを提案
  • 18. Motion Model 18 I1 I2 I3 I1→2 I2 I3→2 V V V S1→2 S2 S3→2 映像 物体マスク 映像 (エゴモーション補正済) 背景マスク (エゴモーション補正済) Ego-motion Network Object Motion Network Ego-motion i-th Object Motion 物体 Vincent Casser, et al., “Depth Prediction Without the Sensors: Leveraging Structure for Unsupervised Learning from Monocular Videos,” AAAI2019
  • 19. Unsupervised Learning of Monocular Depth Estimation Unsupervised CNN: Geometry to the Rescue 2016 2017 2018 2019 MonoDepth SfMLearner SfM-Net vid2depth Deep-VO-Feat GeoNet LEGO MonoDepth2 Every Pixel Counts Depth from Videos in the Wild Depth Depth + Egomotion Depth + Egomotion + Object Motion Depth + Egomotion + Object Motion + Camera Intrinsic struct2depth (extended) struct2depth SfMLearner++ Every Pixel Counts++ SceneNet
  • 21. Network Architecture 21 Motion-prediction Network ● デプス推定とモーション推定を異なるネットワークで実施 ● デプス推定:UNet with ResNet18 ● モーション推定:UNet inspired by FlowNet* *Alexey Dosovitskiy, et al., “FlowNet: Learning Optical Flow with Convolutional Networks,” ICCV2015
  • 22. Learning the Intrinsics 22 視点間の画素の対応関係 ● 視点間の画素の対応関係は KRK-1 および Kt に依存するため、学習により これらが正しい値に近づいていく ● しかし、正しくない内部行列 Ke に対して、やはり正しくない並進ベクト ルを te = Ke -1Kt と推定すると、Kete = Kt となり学習時のロスに影響しない ● つまり、エゴモーションが並進のみとなる場合カメラの内部パラメータ は学習できない K: カメラ内部行列 p, p’: 視点間の対応点 z, z’: pとp’でのデプス R: 回転行列 t: 並進ベクトル
  • 23. Learning the Intrinsics 23 K: カメラ内部行列 p, p’: 視点間の対応点 z, z’: pとp’でのデプス R: 回転行列 t: 並進ベクトル 視点間の画素の対応関係 ● 本論文では、KeReKe -1 = KRK-1 となるような誤った推定 Ke, Re は存在しな いことを証明 ● エゴモーションに回転が含まれれば内部パラメータの学習は可能 ● 回転角度と焦点距離の推定誤差との関係も導出(回転角度が大きいほど 学習効果が高い) δfx, δfy: 焦点距離の誤差 rx, ry: 各軸の回転角度 w, h: 画像サイズ s: max(w, h)
  • 24. Learning Object Motion ● 前処理で自動車や人などを検出し、バウンディングボックスレベルでマスク ● マスク領域で並進ベクトル t の正則化を緩和(固定値からの逸脱を許容) ● バウンディングボックスレベルのマスクしか与えなくても、学習により移動 物体の境界に沿った動きの推定が可能であることを確認 24 画像+マスク Motion field
  • 26. Occlusion-aware Consistency 26Target View Source View 推定したモーションに したがってデプスをワープ
  • 27. Occlusion-aware Consistency 27Target View Source View オクルージョン発生 (デプスが複数の値をとる)
  • 28. Occlusion-aware Consistency 28Target View Source View ターゲット視点で推定したデプス よりも前側にくる点だけをロスの 計算に含める(ZR’ ZL)
  • 29. Occlusion-aware Consistency 29Target View Source View ターゲット視点で推定したデプス よりも前側にくる点だけをロスの 計算に含める(ZR’ ZL) ソース視点とターゲット視点を入 れ替えて同様にオクルージョンを 考慮する(ZL’ ZR)
  • 30. Losses ● 推定したデプスマップ、内部パラメータ、回転・並進に基づいてソース 視点画像をターゲット視点画像にワープし、以下のロスを適用 ○ Structured Similarity(SSIM)ロス ○ カラーチャンネルごとのL1ロス ● モーションの推定についてはForwardとBackwardが一致するように Cycle Consistencyを適用 ● 推定結果が空間方向、時間方向に滑らかとなるような拘束を導入 30
  • 31. Randomized Layer Normalization ● バッチ正規化について、以下の現象が発生 ○ 推論時に学習モードでバッチ正規化を適用した方が精度が高い ○ 学習時にバッチサイズを大きくするにつれて精度が低下 ● バッチ正規化からレイヤ正規化に変更し、さらに平均と分散にガウシアン ノイズを乗ずることで大きな改善がみられた ● ノイズが正則化として働いたためと考えられる 31 Yuxin Wu, et al., “Group Normalization,” ECCV2018BatchChannel Spatial
  • 32. Experiments ● Datasets ○ KITTI ○ Cityscapes ○ EuRoC Micro Aerial Vehicle Dataset ○ YouTube8M videos ● Evaluation ○ Depth prediction ○ Recovery of camera intrinsics ○ Odometry estimation 32
  • 33. Depth(KITTI・Cityscapes) 33 KITTI Cityscapes ● KITTI、Cityscapes共にいずれの評価指標でも従来手法を上回る ● 既知の内部パラメータよりも推定したパラメータを使った方が高精度
  • 37. Effect of Occlusion Aware Losses 37
  • 38. Effect of Occlusion Aware Losses 38
  • 40. Odometry(KITTI) ● ATE、trel のいずれの評価尺度でも従来手法を上回る ● 内部パラメータが既知の場合、推定結果と照らし合わせることで推論時 に補正を行うことが可能であり、これにより精度が大幅に改善 (Learned & corrected が補正後の結果) 40 ATE: Absolute Trajectory Error trel: Average relative translational drift
  • 41. まとめ ● 教師なし学習でデプスやモーションに加えてカメラの内部パラメータま で推定したのは世界初 ● ジオメトリを考慮したシンプルな正攻法でオクルージョンをケア ● 移動物体の扱いが簡単(バウンディングボックスを用意するだけ) ● 多様なデータセットと実験のいずれにおいてもSoTA性能を達成 ● ソースコードが公開されている ● Randomized Layer Normalizationはちょっと謎な工夫 ● 論文の記述にあいまいな箇所があり、arXiv版 → ICCVカメラレディ版で 改善されているもののカメラレディ版ではSupplementary Materialに詳 細な記述が回されている(そしてSMはまだ未公開) ● ICCVでの発表に期待 ● 公開コードの再検証も必要 41 � � � � � � � � �
  • 42. Inference-time Correction Using Known Intrinsics ● 回転角度と焦点距離のそれぞれに微小な誤差が含まれる場合、以下が成 り立つ rx fy, ry fx ~ constant ● 推定値を f’x , r’y とすると、内部パラメータの真値が fx と与えられていれ ば次式で推定値を補正できる ry = r’y f’x / fx 42
  • 43. 43

Editor's Notes

  • #6: 関連研究の流れ 教師なしでのデプス推定 デプス、デプスとエゴモーション、物体のモーション、カメラパラメータという進化 最近の論文ではSfMLearnerとSfM-Netがほぼ必ず引用
  • #8: 入力はN枚の連続画像
  • #9: Depth CNNは1枚の画像からデプスを推定
  • #10: Pose CNNは複数の画像を受け取り、画像間でのカメラ移動(エゴモーション)を推定
  • #11: 教師なしでどうやって学習するのか ソース視点とターゲット視点という2つの視点を考えた場合、ソース視点の画像をターゲット視点にワープし、ソース視点とワープ画像との差異をロスとして学習する
  • #13: カメラの内部行列は既知とする
  • #14: 実際の画像の生成プロセスは微分可能にする必要がある NIPS2015で提案されたSpatial Transformer Networkを使う バイリニア補間
  • #15: 移動物体やオクルージョンは考慮されないため、そうした箇所をロス計算に含めると愛影響を及ぼす これを避けるため、ルールに乗らない点のロスへの寄与率を下げるため、Explainability Maskを導入
  • #16: UNetベース 複数解像度の画像を生成してロスを計算
  • #18: ベースはSfMLearnerと同じだが、シーン中の移動物体のモーションも推定可能 インスタンスセグメンテーションのマスクを入力として与える
  • #19: ます、物体領域を全てマスクしたうえでカメラの運動を推定 続いて、それぞれの物体ごとに3Dモーションの推定を行う
  • #22: デプス推定とモーション推定を別々のネットワークで行う いずれもUNetベース ボトルネックからブランチを生やしてカメラパラメータとエゴモーションを推定 背景モーションからの差分として物体のモーションを出力
  • #23: 画素間の対応関係は、KRK-1とKtで表現される 正しくないKとtの組み合わせでも、Ktは正しい、ということが発生しうる したがってtのみでは教師信号となり得ない
  • #24: 本論文では、Rが存在すれば、Kは学習可能であることを証明 また、回転角度が大きいほど教師信号としても効果が大きく、カメラパラメータの誤差も小さくなることを導出
  • #25: 物体領域をバウンディングボックスで指定 セグメンテーションやトラッキングは不要
  • #28: オクルージョン領域でデプスが複数の値をとり、後ろ側にある箇所についてはロス計算に含めるとノイズとなる
  • #29: ターゲット視点で推定したデプスよりも前にくる画素だけロス計算に含めることでオクルージョンの影響を軽減
  • #30: ソースとターゲットを入れ替えて同じ処理を行う