Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint...

92
Competitive Collaboration Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag Ranjan Perceiving Systems Max Planck Institute for Intelligent Systems 1

Transcript of Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint...

Page 1: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Competitive CollaborationJoint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation

Anurag Ranjan

Perceiving Systems

Max Planck Institute for Intelligent Systems

1

Page 2: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Varun Jampani Lukas Balles Deqing Sun Kihwan Kim Jonas Wulff Michael Black

2

Page 3: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Tübingen, Germany3

Page 4: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Outline

Motion and

Optical Flow

Deep Learning

with StructureCompetitive

Collaboratio

n

GeometryUnsupervised Learning of

Everything

4

Supervise

d

Unsupervise

d

Page 5: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Motion and Optical Flow

5

Page 6: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Optical Flow

2D velocity for all pixels between two frames of a video sequence.

𝐼 𝑥, 𝑦, 𝑡 − 1 = 𝐼(𝑥 + 𝑢, 𝑦 + 𝑣, 𝑡)

6

Page 7: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Why do we need Optical Flow

7

Optical Flow

SLAM Action Recognition Super-resolution

Video Compression Slomo

Unsupervised Segmentation

Unsupervised Segmentation: Mahendran et al., VFX: Black et al., Motion Magnification: Liu et al., Action Recognition: Simoyan et al.

Motion MagnificationVFX

Page 8: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Optical Flow

2D velocity for all pixels between two frames of a video sequence.

𝐼 𝑥, 𝑦, 𝑡 − 1 = 𝐼(𝑥 + 𝑢, 𝑦 + 𝑣, 𝑡)

8

Page 9: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Estimating Optical Flow

𝐼 𝑥, 𝑦, 𝑡 − 1 = 𝐼(𝑥 + 𝑢, 𝑦 + 𝑣, 𝑡)

min𝑢,𝑣

∥ 𝐼 𝑥, 𝑦, 𝑡 − 1 − 𝐼 𝑥 + 𝑢, 𝑦 + 𝑣, 𝑡 ∥

min𝑢,𝑣

𝜌(𝐼 𝑡 − 1 − 𝑤arp 𝐼 𝑡 , 𝑢, 𝑣 )

9

Photometric

Loss

Page 10: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

10

min𝑢,𝑣

𝜌(𝐼 𝑡 − 1 − 𝑤arp 𝐼 𝑡 , 𝑢, 𝑣 )

Photometric

Loss

Page 11: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

No prior on structure

11

Page 12: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Can we learn from data?

12

Page 13: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Optical Flow Estimation

∈ ℝ𝑛×n

Dosovitskiy et al. 2015

13

Page 14: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

FlowNet

Dosovitskiy et al. 201514

Page 15: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Problem

FlowNet is too big. 33 M parameters.

Needs to learn both large and small motions.

Does not perform well.

15

Page 16: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Approach

Image statistics are scale invariant.

Use an image pyramid.

Train a small network for each pyramid level.

Compute residual flow at each level.

Network captures small displacements.

Pyramid captures large displacements.

16Burt and Adelson. The Laplacian pyramid as a compact image code. IEEE COM, 1983

Page 17: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

SPyNet

Spatial Pyramid Network for Optical Flow Estimation

17Ranjan et al. Optical Flow estimation using a Spatial Pyramid Network. CVPR 2017.

Page 18: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

32x7x7

64x7x7

32x7x7

16x7x7

2x7x7

𝐼1, 𝐼2

𝑣𝑘18

Page 19: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

𝐺𝑘

19

Page 20: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

+

𝐺0

0

𝐼22

𝐼21

𝐼12

𝐼11

𝑑

𝑑

𝑑

𝑑

𝐼02

𝐼01

𝑉0

𝑣0

𝑢+

𝐺1 𝑤

𝑉1

𝑢

𝑣1

20

Page 21: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

+

𝐺2 𝑤

+

𝐺1 𝑤

+

𝐺0

0

𝐼22

𝐼21

𝐼12

𝐼11

𝑑

𝑑

𝑉2

𝑑

𝑑

𝐼02

𝐼01

𝑉1𝑉0

𝑢𝑢

𝑣0𝑣1𝑣2

21

Page 22: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

SPyNet FlowNet

22

Spatial Temporal Spatial Temporal

Page 23: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Frames Ground Truth FlowNetS FlowNetC SPyNet

23

Page 24: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

7,500

7,600

7,700

7,800

7,900

8,000

8,100

8,200

8,300

8,400

8,500

1 10 100

Number of Model Parameters (in Millions)

SPyNet

