SlideShare a Scribd company logo
1 of 41
Download to read offline
SIGGRAPH 2019 | LOS ANGLES | 28 JULY - 1 AUGUST
Charlie Wang, Peng Tu, Mikhail Nikolsky, Jerry Dong
Building a Deep Learning Video Analytics
Framework for Intel AI Platforms
SIGGRAPH 2019 | LOS ANGLES | 28 JULY - 1 AUGUST
Speakers
• Charlie Wang
• Principal Engineer, VTT
• Peng Tu
• Principal Engineer, CPDP
• Mikhail Nikolsky
• Sr. Staff Engineer, CPDP
3
Intel Architecture Graphics Software (IAGS)
Agenda
▪ Video Analytics Usages
▪ Build a Video Analytics Framework for all Intel HWs
▪ FFMPEG Filter Implementation
▪ GStreamer Plugin Implementation
▪ Video Analytics as REST Service
▪ Demo
▪ Resources
Intelligence on Video Data
Retailanalytics Industrialinspection Content filtering Parking management
Super Resolution Autonomous driving Action recognitionEncode Quality Control
Intel Video Analytics HW
6
Intel® CPU
Client and server
Intel® Vision
AcceleratorDesign
with Intel® Movidius™
Vision Processing
Units (VPU)
Intel® GPU
Integrated and
discrete
Intel® Vision
AcceleratorDesign
with an Intel® Arria 10
FPGA (preview)
Scalar Vector Matrix Spatial
Typical Video Analytics Flow
Decode
Scale
/csc
Inference
Object
tracking
Post processing
+ Encode
720p
1080p
4K
(AVC, HEVC)
Object
Detection
Image
Segmentation
ObjectTracking
• LKT
• IOU
Crop/scale
Bounding box
720P
1080p
(AVC, HEVC)
Output:
224x224
RGBP
Objects
Recognition
Image
Classification
Action
Recognition
Crop
scale
Inference
Inference
Map to Intel Hardwares
Decode
Scale
/csc
Inference
Object
tracking
Post processing
+ Encode
Crop
scale
Inference
Inference
CPU
Media FF
CPU
GPU
VPU
FPGA
CPU
GPU
Programmable
CPU
Media FF
GPU
CPU
Media FF
GPU
CPU
GPU
VPU
FPGA
Video analyticsrequire heavy video and compute interaction
Agenda
▪ Video Analytics Usages
▪ Build a Video Analytics Framework for all Intel HWs
▪ FFMPEG Filter Implementation
▪ GStreamer Plugin Implementation
▪ Video Analytics as REST Service
▪ Demo
▪ Resources
Popular video Processing software
frameworks
Video and audio demux, decode, processing, encoding, rendering, and muxing, also
allow customizedplugin/filter
Intel Video software Offering
11
CPU GPU Media FF FPGA
VAAPI/DXVA
Next Gen Media Library
SW codec
App
FFMPEG GStreamer
App App
Customized
Framework
FPGA driver
Intel GPU media FF support video decode/encode and video processing
Intel Computer VISION Software Offering
Deep Learning for Computer Vision
Accelerate and deploy convolutional neuralnetworks
(CNN) on Intel® platforms with the Deep Learning
DeploymentToolkit includedOpenVINO
Traditional Computer Vision
Develop and optimize classic computer vision applications
built with the OpenCV library or OpenVX API.
OpenVINO for Inference
13
CPU GPU VPU
MKLDNN
GPU PluginCPU Plugin
DL Inference Engine API
FPGA
MVNC
VPU Plugin
DLA
FPGA Plugin
Heterogeneous Execution Engine
CLDNN
Inference App
Single interface supports all platforms, no SW change.
Library designed for CNN inference accelerationon Intel HW
Inference Engine
This execution engine uses a common API to deliver inference
solutionson the platform of your choice: CPU, GPU, VPU, or
FPGA.
Model Optimizer
This Python*-based command line tool imports trained
models from popular deep learning frameworks such as
Caffe*, TensorFlow*, and Apache MXNet*, and Open
Neural Network Exchange (ONNX).
Intel Deep Learning Deployment Toolkit
Now let’s build the video
analytics framework
Write-once, Deploy on All HWs
Video Analytics Framework
Video Analytics Application
CPU GPU VPU FPGA
VAAPI
Media Driver
MKLDNN
ComputeDriver
Next Gen Media Library OpenVINO
CLDNN DLA
CPU codec
FFMPEG Plugin
Video Analytics Application
Gstreamer Plugin
Video Analytics Application
Your own framework
NV12
The framework supports load balanceamong devices
Media & Compute interoperability
• Media and Compute/Inferenceuse differentcolor format
Tiled NV12
Surface
Decode
Linear RGBP
SurfaceScaling/csc Meta dataInference
A copy is required if we don’t
handlebuffer sharing
correctly
Common media format – YUV
with padding, pitch, etc.
Inference format – tensor array
Media format as a compute/Inference
Format
Decode
NV12
SurfaceScaling Meta dataInferenceC
Y channel
Layer1 (csc+convolution)
weight1
weight2
weight3
bias
csc
R
G
B
UV
channel
Inference time reduced by 3% to 20% depends on resolution
Model Resolution Time reduction
GoogleNetV1 224x224 3.6%
YoloTinyV1 448x448 9.3%
Mtcnn 1280x720 20.9%
Video Analytics e2e flow
Trained
Model
OfflineModel
Opt
Model
IR
DLDT
Inference Engine API
Application
Inference Engine
DLDT
MSDK Library
GSTVA
DEC/ENC/VPP API
MSDK
DEC/ENC/VPP/INF API
FFMPEG-VA/GST-VA
VA Pipeline DesignVideo
sources
VA Pipeline Implementation
Agenda
▪ Video Analytics Usages
▪ Build a Video Analytics Framework for all Intel HWs
▪ FFMPEG Filter Implementation
▪ GStreamer Plugin Implementation
▪ Video Analytics as REST Service
▪ Demo
▪ Resources
21
FFMPEG componentsCommands
(console)
ffmpeg ffplay ffprobe ffserver
Libraries
libavdevice
libavformat
libavcodec
libavfilter
libavutil
libpostproc
libavresample
libswresamplemux / demux
Libraryfora/vfilters which to implement
all kind ofeffects,such as scale, crop, frc,
etc
Commandtoolto do
transcoding
Simple playerwith SDL
usingffmpeg
demux/decoder
Tool to extract the
informationofmulti-
media stream
Real-time stream
server to broadcast
multi-mediastream
A Library to implement mostofA/Vcodec,
and used bymost ofpopular codectools
Common tool library
We are adding inference as
filters
22
Tensorflow
ffmpeg or ffplay
CPU GPU FPGAVPU
DNN INTERFACEDNNModel DNNModel
Tensorflow
Backend
Inference Engine
Backend
InferenceEngine(OpenVINO)
MKLD
NN
clDNN Movidius DLA
SR Filter Classify FilterDetect Filter
APP
LIBAVFILTER
3RD
LIBRARIESHW
Kafka
produce
r
Meta
data
muxer
LIBAVFORMAT
Librdkafka
FFmpeg Filter VA Architecture new
FFmpeg
hardware
3rd party
…
23
• Face detection + emotion&age_gender recognition:
ffmpeg -i clip.mp4 -vf “
detect=model=$DETECT_MODEL1:model_proc=$MODEL1-JSON:device=$CPU,
classify=model=$EMOTION_MODEL2:model_proc=&MODEL2-JSON:device=$CPU,
classify=model=$AGE_GENDER_MODEL3:model_proc=$MODEL3-JSON:device=$CPU”
-an -y -f iemetadata metadata.json
The pipelines look like ...
23
input decoder face emotion age-gender convert send to
detection recognition recognition to JSON kafka server
stream detect classify classify iemetadata Kafkadecode
Agenda
▪ Video Analytics Usages
▪ Build a Video Analytics Framework for all Intel HWs
▪ FFMPEG Filter Implementation
▪ GStreamer Plugin Implementation
▪ Video Analytics as REST Service
▪ Demo
▪ Resources
WHY AddING VA to Gstreamer
• Multiplatform:Linux, Windows, Mac OS X, Android, …
• Comprehensivecore:graph-based multi-threadedpipeline, lightweightdata
passing
• Broad coverageof media technologies: file and streamingpacket i/o, codecs,
metadata,video and audio
• Extensivedevelopmenttools: gst-launch, Python, C++ API
• Easy to extend and reusethrough plugins and metadata
25
GStreamer Plugins Architecture
26
GStreamer API
Application
MetadataPer-plugin params/API
pipeline control pipeline events inference plugins configuration inference res ults
zero-copy,multi-channel inference
OpenVINO Inference Engine
MKLDNN
plugin
clDNN
plugin
MDK
plugin
iGPU/
dGPU
CPU
KMB/
HDDL
VAAPI
libav/
ffmpeg
VAAPI SVT
GPU
i/d/VSI
CPU
GPU
i/d/VSI
CPU
RTSP,
WebRTC,
Render,
File IO,
…
V4L2
Media HW acceleration
ImageInference API
Kafka
MQTT
Video
sources
gvainference
Video Analytics plugins (GVA*)Media plugins
HW
decode
SW
decode
HW
encode
SW
encode
Other plugins
200+
plugins
gvadetect gvaclassify gvaidentify
Meta
convert
publish
decodebin
GVA Inference Plugins Architecture
27
Inference Shared Instance
OpenVINO IEOpenVINO IE
GvaDetect
Thread
sink
padDMABuf
or RGBx
(any
resolution)
Attach GstMeta
to GstBuffer
source
pad
Output Layer
Post-Processing
GstBuffer + GstMeta’s
VASurface or RGBx
VAAPI
original GstBuffer
queueInput Layer
Pre-Processing
Inference queue
per device
DownScale
NV12→RGBP
GStreamer pipeline example
input HW/SW face age/gender emotion landmark re-identify face convert overlay
decode detection classification recognition points inference recognition to JSON result
28
filesrc decodebin gvaclassify gvaclassify gvaclassifygvadetect gvaidentify gvametaconvert gvawatermark
Video Analytics pipeline in Ad Insertion demo – facedetection plus age, gender, person recognition
gvaclassify
gst-launch-1.0 filesrc location=${FILE} !
decodebin ! 
gvadetect model=face-detection-adas-0001.xml model-proc=face-detection-adas-0001.json ! queue ! 
gvaclassify device=CPU model=age-gender-recognition.xml model-proc=age-gender-recognition.json ! queue ! 
gvaclassify device=GPU model=emotions-recognition.xml model-proc=emotions-recognition.json ! queue ! 
gvaclassify device=CPU,GPU model=landmarks-regression.xml model-proc=landmarks-regression.json ! queue ! 
gvaclassify model=face-reidentification.xml model-proc=face-reidentification.json ! queue ! 
gvaidentify gallery=face_gallery.json ! queue ! 
gvawatermark ! videoconvert ! fpsdisplaysink sync=false
Platform specific tuning: gvaclassify device={CPU|CPU,GPU} cpu-streams=15 nireq=16 …
Multiple Programming language
BINDINGS• Easily build pipeline from C/C++, Python in addition to the gst-launch command
29
GStreamer Video Analytics Plugins List
30
GST element Description INPUT OUTPUT
gvainference Generic inference GstBuffer INPUT+ GvaTensorMeta
gvadetect Objectdetection GstBuffer INPUT+ GstVideoRegionOfInterestMeta
gvaclassify Objectclassification GstBuffer +
GstVideoRegionOfInterestMeta
INPUT+ GstVideoRegionOfInterestMeta
gvaidentify Objectidentification/
recognition
GstBuffer +
GstVideoRegionOfInterestMeta
INPUT+ GstVideoRegionOfInterestMeta
gvametaconvert Metadata conversion GstBuffer +GvaTensorMeta/
GstVideoRegionOfInterestMeta
INPUT+ GvaJSONMeta
gvawatermark Overlay GstBuffer +GvaDetectionMeta + {
GvaTensorMeta }
INPUT(with modified image)
gvametapublish Messagebus (Kafka,
MQTT)
GstBuffer +GvaJSONMeta -
Agenda
▪ Video Analytics Usages
▪ Build a Video Analytics Framework for all Intel HWs
▪ FFMPEG Filter Implementation
▪ GStreamer Plugin Implementation
▪ Video Analytics as REST Service
▪ Demo
▪ Resources
Video Analytics API levels
• Low-level (per frame processing)
▪ VAAPI, OpenVINO, OpenCL, OpenCV
• Pipeline level
▪ GStreamer, FFMPEG, MediaFoundation, …
• Video Analytics as Service
▪ REST/gRPC multi-node service
32
Video Analytics REST Service
33
• Provide RESTfulinterfacesfor executing
and monitoringpipeline status
• Interface agnostic to underlying
implementation(GStreamer,FFMPEG,
Custom backend)
• Supportscaling through container
deploymentand orchestration frameworks
• Load balancing
Video Analytics Pipeline Service
GStreamer / FFMPEG
REST / gRPC / Message Bus
VAAPI / MSDKHW
Acceleration
Pipeline
Support
Video Analytics
Normalization
Edge / Cloud
Integration
Open VINO
PipelineA PipelineB …
Pipeline Manager Model Manager
Model A Model B…
CPU GPU VPU
Video Analytics Service Developer
Workflow
34
HW / OS
Optimized
Docker Files
Pipelines
Configuration
json files
Docker
Build
Model
Configuration
json files
HW/ OS
Optimized
Libraries
VA Pipeline Developer creates
pipeline templates with
customizable parameters and
models
VA Pipeline Developer builds
Docker image
Developer / System Integrator
deploys containers to Cloud or Edge
and integrates into application
HTTP request
1 2 3
Application 2
Scheduler
Application 1
Worker
HTTP request
Worker
…
…
CloudEdge
End2end DISTRIBUTED VIDEO analytics
examplePOST/pipelines/vehicles/1
{
"source": "rtsp://10.43.38.158",
"destination": {
“type": “Kafka",
“hosts": [10.43.38.150:9299]
}
}
Video Analytics
REST Service
REST
RTSP
{
"camera_id" : “173207954”,
"label": "vehicle",
"object_id": 3,
"bounding_box": [0.13958, 0.33766, 0.42094, 0.06687],
"confidence": 0.83
}
NVR
storage
RTSP
Database
web dashboard
Analytics
algorithm
Video Analytics Service is part of Open
Visual Cloud
36
https://01.org/openvisualcloud
The Open Visual Cloud is an open source project that offers a set of pre-defined reference
pipelines for various target visual cloud use cases.
Agenda
▪ Video Analytics Usages
▪ Build a Video Analytics Framework for all Intel HWs
▪ FFMPEG Filter Implementation
▪ Gstreamer Plugin Implementation
▪ Video Analytics as REST Service
▪ Demo
▪ Resources
Demo
• 4 channel face detection
• Smart city, edge to cloud
38
Summary
• We presented Intel video analytics e2e pipeline in GStreamer
and FFMPEG
• It supports multiple Intel HWs with same SW pipeline/API
• It provides optimized flow between media and DL inference, zero
copy, inference on NV12 image
• It provides scalable deployment cross edge/cloud
• Call to Action
• Try it out and let us know your feedback
Resources
▪ OpenVINO - https://github.com/opencv/dldt
▪ MediaSDK - https://github.com/Intel-Media-SDK
▪ GStreamer Plugin - https://github.com/opencv/gst-video-analytics
▪ Open Visual Cloud
▪ Smart City sample
https://github.com/OpenVisualCloud/Smart-City-Sample
▪ Ad Insertion sample
https://github.com/OpenVisualCloud/Ad-Insertion-Sample
▪ Docker files including FFMPEG Video Analytics Filters
https://github.com/OpenVisualCloud/Dockerfiles
40
Build a Deep Learning Video Analytics Framework | SIGGRAPH 2019 Technical Sessions

