TAO Toolkit (TAO) is a python based AI toolkit for taking purpose-built pre-trained AI models and customizing them with your own data. TAO 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 TAO, DeepStream SDK and TensorRT. The models are suitable for object detection, classification and segmentation.
Semantic segmentation assigns every pixel in an image to a class label. Semantic segmentation does image classification at pixel level. Unlike instance segmentation which can label individual instances belonging to a class, semantic segmentation clubs all instances of a class to same label. This model card contains pretrained weights that may be used as a starting point with the following semantic segmentation networks in TAO Toolkit to facilitate transfer learning.
Following semantic segmentation architecture are supported:
The pre-trained weights are trained on a subset of the Google OpenImages dataset. Following backbones are supported with these UNet networks.
To see the full list of all the backbones, scroll over to the version history tab.
Note: These are unpruned models with just the feature extractor weights, and may not be used without re-training in an semantic segmentation application
The semantic segmentation apps in TAO expect mask data as encoded images with every pixel assigned to the class label. TAO provides a simple command line interface to train a deep learning model for semantic segmentation.
The models in this model area are only compatible with TAO Toolkit. For more information about using this model with TAO, please view the instructions here to install the TAO Launcher CLI and use with the semantic segmentation trainer in TAO.
Before running the container, use docker pull to ensure an up-to-date image is installed. Once the pull is complete, you can run the container image.
Install the NGC CLI from
Configure the NGC CLI using the following command
ngc config set
To view all the backbones that are supported by Instance segmentation architecture in TAO:
ngc registry model list nvidia/tao/pretrained_semantic_segmentation:*
Download the model:
ngc registry model download-version nvidia/tao/pretrained_semantic_segmentation:<template> --dest <path>
Get the NGC API key from the SETUP tab on the left. Please store this key for future use. Detailed instructions can be found here
Configure the NGC command line interface using the command mentioned below and follow the prompts.
ngc config set
Download the sample notebooks from NGC using the command below
ngc registry resource download-version "nvidia/tao_cv_samples:v1.0.2"
Invoke the jupyter notebook using the following command
jupyter notebook --ip 0.0.0.0 --port 8888 --allow-root
Open an internet browser and type in the following URL to start running the notebooks when running on a local machine.
If you wish to run view the notebook from a remote client, please modify the URL as follows:
a.b.c.d is the IP address of the machine running the container.
Get TAO Object Detection pre-trained models for YOLOV4, YOLOV3, FasterRCNN, SSD, DSSD, and RetinaNet architectures from NGC model registry
Get TAO DetectNet_v2 Object Detection pre-trained models for DetectNet_v2 architecture from NGC model registry
Get TAO EfficientDet Object Detection pre-trained models for DetectNet_v2 architecture from NGC model registry
Get TAO classification pre-trained models from NGC model registry
Get TAO Instance segmentation pre-trained models for MaskRCNN architecture from NGC
Get Purpose-built models from NGC model registry:
This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this license, please visit this link, or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA.
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.