Video based Animation Synthesis with the Essential Graph Adnane - - PowerPoint PPT Presentation

video based animation synthesis with the essential graph
SMART_READER_LITE
LIVE PREVIEW

Video based Animation Synthesis with the Essential Graph Adnane - - PowerPoint PPT Presentation

Video based Animation Synthesis with the Essential Graph Adnane Boukhayma, Edmond Boyer MORPHEO INRIA Grenoble Rhne-Alpes Goal Given a set of 4D models, how to generate realistic motion from user specified constraints ? Output: Input:


slide-1
SLIDE 1

Video based Animation Synthesis with the Essential Graph

Adnane Boukhayma, Edmond Boyer MORPHEO INRIA Grenoble Rhône-Alpes

slide-2
SLIDE 2

Goal

Input:

  • Video based 4D models of elementary

movements

Output:

  • Novel, user guided shape and appearance

animation

2 ¡

Given a set of 4D models, how to generate realistic motion from user specified constraints ?

¡

slide-3
SLIDE 3

Motivation

Game Of Thrones, HBO Rise of the Tomb Raider, Cristal Dynamics

Human animation generation:

Where:

  • Digital media production :

– Video Game industry – Motion Picture industry – Virtual Reality applications

3 ¡

slide-4
SLIDE 4

How:

  • Physical modeling:

– Computationally expensive – Model limitations

Motivation

4 ¡

Game Of Thrones, HBO Rise of the Tomb Raider, Cristal Dynamics

Human animation generation:

Where:

  • Digital media production :

– Video Game industry – Motion Picture industry – Virtual Reality applications

slide-5
SLIDE 5

How:

  • Physical modeling:

– Computationally expensive – Model limitations

  • Example data Reuse:

– Key-framing data:

  • Cost-wise expensive: 100-250$ / character second
  • Time-wise expensive: 2-3 seconds of finished character animation per day

Motivation

5 ¡

Game Of Thrones, HBO Rise of the Tomb Raider, Cristal Dynamics

Human animation generation:

Where:

  • Digital media production :

– Video Game industry – Motion Picture industry – Virtual Reality applications

slide-6
SLIDE 6

How:

  • Physical modeling:

– Computationally expensive – Model limitations

  • Example data Reuse:

– Key-framing data:

  • Cost-wise expensive: 100-250$ / character second
  • Time-wise expensive: 2-3 seconds of finished character animation per day

Motivation

Game Of Thrones, HBO Rise of the Tomb Raider, Cristal Dynamics

Synthetic Motion

Human animation generation:

Where:

  • Digital media production :

– Video Game industry – Motion Picture industry – Virtual Reality applications

6 ¡

slide-7
SLIDE 7

How:

  • Physical modeling:

– Computationally expensive – Model limitations

  • Example data Reuse:

– Key-framing data:

  • Cost-wise expensive: 100-250$ / character second
  • Time-wise expensive: 2-3 seconds of finished character animation per day

– Motion capture data:

ü Real Motion

Motivation

7 ¡

Game Of Thrones, HBO Rise of the Tomb Raider, Cristal Dynamics

Synthetic Motion

CMU mocap dataset

Human animation generation:

Where:

  • Digital media production :

– Video Game industry – Motion Picture industry – Virtual Reality applications

slide-8
SLIDE 8

How:

  • Physical modeling:

– Computationally expensive – Model limitations

  • Example data Reuse:

– Key-framing data:

  • Cost-wise expensive: 100-250$ / character second
  • Time-wise expensive: 2-3 seconds of finished character animation per day

– Motion capture data:

ü Real Motion

Motivation

8 ¡

Game Of Thrones, HBO Rise of the Tomb Raider, Cristal Dynamics

Synthetic Motion Synthetic Shape

CMU mocap dataset 3D character animated with mocap

Human animation generation:

Where:

  • Digital media production :

– Video Game industry – Motion Picture industry – Virtual Reality applications

slide-9
SLIDE 9

How:

  • Physical modeling:

