SlideShare a Scribd company logo
© 2021 Skydio
Introduction To Simultaneous
Localization and Mapping (SLAM)
Gareth Cross
May, 2021
© 2021 Skydio
What is SLAM?
2
Simultaneous
Localization and Mapping
Recover state of a vehicle or
sensor platform, usually over
multiple time-steps.
Recover location of landmarks in
some common reference frame.
Simultaneous: We must do these tasks at the same time, as both quantities are
initially unknown.
© 2021 Skydio
An age-old practice
3
Image Source: A History of Ancient Geography among the Greeks and Romans from the Earliest Ages till the Fall of the Roman
Empire via Wikipedia
© 2021 Skydio 4
Image Source: COLMAP / Schönberger, Johannes Lutz and Frahm, Jan-Michael, “Structure From Motion Revisited”, CVPR 2016
© 2021 Skydio
SLAM at Skydio
5
Visual Inertial Odometry (VIO) on the
Skydio drone, an embedded system.
© 2021 Skydio
SLAM vs. Localization
6
Image Source: E. Kaplan, C. Hergarty,
Understanding GPS Principles and Applications,
2005
Video Source: Skydio
© 2021 Skydio
Formulating a SLAM Problem
For every SLAM problem, we have two key ingredients:
1) One or more sensors:
7
Source: MatrixVision
Cameras
Source: Lord MicroStrain
Inertial Measurement Unit LiDAR/Range-finders
Source: Velodyne
RGB-D/Structured Light
Source: Occipital
© 2021 Skydio
Formulating a SLAM Problem
2) A set of states we wish to recover.
8
Ego-motion: Rotation,
position, velocity
World Structure (Map)
Image Source: DroneTest
Calibration Parameters
© 2021 Skydio
Sensor Selection
• Choice of sensor will drive many downstream design considerations.
• Consider the sensor measurement model:
9
Sensor output
Ego-motion
Noise
Calibration parameters
Map
© 2021 Skydio
High Level Goal
Take many measurements (possibly from many sensors), and recover the ego-motion,
map, and calibration parameters.
10
SLAM System
© 2021 Skydio
Example — Calibration
11
Intrinsic temperature distortion may also introduce
unexpected errors into vision estimates.
Image Source: Skydio
Tire inflation will affect the scale of wheel
odometry, as could slippage between the tire and
the road surface.
Image source: MotorTrend.com
Un-modelled extrinsic rotation between IMU and
camera may cause increased drift in a visual SLAM
pipeline.
Image source: MWee RF Microwave
© 2021 Skydio
Example — Rolling Shutter
When selecting a camera sensor for your platform, you have the choice of global or
rolling shutter.
12
Image credit: LucidVision
© 2021 Skydio
Example — Rolling Shutter
13
Rolling shutter deforms rigid objects like the
horizon line and the vehicle itself.
Global-shutter model:
Measured location in
image.
Camera projection
Pose of the camera at
time t0
Point in the world.
Rolling-shutter model:
Inclusion of higher-order derivatives in the measurement model increases
computational cost.
Transformation of world
points into sensor frame.
© 2021 Skydio
What about noise?
• All sensors exhibit some minimum amount of noise.
• We distinguish between noise and model error.
14
A random error that can only be
modeled via statistical means.
Example: thermal electrical noise.
Errors resulting from a limitation in our
sensor model.
Example: failure to include a calibration
parameter.
© 2021 Skydio
Uncertainty
• Owing to noise in the sensor inputs, SLAM is an inherently uncertain process.
• We can never recover the “true” states, only uncertain estimates of them.
• More measurements usually means reduced uncertainty…
• … But it also means increased computational cost.
15
© 2021 Skydio
The Map
• Choice of sensor may also influence map parameterization.
16
Collection of
photographs?
Image Source: Noah Snavely
2D LiDAR scans?
Image Source: B. Bellekens et al., A
Benchmark Survey of Rigid 3D Point Cloud
Registration Algorithms, 2015
3D range images?
Image Source: Skydio
© 2021 Skydio
Design Trade-offs
17
Computational cost
Sensor cost
Solution error
Where we’d like to be (impossible).
© 2021 Skydio
Factor Graphs
• Factor Graphs are a convenient method of graphically representing a SLAM problem.
18
Nodes represent states.
Edges (factors) represent
information about the states, in
the form of measurements or
priors.
Factors may be unary,
binary, ternary, etc…
In a SLAM problem, we will
typically have nodes for our ego-
motion, map, and calibration
parameters.
© 2021 Skydio
Factor Graphs
There is a mapping from the factor graph to our sensor measurements:
19
© 2021 Skydio
Real Example: Bundle Adjustment (BA)
• A form of Structure from Motion (SFM).
• Leverage projective geometry to
recover 3D landmarks and poses from
2D feature associations.
• Highly scalable and can be quite
accurate.
• Using marginalization the compute cost
can be bounded.
20
Image source: Theia SFM
For more details on SFM, see Richard Szeliski’s book as a jumping off point.
© 2021 Skydio
Structure From Motion (SFM)
21
Simultaneous
Localization and Mapping
Recover state of a vehicle or
sensor platform, usually over
multiple time-steps.
Recover location of landmarks in
some common reference frame.
Recover camera pose with
respect to map points.
Triangulate map points
using camera poses.
Bundle Adjustment is a form of optimization that does these steps jointly.
© 2021 Skydio
Typical SLAM Pipeline w/ BA
22
Compute feature
associations
Map
Compute pose of camera
Outlier rejection
Bundle
Adjustment
(Optimization)
Keyframes
Incoming
frames
t
t -1
t - 2
Keyframes store our estimates of
the ego-motion.
1
2 3
4
© 2021 Skydio
How do we get feature associations?
23
Descriptor Matching
Examples: SIFT, KAZE, ORB, SuperPoint
Image Source: Georgia Tech
Feature Tracking / Flow
Examples: Optical Flow, Lucas Kanade Tracking, FlowNet
© 2021 Skydio
Design Trade-offs
A “rule of thumb” principle to consider in selecting features (axes not to scale):
24
Computational Cost
Robustness
Lucas-Kanade
SIFT
ORB
Deep Networks are somewhat difficult to place since
they offer an adjustable cost-robustness trade-off.
KAZE
© 2021 Skydio
Outliers in Feature Association
25
© 2021 Skydio
Outliers
• Outliers: Data that does not agree with our sensor model.
• How do we deal with them?
• Let’s review a (very simple) toy problem:
26
State: alpha and beta
Measurement
© 2021 Skydio
Toy Problem
27
© 2021 Skydio
Toy Problem
28
© 2021 Skydio
RANSAC (Random Sample Consensus)
29
© 2021 Skydio
RANSAC
30
© 2021 Skydio
RANSAC
31
© 2021 Skydio
RANSAC
32
© 2021 Skydio
RANSAC
33
© 2021 Skydio
RANSAC
34
© 2021 Skydio
RANSAC
35
© 2021 Skydio
RANSAC
36
?
© 2021 Skydio
RANSAC
• Pros:
• Dead simple to implement: Draw K examples, solve, count, repeat.
• Easily wrap around an existing method.
• Trivially parallelized. Have more CPU time? Sample more.
• Cons:
• Relatively weak guarantees.
• Can require a lot of iterations for high outlier fractions or models with a large K.
• Hyper-parameters need tuning.
37
… but, still quite useful in practice.
© 2021 Skydio
RANSAC
38
0
150
300
450
600
750
0% 10% 20% 30% 40% 50% 60% 70% 80%
# Iterations vs. Outlier Fraction
2 Pts 3 Pts 4 Pts
© 2021 Skydio
Typical SLAM Pipeline w/ BA
39
Compute feature
associations
Map
Compute pose of camera
Outlier rejection
Bundle
Adjustment
(Optimization)
Keyframes
Incoming
frames
t
t -1
t - 2
1
2 3
4
© 2021 Skydio
Typical SLAM Pipeline w/ BA
40
Compute feature
associations
Map
Compute pose of camera
Outlier rejection
Bundle
Adjustment
(Optimization)
Keyframes
Incoming
frames
t
t -1
t - 2
1
2 3
4
Typical algorithms:
• PnP
• Essential Matrix
• Homography
© 2021 Skydio
BA as a Factor Graph
41
Bundle of rays
Position, orientation
Camera calibrations
Landmarks
© 2021 Skydio
BA as a SLAM Problem
• How do we actually recover the states, given the measurements and our model?
42
?
Feature tracks form a
‘sensor’ measurement.
Camera poses, landmark
positions, calibration
parameters.
Measurement model is given by the
projective geometry of the problem.
We need to fill in this box.
© 2021 Skydio
Solving the Problem
• We can use a technique called Nonlinear Least Squares to do this.
• There are many ways to formulate SLAM problems generally, and we cannot review
them all in the time allotted.
• However, this method is widely applicable, typically fast, and is straightforward to
implement.
• For a much more comprehensive review, I highly recommend: State Estimation for
Robotics, Tim Barfoot, 2015 (Free online)
43
© 2021 Skydio
Assumptions
• We will convert our measurement models into a system of equations.
• Prior to that, we will make an additional assumption - that the measurement noise is
drawn from a zero-mean gaussian.
44
• We will also assume we have an initial guess for our states. In a time recursive system,
this could come from the previous frame.
© 2021 Skydio
Nonlinear Least Squares
We re-write our measurements as a residual functions:
45
The i’th camera pose, observing the j’th landmark.
And concatenate these into a large vector:
We take the squared Mahalanobis norm,
weighting by our assumed measurement
uncertainty.
© 2021 Skydio
Nonlinear Least Squares
Our ‘best estimate’ will occur when the objective function is minimized:
46
Because f is usually going to be non-linear for most SLAM problems,
we end up linearizing the problem and taking a series of steps.
Jacobian J is the linearization of f about
our initial guess.
© 2021 Skydio
Nonlinear Least Squares
The solution at each iteration:
47
When linearized about the converged solution, the inverted Hessian doubles as a first order
approximation of the marginal covariance of our estimate: *
* See Barfoot, Chapters 3 and 4.
First order approximation of the Hessian. Inversion
has complexity O(|y|3)
Each residual is weighted by its inverse uncertainty.
© 2021 Skydio
Sparsity
48
Binary
Factor
© 2021 Skydio
Nonlinear Least Squares
• In the linearized form, the problem is ‘easy’ to solve.
• Reduces to iterated application of weighted least squares.
• Generally, cost of solving for updates is cubic in the number of states:
• However, in some problems (like BA) there is sparsity we can leverage to improve
this.
• Huge number of problems can be cast this way (given an initial guess).
• Can run in a fixed memory footprint → suitable for embedded use case.
• With the appropriate Σ weights we can show the NLS produces an approximate estimate
of the uncertainty in our solution.
49
© 2021 Skydio
Caveats
• Remember our assumptions:
• We needed an initial guess to linearize the system. If the guess is poor, the gradient
used in the optimizer will steer our solution in the wrong direction.
• Additionally, the covariance estimate we get out is only as good as the linearization
point.
• We also assumed Gaussian noise on the measurements.
• Outliers must be removed, or they will dominate the optimization.
50
© 2021 Skydio
Linearization
• It is worth considering the effect of linearization on our uncertainty estimate.
• For a Gaussian variable u and non-linear vector function g, we can approximate:
51
Because we linearized, the fidelity of our first-order Σ
relies on this approximation.
See Barfoot, Chapter 2.
© 2021 Skydio
Tools
• Some relevant tools:
• GTSAM, open source package created by Frank Dellaert et al.
• Allows specification of problem in factor graph format, built for SLAM.
• G2O
• Includes solutions for SLAM and BA.
• Ceres Solver, produced by Google
• General non-linear least-squares optimizer.
• Python
• scipy.optimize.least_squares
52
© 2021 Skydio
BA on Real-Time Systems
• BA can operate at small and large scale.
• Small: A few image frames on a mobile phone.
• Large: Tens of thousand of images at city-scale.
• Fairly straightforward to implement.
• But:
• Robust association may require expensive descriptors.
• After feature association, we must devote nontrivial compute to outlier rejection.
• Update rate limited to camera frame rate (slow).
53
© 2021 Skydio
VIO as a Factor Graph: BA + IMU
54
Bundle of rays
Position, orientation, velocity
Biases/IMU calibration parameters
Camera calibrations
Landmarks
IMU, motion model
Source: MatrixVision
Cameras
Source: Lord MicroStrain
Inertial Measurement Unit
© 2021 Skydio
VIO
• One of the most successful adaptations of vision research to the market.
• Present in smart phones, AR/VR headsets, drones, autonomous vehicles.
• Camera and IMU are highly complementary:
• Camera:
• Low update rate, high compute cost, subject to outlier data.
• Able to relocalize accurately at large distances.
• IMU:
• High update rate, low compute cost, few outliers (maybe saturation).
• Accurate over short intervals, but drifts over time.
• Able to recover attitude with respect to global reference frame (gravity).
55
© 2021 Skydio
VIO
56
Compute feature
associations
Map
Compute pose of camera
Outlier rejection
Bundle
Adjustment
(Optimization)
Keyframes
Incoming
frames
t
t -1
t - 2
IMU can deliver substantial value here.
© 2021 Skydio
BA/VIO Implementations
• Existing open-source implementations (not exhaustive):
• OpenMVG
• COLMAP Offline SFM and Multi-view Stereo (MVS)
• CMVS Multi-view Stereo
• ORB-SLAM2 Real-time SLAM featuring BA optimization
• PTAM One of the earliest functional visual-SLAM demos
• VINS-Mono VIO, runs on a mobile device
• Basalt VIO
• ROVIO VIO, example of a direct method
57
© 2021 Skydio
Fin
• Additional Reading:
• State Estimation for Robotics (Barfoot, 2015)
• Factor Graphs for Robot Perception (Dellaert and Kaess, 2017)
• Visual Odometry, (Scaramuzza and Fraundorfer, 2011)
• Probabilistic Robotics, (Thrun, Burgard, and Fox, 2005)
• GTSAM Software Library
• Questions? Feel free to reach out: gareth@skydio.com
58

