78
Model Based Pose Estimation Gerard Pons-Moll and Bodo Rosenhahn Institute for Information Processing

Model Based Pose Estimation

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Model Based Pose Estimation

Model Based Pose Estimation

Gerard Pons-Moll and

Bodo Rosenhahn

Institute for Information Processing

Page 2: Model Based Pose Estimation

Title of the chapter

- Motion Analysis, Vicon (55+ Marker, 1000fps, Strobe-lights)

Overview

Page 3: Model Based Pose Estimation

Title of the chapter Overview • 3

Human pose estimation algorithms can be

classified in:

• Generative Models

- „explain the image“

• Discriminative Models

-„condition on the image“

Page 4: Model Based Pose Estimation

Title of the chapter

• Many degrees of freedom

• Highly Dynamic / Skinning/ Clothing / Outdoor

• Large variability and individuality of Motion patterns

http://www.google.de/images

Is it hard ?

Page 5: Model Based Pose Estimation

Title of the chapter

• Let us assume a model then:

• How to parameterize/represent the model ?

• How to optimize the model parameters ?

• What features are suited ?

http://www.google.de/images

Is it hard ?

Page 6: Model Based Pose Estimation

Title of the chapter Overview • 3

1) Kinematic parameterization - Rotation Matrices

- Euler Angles

- Quaternions

- Twists and Exponential maps

- Kinematic chains

2) Subject model - Geometric primitives

- Detailed Body Scans

- Human Shape models

3) Inference - Observation likelihood

- Local optimization

- Particle Based optimization

Page 7: Model Based Pose Estimation

Title of the chapter Human Motion • 3

Page 8: Model Based Pose Estimation

Title of the chapter

Motivated from robotics:

The human motion can be expressed via a „kinematic

chain“, a series of local rigid body motions (along the limbs).

Bregler et.al. CVPR-98

Kinematic Chains

The model parameters to optimize for are rigid

body motions.

How to model RBM ?

Page 9: Model Based Pose Estimation

Title of the chapter Parameterization 1) Pose configurations are represented with a

minimum number of parameters

2) Singularities can be avoided during

optimization

3) Easy computation of derivatives segment

positions and orientations w.r.t parameters

4) Human motion contrains such as

articulated motion are naturally described

5) Simple rules for concatenating motions

Page 10: Model Based Pose Estimation

Title of the chapter

A rigid body motion is an affine transformation that preserves distances

and orientations

Euclidean : (non linear)

Affine: (linear)

X =

0 B B @

a 1

a 2

a 3 1

1 C C A ! X ̀ =

µ R t

0 1

¶ X

R R T = I ; d e t ( R ) = 1

X =

0 @

a 1

a 2

a 3

1 A ! X ̀ = R X + t ; R 2 R 3 £ 3 ; t 2 R 3

Definition

Page 11: Model Based Pose Estimation

Title of the chapter Rotation Matrices • 3

S B

The columns of a rotation matrix are the

principal axis of one frame expressed relative

to another

Page 12: Model Based Pose Estimation

Title of the chapter 2 Views of Rotations • 3

Rotations can be interpreted either as

Coordinate

transformation

Relative motion

in time

Page 13: Model Based Pose Estimation

Title of the chapter Rotation matrix drawbacks

• Need for 9 numbers

• 6 additional constrains to ensure that the

matrix is orhtornormal

• Suboptimal for optimization

Page 14: Model Based Pose Estimation

Title of the chapter Euler Angles

• One of the most popular parameterizations

• Rotation is encoded as the successive

rotations about three principal axis

• Only 3 parameters to encode a rotation

• Derivatives easy to compute

Page 15: Model Based Pose Estimation

Title of the chapter Euler Angles

S

Page 16: Model Based Pose Estimation

Title of the chapter Euler Angles: confusion

Careful: Euler angles are a typical source of

confusion

When using Euler angles 2 things have to be

specified

1) Convention: X-Y-Z, Z-Y-X, Z-Y-Z …

2) Rotations about the static spatial frame or

the moving body frame

Page 17: Model Based Pose Estimation

Title of the chapter Euler Angles: drawbacks I

• Gimbal lock: When two of the axis align one

degree of freedom is lost !

• Parameterization is not unique

• Lots of conventions for Euler angles

Page 18: Model Based Pose Estimation

Title of the chapter Quaternions

• A quaternion has 4 components:

• They generalize complex numbers

with additional properties

