Skip to content

NVIDIA-AI-IOT/jetnet

Repository files navigation

JetNet

What models or features are you interested in seeing in JetNet? Let us know!

JetNet is a collection of models, datasets, and tools that make it easy to explore neural networks on NVIDIA Jetson (and desktop too!). It can easily be used and extended with Python.

Check out the documentation to learn more and get started!

It's easy to use

JetNet comes with tools that allow you to easily build, profile and demo models. This helps you easily try out models to see what is right for your application.

jetnet demo jetnet.trt_pose.RESNET18_HAND_224X224_TRT_FP16

It's implementation agnostic

JetNet has well defined interfaces for tasks like classification, detection, pose estimation, and text detection. This means models have a familiar interface, regardless of which framework they are implemented in. As a user, this lets you easily use a variety of models without re-learning a new interface for each one.

class PoseModel:
    
    def get_keypoints(self) -> Sequence[str]:
        raise NotImplementedError

    def get_skeleton(self) -> Sequence[Tuple[int, int]]:
        raise NotImplementedError

    def __call__(self, index: Image) -> PoseSet:
        raise NotImplementedError

It's highly reproducible and configurable

JetNet uses well-defined configurations to explicitly describe all the steps needed to automatically re-produce a model. This includes steps like downloading weights, downloading calibration data and optimizing with TensorRT, that often aren't captured in open-source model definitons. These configurations are defined with pydantic using JSON serializable so they can be easily validated, modified, exported, and re-used.

For example, the following models, which include TensorRT optimization can be re-created with a single line

from jetnet.yolox import YOLOX_NANO_TRT_FP16

model = YOLOX_NANO_TRT_FP16.build()

It's easy to set up

JetNet comes with pre-built docker containers for Jetson and Desktop. In case these don't work for you, manual setup instructions are provided. Check out the documentation for details.

Get Started!

Head on over the documentation to learn more and get started!