SlideShare a Scribd company logo
Robots that see likeRobots that see like
humanshumans
Real Time Stereo Vision With ZED Camera
on Nvidia Jetson TX1
Walter Lucetti
myzhar@robot-home.it
Summary
21/05/2016Officine Robotiche 2016
2
WalterLucetti–myzhar@robot-home.it
Live Demo
Conclusions
Introduction
Stereo “Binocular” Vision
Robotic Stereo Vision
“Simplified” Stereo Vision
Pin Hole Camera model
Stereo Vision camera model
Stereo Vision process
A Robotic Stereo Vision System
Nvidia Jetson TX1
Stereolabs ZED camera
Stereolabs ZED SDK
Stereolabs ZED engine
Simple Code example
Introduction3
Introduction
4
WalterLucetti–myzhar@robot-home.it
Can a robot replicate the complicated
human binocular vision system?
21/05/2016Officine Robotiche 2016
Stereo “Binocular” Vision
5
[from Wikipedia: Binocular vision]
Vision made with TWO “EYES”
It gives a “creature” a spare eye in case one is damaged
It gives a wider field of view
It can give stereopsis in which binocular disparity (or
parallax) provided by the two eyes' different positions on
the head gives precise depth perception
It allows a creature to see more of, or all of, an object
behind an obstacle
It gives binocular summation in which the ability to detect
faint objects is enhanced
WalterLucetti–myzhar@robot-home.it
21/05/2016Officine Robotiche 2016
Robotic Stereo Vision
6
How to replicate Human Stereo Vision?
Two synchronized camera sensors
A solid mechanical structure
A powerful elaboration system
and if we want to be more precise, but we want to complicate the
system:
Two motors to replicate vergence capability
WalterLucetti–myzhar@robot-home.it
21/05/2016Officine Robotiche 2016
“Simplified” Stereo Vision7
“Simplified” Stereo Vision
8
WalterLucetti–myzhar@robot-home.it
A complete Stereo Vision system has
vergence capability, but is too complicated
We will study a Simplified Stereo Vision
system where cameras cannot rotate
21/05/2016Officine Robotiche 2016
9
WalterLucetti–myzhar@robot-home.it
Pin hole camera model
Camera
Plane
Optical
Axis
Image coordinates
World coordinates
World to image
Image to world
Without “Z” we cannot estimate the real dimension of an object using
a single camera!
“f” can be estimated
calibrating the
camera system
This is a simplified
camera model that
does not take care
of
Optical Distorsion
and
Sensor
Imperfections
21/05/2016Officine Robotiche 2016
u=
f ∗x
z
v=
f ∗y
z
x=
u∗z
f
y=
v∗z
f
10
WalterLucetti–myzhar@robot-home.it
Stereo Vision model
Very important parameter:
●
Baseline: b
From triangles similarity:
Very important value:
● Disparity: D = ul
- ur
From disparity we can calculate how
much a point is far from a camera:
THE “Z” VALUE!!!
21/05/2016Officine Robotiche 2016
f
Z P
=
ul
X P
f
Z P
=
−ur
b−X P
ZP=
b∗ f
ul−ur
Calculate “Disparity” (D)
for each point of the image
11
WalterLucetti–myzhar@robot-home.it
Stereo Vision process
Calculate the depth (Z) of
each point of the image
Calculate X and Y of each
point of the image
Algorithm
MATCHING
REQUIRES A LOT
OF
COMPUTATIONAL
POWER
D = ul
- ur
21/05/2016Officine Robotiche 2016
12
WalterLucetti–myzhar@robot-home.it
Stereo Vision summary
Allows to calculate real world coordinate
of an object
Requires a solid mechanical structure
Requires a precise calibration of the
optical system
Requires a lot of computational power
…
Is more complicated than what seen until
now
21/05/2016Officine Robotiche 2016
A Robotic Stereo Vision system13
14
WalterLucetti–myzhar@robot-home.it
A Robotic Stereo Vision System
Nvidia Jetson TX1
www.nvidia.com/object/jetson-embedded-
systems.html
Stereolabs ZED
www.stereolabs.com
21/05/2016Officine Robotiche 2016
15
WalterLucetti–myzhar@robot-home.it
Nvidia Jetson TK1
Main features
Nvidia Tegra X1 SOC
NVIDIA Maxwell GPU with 256
CUDA cores
NVIDIA 4-Plus-1™ 2.3 Ghz quad-
core ARM® Cortex™-A15 CPU
4 GB LPDDR4 Memory
16 GB eMMC 5.1 Flash Storage
1 full-size SD/MMC connector
1 full-size HDMI port
1 USB 2.0 port, micro AB
1 USB 3.0 port, A
1 RTL8111GS Realtek GigE LAN
GPIO, SPI, I2C, UART, CAN
WiFi & Bluetooth connection
...
 Native OpenCV support with GPU