• Unit length quaternions can be used to carry

out rotations. The set they form is called

Page 19: Model Based Pose Estimation

Title of the chapter Quaternions

• Quaternions can also be interpreted as a

scalar plus a 3-vector

Where

Page 20: Model Based Pose Estimation

Title of the chapter Quaternions

• Rotations can be carried away directly in

parameter space via the quaternion product:

- Concatenation of rotations:

- If we want to rotate a vector

where is the quat conjugate

Page 21: Model Based Pose Estimation

Title of the chapter Quaternions

Quaternions have no singularities

Derivatives exist and are linearly

independent

Quaternion product allows to perform

rotations

But all this comes at the expense of using

4 numbers instead of 3

- Enforce quadratic constrain

Page 22: Model Based Pose Estimation

Title of the chapter Axis-angle

For human motion modeling it is often needed

to specify the axis of rotation of a joint

Any rotation about the origin can be

expressed in terms of the axis of rotation

and the angle of rotation with the

exponential map

Page 23: Model Based Pose Estimation

Title of the chapter Lie Groups / Lie Algebras

Lie Group

M Lie algebra

exp

0M

Definition: A group is an n-dimensional Lie-group,

if the set of its elements can be represented as a

continuously differentiable manifold of dimension n,

on which the group product and inverse are

continuously differentiable functions as well

Page 24: Model Based Pose Estimation

Title of the chapter Lie Groups / Lie Algebras

= µ

µ ¡ s i n ( Á ) ¡ c o s ( Á ) c o s ( Á ) ¡ s i n ( Á )

¶ j 0

= µ

µ 0 ¡ 1 1 0

¶ = µ ^ !

s o ( 2 ) = f A 2 R 2 £ 2 j A = ¡ A T g

s o ( 2 ) =

µ c o s ( Á ) ¡ s i n ( Á ) s i n ( Á ) c o s ( Á )

¶ ; µ @

µ c o s ( Á ) ¡ s i n ( Á ) s i n ( Á ) c o s ( Á )

¶ j 0

Example:

(1)

(1) Is a time invariant linear differential equation which may be integrated to give:

If a body rotates at constant velocity about an axis, the velocity can be written as

q ( t ) = e x p ( ̂ ! t ) q ( 0 )

µ 0 ¡ 1 1 0

¶ µ 1

0

¶ =

µ 0

1

¶ ;

µ 0 ¡ 1 1 0

¶ µ 0

1

¶ =

µ ¡ 1 0

¶ _ q ( t ) = ^ ! q ( t )

Page 25: Model Based Pose Estimation

Title of the chapter Axis-angle

Given a vector the skew symetric matrix is

It is the matrix form of the cross-product:

You will also find

it as

Page 26: Model Based Pose Estimation

Title of the chapter Exponential map

Proof: exponential map

If we rotate units of time

Page 27: Model Based Pose Estimation

Title of the chapter Exponential map

Exploiting the properties of skew symetric

matrices

Rodriguez formula

Closed form!

Page 28: Model Based Pose Estimation

Title of the chapter Twists

What about translation ?

The twist coordinates are defined as

And the twist is defined as

Page 29: Model Based Pose Estimation

Title of the chapter Exponential map

The rigid body motion can be computed in

closed form as well

From the following formula

Page 30: Model Based Pose Estimation

Title of the chapter Ranking

Number of

parameters

Singularities Human

constraints

Concatenate

motion

Optimization

(derivatives)

Twists Quaternions Twists Quaternions Twists

Euler Angles Twists Quaternions Twists Euler Angles

Quaternions Euler Angles Euler Angles Euler Angles Quaternions

Page 31: Model Based Pose Estimation

Title of the chapter Overview • 3

1) Kinematic parameterization - Rotation Matrices

- Euler Angles

- Quaternions

- Twists and Exponential maps

- Kinematic chains

2) Subject model - Geometric primitives

- Detailed Body Scans

- Human Shape models

3) Inference - Observation likelihood

- Local optimization

- Particle Based optimization

Page 32: Model Based Pose Estimation

Title of the chapter Articulation

S

B

In a rest position we have

Page 33: Model Based Pose Estimation

Title of the chapter Articulation

S

Page 34: Model Based Pose Estimation

Title of the chapter Articulation

S

Page 35: Model Based Pose Estimation

Title of the chapter Articulation

S

The coordinates of the point in the

spatial frame

Page 36: Model Based Pose Estimation

