unibas-gravis / parametric-face-image-generator Goto Github PK
View Code? Open in Web Editor NEWGenerate fully parametric face images from the Basel Face Model 2017
License: Apache License 2.0
Generate fully parametric face images from the Basel Face Model 2017
License: Apache License 2.0
Hi there,
If facebox cropping is used for the generator, the frontal faces are not centered in the box, but shifted either to the right or to the left. My expectation would be that the facebox is still centered. See the following example (used variable pitch from -x to x and took the two frontal examples):
Front 1 (Shifted, but should be centered?)
Hello, I would like to ask how to generate random Face using Basel Face Model 2019 version (that version is a.h5 file, I will not use),
I would be very grateful if you can help me
Hi,
When I run the generator.jar, it will generate faces with different identities after each run. How can I fix the random see to reproduce the results? i.e., for each run of generator, the identities of the generated faces are fixed. Thanks!
val rndIll = illuminationPrior.rnd(illumination)
this line causes the Basel Illumination Prior files to be loaded for each image separately.
This leads to superslow data generation and causes a lot of unnecessary IO
Hi,
I need the complete list of landmark tags. I couldn't find them. Reading codes, BFM files, etc, so far I got these ones;
center.chin.tip
center.lips.lower.inner
center.nose.tip
center.front.trichion
left.ear.lobule.attachement
left.ear.helix.outer
right.ear.lobule.attachement
right.ear.helix.outer
left.eye.corner_outer
left.eye.corner_inner
left.eye.pupil.center
right.eye.corner_outer
right.eye.corner_inner
right.eye.pupil.center
left.eyebrow.bend.lower
left.eyebrow.inner_lower
right.eyebrow.bend.lower
right.eyebrow.inner_lower
left.lips.corner
right.lips.corner
left.nose.wing.tip
right.nose.wing.tip
What are the others?
..
Thanks in advance.
Is there any python implementation of this repo?
I want to rebuild the parametric-face-image-generator-2.0 and generate a new .tar, because when i run: java -Xmx2g -cp generator.jar faces.apps.ControlledFaces -c data/config_files/example_config_controlled.json, there is something wrong like below:(I set the parameter number-of-ids-to-create:3 in morphable-model-parameters)
_files/example_config_controlled.json
Generating ID:1 Sample:1
Generating ID:0 Sample:1
Generating ID:2 Sample:1
Something went wrong with id: 2
None.get
[Ljava.lang.StackTraceElement;@6356fc26
Something went wrong with id: 1
None.get
Something went wrong with id: 0
None.get
[Ljava.lang.StackTraceElement;@60c3eb97
[Ljava.lang.StackTraceElement;@452ac960
What I want to get is simply the diffuse albedo map (aka the base color without illumination, but aligned with the the rendered image), but after inspect into the code, I can only find function invoke the renderer but not the render code.
Would you mind point me out which part of code should I modify to meet my requirement?
In the Basel Faces 2009 page, it looked like there was an age and gender axis. How do we control age and gender?
Hi
In the rps file, the expression is encoded as a long string of numbers. How do we interpret these numbers? Is there a way to convert them to emotion (valence + arousal)?
When I execute the generator.jar file, I get this ouptut:
$ java -Xmx2g -cp generator.jar faces.apps.ControlledFaces -c data/config_files/example_config_controlled.json
Generating ID:0 Sample:1
Something went wrong with id: 0
None.get
[Ljava.lang.StackTraceElement;@2f1918c6
(
I am trying to run this to visualize the working of the paper "Occlusion-aware 3d morphable models and an illumination prior for face image analysis". Any clues to fix this would be much appreciated.
Hi,
I have been using the Basel face model to generate faces (specifically model2017-1_face12_nomouth.h5) and I would like to do some statistical study on the faces being generated. I built some code that generate a new face using the PCA basis and thought I would compare the face generated using this scala based generator.
Sadly I am not very well versed in scala or java and I must admit I am a bit lost in the code at the moment.
In python I used the values in shape_PCA_Basis=h5file['shape']['model'].get('pcaBasis')
which is a matrix of shape (85764, 199).
To create a face I use the mean position of the vertices given in shape_average=h5file['shape']['model'].get('mean')
, generate a (199,1) vector of random values (vector_rnd) and get the final position of vertices by doing : Vertices = np.reshape(shape_average+ np.matmul(shape_PCA_Basis,vector_rnd), (28588,3))
This seems to work well but if instead of using a random vector I us the one created in the .rps file this scala code creates I see big differences in the faces generated using both language. I render the face in Python using a pinhole camera which also distorts the final image but I think the changes in shape are way more limited in my code than they seem to be in the rendered scala image.
Did I misunderstand how to rebuild the face vertices?
If not could you please direct me to a way to output the vertices position of the face in the scala model? I assume I would have to change the scalismo-faces code as well.
Thank you in advance,
Vargeel
Can i use it with another data, not basel?
Hi,
First of all, thanks for sharing this software. It looks interesting and I want to explore it a bit more.
However, after I installing the dependencies as illustrated, I could not run the javascript using the command
java -Xmx2g -cp generator.jar faces.apps.ControlledFaces -c data/config_files/example_config_controlled.json
I keep getting the error message:
Could not find or load main class: faces.apps.ControlledFaces
I apology for my limited background in Java and not capable to figure out a way to get over this error. Please let me know if you have any idea what the cause is.
Best regards,
Melo
Hi,
I followed the instructions, put necessary files in the data folder and used java -Xmx2g -cp generator.jar faces.apps.ControlledFaces -c data/config_files/example_config_controlled.json to call the program. The program generated sample images of 3 different viewpoints of one facial identity (i.e., the same person), which are found in the folder output/img/0, but then the program stopped without any error messages. I would like to generate more images of different facial identities. Would you please let me know how can I do that?
Thank you for your help.
Best,
Eric
Since we know that there is no close eye expression in BFM, so how to generate a face with closed eye?
Thank you for sharing code!
For both controlled config files I get the following error:
Exception in thread "main" java.util.NoSuchElementException: key not found: illumination-parameters
Hi,
I was wondering if it is possible to use this generator to generate a set of faces in which their visual similarities vary in certain ways. For example, given a specific facial identity (target), I want to adjust the parameter of colour or shape to create a set of facial identities that are similar (or very different) to that target.
Would you please let me know if it is possible, and if so, how can I modify the script to do so?
Thank you so much for your help.
Best,
Eric
Hi, Thanks for sharing this great face image generator.
I wonder if this generator can generate the gt(parameters like parametric-face-image-generator/data/output/rps/) of 300W-LP Datasets. If possible, how can i load the 300W-LP Datasets to this face image generator???
I am looking forward to your reply. Thank you
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.