WO2002030171A2 - Facial animation of a personalized 3-d face model using a control mesh - Google Patents

Facial animation of a personalized 3-d face model using a control mesh Download PDF

Info

Publication number
WO2002030171A2
WO2002030171A2 PCT/IB2001/002363 IB0102363W WO0230171A2 WO 2002030171 A2 WO2002030171 A2 WO 2002030171A2 IB 0102363 W IB0102363 W IB 0102363W WO 0230171 A2 WO0230171 A2 WO 0230171A2
Authority
WO
WIPO (PCT)
Prior art keywords
mesh
face
images
geometry
locations
Prior art date
Application number
PCT/IB2001/002363
Other languages
French (fr)
Other versions
WO2002030171A3 (en
Inventor
Tanju A. Erdem
Original Assignee
Erdem Tanju A
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Erdem Tanju A filed Critical Erdem Tanju A
Priority to EP01986569A priority Critical patent/EP1334470A2/en
Publication of WO2002030171A2 publication Critical patent/WO2002030171A2/en
Publication of WO2002030171A3 publication Critical patent/WO2002030171A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation

Definitions

  • the present invention is related to the field of computer generated modeling, and more specifically, to a technique for generating a personalized three-dimensional (3-D) face model from a sequence of two-dimensional (2-D) images of a person's face.
  • 3-D face model of a person involves mapping a real image of the face of the person onto a 3-D triangular mesh that has been shaped to have the same or similar geometry as the face of the person.
  • 3-D triangular mesh refers to a connected set of triangular patches in 3-D whose corners form the nodes of the mesh. Each triangular patch in the 3-D mesh acquires its image data from an associated triangular region in the image of the face.
  • the methods disclosed in the prior art for generating a 3-D face model can be generally classified as those that involve (i) a fully manual process, (ii) a semi-automatic process and (iii) a fully-automatic process.
  • a fully manual process every triangular patch of the 3-D mesh has to be manually mapped onto the image of the face according to the facial features of the face.
  • Fully manual processes are labor intensive and time consuming because the number of triangular patches in the 3-D mesh could range from a hundred to several thousands.
  • Semi-automatic processes rely on automatically detecting or manually marking certain features on the face, such as eyes, nose and mouth, and initialize the 3-D mesh by an affine warping of a standard 3-D mesh based on the location of the detected facial features.
  • a global affine transformation generally does not match the many local facial dimensions.
  • the locations of the nodes are fine-tuned in a manual process for each person.
  • the composite image is a mosaic (or sprite) image of the face that is produced either by a 3-D rotating camera or by stitching a number of 2-D images of the face. While the former process is very costly, the latter one is generally very inaccurate.
  • the present invention proposes a semi- automatic method for generating the 3-D mesh with minimal manual fine tuning.
  • the present invention also proposes a simpler and more general technique for generating the texture image, that involves only concatenating and color blending the 2-D images of the face.
  • the present invention provides an improvement designed to satisfy the aforementioned needs.
  • the present invention is directed to a computer program product for creating a 3-D face model from a plurality of 2-D images of a person's face, by performing the steps of: (a) receiving the plurality of images of a person; (b) obtaining the geometry mesh by deforming a predefined standard 3-D triangular mesh based on the dimensions and relative positions of the person's facial features; and (c) obtaining the texture image by compositing a plurality of 2-D images of the person taken from particular directions and modifying them in boundary regions to achieve seamless stitching of color for the 3-D face model.
  • a computer program product for creating a 3-D face model from a plurality of 2-D images of a person's face, by performing the steps of: (a) receiving the plurality of images of a person; (b) obtaining the geometry mesh by deforming a predefined standard 3-D triangular mesh based on the dimensions and relative positions of the person's facial features; and (c
  • FIG. 1 is a perspective view of a computer system for implementing the present invention
  • FIG. 2 is a diagram illustrating the method of present invention
  • FIG. 3 is a flowchart for the method of the present invention.
  • FIG. 4a is a diagram illustrating the method of calculating the calibration parameter of the camera with a target object
  • FIG. 4b is a diagram illustrating the image of the target object captured by the camera
  • FIG. 5 is a diagram illustrating the method of acquiring a plurality of images of a person's face using the camera
  • FIG. 6 is a diagram further illustrating the method of acquiring a plurality of images of a person's face using the camera
  • FIG. 7 is a diagram illustrating the methods of specifying and locating the feature points of the face
  • FIG. 8 is a first table further illustrating the method of FIG. 7;
  • FIG. 9 is a second table further illustrating the method of FIG. 7;
  • FIG. 10 is a diagram illustrating the method of selecting an initial geometry mesh for the face
  • FIG. 11 is a diagram illustrating the method of making global modifications to the geometry mesh
  • FIG. 12 is a diagram illustrating the method of making local modifications to the geometry mesh
  • FIG. 13 is a diagram further illustrating the method of making local modifications to the geometry mesh
  • FIG. 14 is a diagram further illustrating the method of making local modifications to the geometry mesh
  • FIG. 15 is a diagram illustrating the method of selecting the shade images
  • FIG. 16 is a diagram illustrating the method of blending the shade images. DETAILED DESCRIPTION OF THE INVENTION
  • the computer system 10 includes a microprocessor-based unit 12 for receiving and processing software programs and for performing other well known processing functions.
  • the software programs are contained on a computer useable medium 14, typically a compact disk, and are input into the microprocessor-based unit 12 via the compact disk player 16 electronically connected to the microprocessor-based unit 12.
  • programs could also be contained in an Internet server 18 and input into the microprocessor-based unit 12 via an Internet connection 20.
  • a camera 22 is electronically connected to the microprocessor-based unit 12 to capture the 2-D images of a person's face.
  • a display 24 is electronically connected to the microprocessor-based unit 12 for displaying the images and user related information associated with the software.
  • a keyboard 26 is connected to the microprocessor based unit 12 for allowing a user to input information to the software.
  • a mouse 28 is also connected to the microprocessor based unit 12 for selecting items on the display 24 or for entering 2-D position information to the software, as is well known in the art.
  • a digital pen 30 and a digital pad 32 may be used for selecting items on the display 24 and entering position information to the software.
  • the output of the computer system is either stored on a hard disk 34 connected to the microprocessor unit 12, or uploaded to the Internet server 18 via the Internet connection 20. Alternatively, the output of the computer system can be stored on another computer useable medium 14, typically a compact disk, via a compact disk writer 36.
  • 3-D face model is composed of a 3-D triangular mesh (geometry mesh) 41 and a 2-D composite image (texture image) 42.
  • 3-D triangular mesh refers to a connected set of triangular patches in 3-D whose corners form the nodes of the mesh.
  • Each triangular patch 43 in the geometry mesh 41 is associated with a triangular region 44 in the texture image 42.
  • each triangular patch 43 in the geometry mesh 41 is painted with the image data contained in its corresponding triangle 44 in the texture image 42.
  • Image data are transferred from a triangle 44 in the texture image 42 to its counterpart 43 in the geometry mesh 41 via an affine transform which is well known to anyone knowledgeable in the field of image processing.
  • the seven steps are as follows: (a) calculating the calibration parameter of the camera (Step 110); (b) acquiring a plurality of images of a person's face using the camera (Step 120); (c) calculating the facial dimensions and the position and orientation of the face in the acquired images (Step 130); (d) obtaining a geometry mesh and an associated shape mesh for the face (Step 140); (e) creating a texture image for painting the surface of the deformed geometry mesh (Step 150); (f) adding any synthetic components to the face model (Step 160); (g) storing or transmitting the face model (Step 170).
  • a perspective image of a target object is captured with the camera with the target object being placed at approximately the same distance from the camera as the person's face.
  • the method of the present invention uses the perspective image of the target object to calculate a camera parameter that is used in the subsequent steps, hereinafter referred to as the E parameter.
  • the E parameter has a non-negative value and it is a measure of the amount of perspective deformation caused by the camera. A zero value indicates no perspective deformation and the larger the value of the E parameter the more the perspective deformation caused by the camera.
  • the method of acquiring a plurality of images of a person's face using the camera comprises the steps of (1) acquiring neutral images of the face (Step 121); and (2) acquiring action images of the face (Step 122). In the following, a detailed description of these steps is given.
  • a plurality of 2-D images of the person's face in the same neutral state are captured with the camera from different directions.
  • the neutral state for the face means that all face muscles are relaxed, eyes are normally open, mouth is closed and lips are in contact. These images are subsequently used to obtain the neutral geometry of the face model, hence, hereinafter they are referred to as the neutral images.
  • the camera directions to capture neutral images are selected so that the majority of facial features such as eyes, eyebrows, ears, nose and lips are visible in all images.
  • the face is not required to be at the same distance from the camera in all the neutral images.
  • fifteen camera directions selected for obtaining the neutral images are selected for obtaining the neutral images.
  • the camera remains fixed and the person rotates his/her head to realize the following fifteen different directions: front 221, forehead 222, chin 223, angled-right 224, angled-right-tilted-down 225, angled-right-tilted-up 226, angled-left 227, angled-left- tilted-down 228, angled-left-tilted-up 229, full-right-profile 230, full-right-profile-tilted- down 231, full-right-profile-tilted-up 232, full-left-profile 233, full-left-profile-tilted- down 234, and full-left-profile-tilted-up 235.
  • a plurality of 2-D images of the person's face in action states are captured with the camera from different directions.
  • the action states for the face include faces with a smiling mouth, a yawning mouth, raised eyebrows, etc. These images are subsequently used to obtain the action geometries of the face model, hence, hereinafter they are referred to as the action images.
  • the camera directions to capture the action images are selected so that the majority of facial features such as eyes, eyebrows, ears, nose and lips are visible in all images.
  • the face is not required to be at the same distance from the camera in all the action images.
  • facial action states are as follows: smiling mouth, yawning mouth, kissing mouth, raised eyebrows, and squeezed eyebrows.
  • the camera directions are front and right.
  • the method of calculating the facial dimensions and the position and orientation of the face in the acquired images comprises the steps of (1) specifying feature points of the face (Step 131); (2) locating the feature points on the neutral and action images (Step 132); (3) calculating the 3-D positions of the feature points (Step 133); and (4) calculating the position and orientation of the face in the neutral and action images (Step 134).
  • Step 131 specifying feature points of the face
  • Step 132 locating the feature points on the neutral and action images
  • Step 133 calculating the 3-D positions of the feature points
  • Step 134 calculating the position and orientation of the face in the neutral and action images
  • a plurality of clearly identifiable and sparsely distributed points on the face are selected as the feature points.
  • the following thirteen locations on the person's face are specified as the feature points: the centers of the right 251 and left 252 eye pupils, the central end points of the right 253 and left 254 eyebrows, the right 255 and left 256 corners of the nose, the top 257 and bottom 258 points of the right ear, the top 259 and bottom 260 points of the left ear, the right 261 and left 262 corners of the mouth, and the mid-point 263 of the line where the upper and lower lips contact each other.
  • the feature points are automatically located or manually marked on the acquired images. It is important to note that not all feature points may be visible in all neutral and action images and some feature points are not in their neutral position in some action images. Thus, in the present invention, the location of only the visible feature points and feature points that are in their neutral position are automatically detected or manually marked in each neutral and action image.
  • the feature points are manually marked in the neutral images that are indicated with an X in the table in FIG. 8, and are manually marked in action images that are indicated with an X in FIG. 9.
  • the feature points are assumed as invisible in those neutral images that are not indicated with an X in the table in FIG. 8.
  • the feature points are not in their neutral position in those action images that are not indicated with an X in the table in FIG. 9.
  • the computer program prompts the user to manually mark only the visible feature points and feature points that are in their neutral position in each image.
  • the 3-D positions of the feature points of the person's face are calculated using a modified version of the method in "Shape and Motion from Image Streams under Orthography: A Factorization Method" by Carlo Tomasi and Takeo Kanade, International Journal of Computer Vision, vol. 9, no. 2, pp. 137-154, 1992.
  • a general mathematical analysis of 2-D image projections of 3-D feature points is given.
  • the method of "Shape and Motion from Image Streams under Orthography” is reviewed.
  • the proposed modification to the method of "Factorization of Shape and Motion” is presented.
  • the image plane passes at (0,0,-E) and is perpendicular to k .
  • N denote the number of feature points
  • P n , n ⁇ ,...,N, of all the feature points are changed. It is therefore more appropriate to use a local coordinate system for the face to represent the coordinates of the feature points.
  • the origin C 0 of the local coordinate system is defined to be the centroid of the feature points and is given by
  • W is some constant in units of meters that will be defined shortly.
  • the quantities on the left hand side are measured quantities while the quantities on the right hand side are unknown quantities.
  • the method of "Factorization of Shape and Motion" solves the above equations for the 3-D local coordinates S take of the feature points, and the orientation vectors I f and J f and the 2-D position (c f o, x ,c f o, y ) of the centroid of the feature points in all images in terms of the 2-D projected positions (p f n , x , p f n, y ) of the feature points in all images.
  • the third orientation vector K f is uniquely defined by the first two orientation vectors I f and J f simply as
  • the number of iterations is selected to be 50 and the threshold is selected to be 1 pixel.
  • the method of calculating the 3-D position and orientation of the person's face in the neutral and action images is disclosed in the following. It facilitates understanding to note that the 3-D position of the face in an image is described by the centroid (c f , x ,c f o, y ) of the feature points and the camera-distance-ratio ⁇ / of the face in that image.
  • the 3-D orientation of the face in an image / is described by the vectors P and J / in that image.
  • the 3-D position and orientation parameters (c f o, x ,c f o, y ) , ⁇ f , I f and J f are calculated using the following steps:
  • the number of iterations is selected to be 50 and the threshold is selected to be 1 pixel.
  • the method of obtaining the geometry and shape meshes for the neutral and action faces comprises the steps of (1) selecting and initial geometry mesh for the face (Step 151), (2) making global modifications to the geometry mesh according to the 3-D position data of the feature points (Step 152); (3) making local modifications to the geometry mesh to match the shape of the person's face (Step 153); and (4) defining the shape meshes for the action faces (Step 154).
  • Step 151 selecting and initial geometry mesh for the face
  • Step 152 making global modifications to the geometry mesh according to the 3-D position data of the feature points
  • Step 153 making local modifications to the geometry mesh to match the shape of the person's face
  • Step 154 defining the shape meshes for the action faces
  • a user selects an initial geometry mesh 271 among a collection 272 of standard predefined geometry meshes that best fits the facial type of the person.
  • the facial type of the person includes the skull type, hair type, nose type, and chin type.
  • a user is provided with separate collections of 3-D triangular meshes that represent different skull types, hair types, nose types, and chin types, and is allowed to stitch together a selection from each collection of facial parts to obtain the initial geometry mesh for the person's face.
  • triangular meshes those skilled in the art will understand that any other polygonal mesh could be substituted for the triangular mesh.
  • the globally translated and rotated 3-D positions of the feature points of the person's face obtained in Step 133 are used to globally deform the initial geometry mesh 271 to match the relative positions of the feature points on the globally deformed geometry mesh 273 and to match the global proportions of the person's face.
  • f x and f 2 denote the 3-D positions of the right-eyebrow-central 251 and left-eyebrow-central 252, respectively; and b denote the 3-D position of the lip-
  • R x and R 2 denote the 3-D positions of the geometry-mesh-right-ear- top 265 and geometry-mesh-left-ear-top 266, respectively;
  • F x and F 2 denote the 3-D positions of the geometry-mesh-right-eyebrow-central 267 and geometry-mesh-left- eyebrow-central 268, respectively;
  • b denote the 3-D position of the geometry-mesh- lip-center 269.
  • the vectors u , v, w, U, V , and W are used to globally rotate, scale, and shear the initial geometry mesh 271 to match the global dimensions of the person's face.
  • the process of rotation, scaling, and shear are carried out in that order as explained in the following:
  • Rotation Rotate the initial geometry mesh 271 so that the vector V is aligned with the vector .
  • the geometry mesh 273 obtained in Step 151 is moved and rotated in 3-D and displayed simultaneously with any image using the 3-D motion calculated in Step 134 for that image.
  • Local adjustments are made on the geometry mesh 273 to match the local geometry of the face by moving the nodes of the geometry mesh 273 via a user interface.
  • the nodes of the geometry mesh 273 are moved indirectly using a separate lower resolution (coarser) triangular mesh, hereinafter referred to as the shape mesh 275, overlying the geometry mesh and comprising substantially fewer and larger triangular patches than the geometry mesh.
  • the user moves only the nodes of the shape mesh 275 and the nodes of the geometry mesh 273 move automatically.
  • the shape mesh is selected so that the nodes of the shape mesh are selected from the nodes of the geometry mesh, i.e., a subset of the nodes of the geometry mesh 271 define the shape mesh 275.
  • the shape mesh 275 is a lower resolution mesh than the geometry mesh 271.
  • the feature points defined in Step 131 of the present invention are included in the collection of the nodes of the shape mesh. The method of indirectly moving the nodes of the geometry mesh 273 by moving the nodes of the shape mesh 275 is disclosed in the following.
  • each and every node 280 of the geometry mesh 273 is attached to, and hence controlled by, a triangle 281 of the shape mesh 275, following the global adjustments made to the shape 275 and the geometry mesh 273 in Step 151.
  • the following procedure is used to attach the nodes of the geometry mesh 273 to the triangles of the shape mesh 275:
  • the normal vector n A at the node_4 is obtained by averaging and the surface normals of all the triangles of the shape mesh 275 that have the node A as one of their corners. The result of the averaging is normalized so that the vector n A has unit length.
  • n P an A + ⁇ n B +yn c where the weights ⁇ , ⁇ and ⁇ satisfy 0 ⁇ a, ⁇ , ⁇ 1 and are uniquely determined by solving the equation
  • a node of the geometry triangle is attached to a triangle of the shape mesh 275 only if there is a point on the triangle such that the line passing through the node and the point is parallel to the surface normal vector at the point.
  • the node 280 of the geometry mesh 273 located at Q is attached to the triangle 281 of the shape mesh 275 because the line passing through Q and P is parallel to n p .
  • the node Q 280 is attached to the triangle ABC 281 at the point P .
  • This attachment is quantified by four numbers, namely the weights ⁇ , ⁇ and ⁇ , and the distance d between the node Q 280 and the attachment point P .
  • the nose part of the geometry mesh 273 is adapted to the person's nose.
  • geometry mesh 273 definitions conforming to each action state of the face are also obtained.
  • the nodes of the shape mesh 275 are moved to deform the geometry mesh 273 for each facial action state so that the deformed geometry mesh fits the geometry of the face in the action state.
  • a subset of the neutral and action images are used to obtain the texture image of the face model. These images hereinafter are referred to as the shade images.
  • the texture image is a composite of the shade images.
  • the shade images correspond to special camera directions such as front, right, left, top, and bottom.
  • creating the texture image for painting the surface of the geometry mesh involves the steps of (1) selecting the shade images (Step 171); and (2) blending the shade images (Step 172). In the following, a detailed description of these steps are given.
  • a subset of the neutral and action images are selected as shade images and are used to form the texture image 290 for painting the surface of the geometry mesh 273.
  • the number of shade images is N
  • the triangles of the geometry mesh 273 are divided into N disjoint regions, hereinafter referred to as the texture regions, so that the triangles that are in the same texture region acquire their texture data from the same shade image.
  • Shade images are selected so that the triangles in a texture region are generally more clearly visible in the shade image of the texture region than in any other shade image. It is important to note that the texture regions are selected so that the triangles that are in the same texture region are connected with each other.
  • the polygon that forms the boundary of a texture region is referred to as the boundary polygon for that texture region.
  • the triangles in a texture region that are on the boundary of the texture region are referred to as the boundary triangles for that texture region.
  • the triangles that are on the boundary of a neighboring texture region are referred to as the neighboring boundary triangles for that texture region.
  • the following five neutral images and one action image are selected as the shade images: front 221, front-top 222, front-bottom 223, right-most 230, left-most 233, and yawning-mouth-front 241.
  • the texture image 290 is formed by compositing these shade images. Still referring to FIG. 14, the corresponding texture regions are respectively referred to as front region 291, top region 292, bottom region 293, right region 294, and left region 295.
  • the front-boundary triangle 296 is inside the front region 291 and on the boundary polygon of the front region 291, refe ⁇ ed to as the front-boundary polygon 298.
  • the right-boundary triangle 297 is inside the right region 294 and on the boundary polygon of the right region 294, referred to as the right-boundary polygon 299.
  • the front-boundary triangle 296 and the right boundary triangle 297 are neighboring triangles. Still referring to FIG.
  • the 2-D projection of the front-boundary triangle 296 on the front image 221 is refe ⁇ ed to as the front-projected front-boundary triangle 306 and the 2-D projection of the front-boundary triangle 296 on the full-right-profile image 230 is refe ⁇ ed to as the right-projected-front-boundary triangle 316.
  • the 2-D projection of the right-boundary triangle 297 on the full- right-profile image 230 is refe ⁇ ed to as the right- projected-right-boundary triangle 307 and the 2-D projection of the right-boundary triangle 297 on the front image 221 is refe ⁇ ed to as the front-projected right-boundary triangle 317.
  • the color inside the front-projected-front-boundary triangle 306 is blended with the color inside the right-projected-front-boundary triangle
  • the mouth region is part of the front region 291, and the image data along its boundary is not blended with the image data of any other region.
  • a 3-D mesh model of a pair of eyeglasses is selected from a list of candidate models that best resembles the actual pair of eyeglasses worn by the person.
  • a 3-D mesh model of a pair of earrings is selected from a collection of earrings that best resembles the actual pair of earrings worn by the person.
  • the selected 3-D mesh models are scaled automatically to fit the dimensions of the face of the person and positioned automatically on the ears and the nose regions of the geometry mesh model 273 of the person.
  • the aforementioned components of the face model generated via a computer can be stored on a computer useable medium and/or transmitted over the Internet to another computer.

Abstract

A method for generating a 3-D model of a person's face is disclosed. The 3-D face model carries both the geometry (shape) and the texture (color) characteristics of the person's face. The shape of the face model is represented via a 3-D triangular mesh (geometry mesh), while the texture of the face model is represented via a 2-D composite image (texture image). The geometry mesh is obtained by deforming a predefined standard 3-D triangular mesh based on the dimensions and relative positions of the person's facial features, such as eyes, nose, ears, lips, chin, etc. The texture image is obtained by compositing a set of 2-D images of the person's face which are taken from particular directions such as front, right, left, etc. and modifying them along region boundaries to achieve seamless stitching of color on the 3-D face model. The directional images are taken while the mouth is closed and the eyes are open. In order to capture the color information of the facial regions that are not visible in the directional images, i.e., the inside of the mouth and the outside of the eyelids, additional 2-D images are also taken and included in the texture image.

Description

METHOD FOR GENERATING A PERSONALIZED 3-D FACE MODEL
CROSS-REFERENCE TO RELATED APPLICATIONS
This application claims the benefit of U.S. Patent Application Serial No. 09/689, 186, filed October 12, 2000 (Attorney Docket No. 89589.113100).
FIELD OF THE INVENTION
The present invention is related to the field of computer generated modeling, and more specifically, to a technique for generating a personalized three-dimensional (3-D) face model from a sequence of two-dimensional (2-D) images of a person's face.
BACKGROUND OF THE INVENTION
Generation of a 3-D face model of a person involves mapping a real image of the face of the person onto a 3-D triangular mesh that has been shaped to have the same or similar geometry as the face of the person. 3-D triangular mesh refers to a connected set of triangular patches in 3-D whose corners form the nodes of the mesh. Each triangular patch in the 3-D mesh acquires its image data from an associated triangular region in the image of the face.
The methods disclosed in the prior art for generating a 3-D face model can be generally classified as those that involve (i) a fully manual process, (ii) a semi-automatic process and (iii) a fully-automatic process. In a fully manual process, every triangular patch of the 3-D mesh has to be manually mapped onto the image of the face according to the facial features of the face. Fully manual processes are labor intensive and time consuming because the number of triangular patches in the 3-D mesh could range from a hundred to several thousands.
Semi-automatic processes rely on automatically detecting or manually marking certain features on the face, such as eyes, nose and mouth, and initialize the 3-D mesh by an affine warping of a standard 3-D mesh based on the location of the detected facial features. However, a global affine transformation generally does not match the many local facial dimensions. Thus, the locations of the nodes are fine-tuned in a manual process for each person.
Fully automatic processes drastically reduce the time required to map an image onto a 3-D mesh. However, while hardware based fully automatic processes are very costly, software based fully automatic processes are very sensitive to the image data and thus may not consistently produce accurate 3-D face models.
In addition to a 3-D mesh that matches the geometry of the face, a composite image that contains facial image data from various viewing directions also needs to be constructed. In the prior art, the composite image is a mosaic (or sprite) image of the face that is produced either by a 3-D rotating camera or by stitching a number of 2-D images of the face. While the former process is very costly, the latter one is generally very inaccurate.
Hence, there is a need for a fast, inexpensive, and accurate method for generating the 3-D mesh and texture image for a face model. The present invention proposes a semi- automatic method for generating the 3-D mesh with minimal manual fine tuning. The present invention also proposes a simpler and more general technique for generating the texture image, that involves only concatenating and color blending the 2-D images of the face.
SUMMARY OF THE INVENTION
The present invention provides an improvement designed to satisfy the aforementioned needs. Particularly, the present invention is directed to a computer program product for creating a 3-D face model from a plurality of 2-D images of a person's face, by performing the steps of: (a) receiving the plurality of images of a person; (b) obtaining the geometry mesh by deforming a predefined standard 3-D triangular mesh based on the dimensions and relative positions of the person's facial features; and (c) obtaining the texture image by compositing a plurality of 2-D images of the person taken from particular directions and modifying them in boundary regions to achieve seamless stitching of color for the 3-D face model. BRIEF DESCRIPTION OF THE DRAWINGS
In the course of the following detailed description, reference will be made to the attached drawings in which: FIG. 1 is a perspective view of a computer system for implementing the present invention;
FIG. 2 is a diagram illustrating the method of present invention;
FIG. 3 is a flowchart for the method of the present invention;
FIG. 4a is a diagram illustrating the method of calculating the calibration parameter of the camera with a target object;
FIG. 4b is a diagram illustrating the image of the target object captured by the camera;
FIG. 5 is a diagram illustrating the method of acquiring a plurality of images of a person's face using the camera; FIG. 6 is a diagram further illustrating the method of acquiring a plurality of images of a person's face using the camera;
FIG. 7 is a diagram illustrating the methods of specifying and locating the feature points of the face;
FIG. 8 is a first table further illustrating the method of FIG. 7; FIG. 9 is a second table further illustrating the method of FIG. 7;
FIG. 10 is a diagram illustrating the method of selecting an initial geometry mesh for the face;
FIG. 11 is a diagram illustrating the method of making global modifications to the geometry mesh; FIG. 12 is a diagram illustrating the method of making local modifications to the geometry mesh;
FIG. 13 is a diagram further illustrating the method of making local modifications to the geometry mesh;
FIG. 14 is a diagram further illustrating the method of making local modifications to the geometry mesh;
FIG. 15 is a diagram illustrating the method of selecting the shade images;
FIG. 16 is a diagram illustrating the method of blending the shade images. DETAILED DESCRIPTION OF THE INVENTION
Referring to FIG. 1, there is illustrated a computer system 10 for implementing the present invention. The computer system 10 includes a microprocessor-based unit 12 for receiving and processing software programs and for performing other well known processing functions. The software programs are contained on a computer useable medium 14, typically a compact disk, and are input into the microprocessor-based unit 12 via the compact disk player 16 electronically connected to the microprocessor-based unit 12. As an alternate to using the compact disk 14, programs could also be contained in an Internet server 18 and input into the microprocessor-based unit 12 via an Internet connection 20. A camera 22 is electronically connected to the microprocessor-based unit 12 to capture the 2-D images of a person's face. A display 24 is electronically connected to the microprocessor-based unit 12 for displaying the images and user related information associated with the software. A keyboard 26 is connected to the microprocessor based unit 12 for allowing a user to input information to the software. A mouse 28 is also connected to the microprocessor based unit 12 for selecting items on the display 24 or for entering 2-D position information to the software, as is well known in the art. As an alternate to using the mouse 28, a digital pen 30 and a digital pad 32 may be used for selecting items on the display 24 and entering position information to the software. The output of the computer system is either stored on a hard disk 34 connected to the microprocessor unit 12, or uploaded to the Internet server 18 via the Internet connection 20. Alternatively, the output of the computer system can be stored on another computer useable medium 14, typically a compact disk, via a compact disk writer 36.
The below-described steps of the present invention are implemented on the computer system 10. Before describing the steps of the present invention, it will facilitate understanding to have an understanding of the following terms. Referring to FIG. 2, 3-D face model is composed of a 3-D triangular mesh (geometry mesh) 41 and a 2-D composite image (texture image) 42. 3-D triangular mesh refers to a connected set of triangular patches in 3-D whose corners form the nodes of the mesh. Each triangular patch 43 in the geometry mesh 41 is associated with a triangular region 44 in the texture image 42. In order to render the face model of a person on the display 24 of the computer system 10, the outside surface of each triangular patch 43 in the geometry mesh 41 is painted with the image data contained in its corresponding triangle 44 in the texture image 42. Image data are transferred from a triangle 44 in the texture image 42 to its counterpart 43 in the geometry mesh 41 via an affine transform which is well known to anyone knowledgeable in the field of image processing.
Referring to FIG. 3, there are illustrated the seven steps of the present invention which are first succinctly outlined and later described in detail. Briefly stated, the seven steps are as follows: (a) calculating the calibration parameter of the camera (Step 110); (b) acquiring a plurality of images of a person's face using the camera (Step 120); (c) calculating the facial dimensions and the position and orientation of the face in the acquired images (Step 130); (d) obtaining a geometry mesh and an associated shape mesh for the face (Step 140); (e) creating a texture image for painting the surface of the deformed geometry mesh (Step 150); (f) adding any synthetic components to the face model (Step 160); (g) storing or transmitting the face model (Step 170).
A. Calculating The Calibration Parameter Of The Camera (Step 110)
Referring to FIGS. 4a and 4b, in the first step 110, a perspective image of a target object is captured with the camera with the target object being placed at approximately the same distance from the camera as the person's face. The method of the present invention uses the perspective image of the target object to calculate a camera parameter that is used in the subsequent steps, hereinafter referred to as the E parameter. It is instructive to note at this point that the E parameter has a non-negative value and it is a measure of the amount of perspective deformation caused by the camera. A zero value indicates no perspective deformation and the larger the value of the E parameter the more the perspective deformation caused by the camera.
Still referring to FIGS. 4a and 4b, in a preferred embodiment of the invention, a square-shaped object 211 is employed as the target object and the value of the Ε parameter of the camera is calculated as follows: First, the four corners of the quadrilateral 212 are either automatically detected or manually marked by a user on the image 213 of the object captured by the camera. Let (xn, yn), n = 1,2,3,4, represent 2-D the coordinates of the four corners of the object expressed in units of pixels with respect to the center 214 of the image 213. Letting (Xn, Yn, Zn), n = 1,2,3,4, represent the corresponding 3-D coordinates of the corners of the object in 3-D in units of meters with respect to the location 215 of the camera, the relationship between the 2-D and 3-D coordinates are mathematically expressed as follows: X Ln yn^FD,
where F denotes the focal length of camera in meters, and D denotes the meter to pixel conversion factor. For the purpose of present invention, it is necessary to find only the value of the product FD . In the present invention, we refer to the inverse of this product as the E parameter, hence in mathematical terms
*= FD We also take advantage of the fact that the target object is square shaped and planar, hence letting al denote the 3-D vector from (Xl,Yl,Zl) to (X2,Y2,Z2) and ocJ denote the 3-D vector from (X Y^Z^) to (X4, Y4,Z4), where I and J are orthonormal vectors and α is the size of the square, we have the following mathematical expressions for the 3-D positions of the corners of the square object:
(X2,Y2,Z2) = (Xl,Yl,Zl)+aI, (X3,Y3,Z3) = (Xλ,Yx,Z) +cc/+αJ, (X4,Y4,Z4) = (X1,Yl,Zl)+aJ.
It is well known to anyone having knowledge in the field of 3-D geometry that the pair of 3-D orthonormal vectors (I,J) axe specified uniquely with 3 real numbers. Thus, on the right hand side of the above equation set there is a total of 7 unknown real numbers defining the square object: 3 in (I,J), 3 in (XvYx,Zλ), and the size of the square α . Hence, including the E parameter, the following set of equations
_ \_XJL X"~EZ n '
y" EZ n ' has a total of 8 unknown real numbers on the right hand side, and 8 measured quantities, namely (x„,y„), n = 1,2,3,4, on the left hand side, resulting in a unique solution for the unknown real numbers in terms of the measured quantities. It is well known to anyone knowledgeable in the field of algebra how to obtain the value of the E parameter from the above equation set given only the measured quantities (x„ ,yn), n = 1,2,3,4. B. Acquiring A Plurality Of Images Of A Person's Face Using The Camera
(Step 120)
Referring to FIG. 3, the method of acquiring a plurality of images of a person's face using the camera comprises the steps of (1) acquiring neutral images of the face (Step 121); and (2) acquiring action images of the face (Step 122). In the following, a detailed description of these steps is given.
B 1. Acquiring Neutral Images Of The Face (Step 121)
Referring to FIGS. 3 and 5, in the second step 120, a plurality of 2-D images of the person's face in the same neutral state are captured with the camera from different directions. The neutral state for the face means that all face muscles are relaxed, eyes are normally open, mouth is closed and lips are in contact. These images are subsequently used to obtain the neutral geometry of the face model, hence, hereinafter they are referred to as the neutral images. The camera directions to capture neutral images are selected so that the majority of facial features such as eyes, eyebrows, ears, nose and lips are visible in all images. The face is not required to be at the same distance from the camera in all the neutral images.
Still referring to FIG. 5, in a preferred embodiment of the present invention, fifteen camera directions selected for obtaining the neutral images. In order to obtain the neutral images, the camera remains fixed and the person rotates his/her head to realize the following fifteen different directions: front 221, forehead 222, chin 223, angled-right 224, angled-right-tilted-down 225, angled-right-tilted-up 226, angled-left 227, angled-left- tilted-down 228, angled-left-tilted-up 229, full-right-profile 230, full-right-profile-tilted- down 231, full-right-profile-tilted-up 232, full-left-profile 233, full-left-profile-tilted- down 234, and full-left-profile-tilted-up 235.
B2. Acquiring Action Images Of The Face (Step 122)
Referring to FIGS. 3 and 6, in the second step 120, a plurality of 2-D images of the person's face in action states are captured with the camera from different directions. The action states for the face include faces with a smiling mouth, a yawning mouth, raised eyebrows, etc. These images are subsequently used to obtain the action geometries of the face model, hence, hereinafter they are referred to as the action images. The camera directions to capture the action images are selected so that the majority of facial features such as eyes, eyebrows, ears, nose and lips are visible in all images. The face is not required to be at the same distance from the camera in all the action images.
Still referring to FIG. 6, in a preferred embodiment of the present invention, five facial action states and two camera directions for each action are selected. The facial action states are as follows: smiling mouth, yawning mouth, kissing mouth, raised eyebrows, and squeezed eyebrows. The camera directions are front and right. In order to obtain the action images, the camera remains fixed and the person rotates his/her head while his/her face assumes an action state to capture the following ten different images: front-yawning-mouth 241, right-angled-yawning-mouth 242, front-smiling-mouth 243, right-angled-smiling-mouth 244, front-kissing-mouth 245, right-angled-kissing-mouth 246, front-raised-eyebrows 247, right-angled-raised-eyebrows 248, front-squeezed- eyebrows- 249, right-angled-squeezed-eyebrows 250.
C. Calculating Facial Dimensions And The Position And Orientation Of The Face In The Acquired Images (Step 130)
Referring to FIG. 3, the method of calculating the facial dimensions and the position and orientation of the face in the acquired images comprises the steps of (1) specifying feature points of the face (Step 131); (2) locating the feature points on the neutral and action images (Step 132); (3) calculating the 3-D positions of the feature points (Step 133); and (4) calculating the position and orientation of the face in the neutral and action images (Step 134). In the following, a detailed description of these steps is given.
Cl. Specifying Feature Points Of The Face (Step 131)
A plurality of clearly identifiable and sparsely distributed points on the face are selected as the feature points. Referring to FIG. 7, in a preferred embodiment of the present invention, the following thirteen locations on the person's face are specified as the feature points: the centers of the right 251 and left 252 eye pupils, the central end points of the right 253 and left 254 eyebrows, the right 255 and left 256 corners of the nose, the top 257 and bottom 258 points of the right ear, the top 259 and bottom 260 points of the left ear, the right 261 and left 262 corners of the mouth, and the mid-point 263 of the line where the upper and lower lips contact each other.
C2. Locating The Feature Points On The Neutral and Action Images (Step 132)
The feature points are automatically located or manually marked on the acquired images. It is important to note that not all feature points may be visible in all neutral and action images and some feature points are not in their neutral position in some action images. Thus, in the present invention, the location of only the visible feature points and feature points that are in their neutral position are automatically detected or manually marked in each neutral and action image.
In a preferred embodiment of the invention, the feature points are manually marked in the neutral images that are indicated with an X in the table in FIG. 8, and are manually marked in action images that are indicated with an X in FIG. 9. The feature points are assumed as invisible in those neutral images that are not indicated with an X in the table in FIG. 8. The feature points are not in their neutral position in those action images that are not indicated with an X in the table in FIG. 9. In operation, the computer program prompts the user to manually mark only the visible feature points and feature points that are in their neutral position in each image.
C3. Calculating The 3-D Positions Of The Feature Points (Step 133)
Given the 2-D locations of the feature points in the neutral images where they are visible, and the value of the E parameter of the camera obtained in Step 110, the 3-D positions of the feature points of the person's face are calculated using a modified version of the method in "Shape and Motion from Image Streams under Orthography: A Factorization Method" by Carlo Tomasi and Takeo Kanade, International Journal of Computer Vision, vol. 9, no. 2, pp. 137-154, 1992. In the following, first, a general mathematical analysis of 2-D image projections of 3-D feature points is given. Next, the method of "Shape and Motion from Image Streams under Orthography" is reviewed. Then, the proposed modification to the method of "Factorization of Shape and Motion" is presented. Without loss of generality, assume that the coordinate axes of the camera system are the unit vectors ϊ = (1,0,0) , j = (0,1,0) , and k = (0,0,1) . Hence, the image plane passes at (0,0,-E) and is perpendicular to k . Let N denote the number of feature points and Pn, n = l,...,N, denote the coordinates of the feature points with respect to the origin (0,0,0) of the camera system. Clearly, as the person's face is moved, the coordinates,
Pn, n = \,...,N, of all the feature points are changed. It is therefore more appropriate to use a local coordinate system for the face to represent the coordinates of the feature points. Let the unit vectors i , j , and k denote the coordinate axes for an arbitrary local coordinate system for the face. The origin C0 of the local coordinate system is defined to be the centroid of the feature points and is given by
1 N
Furthermore, let An, n = 1,...,N, denote the coordinates of the feature points with respect to the origin of the local coordinate system. Thus, as the person's face is moved, the origin of the local coordinate system is changed but the local coordinates of the feature points always remain fixed.
In order to relate the global coordinates Pn, n = \,...,N, to the local coordinates
An, n = l,...,N, define the unit vectors ϊ = (%Jx,kx) , J = (ϊyJy,ky) , and
K = (iz,jz,kz) , where the subscripts x , y , andz , denote the coordinates of the respective vectors along the axes ϊ , j , and k of the global coordinate system. Then, the relationship between the global coordinates and the local coordinates of the feature points is given by
p n,y = C0,y + An • j , and P„,z = Cθ!Z + A„ * K ,
where • denotes the inner product of two vectors. Finally, the 2-D coordinates of the feature points projected on the image plane are expressed as l P - nn,,xx _ 1 C0tX + A„ I p = — = , and n'x E " P"n,2 E C0tZ + An . K
Figure imgf000012_0001
where the quantities on the left hand side are in units of pixels while the quantities of the right hand side, except the E parameter and the unit vectors, are in units of meters. The above equations can be rewritten with all quantities in units of pixels as follows:
Figure imgf000012_0002
where
Figure imgf000012_0003
where W is some constant in units of meters that will be defined shortly.
It is now time to write the above equations for all neutral images. Suppose the number of neutral images is F , then the perspective projection equations for 2-D feature points are
Figure imgf000012_0004
P f n,y — - °f ;°'y + sn * Jfr > λf + ES„ * Kf
where / = 1,...,E, denotes the image number. Note that all quantities in the above equations vary with the image number, except for the local coordinates of the feature points and of course the E parameter. The parameter W has the same value for all / = 1,...,F, otherwise its value is arbitrary.
The method of "Shape and Motion from Image Streams under Orthography" assumes a special form of 2-D projection, namely, the orthographic projection. In orthographic projection, it is assumed that C0 z is the same for all images, W = C0 z , and
W » 1. Thus, the above perspective projection equations reduce to the following form in the case of orthographic projections:
pf„,x = cfo,x + Sn »If , and
Figure imgf000013_0001
The quantities on the left hand side are measured quantities while the quantities on the right hand side are unknown quantities. The method of "Factorization of Shape and Motion" solves the above equations for the 3-D local coordinates S„ of the feature points, and the orientation vectors If and Jf and the 2-D position (cfo,x,cfo,y) of the centroid of the feature points in all images in terms of the 2-D projected positions (pf n,x , pfn,y ) of the feature points in all images.
In the following, a modification to the method of "Shape and Motion from Image
Streams under Orthography" is presented in order to solve the perspective 2-D projection equations repeated below
Figure imgf000013_0002
for the 3-D local coordinates SB of the feature points and the orientation vectors ϊf and Jf , the 2-D position (cfo,x,cfo,y) of the centroid of the feature points, and the distance ratio λf in all images in terms of the 2-D projected positions (pf»,x,pf n,y) of the feature points in all images. Note that the third orientation vector Kf is uniquely defined by the first two orientation vectors If and Jf simply as
Kf = Jf , where x denotes the vector outer product. The proposed modification method is an iterative procedure whose steps are as given below:
1. Use the motion-and-shape-estimation method of "Shape and Motion from Image Streams under Orthography" that employs the orthographic projection equations to calculate Sn for n = \,...,N, and P , Jf and (cfo,x,cfo,y) for / = 1,...,E, given the 2-D measurements (pf n,x,pfn,y) and the visibility information of the feature points. Let Kf = P x Jf .
2. Calculate λf for / = 1,...,E, using the perspective projection equations as
λf = + S. • , Cf0,y
Figure imgf000014_0001
Figure imgf000014_0002
3. Modify the 2-D measurements (pfn,x,pf n,y) for n = l,...,N, and for f = \,...,F, using the calculated values in Steps 1 and 2 as
pf n,x <r- pf n,xf + ESn *Kf) , and
Pf n,y <r- pf„,yf +ES„ * Kf) .
4. Repeat Steps 1, 2, and 3 until a predetermined number of iterations has been reached, or the following average measurement of matching error
1
Figure imgf000014_0003
goes below a predetermined threshold, where the summation is only over the visible points in each image, the quantity V denotes the total number of visible points in all images, and (pf„,x,pf n,y) are the original 2-D measurements. In a preferred embodiment of the invention, the number of iterations is selected to be 50 and the threshold is selected to be 1 pixel.
The 3-D positions Sn , n = 1,...,N, of the feature points are globally translated and rotated so that they correspond to a frontal-looking face. In a preferred embodiment of the invention, the 3-D positions of the feature points right-ear-top 257, left-ear-top 259, right- pupil 251, left-pupil 252, and lip-center 263 are used to globally translate and rotate the the 3-D positions Sn , n = \,...,N, so that they correspond to a frontal-looking face. LetTj and r2 denote the 3-D positions of the right-ear-top 257 and left-ear-top 259, respectively; fx and f2 denote the 3-D positions of the right-pupil 251 and left-pupil 252, respectively; and b denote the 3-D position of the lip-center 263. Then, the following procedure is used to globally translate the positions S„ , n = 1,...,N, of the feature points:
1. Define the following vector
c = -(rx +r2).
2. Subtract c from each Sn , i.e.,
Sn r~ Sn so that the center of the feature points is shifted to the mid-point of the right- ear-top 257 and the left-ear-top 259.
Following the global translation of the feature points, in a preferred embodiment of the invention, the following procedure is used to globally rotate the feature points so that they correspond to a frontal looking face: 1. Define the following three vectors
u = r2 -rx, v = -(fx +f2)-b, and w = -(fx +f2) --(rx +r2) 2. Use the Gram-Schmidt orthonormalization procedure to convert the vectors u , v, and w into an orthonormal set of vectors. As a result, u simply will be normalized; only the component of v that is perpendicular to u will be retained and subsequently normalized; and only the component of W that is perpendicular to both u and the modified v will be retained and subsequently normalized.
3. Form the 3x3 rotation matrix T so that the columns of T consist of the orthonormalized vectors u , v, w, i.e.,
T = [u v w].
4. Finally, left-multiply each Sn with T, i.e.,
S„ <r-TS„ .
C4. Calculating The Position And Orientation Of The Face In The Neutral and Action
Images (Step 134)
Given the 3-D positions SB for n = l,...,N, of the feature points of the person's face obtained in Step 133, the 2-D measurements (pJ n,x,pJ „,y) of the feature points obtained in Step 132, and the value of the E parameter of the camera obtained in Step 110, the method of calculating the 3-D position and orientation of the person's face in the neutral and action images is disclosed in the following. It facilitates understanding to note that the 3-D position of the face in an image is described by the centroid (cf ,x,cfo,y) of the feature points and the camera-distance-ratio λ/ of the face in that image. Likewise, the 3-D orientation of the face in an image / is described by the vectors P and J/in that image. The 3-D position and orientation parameters (cfo,x,cfo,y) , λf , If and Jf are calculated using the following steps:
1. Use the motion-only-estimation method of "Factorization of Shape and Motion" that employs the orthographic projection equations to calculate P,
Jf and (cfo,x,cfo,y) given the 2-D measurements (pfn,x,pfn,y) , the visibility information, and the 3-D positions Sn of the feature points. Let K' = ϊ' x Jf .
2. Calculate λ/ using the perspective projection equations as
Figure imgf000017_0001
3. Modify the 2-D measurements (pfn,x,pf n,y) for n = l,...,N, using the calculated values in Step 1 and 2 as
pf n,x <r- pf„,x(Xf + ESn *Kf) , and pf n,y <r- pf„,y(λf +ES„ *Kf) .
4. Repeat Steps 1, 2, and 3 until a predetermined number of iterations has been reached, or the following average measurement of matching error
Figure imgf000017_0002
for the image goes below a predetermined threshold, where the summation is only over the visible points in the image, the quantity U denotes the total number of visible points in the image, and (pf n,x,pfn,y) are the original 2-D measurements, hi a preferred embodiment of the invention, the number of iterations is selected to be 50 and the threshold is selected to be 1 pixel.
D. Obtaining The Geometry And Shape Meshes For The Neutral And Action
Faces (Step 150) Referring to FIG. 3, the method of obtaining the geometry and shape meshes for the neutral and action faces comprises the steps of (1) selecting and initial geometry mesh for the face (Step 151), (2) making global modifications to the geometry mesh according to the 3-D position data of the feature points (Step 152); (3) making local modifications to the geometry mesh to match the shape of the person's face (Step 153); and (4) defining the shape meshes for the action faces (Step 154). In the following, a detailed description of these steps is given.
D 1. Selecting An Initial Geometry Mesh For The Face (Step 151)
Referring to FIG. 10, a user selects an initial geometry mesh 271 among a collection 272 of standard predefined geometry meshes that best fits the facial type of the person. The facial type of the person includes the skull type, hair type, nose type, and chin type. In a preferred embodiment of the invention, a user is provided with separate collections of 3-D triangular meshes that represent different skull types, hair types, nose types, and chin types, and is allowed to stitch together a selection from each collection of facial parts to obtain the initial geometry mesh for the person's face. Although we have disclosed triangular meshes, those skilled in the art will understand that any other polygonal mesh could be substituted for the triangular mesh.
D2. Making Global Modifications To The Geometry Mesh According To The 3-D Position Data Of The Feature Points (Step 152)
Referring to FIG. 11, the globally translated and rotated 3-D positions of the feature points of the person's face obtained in Step 133 are used to globally deform the initial geometry mesh 271 to match the relative positions of the feature points on the globally deformed geometry mesh 273 and to match the global proportions of the person's face. In a preferred embodiment of the invention the 3-D positions of the feature points right-ear-top 257, left-ear-top 259, right-eyebrow-central 251, left-eyebrow-central 252, and lip-center 263; and the 3-D positions of the corresponding geometry mesh nodes geometry-mesh-right-ear-top 265, geometry-mesh-left-ear-top 266, geometry-mesh-right- eyebrow-central 267, geometry-mesh-left-eyebrow-central 268, and geometry-mesh-lip- center 269 are used to globally scale, rotate, and shear the initial geometry mesh to match the global dimensions of the person's face.
Let rx and r2 denote the 3-D positions of the right-ear-top 257 and left-ear-top
259, respectively; fx and f2 denote the 3-D positions of the right-eyebrow-central 251 and left-eyebrow-central 252, respectively; and b denote the 3-D position of the lip-
center 263. Then, define the following three vectors
1 1 1 u = r2 -rx , v = -(fx +f2) -b, and w = -(fx +f2)--(rx +r2)
Similarly, let Rx and R2 denote the 3-D positions of the geometry-mesh-right-ear- top 265 and geometry-mesh-left-ear-top 266, respectively; Fx and F2 denote the 3-D positions of the geometry-mesh-right-eyebrow-central 267 and geometry-mesh-left- eyebrow-central 268, respectively; and b denote the 3-D position of the geometry-mesh- lip-center 269. Then, define the following three vectors
U = R2 -R1, +FJ-fa +BJ, and W = (F +F2)-B .
Figure imgf000019_0001
In a preferred embodiment of the invention, the vectors u , v, w, U, V , and W are used to globally rotate, scale, and shear the initial geometry mesh 271 to match the global dimensions of the person's face. The process of rotation, scaling, and shear are carried out in that order as explained in the following:
1. Rotation: Rotate the initial geometry mesh 271 so that the vector V is aligned with the vector .
2. Scaling: Scale the rotated geometry mesh in the x-, y-, and z- directions by the following scale factors respectively
H H -HJ M' 111' 111 3. Shear: Shear the rotated and scaled geometry mesh 271 along the y- direction so that the rotated and scaled vector V is aligned with the vector v, i.e., left- multiply each Sn with the matrix
Figure imgf000020_0001
where h = v V.
D3. Making Local Modifications To The Geometry Mesh To. Match The Shape Of The
Face (Step 153)
Referring to FIG. 12, the geometry mesh 273 obtained in Step 151 is moved and rotated in 3-D and displayed simultaneously with any image using the 3-D motion calculated in Step 134 for that image. Local adjustments are made on the geometry mesh 273 to match the local geometry of the face by moving the nodes of the geometry mesh 273 via a user interface. The nodes of the geometry mesh 273 are moved indirectly using a separate lower resolution (coarser) triangular mesh, hereinafter referred to as the shape mesh 275, overlying the geometry mesh and comprising substantially fewer and larger triangular patches than the geometry mesh. According to the method of the present invention, the user moves only the nodes of the shape mesh 275 and the nodes of the geometry mesh 273 move automatically. In a preferred embodiment of the invention, the shape mesh is selected so that the nodes of the shape mesh are selected from the nodes of the geometry mesh, i.e., a subset of the nodes of the geometry mesh 271 define the shape mesh 275. Hence the shape mesh 275 is a lower resolution mesh than the geometry mesh 271. In particular, the feature points defined in Step 131 of the present invention are included in the collection of the nodes of the shape mesh. The method of indirectly moving the nodes of the geometry mesh 273 by moving the nodes of the shape mesh 275 is disclosed in the following.
Referring to FIG. 12, each and every node 280 of the geometry mesh 273 is attached to, and hence controlled by, a triangle 281 of the shape mesh 275, following the global adjustments made to the shape 275 and the geometry mesh 273 in Step 151. The following procedure is used to attach the nodes of the geometry mesh 273 to the triangles of the shape mesh 275:
1. Calculate the normal vectors at the nodes of the shape mesh 275: Still referring to FIG. 12, the normal vector nA at the node_4 is obtained by averaging and the surface normals of all the triangles of the shape mesh 275 that have the node A as one of their corners. The result of the averaging is normalized so that the vector nA has unit length.
2. Define a normal vector for every point on the triangles of the shape mesh 275: Still referring to FIG. 12, the normal vector np at the point P on the shape triangle 281 is obtained by a weighted average of the normal vectors at the corners of the shape triangle 281 as follows: n P = anA + βnB +ync where the weights α , β and γ satisfy 0 ≤ a,β, < 1 and are uniquely determined by solving the equation
P = cA + βB +γC under the constraint + β+y = 1.
3. For each node of the geometry mesh 273, find a shape triangle to attach the node: A node of the geometry triangle is attached to a triangle of the shape mesh 275 only if there is a point on the triangle such that the line passing through the node and the point is parallel to the surface normal vector at the point. Still referring to FIG. 12, the node 280 of the geometry mesh 273 located at Q is attached to the triangle 281 of the shape mesh 275 because the line passing through Q and P is parallel to np . Then, it is said that the node Q 280 is attached to the triangle ABC 281 at the point P . This attachment is quantified by four numbers, namely the weights α , β and γ , and the distance d between the node Q 280 and the attachment point P .
Referring to FIG. 13, once the geometry mesh 273 is attached to the shape mesh 275, local modifications to the geometry mesh 273 are automatically made by
10 moving the nodes of the shape mesh 275 as follows. When a node of the shape triangle 281 is moved from position A to position A the point of attachment is moved automatically to a new position P ' calculated as
P= aA'+βB +yC . As the definition of the shape triangle 281 is changed from ABC to A 'BC, the normal vectors at the corners A ', B and C are recalculated to be n'A , n and ric which are then used in the following equation to yield the surface normal vector rip at the point P ' of attachment:
" ' = an 'A + βn 'B +yn 'c . Finally, the moved position Q for the node of the geometry mesh 273 is calculated as
Referring to FIG. 14, it helps understanding to note that by moving the appropriate nodes 282, 283, 284, 285, 286, 287, 288, 289 of the shape mesh 275, the nose part of the geometry mesh 273 is adapted to the person's nose.
In mathematical terms, let K denote the number of nodes of the shape mesh 275 and Dn , n = \,...,K, denote the positions of the nodes of the shape mesh 275 for the neutral face 221. Also, let ak, βk , Jk, dk , and mk denote the attachment coefficients for the nodes of the geometry mesh 271 for k = l,...,L , where L denotes the number of nodes of the geometry mesh 271 and mk denotes the triangle of the shape mesh 275 controlling node k of the geometry mesh.
D4. Defining The Shape Meshes For The Action Faces (Step 154)
As part of the personalized 3-D face model, geometry mesh 273 definitions conforming to each action state of the face are also obtained. The nodes of the shape mesh 275 are moved to deform the geometry mesh 273 for each facial action state so that the deformed geometry mesh fits the geometry of the face in the action state. Let H denote the number of action faces. Referring to FIG. 6, in a preferred embodiment of the invention there are a total of 5 action states for the face, hence H = 5. In mathematical terms, Dn i, i = l,...,H , denote the positions of the nodes of the shape mesh 275 conforming to the action faces.
E. Creating A Texture Image For Painting The Surface Of The Geometry Mesh (Step 170)
A subset of the neutral and action images are used to obtain the texture image of the face model. These images hereinafter are referred to as the shade images. Thus, the texture image is a composite of the shade images. The shade images correspond to special camera directions such as front, right, left, top, and bottom.
Referring to FIG. 3, creating the texture image for painting the surface of the geometry mesh involves the steps of (1) selecting the shade images (Step 171); and (2) blending the shade images (Step 172). In the following, a detailed description of these steps are given.
El. Selecting The Shade Images (Step 171)
Referring to FIGS. 15 and 16, a subset of the neutral and action images are selected as shade images and are used to form the texture image 290 for painting the surface of the geometry mesh 273. Suppose that the number of shade images is N , the triangles of the geometry mesh 273 are divided into N disjoint regions, hereinafter referred to as the texture regions, so that the triangles that are in the same texture region acquire their texture data from the same shade image. Shade images are selected so that the triangles in a texture region are generally more clearly visible in the shade image of the texture region than in any other shade image. It is important to note that the texture regions are selected so that the triangles that are in the same texture region are connected with each other. The polygon that forms the boundary of a texture region is referred to as the boundary polygon for that texture region. The triangles in a texture region that are on the boundary of the texture region are referred to as the boundary triangles for that texture region. The triangles that are on the boundary of a neighboring texture region are referred to as the neighboring boundary triangles for that texture region.
In a preferred embodiment of the invention, the following five neutral images and one action image are selected as the shade images: front 221, front-top 222, front-bottom 223, right-most 230, left-most 233, and yawning-mouth-front 241. The texture image 290 is formed by compositing these shade images. Still referring to FIG. 14, the corresponding texture regions are respectively referred to as front region 291, top region 292, bottom region 293, right region 294, and left region 295.
E2. Blending The Shade Images (Step 172)
Referring to FIG. 16, the method of color blending is explained on a front- boundary triangle 296 and a right-boundary triangle 297. The front-boundary triangle 296 is inside the front region 291 and on the boundary polygon of the front region 291, refeπed to as the front-boundary polygon 298. The right-boundary triangle 297 is inside the right region 294 and on the boundary polygon of the right region 294, referred to as the right-boundary polygon 299. The front-boundary triangle 296 and the right boundary triangle 297 are neighboring triangles. Still referring to FIG. 16, the 2-D projection of the front-boundary triangle 296 on the front image 221 is refeπed to as the front-projected front-boundary triangle 306 and the 2-D projection of the front-boundary triangle 296 on the full-right-profile image 230 is refeπed to as the right-projected-front-boundary triangle 316. The 2-D projection of the right-boundary triangle 297 on the full- right-profile image 230 is refeπed to as the right- projected-right-boundary triangle 307 and the 2-D projection of the right-boundary triangle 297 on the front image 221 is refeπed to as the front-projected right-boundary triangle 317.
In the present invention, the color inside the front-projected-front-boundary triangle 306 is blended with the color inside the right-projected-front-boundary triangle
316, and the color inside the right-projected-right-boundary triangle 307 is blended with the color inside the front-projected-right-boundary triangle 317 to provide for a smooth transition (stitching) of color on the face model.
It is important to note that the mouth region is part of the front region 291, and the image data along its boundary is not blended with the image data of any other region.
F. Adding Any Synthetic Components To The Face Model (Step 180)
-> If the person wears eyeglasses, earrings, etc., on his/her face, such components are added to the face model as well. If the person wears eyeglasses, then a 3-D mesh model of a pair of eyeglasses is selected from a list of candidate models that best resembles the actual pair of eyeglasses worn by the person. Similarly, if the person wears earrings, then a 3-D mesh model of a pair of earrings is selected from a collection of earrings that best resembles the actual pair of earrings worn by the person. The selected 3-D mesh models are scaled automatically to fit the dimensions of the face of the person and positioned automatically on the ears and the nose regions of the geometry mesh model 273 of the person.
G. Storing Or Transmitting The Face Model (Step 190)
The face model comprises the initial geometry mesh 271; the positions of the nodes of the shape meshes for the neutral state Dn , n = 1,...,K, and the action states Dn i, i = l,...,H , of the face; the attachment coefficients ak, βfc , y k, dk , and mk , k = l,...,L ; the texture image and the associated image-to-mesh mapping data; and any synthetic components worn on the face. The aforementioned components of the face model generated via a computer can be stored on a computer useable medium and/or transmitted over the Internet to another computer.

