Custom Model Training using Deesptream v5.x


I need help in training a custom deepstream model for detecting age, gender and emotions. I have previously done some training for the FaceDetectIR using the jupyter notebook provided in TLT.


  • Is there any guide on how to train custom models on the desired classes?
  • Is there any labeling tool for annotation and the format to be followed while annotation?

You mention that you have trained a facedetect model. Then, may I know if you want to classify the faces into 3 kinds of classes: age, gender, emotions? If yes, for your question 1, please follow the classification model or jupyter notebook to train 3 kinds of TLT classification model. For example, for age classification model, you can prepare faces and split them into different ages. Then put them into different folders and train. After all the 3 classification model are trained, run inference as the secondary engines. See /opt/nvidia/deepstream/deepstream-5.0/samples/configs/deepstream-app/source4_1080p_dec_infer-resnet_tracker_sgie_tiled_display_int8.txt for reference about the config file.

For you question 2, if you train classification model, for your case, actually you just need to prepare the face dataset. If you do not have face dataset, you can search help from websites. For example, GitHub - ageitgey/face_recognition: The world's simplest facial recognition api for Python and the command line will find all the faces that appear in a picture.

Hi @Morganh,

As per your previous post I have collected face datasets for training. I want to know if there is any tool using which I can label the images with the respective classes especially for deepstream as it uses KITTI format?

You can search help from websites. For example, GitHub - SaiPrajwal95/annotate-to-KITTI: This script can be used to manually generate annotations for an image dataset in the KITTI vision format.