module for Real Time computer vision
 ROS enabled
 Ubuntu powered
and more...
 Android
 ...
21/05/2016Officine Robotiche 2016
16
WalterLucetti–myzhar@robot-home.it
Stereolabs ZED camera
Main features
Auto calibrating and auto sync
USB 3.0
High Res at high FPS
2208x1242 15 Hz
1920x1080 30 Hz
1280x720 60 Hz
640x480 120 Hz
Simple and well documented C++
SDK
Automatic Depth Map generation
3D Range: 1 m to 20 m
(12 cm baseline)
Outdoor and indoor
Jetson TX1 driver
ROS driver
OpenCV support
21/05/2016Officine Robotiche 2016
17
WalterLucetti–myzhar@robot-home.it
Stereolabs ZED SDK
C++ Classes and APIs for Linux and Windows
2 main classes and 5 support classes
Main classes:
Camera: the main class to use the ZED camera
Mat: the class to store image data in GPU and CPU memory
spaces
Support classes:
CamParameters: calibration params for the two sensors
StereoParameters: calibration params for stereo processing
resolution: dimensions of the images
float3Struct: 3D point
uchar3Struct: RGB pixel
Current version:
0.9.3-beta for Linux and Windows, 0.9.3-alpha for Jetson TX1
21/05/2016Officine Robotiche 2016
18
WalterLucetti–myzhar@robot-home.it
Stereolabs ZED engine
Stereo results are available
in GPU memory
Direct processing by CUDA
or download to CPU memory
for CPU processing
21/05/2016Officine Robotiche 2016
19
WalterLucetti–myzhar@robot-home.it
Stereolabs ZED tools
ZED Explorer ZED Depth Viewer
21/05/2016Officine Robotiche 2016
20
WalterLucetti–myzhar@robot-home.it
Simple code example
//ZED Includes
#include <zed/Camera.hpp>
int main(int argc, char **argv)
{
sl::zed::SENSING_MODE dm_type = sl::zed::RAW;
sl::zed::Camera* zed;
// Camera object creation
zed = new sl::zed::Camera(sl::zed::HD2K);
// We can use different resolutions:
// HD2K HD1080 HD720 VGA
// Sizes of the images
int width = zed->getImageSize().width;
int height = zed->getImageSize().height;
// Initialization of the camera
sl::zed::ERRCODE err =
zed->init( sl::zed::MODE::PERFORMANCE );
if (err != sl::zed::SUCCESS)
{
delete zed;
return 1;
}
// Stereo processing
zed->grab(dm_type);
// CPU Data
sl::zed::Mat depth_cpu;
sl::zed::Mat left_cpu;
sl::zed::Mat right_cpu;
// Data acquiring on CPU memory
depth_cpu =
zed->retrieveMeasure(sl::MEASURE::DEPTH);
left_cpu =
zed->retrieveImage(sl::SIDE::LEFT);
right_cpu =
zed->retrieveImage(sl::SIDE::RIGHT);
// GPU Data
sl::zed::Mat depth_gpu;
sl::zed::Mat left_gpu;
sl::zed::Mat right_gpu;
// Data acquiring on GPU memory
depth_cpu =
zed->retrieveMeasure_gpu(sl::MEASURE::DEPTH);
left_cpu =
zed->retrieveImage_gpu(sl::SIDE::LEFT);
right_cpu =
zed->retrieveImage_gpu(sl::SIDE::RIGHT);
return 0;
}
21/05/2016Officine Robotiche 2016
Live demo21
Conclusions22
23
WalterLucetti–myzhar@robot-home.it
Conclusions
With Stereo Vision
A robot can see obstacles
A robot can measure obstacles
A robot can localize obstacles
Stereo Vision requires
a lot of mathematical elaborations
a lot of computational power
a solid mechanical structure
so
Nvidia Jetson TX1 with Stereolabs ZED
is a really amazing solution for Robotic Stereo Vision!
21/05/2016Officine Robotiche 2016
The End!
OR
THANK YOU FOR YOUR
ATTENTION!
Walter Lucetti
http://myzharbot.robot-home.it
GitHub
@myzhar
Youtube
Myzhar
Twitter
@myzhar
Facebook
robothome
24
21/05/2016Officine Robotiche 2016

More Related Content

What's hot

Computer Graphics
Computer GraphicsComputer Graphics
Computer Graphics
Griffinder VinHai
 
3 d graphics with opengl part 2
3 d graphics with opengl  part 23 d graphics with opengl  part 2
3 d graphics with opengl part 2
Sardar Alam
 
Build Your Own 3D Scanner: Introduction
Build Your Own 3D Scanner: IntroductionBuild Your Own 3D Scanner: Introduction
Build Your Own 3D Scanner: Introduction
Douglas Lanman
 
