The data request structure: an overview

Below is a line-by-line annotated overview of a complete data request. Click on the name of any object or field for an in-depth look into, its effects and accepted values.

{ //Opening bracket of the root JSON object
  "datapoints": [ //List of datapoints. Each datapoint will generate a single image and its accompanying metadata and modalities.`
    { //Opening bracket of the first datapoint
      "human": { //Settings that will define the construction of the human in the scene
        "id": //A UUID that defines the identity of the actor in the scene.
        "head": { //Settings that define the human head
          "eyes": { //Settings that define eye texture, closure, and direction of gaze
            "id": //A UUID that defines the texture used in the eyes
            "target_of_gaze": { //The x, y, and z components of the vector to the  target of the eyes' gaze
              "direction": { //The x, y, and z components of the vector to the target of  the eyes' gaze
                "x": //Direction from side to side
                "y": //Direction from front to back
                "z": //Direction from bottom to top
              },
              "distance": //The distance between the eyes and the target of their gaze
            },
            "eyelid_closure": //The amount by which the eyelids are closed
          },
          "hair": { //Settings that define hair style and color
            "id": //A UUID that defines the actor's hairstyle
            "color_settings": {
              "melanin": //The amount of black color in the hair
              "redness": //The amount of red color in the hair
              "whiteness": //How much the hair has gone grey or, at higher values, white
              "roughness": //How diffuse light as it reflects off of the hairs, which defines how shiny or dull the hair is
              "index_of_refraction": //How much light rays change direction as they travel through the hairs
            }
          },
          "facial_hair": { //Settings that define facial hair style and color
            "id": //A UUID that defines the actor's facial hair style
            "color_settings": {
              "melanin": //The amount of black color in the facial hair
              "redness": //The amount of red color in the facial hair
              "whiteness": //How much the facial hair has gone grey or, at higher  values, white
              "roughness": //How diffuse light as it reflects off of the hairs,  which defines how shiny or dull the hair is
              "index_of_refraction": //How much light rays change direction as they travel through the hairs
            }
          },
          "eyebrows": { //Settings that define eyebrow style and color
            "id": //A UUID that defines the actor's eyebrow style
            "color_settings": {
              "melanin": //The amount of black color in the eyebrow hairs
              "redness": //The amount of red color in the eyebrow hairs
              "whiteness": //How much the eyebrow hairs have gone grey or, at higher values, white
              "roughness": //How diffuse light as it reflects off of the hairs, which defines how shiny or dull the hair is
              "index_of_refraction": //How much light rays change direction as they travel through the hairs
            }
          },
          "location": { //The position of the face in the scene, using global coordinates
            "x": //Moves the head from side to side
            "y": //Moves the head from front to back
            "z": //Moves the head down and up
          },
          "rotation": { // The rotation of the head about the neck
            "pitch": //Tilts the head up and down.
            "yaw": //Turns the head from side to side.
            "roll": //Tilts the head from side to side.
          },
          "expression": { //The expression on the actor's face: type and intensity
            "name": //The type of expression, such as happiness or disgust.
            "intensity": //The intensity of the expression, from 0 to 1.
          }
        }
      },
      "accessories": { //Settings that define any accessories worn by the human in the scene. The object's contents vary depending on the accessory - in this case glasses
        "glasses": { //Settings that define a pair of glasses
          "id": //The UUID of a specific pair of glasses, which defines its shape
          "frame_color": //The base color of the glasses frame
          "frame_metalness": //The reflectivity of the glasses frame
          "lens_color": //The base color of the glasses lenses
          "lens_reflectivity": //The amount of light reflected by the lenses
          "lens_transparency": //The amount of light that passes through the lenses
          "position": //Where the glasses are being worn
        }
      },
      "camera": { //Settings that apply to the location, orientation, and parameters of the camera that will render the scene
        "name": //A label that you can freely give your camera
        "intrinsic_params": { //Camera intrinsic parameters, that define how it sees the world
          "projection": //The type of camera projection that should be used
          "resolution_width": //The number of pixels in the width of the output image
          "resolution_height": //The number of pixels in the height of the output image
          "fov_horizontal": //The camera's horizontal field of view, or the number of degrees of arc that the camera covers from side to side
          "fov_vertical": //The camera's horizontal field of view, or the number of degrees of arc that the camera covers from top to bottom
          "wavelength": //The type of light that the camera captures, i.e. visible or near-infrared
        },
        "extrinsic_params": { //Camera extrinsic parameters, that define where it is in relation to the world
          "location": { //The x, y, and z coordinates of the camera in the scene
            "x": //Moves the camera from side to side
            "y": //Moves the camera from back to front
            "z": //Moves the camera down and up
          },
          "rotation": { //The orientation of the camera, defined using yaw, pitch, and raw
            "yaw": //Turns the camera from side to side.
            "pitch": //Tilts the camera up and down.
            "roll": //Tilts the camera from side to side.
          }
        }
      },
      "background": { //Settings that apply to the background and ambient lighting in a scene
        "id": //The UUID of the specific background that you want to place in the scene
        "transparent": //Whether the background is visible or transparent
        "rotation": //The orientation of the background relative to the camera and the actor
      }
      "lights" { //Settings that apply to special lighting that can be added to a scene. This object's contents vary depending on the lighting in question
      }
    } //Closing bracket of the first datapoint.
  ] //Closing bracket of the datapoint list
} //Closing bracket of the root JSON object