– Computationally expensive – Model limitations

  • Example data Reuse:

– Key-framing data:

  • Cost-wise expensive: 100-250$ / character second
  • Time-wise expensive: 2-3 seconds of finished character animation per day

– Motion capture data:

ü Real Motion

– Surface capture data:

ü Real Motion ü Real Shape ü Real Appearance

Motivation

9 ¡

Game Of Thrones, HBO Rise of the Tomb Raider, Cristal Dynamics

Synthetic Motion Synthetic Shape

CMU mocap dataset 3D character animated with mocap 4D model, Thomas dataset

Human animation generation:

Where:

  • Digital media production :

– Video Game industry – Motion Picture industry – Virtual Reality applications

slide-10
SLIDE 10

Surface Capture Reuse

10 ¡

Surface Reconstruction Appearance projection on geometry

Multi-view videos

Surface temporal tracking

  • Mesh sequence

with time-variant topology

  • Mesh sequence with

time-consistent topology

  • 4D textured

model

slide-11
SLIDE 11

Surface Capture Reuse

Data:

  • Cyclic human movements: walk, run, jump, etc.
  • Acyclic human movements: dance.

11 ¡

Surface Reconstruction Appearance projection on geometry

Multi-view videos

Surface temporal tracking

  • Mesh sequence

with time-variant topology

  • Mesh sequence with

time-consistent topology

  • 4D textured

model

Thomas, Cathy

slide-12
SLIDE 12

Surface Capture Reuse

Data:

  • Cyclic human movements: walk, run, jump, etc.
  • Acyclic human movements: dance.

12 ¡

Data Reuse: Generate continuous motion stream using basic operations on motion segments:

  • Rigid transformations
  • Concatenation
  • Smooth transition generation

Thomas, Cathy

Surface Reconstruction Appearance projection on geometry

Multi-view videos

Surface temporal tracking

  • Mesh sequence

with time-variant topology

  • Mesh sequence with

time-consistent topology

  • 4D textured

model

slide-13
SLIDE 13

13 ¡

Issues and challenges

User control:

Ÿ Intuitive formulation of user defined constraints

Data organization:

Ÿ A data structure organizing the input sequences and encoding selected transitions between them

Motion synthesis:

Ÿ Generating synthetic motion transitions. Ÿ Concatenating real and synthetic motion segments.

Numerical realism criterion:

Ÿ Transition evaluation

slide-14
SLIDE 14

14 ¡

Issues and challenges

Challenges :

  • Limited data:
  • Make exhaustive use of it
  • User perceptual acuity:
  • Reliable numerical realism criterion
  • Optimal results in terms of said criterion

¡

  • Sensitive data:
  • Robust mesh processing technique
  • Complex dynamics:
  • Robust transition generation technique

¡

User control:

Ÿ Intuitive formulation of user defined constraints

Data organization:

Ÿ A data structure organizing the input sequences and encoding selected transitions between them

Motion synthesis:

Ÿ Generating synthetic motion transitions. Ÿ Concatenating real and synthetic motion segments.

Numerical realism criterion:

Ÿ Transition evaluation

slide-15
SLIDE 15

Comparison of Graph Based Approaches

15 ¡

Input data Automatic/ supervised Data organization

Motion Graph(kovar02)(Arikan02) Motion Capture automatic Motion graph Surface Motion Graph(Huang09) 3D Surface Capture automatic Motion graph 4D Parametric Motion Graph(Casas13) 4D Surface Capture supervised Parametric motion graph Essential Graph(Boukhayma et. Boyer15) 4D Surface Capture automatic Essential graph

slide-16
SLIDE 16

16 ¡

Contributions

  • Improving realism in synthetic motion transitions through dynamic time

warping and variable length blended segments

  • An optimal structure for motion data organization and reuse:

The essential graph

  • A novel high-level constraint formulation for motion synthesis:

3D behavioral path synthesis

slide-17
SLIDE 17

17 ¡

Approach

Motion synthesis pipeline :

slide-18
SLIDE 18

18 ¡

Input Data Organization