FlowNetC

FlowNetS

Voxel2Voxel*

Ave

rag

e E

PE

on

Sin

tel (C

lean

+ F

ina

l)

*error metric not consistent with the benchmarks

24

Page 25: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

4,000

4,500

5,000

5,500

6,000

6,500

7,000

7,500

8,000

8,500

9,000

1 10 100 1000

Number of Model Parameters (in Millions)

SPyNet [2017]

FlowNetC [2015]

FlowNetS [2015]

Voxel2Voxel* [2016]

Ave

rag

e E

PE

on

Sin

tel (C

lean

+ F

ina

l)

*error metric not consistent with the benchmarks

PWC-Net [2018]FlowNet2 [2017]

25

Page 26: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Sintel Final d0-10 d10-60 d60-140 s0-10 s10-40 s40+

SpyNet+ft 6.694 4.368 3.290 1.395 5.534 49.707

FlownetS+ft 7.252 4.610 2.993 1.873 5.826 43.236

FlownetC+ft 7.190 4.619 3.298 2.305 6.169 40.779

Sintel Clean d0-10 d10-60 d60-140 s0-10 s10-40 s40+

SpyNet+ft 5.501 3.122 1.719 0.832 3.343 43.442

FlownetS+ft 5.992 3.561 2.193 1.424 3.815 40.098

FlownetC+ft 5.575 3.182 1.993 1.622 3.974 33.369

Sintel Clean

Sintel Final

Distance from Motion Boundaries Average Displacement

26

Page 27: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

ProblemSPyNet [1]

28[1] Ranjan et al. Optical Flow estimation using a Spatial Pyramid Network. CVPR 2017.

Page 28: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Why humans?

Scenes contain human actions.

Left Image: Delaitre et al. Recognizing human actions in still images, BMVC 2010Right Image: Simonyan et al. Two-stream convolutional networks for action recognition in videos. NIPS 2014.

• Useful for recognition problems.

• Two-stream architectures use fast

classical optical flow methods.

• Deep Networks have massive GPU

memory requirements.

29

Page 29: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Problem

No dataset for human optical flow for training neural networks.

Flying Chairs [1]

MPI Sintel [2]

KITTI [3]

[1] Dosovitskiy et al. Flownet: Learning optical flow with convolutional networks. ICCV 2015.[2] Butler et al. A naturalistic open source movie for optical flow evaluation. ECCV 2012.[3] Geiger et al. Vision meets robotics: The KITTI dataset. International Journal of Robotics Research 32.11 (2013): 1231-1237.

30

Page 30: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Idea

Create a new dataset for human optical flow.

Use it to train an existing fast and compact optical flow method.

31

Page 31: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Human Flow Dataset

Human Motion

Capture data

[1]

Realistic

Human Body

Model [2]

Environment

[3]

Simulate and Extract Motion

Vectors

+ +

32[1] Ionescu et al. Human3.6m: Large scale datasets and predictive methods for 3d human sensing in natural environments. IEEE PAMI2014.[2] Loper et al. MoSh: Motion and Shape Capture from Sparse Markers. SIGGRAPH Asia 2014.[3] Yu et al. "Lsun: Construction of a large-scale image dataset using deep learning with humans in the loop." arXiv preprint arXiv:1506.03365(2015).

+ Cloth texture, Lighting, Noise, Motion Blur, Camera Blur

Blender

Page 32: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Human Flow Dataset 33

Page 33: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

+

𝐺2 𝑤

+

𝐺1 𝑤

+

𝐺0

0

𝐼22

𝐼21

𝐼12

𝐼11

𝑑

𝑑

𝑉2

𝑑

𝑑

𝐼02

𝐼01

𝑉1𝑉0

𝑢𝑢

𝑣0𝑣1𝑣2

SPyNet

Ranjan et al. Optical Flow estimation using a Spatial Pyramid Network. CVPR 2017. 35

Page 34: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

0

0.1

0.2

0.3

0.4

0.5

0.6

0.010 0.100 1.000 10.000

PWC-Net

Avera

ge E

PE

Hum

an F

low

Data

set

Inference Time (s)

SPyNet

Evaluation of Optical Flow Networks

36

SPyNet+HF

PWC-Net+HF

Page 35: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

0.010 0.100 1.000 10.000

SPyNet+HF

Flow Fields

LDOF

PCA Flow

Avera

ge E

PE

Hum

an F

low

Data

set

FlowNetS

Epic Flow

Inference Time (s)

SPyNet

Evaluation of Optical Flow Networks

37

PWC-Net+HF