Build Your Own 3D Scanner: 3D Scanning with Swept-Planes
Build Your Own 3D Scanner: 3D Scanning with Swept-PlanesBuild Your Own 3D Scanner: 3D Scanning with Swept-Planes
Build Your Own 3D Scanner: 3D Scanning with Swept-Planes
Douglas Lanman
 
EENG512FinalPresentation_DanielKuntz
EENG512FinalPresentation_DanielKuntzEENG512FinalPresentation_DanielKuntz
EENG512FinalPresentation_DanielKuntz
Daniel K
 
Lecture1
Lecture1Lecture1
Lecture1
Mobeen Mustafa
 
Lecture 02 yasutaka furukawa - 3 d reconstruction with priors
Lecture 02   yasutaka furukawa - 3 d reconstruction with priorsLecture 02   yasutaka furukawa - 3 d reconstruction with priors
Lecture 02 yasutaka furukawa - 3 d reconstruction with priors
mustafa sarac
 
Notes on image processing
Notes on image processingNotes on image processing
Notes on image processing
Mohammed Kamel
 
CGV 18CS62 VTU CSE
CGV 18CS62 VTU CSECGV 18CS62 VTU CSE
CGV 18CS62 VTU CSE
Ananda Kumar HN
 
Build Your Own 3D Scanner: The Mathematics of 3D Triangulation
Build Your Own 3D Scanner: The Mathematics of 3D TriangulationBuild Your Own 3D Scanner: The Mathematics of 3D Triangulation
Build Your Own 3D Scanner: The Mathematics of 3D Triangulation
Douglas Lanman
 
Fingerprint High Level Classification
Fingerprint High Level ClassificationFingerprint High Level Classification
Fingerprint High Level Classification
Reza Rahimi
 
sawano-icma2000
sawano-icma2000sawano-icma2000
sawano-icma2000
Yoshinobu Sawano
 
Clipping
ClippingClipping
Clipping
johanna20
 
Hit and-miss transform
Hit and-miss transformHit and-miss transform
Hit and-miss transform
Krish Everglades
 
Keynote at Tracking Workshop during ISMAR 2014
Keynote at Tracking Workshop during ISMAR 2014Keynote at Tracking Workshop during ISMAR 2014
Keynote at Tracking Workshop during ISMAR 2014
Darius Burschka
 
Depth estimation from stereo image pairs using block-matching
Depth estimation from stereo image pairs using block-matchingDepth estimation from stereo image pairs using block-matching
Depth estimation from stereo image pairs using block-matching
Abhranil Das
 
Build Your Own 3D Scanner: Conclusion
Build Your Own 3D Scanner: ConclusionBuild Your Own 3D Scanner: Conclusion
Build Your Own 3D Scanner: Conclusion
Douglas Lanman
 
Saad alsheekh multi view
Saad alsheekh  multi viewSaad alsheekh  multi view
Saad alsheekh multi view
SaadAlSheekh1
 
Wii Sensor Bar Positioning in 3D Space
Wii Sensor Bar Positioning in 3D SpaceWii Sensor Bar Positioning in 3D Space
Wii Sensor Bar Positioning in 3D Space
Yoav Francis
 
Build Your Own 3D Scanner: 3D Scanning with Structured Lighting
Build Your Own 3D Scanner: 3D Scanning with Structured LightingBuild Your Own 3D Scanner: 3D Scanning with Structured Lighting
Build Your Own 3D Scanner: 3D Scanning with Structured Lighting
Douglas Lanman
 

What's hot (20)

Computer Graphics
Computer GraphicsComputer Graphics
Computer Graphics
 
3 d graphics with opengl part 2
3 d graphics with opengl  part 23 d graphics with opengl  part 2
3 d graphics with opengl part 2
 
Build Your Own 3D Scanner: Introduction
Build Your Own 3D Scanner: IntroductionBuild Your Own 3D Scanner: Introduction
Build Your Own 3D Scanner: Introduction
 
Build Your Own 3D Scanner: 3D Scanning with Swept-Planes
Build Your Own 3D Scanner: 3D Scanning with Swept-PlanesBuild Your Own 3D Scanner: 3D Scanning with Swept-Planes
Build Your Own 3D Scanner: 3D Scanning with Swept-Planes
 
EENG512FinalPresentation_DanielKuntz
EENG512FinalPresentation_DanielKuntzEENG512FinalPresentation_DanielKuntz
EENG512FinalPresentation_DanielKuntz
 
Lecture1
Lecture1Lecture1
Lecture1
 
Lecture 02 yasutaka furukawa - 3 d reconstruction with priors
Lecture 02   yasutaka furukawa - 3 d reconstruction with priorsLecture 02   yasutaka furukawa - 3 d reconstruction with priors
Lecture 02 yasutaka furukawa - 3 d reconstruction with priors
 
