Transcript

Drawing a Skeleton Fast FromMotion Capture Data

Jonathan Kipling Knight

Nov 7, 2006

7 Nov 2006 JKK 2

Introduction

• Purpose

• Motion Capture

• Data Files

• Skeleton Formation

• Closed Form Solution

• Conclusion

7 Nov 2006 JKK 3

Purpose

• Draw an articulated framework of solid segments connected by joints.

• Use live data capture to draw figure.

7 Nov 2006 JKK 4

Motion Capture

• Magnetic Trackers• Position and Orientation Transmitted

• Light Dots• 3D Position if in view

• Figure Tracking• Computer vision and image analysis

7 Nov 2006 JKK 5

Motion Capture Session

05_05

QuickTime™ and aYUV420 codec decompressor

are needed to see this picture.

7 Nov 2006 JKK 6

Data Files

• No international standard• Proprietary, semi-open formats

• C3D oldest from Dr. Andrew Dainis• Bad Data

• Users partially fill fields• Units incorrect• Frame rate incorrect• Signed/unsigned mismatches

7 Nov 2006 JKK 7

Producing a Skeleton

• Single Time Frame• Produce position, size and orientation of

each segment• Markers are fixed 3D positions on segment• Orientation is included with magnetic

trackers• Rotation Points are fixed on TWO

segments but are not in data

7 Nov 2006 JKK 8

Producing a Skeleton

• How to Move Between Frames• Inverse Kinematics popular• Forward and Inverse Kinetics• Closed Form Solutions

7 Nov 2006 JKK 9

Inverse Kinematics

• What joint angles are needed to get to next position and orientation?

• Good for filling in large frame gaps

• Sometimes more than one answer

7 Nov 2006 JKK 10

Inverse Kinematics Example

QuickTime™ and aCinepak decompressor

are needed to see this picture.

7 Nov 2006 JKK 11

Closed Form Solution

• Requires 1-3 positions on each segment

• Each frame independently drawn

• Quickest O(26N)

• As accurate as data O(/N)

7 Nov 2006 JKK 12

Segment Tree

• Root segment usually hips

• Leaf segments hands, head and feet

• No loops

Root

Leaves

7 Nov 2006 JKK 13

Solve Sphere at Each Joint

• One marker on child produces sphere around joint relative to parent

• Must know orientation of parent• 1-3 markers needed or• Magnetic trackers

7 Nov 2006 JKK 14

Three Point Orientation

• Three Orthogonal Axes

rx =

r p 2 −

r p 1

rz =

r x ×

r p 3 −

r p 1( )

ry =

r z ×

r x

7 Nov 2006 JKK 15

Two Point Orientation

• Three Orthogonal Axes

rx =

r p 2 −

r p 1

rz =

r x ×

r c −

r p 1( )

ry =

r z ×

r x

7 Nov 2006 JKK 16

One Point Orientation

• Three Orthogonal Axes

rx =

r c −

r p 1

rz =

r x ×

r n

ry =

r z ×

r x

7 Nov 2006 JKK 17

Center of Sphere

• Asymptotically Unbiased Generalized Delogne-Kåsa Method

rc =

r m + 1

2 C− ˆ σ 2( )−1r

s

rm = 1

N

r ′ p i

i=1

N

C = 1N −1

r ′ p i −

r m ( )

r ′ p i −

r m ( )

T

i=1

N

rs = 1

N −1

r ′ p i −

r m ( )

r ′ p i −

r m ( )

T r ′ p i −

r m ( )

i=1

N

7 Nov 2006 JKK 18

UGDK

• Asymptotically unbiased if measurement error estimate is correct

• Fastest known O(26N)

• Cholesky inverse of 3x3 matrix

limN→∞

Er c ( ) =

r c 0

Covr ′ p i( ) = ˆ σ 2I

7 Nov 2006 JKK 19

100 Point Comparison

MLE

GDKE

UGDK

7 Nov 2006 JKK 20

Marker Requirements

• 3 Markers on root segment of tree

• 1-3 Markers on all other segments

• Segments with 1 Marker should have one degree of freedom (e.g.knee,elbow)

7 Nov 2006 JKK 21

Break Dance

QuickTime™ and aMotion JPEG B decompressor

are needed to see this picture.

7 Nov 2006 JKK 22

Salsa Dance

QuickTime™ and aMotion JPEG B decompressor

are needed to see this picture.

7 Nov 2006 JKK 23

Conclusion

• UGDK is fastest available sphere solution O(26N)

• Asymptotically unbiased answer

• As accurate as data O(/N)

• 1-3 Marker requirements per segment

• Provides skeleton to attach solid shape