PWC-Net

FlowNet2

Page 36: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

38

Visuals

Video Ground Truth Human Flow SpyNet

Page 37: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

39

Visuals

Video Ground Truth Human Flow SpyNet

Page 38: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

40

Visuals

Video Ground Truth Human Flow SpyNet

Page 39: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

41

Visuals

Video Human Flow SpyNet

Page 40: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

42

Visuals

Video Human Flow SpyNet

Page 41: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Human Flow may not work on other parts of the scene.

43

Page 42: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Introduction to Scene Geometry

44

Page 43: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Motion of a Static Scene

For static scenes: Depth + Camera Motion = Optical

Flow45

Page 44: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Multi-view Geometry

𝑥1 = 𝐾𝑋, 𝑥2 = 𝐾𝑅𝑡𝑋,

𝑋 =𝑑

𝑓𝑥1

𝑑

∥ 𝐼1 𝑥1 − 𝐼2 𝑥2 ∥= 0

min𝑅,𝑡,𝑑

𝜌(𝐼1 −𝑤arp 𝐼2, 𝑅, 𝑡, 𝑑 )

Pinhole Camera Matrix

46

Photometric Loss

𝐼1𝐼2

Page 45: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Static Scene and Moving Objects

47

Page 46: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

How to decompose a scene?

48

Page 47: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Competitive Collaboration

49

Page 48: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

𝑅 𝒟𝑟

50

Page 49: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

𝑅 𝐹Competitor

𝒟𝑟 𝒟𝑓

𝒟Competitor

51

Page 50: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

𝑅

𝑀

𝐹Competition

Moderator

𝒟𝑟 𝒟𝑓

CompetitorCompetitor

52

Page 51: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

𝑅

𝑀

𝐹Collaboration

Moderator

𝒟𝑟∗ 𝒟𝑓

CompetitorCompetitor

53

Page 52: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

𝐴

𝑀

𝐵

Mixed Domain Learning

54

Page 53: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Competition Loss

𝐸𝑐𝑜𝑚 = 𝑚 ∙ 𝐻 𝐴 , 5 + 1 − 𝑚 ∙ 𝐻(𝐵 , 5)

55

Page 54: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Collaboration Loss

𝐸𝑐𝑜𝑙 = 𝐸𝑐𝑜𝑚 + ቊ−log(𝑀 𝑦 + 𝜖) 𝑖𝑓 𝐸𝐴 < 𝐸𝐵− log(1 −𝑀 𝑦 + 𝜖) 𝑖𝑓𝐸𝐴 ≥ 𝐸𝐵

𝐸𝐴 = 𝐻(𝐴 ( ), 5)

56

Page 55: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

𝐴

𝑀

𝐵

57

Page 56: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Accuracy

Model Training MNIST

Error

SVHN

Error

MNIST+SVHN

Error

Alice Basic 1.34 11.88 8.96

Alice CC 1.41 11.55 8.74

Bob CC 1.24 11.75 8.84

Alice+Bob+Mod CC 1.24 11.55 8.70

58

Alice 3x Basic 1.33 10.86 8.22

Page 57: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Moderator Behavior

Alice Bob

MNIST 0 % 100 %

SVHN 100 % 0 %

59

Page 58: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation

60

Page 59: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

𝑅

𝐷

𝐶

Monocular Depth Prediction

CameraMotion Estimation

Zhou et al. CVPR 2017

61

Page 60: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

𝑅

𝐷

𝐶

𝐹

Monocular Depth Prediction Optical Flow Estimation

CameraMotion Estimation

Zhou et al. CVPR 2017

Meister et al. AAAI ‘18, Janai et al. ECCV ‘18

62

Page 61: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

𝑅

𝐷

𝐶

𝐹

𝑀

Monocular Depth Prediction Optical Flow Estimation

CameraMotion Estimation Motion Segmentation

𝒟𝑓𝒟𝑟

63

Page 62: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

𝑅

𝐷

𝐶

𝐹

𝑀

𝐸

Monocular Depth Prediction Optical Flow Estimation

CameraMotion Estimation Motion Segmentation

Loss

Loss

64

𝐸𝑅 = 𝜌(𝐼, 𝑤arp(𝐼+, 𝑐, 𝑑 )) ⋅ 𝑚 𝐸𝐹 = 𝜌(𝐼, 𝑤arp(𝐼+, 𝑢+ )) ⋅ (1 − 𝑚)

Photometric

LossPhotometric

Loss

𝐸𝐶 = 𝐻(𝑰∥𝑢𝑅− 𝑢𝐹∥<𝜆𝑐 , 𝑚)

