NVIDIA
NVIDIA
Transfer Learning Toolkit for Video Streaming Analytics
Container
NVIDIA
NVIDIA
Transfer Learning Toolkit for Video Streaming Analytics

NVIDIA’s Transfer Learning Toolkit is a python-based AI training toolkit that allows developers to train faster and accurate neural networks on the popular deep learning architectures. Create accurate and efficient AI models for Intelligent Video Analytics and Computer Vision without expertise in AI frameworks.

What is Transfer Learning Toolkit?

Transfer Learning Toolkit (TLT) is a python based AI toolkit for taking purpose-built pre-trained AI models and customizing them with your own data. TLT adapts popular network architectures and backbones to your data, allowing you to train, fine tune, prune and export highly optimized and accurate AI models for edge deployment.

The pre-trained models accelerate the AI training process and reduce costs associated with large scale data collection, labeling, and training models from scratch. Transfer learning with pre-trained models can be used for AI applications in smart cities, retail, healthcare, industrial inspection and more.

Build end-to-end services and solutions for transforming pixels and sensor data to actionable insights using TLT, DeepStream SDK and TensorRT. TLT can train models for common vision AI tasks such as object detection, classification, instance segmentation as well as other complex tasks such as pose estimation, facial landmark, gaze estimation, heart rate estimation and others.

Purpose-built Pre-Trained Models

Purpose-built pre-trained models offer highly accurate AI for a variety of vision AI tasks. Developers, system builders and software partners building intelligent vision AI apps and services, can bring their own custom data and train with and fine-tune pre-trained models instead of going through the hassle of large data collection and training from scratch.


PeopleNet


2D Body Pose Estimation


Facial Landmark Estimation

The purpose-built models are available on NGC. Under each model cards, there is a pruned version that can be deployed as is or an unpruned version which can be used with TLT to fine tune with your own dataset.

Model NameNetwork ArchitectureNumber
of classes
AccuracyUse Case
TrafficCamNetDetectNet_v2-ResNet18483.5% mAPDetect and track cars
PeopleNetDetectNet_v2-ResNet18380% mAPPeople counting, heatmap generation, social distancing
PeopleNetDetectNet_v2-ResNet34384% mAPPeople counting, heatmap generation, social distancing
DashCamNetDetectNet_v2-ResNet18480% mAPIdentify objects from a moving object
FaceDetectIRDetectNet_v2-ResNet18196% mAPDetect face in a dark environment with IR camera
VehicleMakeNetResNet182091% mAPClassifying car models
VehicleTypeNetResNet18696% mAPClassifying type of cars as coupe, sedan, truck, etc
PeopleSegNetMaskRCNN-ResNet50185% mAPCreates segmentation masks around people, provides pixel
PeopleSemSegNetUNET192% MIOUCreates semantic segmentation masks around people. Filters person from the background
License Plate DetectionDetectNet_v2-ResNet18198% mAPDetecting and localizing License plates on vehicles
License Plate RecognitionTuned ResNet1836(US) / 68(CH)97%(US)/99%(CH)Recognize License plates numbers
Gaze EstimationFour branch AlexNet based modelN/A6.5 RMSEDetects person's eye gaze
Facial LandmarkRecombinator networksN/A6.1 pixel errorEstimates key points on person's face
Heart Rate EstimationTwo branch model with attentionN/A0.7 BPMEstimates person's heartrate from RGB video
Gesture RecognitionResNet1860.85 F1 scoreRecognize hand gestures
Emotion Recognition5 Fully Connected Layers60.91 F1 scoreRecognize facial Emotion
FaceDetectDetectNet_v2-ResNet18185.3 mAPDetect faces from RGB or grayscale image
2D Body Pose EstimationSingle shot bottom-up18-Estimates key joints on person's body

Architecture specific pre-trained models

In addition to purpose-built models, Transfer Learning Toolkit supports the following detection architectures:

These detection meta-architectures can be used with 13 backbones or feature extractors with TLT. For a complete list of all the permutations that are supported by TLT, please see the matrix below:

TLT3.0 supports instance segmentation using MaskRCNN architecture.

TLT3.0 supports semantic segmentation using UNET architecture.

Training

To get started, first choose the model architecture that you want to build, then select the appropriate model card on NGC and then choose one of the supported backbones.

LOGO

Running Transfer Learning Toolkit

  1. Setup your python environment using python virtualenv and virtualenvwrapper.

  2. In TLT3.0, we have created an abstraction above the container, you will launch all your training jobs from the launcher. No need to manually pull the appropriate container, tlt-launcher will handle that. You may install the launcher using pip with the following commands.

pip3 install nvidia-pyindex
pip3 install nvidia-tlt
  1. Download the Jupyter notebooks that you are interested in from NGC resources. After installing the pre-requisite, all the training steps will be run from inside the Jupyter notebook.
Purpose-built ModelJupyter notebook
PeopleNetdetectnet_v2/detectnet_v2.ipynb
TrafficCamNetdetectnet_v2/detectnet_v2.ipynb
DashCamNetdetectnet_v2/detectnet_v2.ipynb
FaceDetectIRdetectnet_v2/detectnet_v2.ipynb
VehicleMakeNetclassification/classification.ipynb
VehicleTypeNetclassification/classification.ipynb
PeopleSegNetmask_rcnn/mask_rcnn.ipynb
License Plate Detectiondetectnet_v2/detectnet_v2.ipynb
License Plate Recognitionlprnet/lprnet.ipynb
Gaze Estimationgazenet/gazenet.ipynb
Facial Landmarkfpenet/fpenet.ipynb
Heart Rate Estimationheartratenet/heartratenet.ipynb
Gesture Recognitiongesturenet/gesturenet.ipynb
Emotion Recognitionemotionnet/emotionnet.ipynb
FaceDetectfacenet/facenet.ipynb
2D Body Pose Netbpnet/bpnet.ipynb
PeopleSemSegNetunet/unet_isbi.ipynb
Open model architectureJupyter notebook
DetectNet_v2detectnet_v2/detectnet_v2.ipynb
FasterRCNNfaster_rcnn/faster_rcnn.ipynb
YOLOV3yolo_v3/yolo_v3.ipynb
YOLOV4yolo_v4/yolo_v4.ipynb
SSDssd/ssd.ipynb
DSSDdssd/dssd.ipynb
RetinaNetretinanet/retinanet.ipynb
MaskRCNNmask_rcnn/mask_rcnn.ipynb
UNETunet/unet_isbi.ipynb
classificationclassification/classification.ipynb

Using TLT Pre-trained Models

License

[TLT Getting Started](TLT getting Started License for TLT containers is included within the container at workspace/EULA.pdf. License for the pre-trained models are available with the model files. By pulling and using the Transfer Learning Toolkit SDK (TLT) container to download models, you accept the terms and conditions of these licenses.

Technical blogs

Suggested reading

Ethical AI

NVIDIA’s platforms and application frameworks enable developers to build a wide array of AI applications. Consider potential algorithmic bias when choosing or creating the models being deployed. Work with the model’s developer to ensure that it meets the requirements for the relevant industry and use case; that the necessary instruction and documentation are provided to understand error rates, confidence intervals, and results; and that the model is being used under the conditions and in the manner intended.

Publisher
NVIDIA
NVIDIA
Latest Tagv3.0-py3
UpdatedAugust 24, 2021 UTC
Compressed Size7.69 GB
Multinode SupportNo
Multi-Arch SupportNo