Open topic with navigation

# Add a Face to a Database (Using a Single Action)

You can train HPE Media Server to recognize a face by sending a single action (`TrainFace`).

Running this action is equivalent to running the following actions in the following order:

- `NewFace`
- `AddFaceImages`
- `AddFaceMetadata` (optional)
- `BuildFace`

The `TrainFace` action is atomic, so that any interruption to the server does not leave the database in an inconsistent state.

Alternatively, you can train HPE Media Server by sending these actions individually. You might want to do this if you are building a front end application that trains HPE Media Server in response to user input. For more information about how to do this, see Add a Face to a Database (Using Separate Steps).

To add a face to a database (using a single action)

- Add a face using the `TrainFace` action. Set the following parameters:

  `database` | The name of the database to add the face to. The database must already exist.
  `identifier` | (Optional) A unique identifier for the face (maximum 254 bytes). If you do not set this parameter, HPE Media Server generates an identifier automatically.
  `imagedata` | (Set this or `imagepath`, but not both). The training images to add. Files must be uploaded as multipart/form-data. For more information about sending data to HPE Media Server, see Send Data by Using a POST Method.
  `imagepath` | (Set this or `imagedata`, but not both). The paths of the training images to add. The paths must be absolute or relative to the HPE Media Server executable file.
  `imagelabels` | (Optional) A comma-separated list of labels. One label is associated with each image (maximum 254 bytes for each label). The number of labels must match the number of images. If you do not set this parameter, HPE Media Server generates labels automatically.
  `metadata` | (Optional) A comma-separated list of metadata key-value pairs to add to the face. Separate keys from values using a colon (:). To include a comma or colon in a key name or value, you must enclose the key name or value in quotation marks (`"`) and escape any quotation marks that occur within the string with a backslash (`\`).

  For example:

      curl http://localhost:14000 -F action=TrainFace
                                  -F database=Faces
                                  -F imagedata=@face1_smile.jpg,face1_neutral.jpg
                                  -F imagelabels=image1,image2
                                  -F "metadata=lastname:Smith,fullname:\"John Smith, Jr\""

  Alternatively, the following example provides the paths of the training images rather than sending the image data:

      curl http://localhost:14000 -F action=TrainFace
                                  -F database=Faces
                                  -F imagepath=face1_smile.jpg,face1_neutral.jpg
                                  -F imagelabels=image1,image2
                                  -F "metadata=lastname:Smith,fullname:\"John Smith, Jr\""

  HPE Media Server adds the face to the database and returns the identifier.

© 2017 Hewlett Packard Enterprise Development LP | Send documentation feedback to HPE Close Send documentation feedback To open the configured email client on this computer, open an email window. Otherwise, copy the information below to a web mail client, and send this email to AutonomyTPFeedback@hpe.com. We appreciate your feedback! Product: Topic Title: Help Topic: Feedback:

_HP_HTML5_bannerTitle.htm