Title of the chapter Product of exponentials

Product of exponentials formula

is the mapping from coordinate B

to coordiante S

BUT IS NOT the mapping from

segment i+1 to segment i.

Think of simply as the relative

motion of that joint

Page 37: Model Based Pose Estimation

Title of the chapter Inverse Kinematics

£Thatisatest

Supose we want to find the angles to reach

a specific goal

Page 38: Model Based Pose Estimation

Title of the chapter Inverse Kinematics

£Thatisatest

Supose we want to find the angles to reach

a specific goal

• The problem is non-linear

• Linearize with the

articulated Jacobian

Page 39: Model Based Pose Estimation

Title of the chapter Articulated Jacobian

The Jacobian using twists is extremely simple

and easy to compute

1) Every column corresponds to the

contribution of i-th joint to the end-effector

motion

2) Maps an increment of joint angles to the

end-effector twist

Page 40: Model Based Pose Estimation

Title of the chapter Articulated Jacobian

B

Intuition: Linear combination of twists

Page 41: Model Based Pose Estimation

Title of the chapter Articulated Jacobian

Intuition: Linear combination of twists

Page 42: Model Based Pose Estimation

Title of the chapter Articulated Jacobian

Intuition: Linear combination of twists

Page 43: Model Based Pose Estimation

Title of the chapter Pose Parameters

Pose parameters: root + joint

angles

Page 44: Model Based Pose Estimation

Title of the chapter Pose Jacobian

Maps increments in the pose parameters to

increments in end-effector position

6 columns of

Root

N columns for

one per joint

Page 45: Model Based Pose Estimation

Title of the chapter Overview • 3

1) Kinematic parameterization - Rotation Matrices

- Euler Angles

- Quaternions

- Twists and Exponential maps

- Kinematic chains

2) Subject model - Geometric primitives

- Detailed Body Scans

- Human Shape models

3) Inference - Observation likelihood

- Local optimization

- Particle Based optimization

Page 46: Model Based Pose Estimation

Title of the chapter Geometric primitives 2D 3D

Kjellström et.al.

Sigal et.al.

Kehl and Van Gool

Sminchisescu and Triggs

Felzenszwalb et.al

Ramanan et.al.

Andriluka et.al.

Plaenkers and Fua

Cylinders Ellipsoids Gaussian

Blobs

Page 47: Model Based Pose Estimation

Title of the chapter Detailed models

Pons-Moll et.al.

Rosehnahn et.al.

Hasler et.al.

Aguiar et.al.

Gall et.al

Cagniart et.al.

Rigged Subject Scan Free form Surface

~ 30 DoF

- Kinematic model

- > 1000 DoF

- with ++ constrains

Page 48: Model Based Pose Estimation

Title of the chapter Model Rigging

Skinning Animate

Skeletton

Non-rigid

registration

Page 49: Model Based Pose Estimation

Title of the chapter Fit a template

Correspondences of pairwise points

with similar local regions and similar

geodesic distances

Template Point cloud

Anguelov et.al

Loopy belief

propagation

Page 50: Model Based Pose Estimation

Title of the chapter Non-rigid registration

Distance term Smoothness term

Least squares

3x4 affine matrix

Page 51: Model Based Pose Estimation

Title of the chapter Shape and Pose models

Ballan et.al

Guan et.al

Hasler et.al SCAPE

Hasler et.al

Anguelov et.al

Infer model parameters

from images

Learn a PCA model of shape

Page 52: Model Based Pose Estimation

Title of the chapter Overview • 3

1) Kinematic parameterization - Rotation Matrices

- Euler Angles

- Quaternions

- Twists and Exponential maps

- Kinematic chains

2) Subject model - Geometric primitives

- Detailed Body Scans

- Human Shape models

3) Inference - Observation likelihood

- Local optimization

- Particle Based optimization

Page 53: Model Based Pose Estimation

Title of the chapter Inference

Optimization Bayesian models

Generative models

Posterior Likelihood Prior

Map of Approx. with

weighted samples

Page 54: Model Based Pose Estimation

Title of the chapter Optimization

Extract features Predict and

match

Optimize

Page 55: Model Based Pose Estimation

Title of the chapter Image features

• Silhouettes

• Edges

• Distance transforms

• SIFT

• Optic flow

• Appearance

• …

Any feature that can be predicted from the

model and is fast to compute

Page 56: Model Based Pose Estimation

Title of the chapter Optimization

O

Project model