Notes on image processing
Notes on image processingNotes on image processing
Notes on image processing
 
CGV 18CS62 VTU CSE
CGV 18CS62 VTU CSECGV 18CS62 VTU CSE
CGV 18CS62 VTU CSE
 
Build Your Own 3D Scanner: The Mathematics of 3D Triangulation
Build Your Own 3D Scanner: The Mathematics of 3D TriangulationBuild Your Own 3D Scanner: The Mathematics of 3D Triangulation
Build Your Own 3D Scanner: The Mathematics of 3D Triangulation
 
Fingerprint High Level Classification
Fingerprint High Level ClassificationFingerprint High Level Classification
Fingerprint High Level Classification
 
sawano-icma2000
sawano-icma2000sawano-icma2000
sawano-icma2000
 
Clipping
ClippingClipping
Clipping
 
Hit and-miss transform
Hit and-miss transformHit and-miss transform
Hit and-miss transform
 
Keynote at Tracking Workshop during ISMAR 2014
Keynote at Tracking Workshop during ISMAR 2014Keynote at Tracking Workshop during ISMAR 2014
Keynote at Tracking Workshop during ISMAR 2014
 
Depth estimation from stereo image pairs using block-matching
Depth estimation from stereo image pairs using block-matchingDepth estimation from stereo image pairs using block-matching
Depth estimation from stereo image pairs using block-matching
 
Build Your Own 3D Scanner: Conclusion
Build Your Own 3D Scanner: ConclusionBuild Your Own 3D Scanner: Conclusion
Build Your Own 3D Scanner: Conclusion
 
Saad alsheekh multi view
Saad alsheekh  multi viewSaad alsheekh  multi view
Saad alsheekh multi view
 
Wii Sensor Bar Positioning in 3D Space
Wii Sensor Bar Positioning in 3D SpaceWii Sensor Bar Positioning in 3D Space
Wii Sensor Bar Positioning in 3D Space
 
Build Your Own 3D Scanner: 3D Scanning with Structured Lighting
Build Your Own 3D Scanner: 3D Scanning with Structured LightingBuild Your Own 3D Scanner: 3D Scanning with Structured Lighting
Build Your Own 3D Scanner: 3D Scanning with Structured Lighting
 

Viewers also liked

Passive stereo vision with deep learning
Passive stereo vision with deep learningPassive stereo vision with deep learning
Passive stereo vision with deep learning
Yu Huang
 
Stereoscopic Display of Lung PET/CT DICOM Scans using Perspective
Stereoscopic Display of Lung PET/CT DICOM Scans using PerspectiveStereoscopic Display of Lung PET/CT DICOM Scans using Perspective
Stereoscopic Display of Lung PET/CT DICOM Scans using Perspective
Cassidy Chen
 
News
NewsNews
Stereogram and Stereo Vision
Stereogram and Stereo VisionStereogram and Stereo Vision
Stereogram and Stereo Vision
Masayuki Tanaka
 
bag-of-words models
bag-of-words models bag-of-words models
bag-of-words models
Xiaotao Zou
 
Programming with kinect v2
Programming with kinect v2Programming with kinect v2
Programming with kinect v2
Matteo Valoriani
 
11 X1 T05 07 Angle Between Two Lines
11 X1 T05 07 Angle Between Two Lines11 X1 T05 07 Angle Between Two Lines
11 X1 T05 07 Angle Between Two Lines
Nigel Simmons
 
Faster R-CNN: Towards real-time object detection with region proposal network...
Faster R-CNN: Towards real-time object detection with region proposal network...Faster R-CNN: Towards real-time object detection with region proposal network...
Faster R-CNN: Towards real-time object detection with region proposal network...
Universitat Politècnica de Catalunya
 
MEMS Laser Scanning, the platform for next generation of 3D Depth Sensors
MEMS Laser Scanning, the platform for next generation of 3D Depth SensorsMEMS Laser Scanning, the platform for next generation of 3D Depth Sensors
MEMS Laser Scanning, the platform for next generation of 3D Depth Sensors
MicroVision
 

Viewers also liked (9)

Passive stereo vision with deep learning
Passive stereo vision with deep learningPassive stereo vision with deep learning
Passive stereo vision with deep learning
 
Stereoscopic Display of Lung PET/CT DICOM Scans using Perspective
Stereoscopic Display of Lung PET/CT DICOM Scans using PerspectiveStereoscopic Display of Lung PET/CT DICOM Scans using Perspective
Stereoscopic Display of Lung PET/CT DICOM Scans using Perspective
 
News
NewsNews
News
 
Stereogram and Stereo Vision
Stereogram and Stereo VisionStereogram and Stereo Vision
Stereogram and Stereo Vision
 