More Related Content

What's hot

(公開版)Reconf研2017GUINNESS
(公開版)Reconf研2017GUINNESS(公開版)Reconf研2017GUINNESS
(公開版)Reconf研2017GUINNESSHiroki Nakahara
 
An Introduction to OpenCL™ Programming with AMD GPUs - AMD & Acceleware Webinar
An Introduction to OpenCL™ Programming with AMD GPUs - AMD & Acceleware WebinarAn Introduction to OpenCL™ Programming with AMD GPUs - AMD & Acceleware Webinar
An Introduction to OpenCL™ Programming with AMD GPUs - AMD & Acceleware WebinarAMD Developer Central
 
A hands-on introduction to the ELF Object file format
A hands-on introduction to the ELF Object file formatA hands-on introduction to the ELF Object file format
A hands-on introduction to the ELF Object file formatrety61
 
Hardware Acceleration for Machine Learning
Hardware Acceleration for Machine LearningHardware Acceleration for Machine Learning
Hardware Acceleration for Machine LearningCastLabKAIST
 
Beaglebone Black Introduction with Architecture and Code
Beaglebone Black Introduction with Architecture and CodeBeaglebone Black Introduction with Architecture and Code
Beaglebone Black Introduction with Architecture and CodeDevanshu Saxena
 