Claims

What is claimed is:
1. A method for controlling a first mesh representative of fine features of an object with a second mesh representative of coarse features of the object comprising the steps of: attaching the fine mesh with a first set of nodes to the coarse mesh with a second set of nodes; and deforming the fine mesh using the coarse mesh.
2. The method of claim 1 further comprising: providing one or more images of the object; displaying the coarse and fine meshes over the image; and moving the nodes of the coarse mesh to conform to the coarse features of the images of the object in order to generate a 3-D model of the object.
3. The method of claim 2 wherein the object is a face and the steps further comprise: selecting a 3-D fine geometry mesh for the face; and using the coarse mesh, adapting the 3-D fine geometry mesh in accordance with relative 3-D locations of facial features.
4. The method of claim 1 wherein the step of attaching comprises: designing a 3-D triangular shape mesh that has less nodes than the 3-D geometry mesh; calculating normal vectors at the nodes of the shape mesh; defining a normal vector at every point on triangles of the shape mesh as a weighted average of the normal vectors at the nodes of the shape mesh; and finding a triangle of the shape mesh and a point on the triangle for every node of the geometry mesh so that a line passing through the node and the point is parallel to the normal vector at the point.
5. The method of claim 1 wherein the step of deforming comprises changing the 3-D geometry mesh model in accordance with the calculated orientation and position of the face in each 2-D image to provide for local modifications.
6. The method of claim 1 wherein the step of deforming further comprises generating local modifications to one or more prominent facial features.
7. The method of claim 6 further comprising the steps of selecting a fine geometry mesh model generally conesponding to the face and comprising a plurality of fine triangular patches with a node at each corner of the patch, and overlying the fine geometry mesh with a coarse shape mesh comprising substantially fewer and larger triangular patches.
8. The method of claim 7 wherein the triangles of the coarse shape mesh control the position of the nodes of the fine geometry mesh that are in the proximity of the triangles.
9. The method of claim 8 wherein the nodes of the coarse shape mesh are selectively moveable by the user and the nodes of the fine geometry mesh that are attached to the triangles of the shape mesh affected by the movement of the nodes of the shape mesh are re-positioned as a result of the following steps: calculating surface normals of the shape mesh at attachment points of all nodes of the geometry mesh controlled by the affected triangles of the shape mesh; and obtaining the positions of the nodes of the geometry mesh by adding to their attachment points a surface vector defined as the surface distance coefficient times the surface normal of the shape mesh at respective attachment point.
10. The method of claim 7 wherein the coarse mesh encloses the periphery of the face and encloses prominent facial features.
11. The method of claim 10 wherein the prominent facial features include one or more of the group consisting of eyes, nose, mouth, chin, cheeks, ears, hair, eyebrows, neck, and forehead.
12. A method for generating a personalized 3-D face model comprising the steps of: determining a calibration parameter of a camera; acquiring a plurality of 2-D images of a person's face; marking 2-D locations of one or more facial features of the face in each of the acquired images; calculating 3-D locations of facial features in accordance with the calibration parameter of the camera; estimating orientation and position of the face in each 2-D image; selecting a 3-D geometry mesh for the face; adapting the 3-D geometry mesh in accordance with the relative 3-D locations of the facial features; attaching a 3-D shape mesh to the 3-D geometry mesh; deforming the 3-D geometry mesh using the 3-D shape mesh to conform to the 2-D images of the face; selecting shade images from the 2-D images of the face; blending the shade images in accordance with the calculated orientation and position of the face in each shade image to obtain a texture image; and painting the deformed 3-D geometry mesh with the texture image to provide a 3-D
• model of the face.
13. The method of claim 12 wherein the step of determining the calibration parameter includes imaging a perspective view of a planar target having a plurality of point-like markings of fixed position on the target; acquiring 2-D locations of the point-like markings; calculating the focal length of the camera in pixel units.
14. The method of claim 13 wherein the point-like markings are aπanged at corners of a square target.
15. The method of claim 12 wherein the acquired 2-D images include at least two views of the face in a neutral state at different orientations.
16. The method of claim 15 wherein the two views are orthogonal.
17. The method of claim 12 wherein the acquired 2-D images comprise front, forehead, chin, angled-right, angled-right-tilted-up, angled-right-tilted-down, angled-left, angled-left-tilted-up, angled-left-tilted-down, full-right-profile, full-right-profile- tilted-up, full-right-profile-tilted-down, full-left-profile, full-left-profile-tilted-up, and full-left-profile-tilted-down views of the face in the neutral state.
18. The method of claim 12 wherein the acquired 2-D images comprise front, forehead, chin, full-right-profile, and full-left-profile views of the face in the neutral state.
19. The method of claim 12 wherein the acquired 2-D images include a plurality of views of the face in at least one action state;
20. The method of claim 19 wherein the action states of the face comprise smiling lips, kissing lips, yawning lips, raised eyebrows, and squeezed eyebrows;
21. The method of claim 19 wherein the acquired 2-D images of the face in an action state include at least two views at different orientations.
22. The method of claim 21 wherein the two views are front and angled-right.
23. The method of claim 12 wherein the step of marking further comprises marking pupils, eyebrows, ears, nose, and mouth.
24. The method of claim 23 wherein the ears are marked at the top and bottom ends.
25. The method of claim 23 wherein the eyebrows are marked at their proximate ends.
26. The method of claim 23 wherein the pupils are marked at their centers.
27. The method of claim 23 wherein the nose is marked at the base corners.
28. The method of claim 23 wherein the mouth is marked at opposite ends and at its center.
29. The method of claim 12 wherein the step of calculating the 3-D locations of facial features further comprises: calculating the 3-D locations of the facial features to conform to their 2-D locations in the acquired 2-D images of the face in the neutral state under an orthographic projection model; calculating relative distances of the face to the camera in the 2-D images to conform to the 2-D locations of the facial features and their calculated 3-D locations under a perspective projection model; modifying the 2-D locations of the facial features to conform to the calculated relative distances and the 3-D locations under a perspective projection model; recalculating the 3-D locations of the facial features to conform to their modified 2-D locations under an orthographic proj ection model; repeating the steps of calculating the relative distances, modifying the 2-D locations, and recalculating the 3-D locations to satisfy a convergence requirement; and translating and rotating the 3-D locations so that they coπespond to a frontal-looking face.
30. The method of claim 12 wherein the step of estimating the orientation and position of the face in each 2-D image further comprises calculating the position and orientation of the face in a 2-D image so that the 3-D locations of the facial features conform to their 2-D locations in the 2-D image under an orthographic projection model; calculating a relative distance of the face to the camera in the 2-D image to conform to the 2-D locations of the facial features and their calculated 3-D locations under a perspective projection model; modifying the 2-D locations of the facial features to conform to the calculated relative distance and the 3-D locations under a perspective projection model; recalculating the position and orientation of the face so that the 3-D locations of the facial features conform to their modified 2-D locations under an orthographic projection model; and repeating the steps of calculating the relative distance, modifying the 2-D locations, and recalculating the position and orientation to satisfy a convergence requirement;
31. The method of claim 12 wherein the step of adapting comprises changing the 3-D geometry mesh in accordance with the calculated 3-D locations of facial features to provide for global adaptations.
32. The method of claim 12 wherein the step of attaching comprises: designing a 3-D triangular shape mesh that has less nodes than the 3-D geometry mesh; calculating normal vectors at the nodes of the shape mesh; defining a normal vector at every point on triangles of the shape mesh as a weighted average of the normal vectors at the nodes of the shape mesh; and finding a triangle of the shape mesh and a point on the triangle for every node of the geometry mesh so that a line passing through the node and the point is parallel to the normal vector at the point.
33. The method of claim 12 wherein the step of deforming comprises changing the 3-D geometry mesh model in accordance with the calculated orientation and position of the face in each 2-D image to provide for local modifications.
34. The method of claim 12 wherein the step of deforming further comprises generating local modifications to one or more prominent facial features.
35. The method of claim 34 comprising the steps of selecting a fine geometry mesh model generally conesponding to the face and comprising a plurality of fine triangular patches with a node at each corner of the patch, and overlying the fine geometry mesh with a coarse shape mesh comprising substantially fewer and larger triangular patches.
36. The method of claim 35 wherein the triangles of the coarse shape mesh control the position of the nodes of the fine geometry mesh that are in the proximity of the triangles.
37. The method of claim 36 wherein the nodes of the coarse shape mesh are selectively moveable by the user and the nodes of the fine geometry mesh that are attached to the triangles of the shape mesh affected by the movement of the nodes of the shape mesh are re-positioned as a result of the following steps:
calculating surface normals of the shape mesh at attachment points of all nodes of the geometry mesh controlled by the affected triangles of the shape mesh; and obtaining the positions of the nodes of the geometry mesh by adding to their attachment points a surface vector defined as the surface distance coefficient times the surface normal of the shape mesh at respective attachment point.
38. The method of claim 35 wherein the coarse mesh encloses the periphery of the face and encloses prominent facial features.
39. The method of claim 38 wherein the prominent facial features include one or more of the group consisting of eyes, nose, mouth, chin, cheeks, ears, hair, eyebrows, neck, and forehead.
40. The method of claim 12 wherein the step of selecting the shade images comprises selecting one or more of the front, forehead, chin, full-right-profile, full-left-profile images.
41. The method of claim 40 wherein the step of selecting the shade images comprises selecting one or more of the images from the group consisting of front, forehead, chin, full-right-profile, full-left-profile images.
42. The method of claim 12 wherein the step of selecting the shade images comprises selecting four or more of the 2-D images for texture data.
43. The method of claim 42 wherein the four or more images are selected from the group consisting of front, forehead, chin, full-right-profile, full-left-profile images.
44. The method of claim 12 wherein the step of blending further comprises selecting at least two 2-D images; defining a border between the two images; and interpolating color in regions adjacent the border to gradually transition color of the regions on opposite sides of the border.
45. The method of claim 44 wherein color of pixels within border regions are changed in inverse proportion to the distance of the pixel from the border.
6. The method of claim 44 wherein the regions comprise triangles with at least one side or at least one comer on the border.
PCT/IB2001/002363 2000-10-12 2001-10-09 Facial animation of a personalized 3-d face model using a control mesh WO2002030171A2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP01986569A EP1334470A2 (en) 2000-10-12 2001-10-09 Facial animation of a personalized 3-d face model using a control mesh

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/689,186 US6664956B1 (en) 2000-10-12 2000-10-12 Method for generating a personalized 3-D face model
US09/689,186 2000-10-12