slide-19
SLIDE 19

Graph structure:

  • Node = frame/pose
  • Edge = transition
  • Edge weight = transition cost

19 ¡

Input sequences

Input Data Organization

slide-20
SLIDE 20

Graph structure:

  • Node = frame/pose
  • Edge = transition
  • Edge weight = transition cost

We need to add new transitions :

20 ¡

Input sequences

Input Data Organization

slide-21
SLIDE 21

Graph structure:

  • Node = frame/pose
  • Edge = transition
  • Edge weight = transition cost

Motion Graph(kovar02)

  • Adding edges

– Local minima in similarity matrix – Threshloding

21 ¡

Input sequences Similarity matrix,

Input Data Organization

slide-22
SLIDE 22

Graph structure:

  • Node = frame/pose
  • Edge = transition
  • Edge weight = transition cost

Motion Graph(kovar02)

  • Adding edges

– Local minima in similarity matrix – Threshloding

22 ¡

Input sequences Similarity matrix,

Input Data Organization

slide-23
SLIDE 23

Graph structure:

  • Node = frame/pose
  • Edge = transition
  • Edge weight = transition cost

Motion Graph(kovar02)

  • Adding edges

– Local minima in similarity matrix – Threshloding

23 ¡

Input sequences Similarity matrix,

Input Data Organization

slide-24
SLIDE 24

Graph structure:

  • Node = frame/pose
  • Edge = transition
  • Edge weight = transition cost

Motion Graph(kovar02)

  • Adding edges

– Local minima in similarity matrix – Threshloding

  • Improvements

– Interpolated Motion Graph(Sofanova07) – Well-Connected Motion Graph(Zhao08) – Optimization-based Motion Graph(Ren10)

24 ¡

Input sequences Similarity matrix,

Input Data Organization

slide-25
SLIDE 25

25 ¡

Essential Graph

  • Creating a complete digraph

– Connecting all nodes together with directed edges and transition costs as weights

Essential graph

Complete digraph Input sequences

slide-26
SLIDE 26

26 ¡

Essential Graph

  • Creating a complete digraph

– Connecting all nodes together with directed edges and transition costs as weights

  • Extracting the essential sub-graph

– For each node

  • Calculate the shortest path tree rooted at said

node

Complete digraph Input sequences

Essential graph

slide-27
SLIDE 27

27 ¡

Essential Graph

  • Creating a complete digraph

– Connecting all nodes together with directed edges and transition costs as weights

  • Extracting the essential sub-graph

– For each node

  • Calculate the shortest path tree rooted at said

node shortest path tree: the path distance from the root to any vertex in the tree is the shortest path from the root to the vertex in the complete digraph

Complete digraph Input sequences

Essential graph

slide-28
SLIDE 28

28 ¡

Essential Graph

  • Creating a complete digraph

– Connecting all nodes together with directed edges and transition costs as weights

  • Extracting the essential sub-graph

– For each node

  • Calculate the shortest path tree rooted at said

node – Union of shortest path trees rooted at every node – This structure encodes all the optimal transitions with respect to the transition cost

Complete digraph Essential graph Input sequences

shortest path tree: the path distance from the root to any vertex in the tree is the shortest path from the root to the vertex in the complete digraph

Essential graph

slide-29
SLIDE 29

Motion Graph vs Essential Graph

Comparative case study:

D E F A 7 5 5 B 7 2 5 C 7 4 3 A B C F E D 2 1 3 2

29 ¡

slide-30
SLIDE 30

Motion Graph vs Essential Graph

Comparative case study:

D E F A 7 5 5 B 7 2 5 C 7 4 3 A B C F E D 2 1 3 2

Motion graph 30 ¡

slide-31
SLIDE 31

Motion Graph vs Essential Graph

Comparative case study:

D E F A 7 5 5 B 7 2 5 C 7 4 3 A B C F E D 2 1 3 2

Motion graph

Shortest path tree rooted at A

¡

31 ¡

slide-32
SLIDE 32

Motion Graph vs Essential Graph