More Related Content

What's hot

Video Multi-Object Tracking using Deep Learning
Video Multi-Object Tracking using Deep LearningVideo Multi-Object Tracking using Deep Learning
Video Multi-Object Tracking using Deep Learning
ShreyusPuthiyapurail
 
Computer vision introduction
Computer vision  introduction Computer vision  introduction
Computer vision introduction
Wael Badawy
 
Differential kinematics robotic
Differential kinematics  roboticDifferential kinematics  robotic
Differential kinematics robotic
dahmane sid ahmed
 
2018.02 intro to visual odometry
2018.02 intro to visual odometry2018.02 intro to visual odometry
2018.02 intro to visual odometry
BrianHoltPhD
 
Lidar in the adverse weather: dust, fog, snow and rain
Lidar in the adverse weather: dust, fog, snow and rainLidar in the adverse weather: dust, fog, snow and rain
Lidar in the adverse weather: dust, fog, snow and rain
Yu Huang
 
Aerial Robotics
Aerial RoboticsAerial Robotics
Aerial Robotics
Vijay Kumar Jadon
 
Robotics unit4 slides
Robotics unit4 slidesRobotics unit4 slides
Robotics unit4 slides
Janarthanan B
 
Understanding the world in 3D with AI.pdf
Understanding the world in 3D with AI.pdfUnderstanding the world in 3D with AI.pdf
Understanding the world in 3D with AI.pdf
Qualcomm Research
 
