METHOD FOR ESTABLISHING A DEFORMABLE 3D MODEL OF AN ELEMENT, AND ASSOCIATED SYSTEM
20200118332 ยท 2020-04-16
Inventors
Cpc classification
G06T19/00
PHYSICS
International classification
Abstract
A method is provided for generating a three-dimensional morphable model of an element from an initial database of examples of such elements providing data allowing, for each of the elements of the initial database, a three-dimensional meshed surface based on points and on a triangular network connecting the points to be determined.
Claims
1. A method for generating a three-dimensional morphable model of an element from an initial database of examples of such elements providing data allowing, for each of the elements of the initial database, a three-dimensional meshed surface based on points and on a triangular network connecting said points to be determined, wherein: for each example element of the initial database, at each point of its meshed surface, the value of at least one parameter representative of the shape of the surface of the element at this point is determined in order to obtain an improved database of example elements; for each example element of the improved database, corresponding to the elements of the initial database, flattening is carried out on the three-dimensional meshed surface in order to obtain a two-dimensional representation of said meshed surface; in all of the two-dimensional representations of the meshed surfaces of said elements, a plurality of respective points are brought into registration using said determined values of the one or more parameters representative of the shape of the surface of the element at said points and a method for analyzing said two-dimensional representations of the meshed surfaces; on the basis of said registered points, said three-dimensional meshed surfaces of the initial database are down-sampled; on the basis of the three-dimensional meshed surfaces of the initial database, a model of the element comprising an average shape of the element and deformation modes is determined; and said average shape of the element is re-meshed.
2. The method of claim 1, wherein said one or more parameters representative of the shape of the surface of the element at a point of the meshed surface of an example of the initial database comprise a local curvature at said point and/or a shape descriptor at said point.
3. The method of claim 2, wherein said local curvature comprises a minimum curvature and/or a maximum curvature and/or a Gaussian curvature and/or an average curvature.
4. The method of claim 2, wherein the shape descriptor comprises a surface patch histogram of index shape.
5. The method of claim 1, wherein said flattening uses an ABF, LSCM, ABF++, or HLSCM method.
6. The method of claim 1, wherein said registration uses a segmentation of the two-dimensional representations into N.sub.c curvature levels that are uniformly distributed over the range of the values taken by the values of the one or more parameters representative of the shape of the surface of the element.
7. The method of claim 1, wherein said registration uses a segmentation of the two-dimensional representations into N.sub.c curvature levels that takes into account the statistical distribution of the values taken by the values of the one or more parameters representative of the shape of the surface of the element.
8. The method of claim 1, wherein said registration uses a number N.sub.s.sup.manu of manually registered points.
9. The method of claim 8, the method being semi-automatic, wherein, during said registration, the number.sub.S.sup.manu of points registered manually for the current element decreases with the number of processed elements.
10. The method of claim 8, the method being automatic and based on snakes, wherein the number N.sub.s.sup.manu of points registered manually is zero.
11. The method of claim 1, wherein said element is a right ear and/or a left ear and/or the head, and/or the torso of an individual.
12. A system for generating a three-dimensional morphable model of an element from an initial database of examples of such elements providing data allowing, for each of the elements of the initial database, a three-dimensional meshed surface based on points and on a triangular network connecting said points to be determined, comprising a computer configured to implement the method according to claim 1.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0048] The invention will be better understood on studying a few embodiments, which are described by way of completely nonlimiting example and illustrated by the appended drawings, in which:
[0049]
[0050]
DETAILED DESCRIPTION
[0051] The present invention is an alternative to the aforementioned methods and allows a morphable model of any type of subject or element to be created on the basis of the study of its morphology.
[0052] In the rest of the description, the described example elements will be human ears or human faces, but the invention may be applied to any other element whatsoever.
[0053] In particular, the present invention does not require texture information and therefore thus avoids the pose and illumination problems to which optical flow algorithms, such as SFM (structure from motion) or SFS (structure from shading) algorithms, are subject. In addition, the invention makes it possible to naturally adapt to three-dimensional or 3D data just like to 2.5D data. Lastly, the present invention allows semantic information to be preserved, or in other words the physical sense conveyed by a zone, a group of peaks or even a single peak to be preserved. Thus, in the example of a human face, the peaks composing the nose of the average shape will also compose the nose of any face of the model after deformation. This observation is also valid for substructures, such as in the present case: the end of the nose, the right and left nostrils or the ridge.
[0054]
[0055] In other words,
[0061] It is possible to down-sample each example element of the initial database.
[0062] Thus, when the available computational power is limited, it is possible to adapt the data accordingly.
[0063] As a variant, it is possible to down-sample each example element of the initial database except one of said examples, which is taken as reference.
[0064] Thus, it is possible to improve the efficiency of the following step of automatic registration without requiring notably more computational power.
[0065]
[0066] More precisely, the models obtained by principal component analysis (PCA) take the form of an average and of deformation modes or of eigenvalue/eigenvector pairs hierarchized in order of importance, or of other terms in decreasing eigenvalue order. It is therefore possible to speak of the first deformation mode, of the second deformation mode, etc.
[0067] In the present invention, in the 3D universe, each deformation mode represents a set of types of movement undergone by the elements of the point cloud. It is possible to see these types of movement as the data of a direction and of a movement speed for each point. The datum of a multiplicational coefficient, which could be likened to a duration in the preceding analogy, allows the exact movement thereof to be computed.
[0068]
[0069] In
[0070] The present model thus allows physical substructures of the ear that have a tendency to change in unison (or in contrast separately if a complementarity approach is employed) to be revealed.
[0071] The gray level of each point is associated with its deviation with respect to its position in the average shape (the higher the gray level, the larger the deviation).
[0072] The method according to one aspect of the invention is implemented as follows: 1) A database of training examples is assumed to be available, each of the examples allowing, directly or after processing, a meshed surface to be reconstructed in R3.
[0073] 2) For each example:
[0074] local geometric characteristics of each point of each example are measured. The result of each measurement is associated with the point that served for its realization. This measurement may be of local curvature, as illustrated in
[0075] The surface is unwrapped, which thus allows a representation of each mesh taking the form of a 2D image (denoted im2D) to be obtained, as illustrated in
[0076] This unwrapping may be carried out in multiple ways, such as with ABF (angle-based flattening) algorithms, LSCM (least square conformal mapping) algorithms or derivatives thereof (ABF++algorithms, HSLCM (hierarchical least square conformal mapping) algorithms, etc.).
[0077] 3) Registration of a maximum of points is carried out on the basis of the 2D images using the characteristics measured in point 2) and analyzing methods related to 2D image processing, as illustrated in
[0078] 4) The points 10 retained during the registration are then used to down-sample the initial 3D meshes. The resulting point clouds are then used to form the actual model using conventional construction tools such as principal component analysis (PCA) or intermediate component analysis (ICA), etc.
[0079] A shape called the average shape and deformation modes are then obtained as illustrated in
[0080] 5) The average shape is remeshed in order to allow a surface to be given to the model.
[0081] There follows an example embodiment of the method of the invention, relating to a 3D morphable ear model.
[0082] The database used consisted of ten examples freely accessible from the SYMARE database, SYMARE being the acronym of Sydney-York Morphological And Recording of Ears.
[0083] In addition, all the left ears of these 10 pairs of ears were symmetrized with respect to the sagittal plane so as to create twenty right ears (the ten initial right ears and the ten right ears obtained by symmetrization of the ten left ears).
[0084] The set of indices of these right ears will be denoted I=[[1; 20]] and the index of the right ear taken as reference right ear will be denoted i=1.
[0085] For reasons of consistency, the meshes of the ears thus obtained were down-sampled to about 6900 peaks. This purely optional step was present in order to optimize the digital processing time and to facilitate the subsequent integration of any other training examples.
[0086] Lastly, the left ear of the first subject of the database was chosen as reference ear after right-ear symmetrization. In the rest of the document, all the notations indexed by ref naturally relate to this reference (in particular, iref=1).
[0087] Point 2) of the description of the invention was then carried out. Local average curvature was used as geometric characteristic and applied as texture to the 3D meshes, as illustrated in
[0088] The unwrapping was carried out by virtue of an LSCM (least square conformal mapping) algorithm, as illustrated in
[0089] As specified in point 3), other algorithms are employable. There are no particular pre-requisites. Registration of the peaks of the connected graphs required the following steps:
[0090] 1) A step in which the 2D images were segmented into N.sub.c=10 curvature levels that were uniformly distributed over the range of the values taken by the curvature measurements, as illustrated in
[0091] 2) A step in which N.sub.s.sup.manu=88 peaks of the reference connected graph were selected.
[0092] This selection was carried out on n.sub.c isocurvature lines, as illustrated in the example of
[0093] 3) A step in which corresponding peaks were selected in each corresponding connected graph (not shown) G.sub.c.sup.i, iI{i.sub.ref}.
[0094] 4) A step in which a triangulation (in the present case, a Delaunay triangulation) was carried out on the N.sub.s.sup.manu peaks issued from the connected graph G.sub.c.sup.i.sup.
[0095] This created a finite set of triangles, indexed J. In the present case, J=[[1,163]].
[0096] The set thus created for the i.sup.th ear, as illustrated in
[0097] 5) A step in which, for each jJ, T.sub.j={t.sub.j.sup.i, eI} was considered to be the set of the j.sup.th triangles. Each element t.sub.j.sup.i j potentially contained peaks of the graph G.sub.c.sup.i, the centroid coordinates of which were computed in the coordinate system specific to the triangle t.sub.i.sup.j.
[0098] 6) A step in which the set of peaks included in t.sub.j.sup.i.sup.
[0099] However, since it was necessary for a peak of a graph not to be associated with a plurality of peaks of another, conflicting registrations that were the least interesting from the point of view of centroid distance were deleted. Thus a set of automatic registrations was obtained from the elements of T.sub.j, jJ.
[0100] This was done for all jJ and, in the end, N.sub.s.sup.auto automatic registrations were obtained for all the ears. In the present example, N.sub.s.sup.manu+N.sub.s.sup.auto=1460 points.
[0101] Among the possible variants and improvements, the following may be listed: [0102] Use of other criteria for characterizing the local geometry rather than just curvature, and indeed conjoint use of a plurality thereof. [0103] Up-sampling of all the ears or of all the ears except [0104] the reference ear. This allows the efficiency of the [0105] automatic registration to be increased and, therefore, the final resolution of the model to be increased.
[0106] This additional step makes it possible to pass from 1460 points to 5076 points, to be placed facing the 6900 peaks in the initial meshes. For example, this up-sampling may use the centroids of the initial triangles.
[0107] The parameters N.sub.c and N.sub.s.sup.manu may of course be set to other values.
[0108] The curvature levels may not be uniformly distributed over the available range but take into account the statistical distribution of the values of the curvatures.
[0109] The N.sub.s.sup.manu points selected in registering step 2) may be selected automatically or semi-automatically, for example: [0110] gradual training of the selection process may be performed with the first ears, thus allowing preselection on the following ears. [0111] snake-based methods may be used to establish the detail of the transformations of an isoline of one image to the corresponding isoline of another image.
[0112] In another example embodiment, as follows, the method was applied to human faces.
[0113] The database of faces used in the present example consisted of examples 2, 5, 6 and 14 of the 3D database of faces UWA face database of the University of Western Australia, which is available at the following address: http://staffhome.ecm.uwa.edu.au/00053650/databases.html.
[0114] As for the example described above applied to human ears, a mesh was chosen as reference. In the present case, that was subject number 2 of the database.
[0115] Likewise, the local average curvature was also used as geometric characteristic and applied by way of texture to the 3D meshes, as illustrated in
[0116] In contrast, contrarily to the preceding case, the available meshes were not down-sampled. The number of initial peaks varied between 16655 and 25951.
[0117] Step 2 of the description of the invention was then carried out using the same methodology as for the described example based on ears.
[0118] The only notable differences were the number of training examples (4 faces) and the number of manually annotated points (N.sub.s.sup.manu=37), as illustrated in
[0119] The obtained result was a morphable face model comprising 6846 peaks and forming an average face, as illustrated in
[0120] In the present application, an innovative way of constructing a morphable model has been described. This method has many advantages with respect to the prior art, and in particular: [0121] Potential application to any type of 3D shape, without loss of information. [0122] Preservation of the semantic aspect attached to the studied object, by virtue of the local character of the considered characteristics. [0123] Entirely automatable. [0124] Unconstrained with respect to the texture of the training examples and therefore to the illumination conditions during the acquisition of the data. [0125] The ability to incorporate 2D-image analyzing algorithms, which are more numerous and mature than those of the 3D world.
[0126] The steps of the method described above may be carried out by one or more programmable processors executing a computer program in order to execute the functions of the invention by performing operations on input data and generating output data.
[0127] A computer program may be written in any form of programming language, including compiled or interpreted languages, and the computer program may be deployed in any form, including as an autonomous program or as a subprogram, element or other unit suitable for use in a computational environment. A computer program may be deployed to be executed on one computer or on a plurality of computers at a single site or distributed over a plurality of sites and connected together by a communication network.
[0128] The preferred embodiment of the present invention has been described. Various modifications may be made without departing from the spirit and scope of the invention. Therefore, other implementations fall within the scope of the following claims.