Comparative case study:

D E F A 7 5 5 B 7 2 5 C 7 4 3 A B C F E D 2 1 3 2

Motion graph

Shortest path tree rooted at A

¡

Shortest path tree rooted at B

¡

32 ¡

slide-33
SLIDE 33

Motion Graph vs Essential Graph

Comparative case study:

D E F A 7 5 5 B 7 2 5 C 7 4 3 A B C F E D 2 1 3 2

Motion graph

Shortest path tree rooted at A

¡

Shortest path tree rooted at B

¡

Shortest path tree rooted at C

¡

33 ¡

slide-34
SLIDE 34

Motion Graph vs Essential Graph

Comparative case study:

D E F A 7 5 5 B 7 2 5 C 7 4 3 A B C F E D 2 1 3 2

Motion graph Essential graph

¡ ¡

+ ¡ + ¡ = ¡

Shortest path tree rooted at A

¡

Shortest path tree rooted at B

¡

Shortest path tree rooted at C

¡

34 ¡

slide-35
SLIDE 35

Motion Graph vs Essential Graph

Comparative case study:

D E F A 7 5 5 B 7 2 5 C 7 4 3 A B C F E D 2 1 3 2

Motion graph Shortest path from A to F: 6

¡

Shortest path from D to C: 6 Essential graph

¡ ¡

+ ¡ + ¡ = ¡

Shortest path tree rooted at A

¡

Shortest path tree rooted at B

¡

Shortest path tree rooted at C

¡

35 ¡

slide-36
SLIDE 36

Motion Graph vs Essential Graph

Comparative case study:

D E F A 7 5 5 B 7 2 5 C 7 4 3 A B C F E D 2 1 3 2

Motion graph Shortest path from A to F: 6

¡

Shortest path from D to C: 6 Essential graph

¡ ¡

+ ¡ + ¡ = ¡

Shortest path from A to F: 4

¡ ¡ ¡

Shortest path from E to C: 5

¡

Shortest path tree rooted at A

¡

Shortest path tree rooted at B

¡

Shortest path tree rooted at C

¡

36 ¡

slide-37
SLIDE 37

37 ¡

Input Data Organization

Original frames Synthetic frames Thomas dataset

slide-38
SLIDE 38

38 ¡

Transition Costs

Motion synthesis pipeline :

slide-39
SLIDE 39

Transition Costs

Edge weight = transition cost in terms of Realism criterion:

Ei, j

realism

! =

Di, j

surface deformation

!

+α Li, j

duration

!

39 ¡

slide-40
SLIDE 40

Transition Costs

Edge weight = transition cost in terms of Realism criterion:

Ei, j

realism

! =

Di, j

surface deformation

!

+α Li, j

duration

!

Interpolated Transition: Source and target motion segments gradual blending

  • Dynamic time warping
  • Variable length blended segments

40 ¡

slide-41
SLIDE 41

Transition Costs

Edge weight = transition cost in terms of Realism criterion:

Ei, j

realism

! =

Di, j

surface deformation

!

+α Li, j

duration

!

Interpolated Transition: Source and target motion segments gradual blending

  • Dynamic time warping
  • Variable length blended segments

Finding segment lengths li and lj, and temporal warps wi and wj that minimize the total surface deformation cost: Function d(.,.) is a static pose distance.

D(i, j) = min

li,l j∈ lmin,lmax

[ ]min

wi,w j

d(wi

−1(t),w j −1(t))

t∈ 0,L

[ ]

Dynalic Time Warping

! " ### # $ ####

41 ¡

slide-42
SLIDE 42

Transition Costs

Edge weight = transition cost in terms of Realism criterion:

Ei, j

realism

! =

Di, j

surface deformation

!

+α Li, j

duration

!

Interpolated Transition: Source and target motion segments gradual blending

  • Dynamic time warping
  • Variable length blended segments

Motion synthesis level:

  • Pose interpolation of matched frame

along the transition

  • Global displacements interpolation

42 ¡

slide-43
SLIDE 43