Publications (2)

Publication Number Publication Date
WO2002030171A2 true WO2002030171A2 (en) 2002-04-18
WO2002030171A3 WO2002030171A3 (en) 2002-10-31

Family

ID=24767388

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2001/002363 WO2002030171A2 (en) 2000-10-12 2001-10-09 Facial animation of a personalized 3-d face model using a control mesh

Country Status (3)

Country Link
US (1) US6664956B1 (en)
EP (1) EP1334470A2 (en)
WO (1) WO2002030171A2 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2389289A (en) * 2002-04-30 2003-12-03 Canon Kk Generating models of individuals using photographs
GB2389498A (en) * 2002-04-30 2003-12-10 Canon Kk Obtaining eye data to animate models of individuals
US6664956B1 (en) 2000-10-12 2003-12-16 Momentum Bilgisayar, Yazilim, Danismanlik, Ticaret A. S. Method for generating a personalized 3-D face model
US7127081B1 (en) 2000-10-12 2006-10-24 Momentum Bilgisayar, Yazilim, Danismanlik, Ticaret, A.S. Method for tracking motion of a face
US7257239B2 (en) 2001-09-28 2007-08-14 Canon Kabushiki Kaisha Method and apparatus for generating models of individuals
CN106570822A (en) * 2016-10-25 2017-04-19 宇龙计算机通信科技(深圳)有限公司 Human face mapping method and device
CN110060287A (en) * 2019-04-26 2019-07-26 北京迈格威科技有限公司 Facial image nose shaping methods and device
CN110136236A (en) * 2019-05-17 2019-08-16 腾讯科技(深圳)有限公司 Personalized face's display methods, device, equipment and the storage medium of three-dimensional character