bag-of-words models
bag-of-words models bag-of-words models
bag-of-words models
 
Programming with kinect v2
Programming with kinect v2Programming with kinect v2
Programming with kinect v2
 
11 X1 T05 07 Angle Between Two Lines
11 X1 T05 07 Angle Between Two Lines11 X1 T05 07 Angle Between Two Lines
11 X1 T05 07 Angle Between Two Lines
 
Faster R-CNN: Towards real-time object detection with region proposal network...
Faster R-CNN: Towards real-time object detection with region proposal network...Faster R-CNN: Towards real-time object detection with region proposal network...
Faster R-CNN: Towards real-time object detection with region proposal network...
 
MEMS Laser Scanning, the platform for next generation of 3D Depth Sensors
MEMS Laser Scanning, the platform for next generation of 3D Depth SensorsMEMS Laser Scanning, the platform for next generation of 3D Depth Sensors
MEMS Laser Scanning, the platform for next generation of 3D Depth Sensors
 

Similar to Robots that see like humans

Virtual Techniques: VDC - Trend Report 2018
Virtual Techniques: VDC - Trend Report 2018Virtual Techniques: VDC - Trend Report 2018
Virtual Techniques: VDC - Trend Report 2018
Virtual Dimension Center (VDC) Fellbach
 
Creating next-gen VR and MR experiences using Varjo VR-1 and XR-1 - Unite Cop...
Creating next-gen VR and MR experiences using Varjo VR-1 and XR-1 - Unite Cop...Creating next-gen VR and MR experiences using Varjo VR-1 and XR-1 - Unite Cop...
Creating next-gen VR and MR experiences using Varjo VR-1 and XR-1 - Unite Cop...
Unity Technologies
 
3D Technology
3D Technology 3D Technology
3D Technology
Shashiprabha Rathnayake
 
OTOY GTC17 Presentation Slides: "The Future of GPU Rendering"
OTOY GTC17 Presentation Slides: "The Future of GPU Rendering"OTOY GTC17 Presentation Slides: "The Future of GPU Rendering"
OTOY GTC17 Presentation Slides: "The Future of GPU Rendering"
OTOY Inc.
 
[Paper Presentation] FoveAR: Combining an Optically See-Through Near-Eye Disp...
[Paper Presentation] FoveAR: Combining an Optically See-Through Near-Eye Disp...[Paper Presentation] FoveAR: Combining an Optically See-Through Near-Eye Disp...
[Paper Presentation] FoveAR: Combining an Optically See-Through Near-Eye Disp...
Pei-Hsuan (Ike) Tsai
 
Visual Mapping and Collision Avoidance Dynamic Environments in Dynamic Enviro...
Visual Mapping and Collision Avoidance Dynamic Environments in Dynamic Enviro...Visual Mapping and Collision Avoidance Dynamic Environments in Dynamic Enviro...
Visual Mapping and Collision Avoidance Dynamic Environments in Dynamic Enviro...
Darius Burschka
 
3D Workshop
3D Workshop3D Workshop
3D Workshop
James Uren
 
Recent Trends in Signal and Image Processing - Applications
Recent Trends in Signal and Image Processing - ApplicationsRecent Trends in Signal and Image Processing - Applications
Recent Trends in Signal and Image Processing - Applications
Anand Muglikar
 
VR digest. June 2018
VR digest. June 2018VR digest. June 2018
VR digest. June 2018
ElifTech
 
Hacking for salone: drone races
Hacking for salone: drone racesHacking for salone: drone races
Hacking for salone: drone races
Emanuele Di Saverio
 
Design the implementation of Robotic Simulator: Goalkeeper.
Design the implementation of Robotic Simulator: Goalkeeper.Design the implementation of Robotic Simulator: Goalkeeper.
Design the implementation of Robotic Simulator: Goalkeeper.
Ankita Tiwari
 
Virtual_Reality_New.pptx
Virtual_Reality_New.pptxVirtual_Reality_New.pptx
Virtual_Reality_New.pptx
BapuPradhan1
 
OTOY Presentation - 2015 NVIDIA GPU Technology Conference - March 17 2015
OTOY Presentation - 2015 NVIDIA GPU Technology Conference - March 17 2015OTOY Presentation - 2015 NVIDIA GPU Technology Conference - March 17 2015
OTOY Presentation - 2015 NVIDIA GPU Technology Conference - March 17 2015
otoyinc
 
The mag pi-issue-28-en
The mag pi-issue-28-enThe mag pi-issue-28-en
The mag pi-issue-28-en
Nguyen Nam
 
THE THIRD EYE-Presentation
THE THIRD EYE-PresentationTHE THIRD EYE-Presentation
THE THIRD EYE-Presentation
Romil Shah
 
