Facial Expressions & RiggingTurning in ProjectsMatrix ComputationsVector Dot VectorVector Dot MatrixMatrix Dot MatrixHomogeneous VectorsSlide 8Homogeneous MatricesPosition Vector Dot MatrixSlide 11Slide 12Slide 13InversionDirection Vector Dot MatrixMatrix Dot Matrix (4x4)IdentityHuman Facial ExpressionsFacial FeaturesFacial Muscles‘Universal’ Expression GroupsFACSSlide 23Emotional AxesWrinklesFacial Expression ReadingFacial ModelingSlide 28Traditional ModelingPhotograph & DigitizeSculpt & DigitizeLaser ScanComputer VisionFacial Expression TechniquesSlide 35Texture Based MethodsBone Based MethodsShape Interpolation MethodsPose Space DeformationArtificial Muscle MethodsArtificial MusclesAnatomical MethodsSlide 43Shape InterpolationSlide 45Interpolation TargetsShape Interpolation AlgorithmPosition InterpolationNormal InterpolationShape Interpolation and SkinningMorph Target DOFsTarget StorageSlide 53Slide 54Morph::Update()Colors and Other PropertiesSlide 57RiggingSlide 59Slide 60Rigging and AnimationDOF TypesGrouping DOFsSlide 64DOF ExpressionsRig MappingsPush vs. PullPushing DOF Values*Rig MappingMinimalist RiggingFull Body MorphingSmooth Skin AlgorithmFacial Expressions & RiggingCSE169: Computer AnimationInstructor: Steve RotenbergUCSD, Winter 2004Turning in Projects‘turnin’ toolhttp://acs.ucsd.edu/info/turnin.phpMatrix ComputationsVector Dot Vector zzyyxxzyxzyxbabababbbaaababaVector Dot Matrix zzzyzxzyzyyyxyxzxyxxxzyxcvbvavvcvbvavvcvbvavvvvvMvvvzyxzyxzyxcccbbbaaaMcbavzyxvvv Matrix Dot MatrixNML 333231232221131211333231232221131211333231232221131211nnnnnnnnnmmmmmmmmmlllllllll32132212121112nmnmnml NccNbbNaaMLMLMLHomogeneous VectorsTechnically, homogeneous vectors are 4D vectors that get projected into the 3D w=1 space wzwywxwzyxvvvvvvvvvvHomogeneous VectorsVectors representing a position in 3D space can just be written as:Vectors representing direction are written:The only time the w coordinate will be something other than 0 or 1 is in the projection phase of rendering, which is not our problem 1zyxvvv 0zyxvvvHomogeneous MatricesA homogeneous (4x4) matrix is written:The only time the right hand column will not be (0,0,0,1) is during view projection1000zyxzyxzyxzyxdddcccbbbaaaMPosition Vector Dot Matrix 11wzzzzyzxzyyzyyyxyxxzxyxxxzyxvdcvbvavvdcvbvavvdcvbvavvvvvMvvvdcbav zyxvvv1000zyxzyxzyxzyxdddcccbbbaaaMPosition Vector Dot Matrixdcbav zyxvvvv=(.5, .5,0,1)xyLocal Space(0,0,0)Position Vector Dot Matrixdcbav zyxvvvv=(.5, .5,0,1)xyLocal Space(0,0,0)xyWorld Space(0,0,0)abdMatrix MPosition Vector Dot Matrixdcbav zyxvvvv=(.5, .5,0,1)xyLocal Space(0,0,0)xyWorld Space(0,0,0)abdv’InversionIf M transforms v into world space, then M-1 transforms v’ back into local spaceIMMMvvMvv11Direction Vector Dot Matrix 00wzzzyzxzyzyyyxyxzxyxxxzyxvcvbvavvcvbvavvcvbvavvvvvMvvvcbavzyxvvv 1000zyxzyxzyxzyxdddcccbbbaaaMMatrix Dot Matrix (4x4)1000zyxzyxzyxzyxdddcccbbbaaaMNMM The row vectors of M’ are the row vectors of M transformed by matrix NNotice that a, b, and c transform as direction vectors and d transforms as a positionIdentityTake one more look at the identity matrixIt’s a axis lines up with x, b lines up with y, and c lines up with zPosition d is at the originTherefore, it represents a transformation with no rotation or translation1000010000100001IHuman Facial ExpressionsFacial FeaturesKey Facial FeaturesDeformable SkinHairEyesArticulated Jaw (teeth…)TongueInside of mouthEach of these may require a different technical strategyFacial Muscles‘Universal’ Expression GroupsSadnessAngerHappinessFearDisgustSurpriseFACSFacial Action Coding System (Ekman)Describes a set of ‘Action Units’ (AUs) that correspond to basic actions (some map to individual muscles, but other involve multiple muscles, or even joint motion)Examples:1. Inner Brow Raiser (Frontalis, Pars Medialis)2. Outer Brow Raiser (Frontalis, Pars Lateralis)14. Dimpler (Buccinator)17. Chin Raiser (Mentalis)19. Tongue Out20. Lip Stretcher (Risoris)29. Jaw Thrust30. Jaw Sideways31. Jaw ClencherFACSExpressions are built from basic action unitsHappiness:1. Inner Brow Raiser (Frontalis, Pars Medialis)6. Cheek Raiser (Orbicularis Oculi, Pars Orbitalis)12. Lip Corner Puller (Zygomatic Major)14. Dimpler (Buccinator)Emotional AxesEmotional states can loosely be graphed on a 2-axis systemX=Happy/SadY=Excited/RelaxesWrinklesWrinkles are important visual indicators of facial expressions, and have often been overlooked in computer animationFacial Expression ReadingBooks“Computer Facial Animation” (Parke, Waters)“The Artist’s Complete Guide to Facial Expression” (Faigin)“The Expression of Emotions in Man and Animals” (Darwin)Papers“A Survey of Facial Modeling and Animation Techniques” (Noh)Facial ModelingFacial ModelingPreparing the facial geometry and all the necessary expressions can be a lot of workThere are several categories of facial modeling techniquesTraditional modeling (in an interactive 3D modeler)Photograph & digitize (in 2D with a mouse)Sculpt & digitize (with a 3D digitizer)Scanning (laser)Vision (2D image or video)Traditional ModelingPhotograph & DigitizeSculpt & DigitizeLaser ScanComputer VisionFacial Expression TechniquesFacial Expression TechniquesTexture swapping/blendingBones (joints & smooth skin)Shape interpolation (morphing)Artificial muscles (FFDs…)Anatomical simulationTexture Based MethodsA very low quality approach to doing facial expressions is simply to swap or blend between various texture maps on the faceObviously, this is pretty cheezy and doesn’t really model actual skin
View Full Document