How to use Apache TVM to optimize your ML models
How to use Apache TVM to optimize your ML modelsHow to use Apache TVM to optimize your ML models
How to use Apache TVM to optimize your ML modelsDatabricks
 
15CS664- Python Application Programming VTU syllabus
15CS664- Python Application Programming  VTU syllabus15CS664- Python Application Programming  VTU syllabus
15CS664- Python Application Programming VTU syllabusSyed Mustafa
 
Introduction to Parallel Computing
Introduction to Parallel ComputingIntroduction to Parallel Computing
Introduction to Parallel ComputingAkhila Prabhakaran
 
Single board computer options
Single board computer optionsSingle board computer options
Single board computer optionsALTANAI BISHT
 
Gpu Systems
Gpu SystemsGpu Systems
Gpu Systemsjpaugh
 
Cryptography & Network Security
Cryptography & Network SecurityCryptography & Network Security
Cryptography & Network SecurityFahad Shaikh
 
4. Internet of Things - Reference Model and Architecture
4. Internet of Things - Reference Model and Architecture4. Internet of Things - Reference Model and Architecture
4. Internet of Things - Reference Model and ArchitectureJitendra Tomar
 
eStargzイメージとlazy pullingによる高速なコンテナ起動
eStargzイメージとlazy pullingによる高速なコンテナ起動eStargzイメージとlazy pullingによる高速なコンテナ起動
eStargzイメージとlazy pullingによる高速なコンテナ起動Kohei Tokunaga
 
OpenPOWER Summit 2020 - OpenCAPI Keynote
OpenPOWER Summit 2020 -  OpenCAPI KeynoteOpenPOWER Summit 2020 -  OpenCAPI Keynote
OpenPOWER Summit 2020 - OpenCAPI KeynoteAllan Cantle
 
Combining TAGE-SC-L and GShare Branch Predictors
Combining TAGE-SC-L and GShare Branch PredictorsCombining TAGE-SC-L and GShare Branch Predictors
Combining TAGE-SC-L and GShare Branch PredictorsNaishil Shah
 
Linux обновления с RAUC и Docker
Linux обновления с RAUC и DockerLinux обновления с RAUC и Docker
Linux обновления с RAUC и DockerLeon Anavi
 
Understanding of linux kernel memory model
Understanding of linux kernel memory modelUnderstanding of linux kernel memory model
Understanding of linux kernel memory modelSeongJae Park
 
Kernel Recipes 2017 - 20 years of Linux Virtual Memory - Andrea Arcangeli
Kernel Recipes 2017 - 20 years of Linux Virtual Memory - Andrea ArcangeliKernel Recipes 2017 - 20 years of Linux Virtual Memory - Andrea Arcangeli
Kernel Recipes 2017 - 20 years of Linux Virtual Memory - Andrea ArcangeliAnne Nicolas
 
GTC 2018 で発表された自動運転最新情報
GTC 2018 で発表された自動運転最新情報GTC 2018 で発表された自動運転最新情報
GTC 2018 で発表された自動運転最新情報NVIDIA Japan
 

What's hot (20)

(公開版)Reconf研2017GUINNESS
(公開版)Reconf研2017GUINNESS(公開版)Reconf研2017GUINNESS
(公開版)Reconf研2017GUINNESS
 
An Introduction to OpenCL™ Programming with AMD GPUs - AMD & Acceleware Webinar
An Introduction to OpenCL™ Programming with AMD GPUs - AMD & Acceleware WebinarAn Introduction to OpenCL™ Programming with AMD GPUs - AMD & Acceleware Webinar
An Introduction to OpenCL™ Programming with AMD GPUs - AMD & Acceleware Webinar
 
A hands-on introduction to the ELF Object file format
A hands-on introduction to the ELF Object file formatA hands-on introduction to the ELF Object file format
A hands-on introduction to the ELF Object file format
 
Hardware Acceleration for Machine Learning
Hardware Acceleration for Machine LearningHardware Acceleration for Machine Learning
Hardware Acceleration for Machine Learning
 
Beaglebone Black Introduction with Architecture and Code
Beaglebone Black Introduction with Architecture and CodeBeaglebone Black Introduction with Architecture and Code
Beaglebone Black Introduction with Architecture and Code
 
How to use Apache TVM to optimize your ML models
How to use Apache TVM to optimize your ML modelsHow to use Apache TVM to optimize your ML models
How to use Apache TVM to optimize your ML models
 
15CS664- Python Application Programming VTU syllabus
15CS664- Python Application Programming  VTU syllabus15CS664- Python Application Programming  VTU syllabus
15CS664- Python Application Programming VTU syllabus
 
Introduction to Parallel Computing
Introduction to Parallel ComputingIntroduction to Parallel Computing
Introduction to Parallel Computing
 
Single board computer options
Single board computer optionsSingle board computer options
Single board computer options
 
Gpu Systems
Gpu SystemsGpu Systems
Gpu Systems
 
Cryptography & Network Security
Cryptography & Network SecurityCryptography & Network Security
Cryptography & Network Security
 
4. Internet of Things - Reference Model and Architecture
4. Internet of Things - Reference Model and Architecture4. Internet of Things - Reference Model and Architecture
4. Internet of Things - Reference Model and Architecture
 
eStargzイメージとlazy pullingによる高速なコンテナ起動
eStargzイメージとlazy pullingによる高速なコンテナ起動eStargzイメージとlazy pullingによる高速なコンテナ起動
eStargzイメージとlazy pullingによる高速なコンテナ起動
 
