AN INTRODUCTION TO DEEPSTREAM SDK
Kaustubh Purandare March 2018
AN INTRODUCTION TO DEEPSTREAM SDK Kaustubh Purandare March 2018 - - PowerPoint PPT Presentation
AN INTRODUCTION TO DEEPSTREAM SDK Kaustubh Purandare March 2018 AGENDA Introduction to DeepStream SDK DeepStream SDK Basic Building Blocks Setup & Installation Application Examples Performance Analysis 3 rd
Kaustubh Purandare March 2018
2 NVIDIA CONFIDENTIAL. DO NOT DISTRIBUTE.
3 NVIDIA CONFIDENTIAL. DO NOT DISTRIBUTE.
1) NVIDIA DeepStream simplifies the development of scalable intelligent video analytics (IVA) applications 2) Developers can now use this to quickly build new applications to transform video into valuable insight. 3) Applications for the DeepStream SDK include image classification, scene understanding, video categorization, content filtering etc..
4 NVIDIA CONFIDENTIAL. DO NOT DISTRIBUTE.
Public Transit Retail Analytics Traffic Engineering Law Enforcement Access control Securing Critical Infrastructure Parking Management In-Vehicle Analytics
5 NVIDIA CONFIDENTIAL. DO NOT DISTRIBUTE.
NVIDIA Platforms Linux, CUDA DeepStream SDK Sample DNNs & plug-ins 3rd party application plugins Modular, Scalable, Architecture Development Tools Retail analytics & checkout Intelligent traffic systems Law enforcemen t Smart parking Access control
User Applications
Solution adaptation guide
* Early release and limited availability. TensorRT cuDNN
Multimedia
Multi-stream Encode & Decode
Imaging
Image capture & processing
Deep Learning
6 NVIDIA CONFIDENTIAL. DO NOT DISTRIBUTE.
7 NVIDIA CONFIDENTIAL. DO NOT DISTRIBUTE.
A] Jetson
1) Latest JetPack https://developer.nvidia.com/embedded/jetpack 2) DeepStream on Tegra SDK https://developer.nvidia.com/deepstream-jetson 3) Ubuntu 16.04 64-bit operating system (host) 4) Jetson TX1 / TX2 Development Platform
B] Running the Sample Application
nvgstiva-app -c <HOME_dir>/configs/<Config.txt> \
8 NVIDIA CONFIDENTIAL. DO NOT DISTRIBUTE. Tracking plugin Image capture and process plugin Primary detection plugin (TensorRT) Car color (TensorRT) Car type (TensorRT) Car make (TensorRT) License plate recognition (3rd party plugin)
Consolidating unique ID Metadata export Display/ OSD APIs
Situational awareness -
Smart storage
9 NVIDIA CONFIDENTIAL. DO NOT DISTRIBUTE.
10 NVIDIA CONFIDENTIAL. DO NOT DISTRIBUTE.
Parse application configuration file Create graphs (add/don’t add elements, set properties based on configuration) Set application graphs to playing Metadata generated Callback (Called per frame with metadata generated by the graphs – object co-
tracking id, etc) Overlay Graphics Callback (Overlay custom text / graphics per frame) Destroy graphs (Free up resource)
Loop
11 NVIDIA CONFIDENTIAL. DO NOT DISTRIBUTE.
value pairs
stage
configuring each stage
12 NVIDIA CONFIDENTIAL. DO NOT DISTRIBUTE.
Parse application configuration file Create graphs (add/don’t add elements, set properties based on configuration) Set application graphs to playing Metadata generated Callback (Called per frame with metadata generated by the graphs – object co-
tracking id, etc) Overlay Graphics Callback (Overlay custom text / graphics per frame) Destroy graphs (Free up resource)
Loop
13 NVIDIA CONFIDENTIAL. DO NOT DISTRIBUTE.
14 NVIDIA CONFIDENTIAL. DO NOT DISTRIBUTE.
Parse application configuration file Create graphs (add/don’t add elements, set properties based on configuration) Set application graphs to playing Metadata generated Callback (Called per frame with metadata generated by the graphs – object co-
tracking id, etc) Graphics Overlay (Overlay custom text / graphics per frame) Destroy graphs (Free up resource)
Loop
15 NVIDIA CONFIDENTIAL. DO NOT DISTRIBUTE.
1) Gstreamer provides powerful tool like gst-launch to create trial / experimental graphs as per use cases. 2) File stream with Primary object detection and OnScreen Display
nvinfer <primary-infer-properties> ! queue ! nvosd <osd- properties> ! nveglglessink
3) RTSP stream with primary object detection + tracking + secondary classification labels + OnScreen Display
<primary-infer-properties> ! queue ! nvtracker ! queue ! nvinfer <secondary-infer-properties> ! queue ! nvosd <osd-properties> ! nveglglessink
16 NVIDIA CONFIDENTIAL. DO NOT DISTRIBUTE.
17 NVIDIA CONFIDENTIAL. DO NOT DISTRIBUTE.
Linux, CUDA Sample DL Networks ISV/ 3rd party solutions NVIDIA Platforms Applications Deep Learning
TensorRT cuDNN
Multimedia
Multistream Encode & Decode
Imaging DeepStream
Image capture & processing
Plugin based compute Graph ● Gstreamer Framework Custom DL Networks
18 NVIDIA CONFIDENTIAL. DO NOT DISTRIBUTE.
DeepStream Early Access program . Explore Metropolis . Intelligent Video Analytics Forums
19