This application claims the priority benefit of Korean Patent Application No. 10-2014-0118828, filed on Sep. 5, 2014, and Korean Patent Application No. 10-2015-0001850, filed on Jan. 7, 2015, in the Korean Intellectual Property Office, the entire contents of each of which are incorporated herein by reference in its entirety.
1. Field
At least some example embodiments relate to facial recognition technology to identify a face of a user.
2. Description of the Related Art
Facial recognition technology is considered a convenient and competitive bio-recognition technology that may verify a target without contact with the target, dissimilar to other recognition technologies, for example, fingerprint and iris recognition, that require a user to conduct a certain motion or an action. Such a facial recognition technology has been widely used in various application fields, for example, security systems, mobile authentication, and multimedia searches due to convenience and effectiveness of the facial recognition technology.
At least some example embodiments relate to a facial recognition method.
In at least some example embodiments, the method may include detecting a facial feature point from a two-dimensional (2D) input image, adjusting a stored three-dimensional (3D) facial model based on the detected facial feature point, generating a 2D projection image from the adjusted 3D facial model, and performing facial recognition based on the 2D input image and the 2D projection image.
The adjusting the stored 3D facial model adjusts a facial pose and a facial expression of the stored 3D facial model by mapping the detected facial feature point to the stored 3D facial model.
The stored 3D facial model includes a 3D shape model and a 3D texture model. The 3D shape model and the 3D texture model may be 3D models in which a facial pose and a facial expression are deformable.
The adjusting the 3D facial model may include adjusting the stored 3D shape model based on the facial feature point detected from the 2D input image, and adjusting the 3D texture model based on parameter information of the adjusted 3D shape model.
The adjusting the stored 3D shape model adjusts a pose parameter and an expression parameter of the 3D shape model based on the detected facial feature point.
The generating the 2D projection image generates the 2D projection image from the adjusted 3D texture model.
The stored 3D facial model may be generated based on feature points detected from a plurality of 2D face images, and the 2D face images may be images obtained by capturing a face of a user from a plurality of viewpoints.
The performing the facial recognition may include determining a degree of similarity between the 2D input image and the 2D projection image, and outputting a result of the facial recognition based on whether the degree of similarity satisfies a condition.
The detecting the facial feature point may include extracting a face region from the 2D input image, and detecting the facial feature point in at least one of eyebrows, eyes, a nose, lips, a chin, ears, and a facial contour from the detected face region.
At least other example embodiments relate to a method of generating a 3D facial model.
In some example embodiments, the method may include obtaining 2D face images of a user from a plurality of viewpoints, detecting facial feature points from the 2D face images, generating a deformable 3D shape model and a deformable 3D texture model based on the detected facial feature points, and storing the deformable 3D shape model and the deformable 3D texture model as a 3D facial model of the user.
The generating generates the deformable 3D texture model based on the deformable 3D shape model and texture information from at least one of the 2D face images.
The generating include determining a parameter to map the detected facial feature points to feature points of a 3D standard model, and generating the deformable 3D shape model by applying the determined parameter to the 3D standard model.
At least other example embodiments relate to a method of generating a 3D facial model.
In at least some example embodiments, the method may include obtaining 2D face images and direction data of the 2D face images, the 2D face images including a face of a user, determining information on matching points among the 2D face images, generating 3D data of the face of the user based on the direction data of the 2D face images and the information on the matching points, and transforming a 3D standard model to a 3D facial model of the user using the 3D data.
The obtaining obtains the direction data of the 2D face images using motion data sensed by a motion sensor.
The 3D data on the face of the user may be a set of 3D points configuring a shape of the face of the user.
The transforming transforms the 3D standard model to the 3D facial model of the user by matching the 3D standard model to the 3D data of the face of the user.
At least other example embodiments relate to a facial recognition apparatus.
In at least some example embodiments, the apparatus may include an image acquirer configured to obtain a 2D input image including a face region of a user, a 3D facial model processor configured to adjust a facial pose of a stored 3D facial model based on a facial pose of the user appearing in the 2D input image and generate a 2D projection image from the adjusted 3D facial model, and a face recognizer configured to perform facial recognition based on the 2D input image and the 2D projection image.
The 3D facial model processor may include a face region detector configured to detect a face region from the 2D input image, and a feature point detector configured to detect a facial feature point from the detected face region.
The 3D facial model processor may adjust the facial pose of the stored 3D facial model by matching the detected facial feature point to a feature point of the stored 3D facial model.
The 3D facial model processor may adjust a facial pose of a 3D shape model based on the facial pose of the user appearing in the 2D input image and adjust a 3D texture model based on parameter information of the adjusted 3D shape model.
The facial recognition apparatus may further include a display configured to display at least one of one of the 2D input images, the 2D projection image, and a result of the facial recognition.
At least other example embodiments relate to an apparatus for generating a 3D facial model.
In at least some example embodiments, the apparatus may include an image acquirer configured to obtain 2D face images of a user from a plurality of viewpoints, a feature point detector configured to detect facial feature points from the 2D face images, a 3D facial model generator configured to generate a deformable 3D shape model and a deformable 3D texture model based on the detected facial feature points, and a 3D facial model registerer configured to store the deformable 3D shape model and the deformable 3D texture model as a 3D facial model of the user.
The 3D facial model generator may include a 3D shape model generator configured to generate a deformable 3D shape model of a face of the user based on the detected facial feature points, and a 3D texture model generator configured to generate a deformable 3D texture model based on the deformable 3D shape model and texture information from at least one of the 2D face images.
At least other example embodiments relate to an apparatus for generating a 3D facial model.
In at least some example embodiments, the apparatus may include an image acquirer configured to obtain 2D face images of a user from a plurality of viewpoints, a motion sensing unit configured to obtain direction data of the 2D face images, a 3D facial model generator configured to generate 3D data of a face of the user based on information on matching points among the 2D face images and the direction data of the 2D face images, the 3D facial model generator configured to transform a 3D standard model to a 3D facial model of the user using the 3D data, and a 3D facial model registerer configured to store the 3D facial model of the user.
Additional aspects of example embodiments will be set forth in part in the description which follows and, in part, will be apparent from the description, or may be learned by practice of the disclosure.
These and/or other aspects will become apparent and more readily appreciated from the following description of example embodiments, taken in conjunction with the accompanying drawings of which:
Hereinafter, some example embodiments will be described in detail with reference to the accompanying drawings. Regarding the reference numerals assigned to the elements in the drawings, it should be noted that the same elements will be designated by the same reference numerals, wherever possible, even though they are shown in different drawings. Also, in the description of example embodiments, detailed description of well-known related structures or functions will be omitted when it is deemed that such description will cause ambiguous interpretation of the present disclosure.
It should be understood, however, that there is no intent to limit this disclosure to example embodiments disclosed. On the contrary, example embodiments are to cover all modifications, equivalents, and alternatives falling within the scope of the example embodiments. Like numbers refer to like elements throughout the description of the figures.
In addition, terms such as first, second, A, B, (a), (b), and the like may be used herein to describe components. Each of these terminologies is not used to define an essence, order or sequence of a corresponding component but used merely to distinguish the corresponding component from other component(s).
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting. As used herein, the singular forms “a,” “an,” and “the,” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises,” “comprising,” “includes,” and/or “including,” when used herein, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
Unless specifically stated otherwise, or as is apparent from the discussion, terms such as “processing” or “computing” or “calculating” or “determining” or “displaying” or the like, refer to the action and processes of a computer system, or similar electronic computing device, that manipulates and transforms data represented as physical, electronic quantities within the computer system's registers and memories into other data similarly represented as physical quantities within the computer system memories or registers or other such information storage, transmission or display devices.
It should also be noted that in some alternative implementations, the functions/acts noted may occur out of the order noted in the figures. For example, two figures shown in succession may in fact be executed substantially concurrently or may sometimes be executed in the reverse order, depending upon the functionality/acts involved.
Various example embodiments will now be described more fully with reference to the accompanying drawings in which some example embodiments are shown. In the drawings, the thicknesses of layers and regions are exaggerated for clarity.
The facial recognition system 100 may register a three-dimensional (3D) facial model of the user and perform the facial recognition using the registered 3D facial model. The 3D facial model may be a deformable 3D model that may be deformed depending on a facial pose or a facial expression of the user appearing in the 2D input image. For example, when a facial pose appearing in the 2D input image faces a left side, the facial recognition system 100 may rotate the registered 3D facial model to face the left side. In addition, the facial recognition system 100 may adjust a facial expression of the 3D facial model based on a facial expression of the user appearing in the 2D input image. For example, the facial recognition system 100 may analyze the facial expression of the user based on a facial feature point detected from the 2D input image, and adjust a shape of an eye, a lip, and a nose of the 3D facial model to allow the adjusted shape to correspond to the analyzed facial expression.
The facial recognition system 100 may generate a 2D projection image from the registered 3D facial model, and perform the facial recognition by comparing the 2D projection image to the 2D input image. The facial recognition may be performed in real time using 2D images. The 2D projection image refers to a 2D image obtained by projecting the 3D facial model to a plane. For example, the 2D projection image may be a 2D image obtained by projecting the 3D facial model matched to the 2D input image at a viewpoint identical or similar to a viewpoint in the 2D input image and thus, a facial pose appearing in the 2D projection image may be identical or similar to a facial pose of the user appearing in the 2D input image. The facial recognition may be performed by matching the prestored 3D facial model to the facial pose appearing in the 2D input image, and comparing the 2D projection image to the 2D input image. Although the facial pose of the user appearing in the 2D input image does not face a front side, an improved recognition rate may be achieved in response to a change in the pose by matching the 3D facial model to the facial pose appearing in the 2D input image and performing the facial recognition.
Hereinafter, operations of the facial recognition system 100 will be described in detail. Facial recognition performed by the facial recognition system 100 may include a process 110 of registering a 3D facial model of a user and a process 120 of recognizing a face of the user from a 2D input image using the registered 3D facial model.
Referring to
In operation 150 of process 110, the facial recognition system 100 individualizes a 3D model by applying, to a predetermined and/or selected 3D standard model, the feature points extracted from the 2D face images used for the face registration. For example, the 3D standard model may be a deformable 3D shape model generated based on 3D face training data. The 3D standard model may include a 3D shape and a 3D texture, and parameters expressing the 3D shape. The facial recognition system 100 may generate a 3D facial model on the face of the user by matching feature points of the 3D standard model to the feature points extracted from the 2D face images. The generated 3D facial model may be registered and stored as a 3D facial model of the user appearing in the 2D face images.
Alternatively, the facial recognition system 100 may generate the 3D facial model of the user using the 2D face images used for the face registration, and motion data of the 2D face images and the 3D standard model. The facial recognition system 100 may obtain direction data of the 2D face images through a motion sensor along with the 2D face images, and generate 3D data on the face of the user based on the direction data and matching information of the 2D face images. The 3D data on the face of the user may be a set of 3D points configuring a shape of the face of the user. The facial recognition system 100 may generate the 3D facial model of the user by matching the 3D data on the face of the user to the 3D standard model. The generated 3D facial model may be stored and registered as a 3D facial model of the user appearing in the 2D face images.
In process 120, the facial recognition system 100 obtains a 2D input image including a face region of the user through a camera. Although the facial recognition system 100 may perform facial recognition using a single 2D input image, example embodiments may not be limited thereto. In operation 160 of process 120, the facial recognition system 100 adjusts the prestored 3D facial model of the user based on the facial pose or expression appearing in the 2D input image. The facial recognition system 100 may adjust a pose of the 3D facial model to match the facial pose appearing in the 2D input image, and adjust an expression of the 3D facial model to match the facial expression appearing in the 2D input image.
The facial recognition system 100 generates a 2D projection image from the 3D facial model matched to the 2D input image used for the facial recognition. In operation 170 of process 120, the facial recognition system 100 performs the facial recognition by comparing the 2D input image to the 2D projection image and outputs a result of the facial recognition. For example, the facial recognition system 100 may determine a degree of similarity between a face region in the 2D input image and a face region in the 2D projection image, and output the result of the facial recognition as “facial recognition successful” in a case of the degree of similarity satisfying a predetermined and/or desired condition, and output “facial recognition failed” in other cases.
The facial recognition system 100 may include any one of a 3D facial model generating apparatus (e.g., a 3D facial model generating apparatus 200 of
In the event where at least one of the image acquirer 210, the feature point detector 220, the 3D facial model generator 230 and the 3D facial model registerer 260 is a hardware component executing software, the hardware component is configured as a special purpose machine to execute the software, stored in a memory (non-transitory computer-readable medium) 270, to perform the functions of the at least one of the image acquirer 210, the feature point detector 220, the 3D facial model generator 230 and the 3D facial model registerer 260.
While the memory 270 is illustrated outside of the 3D facial model generating apparatus 200, the memory 270 may be included in the 3D facial model generating apparatus 200.
The image acquirer 210 obtains the 2D face images of the user for the face registration. The 2D face images may include a face region of the user including various facial poses. For example, the image acquirer 210 obtains the 2D face images captured through a camera from a plurality of viewpoints such as a front image or a profile image. Information on an overall 2D shape of the face of the user and texture information of the face of the user may be extracted from the front image, and detailed information on a shape of the face of the user may be extracted from the profile image. For example, information on a 3D shape of the face of the user may be determined by the 3D facial model generating apparatus 200 by comparing a face region of the user in the front image to a face region of the user in the profile image. According to an example embodiment, the image acquirer 210 may capture the 2D face images through a camera to register a 3D facial model, and the image acquirer 210 may store the 2D face images captured through the camera in the memory 270.
The feature point detector 220 detects a face region from a 2D face image and facial feature points or landmarks in the detected face region. For example, the feature point detector 220 may detect feature points positioned on contours of eyebrows, eyes, a nose, lips, and/or a chin from the 2D face images. According to an example embodiment, the feature point detector 220 may detect the facial feature points from the 2D face images using an active shape model (ASM), an active appearance model (AAM), or a supervised descent method (SDM).
The 3D facial model generator 230 generates the 3D facial model on the face of the user based on the feature points detected from the 2D face images. A deformable 3D shape model and a deformable 3D texture model on the face of the user may be generated as the 3D facial model. The 3D facial model generator 230 includes a 3D shape model generator 240 and a 3D texture model generator 250.
The 3D shape model generator 240 generates the 3D shape model of the face of the user using the 2D face images captured from different viewpoints. The 3D shape model refers to a 3D model having a shape without a texture. The 3D shape model generator 240 generates the 3D shape model based on the facial feature points detected from the 2D face images. The 3D shape model generator 240 determines a parameter to map the feature points detected from the 2D face images to feature points of a 3D standard model, and generates the 3D shape model by applying the determined parameter to the 3D standard model. For example, the 3D shape model generator 240 may generate the 3D shape model of the face of the user by matching feature points of eyebrows, eyes, a nose, lips, and/or a chin detected from the 2D face images to the feature points of the 3D standard model.
Generating a 3D shape model using 2D face images captured from different viewpoints may enable generation of a more detailed 3D shape model. In a case of generating a 3D shape model only using a front image obtained by capturing a face of a user from a front side, determining a 3D shape such as a height of a nose and a shape of cheekbones in the 3D shape model may not be easy. However, in a case of generating a 3D shape model using a plurality of 2D face images captured from different viewpoints, a more detailed 3D shape model may be generated because information on, for example, a height of a nose and a shape of cheekbones, may be additionally considered.
The 3D texture model generator 250 generates the 3D texture model based on texture information extracted from at least one of the 2D face images and the 3D shape model. For example, the 3D texture model generator 250 may generate a 3D texture model by mapping a texture extracted from a front image to the 3D shape model. The 3D texture model refers to a model having both a shape and a texture of a 3D model. The 3D texture model may have a higher level of detail than the 3D shape model, and include vertexes of the 3D shape model. The 3D shape model and the 3D texture model may have a fixed shape of a 3D model, and a deformable pose and expression. The 3D shape model and the 3D texture model may have an identical or similar pose and expression by an identical parameter.
The 3D facial model registerer 260 registers and stores the 3D shape model and the 3D texture model as a 3D facial model of the user. For example, when a user of a 2D face image obtained by the image acquirer 210 is “A,” the 3D facial model registerer 260 may register a 3D shape model and a 3D texture model generated with respect to A as a 3D facial model of A and the memory 270 may store the 3D shape model and the 3D texture model of A.
The image acquirer 310, the 3D facial model processor 320 (including the face region detector 330 and the feature point detector 340), and the face recognizer 350 may be implemented using hardware components and/or hardware components executing software components as is described below.
In the event where at least one of the image acquirer 310, the 3D facial model processor 320 (including the face region detector 330 and the feature point detector 340), and the face recognizer 350 is a hardware component executing software, the hardware component is configured as a special purpose machine to execute the software, stored in a memory (non-transitory computer-readable medium) 370, to perform the functions of the at least one of the image acquirer 310, the 3D facial model processor 320 (including the face region detector 330 and the feature point detector 340), and the face recognizer 350.
While the memory 370 is illustrated as part of the facial recognition apparatus 300, the memory 370 may be separate from the facial recognition apparatus 300.
The image acquirer 310 obtains a 2D input image for recognizing a face including a face region of a user. The image acquirer 310 obtains a 2D input image for recognizing or authenticating the user through a camera or the like. Although the facial recognition apparatus 300 may perform facial recognition on the user using a single 2D input image, example embodiments are not limited thereto.
The face region detector 330 detects the face region of the user from the 2D input image. The face region detector 330 identifies the face region from the 2D input image using information on a brightness distribution, a movement of an object, a color distribution, an eye location, and the like of the 2D input image, and extracts location information of the face region. For example, the face region detector 330 detects the face region from the 2D input image using a Haar-based cascade Adaboost classifier which is generally used in related technical fields.
The feature point detector 340 detects a facial feature point from the face region of the 2D face image. For example, the feature point detector 340 detects, from the face region, feature points including eyebrows, eyes, a nose, lips, a chin, hair, ears, and/or a facial contour. According to an example embodiment, the feature point detector 340 detects the facial feature point from the 2D input image using an ASM, an AAM, or an SDM.
The 3D facial model processor 320 adjusts a prestored 3D facial model based on the detected feature point. The 3D facial model processor 320 matches the 3D facial model to the 2D input image based on the detected feature point. Based on a result of the matching, the 3D facial model may be transformed to be matched to a facial pose and expression appearing in the 2D input image. The 3D facial model processor 320 adjusts a pose and an expression of the 3D facial model by mapping the feature point detected from the 2D input image to the 3D facial model. The 3D facial model may include a 3D shape model and a 3D texture model. The 3D shape model may be used to be fast matched to the facial pose appearing in the 2D input image, and the 3D texture model may be used to generate a high-resolution 2D projection image.
The 3D facial model processor 320 adjusts a pose of the 3D shape model based on the pose appearing in the 2D input image. The 3D facial model processor 320 matches the pose of the 3D shape model to the pose appearing in the 2D input image by matching the feature point detected from the 2D input image to feature points of the 3D shape model. The 3D facial model processor 320 adjusts a pose parameter and an expression parameter of the 3D shape model based on the feature point detected from the 2D input image.
In addition, the 3D facial model processor 320 adjusts the 3D texture model based on parameter information of the 3D shape model. The 3D facial model processor 320 applies, to the 3D texture model, the pose parameter and the expression parameter determined in the matching of the 3D shape model to the 2D input image. Based on a result of the applying, the 3D texture model may be adjusted to have a pose and an expression identical or similar to the pose and the expression of the 3D shape model. Subsequent to the adjusting of the 3D texture model, the 3D facial model processor 320 may generate the 2D projection image by projecting the adjusted 3D texture model to a plane.
The face recognizer 350 performs the facial recognition by comparing the 2D projection image to the 2D input image. The face recognizer 350 performs the facial recognition based on a degree of similarity between the face region appearing in the 2D input image and a face region appearing in the 2D projection image. The face recognizer 350 determines the degree of similarity between the 2D input image and the 2D projection image, and outputs a result of the facial recognition based on whether the determined degree of similarity satisfies a predetermined and/or desired condition.
The face recognizer 350 may use a feature value determining method which is generally used in a field of facial recognition technology to determine the degree of similarity between the 2D input image and the 2D projection image. For example, the face recognizer 350 may determine the degree of similarity between the 2D input image and the 2D projection image using a feature extracting filter such as a Gabor filter, a local binary pattern (LBP), a histogram of oriented gradient (HoG), a principal component analysis (PCA), and a linear discriminant analysis (LDA). The Gabor filter refers to a filter to extract a feature from an image using a multifilter having various magnitudes and angles. The LBP refers to a filter to extract a difference between a current pixel and an adjacent pixel as a feature from an image. According to an example embodiment, the face recognizer 350 may divide the face region appearing in the 2D input image and the 2D projection image into cells of a predetermined and/or selected size and calculate a histogram associated with the LBP for each cell, for example, a histogram on LBP index values included in a cell. The face recognizer 350 determines a vector obtained by linearly connecting the calculated histograms to be a final feature value, and compare a final feature value of the 2D input image to a final feature value of the 2D projection image to determine the degree of similarity between the 2D input image and the 2D projection image.
According to an example embodiment, the facial recognition apparatus 300 further includes a display 360. The display 360 displays the 2D input image, the 2D projection image, and/or the result of the facial recognition. In a case that the user determines that a face of the user is not properly captured based on the displayed 2D input image, or the display 360 displays a final result of the facial recognition to be a failure, the user may re-capture the face and the facial recognition apparatus 300 may re-perform facial recognition on a 2D input image generated by the re-capturing.
The feature point detector 220 of the 3D facial model generating apparatus 200 of
An image 440 is a resulting image from which feature points 444 are detected within a face region 442 of the image 410. An image 450 is a resulting image from which feature points 454 are detected within a face region 452 of the image 420. Similarly, an image 460 is a resulting image from which feature points 464 are detected within a face region 462 of the image 430.
The 3D standard model may include an average shape and a quantity of a change in a shape as expressed in Equation 1. The quantity of a change in a shape indicates a weighted sum of a shape parameter and a shape vector.
In Equation 1, “
S
In Equation 2, “
The 3D shape model generator 240 of the 3D facial model generating apparatus 200 of
Referring to
The 3D texture model generator 250 of
A model 540 and a model 550 are 3D texture models generated based on the 3D shape model. The model 540 indicates a 3D texture model viewed from a front side, and the model 550 indicates a 3D texture model viewed from a diagonal direction. A 3D texture model may be a model including both shape information and texture information and used to generate a 2D projection image in the process of user authentication.
The 3D shape model and the 3D texture model are a 3D model in which a face shape indicating a unique characteristic of the user is fixed and a pose or an expression is deformable. The 3D texture model may have a higher level of detail and include a greater number of vertexes compared to the 3D shape model. Vertexes included in the 3D shape model may be a subset of the vertexes included in the 3D texture model. The 3D shape model and the 3D texture model may indicate an identical or similar pose and expression by an identical parameter.
The face region detector 330 of the facial recognition apparatus 300 of
An image 620 is a resulting image obtained by detecting a face region 630 from the image 610 by the face region detector 330 and detecting feature points 640 within the face region 630 by the feature point detector 340.
The 3D facial model processor 320 may match a preregistered and stored 3D shape model to the 2D input image. The 3D facial model processor 320 may adjust a parameter of the 3D shape model based on the facial feature point detected from the 2D input image to adjust a pose and an expression. A model 650 is a preregistered and stored 3D shape model of a face of a user, and a model 660 is a 3D shape model in which a pose and an expression are adjusted based on the feature points 640 detected from the image 610. The 3D facial model processor 320 may adjust a pose of the prestored 3D shape model to be identical or similar to a facial pose appearing in the 2D input image. The face of the user takes a laterally rotated pose in the image 610, which is the 2D input image, and the 3D shape model in which the pose is adjusted by the 3D facial model processor 320 takes a laterally rotated pose identical or similar to the pose of the user in the image 610.
Referring to
Referring to
In operation 820, the 3D facial model generating apparatus detects facial feature points from the 2D face images. For example, the 3D facial model generating apparatus may detect facial feature points located on a contour of eyebrows, eyes, a nose, lips, a chin, and the like from the 2D face images using an ASM, an AAM, or an SDM which is generally known in related technical fields.
In operation 830, the 3D facial model generating apparatus generates a 3D shape model based on the detected feature points. The 3D facial model generating apparatus may generate the 3D shape model by matching the feature points of the eyebrows, the eyes, the nose, the lips, the chin, and the like detected from the 2D face images to feature points of a 3D standard model. The 3D facial model generating apparatus determines a parameter to map the feature points detected from the 2D face images to the feature points of the 3D standard model, and generate the 3D shape model by applying the determined parameter to the 3D standard model.
In operation 840, the 3D facial model generating apparatus generates a 3D texture model based on the 3D shape model and texture information extracted from a 2D face image. The 3D facial model generating apparatus may generate the 3D texture model on the face of the user by mapping a texture extracted from at least one 2D face image to the 3D shape model. The 3D texture model to which a parameter of the 3D shape model is applied may have a pose and an expression identical or similar to the 3D shape model.
In operation 850, the 3D facial model generating apparatus registers and stores the 3D shape model and the 3D texture model as a 3D facial model of the user. The stored 3D shape model and the 3D texture model may be used to authenticate the user appearing in the 2D input image in a process of user authentication.
Referring to
In operation 920, the facial recognition apparatus adjusts a preregistered 3D facial model of a user based on the feature point detected from the 2D input image. The facial recognition apparatus may match the preregistered 3D facial model to the 2D input image based on the feature point detected from the 2D input image. The facial recognition apparatus may transform the 3D facial model to match a facial pose and expression of the 3D facial model to a facial pose and expression appearing in the 2D input image.
The 3D facial model may include a 3D shape model and a 3D texture model. The facial recognition apparatus may adjust a pose of the 3D shape model based on the feature point detected from the 2D input image, and adjust the 3D texture model based on parameter information of the 3D shape model in which the pose is adjusted. The facial recognition apparatus may adjust a pose parameter and an expression parameter of the 3D shape model based on the feature point detected from the 2D input image, and may apply the adjusted parameters of the 3D shape model to the 3D texture model. Based on a result of the applying of the parameters, the 3D texture model may be adjusted to have a pose and an expression identical or similar to the pose and the expression of the 3D shape model.
In operation 930, the facial recognition apparatus generates a 2D projection image from the 3D texture model. The facial recognition apparatus generates the 2D projection image by projecting, to a plane, the 3D texture model adjusted based on the 3D shape model in operation 920. A facial pose appearing in the 2D projection image may be identical or similar to the facial pose appearing in the 2D input image. For example, when the facial pose of the user appearing in the 2D input image is a pose facing a profile side, the 2D projection image generated through operations 910 through 930 may have a facial pose of the 3D texture model facing a profile side identical or similar to the 2D input image.
In operation 940, the facial recognition apparatus performs facial recognition by comparing the 2D input image to the 2D projection image. The facial recognition apparatus performs the facial recognition based on a degree of similarity between a face region appearing in the 2D input image and a face region appearing in the 2D projection image. The fade recognition apparatus determines the degree of similarity between the 2D input image and the 2D projection image, and outputs a result of the facial recognition based on whether the determined degree of similarity satisfies a predetermined and/or desired condition. For example, in a case that the degree of similarity between the 2D input image and the 2D projection image satisfies the predetermined and/or desired condition, the facial recognition apparatus may output a result of “facial recognition successful”, and “facial recognition failed” in other cases
The image acquirer 1010, the motion sensing unit 1020, the 3D facial model generator 1030, and the 3D facial model registerer 1040 may be implemented using hardware components and/or hardware components executing software components as is described below.
In the event where at least one of the image acquirer 1010, the motion sensing unit 1020, the 3D facial model generator 1030, and the 3D facial model registerer 1040 is a hardware component executing software, the hardware component is configured as a special purpose machine to execute the software, stored in a memory (non-transitory computer-readable medium) 1070, to perform the functions of the at least one of the image acquirer 1010, the motion sensing unit 1020, the 3D facial model generator 1030, and the 3D facial model registerer 1040.
While the memory 1070 is illustrated outside of the 3D facial model generating apparatus 1000, the memory 1070 may be included in the 3D facial model generating apparatus 1000.
The image acquirer 1010 obtains 2D face images captured from different viewpoints used for face registration. The image acquirer 1010 obtains the 2D face images in which a face of a user is captured through a camera from different directions. For example, the image acquirer 1010 may obtain the 2D face images captured from different viewpoints, for example, a front image and a profile image.
The motion sensing unit 1020 obtains direction data of the 2D face images. The motion sensing unit 1020 determines the direction data of the 2D face images using motion data sensed through various sensors. The direction data of the 2D face images may include information on a direction from which each 2D face image is captured. For example, the motion sensing unit 1020 may determine direction data of each 2D face image using an inertial measurement unit (IMU) such as an accelerometer, a gyroscope, and/or a magnetometer.
For example, the user may capture the face of the user by rotating a camera in different directions, and obtain the 2D face images captured from various viewpoints as a result of the capturing. During capture of the 2D face images, the motion sensing unit 1020 may calculate motion data including, for example, a change in a speed, a direction, a roll, a pitch, and a yaw of the camera capturing the 2D face images, based on sensing information output from the IMU, and determine the direction data on directions from which the 2D face images are captured.
The 3D facial model generator 1030 generates a 3D facial model of the user appearing in the 2D face images. The 3D facial model generator 1030 detects facial feature points or landmarks from the 2D face images. For example, the 3D facial model generator 1030 may detect feature points located on a contour of eyebrows, eyes, a nose, lips, a chin, and the like from the 2D face images. The 3D facial model generator 1030 determines information on matching points among the 2D face images based on the facial feature points detected from the 2D face images.
The 3D facial model generator 1030 generates 3D data of the face of the user based on information on the facial feature points detected from the 2D face images, the information on the matching points, and the direction data of the 2D face images. For example, the 3D facial model generator 1030 may generate the 3D data of the face of the user using an existing stereo matching method. The 3D data of the face of the user may be a set of 3D points configuring a shape or a surface of the face of the user.
The 3D facial model generator 1030 transforms a deformable 3D standard model to a 3D facial model of the user using the 3D data on the face of the user. The 3D facial model generator 1030 transforms the 3D standard model to the 3D facial model of the user by matching the 3D standard model to the 3D data on the face of the user. The 3D facial model generator 1030 transforms the 3D standard model to the 3D facial model of the user by matching feature points of the 3D data to feature points of the 3D standard model. The 3D facial model of the user may include a 3D shape model associated with a shape of the face of the user and/or a 3D texture model including texture information.
The 3D facial model registerer 1040 registers and stores the 3D facial model of the user generated by the 3D facial model generator 1030. The stored 3D facial model of the user may be used to recognize the face of the user and a shape of the 3D facial model may be transformed in a process of facial recognition.
Referring to
The 3D facial model generating apparatus obtains the direction data of the 2D face images using motion data sensed by a motion sensor. For example, the 3D facial model generating apparatus may obtain direction data of each 2D face image using motion data sensed by an IMU including an accelerometer, a gyroscope, and/or a magnetometer. The direction data of the 2D face images may include information on a direction from which each 2D face image is captured.
In operation 1120, the 3D facial model generating apparatus determines information on matching points among the 2D face images. The 3D facial model generating apparatus detects facial feature points from the 2D face images, and detects the matching points based on the detected feature points.
In operation 1130, the 3D facial model generating apparatus generates 3D data on the face of the user. For example, the 3D data of the face of the user may be a set of 3D points configuring a shape or a surface of the face of the user, and include a plurality of vertexes. The 3D facial model generating apparatus generates the 3D data of the face of the user based on information of the facial feature points detected from the 2D face images, the information on the matching points, and the direction data of the 2D face images. The 3D facial model generating apparatus may generate the 3D data of the face of the user using an existing stereo matching method.
In operation 1140, the 3D facial model generating apparatus transforms a 3D standard model to a 3D facial model of the user using the 3D data generated in operation 1130. The 3D facial model generating apparatus transforms the 3D standard model to the 3D facial model of the user by matching the 3D standard model to the 3D data on the face of the user. The 3D facial model generating apparatus generates the 3D facial model of the user by matching feature points of the 3D standard model to feature points of the 3D data. The 3D facial model generating apparatus generates a 3D shape model and/or a 3D texture model as the 3D facial model of the user. The generated 3D facial model of the user may be stored and registered, and be used to recognize the face of the user.
The units and/or modules described herein may be implemented using hardware components and/or hardware components executing software components. For example, the hardware components may include microphones, amplifiers, band-pass filters, audio to digital convertors, and processing devices. A processing device may be implemented using one or more hardware device configured to carry out and/or execute program code by performing arithmetical, logical, and input/output operations. The processing device(s) may include a processor, a controller and an arithmetic logic unit, a digital signal processor, a microcomputer, a field programmable array, a programmable logic unit, a microprocessor or any other device capable of responding to and executing instructions in a defined manner. The processing device may run an operating system (OS) and one or more software applications that run on the OS. The processing device also may access, store, manipulate, process, and create data in response to execution of the software. For purpose of simplicity, the description of a processing device is used as singular; however, one skilled in the art will appreciated that a processing device may include multiple processing elements and multiple types of processing elements. For example, a processing device may include multiple processors or a processor and a controller. In addition, different processing configurations are possible, such a parallel processors.
The software may include a computer program, a piece of code, an instruction, or some combination thereof, to independently or collectively instruct and/or configure the processing device to operate as desired, thereby transforming the processing device into a special purpose processor. Software and data may be embodied permanently or temporarily in any type of machine, component, physical or virtual equipment, computer storage medium or device, or in a propagated signal wave capable of providing instructions or data to or being interpreted by the processing device. The software also may be distributed over network coupled computer systems so that the software is stored and executed in a distributed fashion. The software and data may be stored by one or more non-transitory computer readable recording mediums.
The methods according to the above-described example embodiments may be recorded in non-transitory computer-readable media including program instructions to implement various operations of the above-described example embodiments. The media may also include, alone or in combination with the program instructions, data files, data structures, and the like. The program instructions recorded on the media may be those specially designed and constructed for the purposes of example embodiments, or they may be of the kind well-known and available to those having skill in the computer software arts. Examples of non-transitory computer-readable media include magnetic media such as hard disks, floppy disks, and magnetic tape; optical media such as CD-ROM discs, DVDs, and/or Blue-ray discs; magneto-optical media such as optical discs; and hardware devices that are specially configured to store and perform program instructions, such as read-only memory (ROM), random access memory (RAM), flash memory (e.g., USB flash drives, memory cards, memory sticks, etc.), and the like. Examples of program instructions include both machine code, such as produced by a compiler, and files containing higher level code that may be executed by the computer using an interpreter. The above-described devices may be configured to act as one or more software modules in order to perform the operations of the above-described example embodiments, or vice versa.
A number of example embodiments have been described above. Nevertheless, it should be understood that various modifications may be made to these example embodiments. For example, suitable results may be achieved if the described techniques are performed in a different order and/or if components in a described system, architecture, device, or circuit are combined in a different manner and/or replaced or supplemented by other components or their equivalents. Accordingly, other implementations are within the scope of the following claims.
Number | Date | Country | Kind |
---|---|---|---|
10-2014-0118828 | Sep 2014 | KR | national |
10-2015-0001850 | Jan 2015 | KR | national |