OpenPOWER Summit 2020 - OpenCAPI Keynote
OpenPOWER Summit 2020 -  OpenCAPI KeynoteOpenPOWER Summit 2020 -  OpenCAPI Keynote
OpenPOWER Summit 2020 - OpenCAPI Keynote
 
Combining TAGE-SC-L and GShare Branch Predictors
Combining TAGE-SC-L and GShare Branch PredictorsCombining TAGE-SC-L and GShare Branch Predictors
Combining TAGE-SC-L and GShare Branch Predictors
 
Linux обновления с RAUC и Docker
Linux обновления с RAUC и DockerLinux обновления с RAUC и Docker
Linux обновления с RAUC и Docker
 
Understanding of linux kernel memory model
Understanding of linux kernel memory modelUnderstanding of linux kernel memory model
Understanding of linux kernel memory model
 
BeagleBone Black Booting Process
BeagleBone Black Booting ProcessBeagleBone Black Booting Process
BeagleBone Black Booting Process
 
Kernel Recipes 2017 - 20 years of Linux Virtual Memory - Andrea Arcangeli
Kernel Recipes 2017 - 20 years of Linux Virtual Memory - Andrea ArcangeliKernel Recipes 2017 - 20 years of Linux Virtual Memory - Andrea Arcangeli
Kernel Recipes 2017 - 20 years of Linux Virtual Memory - Andrea Arcangeli
 
GTC 2018 で発表された自動運転最新情報
GTC 2018 で発表された自動運転最新情報GTC 2018 で発表された自動運転最新情報
GTC 2018 で発表された自動運転最新情報
 

Similar to Build a Deep Learning Video Analytics Framework | SIGGRAPH 2019 Technical Sessions

“Intel Video AI Box—Converging AI, Media and Computing in a Compact and Open ...
“Intel Video AI Box—Converging AI, Media and Computing in a Compact and Open ...“Intel Video AI Box—Converging AI, Media and Computing in a Compact and Open ...
“Intel Video AI Box—Converging AI, Media and Computing in a Compact and Open ...Edge AI and Vision Alliance
 
“Seamless Deployment of Multimedia and Machine Learning Applications at the E...
“Seamless Deployment of Multimedia and Machine Learning Applications at the E...“Seamless Deployment of Multimedia and Machine Learning Applications at the E...
“Seamless Deployment of Multimedia and Machine Learning Applications at the E...Edge AI and Vision Alliance
 
Seminar Accelerating Business Using Microservices Architecture in Digital Age...
Seminar Accelerating Business Using Microservices Architecture in Digital Age...Seminar Accelerating Business Using Microservices Architecture in Digital Age...
Seminar Accelerating Business Using Microservices Architecture in Digital Age...PT Datacomm Diangraha
 
Introduction to Software Defined Visualization (SDVis)
Introduction to Software Defined Visualization (SDVis)Introduction to Software Defined Visualization (SDVis)
Introduction to Software Defined Visualization (SDVis)Intel® Software
 
車載組み込み用ディープラーニング・エンジン NVIDIA DRIVE PX
車載組み込み用ディープラーニング・エンジン NVIDIA DRIVE PX車載組み込み用ディープラーニング・エンジン NVIDIA DRIVE PX
車載組み込み用ディープラーニング・エンジン NVIDIA DRIVE PXNVIDIA Japan
 
Simplifying and accelerating converged media with Open Visual Cloud
Simplifying and accelerating converged media with Open Visual CloudSimplifying and accelerating converged media with Open Visual Cloud
Simplifying and accelerating converged media with Open Visual CloudLiz Warner
 
“Open Standards: Powering the Future of Embedded Vision,” a Presentation from...
“Open Standards: Powering the Future of Embedded Vision,” a Presentation from...“Open Standards: Powering the Future of Embedded Vision,” a Presentation from...
“Open Standards: Powering the Future of Embedded Vision,” a Presentation from...Edge AI and Vision Alliance
 
DCC Labs Company Presentation
DCC Labs Company PresentationDCC Labs Company Presentation
DCC Labs Company PresentationDCC Labs
 
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...tdc-globalcode
 
Debugging Effectively in the Cloud - Felipe Fidelix - Presentation at eZ Con...
Debugging Effectively in the Cloud - Felipe Fidelix - Presentation at  eZ Con...Debugging Effectively in the Cloud - Felipe Fidelix - Presentation at  eZ Con...
Debugging Effectively in the Cloud - Felipe Fidelix - Presentation at eZ Con...eZ Systems
 
Webinar: NVIDIA JETSON – A Inteligência Artificial na palma de sua mão
Webinar: NVIDIA JETSON – A Inteligência Artificial na palma de sua mãoWebinar: NVIDIA JETSON – A Inteligência Artificial na palma de sua mão
Webinar: NVIDIA JETSON – A Inteligência Artificial na palma de sua mãoEmbarcados
 
"APIs for Accelerating Vision and Inferencing: An Industry Overview of Option...
"APIs for Accelerating Vision and Inferencing: An Industry Overview of Option..."APIs for Accelerating Vision and Inferencing: An Industry Overview of Option...
"APIs for Accelerating Vision and Inferencing: An Industry Overview of Option...Edge AI and Vision Alliance
 
NFV and SDN: 4G LTE and 5G Wireless Networks on Intel(r) Architecture
NFV and SDN: 4G LTE and 5G Wireless Networks on Intel(r) ArchitectureNFV and SDN: 4G LTE and 5G Wireless Networks on Intel(r) Architecture
NFV and SDN: 4G LTE and 5G Wireless Networks on Intel(r) ArchitectureMichelle Holley
 
PT-4052, Introduction to AMD Developer Tools, by Yaki Tebeka and Gordon Selley
PT-4052, Introduction to AMD Developer Tools, by Yaki Tebeka and Gordon SelleyPT-4052, Introduction to AMD Developer Tools, by Yaki Tebeka and Gordon Selley
PT-4052, Introduction to AMD Developer Tools, by Yaki Tebeka and Gordon SelleyAMD Developer Central
 
PGI Compilers & Tools Update- March 2018
PGI Compilers & Tools Update- March 2018PGI Compilers & Tools Update- March 2018
PGI Compilers & Tools Update- March 2018NVIDIA
 
Summit 16: How to Compose a New OPNFV Solution Stack?
Summit 16: How to Compose a New OPNFV Solution Stack?Summit 16: How to Compose a New OPNFV Solution Stack?
Summit 16: How to Compose a New OPNFV Solution Stack?OPNFV
 

Similar to Build a Deep Learning Video Analytics Framework | SIGGRAPH 2019 Technical Sessions (20)

“Intel Video AI Box—Converging AI, Media and Computing in a Compact and Open ...
“Intel Video AI Box—Converging AI, Media and Computing in a Compact and Open ...“Intel Video AI Box—Converging AI, Media and Computing in a Compact and Open ...
“Intel Video AI Box—Converging AI, Media and Computing in a Compact and Open ...
 
“Seamless Deployment of Multimedia and Machine Learning Applications at the E...
“Seamless Deployment of Multimedia and Machine Learning Applications at the E...“Seamless Deployment of Multimedia and Machine Learning Applications at the E...
“Seamless Deployment of Multimedia and Machine Learning Applications at the E...
 
DRIVE PX 2
DRIVE PX 2DRIVE PX 2
DRIVE PX 2
 
Seminar Accelerating Business Using Microservices Architecture in Digital Age...
Seminar Accelerating Business Using Microservices Architecture in Digital Age...Seminar Accelerating Business Using Microservices Architecture in Digital Age...
Seminar Accelerating Business Using Microservices Architecture in Digital Age...
 
Introduction to Software Defined Visualization (SDVis)
Introduction to Software Defined Visualization (SDVis)Introduction to Software Defined Visualization (SDVis)
Introduction to Software Defined Visualization (SDVis)
 
