DeepStream is a streaming analytics toolkit to build AI-powered applications. It takes the streaming data as input - from USB/CSI camera, video from file or streams over RTSP, and uses AI and computer vision to generate insights from pixels for better understanding of the environment. DeepStream SDK can be the foundation layer for a number of video analytic solutions like understanding traffic and pedestrians in smart city, health and safety monitoring in hospitals, self-checkout and analytics in retail, detecting component defects at a manufacturing facility and others.
DeepStream supports application development in C/C++ and in Python through the Python bindings.
The core SDK consists of several hardware accelerator plugins that use accelerators such as VIC, GPU, DLA, NVDEC and NVENC. By performing all the compute heavy operations in a dedicated accelerator, DeepStream can achieve highest performance for video analytic applications. DeepStream builds on top of several NVIDIA libraries from the CUDA-X stack such as CUDA, TensorRT, NVIDIA® Triton™ Inference server and multimedia libraries. TensorRT accelerates the AI inference on NVIDIA GPU. DeepStream abstracts these libraries in DeepStream plugins, making it easy for developers to build video analytic pipelines without having to learn all the individual libraries.
DeepStream can be used to deploy intelligent video analytics solutions over a variety of use cases across many industries.
For example, in one of our reference applications, DeepStream is used to apply a 3D body pose estimation model on an input stream and overlay a skeleton with key points onto a detected person.
In another application, anomaly detection is performed and visualized using DeepStream’s built-in plugin for computing optical flow and a custom auxiliary plugin for estimating direction of movement.
These sample applications, along with a few others, are publicly available at the deepstream_reference_apps repository. It is recommended to finish this lab before exploring them.