Families Citing this family (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7920143B1 (en) * 1997-03-27 2011-04-05 At&T Intellectual Property Ii, L.P. Method for defining animation parameters for an animation definition interface
US6970591B1 (en) * 1999-11-25 2005-11-29 Canon Kabushiki Kaisha Image processing apparatus
US6807290B2 (en) * 2000-03-09 2004-10-19 Microsoft Corporation Rapid computer modeling of faces for animation
FR2811792B1 (en) * 2000-07-13 2002-12-06 France Telecom FACIAL ANIMATION PROCESS
US6950104B1 (en) * 2000-08-30 2005-09-27 Microsoft Corporation Methods and systems for animating facial features, and methods and systems for expression transformation
US7020305B2 (en) * 2000-12-06 2006-03-28 Microsoft Corporation System and method providing improved head motion estimations for animation
US7016824B2 (en) * 2001-02-06 2006-03-21 Geometrix, Inc. Interactive try-on platform for eyeglasses
JP4082021B2 (en) * 2001-11-29 2008-04-30 コニカミノルタホールディングス株式会社 Texture image generation program, texture image data and data processing apparatus
JP2004046793A (en) * 2002-05-17 2004-02-12 Nintendo Co Ltd Image processing system
JP4357155B2 (en) * 2002-05-28 2009-11-04 株式会社セガ Animation image generation program
JP3780512B2 (en) * 2002-07-30 2006-05-31 株式会社光栄 PROGRAM, RECORDING MEDIUM, AND GAME DEVICE
JP2004252603A (en) * 2003-02-18 2004-09-09 Canon Inc Three-dimensional data processing method
US8363951B2 (en) * 2007-03-05 2013-01-29 DigitalOptics Corporation Europe Limited Face recognition training method and apparatus
KR100682889B1 (en) * 2003-08-29 2007-02-15 삼성전자주식회사 Method and Apparatus for image-based photorealistic 3D face modeling
US7285047B2 (en) * 2003-10-17 2007-10-23 Hewlett-Packard Development Company, L.P. Method and system for real-time rendering within a gaming environment
TWI220234B (en) * 2003-10-21 2004-08-11 Ind Tech Res Inst A method to simulate animated images for an object
US8326086B2 (en) * 2003-12-11 2012-12-04 Koninklijke Philips Electronics N.V. Elastic image registration
US20050149258A1 (en) * 2004-01-07 2005-07-07 Ullas Gargi Assisting navigation of digital content using a tangible medium
JP3648535B1 (en) * 2004-03-31 2005-05-18 コナミ株式会社 GAME DEVICE, COMPUTER CONTROL METHOD, AND PROGRAM
US7454039B2 (en) * 2004-07-12 2008-11-18 The Board Of Trustees Of The University Of Illinois Method of performing shape localization
US9578345B2 (en) 2005-03-31 2017-02-21 Euclid Discoveries, Llc Model-based video encoding and decoding
US9532069B2 (en) 2004-07-30 2016-12-27 Euclid Discoveries, Llc Video compression repository and model reuse
WO2008091483A2 (en) * 2007-01-23 2008-07-31 Euclid Discoveries, Llc Computer method and apparatus for processing image data
US9743078B2 (en) 2004-07-30 2017-08-22 Euclid Discoveries, Llc Standards-compliant model-based video encoding and decoding
US8077179B2 (en) * 2005-07-11 2011-12-13 Pandoodle Corp. System and method for creating animated video with personalized elements
US8139068B2 (en) * 2005-07-29 2012-03-20 Autodesk, Inc. Three-dimensional animation of soft tissue of characters using controls associated with a surface mesh
US9492750B2 (en) * 2005-07-29 2016-11-15 Pamela Leslie Barber Digital imaging method and apparatus
US7567251B2 (en) * 2006-01-10 2009-07-28 Sony Corporation Techniques for creating facial animation using a face mesh
US8411914B1 (en) * 2006-11-28 2013-04-02 The Charles Stark Draper Laboratory, Inc. Systems and methods for spatio-temporal analysis
US8452160B2 (en) * 2007-06-20 2013-05-28 Sony Online Entertainment Llc System and method for portrayal of object or character target features in an at least partially computer-generated video
KR100940862B1 (en) * 2007-12-17 2010-02-09 한국전자통신연구원 Head motion tracking method for 3d facial model animation from a video stream
US8244066B2 (en) * 2008-03-24 2012-08-14 The Aerospace Corporation Adaptive membrane shape deformation system
US9901829B2 (en) * 2008-07-15 2018-02-27 Pamela Barber Digital imaging method and apparatus
US8493286B1 (en) 2009-04-21 2013-07-23 Mark T. Agrama Facial movement measurement and stimulation apparatus and method
JP5463866B2 (en) * 2009-11-16 2014-04-09 ソニー株式会社 Image processing apparatus, image processing method, and program
US8692867B2 (en) * 2010-03-05 2014-04-08 DigitalOptics Corporation Europe Limited Object detection and rendering for wide field of view (WFOV) image acquisition systems
CN101853523B (en) * 2010-05-18 2012-01-04 南京大学 Method for adopting rough drawings to establish three-dimensional human face molds
WO2011149558A2 (en) 2010-05-28 2011-12-01 Abelow Daniel H Reality alternate
KR20120005587A (en) * 2010-07-09 2012-01-17 삼성전자주식회사 Method and apparatus for generating face animation in computer system
CN101958007B (en) * 2010-09-20 2012-05-23 南京大学 Three-dimensional animation posture modeling method by adopting sketch
KR101681538B1 (en) * 2010-10-20 2016-12-01 삼성전자주식회사 Image processing apparatus and method
US9082222B2 (en) 2011-01-18 2015-07-14 Disney Enterprises, Inc. Physical face cloning
US8723959B2 (en) 2011-03-31 2014-05-13 DigitalOptics Corporation Europe Limited Face and other object tracking in off-center peripheral regions for nonlinear lens geometries
US8947501B2 (en) * 2011-03-31 2015-02-03 Fotonation Limited Scene enhancements in off-center peripheral regions for nonlinear lens geometries
US8982180B2 (en) * 2011-03-31 2015-03-17 Fotonation Limited Face and other object detection and tracking in off-center peripheral regions for nonlinear lens geometries
US10509466B1 (en) * 2011-05-11 2019-12-17 Snap Inc. Headwear with computer and optical element for use therewith and systems utilizing same
WO2013008305A1 (en) * 2011-07-11 2013-01-17 トヨタ自動車株式会社 Eyelid detection device
US9236024B2 (en) 2011-12-06 2016-01-12 Glasses.Com Inc. Systems and methods for obtaining a pupillary distance measurement using a mobile computing device
EP2803963A4 (en) * 2012-01-12 2015-09-30 Mission Infrared Electro Optics Technology Co Ltd Thermal imagery device and normalized thermal imagery shooting method
US10230908B2 (en) * 2012-01-12 2019-03-12 Mission Infrared Electro Optics Technology Co., Ltd Thermal imaging device and thermal image photographing method
JP5620414B2 (en) * 2012-01-18 2014-11-05 株式会社スクウェア・エニックス Game device
US9408686B1 (en) 2012-01-20 2016-08-09 Conformis, Inc. Devices, systems and methods for manufacturing orthopedic implants
US8605972B2 (en) * 2012-03-02 2013-12-10 Sony Corporation Automatic image alignment
KR101927886B1 (en) 2012-03-19 2018-12-11 삼성전자주식회사 Image processing apparatus and method there of
US9286715B2 (en) 2012-05-23 2016-03-15 Glasses.Com Inc. Systems and methods for adjusting a virtual try-on
US9311746B2 (en) 2012-05-23 2016-04-12 Glasses.Com Inc. Systems and methods for generating a 3-D model of a virtual try-on product
US9483853B2 (en) 2012-05-23 2016-11-01 Glasses.Com Inc. Systems and methods to display rendered images
US8712737B1 (en) * 2012-07-20 2014-04-29 Google Inc. Use of physical deformation during scanning of an object to generate views of the object
CN102999929A (en) * 2012-11-08 2013-03-27 大连理工大学 Triangular gridding based human image face-lift processing method
US9304332B2 (en) 2013-08-22 2016-04-05 Bespoke, Inc. Method and system to create custom, user-specific eyewear
US10438631B2 (en) 2014-02-05 2019-10-08 Snap Inc. Method for real-time video processing involving retouching of an object in the video
US10091507B2 (en) 2014-03-10 2018-10-02 Euclid Discoveries, Llc Perceptual optimization for model-based video encoding
US10097851B2 (en) 2014-03-10 2018-10-09 Euclid Discoveries, Llc Perceptual optimization for model-based video encoding
US9621917B2 (en) 2014-03-10 2017-04-11 Euclid Discoveries, Llc Continuous block tracking for temporal prediction in video encoding
US9699123B2 (en) 2014-04-01 2017-07-04 Ditto Technologies, Inc. Methods, systems, and non-transitory machine-readable medium for incorporating a series of images resident on a user device into an existing web browser session
KR101635730B1 (en) * 2014-10-08 2016-07-20 한국과학기술연구원 Apparatus and method for generating montage, recording medium for performing the method
US9953247B2 (en) * 2015-01-29 2018-04-24 Samsung Electronics Co., Ltd. Method and apparatus for determining eye position information
US10116901B2 (en) * 2015-03-18 2018-10-30 Avatar Merger Sub II, LLC Background modification in video conferencing
US9906884B2 (en) * 2015-07-31 2018-02-27 The University Of North Carolina At Chapel Hill Methods, systems, and computer readable media for utilizing adaptive rectangular decomposition (ARD) to generate head-related transfer functions
US9959672B2 (en) * 2015-11-23 2018-05-01 Adobe Systems Incorporated Color-based dynamic sub-division to generate 3D mesh
US11232617B2 (en) * 2018-01-11 2022-01-25 Pamela L. Barber Digital imaging method and apparatus
CN111709302B (en) * 2020-05-21 2023-08-25 青岛小鸟看看科技有限公司 Facial expression detection method and device, head-mounted display equipment and storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998001830A1 (en) * 1996-07-05 1998-01-15 British Telecommunications Public Limited Company Image processing
WO1999006962A1 (en) * 1997-08-04 1999-02-11 Pixar Animation Studios Realistic surface simulation in computer animation
EP0926628A2 (en) * 1997-12-19 1999-06-30 Fujitsu Limited mpparatus and method for generating progressive polygon data

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4975960A (en) 1985-06-03 1990-12-04 Petajan Eric D Electronic facial tracking and detection system and method and apparatus for automated speech recognition
GB9019538D0 (en) 1990-09-07 1990-10-24 Philips Electronic Associated Tracking a moving object
US5645077A (en) 1994-06-16 1997-07-08 Massachusetts Institute Of Technology Inertial orientation tracker apparatus having automatic drift compensation for tracking human head and other similarly sized body
US6020892A (en) 1995-04-17 2000-02-01 Dillon; Kelly Process for producing and controlling animated facial representations
JP2894241B2 (en) 1995-04-21 1999-05-24 村田機械株式会社 Image recognition device
US5805745A (en) 1995-06-26 1998-09-08 Lucent Technologies Inc. Method for locating a subject's lips in a facial image
US5802220A (en) 1995-12-15 1998-09-01 Xerox Corporation Apparatus and method for tracking facial motion through a sequence of images
US5774591A (en) 1995-12-15 1998-06-30 Xerox Corporation Apparatus and method for recognizing facial expressions and facial gestures in a sequence of images
US5982909A (en) 1996-04-23 1999-11-09 Eastman Kodak Company Method for region tracking in an image sequence using a two-dimensional mesh
US5923337A (en) 1996-04-23 1999-07-13 Image Link Co., Ltd. Systems and methods for communicating through computer animated images
EP0912965A1 (en) 1996-07-26 1999-05-06 Mirage Technologies Apparatus and method for representation of expression in a tissue-like system
US5907626A (en) 1996-08-02 1999-05-25 Eastman Kodak Company Method for object tracking and mosaicing in an image sequence using a two-dimensional mesh
US5744953A (en) 1996-08-29 1998-04-28 Ascension Technology Corporation Magnetic motion tracker with transmitter placed on tracked object
US6028960A (en) 1996-09-20 2000-02-22 Lucent Technologies Inc. Face feature analysis for automatic lipreading and character animation
US6009210A (en) 1997-03-05 1999-12-28 Digital Equipment Corporation Hands-free interface to a virtual reality environment using head tracking
US6031539A (en) 1997-03-10 2000-02-29 Digital Equipment Corporation Facial image method and apparatus for semi-automatically mapping a face on to a wireframe topology
US6016148A (en) 1997-06-06 2000-01-18 Digital Equipment Corporation Automated mapping of facial images to animation wireframes topologies
US6037949A (en) 1997-08-04 2000-03-14 Pixar Animation Studios Texture mapping and other uses of scalar fields on subdivision surfaces in computer graphics and animation
US6047078A (en) 1997-10-03 2000-04-04 Digital Equipment Corporation Method for extracting a three-dimensional model using appearance-based constrained structure from motion
US6052132A (en) 1998-02-06 2000-04-18 Digital Equipment Corporation Technique for providing a computer generated face having coordinated eye and head movement
US6664956B1 (en) 2000-10-12 2003-12-16 Momentum Bilgisayar, Yazilim, Danismanlik, Ticaret A. S. Method for generating a personalized 3-D face model
US6731287B1 (en) 2000-10-12 2004-05-04 Momentum Bilgisayar, Yazilim, Danismanlik, Ticaret A.S. Method for animating a 3-D model of a face
WO2002031772A2 (en) 2000-10-13 2002-04-18 Erdem Tanju A Method for tracking motion of a face

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998001830A1 (en) * 1996-07-05 1998-01-15 British Telecommunications Public Limited Company Image processing
WO1999006962A1 (en) * 1997-08-04 1999-02-11 Pixar Animation Studios Realistic surface simulation in computer animation
EP0926628A2 (en) * 1997-12-19 1999-06-30 Fujitsu Limited mpparatus and method for generating progressive polygon data

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
LANDE C ET AL: "An MPEG-4 facial animation system driven by synthetic speech" MULTIMEDIA MODELING, 1998. MMM '98. PROCEEDINGS. 1998 LAUSANNE, SWITZERLAND 12-15 OCT. 1998, LOS ALAMITOS, CA, USA,IEEE COMPUT. SOC, US, 12 October 1998 (1998-10-12), pages 203-212, XP010309519 ISBN: 0-8186-8911-0 *
LAVAGETTO F ET AL: "THE FACIAL ANIMATION ENGINE: TOWARD A HIGH-LEVEL INTERFACE FOR THE DESIGN OF MPEG-4 COMPLIANT ANIMATED FACES" IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY, IEEE INC. NEW YORK, US, vol. 9, no. 2, March 1999 (1999-03), pages 277-289, XP000805532 ISSN: 1051-8215 *

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7127081B1 (en) 2000-10-12 2006-10-24 Momentum Bilgisayar, Yazilim, Danismanlik, Ticaret, A.S. Method for tracking motion of a face
US6664956B1 (en) 2000-10-12 2003-12-16 Momentum Bilgisayar, Yazilim, Danismanlik, Ticaret A. S. Method for generating a personalized 3-D face model
US7257239B2 (en) 2001-09-28 2007-08-14 Canon Kabushiki Kaisha Method and apparatus for generating models of individuals
GB2389498B (en) * 2002-04-30 2005-06-29 Canon Kk Method and apparatus for generating models of individuals
GB2389289B (en) * 2002-04-30 2005-09-14 Canon Kk Method and apparatus for generating models of individuals
US7006102B2 (en) 2002-04-30 2006-02-28 Canon Kabushiki Kaisha Method and apparatus for generating models of individuals
GB2389289A (en) * 2002-04-30 2003-12-03 Canon Kk Generating models of individuals using photographs
GB2389498A (en) * 2002-04-30 2003-12-10 Canon Kk Obtaining eye data to animate models of individuals
CN106570822A (en) * 2016-10-25 2017-04-19 宇龙计算机通信科技(深圳)有限公司 Human face mapping method and device
CN106570822B (en) * 2016-10-25 2020-10-16 宇龙计算机通信科技(深圳)有限公司 Face mapping method and device
CN110060287A (en) * 2019-04-26 2019-07-26 北京迈格威科技有限公司 Facial image nose shaping methods and device
CN110136236A (en) * 2019-05-17 2019-08-16 腾讯科技(深圳)有限公司 Personalized face's display methods, device, equipment and the storage medium of three-dimensional character
CN110136236B (en) * 2019-05-17 2022-11-29 腾讯科技(深圳)有限公司 Personalized face display method, device and equipment for three-dimensional character and storage medium

Also Published As

Publication number Publication date
US6664956B1 (en) 2003-12-16
WO2002030171A3 (en) 2002-10-31
EP1334470A2 (en) 2003-08-13

Similar Documents

Publication Publication Date Title
US6664956B1 (en) Method for generating a personalized 3-D face model
US7127081B1 (en) Method for tracking motion of a face
CN109949899B (en) Image three-dimensional measurement method, electronic device, storage medium, and program product
US10489956B2 (en) Robust attribute transfer for character animation
Stoll et al. Fast articulated motion tracking using a sums of gaussians body model
Plänkers et al. Tracking and modeling people in video sequences
Neumann et al. Spatio-temporal stereo using multi-resolution subdivision surfaces
US7046840B2 (en) 3-D reconstruction engine
JP4785880B2 (en) System and method for 3D object recognition
US8390628B2 (en) Facial animation using motion capture data
Delaunoy et al. Gradient flows for optimizing triangular mesh-based surfaces: Applications to 3d reconstruction problems dealing with visibility
CN110443885A (en) Three-dimensional number of people face model reconstruction method based on random facial image
KR20180069786A (en) Method and system for generating an image file of a 3D garment model for a 3D body model
US6731287B1 (en) Method for animating a 3-D model of a face
US20160148411A1 (en) Method of making a personalized animatable mesh
Gibson et al. Interactive reconstruction of virtual environments from video sequences
CN109816724A (en) Three-dimensional feature extracting method and device based on machine vision
CN110648274B (en) Method and device for generating fisheye image
CN109559371A (en) A kind of method and apparatus for three-dimensional reconstruction
CN106021550A (en) Hair style designing method and system
CN113012293A (en) Stone carving model construction method, device, equipment and storage medium
Oswald et al. A review of geometry recovery from a single image focusing on curved object reconstruction
CN110458924A (en) A kind of three-dimensional facial model method for building up, device and electronic equipment
Malleson et al. Single-view RGBD-based reconstruction of dynamic human geometry
JPH09270015A (en) Method and system for outline extraction

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): JP

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
AK Designated states

Kind code of ref document: A3

Designated state(s): JP

AL Designated countries for regional patents

Kind code of ref document: A3

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR

WWE Wipo information: entry into national phase

Ref document number: 2001986569

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 2001986569

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: JP