車載組み込み用ディープラーニング・エンジン NVIDIA DRIVE PX
車載組み込み用ディープラーニング・エンジン NVIDIA DRIVE PX車載組み込み用ディープラーニング・エンジン NVIDIA DRIVE PX
車載組み込み用ディープラーニング・エンジン NVIDIA DRIVE PX
 
Simplifying and accelerating converged media with Open Visual Cloud
Simplifying and accelerating converged media with Open Visual CloudSimplifying and accelerating converged media with Open Visual Cloud
Simplifying and accelerating converged media with Open Visual Cloud
 
“Open Standards: Powering the Future of Embedded Vision,” a Presentation from...
“Open Standards: Powering the Future of Embedded Vision,” a Presentation from...“Open Standards: Powering the Future of Embedded Vision,” a Presentation from...
“Open Standards: Powering the Future of Embedded Vision,” a Presentation from...
 
DCC Labs Company Presentation
DCC Labs Company PresentationDCC Labs Company Presentation
DCC Labs Company Presentation
 
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
 
Debugging Effectively in the Cloud - Felipe Fidelix - Presentation at eZ Con...
Debugging Effectively in the Cloud - Felipe Fidelix - Presentation at  eZ Con...Debugging Effectively in the Cloud - Felipe Fidelix - Presentation at  eZ Con...
Debugging Effectively in the Cloud - Felipe Fidelix - Presentation at eZ Con...
 
Webinar: NVIDIA JETSON – A Inteligência Artificial na palma de sua mão
Webinar: NVIDIA JETSON – A Inteligência Artificial na palma de sua mãoWebinar: NVIDIA JETSON – A Inteligência Artificial na palma de sua mão
Webinar: NVIDIA JETSON – A Inteligência Artificial na palma de sua mão
 
Enabling NFV features in kubernetes
Enabling NFV features in kubernetesEnabling NFV features in kubernetes
Enabling NFV features in kubernetes
 
Sundance at the 49th Intelligent Sensing Program
Sundance at the 49th Intelligent Sensing ProgramSundance at the 49th Intelligent Sensing Program
Sundance at the 49th Intelligent Sensing Program
 
"APIs for Accelerating Vision and Inferencing: An Industry Overview of Option...
"APIs for Accelerating Vision and Inferencing: An Industry Overview of Option..."APIs for Accelerating Vision and Inferencing: An Industry Overview of Option...
"APIs for Accelerating Vision and Inferencing: An Industry Overview of Option...
 
ARM
ARMARM
ARM
 
NFV and SDN: 4G LTE and 5G Wireless Networks on Intel(r) Architecture
NFV and SDN: 4G LTE and 5G Wireless Networks on Intel(r) ArchitectureNFV and SDN: 4G LTE and 5G Wireless Networks on Intel(r) Architecture
NFV and SDN: 4G LTE and 5G Wireless Networks on Intel(r) Architecture
 
PT-4052, Introduction to AMD Developer Tools, by Yaki Tebeka and Gordon Selley
PT-4052, Introduction to AMD Developer Tools, by Yaki Tebeka and Gordon SelleyPT-4052, Introduction to AMD Developer Tools, by Yaki Tebeka and Gordon Selley
PT-4052, Introduction to AMD Developer Tools, by Yaki Tebeka and Gordon Selley
 
PGI Compilers & Tools Update- March 2018
PGI Compilers & Tools Update- March 2018PGI Compilers & Tools Update- March 2018
PGI Compilers & Tools Update- March 2018
 
Summit 16: How to Compose a New OPNFV Solution Stack?
Summit 16: How to Compose a New OPNFV Solution Stack?Summit 16: How to Compose a New OPNFV Solution Stack?
Summit 16: How to Compose a New OPNFV Solution Stack?
 

More from Intel® Software

AI for All: Biology is eating the world & AI is eating Biology
AI for All: Biology is eating the world & AI is eating Biology AI for All: Biology is eating the world & AI is eating Biology
AI for All: Biology is eating the world & AI is eating Biology Intel® Software
 
Python Data Science and Machine Learning at Scale with Intel and Anaconda
Python Data Science and Machine Learning at Scale with Intel and AnacondaPython Data Science and Machine Learning at Scale with Intel and Anaconda
Python Data Science and Machine Learning at Scale with Intel and AnacondaIntel® Software
 
Streamline End-to-End AI Pipelines with Intel, Databricks, and OmniSci
Streamline End-to-End AI Pipelines with Intel, Databricks, and OmniSciStreamline End-to-End AI Pipelines with Intel, Databricks, and OmniSci
Streamline End-to-End AI Pipelines with Intel, Databricks, and OmniSciIntel® Software
 
AI for good: Scaling AI in science, healthcare, and more.
AI for good: Scaling AI in science, healthcare, and more.AI for good: Scaling AI in science, healthcare, and more.
AI for good: Scaling AI in science, healthcare, and more.Intel® Software
 
Software AI Accelerators: The Next Frontier | Software for AI Optimization Su...
Software AI Accelerators: The Next Frontier | Software for AI Optimization Su...Software AI Accelerators: The Next Frontier | Software for AI Optimization Su...
Software AI Accelerators: The Next Frontier | Software for AI Optimization Su...Intel® Software
 
Advanced Techniques to Accelerate Model Tuning | Software for AI Optimization...
Advanced Techniques to Accelerate Model Tuning | Software for AI Optimization...Advanced Techniques to Accelerate Model Tuning | Software for AI Optimization...
Advanced Techniques to Accelerate Model Tuning | Software for AI Optimization...Intel® Software
 
Reducing Deep Learning Integration Costs and Maximizing Compute Efficiency| S...
Reducing Deep Learning Integration Costs and Maximizing Compute Efficiency| S...Reducing Deep Learning Integration Costs and Maximizing Compute Efficiency| S...
Reducing Deep Learning Integration Costs and Maximizing Compute Efficiency| S...Intel® Software
 
AWS & Intel Webinar Series - Accelerating AI Research
AWS & Intel Webinar Series - Accelerating AI ResearchAWS & Intel Webinar Series - Accelerating AI Research
AWS & Intel Webinar Series - Accelerating AI ResearchIntel® Software
 
Intel AIDC Houston Summit - Overview Slides
Intel AIDC Houston Summit - Overview SlidesIntel AIDC Houston Summit - Overview Slides
Intel AIDC Houston Summit - Overview SlidesIntel® Software
 
AIDC NY: BODO AI Presentation - 09.19.2019
AIDC NY: BODO AI Presentation - 09.19.2019AIDC NY: BODO AI Presentation - 09.19.2019
AIDC NY: BODO AI Presentation - 09.19.2019Intel® Software
 
AIDC NY: Applications of Intel AI by QuEST Global - 09.19.2019
AIDC NY: Applications of Intel AI by QuEST Global - 09.19.2019AIDC NY: Applications of Intel AI by QuEST Global - 09.19.2019
AIDC NY: Applications of Intel AI by QuEST Global - 09.19.2019Intel® Software
 
Advanced Single Instruction Multiple Data (SIMD) Programming with Intel® Impl...
Advanced Single Instruction Multiple Data (SIMD) Programming with Intel® Impl...Advanced Single Instruction Multiple Data (SIMD) Programming with Intel® Impl...
Advanced Single Instruction Multiple Data (SIMD) Programming with Intel® Impl...Intel® Software
 