Page 63: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

𝑅

𝑀

𝐹Competition

Depth and Camera

Motion NetsOptical

Flow Net

𝒟𝑟 , 𝐸𝑅 𝒟𝑓 , 𝐸𝐹

(Moderator)

Mask Net

66

Page 64: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

𝑅

𝑀

𝐹Collaboration

(Moderator)

Mask Net

𝒟𝑟∗ 𝒟𝑓

𝐸𝐶Depth and Camera

Motion NetsOptical

Flow Net

67

Page 65: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Best amongst Unsupervised Methods on

Single View Depth Prediction

Camera Motion Estimation

Optical Flow

Only Network that does

Unsupervised Motion Segmentation

68

Page 66: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Results

69

Page 67: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Image Depth Segmentation

Static Flow Segmented Dynamic Flow Full Flow

70

Page 68: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Image Depth Segmentation

Static Flow Segmented Dynamic Flow Full Flow

71

Page 69: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Image Depth Segmentation

Static Flow Segmented Dynamic Flow Full Flow

72

Page 70: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Image Depth Segmentation

Static Flow Segmented Dynamic Flow Full Flow

73

Page 71: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Image Depth Segmentation

Static Flow Segmented Dynamic Flow Full Flow

74

Page 72: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Depth Evaluation

Model Dataset AbsRel SqRel RMS RMSlog

Eigen et al. 2014 KITTI 0.203 1.548 6.307 0.282

Zhou et al. 2017 KITTI 0.183 1.595 6.709 0.270

Geonet 2018 KITTI 0.155 1.296 5.857 0.233

DF-Net 2018 KITTI 0.150 1.124 5.507 0.223

Ours KITTI 0.140 1.070 5.326 0.217

Zhou et al. 2017 CS+KITTI 0.198 1.836 6.565 0.275

Geonet 2018 CS+KITTI 0.153 1.328 5.737 0.232

DF-Net 2018 CS+KITTI 0.146 1.182 5.215 0.213

Ours CS+KITTI 0.139 1.032 5.199 0.213

75

Godard et al. CS+KITTI+S 0.114 0.991 5.029 0.203

[1] Zhou et al. Unsupervised learning of depth and ego-motion from video. CVPR 2017. [2] Yin et at. Geonet: Unsupervised learningof dense depth, optical flow and camera pose. CVPR 2018..[3] Zou et al. Df-net: Unsupervised joint learning of depth and flow using cross-task consistency. ECCV 2018.

Page 73: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Depth Ablation

Model Dataset Net D Net F AbsRel SqRel RMS RMSlog

Basic KITTI DispNet - 0.168 1.396 6.176 0.244

CC KITTI DispNet FlowNetC 0.148 1.149 5.464 0.226

CC KITTI DispResNet FlowNetC 0.144 1.284 5.716 0.226

CC KITTI DispResNet PWC Net 0.140 1.070 5.326 0.217

CC CS+KITTI DispResNet PWC Net 0.139 1.032 5.199 0.213

76

DispResNet > DispNet

PWC Net > FlowNetC

Page 74: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Depth Visuals

77

Page 75: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Image Ground Truth CC (CS+K)

Basic Basic+ssim CC (K)

78

Page 76: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Image Ground Truth CC (CS+K)

Basic Basic+ssim CC (K)

79

Page 77: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Image Ground Truth CC (CS+K)

Basic Basic+ssim CC (K)

80

Page 78: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Image Ground Truth CC (CS+K)

Basic Basic+ssim CC (K)

81

Page 79: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Image Ground Truth CC (CS+K)

Basic Basic+ssim CC (K)

82

Page 80: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Image Ground Truth CC (CS+K)

Basic Basic+ssim CC (K)

83

Page 81: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Pose Evaluation

Model Sequence 09 Sequence 10

ORB-SLAM 0.014 ± 0.008 0.012 ± 0.011

Zhou et al. 2017 0.016 ± 0.009 0.013 ± 0.009

Geonet 2018 0.012 ± 0.007 0.012 ± 0.009

DF-Net 2018 0.017 ± 0.007 0.015 ± 0.009

Ours 0.012 ± 0.007 0.012 ± 0.008

84

[1] Zhou et al. Unsupervised learning of depth and ego-motion from video. CVPR 2017. [2] Yin et at. Geonet: Unsupervised learningof dense depth, optical flow and camera pose. CVPR 2018..[3] Zou et al. Df-net: Unsupervised joint learning of depth and flow using cross-task consistency. ECCV 2018.

