h-anim motion dataanim motion data definition - web3d.org · pdf filejoint node add fields for...
TRANSCRIPT
H-Anim Motion DataH-Anim Motion Data Definition
Web3D Korea Chapter Meeting
July 29, 2010
The University of SuwonMyeong Won Leey g
H-Anim Motion Component
M i C
(1) animation generation by motion capture data
Motion Capture Data H-Anim
Motion Definition
H-Anim MotionGenerator
Motion Retargeting
3D ModelData
3D ModelData
Component
H-AnimMotion
DataData
H-AnimKeyframe
Parser
H Anim
Animation DataH-Anim
KeyframeAnimator H-Anim
MotionViewer
Animator
(2) animation generation by keyframe animation definition
July 29, 2010 2Web3D Korea Chapter
H-Anim Character Modelling Example
16 Segments
A human figure model is composed of 16 segments
h i d l d bEach segment is modeled by a separate graphics toolAll 16 segments are combined ginto an H-Anim structure model and stored in a wrl fileThe wrl file is converted into anThe wrl file is converted into an H-Anim x3d file
July 29, 2010 3Web3D Korea Chapter
H-Anim File (x3d)
H-Anim File Examplep
July 29, 2010 4Web3D Korea Chapter
Motion Capture File
HeaderHi hi l t t I iti l
DataN b f f FHierarchical structure, Initial
position, Number of channels
Number of frames, Frame time, Rotation info
July 29, 2010 5Web3D Korea Chapter
H-Anim and Motion CaptureHuman motion is defined by applying motion capture data to each joint of an H-Anim human modelAnim human model
Capture model joints (BVH) H-Anim model jointsHips HumanoidRoot
LeftHip l_hipLeftKnee l_kneeLeftAnkle l_ankleRightHip r_hip
RightKnee r_kneeRightAnkle r_ankle
Chest vl1LeftCollar l_sternoclavicular
LeftShoulder l_shoulderLeftElbow l_elbowLeftWrist l_wrist
RightCollar r_sternoclavicularRightShoulder r_shoulder
RightElbow r_elbowRightWrist r_wrist
Neck vc4Head skullbase
Match capture model joints to H-Anim model joints
July 29, 2010 6Web3D Korea Chapter
Motion Retargetting Before applying motion capture data to an H-Anim figure
model we must solve the motion retargetting problemmodel, we must solve the motion retargetting problem
Before motion data definition, the motion captured model must be adjustedmust be adjusted to an H-Anim model
H-Anim model Abnormal results if no motion retargetting
July 29, 2010 7Web3D Korea Chapter
Motion Retargetting (1)
Modification of Segment Length Adj t th ti t d t l th t th H A i fi ’Adjust the motion captured segment length to the H-Anim figure’s segment length
July 29, 2010 8Web3D Korea Chapter
Motion Retargetting (2)
Modification of Segment Length
Mapping motion capture joints to p jH-Anim figure
joints
July 29, 2010 9Web3D Korea Chapter
Motion Data DefinitionDefine a motion data component
Joint nodeAdd fields for specifying motion parameters
Motion nodeDefine motion capture data in H-Anim modelsPrerequisite - solve motion retargetting problem
July 29, 2010 10Web3D Korea Chapter
Joint Node (2)Define additional fields: Channels, ChannelsNumber (new fields)
Interface Joint {int[2] ChannelsNumbersequence<string> Channels
}
ChannelsNumber: Number of channels at a jointChannels: Identifiers for channels
ExampleJoint {Joint {
ChannelsNumber [ 1, 3 ]Channels “ Xrotate Yrotate Zrotate”
}
Indicates that the first channel has Xrotate, the second channel has Yrotate, and the third channel has Zrotate information
July 29, 2010 11Web3D Korea Chapter
Motion NodeDefinition of Motion Node (a new node)
Define fields of Frames, FrameTime, transformation ChannelsDefine fields of Frames, FrameTime, transformation Channels
Interface Motion {int Framesfloat FrameTime
Frames: Number of frames for an animation sequence
sequence<float> transformation}
qFrameTime: Specifies a sampling ratetransformation: Transformation values of a joint for each frame
ExampleMotion {
Frames 601Frametime 0.033333transformation [ 11.623, 31.312, 64.121, -0.700, -4.023, ……
11.616, 31.313, 64.107, -0.696, -3.954, ………… ]
}
July 29, 2010 12Web3D Korea Chapter
Hanim File CreationOur Hanim Viewer reads an H-Anim figure model’s x3d file and a motion capture file and applies a simple motion retargettingmotion capture file and applies a simple motion retargetting method to each jointThe output data after retargetting is stored as a new Hanim fileThe output data after retargetting is stored as a new Hanim file
Hanim.x3d
Motion bvh
Hanim Viewer NewHanim.hanimSave
Motion.bvh
July 29, 2010 13Web3D Korea Chapter
Hanim Animation FileOur Hanim Viewer displays an H-Anim figure animation sequencefrom an hanim file
N H i h i
from an hanim file
NewHanim.hanim
Hanim Viewer
Human Animation
July 29, 2010 14Web3D Korea Chapter
NewHanim.hanim
<HAnimHumanoid DEF="sample"HAnimHumanoid DEF sample name="humanoid"version="1.1">
<HAnimJoint DEF="hanim_HumanoidRoot" center="0 -3.596 -91.49" name="HumanoidRoot" containerField="children"ChannelsNumber=”1 3”Channels=”Xrotate Yrotate Zrotate”><HAnimSegment DEF="hanim_pelvis" name="pelvis" containerField="children"></HAnimSegment>
HA i J i DEF "h i l k "<HAnimJoint DEF="hanim_l_knee" center="10.4 0.7352 -49.93"
July 29, 2010 15Web3D Korea Chapter
NewHanim.hanim
name="l_knee" containerField="children"containerField= childrenChannelsNumber=”4 6”Channels=”Xrotate Yrotate Zrotate”> <HAnimSegment DEF="hanim l calf"<HAnimSegment DEF hanim_l_calf name="l_calf”></HAnimSegment></HAnimJoint>/ Jo t</HAnimJoint>
<HAnimMotion DEF=”hanim Hips”_ pFrames=”601”Frametime”0.03333”
Transformation=”11.623 31.312 …. 11.616, 31.313 ……”
</HAnimMotion></HAnimHumanoid>
July 29, 2010 16Web3D Korea Chapter
H-Anim Motion Generation
HumanoidHumanoid modeling
data
Joint node
H AnimMotion
H-Animmotion
definition
retargetting(segment adjusting)
Motion capture data
Motion node
H-Anim motion Viewer
H-Anim motion Parser
July 29, 2010 17Web3D Korea Chapter
Motion Capture and H-Anim Figure
July 29, 2010 18Web3D Korea Chapter
Joints Connection
July 29, 2010 19Web3D Korea Chapter
Example H-Anim Character (1): Young-hee
H-Anim model file: Young-hee.x3dH Anim animation file: Young hee hanimH-Anim animation file: Young-hee.hanim
July 29, 2010 20Web3D Korea Chapter
Example H-Anim Character (2): Soon-hee
H-Anim model file: Soon-hee.x3dH Anim animation file: Soon hee hanimH-Anim animation file: Soon-hee.hanim
July 29, 2010 21Web3D Korea Chapter
Example H-Anim Character (3): Dong-hee
H-Anim model file: Dong-hee.x3dH Anim animation file: Dong hee hanimH-Anim animation file: Dong-hee.hanim
July 29, 2010 22Web3D Korea Chapter
Example H-Anim Character (4): Chul-hee
H-Anim model file: Chul-hee.x3dH Anim animation file: Chul hee hanimH-Anim animation file: Chul-hee.hanim
July 29, 2010 23Web3D Korea Chapter
Example H-Anim Character (5): Hyun-ee
H-Anim model file: Hyun-hee.x3dH Anim animation file: Hyun hee hanimH-Anim animation file: Hyun-hee.hanim
July 29, 2010 24Web3D Korea Chapter
Implementation H-Anim Motion Viewer
Visual C++ (Visual Studio 2005), OpenGL
MotionMotionCapture(BVH)
H-AnimFigureFigure
July 29, 2010 25Web3D Korea Chapter
H-Anim Motion Viewer (1) -Video
July 29, 2010 26Web3D Korea Chapter
H-Anim Motion Viewer (2) - Video
July 29, 2010 27Web3D Korea Chapter
Conclusions A proposal for H-Anim motion specification
H Anim motion componentH-Anim motion component Joint node updateM ti d d fi itiMotion node definition
G t H A i h t d l * 3dGenerate H-Anim character model: *.x3dGenerate H-Anim character animation: *.hanim
Development of an H-Anim motion viewerGeneration of standard H-Anim character models
July 29, 2010 28Web3D Korea Chapter