Its Moving! A Probabilistic Model for Causal Motion Segmentation in - - PowerPoint PPT Presentation

it s moving
SMART_READER_LITE
LIVE PREVIEW

Its Moving! A Probabilistic Model for Causal Motion Segmentation in - - PowerPoint PPT Presentation

Its Moving! A Probabilistic Model for Causal Motion Segmentation in Moving Camera Videos Erik Learned-Miller with Manju Narayana Pia Bideau U NIVERSITY OF M ASSACHUSETTS , A MHERST College of Computer and Information Sciences U


slide-1
SLIDE 1

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

It’s Moving!

A Probabilistic Model for Causal Motion Segmentation in Moving Camera Videos

Erik Learned-Miller with Manju Narayana Pia Bideau

slide-2
SLIDE 2

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Do you see an insect?

2

Uploaded by “Houssem” https://www.youtube.com/watch?v=adufPBDNCKo

slide-3
SLIDE 3

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Walking Stick

3

slide-4
SLIDE 4

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Other examples

slide-5
SLIDE 5

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Other examples

slide-6
SLIDE 6

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Problem Definition

slide-7
SLIDE 7

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Prior work: 2 common approaches

Keypoint matching—”sparse”

Track points through multiple frames Cluster tracks in subspaces Typically non-causal e.g. Vidal (2010), Fragkiadaki et al. (2012), Keuper et al. (2015).

Optical Flow

Dense tracking information enforces local smoothness and appearance constraints slower Narayana and Learned-Miller (ICCV13), Papazoglou and Ferrari (ICCV13), Zamalieva et al. (ECCV 2014).

7

slide-8
SLIDE 8

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Keypoint tracking

8

slide-9
SLIDE 9

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Segmentation using Flow

  • ptical flow

representation

  • f flow

segmented labels

9

slide-10
SLIDE 10

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Complex optical flow

10

  • riginal frame
  • ptical flow
slide-11
SLIDE 11

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Difficulties

What makes flow complicated?

Camera motion along optical axis Camera rotation Dependence on scene depth Noise in optical flow Multiple moving objects

11

slide-12
SLIDE 12

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Flow Angle Fields

Definition: Flow Angle Field The angle portion of each vector in an optical flow field.

12

slide-13
SLIDE 13

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Flow angle fields

  • riginal scene

(Sintel Optical Flow Database)

  • ptical flow magnitudes
  • ptical flow angles

13

slide-14
SLIDE 14

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Observation

For a translating camera and a rigid scene: The angle field depends ONLY

  • n direction of motion.

14

slide-15
SLIDE 15

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Observation

For a translating camera and a rigid scene: The angle field depends ONLY

  • n direction of motion.

15

slide-16
SLIDE 16

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Motion along y axis

  • ptical flow

for Scene 1 angle for Scene 1

16

slide-17
SLIDE 17

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Motion along y axis

  • ptical flow

for Scene 2 angle for Scene 2

17

slide-18
SLIDE 18

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Motion along z axis

  • ptical flow

for Scene 1 angle for Scene 1

18

slide-19
SLIDE 19

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Motion along z axis

  • ptical flow

for Scene 2 angle for Scene 2

19

slide-20
SLIDE 20

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Translational “canonical” flow angle fields

Optical flow angle fields for different translations

20

slide-21
SLIDE 21

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

z-motion example

21

slide-22
SLIDE 22

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

z-motion example

22

slide-23
SLIDE 23

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Segmentation using angle fields

Estimate which translations are present Estimate which pixels belong to each translation

  • ptical flow
  • bserved FOF

segmented labels

23

slide-24
SLIDE 24

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Translation only: An example

24

Translation portion of

  • ptical flow

Angle field of translation portion of

  • ptical flow
slide-25
SLIDE 25

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Translation only: An example

25

Translation Angle Field

slide-26
SLIDE 26

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Translation only: An example

26

Translation Angle Field Best fit to canonical Translation Angle Field

slide-27
SLIDE 27

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Translation only: An example

27

Translation Angle Field Best fit to canonical Translation Angle Field

closed form solution, by Bruss and Horn, 1983

slide-28
SLIDE 28

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Translation only: An example

28

Translation Angle Field Best fit to canonical Translation Angle Field Residual error

slide-29
SLIDE 29

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Mixture of Canonical Angle Fields

29

slide-30
SLIDE 30

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Generative model of flow orientations, Narayana et al. (ICCV 2013)

30

flow angle pixel coordinates segment 3D-direction associated with each segment

slide-31
SLIDE 31

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

So far...

Canonical angle fields result from translational motion. But how do we

Deal with camera rotation? Deal with noisy optical flow?

31

slide-32
SLIDE 32

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Example with rotational camera motion

32

Total

  • ptical flow

Angle field of total

  • ptical flow
slide-33
SLIDE 33

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Example with rotational camera motion

33

Total

  • ptical flow

Angle field of total

  • ptical flow

Foreground tree does not fit canonical angle field

slide-34
SLIDE 34

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Dealing with camera rotation

34

Does there exist a rotation field R, such that when R is subtracted from optical flow, the resulting flow angle field is close to a canonical translation angle field? flow angle

  • riginal frame
  • ptical flow