Page 82: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Flow Evaluation on KITTI

Model EPE Fl Test Fl

UnFlow-CSS 2018 8.10 23.27 % -

Back2Future 2018 6.59 24.21 % 22.94 %

Geonet 2018 10.81 - -

DF-Net 2018 8.98 26.41 % 25.70 %

Ours 5.66 20.93 % 25.27 %

85

PWC-Net 2018 10.35 33.67% -

PWC-Net+ft 2018 (2.16) (9.80%) 9.60%

[1] Janai et al. Unsupervised learning of multi-frame optical flow with occlusions. ECCV 2018. [2] Yin et at. Geonet: Unsupervised learningof dense depth, optical flow and camera pose. CVPR 2018..[3] Zou et al. Df-net: Unsupervised joint learning of depth and flow using cross-task consistency. ECCV 2018.

Page 83: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Flow Visuals

86

Page 84: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Image 1 Ground Truth UnFlow-CSS

GeoNet DF-Net Ours

87

[1] Meister et al. Unsupervised learningof optical flow with a bidirectional census loss. AAAI 2018. [2] Yin et at. Geonet: Unsupervised learningof dense depth, optical flow and camera pose. CVPR 2018..[3] Zou et al. Df-net: Unsupervised joint learning of depth and flow using cross-task consistency. ECCV 2018.

Page 85: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Image 1 Ground Truth UnFlow-CSS

GeoNet DF-Net Ours

88

[1] Meister et al. Unsupervised learningof optical flow with a bidirectional census loss. AAAI 2018. [2] Yin et at. Geonet: Unsupervised learningof dense depth, optical flow and camera pose. CVPR 2018..[3] Zou et al. Df-net: Unsupervised joint learning of depth and flow using cross-task consistency. ECCV 2018.

Page 86: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Image 1 Ground Truth UnFlow-CSS

GeoNet DF-Net Ours

89

[1] Meister et al. Unsupervised learningof optical flow with a bidirectional census loss. AAAI 2018. [2] Yin et at. Geonet: Unsupervised learningof dense depth, optical flow and camera pose. CVPR 2018..[3] Zou et al. Df-net: Unsupervised joint learning of depth and flow using cross-task consistency. ECCV 2018.

Page 87: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Image 1 Ground Truth UnFlow-CSS

GeoNet DF-Net Ours

90

[1] Meister et al. Unsupervised learningof optical flow with a bidirectional census loss. AAAI 2018. [2] Yin et at. Geonet: Unsupervised learningof dense depth, optical flow and camera pose. CVPR 2018..[3] Zou et al. Df-net: Unsupervised joint learning of depth and flow using cross-task consistency. ECCV 2018.

Page 88: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Image 1 Ground Truth UnFlow-CSS

GeoNet DF-Net Ours

91

[1] Meister et al. Unsupervised learningof optical flow with a bidirectional census loss. AAAI 2018. [2] Yin et at. Geonet: Unsupervised learningof dense depth, optical flow and camera pose. CVPR 2018..[3] Zou et al. Df-net: Unsupervised joint learning of depth and flow using cross-task consistency. ECCV 2018.

Page 89: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

Image 1 Ground Truth UnFlow-CSS

GeoNet DF-Net Ours

92

[1] Meister et al. Unsupervised learningof optical flow with a bidirectional census loss. AAAI 2018. [2] Yin et at. Geonet: Unsupervised learningof dense depth, optical flow and camera pose. CVPR 2018..[3] Zou et al. Df-net: Unsupervised joint learning of depth and flow using cross-task consistency. ECCV 2018.

Page 90: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

93

What’s next?

supervision

Page 91: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

94

Future Goal

Image courtesy: https://ps.is.tuebingen.mpg.de/research_fields/inverse-graphics

Page 92: Joint Unsupervised Learning of Depth, Camera Motion, Optical … · 2019-03-29 · Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation Anurag

github.com/anuragranj

Michael Black (MPI), Jonas Wulff (MIT), Timo Bolkart (MPI), Siyu Tang (MPI), Joel Janai (MPI), Deqing Sun (NVIDIA),

Fatma Güney (Oxford), Varun Jampani (NVIDIA), Andreas Geiger (MPI), Clément Pinard (ENSTA),

Soubhik Sanyal (MPI), Yiyi Liao (MPI), George Pavlakos (UPenn), Kihwan Kim (NVIDIA),

Lukas Balles (MPI), Frederick Künstner (MPI), Dimitris Tzionas (MPI),

David Hoffmann (MPI)

97