Fisheye/Omnidirectional View in Autonomous Driving IV
Fisheye/Omnidirectional View in Autonomous Driving IVFisheye/Omnidirectional View in Autonomous Driving IV
Fisheye/Omnidirectional View in Autonomous Driving IV
Yu Huang
 
Inverse kinematics
Inverse kinematicsInverse kinematics
Inverse kinematics
LINE+
 
Mobile Robot Vechiles
Mobile Robot VechilesMobile Robot Vechiles
Mobile Robot Vechiles
cairo university
 
Robot programming , accuracy ,repeatability and application
Robot programming , accuracy ,repeatability  and applicationRobot programming , accuracy ,repeatability  and application
Robot programming , accuracy ,repeatability and application
vishaldattKohir1
 
Robotics and machine vision system
Robotics and machine vision systemRobotics and machine vision system
Robotics and machine vision system
Gowsick Subramaniam
 
Object tracking final
Object tracking finalObject tracking final
Object tracking final
MrsShwetaBanait1
 
Introduction to multiple object tracking
Introduction to multiple object trackingIntroduction to multiple object tracking
Introduction to multiple object tracking
Fan Yang
 

What's hot (20)

Robot Programming
Robot ProgrammingRobot Programming
Robot Programming
 
Video Multi-Object Tracking using Deep Learning
Video Multi-Object Tracking using Deep LearningVideo Multi-Object Tracking using Deep Learning
Video Multi-Object Tracking using Deep Learning
 
Computer vision introduction
Computer vision  introduction Computer vision  introduction
Computer vision introduction
 
Mapping mobile robotics
Mapping mobile roboticsMapping mobile robotics
Mapping mobile robotics
 
Differential kinematics robotic
Differential kinematics  roboticDifferential kinematics  robotic
Differential kinematics robotic
 
2018.02 intro to visual odometry
2018.02 intro to visual odometry2018.02 intro to visual odometry
2018.02 intro to visual odometry
 
Lecture 09: SLAM
Lecture 09: SLAMLecture 09: SLAM
Lecture 09: SLAM
 
Lidar in the adverse weather: dust, fog, snow and rain
Lidar in the adverse weather: dust, fog, snow and rainLidar in the adverse weather: dust, fog, snow and rain
Lidar in the adverse weather: dust, fog, snow and rain
 
Robotics: 3D Movements
Robotics: 3D MovementsRobotics: 3D Movements
Robotics: 3D Movements
 
Aerial Robotics
Aerial RoboticsAerial Robotics
Aerial Robotics
 
Robotics unit4 slides
Robotics unit4 slidesRobotics unit4 slides
Robotics unit4 slides
 
Understanding the world in 3D with AI.pdf
Understanding the world in 3D with AI.pdfUnderstanding the world in 3D with AI.pdf
Understanding the world in 3D with AI.pdf
 
Fisheye/Omnidirectional View in Autonomous Driving IV
Fisheye/Omnidirectional View in Autonomous Driving IVFisheye/Omnidirectional View in Autonomous Driving IV
Fisheye/Omnidirectional View in Autonomous Driving IV
 
Control of a Quadcopter
Control of a QuadcopterControl of a Quadcopter
Control of a Quadcopter
 
Inverse kinematics
Inverse kinematicsInverse kinematics
Inverse kinematics
 
Mobile Robot Vechiles
Mobile Robot VechilesMobile Robot Vechiles
Mobile Robot Vechiles
 
Robot programming , accuracy ,repeatability and application
Robot programming , accuracy ,repeatability  and applicationRobot programming , accuracy ,repeatability  and application
Robot programming , accuracy ,repeatability and application
 
Robotics and machine vision system
Robotics and machine vision systemRobotics and machine vision system
Robotics and machine vision system
 
Object tracking final
Object tracking finalObject tracking final
Object tracking final
 
Introduction to multiple object tracking
Introduction to multiple object trackingIntroduction to multiple object tracking
Introduction to multiple object tracking
 

Similar to “Introduction to Simultaneous Localization and Mapping (SLAM),” a Presentation from Gareth Cross

“Introduction to Simultaneous Localization and Mapping (SLAM),” a Presentatio...
“Introduction to Simultaneous Localization and Mapping (SLAM),” a Presentatio...“Introduction to Simultaneous Localization and Mapping (SLAM),” a Presentatio...
“Introduction to Simultaneous Localization and Mapping (SLAM),” a Presentatio...
Edge AI and Vision Alliance
 
Fisheye Omnidirectional View in Autonomous Driving II
Fisheye Omnidirectional View in Autonomous Driving IIFisheye Omnidirectional View in Autonomous Driving II
Fisheye Omnidirectional View in Autonomous Driving II
Yu Huang
 
Optimized Rendering Techniques for Mobile VR
Optimized Rendering Techniques  for Mobile VROptimized Rendering Techniques  for Mobile VR
Optimized Rendering Techniques for Mobile VR
DevGAMM Conference
 
Zupt, LLC's SLAM and Optimal Sensor fusion
Zupt, LLC's SLAM and Optimal Sensor fusionZupt, LLC's SLAM and Optimal Sensor fusion
Zupt, LLC's SLAM and Optimal Sensor fusion
Robert Flaming, PCM®
 
Isvc08
Isvc08Isvc08
“Tools for Creating Next-Gen Computer Vision Apps on Snapdragon,” a Presentat...
“Tools for Creating Next-Gen Computer Vision Apps on Snapdragon,” a Presentat...“Tools for Creating Next-Gen Computer Vision Apps on Snapdragon,” a Presentat...
“Tools for Creating Next-Gen Computer Vision Apps on Snapdragon,” a Presentat...
Edge AI and Vision Alliance
 
“A Computer Vision System for Autonomous Satellite Maneuvering,” a Presentati...
“A Computer Vision System for Autonomous Satellite Maneuvering,” a Presentati...“A Computer Vision System for Autonomous Satellite Maneuvering,” a Presentati...
“A Computer Vision System for Autonomous Satellite Maneuvering,” a Presentati...
Edge AI and Vision Alliance
 