slide-35
SLIDE 35

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Finding the camera rotation

35

slide-36
SLIDE 36

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Finding the camera rotation

36

translation optimization

slide-37
SLIDE 37

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Finding the camera rotation

37

translation optimization Our own implementation: simple optimization in Matlab, calling Bruss and Horn as inner loop.

slide-38
SLIDE 38

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Subtracting off rotation

38

Angle field with rotation Angle field without rotation Estimated Rotation “Compensated flow” Original Opt. Flow

slide-39
SLIDE 39

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Pixels that don’t belong

39

  • =

translation field ideal translation field error image

slide-40
SLIDE 40

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Algorithm: main body

40

slide-41
SLIDE 41

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Algorithm Details

Initialization: Segment first frame Main body: Segment current frame given posteriors from previous frame

1. Compute optical flow 2. Compute motion component priors 3. Compute camera rotation, “subtract off” 4. Compute motion component likelihoods 5. Compute motion component posteriors

41

slide-42
SLIDE 42

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Algorithm Details

Initialization: Segment first frame Main body: Segment current frame given posteriors from previous frame

1. Compute optical flow 2. Compute motion component priors 3. Compute camera rotation, “subtract off” 4. Compute motion component likelihoods 5. Compute motion component posteriors

42

slide-43
SLIDE 43

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Optical Flow

Sun, Roth, and Black. “Secrets of Optical Flow Estimation and their Principles.” CVPR 2010.

43

slide-44
SLIDE 44

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Algorithm Details

Initialization: Segment first frame Main body: Segment current frame given posteriors from previous frame

1. Compute optical flow 2. Compute motion component priors 3. Compute camera rotation, “subtract off” 4. Compute motion component likelihoods 5. Compute motion component posteriors

44

slide-45
SLIDE 45

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Computing the Motion Component Priors

45

For each of k motion components Start with posterior from previous frame. “Flow forward” using optical flow from previous frame. Blur to reflect uncertainty in optical flow. Normalize at each pixel location to create proper prior.

slide-46
SLIDE 46

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Algorithm Details

Initialization: Segment first frame Main body: Segment current frame given posteriors from previous frame

1. Compute optical flow 2. Compute motion component priors 3. Compute camera rotation, “subtract off” 4. Compute motion component likelihoods 5. Compute motion component posteriors

46

slide-47
SLIDE 47

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Compute camera rotation

Use prior for background component to select pixels for nested optimization:

47

Use background prior to do weighted sum over background pixels.

slide-48
SLIDE 48

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Priors and Likelihoods

Next, at each pixel, estimate:

Priors for each motion component Likelihoods

48

slide-49
SLIDE 49

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Algorithm Details

Initialization: Segment first frame Main body: Segment current frame given posteriors from previous frame

1. Compute optical flow 2. Compute motion component priors 3. Compute camera rotation, “subtract off” 4. Compute motion component likelihoods 5. Compute motion component posteriors

49

slide-50
SLIDE 50

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Motion component likelihoods

50

slide-51
SLIDE 51

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Angle likelihoods

51

What does 2-D Gaussian noise do to the measured flow angle?

slide-52
SLIDE 52

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Modeling noisy flow angles with von Mises

52

slide-53
SLIDE 53

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Conditional flow angle likelihood

53

slide-54
SLIDE 54

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Conditional flow angle likelihood

54

One consequence: Very small optical flow vectors are uninformative

slide-55
SLIDE 55

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Algorithm Details

Initialization: Segment first frame Main body: Segment current frame given posteriors from previous frame

1. Compute optical flow 2. Compute motion component priors 3. Compute camera rotation, “subtract off” 4. Compute motion component likelihoods 5. Compute motion component posteriors

55

slide-56
SLIDE 56

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Motion component posteriors

Bayes rule (at each pixel position):

56

conditional angle likelihood motion component prior motion component posterior

slide-57
SLIDE 57

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Algorithm Details

Initialization: Segment first frame Main body: Segment current frame given posteriors from previous frame

1. Compute optical flow 2. Compute motion component priors 3. Compute camera rotation, “subtract off” 4. Compute motion component likelihoods 5. Compute motion component posteriors

57

slide-58
SLIDE 58

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Challenges of initialization

How to compute camera rotation and translation with no background prior? How to compute posteriors with no motion component priors?

58

slide-59
SLIDE 59

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

First frame camera rotation estimation

59

Use RANdom SAmple Consensus (RANSAC)

10 superpixels used to estimate rotation 5000 trials For 3 corners to be part of region Choose rotation with fewest outliers

slide-60
SLIDE 60

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Results: MCC scores

60

slide-61
SLIDE 61

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

61

Results

slide-62
SLIDE 62

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

62

slide-63
SLIDE 63

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

63

slide-64
SLIDE 64

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Results

64

slide-65
SLIDE 65

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Results

65

slide-66
SLIDE 66

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Results

66

slide-67
SLIDE 67

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Camouflage

67

slide-68
SLIDE 68

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Thanks

68

slide-69
SLIDE 69

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

Rotational flows: isomorphic to SO3

69

slide-70
SLIDE 70

UNIVERSITY OF MASSACHUSETTS, AMHERST • College of Computer and Information Sciences

More examples

70