Bring Intelligent Motion Using Reinforcement Learning Engines | SIGGRAPH 2019...
Bring Intelligent Motion Using Reinforcement Learning Engines | SIGGRAPH 2019...Bring Intelligent Motion Using Reinforcement Learning Engines | SIGGRAPH 2019...
Bring Intelligent Motion Using Reinforcement Learning Engines | SIGGRAPH 2019...Intel® Software
 
RenderMan*: The Role of Open Shading Language (OSL) with Intel® Advanced Vect...
RenderMan*: The Role of Open Shading Language (OSL) with Intel® Advanced Vect...RenderMan*: The Role of Open Shading Language (OSL) with Intel® Advanced Vect...
RenderMan*: The Role of Open Shading Language (OSL) with Intel® Advanced Vect...Intel® Software
 
AIDC India - Intel Movidius / Open Vino Slides
AIDC India - Intel Movidius / Open Vino SlidesAIDC India - Intel Movidius / Open Vino Slides
AIDC India - Intel Movidius / Open Vino SlidesIntel® Software
 
AIDC India - AI Vision Slides
AIDC India - AI Vision SlidesAIDC India - AI Vision Slides
AIDC India - AI Vision SlidesIntel® Software
 
Enhance and Accelerate Your AI and Machine Learning Solution | SIGGRAPH 2019 ...
Enhance and Accelerate Your AI and Machine Learning Solution | SIGGRAPH 2019 ...Enhance and Accelerate Your AI and Machine Learning Solution | SIGGRAPH 2019 ...
Enhance and Accelerate Your AI and Machine Learning Solution | SIGGRAPH 2019 ...Intel® Software
 
Intel® Open Image Denoise: Optimized CPU Denoising | SIGGRAPH 2019 Technical ...
Intel® Open Image Denoise: Optimized CPU Denoising | SIGGRAPH 2019 Technical ...Intel® Open Image Denoise: Optimized CPU Denoising | SIGGRAPH 2019 Technical ...
Intel® Open Image Denoise: Optimized CPU Denoising | SIGGRAPH 2019 Technical ...Intel® Software
 

More from Intel® Software (20)

AI for All: Biology is eating the world & AI is eating Biology
AI for All: Biology is eating the world & AI is eating Biology AI for All: Biology is eating the world & AI is eating Biology
AI for All: Biology is eating the world & AI is eating Biology
 
Python Data Science and Machine Learning at Scale with Intel and Anaconda
Python Data Science and Machine Learning at Scale with Intel and AnacondaPython Data Science and Machine Learning at Scale with Intel and Anaconda
Python Data Science and Machine Learning at Scale with Intel and Anaconda
 
Streamline End-to-End AI Pipelines with Intel, Databricks, and OmniSci
Streamline End-to-End AI Pipelines with Intel, Databricks, and OmniSciStreamline End-to-End AI Pipelines with Intel, Databricks, and OmniSci
Streamline End-to-End AI Pipelines with Intel, Databricks, and OmniSci
 
AI for good: Scaling AI in science, healthcare, and more.
AI for good: Scaling AI in science, healthcare, and more.AI for good: Scaling AI in science, healthcare, and more.
AI for good: Scaling AI in science, healthcare, and more.
 
Software AI Accelerators: The Next Frontier | Software for AI Optimization Su...
Software AI Accelerators: The Next Frontier | Software for AI Optimization Su...Software AI Accelerators: The Next Frontier | Software for AI Optimization Su...
Software AI Accelerators: The Next Frontier | Software for AI Optimization Su...
 
Advanced Techniques to Accelerate Model Tuning | Software for AI Optimization...
Advanced Techniques to Accelerate Model Tuning | Software for AI Optimization...Advanced Techniques to Accelerate Model Tuning | Software for AI Optimization...
Advanced Techniques to Accelerate Model Tuning | Software for AI Optimization...
 
Reducing Deep Learning Integration Costs and Maximizing Compute Efficiency| S...
Reducing Deep Learning Integration Costs and Maximizing Compute Efficiency| S...Reducing Deep Learning Integration Costs and Maximizing Compute Efficiency| S...
Reducing Deep Learning Integration Costs and Maximizing Compute Efficiency| S...
 
AWS & Intel Webinar Series - Accelerating AI Research
AWS & Intel Webinar Series - Accelerating AI ResearchAWS & Intel Webinar Series - Accelerating AI Research
AWS & Intel Webinar Series - Accelerating AI Research
 
Intel Developer Program
Intel Developer ProgramIntel Developer Program
Intel Developer Program
 
Intel AIDC Houston Summit - Overview Slides
Intel AIDC Houston Summit - Overview SlidesIntel AIDC Houston Summit - Overview Slides
Intel AIDC Houston Summit - Overview Slides
 
AIDC NY: BODO AI Presentation - 09.19.2019
AIDC NY: BODO AI Presentation - 09.19.2019AIDC NY: BODO AI Presentation - 09.19.2019
AIDC NY: BODO AI Presentation - 09.19.2019
 
AIDC NY: Applications of Intel AI by QuEST Global - 09.19.2019
AIDC NY: Applications of Intel AI by QuEST Global - 09.19.2019AIDC NY: Applications of Intel AI by QuEST Global - 09.19.2019
AIDC NY: Applications of Intel AI by QuEST Global - 09.19.2019
 
Advanced Single Instruction Multiple Data (SIMD) Programming with Intel® Impl...
Advanced Single Instruction Multiple Data (SIMD) Programming with Intel® Impl...Advanced Single Instruction Multiple Data (SIMD) Programming with Intel® Impl...
Advanced Single Instruction Multiple Data (SIMD) Programming with Intel® Impl...
 
Bring Intelligent Motion Using Reinforcement Learning Engines | SIGGRAPH 2019...
Bring Intelligent Motion Using Reinforcement Learning Engines | SIGGRAPH 2019...Bring Intelligent Motion Using Reinforcement Learning Engines | SIGGRAPH 2019...
Bring Intelligent Motion Using Reinforcement Learning Engines | SIGGRAPH 2019...
 
RenderMan*: The Role of Open Shading Language (OSL) with Intel® Advanced Vect...
RenderMan*: The Role of Open Shading Language (OSL) with Intel® Advanced Vect...RenderMan*: The Role of Open Shading Language (OSL) with Intel® Advanced Vect...
RenderMan*: The Role of Open Shading Language (OSL) with Intel® Advanced Vect...
 
AIDC India - AI on IA
AIDC India  - AI on IAAIDC India  - AI on IA
AIDC India - AI on IA
 
AIDC India - Intel Movidius / Open Vino Slides
AIDC India - Intel Movidius / Open Vino SlidesAIDC India - Intel Movidius / Open Vino Slides
AIDC India - Intel Movidius / Open Vino Slides
 
AIDC India - AI Vision Slides
AIDC India - AI Vision SlidesAIDC India - AI Vision Slides
AIDC India - AI Vision Slides
 
Enhance and Accelerate Your AI and Machine Learning Solution | SIGGRAPH 2019 ...
Enhance and Accelerate Your AI and Machine Learning Solution | SIGGRAPH 2019 ...Enhance and Accelerate Your AI and Machine Learning Solution | SIGGRAPH 2019 ...
Enhance and Accelerate Your AI and Machine Learning Solution | SIGGRAPH 2019 ...
 
Intel® Open Image Denoise: Optimized CPU Denoising | SIGGRAPH 2019 Technical ...
Intel® Open Image Denoise: Optimized CPU Denoising | SIGGRAPH 2019 Technical ...Intel® Open Image Denoise: Optimized CPU Denoising | SIGGRAPH 2019 Technical ...
Intel® Open Image Denoise: Optimized CPU Denoising | SIGGRAPH 2019 Technical ...
 

Recently uploaded

Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 

Recently uploaded (20)

Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 