Point Cloud Processing: Estimating Normal Vectors and Curvature Indicators us...
Point Cloud Processing: Estimating Normal Vectors and Curvature Indicators us...Point Cloud Processing: Estimating Normal Vectors and Curvature Indicators us...
Point Cloud Processing: Estimating Normal Vectors and Curvature Indicators us...
Pirouz Nourian
 
Realtime pothole detection system using improved CNN Models
Realtime pothole detection system using improved CNN ModelsRealtime pothole detection system using improved CNN Models
Realtime pothole detection system using improved CNN Models
nithinsai2992
 
Multi sensor calibration by deep learning
Multi sensor calibration by deep learningMulti sensor calibration by deep learning
Multi sensor calibration by deep learning
Yu Huang
 
Recent and Planned Improvements to the System Advisor Model
Recent and Planned Improvements to the System Advisor ModelRecent and Planned Improvements to the System Advisor Model
Recent and Planned Improvements to the System Advisor Model
Sandia National Laboratories: Energy & Climate: Renewables
 
2 Prelaunch Assessment of the NG VCM.pptx
2 Prelaunch Assessment of the NG VCM.pptx2 Prelaunch Assessment of the NG VCM.pptx
2 Prelaunch Assessment of the NG VCM.pptxgrssieee
 
Explaining the decisions of image/video classifiers
Explaining the decisions of image/video classifiersExplaining the decisions of image/video classifiers
Explaining the decisions of image/video classifiers
VasileiosMezaris
 
Project seminar ppt_steelcasting
Project seminar ppt_steelcastingProject seminar ppt_steelcasting
Project seminar ppt_steelcasting
Rudra Narayan Paul
 
[AAAI2018] Multispectral Transfer Network: Unsupervised Depth Estimation for ...
[AAAI2018] Multispectral Transfer Network: Unsupervised Depth Estimation for ...[AAAI2018] Multispectral Transfer Network: Unsupervised Depth Estimation for ...
[AAAI2018] Multispectral Transfer Network: Unsupervised Depth Estimation for ...
KAIST
 
[AAAI2018] Multispectral Transfer Network: Unsupervised Depth Estimation for ...
[AAAI2018] Multispectral Transfer Network: Unsupervised Depth Estimation for ...[AAAI2018] Multispectral Transfer Network: Unsupervised Depth Estimation for ...
[AAAI2018] Multispectral Transfer Network: Unsupervised Depth Estimation for ...
KAIST
 
LiDAR-based Autonomous Driving III (by Deep Learning)
LiDAR-based Autonomous Driving III (by Deep Learning)LiDAR-based Autonomous Driving III (by Deep Learning)
LiDAR-based Autonomous Driving III (by Deep Learning)
Yu Huang
 
Point cloud mesh-investigation_report-lihang
Point cloud mesh-investigation_report-lihangPoint cloud mesh-investigation_report-lihang
Point cloud mesh-investigation_report-lihang
Lihang Li
 
Future guidelines the meteorological view - Isabel Martínez (AEMet)
Future guidelines the meteorological view - Isabel Martínez (AEMet)Future guidelines the meteorological view - Isabel Martínez (AEMet)
Future guidelines the meteorological view - Isabel Martínez (AEMet)
IrSOLaV Pomares
 

Similar to “Introduction to Simultaneous Localization and Mapping (SLAM),” a Presentation from Gareth Cross (20)

“Introduction to Simultaneous Localization and Mapping (SLAM),” a Presentatio...
“Introduction to Simultaneous Localization and Mapping (SLAM),” a Presentatio...“Introduction to Simultaneous Localization and Mapping (SLAM),” a Presentatio...
“Introduction to Simultaneous Localization and Mapping (SLAM),” a Presentatio...
 
Fisheye Omnidirectional View in Autonomous Driving II
Fisheye Omnidirectional View in Autonomous Driving IIFisheye Omnidirectional View in Autonomous Driving II
Fisheye Omnidirectional View in Autonomous Driving II
 
Optimized Rendering Techniques for Mobile VR
Optimized Rendering Techniques  for Mobile VROptimized Rendering Techniques  for Mobile VR
Optimized Rendering Techniques for Mobile VR
 
Zupt, LLC's SLAM and Optimal Sensor fusion
Zupt, LLC's SLAM and Optimal Sensor fusionZupt, LLC's SLAM and Optimal Sensor fusion
Zupt, LLC's SLAM and Optimal Sensor fusion
 
Isvc08
Isvc08Isvc08
Isvc08
 
“Tools for Creating Next-Gen Computer Vision Apps on Snapdragon,” a Presentat...
“Tools for Creating Next-Gen Computer Vision Apps on Snapdragon,” a Presentat...“Tools for Creating Next-Gen Computer Vision Apps on Snapdragon,” a Presentat...
“Tools for Creating Next-Gen Computer Vision Apps on Snapdragon,” a Presentat...
 
“A Computer Vision System for Autonomous Satellite Maneuvering,” a Presentati...
“A Computer Vision System for Autonomous Satellite Maneuvering,” a Presentati...“A Computer Vision System for Autonomous Satellite Maneuvering,” a Presentati...
“A Computer Vision System for Autonomous Satellite Maneuvering,” a Presentati...
 
3 1 wittmer_p_vsyst_pvpmc_2016
3 1 wittmer_p_vsyst_pvpmc_20163 1 wittmer_p_vsyst_pvpmc_2016
3 1 wittmer_p_vsyst_pvpmc_2016
 
Point Cloud Processing: Estimating Normal Vectors and Curvature Indicators us...
Point Cloud Processing: Estimating Normal Vectors and Curvature Indicators us...Point Cloud Processing: Estimating Normal Vectors and Curvature Indicators us...
Point Cloud Processing: Estimating Normal Vectors and Curvature Indicators us...
 
Realtime pothole detection system using improved CNN Models
Realtime pothole detection system using improved CNN ModelsRealtime pothole detection system using improved CNN Models
Realtime pothole detection system using improved CNN Models
 
Multi sensor calibration by deep learning
Multi sensor calibration by deep learningMulti sensor calibration by deep learning
Multi sensor calibration by deep learning
 
Recent and Planned Improvements to the System Advisor Model
Recent and Planned Improvements to the System Advisor ModelRecent and Planned Improvements to the System Advisor Model
Recent and Planned Improvements to the System Advisor Model
 
2 Prelaunch Assessment of the NG VCM.pptx
2 Prelaunch Assessment of the NG VCM.pptx2 Prelaunch Assessment of the NG VCM.pptx
2 Prelaunch Assessment of the NG VCM.pptx
 
Explaining the decisions of image/video classifiers
Explaining the decisions of image/video classifiersExplaining the decisions of image/video classifiers
Explaining the decisions of image/video classifiers
 
Project seminar ppt_steelcasting
Project seminar ppt_steelcastingProject seminar ppt_steelcasting
Project seminar ppt_steelcasting
 
[AAAI2018] Multispectral Transfer Network: Unsupervised Depth Estimation for ...
[AAAI2018] Multispectral Transfer Network: Unsupervised Depth Estimation for ...[AAAI2018] Multispectral Transfer Network: Unsupervised Depth Estimation for ...
[AAAI2018] Multispectral Transfer Network: Unsupervised Depth Estimation for ...
 
