Avatar SDK Standalone Application  3.1.2
Full Body Avatars
Parameters Description

There are two types of parameters: Computation Parameters and Export Parameters. Both of them are provided in JSON format.

Computation Parameters

These parameters are a set of flags and options to fine-tune the avatar computation process. Computation parameters include three sections: model_info, avatar_modifications, body_shape.
A full list of parameters for a particular pipeline can be found here:

Pipeline Type Configuration

Pipeline type and subtype should be specified in the parameters JSON.
MetaPerson Male

{
"pipeline": "body_0.3",
"pipeline_subtype": "male"
}

MetaPerson Female

{
"pipeline": "body_0.3",
"pipeline_subtype": "female"
}

FitPerson

{
"pipeline": "body_0.3",
"pipeline_subtype": "mobile"
}

Model Info

The model_info section contains flags that specify which meta-information should be computed for the avatar. The generated meta-information is stored in the model.json file in the output directory. More information about model_info parameters can be found in our Web API Documentation.

"model_info":
[
"hair_color",
"skin_color",
"gender",
"age",
"race",
"facial_landmarks_68",
"eye_sclera_color",
"eye_iris_color",
"body_shape_coeffs_10"
]

hair_color: compute average haircut color from a submitted photo.
skin_color: compute average skin color from a submitted photo.
gender: predict a person's gender from a submitted photo. Possible values are male and female.
age: classify a person's age from a submitted photo. Currently possible values are child and not_child.
race:: classify which race the person from the photo belongs to. Possible values are: black, asian and white. The result of prediction is represented as a set of confidence values for possible values.
facial_landmarks_68: compute facial landmarks. Landmark coordinates are represented as flat JSON array with X, Y, Z float components sequence for each landmark, or NaN (for each component) if no landmark is detected.
eye_sclera_color: compute average eye sclera color from a submitted photo.
eye_iris_color: compute average eye iris color from a submitted photo.
body_shape_coeffs_10: As FitPerson avatars are based on the SMPL model that is created by the Max-Planck Institute, SMPL model coefficients applied to the resulting avatar may be included into model info. Please note: in order to use these coefficients you will need an active SMPL license. Please find more information on the Meshcapade site.

Avatar Modifications

Parameters configure an avatar appearance. More information about avatar_modifications parameters can be found in our Web API Documentation

"avatar_modifications":
{
"add_glare":true,
"add_eyelid_shadow":true,
"eye_iris_color": { "red":0, "green":255, "blue":0 },
"eye_sclera_color": { "red":0, "green":255, "blue":0 },
"parametric_eyes_texture":true,
"teeth_color": { "red":0, "green":255, "blue":0 },
"generated_haircut_texture_size": {"width":1024,"height":1024 },
"generated_haircut_faces_count":5000,
"remove_smile":true,
"enhance_lighting":true,
"remove_glasses":true,
"remove_stubble":true
}

add_glare: add a glare directly into parametric eye texture. Works only when parametric_eyes_texture is set. Enabled by default.
add_eyelid_shadow: add an eyelid shadow on top of eye texture. Works only when parametric_eyes_texture is set.
eye_iris_color: recolor eye iris directly on a model texture. Works only when parametric_eyes_texture is set.
eye_sclera_color: recolor eye sclera directly on a model texture. Works only when parametric_eyes_texture is set.
parametric_eyes_texture: replace eye texture from the submitted photo with the generated one with sclera and iris colors to match the photo version.
teeth_color: recolor teeth directly on a model texture.
generated_haircut_texture_size: resize generated haircut texture to the specified size. Original haircut texture size is 1024x1024 px, thus setting size greater than this value will not result in improved texture quality.
generated_haircut_faces_count: resample generated haircut mesh to have specified faces count.
remove_smile: attempt to remove a smile on the submitted photo before the actual avatar computation starts.
enhance_lighting: attempt to make lighting more uniform.
remove_glasses: attempt to remove glasses on the submitted photo before the actual avatar computation starts.
remove_stubble: attempt to remove a stubble on the source photo before the actual avatar computation starts.

Body Shape

The body_shape section allows configuring some body shape parameters, such as gender, weight, height, etc. Parameters that are not specified will be predicted from an input photo. More information about body_shape parameters can be found in our Web API Documentation.
body_shape section is available only for FitPerson avatars.

"body_shape":
{
"gender":"female",
"height":1.8,
"weight":80,
"waist":90,
"chest":100,
"hips":100
}

gender: expected model's gender. Available values are female, male, and non_binary. If not specified, gender is autodetected.
height: expected model's height in centimeters, greater than zero. If not specified, height is predicted.
weight: expected model's weight in kilograms, greater than zero. If not specified, weight is predicted.
waist: expected model's waist girth in centimeters, greater than zero. If not specified, waist girth is predicted.
chest: expected model's chest girth in centimeters, greater than zero. If not specified, chest girth is predicted.
hips: expected model's hips girth in centimeters, greater than zero. If not specified, hip girth is predicted.

Export Parameters

These parameters specify what resulting avatar data should include: model format, set of textures, blendshapes, whether to embed all these assets into the one model or save as separate files, etc. A full list of export parameters for a particular pipeline is available in:

More information about export parameters can be found in our Web API Documentation.

{
"format": "gltf",
"embed" : true,
"pointclouds" : false,
"additional_textures" : [],
"embed_textures": false,
"texture_size" : {"width":4096,"height":2048},
“template”:””,
“lod”:0,
"haircuts": {
"list": [],
"format": "gltf",
"embed": true,
"pointclouds": false,
"color": {"red":0,"green":255,"blue":0},
"texture_size" : {"width":2048,"height":2048},
"embed_textures": false
},
"outfits": {
"list": [],
"format": "gltf",
"embed": true,
"pointclouds": false,
"additional_textures" : [],
"texture_size" : {"width":4096,"height":4096},
"embed_textures": false
}
"blendshapes": {
"list": [],
"format": "gltf",
"embed": true,
"pointclouds": false
}
}

format: file format for the resulting mesh. The top-level flag defines the format of the avatar, category-level flag defines the format of the mesh for this particular category. Currently supported options include gltf, glb, fbx, obj, ply, and bin (blendshapes only).
embed: if avatar format (i.e. top-level format) supports sub-meshes (i.e. fbx, gltf, glb) this flag indicates whether to embed this particular category meshes into the avatar or store these meshes as separate files. If avatar format does not support sub-meshes - flag is set to false and category meshes are saved as separate files.
pontclouds: if set to true, then the resulting model file will not contain mesh faces and UV-mapping (i.e. it will contain only mesh vertices).
additional_textures: list of textures to export besides default diffuse model texture. Available values are normal_map, roughness_map, metallic_map. For outfits section body_visibility_mask is also available.
embed_textures: if format supports textures embedding (i.e. fbx or glb), this flag indicates whether to embed textures or store them as separate files. If avatar format does not support textures embedding - flag is set to false and textures are saved as separate files.
texture_size: resize texture to the specified size. Avatar texture size is 4096x2048 px. Most asset textures are 4096x4096 px for outfits and 2048x2048 px for haircuts, but size varies between assets. Please check the original texture size before setting a custom value as setting it greater than the original one will not result in improved texture quality.
template: set this parameter to “head” if you need to generate only the head, otherwise the full body will be generated.
lod: level of details for the body mesh. Possible values are 0-7.
list: list of enumerable values of assets to export for this particular category.
color: if texture supports recoloring, this flag specifies the base color for the recoloring process.