43 ¡

Pose distance and interpolation

Motion synthesis pipeline :

slide-44
SLIDE 44

Pose distance and interpolation

Skeleton parameterization for Mo-cap data: Riemannian manifold:

SO(3)

njoints

44 ¡

slide-45
SLIDE 45

Pose distance and interpolation

Skeleton parameterization for Mo-cap data: Riemannian manifold:

  • Pose metric

SO(3)

njoints

1 2

njoints

log(R

1 −1R2) F

45 ¡

slide-46
SLIDE 46

Pose distance and interpolation

Skeleton parameterization for Mo-cap data: Riemannian manifold:

  • Pose metric
  • Geodesic pose interpolation

SO(3)

njoints

1 2

njoints

log(R

1 −1R2) F

R

1eλ log(R1

−1R2 )

46 ¡

slide-47
SLIDE 47

Pose distance and interpolation

Skeleton parameterization for Mo-cap data: Skeleton parametrization for surfacic data:

  • Mesh Ensemble Motion Graph(James07)
  • One-to-Many(Zheng13)

Riemannian manifold:

  • Pose metric
  • Geodesic pose interpolation

SO(3)

njoints

1 2

njoints

log(R

1 −1R2) F

R

1eλ log(R1

−1R2 )

LBS skinning, Zheng13 Articulated plant model, James07

47 ¡

slide-48
SLIDE 48

Pose distance and interpolation

Skeleton parameterization for Mo-cap data: Skeleton parametrization for surfacic data:

  • Mesh Ensemble Motion Graph(James07)
  • One-to-Many(Zheng13)

Drawbacks

– Robust identification of an underlying skeleton structure is difficult – Realism loss due to articulated model limitation

Riemannian manifold:

  • Pose metric
  • Geodesic pose interpolation

SO(3)

njoints

1 2

njoints

log(R

1 −1R2) F

R

1eλ log(R1

−1R2 )

LBS skinning, Zheng13 Articulated plant model, James07

48 ¡

slide-49
SLIDE 49

Pose distance and interpolation

Skeleton parameterization for Mo-cap data: Skeleton parametrization for surfacic data:

  • Mesh Ensemble Motion Graph(James07)
  • One-to-Many(Zheng13)

Drawbacks

– Robust identification of an underlying skeleton structure is difficult – Realism loss due to articulated model limitation

Surface based parametrization for surfacic data:

  • Surface Motion Graph(Huang09)
  • 4D Parametric Motion Graph(Casas13) (Heck07)(Shin06)

Riemannian manifold:

  • Pose metric
  • Geodesic pose interpolation

SO(3)

njoints

1 2

njoints

log(R

1 −1R2) F

R

1eλ log(R1

−1R2 )

LBS skinning, Zheng13 Articulated plant model, James07 Parametric motion graph, Casas 13

49 ¡

slide-50
SLIDE 50

Pose distance and interpolation

Euclidean Parametrization

  • Pose metric : sum of squared Euclidean distances between vertices
  • pose interpolation : linear interpolation of vertices coordinates

ℜ3×nvertices

50 ¡

slide-51
SLIDE 51

Pose distance and interpolation

Euclidean Parametrization

  • Pose metric : sum of squared Euclidean distances between vertices
  • pose interpolation : linear interpolation of vertices coordinates

Drawbacks

– Rigid Alignment residual error do not account for mesh geometry – Linear mesh interpolation introduces surface distortion

ℜ3×nvertices

51 ¡

slide-52
SLIDE 52

Pose distance and interpolation

Euclidean Parametrization

  • Pose metric : sum of squared Euclidean distances between vertices
  • pose interpolation : linear interpolation of vertices coordinates

Drawbacks

– Rigid Alignment residual error do not account for mesh geometry – Linear mesh interpolation introduces surface distortion

Surface Deformation based Parameterization for 3D triangular meshes: Polar decomposition of Deformation Gradients: Riemannian manifold:

T = R.S