[AAAI2018] Multispectral Transfer Network: Unsupervised Depth Estimation for ...
[AAAI2018] Multispectral Transfer Network: Unsupervised Depth Estimation for ...[AAAI2018] Multispectral Transfer Network: Unsupervised Depth Estimation for ...
[AAAI2018] Multispectral Transfer Network: Unsupervised Depth Estimation for ...
 
LiDAR-based Autonomous Driving III (by Deep Learning)
LiDAR-based Autonomous Driving III (by Deep Learning)LiDAR-based Autonomous Driving III (by Deep Learning)
LiDAR-based Autonomous Driving III (by Deep Learning)
 
Point cloud mesh-investigation_report-lihang
Point cloud mesh-investigation_report-lihangPoint cloud mesh-investigation_report-lihang
Point cloud mesh-investigation_report-lihang
 
Future guidelines the meteorological view - Isabel Martínez (AEMet)
Future guidelines the meteorological view - Isabel Martínez (AEMet)Future guidelines the meteorological view - Isabel Martínez (AEMet)
Future guidelines the meteorological view - Isabel Martínez (AEMet)
 

More from Edge AI and Vision Alliance

“Deploying Large Models on the Edge: Success Stories and Challenges,” a Prese...
“Deploying Large Models on the Edge: Success Stories and Challenges,” a Prese...“Deploying Large Models on the Edge: Success Stories and Challenges,” a Prese...
“Deploying Large Models on the Edge: Success Stories and Challenges,” a Prese...
Edge AI and Vision Alliance
 
“Scaling Vision-based Edge AI Solutions: From Prototype to Global Deployment,...
“Scaling Vision-based Edge AI Solutions: From Prototype to Global Deployment,...“Scaling Vision-based Edge AI Solutions: From Prototype to Global Deployment,...
“Scaling Vision-based Edge AI Solutions: From Prototype to Global Deployment,...
Edge AI and Vision Alliance
 
“What’s Next in On-device Generative AI,” a Presentation from Qualcomm
“What’s Next in On-device Generative AI,” a Presentation from Qualcomm“What’s Next in On-device Generative AI,” a Presentation from Qualcomm
“What’s Next in On-device Generative AI,” a Presentation from Qualcomm
Edge AI and Vision Alliance
 
“Learning Compact DNN Models for Embedded Vision,” a Presentation from the Un...
“Learning Compact DNN Models for Embedded Vision,” a Presentation from the Un...“Learning Compact DNN Models for Embedded Vision,” a Presentation from the Un...
“Learning Compact DNN Models for Embedded Vision,” a Presentation from the Un...
Edge AI and Vision Alliance
 
“Introduction to Computer Vision with CNNs,” a Presentation from Mohammad Hag...
“Introduction to Computer Vision with CNNs,” a Presentation from Mohammad Hag...“Introduction to Computer Vision with CNNs,” a Presentation from Mohammad Hag...
“Introduction to Computer Vision with CNNs,” a Presentation from Mohammad Hag...
Edge AI and Vision Alliance
 
“Selecting Tools for Developing, Monitoring and Maintaining ML Models,” a Pre...
“Selecting Tools for Developing, Monitoring and Maintaining ML Models,” a Pre...“Selecting Tools for Developing, Monitoring and Maintaining ML Models,” a Pre...
“Selecting Tools for Developing, Monitoring and Maintaining ML Models,” a Pre...
Edge AI and Vision Alliance
 
“Building Accelerated GStreamer Applications for Video and Audio AI,” a Prese...
“Building Accelerated GStreamer Applications for Video and Audio AI,” a Prese...“Building Accelerated GStreamer Applications for Video and Audio AI,” a Prese...
“Building Accelerated GStreamer Applications for Video and Audio AI,” a Prese...
Edge AI and Vision Alliance
 
“Understanding, Selecting and Optimizing Object Detectors for Edge Applicatio...
“Understanding, Selecting and Optimizing Object Detectors for Edge Applicatio...“Understanding, Selecting and Optimizing Object Detectors for Edge Applicatio...
“Understanding, Selecting and Optimizing Object Detectors for Edge Applicatio...
Edge AI and Vision Alliance
 
“Introduction to Modern LiDAR for Machine Perception,” a Presentation from th...
“Introduction to Modern LiDAR for Machine Perception,” a Presentation from th...“Introduction to Modern LiDAR for Machine Perception,” a Presentation from th...
“Introduction to Modern LiDAR for Machine Perception,” a Presentation from th...
Edge AI and Vision Alliance
 
“Vision-language Representations for Robotics,” a Presentation from the Unive...
“Vision-language Representations for Robotics,” a Presentation from the Unive...“Vision-language Representations for Robotics,” a Presentation from the Unive...
“Vision-language Representations for Robotics,” a Presentation from the Unive...
Edge AI and Vision Alliance
 
“ADAS and AV Sensors: What’s Winning and Why?,” a Presentation from TechInsights
“ADAS and AV Sensors: What’s Winning and Why?,” a Presentation from TechInsights“ADAS and AV Sensors: What’s Winning and Why?,” a Presentation from TechInsights
“ADAS and AV Sensors: What’s Winning and Why?,” a Presentation from TechInsights
Edge AI and Vision Alliance
 
“Computer Vision in Sports: Scalable Solutions for Downmarkets,” a Presentati...
“Computer Vision in Sports: Scalable Solutions for Downmarkets,” a Presentati...“Computer Vision in Sports: Scalable Solutions for Downmarkets,” a Presentati...
“Computer Vision in Sports: Scalable Solutions for Downmarkets,” a Presentati...
Edge AI and Vision Alliance
 
“Detecting Data Drift in Image Classification Neural Networks,” a Presentatio...
“Detecting Data Drift in Image Classification Neural Networks,” a Presentatio...“Detecting Data Drift in Image Classification Neural Networks,” a Presentatio...
“Detecting Data Drift in Image Classification Neural Networks,” a Presentatio...
Edge AI and Vision Alliance
 
“Deep Neural Network Training: Diagnosing Problems and Implementing Solutions...
“Deep Neural Network Training: Diagnosing Problems and Implementing Solutions...“Deep Neural Network Training: Diagnosing Problems and Implementing Solutions...
“Deep Neural Network Training: Diagnosing Problems and Implementing Solutions...
Edge AI and Vision Alliance
 