"Image Sensor Formats and Interfaces for IoT Applications," a Presentation fr...
"Image Sensor Formats and Interfaces for IoT Applications," a Presentation fr..."Image Sensor Formats and Interfaces for IoT Applications," a Presentation fr...
"Image Sensor Formats and Interfaces for IoT Applications," a Presentation fr...
Edge AI and Vision Alliance
 
Discovering The Unknown Aspects Of Nuke
Discovering The Unknown Aspects Of NukeDiscovering The Unknown Aspects Of Nuke
Discovering The Unknown Aspects Of Nuke
Animation Kolkata
 
Raskar Computational Camera Fall 2009 Lecture 01
Raskar Computational Camera Fall 2009 Lecture 01Raskar Computational Camera Fall 2009 Lecture 01
Raskar Computational Camera Fall 2009 Lecture 01
Camera Culture Group, MIT Media Lab
 
Datt 2501 week 11
Datt 2501 week 11Datt 2501 week 11
Datt 2501 week 11
Joe Hambleton
 
15793804.ppt
15793804.ppt15793804.ppt
15793804.ppt
DanuPrasetyoAji1
 

Similar to Robots that see like humans (20)

Virtual Techniques: VDC - Trend Report 2018
Virtual Techniques: VDC - Trend Report 2018Virtual Techniques: VDC - Trend Report 2018
Virtual Techniques: VDC - Trend Report 2018
 
Creating next-gen VR and MR experiences using Varjo VR-1 and XR-1 - Unite Cop...
Creating next-gen VR and MR experiences using Varjo VR-1 and XR-1 - Unite Cop...Creating next-gen VR and MR experiences using Varjo VR-1 and XR-1 - Unite Cop...
Creating next-gen VR and MR experiences using Varjo VR-1 and XR-1 - Unite Cop...
 
3D Technology
3D Technology 3D Technology
3D Technology
 
OTOY GTC17 Presentation Slides: "The Future of GPU Rendering"
OTOY GTC17 Presentation Slides: "The Future of GPU Rendering"OTOY GTC17 Presentation Slides: "The Future of GPU Rendering"
OTOY GTC17 Presentation Slides: "The Future of GPU Rendering"
 
[Paper Presentation] FoveAR: Combining an Optically See-Through Near-Eye Disp...
[Paper Presentation] FoveAR: Combining an Optically See-Through Near-Eye Disp...[Paper Presentation] FoveAR: Combining an Optically See-Through Near-Eye Disp...
[Paper Presentation] FoveAR: Combining an Optically See-Through Near-Eye Disp...
 
Visual Mapping and Collision Avoidance Dynamic Environments in Dynamic Enviro...
Visual Mapping and Collision Avoidance Dynamic Environments in Dynamic Enviro...Visual Mapping and Collision Avoidance Dynamic Environments in Dynamic Enviro...
Visual Mapping and Collision Avoidance Dynamic Environments in Dynamic Enviro...
 
3D Workshop
3D Workshop3D Workshop
3D Workshop
 
Recent Trends in Signal and Image Processing - Applications
Recent Trends in Signal and Image Processing - ApplicationsRecent Trends in Signal and Image Processing - Applications
Recent Trends in Signal and Image Processing - Applications
 
VR digest. June 2018
VR digest. June 2018VR digest. June 2018
VR digest. June 2018
 
Hacking for salone: drone races
Hacking for salone: drone racesHacking for salone: drone races
Hacking for salone: drone races
 
Design the implementation of Robotic Simulator: Goalkeeper.
Design the implementation of Robotic Simulator: Goalkeeper.Design the implementation of Robotic Simulator: Goalkeeper.
Design the implementation of Robotic Simulator: Goalkeeper.
 
Virtual_Reality_New.pptx
Virtual_Reality_New.pptxVirtual_Reality_New.pptx
Virtual_Reality_New.pptx
 
OTOY Presentation - 2015 NVIDIA GPU Technology Conference - March 17 2015
OTOY Presentation - 2015 NVIDIA GPU Technology Conference - March 17 2015OTOY Presentation - 2015 NVIDIA GPU Technology Conference - March 17 2015
OTOY Presentation - 2015 NVIDIA GPU Technology Conference - March 17 2015
 
The mag pi-issue-28-en
The mag pi-issue-28-enThe mag pi-issue-28-en
The mag pi-issue-28-en
 
THE THIRD EYE-Presentation
THE THIRD EYE-PresentationTHE THIRD EYE-Presentation
THE THIRD EYE-Presentation
 
"Image Sensor Formats and Interfaces for IoT Applications," a Presentation fr...
"Image Sensor Formats and Interfaces for IoT Applications," a Presentation fr..."Image Sensor Formats and Interfaces for IoT Applications," a Presentation fr...
"Image Sensor Formats and Interfaces for IoT Applications," a Presentation fr...
 