Build a Deep Learning Video Analytics Framework | SIGGRAPH 2019 Technical Sessions

  • 1. SIGGRAPH 2019 | LOS ANGLES | 28 JULY - 1 AUGUST
  • 2. Charlie Wang, Peng Tu, Mikhail Nikolsky, Jerry Dong Building a Deep Learning Video Analytics Framework for Intel AI Platforms SIGGRAPH 2019 | LOS ANGLES | 28 JULY - 1 AUGUST
  • 3. Speakers • Charlie Wang • Principal Engineer, VTT • Peng Tu • Principal Engineer, CPDP • Mikhail Nikolsky • Sr. Staff Engineer, CPDP 3 Intel Architecture Graphics Software (IAGS)
  • 4. Agenda ▪ Video Analytics Usages ▪ Build a Video Analytics Framework for all Intel HWs ▪ FFMPEG Filter Implementation ▪ GStreamer Plugin Implementation ▪ Video Analytics as REST Service ▪ Demo ▪ Resources
  • 5. Intelligence on Video Data Retailanalytics Industrialinspection Content filtering Parking management Super Resolution Autonomous driving Action recognitionEncode Quality Control
  • 6. Intel Video Analytics HW 6 Intel® CPU Client and server Intel® Vision AcceleratorDesign with Intel® Movidius™ Vision Processing Units (VPU) Intel® GPU Integrated and discrete Intel® Vision AcceleratorDesign with an Intel® Arria 10 FPGA (preview) Scalar Vector Matrix Spatial
  • 7. Typical Video Analytics Flow Decode Scale /csc Inference Object tracking Post processing + Encode 720p 1080p 4K (AVC, HEVC) Object Detection Image Segmentation ObjectTracking • LKT • IOU Crop/scale Bounding box 720P 1080p (AVC, HEVC) Output: 224x224 RGBP Objects Recognition Image Classification Action Recognition Crop scale Inference Inference
  • 8. Map to Intel Hardwares Decode Scale /csc Inference Object tracking Post processing + Encode Crop scale Inference Inference CPU Media FF CPU GPU VPU FPGA CPU GPU Programmable CPU Media FF GPU CPU Media FF GPU CPU GPU VPU FPGA Video analyticsrequire heavy video and compute interaction
  • 9. Agenda ▪ Video Analytics Usages ▪ Build a Video Analytics Framework for all Intel HWs ▪ FFMPEG Filter Implementation ▪ GStreamer Plugin Implementation ▪ Video Analytics as REST Service ▪ Demo ▪ Resources
  • 10. Popular video Processing software frameworks Video and audio demux, decode, processing, encoding, rendering, and muxing, also allow customizedplugin/filter
  • 11. Intel Video software Offering 11 CPU GPU Media FF FPGA VAAPI/DXVA Next Gen Media Library SW codec App FFMPEG GStreamer App App Customized Framework FPGA driver Intel GPU media FF support video decode/encode and video processing
  • 12. Intel Computer VISION Software Offering Deep Learning for Computer Vision Accelerate and deploy convolutional neuralnetworks (CNN) on Intel® platforms with the Deep Learning DeploymentToolkit includedOpenVINO Traditional Computer Vision Develop and optimize classic computer vision applications built with the OpenCV library or OpenVX API.
  • 13. OpenVINO for Inference 13 CPU GPU VPU MKLDNN GPU PluginCPU Plugin DL Inference Engine API FPGA MVNC VPU Plugin DLA FPGA Plugin Heterogeneous Execution Engine CLDNN Inference App Single interface supports all platforms, no SW change. Library designed for CNN inference accelerationon Intel HW
  • 14. Inference Engine This execution engine uses a common API to deliver inference solutionson the platform of your choice: CPU, GPU, VPU, or FPGA. Model Optimizer This Python*-based command line tool imports trained models from popular deep learning frameworks such as Caffe*, TensorFlow*, and Apache MXNet*, and Open Neural Network Exchange (ONNX). Intel Deep Learning Deployment Toolkit
  • 15. Now let’s build the video analytics framework Write-once, Deploy on All HWs
  • 16. Video Analytics Framework Video Analytics Application CPU GPU VPU FPGA VAAPI Media Driver MKLDNN ComputeDriver Next Gen Media Library OpenVINO CLDNN DLA CPU codec FFMPEG Plugin Video Analytics Application Gstreamer Plugin Video Analytics Application Your own framework NV12 The framework supports load balanceamong devices
  • 17. Media & Compute interoperability • Media and Compute/Inferenceuse differentcolor format Tiled NV12 Surface Decode Linear RGBP SurfaceScaling/csc Meta dataInference A copy is required if we don’t handlebuffer sharing correctly Common media format – YUV with padding, pitch, etc. Inference format – tensor array
  • 18. Media format as a compute/Inference Format Decode NV12 SurfaceScaling Meta dataInferenceC Y channel Layer1 (csc+convolution) weight1 weight2 weight3 bias csc R G B UV channel Inference time reduced by 3% to 20% depends on resolution Model Resolution Time reduction GoogleNetV1 224x224 3.6% YoloTinyV1 448x448 9.3% Mtcnn 1280x720 20.9%
  • 19. Video Analytics e2e flow Trained Model OfflineModel Opt Model IR DLDT Inference Engine API Application Inference Engine DLDT MSDK Library GSTVA DEC/ENC/VPP API MSDK DEC/ENC/VPP/INF API FFMPEG-VA/GST-VA VA Pipeline DesignVideo sources VA Pipeline Implementation
  • 20. Agenda ▪ Video Analytics Usages ▪ Build a Video Analytics Framework for all Intel HWs ▪ FFMPEG Filter Implementation ▪ GStreamer Plugin Implementation ▪ Video Analytics as REST Service ▪ Demo ▪ Resources
  • 21. 21 FFMPEG componentsCommands (console) ffmpeg ffplay ffprobe ffserver Libraries libavdevice libavformat libavcodec libavfilter libavutil libpostproc libavresample libswresamplemux / demux Libraryfora/vfilters which to implement all kind ofeffects,such as scale, crop, frc, etc Commandtoolto do transcoding Simple playerwith SDL usingffmpeg demux/decoder Tool to extract the informationofmulti- media stream Real-time stream server to broadcast multi-mediastream A Library to implement mostofA/Vcodec, and used bymost ofpopular codectools Common tool library We are adding inference as filters
  • 22. 22 Tensorflow ffmpeg or ffplay CPU GPU FPGAVPU DNN INTERFACEDNNModel DNNModel Tensorflow Backend Inference Engine Backend InferenceEngine(OpenVINO) MKLD NN clDNN Movidius DLA SR Filter Classify FilterDetect Filter APP LIBAVFILTER 3RD LIBRARIESHW Kafka produce r Meta data muxer LIBAVFORMAT Librdkafka FFmpeg Filter VA Architecture new FFmpeg hardware 3rd party …
  • 23. 23 • Face detection + emotion&age_gender recognition: ffmpeg -i clip.mp4 -vf “ detect=model=$DETECT_MODEL1:model_proc=$MODEL1-JSON:device=$CPU, classify=model=$EMOTION_MODEL2:model_proc=&MODEL2-JSON:device=$CPU, classify=model=$AGE_GENDER_MODEL3:model_proc=$MODEL3-JSON:device=$CPU” -an -y -f iemetadata metadata.json The pipelines look like ... 23 input decoder face emotion age-gender convert send to detection recognition recognition to JSON kafka server stream detect classify classify iemetadata Kafkadecode
  • 24. Agenda ▪ Video Analytics Usages ▪ Build a Video Analytics Framework for all Intel HWs ▪ FFMPEG Filter Implementation ▪ GStreamer Plugin Implementation ▪ Video Analytics as REST Service ▪ Demo ▪ Resources
  • 25. WHY AddING VA to Gstreamer • Multiplatform:Linux, Windows, Mac OS X, Android, … • Comprehensivecore:graph-based multi-threadedpipeline, lightweightdata passing • Broad coverageof media technologies: file and streamingpacket i/o, codecs, metadata,video and audio • Extensivedevelopmenttools: gst-launch, Python, C++ API • Easy to extend and reusethrough plugins and metadata 25
  • 26. GStreamer Plugins Architecture 26 GStreamer API Application MetadataPer-plugin params/API pipeline control pipeline events inference plugins configuration inference res ults zero-copy,multi-channel inference OpenVINO Inference Engine MKLDNN plugin clDNN plugin MDK plugin iGPU/ dGPU CPU KMB/ HDDL VAAPI libav/ ffmpeg VAAPI SVT GPU i/d/VSI CPU GPU i/d/VSI CPU RTSP, WebRTC, Render, File IO, … V4L2 Media HW acceleration ImageInference API Kafka MQTT Video sources gvainference Video Analytics plugins (GVA*)Media plugins HW decode SW decode HW encode SW encode Other plugins 200+ plugins gvadetect gvaclassify gvaidentify Meta convert publish decodebin
  • 27. GVA Inference Plugins Architecture 27 Inference Shared Instance OpenVINO IEOpenVINO IE GvaDetect Thread sink padDMABuf or RGBx (any resolution) Attach GstMeta to GstBuffer source pad Output Layer Post-Processing GstBuffer + GstMeta’s VASurface or RGBx VAAPI original GstBuffer queueInput Layer Pre-Processing Inference queue per device DownScale NV12→RGBP
  • 28. GStreamer pipeline example input HW/SW face age/gender emotion landmark re-identify face convert overlay decode detection classification recognition points inference recognition to JSON result 28 filesrc decodebin gvaclassify gvaclassify gvaclassifygvadetect gvaidentify gvametaconvert gvawatermark Video Analytics pipeline in Ad Insertion demo – facedetection plus age, gender, person recognition gvaclassify gst-launch-1.0 filesrc location=${FILE} ! decodebin ! gvadetect model=face-detection-adas-0001.xml model-proc=face-detection-adas-0001.json ! queue ! gvaclassify device=CPU model=age-gender-recognition.xml model-proc=age-gender-recognition.json ! queue ! gvaclassify device=GPU model=emotions-recognition.xml model-proc=emotions-recognition.json ! queue ! gvaclassify device=CPU,GPU model=landmarks-regression.xml model-proc=landmarks-regression.json ! queue ! gvaclassify model=face-reidentification.xml model-proc=face-reidentification.json ! queue ! gvaidentify gallery=face_gallery.json ! queue ! gvawatermark ! videoconvert ! fpsdisplaysink sync=false Platform specific tuning: gvaclassify device={CPU|CPU,GPU} cpu-streams=15 nireq=16 …
  • 29. Multiple Programming language BINDINGS• Easily build pipeline from C/C++, Python in addition to the gst-launch command 29
  • 30. GStreamer Video Analytics Plugins List 30 GST element Description INPUT OUTPUT gvainference Generic inference GstBuffer INPUT+ GvaTensorMeta gvadetect Objectdetection GstBuffer INPUT+ GstVideoRegionOfInterestMeta gvaclassify Objectclassification GstBuffer + GstVideoRegionOfInterestMeta INPUT+ GstVideoRegionOfInterestMeta gvaidentify Objectidentification/ recognition GstBuffer + GstVideoRegionOfInterestMeta INPUT+ GstVideoRegionOfInterestMeta gvametaconvert Metadata conversion GstBuffer +GvaTensorMeta/ GstVideoRegionOfInterestMeta INPUT+ GvaJSONMeta gvawatermark Overlay GstBuffer +GvaDetectionMeta + { GvaTensorMeta } INPUT(with modified image) gvametapublish Messagebus (Kafka, MQTT) GstBuffer +GvaJSONMeta -
  • 31. Agenda ▪ Video Analytics Usages ▪ Build a Video Analytics Framework for all Intel HWs ▪ FFMPEG Filter Implementation ▪ GStreamer Plugin Implementation ▪ Video Analytics as REST Service ▪ Demo ▪ Resources
  • 32. Video Analytics API levels • Low-level (per frame processing) ▪ VAAPI, OpenVINO, OpenCL, OpenCV • Pipeline level ▪ GStreamer, FFMPEG, MediaFoundation, … • Video Analytics as Service ▪ REST/gRPC multi-node service 32
  • 33. Video Analytics REST Service 33 • Provide RESTfulinterfacesfor executing and monitoringpipeline status • Interface agnostic to underlying implementation(GStreamer,FFMPEG, Custom backend) • Supportscaling through container deploymentand orchestration frameworks • Load balancing Video Analytics Pipeline Service GStreamer / FFMPEG REST / gRPC / Message Bus VAAPI / MSDKHW Acceleration Pipeline Support Video Analytics Normalization Edge / Cloud Integration Open VINO PipelineA PipelineB … Pipeline Manager Model Manager Model A Model B… CPU GPU VPU
  • 34. Video Analytics Service Developer Workflow 34 HW / OS Optimized Docker Files Pipelines Configuration json files Docker Build Model Configuration json files HW/ OS Optimized Libraries VA Pipeline Developer creates pipeline templates with customizable parameters and models VA Pipeline Developer builds Docker image Developer / System Integrator deploys containers to Cloud or Edge and integrates into application HTTP request 1 2 3 Application 2 Scheduler Application 1 Worker HTTP request Worker … …
  • 35. CloudEdge End2end DISTRIBUTED VIDEO analytics examplePOST/pipelines/vehicles/1 { "source": "rtsp://10.43.38.158", "destination": { “type": “Kafka", “hosts": [10.43.38.150:9299] } } Video Analytics REST Service REST RTSP { "camera_id" : “173207954”, "label": "vehicle", "object_id": 3, "bounding_box": [0.13958, 0.33766, 0.42094, 0.06687], "confidence": 0.83 } NVR storage RTSP Database web dashboard Analytics algorithm
  • 36. Video Analytics Service is part of Open Visual Cloud 36 https://01.org/openvisualcloud The Open Visual Cloud is an open source project that offers a set of pre-defined reference pipelines for various target visual cloud use cases.
  • 37. Agenda ▪ Video Analytics Usages ▪ Build a Video Analytics Framework for all Intel HWs ▪ FFMPEG Filter Implementation ▪ Gstreamer Plugin Implementation ▪ Video Analytics as REST Service ▪ Demo ▪ Resources
  • 38. Demo • 4 channel face detection • Smart city, edge to cloud 38
  • 39. Summary • We presented Intel video analytics e2e pipeline in GStreamer and FFMPEG • It supports multiple Intel HWs with same SW pipeline/API • It provides optimized flow between media and DL inference, zero copy, inference on NV12 image • It provides scalable deployment cross edge/cloud • Call to Action • Try it out and let us know your feedback
  • 40. Resources ▪ OpenVINO - https://github.com/opencv/dldt ▪ MediaSDK - https://github.com/Intel-Media-SDK ▪ GStreamer Plugin - https://github.com/opencv/gst-video-analytics ▪ Open Visual Cloud ▪ Smart City sample https://github.com/OpenVisualCloud/Smart-City-Sample ▪ Ad Insertion sample https://github.com/OpenVisualCloud/Ad-Insertion-Sample ▪ Docker files including FFMPEG Video Analytics Filters https://github.com/OpenVisualCloud/Dockerfiles 40