“AI Start-ups: The Perils of Fishing for Whales (War Stories from the Entrepr...
“AI Start-ups: The Perils of Fishing for Whales (War Stories from the Entrepr...“AI Start-ups: The Perils of Fishing for Whales (War Stories from the Entrepr...
“AI Start-ups: The Perils of Fishing for Whales (War Stories from the Entrepr...
Edge AI and Vision Alliance
 
“Bias in Computer Vision—It’s Bigger Than Facial Recognition!,” a Presentatio...
“Bias in Computer Vision—It’s Bigger Than Facial Recognition!,” a Presentatio...“Bias in Computer Vision—It’s Bigger Than Facial Recognition!,” a Presentatio...
“Bias in Computer Vision—It’s Bigger Than Facial Recognition!,” a Presentatio...
Edge AI and Vision Alliance
 
“Sensor Fusion Techniques for Accurate Perception of Objects in the Environme...
“Sensor Fusion Techniques for Accurate Perception of Objects in the Environme...“Sensor Fusion Techniques for Accurate Perception of Objects in the Environme...
“Sensor Fusion Techniques for Accurate Perception of Objects in the Environme...
Edge AI and Vision Alliance
 
“Updating the Edge ML Development Process,” a Presentation from Samsara
“Updating the Edge ML Development Process,” a Presentation from Samsara“Updating the Edge ML Development Process,” a Presentation from Samsara
“Updating the Edge ML Development Process,” a Presentation from Samsara
Edge AI and Vision Alliance
 
“Combating Bias in Production Computer Vision Systems,” a Presentation from R...
“Combating Bias in Production Computer Vision Systems,” a Presentation from R...“Combating Bias in Production Computer Vision Systems,” a Presentation from R...
“Combating Bias in Production Computer Vision Systems,” a Presentation from R...
Edge AI and Vision Alliance
 
“Developing an Embedded Vision AI-powered Fitness System,” a Presentation fro...
“Developing an Embedded Vision AI-powered Fitness System,” a Presentation fro...“Developing an Embedded Vision AI-powered Fitness System,” a Presentation fro...
“Developing an Embedded Vision AI-powered Fitness System,” a Presentation fro...
Edge AI and Vision Alliance
 

More from Edge AI and Vision Alliance (20)

“Deploying Large Models on the Edge: Success Stories and Challenges,” a Prese...
“Deploying Large Models on the Edge: Success Stories and Challenges,” a Prese...“Deploying Large Models on the Edge: Success Stories and Challenges,” a Prese...
“Deploying Large Models on the Edge: Success Stories and Challenges,” a Prese...
 
“Scaling Vision-based Edge AI Solutions: From Prototype to Global Deployment,...
“Scaling Vision-based Edge AI Solutions: From Prototype to Global Deployment,...“Scaling Vision-based Edge AI Solutions: From Prototype to Global Deployment,...
“Scaling Vision-based Edge AI Solutions: From Prototype to Global Deployment,...
 
“What’s Next in On-device Generative AI,” a Presentation from Qualcomm
“What’s Next in On-device Generative AI,” a Presentation from Qualcomm“What’s Next in On-device Generative AI,” a Presentation from Qualcomm
“What’s Next in On-device Generative AI,” a Presentation from Qualcomm
 
“Learning Compact DNN Models for Embedded Vision,” a Presentation from the Un...
“Learning Compact DNN Models for Embedded Vision,” a Presentation from the Un...“Learning Compact DNN Models for Embedded Vision,” a Presentation from the Un...
“Learning Compact DNN Models for Embedded Vision,” a Presentation from the Un...
 
“Introduction to Computer Vision with CNNs,” a Presentation from Mohammad Hag...
“Introduction to Computer Vision with CNNs,” a Presentation from Mohammad Hag...“Introduction to Computer Vision with CNNs,” a Presentation from Mohammad Hag...
“Introduction to Computer Vision with CNNs,” a Presentation from Mohammad Hag...
 
“Selecting Tools for Developing, Monitoring and Maintaining ML Models,” a Pre...
“Selecting Tools for Developing, Monitoring and Maintaining ML Models,” a Pre...“Selecting Tools for Developing, Monitoring and Maintaining ML Models,” a Pre...
“Selecting Tools for Developing, Monitoring and Maintaining ML Models,” a Pre...
 
“Building Accelerated GStreamer Applications for Video and Audio AI,” a Prese...
“Building Accelerated GStreamer Applications for Video and Audio AI,” a Prese...“Building Accelerated GStreamer Applications for Video and Audio AI,” a Prese...
“Building Accelerated GStreamer Applications for Video and Audio AI,” a Prese...
 
“Understanding, Selecting and Optimizing Object Detectors for Edge Applicatio...
“Understanding, Selecting and Optimizing Object Detectors for Edge Applicatio...“Understanding, Selecting and Optimizing Object Detectors for Edge Applicatio...
“Understanding, Selecting and Optimizing Object Detectors for Edge Applicatio...
 
“Introduction to Modern LiDAR for Machine Perception,” a Presentation from th...
“Introduction to Modern LiDAR for Machine Perception,” a Presentation from th...“Introduction to Modern LiDAR for Machine Perception,” a Presentation from th...
“Introduction to Modern LiDAR for Machine Perception,” a Presentation from th...
 
“Vision-language Representations for Robotics,” a Presentation from the Unive...
“Vision-language Representations for Robotics,” a Presentation from the Unive...“Vision-language Representations for Robotics,” a Presentation from the Unive...
“Vision-language Representations for Robotics,” a Presentation from the Unive...
 
“ADAS and AV Sensors: What’s Winning and Why?,” a Presentation from TechInsights
“ADAS and AV Sensors: What’s Winning and Why?,” a Presentation from TechInsights“ADAS and AV Sensors: What’s Winning and Why?,” a Presentation from TechInsights
“ADAS and AV Sensors: What’s Winning and Why?,” a Presentation from TechInsights
 
“Computer Vision in Sports: Scalable Solutions for Downmarkets,” a Presentati...
“Computer Vision in Sports: Scalable Solutions for Downmarkets,” a Presentati...“Computer Vision in Sports: Scalable Solutions for Downmarkets,” a Presentati...
“Computer Vision in Sports: Scalable Solutions for Downmarkets,” a Presentati...
 
“Detecting Data Drift in Image Classification Neural Networks,” a Presentatio...
“Detecting Data Drift in Image Classification Neural Networks,” a Presentatio...“Detecting Data Drift in Image Classification Neural Networks,” a Presentatio...
“Detecting Data Drift in Image Classification Neural Networks,” a Presentatio...
 
“Deep Neural Network Training: Diagnosing Problems and Implementing Solutions...
“Deep Neural Network Training: Diagnosing Problems and Implementing Solutions...“Deep Neural Network Training: Diagnosing Problems and Implementing Solutions...
“Deep Neural Network Training: Diagnosing Problems and Implementing Solutions...
 
“AI Start-ups: The Perils of Fishing for Whales (War Stories from the Entrepr...
“AI Start-ups: The Perils of Fishing for Whales (War Stories from the Entrepr...“AI Start-ups: The Perils of Fishing for Whales (War Stories from the Entrepr...
“AI Start-ups: The Perils of Fishing for Whales (War Stories from the Entrepr...
 
“Bias in Computer Vision—It’s Bigger Than Facial Recognition!,” a Presentatio...
“Bias in Computer Vision—It’s Bigger Than Facial Recognition!,” a Presentatio...“Bias in Computer Vision—It’s Bigger Than Facial Recognition!,” a Presentatio...
“Bias in Computer Vision—It’s Bigger Than Facial Recognition!,” a Presentatio...
 
“Sensor Fusion Techniques for Accurate Perception of Objects in the Environme...
“Sensor Fusion Techniques for Accurate Perception of Objects in the Environme...“Sensor Fusion Techniques for Accurate Perception of Objects in the Environme...
“Sensor Fusion Techniques for Accurate Perception of Objects in the Environme...
 
“Updating the Edge ML Development Process,” a Presentation from Samsara
“Updating the Edge ML Development Process,” a Presentation from Samsara“Updating the Edge ML Development Process,” a Presentation from Samsara
“Updating the Edge ML Development Process,” a Presentation from Samsara
 
“Combating Bias in Production Computer Vision Systems,” a Presentation from R...
“Combating Bias in Production Computer Vision Systems,” a Presentation from R...“Combating Bias in Production Computer Vision Systems,” a Presentation from R...
“Combating Bias in Production Computer Vision Systems,” a Presentation from R...
 
“Developing an Embedded Vision AI-powered Fitness System,” a Presentation fro...
“Developing an Embedded Vision AI-powered Fitness System,” a Presentation fro...“Developing an Embedded Vision AI-powered Fitness System,” a Presentation fro...
“Developing an Embedded Vision AI-powered Fitness System,” a Presentation fro...
 

Recently uploaded

Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
g2nightmarescribd
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
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
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Product School
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
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
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 

Recently uploaded (20)

Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
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
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
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
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 

“Introduction to Simultaneous Localization and Mapping (SLAM),” a Presentation from Gareth Cross

  • 1. © 2021 Skydio Introduction To Simultaneous Localization and Mapping (SLAM) Gareth Cross May, 2021
  • 2. © 2021 Skydio What is SLAM? 2 Simultaneous Localization and Mapping Recover state of a vehicle or sensor platform, usually over multiple time-steps. Recover location of landmarks in some common reference frame. Simultaneous: We must do these tasks at the same time, as both quantities are initially unknown.
  • 3. © 2021 Skydio An age-old practice 3 Image Source: A History of Ancient Geography among the Greeks and Romans from the Earliest Ages till the Fall of the Roman Empire via Wikipedia
  • 4. © 2021 Skydio 4 Image Source: COLMAP / Schönberger, Johannes Lutz and Frahm, Jan-Michael, “Structure From Motion Revisited”, CVPR 2016
  • 5. © 2021 Skydio SLAM at Skydio 5 Visual Inertial Odometry (VIO) on the Skydio drone, an embedded system.
  • 6. © 2021 Skydio SLAM vs. Localization 6 Image Source: E. Kaplan, C. Hergarty, Understanding GPS Principles and Applications, 2005 Video Source: Skydio
  • 7. © 2021 Skydio Formulating a SLAM Problem For every SLAM problem, we have two key ingredients: 1) One or more sensors: 7 Source: MatrixVision Cameras Source: Lord MicroStrain Inertial Measurement Unit LiDAR/Range-finders Source: Velodyne RGB-D/Structured Light Source: Occipital
  • 8. © 2021 Skydio Formulating a SLAM Problem 2) A set of states we wish to recover. 8 Ego-motion: Rotation, position, velocity World Structure (Map) Image Source: DroneTest Calibration Parameters
  • 9. © 2021 Skydio Sensor Selection • Choice of sensor will drive many downstream design considerations. • Consider the sensor measurement model: 9 Sensor output Ego-motion Noise Calibration parameters Map
  • 10. © 2021 Skydio High Level Goal Take many measurements (possibly from many sensors), and recover the ego-motion, map, and calibration parameters. 10 SLAM System
  • 11. © 2021 Skydio Example — Calibration 11 Intrinsic temperature distortion may also introduce unexpected errors into vision estimates. Image Source: Skydio Tire inflation will affect the scale of wheel odometry, as could slippage between the tire and the road surface. Image source: MotorTrend.com Un-modelled extrinsic rotation between IMU and camera may cause increased drift in a visual SLAM pipeline. Image source: MWee RF Microwave
  • 12. © 2021 Skydio Example — Rolling Shutter When selecting a camera sensor for your platform, you have the choice of global or rolling shutter. 12 Image credit: LucidVision
  • 13. © 2021 Skydio Example — Rolling Shutter 13 Rolling shutter deforms rigid objects like the horizon line and the vehicle itself. Global-shutter model: Measured location in image. Camera projection Pose of the camera at time t0 Point in the world. Rolling-shutter model: Inclusion of higher-order derivatives in the measurement model increases computational cost. Transformation of world points into sensor frame.
  • 14. © 2021 Skydio What about noise? • All sensors exhibit some minimum amount of noise. • We distinguish between noise and model error. 14 A random error that can only be modeled via statistical means. Example: thermal electrical noise. Errors resulting from a limitation in our sensor model. Example: failure to include a calibration parameter.
  • 15. © 2021 Skydio Uncertainty • Owing to noise in the sensor inputs, SLAM is an inherently uncertain process. • We can never recover the “true” states, only uncertain estimates of them. • More measurements usually means reduced uncertainty… • … But it also means increased computational cost. 15
  • 16. © 2021 Skydio The Map • Choice of sensor may also influence map parameterization. 16 Collection of photographs? Image Source: Noah Snavely 2D LiDAR scans? Image Source: B. Bellekens et al., A Benchmark Survey of Rigid 3D Point Cloud Registration Algorithms, 2015 3D range images? Image Source: Skydio
  • 17. © 2021 Skydio Design Trade-offs 17 Computational cost Sensor cost Solution error Where we’d like to be (impossible).
  • 18. © 2021 Skydio Factor Graphs • Factor Graphs are a convenient method of graphically representing a SLAM problem. 18 Nodes represent states. Edges (factors) represent information about the states, in the form of measurements or priors. Factors may be unary, binary, ternary, etc… In a SLAM problem, we will typically have nodes for our ego- motion, map, and calibration parameters.
  • 19. © 2021 Skydio Factor Graphs There is a mapping from the factor graph to our sensor measurements: 19
  • 20. © 2021 Skydio Real Example: Bundle Adjustment (BA) • A form of Structure from Motion (SFM). • Leverage projective geometry to recover 3D landmarks and poses from 2D feature associations. • Highly scalable and can be quite accurate. • Using marginalization the compute cost can be bounded. 20 Image source: Theia SFM For more details on SFM, see Richard Szeliski’s book as a jumping off point.
  • 21. © 2021 Skydio Structure From Motion (SFM) 21 Simultaneous Localization and Mapping Recover state of a vehicle or sensor platform, usually over multiple time-steps. Recover location of landmarks in some common reference frame. Recover camera pose with respect to map points. Triangulate map points using camera poses. Bundle Adjustment is a form of optimization that does these steps jointly.
  • 22. © 2021 Skydio Typical SLAM Pipeline w/ BA 22 Compute feature associations Map Compute pose of camera Outlier rejection Bundle Adjustment (Optimization) Keyframes Incoming frames t t -1 t - 2 Keyframes store our estimates of the ego-motion. 1 2 3 4
  • 23. © 2021 Skydio How do we get feature associations? 23 Descriptor Matching Examples: SIFT, KAZE, ORB, SuperPoint Image Source: Georgia Tech Feature Tracking / Flow Examples: Optical Flow, Lucas Kanade Tracking, FlowNet
  • 24. © 2021 Skydio Design Trade-offs A “rule of thumb” principle to consider in selecting features (axes not to scale): 24 Computational Cost Robustness Lucas-Kanade SIFT ORB Deep Networks are somewhat difficult to place since they offer an adjustable cost-robustness trade-off. KAZE
  • 25. © 2021 Skydio Outliers in Feature Association 25
  • 26. © 2021 Skydio Outliers • Outliers: Data that does not agree with our sensor model. • How do we deal with them? • Let’s review a (very simple) toy problem: 26 State: alpha and beta Measurement
  • 27. © 2021 Skydio Toy Problem 27
  • 28. © 2021 Skydio Toy Problem 28
  • 29. © 2021 Skydio RANSAC (Random Sample Consensus) 29
  • 37. © 2021 Skydio RANSAC • Pros: • Dead simple to implement: Draw K examples, solve, count, repeat. • Easily wrap around an existing method. • Trivially parallelized. Have more CPU time? Sample more. • Cons: • Relatively weak guarantees. • Can require a lot of iterations for high outlier fractions or models with a large K. • Hyper-parameters need tuning. 37 … but, still quite useful in practice.
  • 38. © 2021 Skydio RANSAC 38 0 150 300 450 600 750 0% 10% 20% 30% 40% 50% 60% 70% 80% # Iterations vs. Outlier Fraction 2 Pts 3 Pts 4 Pts
  • 39. © 2021 Skydio Typical SLAM Pipeline w/ BA 39 Compute feature associations Map Compute pose of camera Outlier rejection Bundle Adjustment (Optimization) Keyframes Incoming frames t t -1 t - 2 1 2 3 4
  • 40. © 2021 Skydio Typical SLAM Pipeline w/ BA 40 Compute feature associations Map Compute pose of camera Outlier rejection Bundle Adjustment (Optimization) Keyframes Incoming frames t t -1 t - 2 1 2 3 4 Typical algorithms: • PnP • Essential Matrix • Homography
  • 41. © 2021 Skydio BA as a Factor Graph 41 Bundle of rays Position, orientation Camera calibrations Landmarks
  • 42. © 2021 Skydio BA as a SLAM Problem • How do we actually recover the states, given the measurements and our model? 42 ? Feature tracks form a ‘sensor’ measurement. Camera poses, landmark positions, calibration parameters. Measurement model is given by the projective geometry of the problem. We need to fill in this box.
  • 43. © 2021 Skydio Solving the Problem • We can use a technique called Nonlinear Least Squares to do this. • There are many ways to formulate SLAM problems generally, and we cannot review them all in the time allotted. • However, this method is widely applicable, typically fast, and is straightforward to implement. • For a much more comprehensive review, I highly recommend: State Estimation for Robotics, Tim Barfoot, 2015 (Free online) 43
  • 44. © 2021 Skydio Assumptions • We will convert our measurement models into a system of equations. • Prior to that, we will make an additional assumption - that the measurement noise is drawn from a zero-mean gaussian. 44 • We will also assume we have an initial guess for our states. In a time recursive system, this could come from the previous frame.
  • 45. © 2021 Skydio Nonlinear Least Squares We re-write our measurements as a residual functions: 45 The i’th camera pose, observing the j’th landmark. And concatenate these into a large vector: We take the squared Mahalanobis norm, weighting by our assumed measurement uncertainty.
  • 46. © 2021 Skydio Nonlinear Least Squares Our ‘best estimate’ will occur when the objective function is minimized: 46 Because f is usually going to be non-linear for most SLAM problems, we end up linearizing the problem and taking a series of steps. Jacobian J is the linearization of f about our initial guess.
  • 47. © 2021 Skydio Nonlinear Least Squares The solution at each iteration: 47 When linearized about the converged solution, the inverted Hessian doubles as a first order approximation of the marginal covariance of our estimate: * * See Barfoot, Chapters 3 and 4. First order approximation of the Hessian. Inversion has complexity O(|y|3) Each residual is weighted by its inverse uncertainty.
  • 49. © 2021 Skydio Nonlinear Least Squares • In the linearized form, the problem is ‘easy’ to solve. • Reduces to iterated application of weighted least squares. • Generally, cost of solving for updates is cubic in the number of states: • However, in some problems (like BA) there is sparsity we can leverage to improve this. • Huge number of problems can be cast this way (given an initial guess). • Can run in a fixed memory footprint → suitable for embedded use case. • With the appropriate Σ weights we can show the NLS produces an approximate estimate of the uncertainty in our solution. 49
  • 50. © 2021 Skydio Caveats • Remember our assumptions: • We needed an initial guess to linearize the system. If the guess is poor, the gradient used in the optimizer will steer our solution in the wrong direction. • Additionally, the covariance estimate we get out is only as good as the linearization point. • We also assumed Gaussian noise on the measurements. • Outliers must be removed, or they will dominate the optimization. 50
  • 51. © 2021 Skydio Linearization • It is worth considering the effect of linearization on our uncertainty estimate. • For a Gaussian variable u and non-linear vector function g, we can approximate: 51 Because we linearized, the fidelity of our first-order Σ relies on this approximation. See Barfoot, Chapter 2.
  • 52. © 2021 Skydio Tools • Some relevant tools: • GTSAM, open source package created by Frank Dellaert et al. • Allows specification of problem in factor graph format, built for SLAM. • G2O • Includes solutions for SLAM and BA. • Ceres Solver, produced by Google • General non-linear least-squares optimizer. • Python • scipy.optimize.least_squares 52
  • 53. © 2021 Skydio BA on Real-Time Systems • BA can operate at small and large scale. • Small: A few image frames on a mobile phone. • Large: Tens of thousand of images at city-scale. • Fairly straightforward to implement. • But: • Robust association may require expensive descriptors. • After feature association, we must devote nontrivial compute to outlier rejection. • Update rate limited to camera frame rate (slow). 53
  • 54. © 2021 Skydio VIO as a Factor Graph: BA + IMU 54 Bundle of rays Position, orientation, velocity Biases/IMU calibration parameters Camera calibrations Landmarks IMU, motion model Source: MatrixVision Cameras Source: Lord MicroStrain Inertial Measurement Unit
  • 55. © 2021 Skydio VIO • One of the most successful adaptations of vision research to the market. • Present in smart phones, AR/VR headsets, drones, autonomous vehicles. • Camera and IMU are highly complementary: • Camera: • Low update rate, high compute cost, subject to outlier data. • Able to relocalize accurately at large distances. • IMU: • High update rate, low compute cost, few outliers (maybe saturation). • Accurate over short intervals, but drifts over time. • Able to recover attitude with respect to global reference frame (gravity). 55
  • 56. © 2021 Skydio VIO 56 Compute feature associations Map Compute pose of camera Outlier rejection Bundle Adjustment (Optimization) Keyframes Incoming frames t t -1 t - 2 IMU can deliver substantial value here.
  • 57. © 2021 Skydio BA/VIO Implementations • Existing open-source implementations (not exhaustive): • OpenMVG • COLMAP Offline SFM and Multi-view Stereo (MVS) • CMVS Multi-view Stereo • ORB-SLAM2 Real-time SLAM featuring BA optimization • PTAM One of the earliest functional visual-SLAM demos • VINS-Mono VIO, runs on a mobile device • Basalt VIO • ROVIO VIO, example of a direct method 57
  • 58. © 2021 Skydio Fin • Additional Reading: • State Estimation for Robotics (Barfoot, 2015) • Factor Graphs for Robot Perception (Dellaert and Kaess, 2017) • Visual Odometry, (Scaramuzza and Fraundorfer, 2011) • Probabilistic Robotics, (Thrun, Burgard, and Fox, 2005) • GTSAM Software Library • Questions? Feel free to reach out: gareth@skydio.com 58