Discovering The Unknown Aspects Of Nuke
Discovering The Unknown Aspects Of NukeDiscovering The Unknown Aspects Of Nuke
Discovering The Unknown Aspects Of Nuke
 
Raskar Computational Camera Fall 2009 Lecture 01
Raskar Computational Camera Fall 2009 Lecture 01Raskar Computational Camera Fall 2009 Lecture 01
Raskar Computational Camera Fall 2009 Lecture 01
 
Datt 2501 week 11
Datt 2501 week 11Datt 2501 week 11
Datt 2501 week 11
 
15793804.ppt
15793804.ppt15793804.ppt
15793804.ppt
 

Recently uploaded

Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
Matthew Sinclair
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
Zilliz
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
Neo4j
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
Neo4j
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
Claudio Di Ciccio
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
名前 です男
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 

Recently uploaded (20)

Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 

Robots that see like humans

  • 1. Robots that see likeRobots that see like humanshumans Real Time Stereo Vision With ZED Camera on Nvidia Jetson TX1 Walter Lucetti myzhar@robot-home.it
  • 2. Summary 21/05/2016Officine Robotiche 2016 2 WalterLucetti–myzhar@robot-home.it Live Demo Conclusions Introduction Stereo “Binocular” Vision Robotic Stereo Vision “Simplified” Stereo Vision Pin Hole Camera model Stereo Vision camera model Stereo Vision process A Robotic Stereo Vision System Nvidia Jetson TX1 Stereolabs ZED camera Stereolabs ZED SDK Stereolabs ZED engine Simple Code example
  • 4. Introduction 4 WalterLucetti–myzhar@robot-home.it Can a robot replicate the complicated human binocular vision system? 21/05/2016Officine Robotiche 2016
  • 5. Stereo “Binocular” Vision 5 [from Wikipedia: Binocular vision] Vision made with TWO “EYES” It gives a “creature” a spare eye in case one is damaged It gives a wider field of view It can give stereopsis in which binocular disparity (or parallax) provided by the two eyes' different positions on the head gives precise depth perception It allows a creature to see more of, or all of, an object behind an obstacle It gives binocular summation in which the ability to detect faint objects is enhanced WalterLucetti–myzhar@robot-home.it 21/05/2016Officine Robotiche 2016
  • 6. Robotic Stereo Vision 6 How to replicate Human Stereo Vision? Two synchronized camera sensors A solid mechanical structure A powerful elaboration system and if we want to be more precise, but we want to complicate the system: Two motors to replicate vergence capability WalterLucetti–myzhar@robot-home.it 21/05/2016Officine Robotiche 2016
  • 8. “Simplified” Stereo Vision 8 WalterLucetti–myzhar@robot-home.it A complete Stereo Vision system has vergence capability, but is too complicated We will study a Simplified Stereo Vision system where cameras cannot rotate 21/05/2016Officine Robotiche 2016
  • 9. 9 WalterLucetti–myzhar@robot-home.it Pin hole camera model Camera Plane Optical Axis Image coordinates World coordinates World to image Image to world Without “Z” we cannot estimate the real dimension of an object using a single camera! “f” can be estimated calibrating the camera system This is a simplified camera model that does not take care of Optical Distorsion and Sensor Imperfections 21/05/2016Officine Robotiche 2016 u= f ∗x z v= f ∗y z x= u∗z f y= v∗z f
  • 10. 10 WalterLucetti–myzhar@robot-home.it Stereo Vision model Very important parameter: ● Baseline: b From triangles similarity: Very important value: ● Disparity: D = ul - ur From disparity we can calculate how much a point is far from a camera: THE “Z” VALUE!!! 21/05/2016Officine Robotiche 2016 f Z P = ul X P f Z P = −ur b−X P ZP= b∗ f ul−ur
  • 11. Calculate “Disparity” (D) for each point of the image 11 WalterLucetti–myzhar@robot-home.it Stereo Vision process Calculate the depth (Z) of each point of the image Calculate X and Y of each point of the image Algorithm MATCHING REQUIRES A LOT OF COMPUTATIONAL POWER D = ul - ur 21/05/2016Officine Robotiche 2016
  • 12. 12 WalterLucetti–myzhar@robot-home.it Stereo Vision summary Allows to calculate real world coordinate of an object Requires a solid mechanical structure Requires a precise calibration of the optical system Requires a lot of computational power … Is more complicated than what seen until now 21/05/2016Officine Robotiche 2016
  • 13. A Robotic Stereo Vision system13
  • 14. 14 WalterLucetti–myzhar@robot-home.it A Robotic Stereo Vision System Nvidia Jetson TX1 www.nvidia.com/object/jetson-embedded- systems.html Stereolabs ZED www.stereolabs.com 21/05/2016Officine Robotiche 2016
  • 15. 15 WalterLucetti–myzhar@robot-home.it Nvidia Jetson TK1 Main features Nvidia Tegra X1 SOC NVIDIA Maxwell GPU with 256 CUDA cores NVIDIA 4-Plus-1™ 2.3 Ghz quad- core ARM® Cortex™-A15 CPU 4 GB LPDDR4 Memory 16 GB eMMC 5.1 Flash Storage 1 full-size SD/MMC connector 1 full-size HDMI port 1 USB 2.0 port, micro AB 1 USB 3.0 port, A 1 RTL8111GS Realtek GigE LAN GPIO, SPI, I2C, UART, CAN WiFi & Bluetooth connection ...  Native OpenCV support with GPU module for Real Time computer vision  ROS enabled  Ubuntu powered and more...  Android  ... 21/05/2016Officine Robotiche 2016
  • 16. 16 WalterLucetti–myzhar@robot-home.it Stereolabs ZED camera Main features Auto calibrating and auto sync USB 3.0 High Res at high FPS 2208x1242 15 Hz 1920x1080 30 Hz 1280x720 60 Hz 640x480 120 Hz Simple and well documented C++ SDK Automatic Depth Map generation 3D Range: 1 m to 20 m (12 cm baseline) Outdoor and indoor Jetson TX1 driver ROS driver OpenCV support 21/05/2016Officine Robotiche 2016
  • 17. 17 WalterLucetti–myzhar@robot-home.it Stereolabs ZED SDK C++ Classes and APIs for Linux and Windows 2 main classes and 5 support classes Main classes: Camera: the main class to use the ZED camera Mat: the class to store image data in GPU and CPU memory spaces Support classes: CamParameters: calibration params for the two sensors StereoParameters: calibration params for stereo processing resolution: dimensions of the images float3Struct: 3D point uchar3Struct: RGB pixel Current version: 0.9.3-beta for Linux and Windows, 0.9.3-alpha for Jetson TX1 21/05/2016Officine Robotiche 2016
  • 18. 18 WalterLucetti–myzhar@robot-home.it Stereolabs ZED engine Stereo results are available in GPU memory Direct processing by CUDA or download to CPU memory for CPU processing 21/05/2016Officine Robotiche 2016
  • 19. 19 WalterLucetti–myzhar@robot-home.it Stereolabs ZED tools ZED Explorer ZED Depth Viewer 21/05/2016Officine Robotiche 2016
  • 20. 20 WalterLucetti–myzhar@robot-home.it Simple code example //ZED Includes #include <zed/Camera.hpp> int main(int argc, char **argv) { sl::zed::SENSING_MODE dm_type = sl::zed::RAW; sl::zed::Camera* zed; // Camera object creation zed = new sl::zed::Camera(sl::zed::HD2K); // We can use different resolutions: // HD2K HD1080 HD720 VGA // Sizes of the images int width = zed->getImageSize().width; int height = zed->getImageSize().height; // Initialization of the camera sl::zed::ERRCODE err = zed->init( sl::zed::MODE::PERFORMANCE ); if (err != sl::zed::SUCCESS) { delete zed; return 1; } // Stereo processing zed->grab(dm_type); // CPU Data sl::zed::Mat depth_cpu; sl::zed::Mat left_cpu; sl::zed::Mat right_cpu; // Data acquiring on CPU memory depth_cpu = zed->retrieveMeasure(sl::MEASURE::DEPTH); left_cpu = zed->retrieveImage(sl::SIDE::LEFT); right_cpu = zed->retrieveImage(sl::SIDE::RIGHT); // GPU Data sl::zed::Mat depth_gpu; sl::zed::Mat left_gpu; sl::zed::Mat right_gpu; // Data acquiring on GPU memory depth_cpu = zed->retrieveMeasure_gpu(sl::MEASURE::DEPTH); left_cpu = zed->retrieveImage_gpu(sl::SIDE::LEFT); right_cpu = zed->retrieveImage_gpu(sl::SIDE::RIGHT); return 0; } 21/05/2016Officine Robotiche 2016
  • 23. 23 WalterLucetti–myzhar@robot-home.it Conclusions With Stereo Vision A robot can see obstacles A robot can measure obstacles A robot can localize obstacles Stereo Vision requires a lot of mathematical elaborations a lot of computational power a solid mechanical structure so Nvidia Jetson TX1 with Stereolabs ZED is a really amazing solution for Robotic Stereo Vision! 21/05/2016Officine Robotiche 2016
  • 24. The End! OR THANK YOU FOR YOUR ATTENTION! Walter Lucetti http://myzharbot.robot-home.it GitHub @myzhar Youtube Myzhar Twitter @myzhar Facebook robothome 24 21/05/2016Officine Robotiche 2016