University of Texas at Dallas B. Prabhakaran Computer Animation • Main Text: – "Computer Animation: Algorithms & Techniques“, Rick Parent, Morgan Kaufman publishers. – "3D Computer Graphics: A Mathematical Introduction with OpenGL", Samuel R. Buss, Cambridge University Press Multimedia System and Networking Lab @ UTD Slide- 1 University of Texas at Dallas B. Prabhakaran Course Outline 1. 2. 3. 4. 5. 6. Skeletons Quaternions Skinning Facial Animation Advanced Skinning Channels & Keyframes 7. 8. 9. 10. 11. 12. 13. Animation Blending Inverse Kinematics Locomotion Particle Systems Cloth Simulation Collision Detection Rigid Body Physics Multimedia System and Networking Lab @ UTD Slide- 2 University of Texas at Dallas B. Prabhakaran Contact Information B. Prabhakaran Department of Computer Science University of Texas at Dallas Mail Station EC 31, PO Box 830688 Richardson, TX 75083 Email: bprabhakaran@utdallas.edu Fax: 972 883 2349 URL: http://www.utdallas.edu/~praba Phone: 972 883 4680 Office: ECSS 3.706 Office Hours: Tuesdays/Thursdays 10.30-11.15am Other times by appointments through email Announcements: Made in class and on course web page. TA: TBA. Multimedia System and Networking Lab @ UTD Slide- 3 University of Texas at Dallas B. Prabhakaran Prerequisites • CS 2236 (CS2), CS/SE 3345 (Data structs & Alg. analysis), Math 2418 (Linear Algebra). • Familiarity with – – – – – Vectors (dot products, cross products…) Matrices (4x4 homogeneous transformations) C++ or Java Object oriented programming Basic physics Multimedia System and Networking Lab @ UTD Slide- 4 University of Texas at Dallas B. Prabhakaran Evaluation • 1 or 2 Homeworks • 1 Final Exam: 75 minutes or 2 hours (depending on class room availability). Mix of MCQs and Short Questions. • Programming Projects Multimedia System and Networking Lab @ UTD Slide- 5 University of Texas at Dallas B. Prabhakaran Grading • 70% Projects • 5% Homeworks • 25% Final Multimedia System and Networking Lab @ UTD Slide- 6 University of Texas at Dallas B. Prabhakaran Schedule • Final Exam: Last week of class OR As per UTD schedule • Projects and homework(s) schedules will be announced in class and course web page, giving sufficient time for submission. Multimedia System and Networking Lab @ UTD Slide- 7 University of Texas at Dallas B. Prabhakaran Programming Projects • • • • • • • No copying/sharing of code/results will be tolerated. Any instance of cheating in projects/homeworks/exams will be reported to the University. No copying code from the Internet. 2 individual students copying code from Internet independently: still considered copying in the project !! Individual projects. Deadlines will be strictly followed for projects and homeworks submissions. Projects submissions through eLearning. Demo may be needed Multimedia System and Networking Lab @ UTD Slide- 8 University of Texas at Dallas B. Prabhakaran Cheating • Academic dishonesty will be taken seriously. • Cheating students will be handed over to Head/Dean for further action. • Remember: home works/projects (exams too !) are to be done individually. • Any kind of cheating in home works/ projects/ exams will be dealt with as per UTD guidelines. • Cheating in any stage of projects will result in 0 for the entire set of projects. Multimedia System and Networking Lab @ UTD Slide- 9 University of Texas at Dallas B. Prabhakaran Proposed Projects • • • • • • • 3 projects Encourage you to come up with your own project proposal too Announcements will be made soon Use OpenGL Possible use of Autodesk 3D Max Or other public domain software C/C++ mostly Multimedia System and Networking Lab @ UTD Slide- 10 University of Texas at Dallas B. Prabhakaran Applications • • • • • • • • Special Effects (Movies, TV) Video Games Virtual Reality Simulation, Training, Military Medical Robotics, Animatronics Visualization Communication Multimedia System and Networking Lab @ UTD Slide- 11 University of Texas at Dallas B. Prabhakaran Computer Animation • Kinematics • Physics (a.k.a. dynamics, simulation, mechanics) • Character animation • Artificial intelligence • Motion capture / data driven animation Multimedia System and Networking Lab @ UTD Slide- 12 University of Texas at Dallas B. Prabhakaran Animation Process while (not finished) { DrawEverything(); MoveEverything(); } • Interactive vs. Non-Interactive • Real Time vs. Non-Real Time Multimedia System and Networking Lab @ UTD Slide- 13 University of Texas at Dallas B. Prabhakaran An Example Multimedia System and Networking Lab @ UTD Slide- 14 University of Texas at Dallas B. Prabhakaran The process involves… • Motion Capture (Data Acquisition) Multimedia System and Networking Lab @ UTD Slide- 15 University of Texas at Dallas B. Prabhakaran Human Motion Capture Multimedia System and Networking Lab @ UTD Slide- 16 University of Texas at Dallas B. Prabhakaran UTD’s Motion Capture Facility… Multimedia System and Networking Lab @ UTD Slide- 17 University of Texas at Dallas B. Prabhakaran Captured 3D Motion: E.g., 1 Multimedia System and Networking Lab @ UTD Slide- 18 University of Texas at Dallas B. Prabhakaran Captured 3D Motion: E.g., 2 Multimedia System and Networking Lab @ UTD Slide- 19 University of Texas at Dallas B. Prabhakaran Motion Capture Matrix Pelvis Joint Data: pelvis<AX> Frame pelvis<AY> pelvis<AZ> pelvis<TX> pelvis<TY> pelvis<T-Z> 1 -4.62953 -36.2313 176.458 590.269 166.422 797.569 2 -4.65407 -36.2417 176.453 590.039 166.612 797.706 3 ▪ ▪ ▪ ▪ ▪ ▪ Multimedia System and Networking Lab @ UTD Slide- 20 University of Texas at Dallas B. Prabhakaran Applying Motion Data to 3d Model Multimedia System and Networking Lab @ UTD Slide- 21 University of Texas at Dallas B. Prabhakaran Animated 3D Model Multimedia System and Networking Lab @ UTD Slide- 22 University of Texas at Dallas B. Prabhakaran Animation: Applications & Possibilities • Using an Expert to Train • Animation Toolkit – Content Based Retrieval of 3D Models & Motions • Networked 3D Games – Streaming 3D Models and Motions • Copyright / Content Protection • Collision Detection Multimedia System and Networking Lab @ UTD Slide- 23 University of Texas at Dallas B. Prabhakaran Application: Improve Your Game ! Multimedia System and Networking Lab @ UTD Slide- 24 University of Texas at Dallas B. Prabhakaran 3D novice motion & 2D expert motion We can get novice pitching data using motion capture system • There are bunch of videos include expert’s pitching motion • 2D video data has expert’s stylistic actions • 3D motion data compensate for the incompleteness of 2D data • Multimedia System and Networking Lab @ UTD Slide- 25 University of Texas at Dallas B. Prabhakaran 2D Motion Analysis position Motion analysis by tracking the object (e.g. right hands) time Multimedia System and Networking Lab @ UTD Slide- 26 University of Texas at Dallas B. Prabhakaran Constraint of 2D motion Analysis 3D motion capture data 2D video motion analysis data • We need to compare the dissimilarity between 2D & 3D data • However, 2D data from a single camera doesn’t have enough information for comparing with 3D motion capture data Multimedia System and Networking Lab @ UTD Slide- 27 University of Texas at Dallas B. Prabhakaran Reconstruction 3D from 2D using HMM • Calculate most probable style-path given 2D observations Argmax P(Q|O1O2…OT) Red: 3D novice motion data Blue: reconstructed 3D motion data Multimedia System and Networking Lab @ UTD Slide- 28 University of Texas at Dallas B. Prabhakaran Resynthesis • Following to the reconstructed 3D expert style. Red: 3D novice motion data Blue: reconstructed 3D motion data Multimedia System and Networking Lab @ UTD Slide- 29 University of Texas at Dallas B. Prabhakaran Another Fun: 3D Tennis Game Realistic Tennis game – Topspin (EA Sports) Multimedia System and Networking Lab @ UTD Slide- 30 University of Texas at Dallas B. Prabhakaran Application of learning expert style motion to 3D Tennis Games • Tennis novice can learn by comparing style with realistic professional player • Motion capture system can capture novice’s naïve actions (serve, swing, volley ..) • We can build realistic professional expert’s actions by motion resynthesis (3D motion reconstruction from 2D video data) Multimedia System and Networking Lab @ UTD Slide- 31 University of Texas at Dallas B. Prabhakaran Parallel FSM (Finite State Machine) • Motion capture data is not high-level semantic data (sequences, not segmented data) • To identify “high-level action”, we prepare neural network and Parallel FSM • Parallel FSM is needed since human actions happened not in a separate way Multimedia System and Networking Lab @ UTD Slide- 32 University of Texas at Dallas B. Prabhakaran Behavior Modeling: Neural Network & Parallel FSM • Sensor layer : two input nodes which notice the object’s movement & boolean value of range respectively. • Control layer : works as a hidden layer • Stand, Straight and Grab nodes (output nodes) also initial states of each FSMs. Multimedia System and Networking Lab @ UTD Slide- 33 University of Texas at Dallas B. Prabhakaran High-level behavior recognition using Motor-graph • To interpret low-level actions to high-level behaviors • Motor-graph is designed with states of FSMs • Nodes : each state , edges: state transitions • (c) subsumed by (b) sub-graph Multimedia System and Networking Lab @ UTD Slide- 34 University of Texas at Dallas B. Prabhakaran Translate into “serve” action by Parallel FSM & Motor Graph Locomotion FSM A5 Head FSM H2 A4 H1 A2 H3 H0 A0 A1 L0 L1 L2 Arm Hands FSM • Neural Network sensors the participant’s action and hand it to FSMs • Each FSM recognize the state-transition and draw it to motor-graph • This action motor-graph is subsumed by “serve” minimum motor graph translate this action as “serve” !! Multimedia System and Networking Lab @ UTD Slide- 35 University of Texas at Dallas B. Prabhakaran System Architecture: Analysis novice’s style & feedback expert-like action Behavior Translation Novice’s behavior Showing a developed serve with user’s style Neural Network & FSM Motor Graph Hands style Matched expert’s serve Head style Locomotion style Style Analysis Multimedia System and Networking Lab @ UTD Slide- 36 University of Texas at Dallas B. Prabhakaran Animation Toolkit • Animation Authoring Through Reuse: – Motion mapping – Inverse kinematics • Example: – GET walking FROM Andy – GET waving FROM Andy – JOIN Andy.walking WITH Andy.waving Multimedia System and Networking Lab @ UTD Slide- 37 University of Texas at Dallas B. Prabhakaran Animation Authoring Toolkit Multimedia System and Networking Lab @ UTD Slide- 38 University of Texas at Dallas B. Prabhakaran Animation Query Handling • Partial Fuzzy Query Resolution: – Primary attribute centric query resolution • insert an animation sequence where Mickey Mouse is walking slowly in a park with a fountain or a statue in the background – Heuristics for retrieving top k objects • Maximal grade based approach • Maximal attributes based approach • Threshold algorithm – Decent precision and recall shown. • “Partial Fuzzy Query Resolution for Animation Authoring” (Phanivas Kotharu, MS Thesis, UTD). Multimedia System and Networking Lab @ UTD Slide- 39 University of Texas at Dallas B. Prabhakaran Animation Toolkit Capture Compression Metadata based Query Indexing Query / Data Processor Network ……….. ……….. ……….. Query by Example Index Tree Deliverable Data Multimedia System and Networking Lab @ UTD Slide- 40 University of Texas at Dallas B. Prabhakaran Shape Analysis of 3d models • Applications - Categorization of shapes - Indexing techniques of 3d models - Querying techniques for 3d model database Ultimate goal: Content based 3d model search Multimedia System and Networking Lab @ UTD Slide- 41 University of Texas at Dallas B. Prabhakaran Streaming 3D Games Over the Internet 3D Streaming Server Network Rendering Client Multimedia System and Networking Lab @ UTD Slide- 42 University of Texas at Dallas B. Prabhakaran 3D Model Streaming • Advantages: – 1 Base Mesh + M Refinements = Original Mesh – Bandwidth Friendly • Drawbacks: – Intolerant to Transmission errors – Not friendly for Real Time 3D Streaming 1. Base Mesh Faces: 4281 Vertices: 2249 Size:131KB Mesh after 5 Batches 2. Faces: 23675 Vertices: 11946 Size: 748KB 3. Original Mesh Faces: 69451 Vertices: 35947 Size: 3MB Multimedia System and Networking Lab @ UTD Slide- 43 University of Texas at Dallas B. Prabhakaran Content Protection of 3D models and MoCap Data • 3D models and MoCap Data - Commercial value (“money”) - Requires lot of human effort • Tampering and piracy of data: – loss of information, with ultimate loss of time and money. – Faulty training & education • How do we do content protection to avoid piracy and tampering ? Multimedia System and Networking Lab @ UTD Slide- 44 University of Texas at Dallas B. Prabhakaran Tamper Proofing Game Data Secure data used for driving the game (different from outcome data) • Tamper proofing – Detect (and possibly correct) attacks on data • Water marking (more to do with copyrighting) • Focus both on 3D models, motion, apart from other data Multimedia System and Networking Lab @ UTD Slide- 45 University of Texas at Dallas B. Prabhakaran Collision Detection Authoring operations may lead to unintentional collisions. Collision detection: alert authors on possible collision detection and suggest possibilities for avoiding them. Previously used approaches for Collision Detection can be classified into 3 categories. Cell Based Tree Based Bounding Object Based Multimedia System and Networking Lab @ UTD Slide- 46 University of Texas at Dallas B. Prabhakaran Cell-based Approach Divide the entire search space into a number of cells and a collision possibility is triggered if two objects come in one cell. Disadvantages: • High memory usage. • Tough to correctly determine the size of each cell. • Too small a cell: objects occupying many cells and hence more collision tests. • Too big a cell: unnecessary tests being carried out. Multimedia System and Networking Lab @ UTD Slide- 47 University of Texas at Dallas B. Prabhakaran The motion of Object A causes a rippling effect on Object C after colliding with Object B. The possibility of Collision of Object C can be detected when the bounding sphere of Object A encompasses C. This helps in Early detection of the Collision. Multimedia System and Networking Lab @ UTD Slide- 48 University of Texas at Dallas B. Prabhakaran Course Outline 1. 2. 3. 4. 5. 6. Skeletons Quaternions Skinning Facial Animation Advanced Skinning Channels & Keyframes 7. 8. 9. 10. 11. 12. 13. Animation Blending Inverse Kinematics Locomotion Particle Systems Cloth Simulation Collision Detection Rigid Body Physics Multimedia System and Networking Lab @ UTD Slide- 49