Image features

Optimize Model-Image

Page 57: Model Based Pose Estimation

Title of the chapter Matching

1) Look along normal model

contour directions 2) Discretize and match

TIPS:

1) Match image to model and model to image

2) Careful removing outliers

Page 58: Model Based Pose Estimation

Title of the chapter Least squares

Model

predictions

Image

observations

Assuming Gaussian distribution it is

equivalent to a MAP estimate

Page 59: Model Based Pose Estimation

Title of the chapter Least squares

Express the problem in vector form

Residual for match 1

Page 60: Model Based Pose Estimation

Title of the chapter Local Optimization

Take a step in that

direction

Gradient ~Hessian

Page 61: Model Based Pose Estimation

Title of the chapter Jacobian

O

C

1) Pose

2) World-camera

transformation

3) Projection

1 2 3

Page 62: Model Based Pose Estimation

Title of the chapter Other likelihoods

2D-3D error

point-to-line distance

3D-3D error

point-to-point distance

Page 63: Model Based Pose Estimation

Title of the chapter Distance transforms

inconsistent consistent

1) Push model inside silhouette

2) Force the model to explain the image

Distance transform + overlapp term

Sminchisescu F & G 2001

Page 64: Model Based Pose Estimation

Title of the chapter Region based

Region-based Optical flow

Bregler and Malik

Parameterize flow with human

motion model Use model as region mask Q that

separates foreground from

background

Rosenhahn et.al.

Page 65: Model Based Pose Estimation

Title of the chapter Local optimization

It is fast and accurate

Prone to local minima

Requires initialization

Matching cost is ambiguous

Single hypothesis propagated

Page 66: Model Based Pose Estimation

Title of the chapter Overview • 3

1) Kinematic parameterization - Rotation Matrices

- Euler Angles

- Quaternions

- Twists and Exponential maps

- Kinematic chains

2) Subject model - Geometric primitives

- Detailed Body Scans

- Human Shape models

3) Inference - Observation likelihood

- Local optimization

- Particle Based inference

Page 67: Model Based Pose Estimation

Title of the chapter Particle Filter

• Once I know , is independent on previous measurements

Image observations at t

State space, pose parameters at t

First order Markov

process

• Once I know the state, the new measurement becomes

independent on the others

Page 68: Model Based Pose Estimation

Title of the chapter Particle Filter

Distribution approximated with a set of

weighted samples

Page 69: Model Based Pose Estimation

Title of the chapter Particle Filter

Posterior t-1

Posterior t

Temporal Dynamics

Diffusion

Page 70: Model Based Pose Estimation

Title of the chapter Particle Filter

Condensation, Isaard and Blake 1996

Page 71: Model Based Pose Estimation

Title of the chapter Resampling

Resample with

probability equal to

the weights

Page 72: Model Based Pose Estimation

Title of the chapter Sampling

sample weight

weight

Page 73: Model Based Pose Estimation

Title of the chapter Problems

Observation likelihood is highly multimodal !

1) Multiple optima

2) Huge search space

Video from Sminchisescu and Triggs

Page 74: Model Based Pose Estimation

Title of the chapter Annealed Particle Filter

Iteratively evaluate smooth versions of

Particles reduced by

a factor >10

Less prone to local

optima

Not as robust as

Bayesian

Still computationaly

expensive

Deutscher et.al.

Gall et.al.

weight

diffuse

resample

Page 75: Model Based Pose Estimation

Title of the chapter Efficient sampling I

Likelihood levelsets

Samples

Localy optimize every

sample of MCMC

Cho and Fleet

Hybrid MCMC

Page 76: Model Based Pose Estimation

Title of the chapter Efficient sampling II

Covariance Scaled Sampling

Scatter particles along cost

function valley

Explore high dimensional

space more efficiently

Dedicates some particles to

explore globaly

Sminchisescu and Triggs

Page 77: Model Based Pose Estimation

Title of the chapter Discussion

Generative modeling:

- Need to model Kinematics

- Need to model Shape

- Need to model Observation Likelihood

- Texture

- Ilumination

- ufff lots of work so …

IS THIS THE END OF GENERATIVE ?

Page 78: Model Based Pose Estimation

Title of the chapter End of Generative ?

Well, depends on the application…

In totaly uncontrolled scenarios will never work!

But the accuracy is still higher and they

generalize to complex motions better than

discriminative approaches

Useful as refinement stage coupled with

discriminative initialization