T = (v1 − v3,v2 − v3,n)−1.(v'1− v'3,v'2− v'3,n')

(T

1,..,Tmtriangles ) ∈ (SO(3)× S++ 3) mtriangles

ℜ3×nvertices

52 ¡

slide-53
SLIDE 53

Pose distance and interpolation

Euclidean Parametrization

  • Pose metric : sum of squared Euclidean distances between vertices
  • pose interpolation : linear interpolation of vertices coordinates

Drawbacks

– Rigid Alignment residual error do not account for mesh geometry – Linear mesh interpolation introduces surface distortion

Surface Deformation based Parameterization for 3D triangular meshes: Polar decomposition of Deformation Gradients: Riemannian manifold:

  • Pose metric

T = R.S

T = (v1 − v3,v2 − v3,n)−1.(v'1− v'3,v'2− v'3,n')

(T

1,..,Tmtriangles ) ∈ (SO(3)× S++ 3) mtriangles

d(.,.) = 1 2

mtriangles

log(R) F + log(S) F

( )

ℜ3×nvertices

53 ¡

slide-54
SLIDE 54

Pose distance and interpolation

Euclidean Parametrization

  • Pose metric : sum of squared Euclidean distances between vertices
  • pose interpolation : linear interpolation of vertices coordinates

Drawbacks

– Rigid Alignment residual error do not account for mesh geometry – Linear mesh interpolation introduces surface distortion

Surface Deformation based Parameterization for 3D triangular meshes: Polar decomposition of Deformation Gradients: Riemannian manifold:

  • Pose metric
  • Pose interpolation
  • Geodesic transformation interpolation
  • Gradient deformation with interpolated transformation
  • 3D Poisson Shape reconstruction

T = R.S

T = (v1 − v3,v2 − v3,n)−1.(v'1− v'3,v'2− v'3,n')

(T

1,..,Tmtriangles ) ∈ (SO(3)× S++ 3) mtriangles

d(.,.) = 1 2

mtriangles

log(R) F + log(S) F

( )

! T = eλ log(R).eλ log(S)

ℜ3×nvertices

54 ¡

slide-55
SLIDE 55

55 ¡

User guided animation synthesis

Motion synthesis pipeline :

slide-56
SLIDE 56

User guided animation synthesis

Motion extraction casted as a graph search problem and solved using depth first search with Branch and bound

Cost function and halting condition Motion stream Min-cost graph walk High-level Constraint

56 ¡

slide-57
SLIDE 57

User guided animation synthesis

  • Motion Stream

– Concatenate original and interpolated motion segments – Rigid alignment at segment junctions

Motion extraction casted as a graph search problem and solved using depth first search with Branch and bound

Cost function and halting condition Motion stream Min-cost graph walk High-level Constraint

57 ¡

slide-58
SLIDE 58

User guided animation synthesis

  • Motion Stream

– Concatenate original and interpolated motion segments – Rigid alignment at segment junctions

  • High Level constraints

– 3d behavioral path synthesis

  • Follow a 3D path, behave as precised at some parts
  • Adapted to locomotion data

– Pose/time constraint

  • reach specific poses at specific times
  • Adapted to unstructured acyclic motion

Motion extraction casted as a graph search problem and solved using depth first search with Branch and bound

Cost function and halting condition Motion stream Min-cost graph walk High-level Constraint

3D behavioral path synthesis 2D path synthesis

58 ¡

slide-59
SLIDE 59

59 ¡

User guided motion synthesis

slide-60
SLIDE 60

60 ¡

User guided motion synthesis

slide-61
SLIDE 61

61 ¡

User guided motion synthesis

slide-62
SLIDE 62

Conclusion

  • Realistic shape and appearance animation generation from user specified constraints
  • Contributions:

– An optimal structure for motion data organization and reuse – A method for improving realism in motion transitions – A novel high level constraint formulation

  • Limitations:

– Foot skate

  • Future work:

– Data annotation – Texture interpolation – More Data : Motion warping, Motion transfert, Merging parts motion.

62 ¡

slide-63
SLIDE 63

63 ¡

Thank You !