SlideShare a Scribd company logo
1 of 30
Download to read offline
Generation and Weighting of 3D Point Correspondences
for Improved Registration of RGB-D Data
Kourosh Khoshelham
Daniel Dos Santos
George Vosselman
MAPPING BY RGB-D DATA
 RGB-D cameras like Kinect have great potential for indoor
mapping;
 Kinect captures:
depth + color images @ ~30 fps
= sequence of colored point clouds
IR emitter RGB camera

+

IR camera


2
REGISTRATION OF RGB-D DATA
 Mapping requires registration of consecutive frames;
 Registration: transforming all point clouds into one coordinate
system (usually of the first frame).
Point i in frame j-1

Point i in frame j

𝑗−1

𝐗 𝑖,𝑗−1 = 𝐑 𝑗

𝑗−1

𝐗 𝑖,𝑗 + 𝐭 𝑗

Transformation from
frame j to frame j-1

3
REGISTRATION BY VISUAL FEATURES
 Extraction and matching of keypoints is done more reliably in RGB
images;
 Two main components:
 Keypoint extraction and matching  SIFT, SURF, …
 Outlier detection  RANSAC, M-estimator, …

SURF
matches

Conversion to 3D
correspondences
(using depth data)

Removing
outliers

RANSAC

Least-squares
estimation of
registration
parameters

4
CHALLENGES AND OBJECTIVES
 Challenge:
 Pairwise registration errors accumulate  deformed point cloud

 Objective:
 More accurate pairwise registration by:
i. Accurate generation of 3D correspondences from 2D points;
ii. Weighting 3D point pairs based on random error of depth.
5
GENERATION OF 3D POINT CORRESPONDENCES
 2D keypoints  3D point correspondences ? (ill-posed)
 RGB image coordinates relate to depth image coordinates by a
shift?
 Note: the FOV of the RGB camera and IR camera are different!

 Our approach:
 Transform 2D keypoints from RGB to depth image using
relative orientation between the two cameras;
 Search along the epipolar line for the correct 3D coordinates.
 Note: relative orientation parameters are estimated during calibration.
6
GENERATION OF 3D POINT CORRESPONDENCES
More formally:
 Given a keypoint in the RGB frame:
1. calculate the epipolar line in the depth frame using the relative
orientation parameters;
2. define a search band along the epipolar line using the minimum and
maximum of the range of depth values (0.5 m and 5 m respectively);

 For all pixels within the search band:
1. calculate 3D coordinates and re-project the resulting 3D point back
to the RGB frame;
2. calculate and store the distance between the reprojected point and
the original keypoint;

 Return the 3D point whose re-projection has the smallest distance
to the keypoint.
7
GENERATION OF 3D POINT CORRESPONDENCES
Finding 3D points in the depth image (right) corresponding to 2D
keypoints in the RGB image (left) by searching along epipolar
lines (red bands).

8
ESTIMATING RELATIVE ORIENTATION PARAMETERS
 Relative orientation between the RGB camera and IR camera:
 approximate by a shift;
 estimate by stereo calibration;
 estimate by space resection.

Manually measured markers in the disparity (left) and colour image (right)
used for the estimation of relative orientation parameters by space resection.
9
WEIGHTING OF 3D POINT CORRESPONDENCES
 Observation equation in the estimation model:

vi  X i , j 1  R jj 1X i , j  t jj 1
 Approximate as:

vi  X i , j 1  X i , j

 Note: because of high frame rate transformation parameters between
consecutive frames are quite small.

 Define weights as:

wi 

k
2
v

i

k
 2
2
 Xi , j 1   Xi , j

10
WEIGHTING OF 3D POINT CORRESPONDENCES
 We use random error of depth only:
 Relation between disparity (d) and depth (Z):

2
2
 Propagation of variance:  Z  c12 Z 4 d

 Weight:

Z 1  c0  c1 d
Calibration
parameters


kc12 d 2
wi  4
Z i , j 1  Z i4 j
,

11
RESULTS: ACCURACY OF 3D POINT CORRESPONDENCES
 Relative orientation
 approximated by a shift

12
RESULTS: ACCURACY OF 3D POINT CORRESPONDENCES
 Relative orientation
 estimated by stereo calibration

13
RESULTS: ACCURACY OF 3D POINT CORRESPONDENCES
 Relative orientation
 estimated by space resection

14
EFFECT OF WEIGHTS IN REGISTRATION
 Six RGB-D sequences of an office environment;
 Trajectories formed closed loops;
 Evaluation by closing error:

Closing
rotation

 R
 T
0

Closing
translation

v
n
 H1  H n1H1
2
n
1


Transformation from
last frame to first frame

Transformation from
first frame to last frame

15
EFFECT OF WEIGHTS IN REGISTRATION
 Closing distance for the six sequences registered with and without
weights:

16
EFFECT OF WEIGHTS IN REGISTRATION
 Closing angle for the six sequences registered with and without
weights:

17
EFFECT OF WEIGHTS IN REGISTRATION
 Average closing errors for registrations with and without weight:

Average closing
distance [cm]

Average closing
angle [deg]

without weight

6.42

6.32

with weight

3.80

4.74

Registration

18
EFFECT OF WEIGHTS IN REGISTRATION
 The trajectory obtained by weighted registration (in blue) is more
accurate than the one without weights (in red).

19
EXAMPLE REGISTRATION RESULTS

20
EXAMPLE REGISTRATION RESULTS

21
CONCLUSIONS
 Accurate transformation of keypoints from the RGB space to the
3D space  more accurate registration of consecutive frames;
 Assigning weights based on random error of depth improves the
accuracy of pairwise registration and sensor pose estimates.
 Using weights  covariance matrices for pose vectors
 can be used to weight pose vectors in the global adjustment
 = more accurate loop closure
 Influence of synchronization errors (between RGB and IR cam)
 fine registration using point- and plane correspondences
extracted directly from the point cloud.
22
23
SUPPLEMENTARY SLIDES

24
Measurement principle of Kinect
 Depth measurement by triangulation:
 The laser source emits a laser beam;
 A diffraction grating splits the beam to create a pattern of speckles
projected onto the scene;
 The speckles are captured by the infrared camera;
 The speckle image is correlated with a reference image obtained by
capturing a plane at a known distance from the sensor;
 The result of correlation is a disparity value for each pixel from which
depth can be calculated.
Resulting
disparity
image

IR image of pattern of
speckles projected to
the scene

25
Depth-disparity relation and calculation of point coordinates
From triangle similarities:

and:

Zk 

Zo
Z
1 o d
fb

Zk
( xk  xo  x)
f
Z
Yk   k ( yk  yo  y )
f
Xk  

where:
Zo
f
d
b
xk,yk
xo, yo
δx,δy

Distance of the reference plane
Focal lnegth of the IR camera
Measured disparity
Base length between emitter and IR camera
Image coordinates of point k
Principal point offsets
Lens distortion corrections
26
Calibration
 Calibration procedure:
 focal length (f);
Standard calibration
of IR camera

 principal point offsets (xo, yo);
 lens distortion coefficients (in δx, δy);
 base length (b);

Depth calibration

 distance of the reference pattern (Zo).

Normalization:
d = md’+n
1

Zk  (

m
n
1
) d   (Z o  )
fb
fb

Depth calibration parameters
27
Theoretical model of depth random error
Depth equation:

Zk

1

m
n
  ( Z o 1  )
 ( )d
fb
fb

Propagation
of variance

Depth random error:

Z  (
k

m
2
)Z k  d '
fb

Random error is a quadratic function of depth.

28
Depth random error
 Standard deviation of
plane fitting residuals as
a measure of depth
random error;
 As expected, depth
random error increases
quadratically with
increasing distance from
the sensor.

1.0 m

2.0 m

3.0 m

4.0 m

5.0 m

29
Depth resolution
 Distribution of plane fitting residuals on the
plane at 4 m distance
 Depth resolution is also proportional to the
squared distance from the sensor;
Side view of the points on the plane
at 4 m (effect of depth resolution)

At a maximum range of 5 m
depth resolution is 7 cm.

30

More Related Content

What's hot

Hidden Surface Removal using Z-buffer
Hidden Surface Removal using Z-bufferHidden Surface Removal using Z-buffer
Hidden Surface Removal using Z-bufferRaj Sikarwar
 
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-PlanesDouglas Lanman
 
Build Your Own 3D Scanner: Surface Reconstruction
Build Your Own 3D Scanner: Surface ReconstructionBuild Your Own 3D Scanner: Surface Reconstruction
Build Your Own 3D Scanner: Surface ReconstructionDouglas Lanman
 
Hidden lines & surfaces
Hidden lines & surfacesHidden lines & surfaces
Hidden lines & surfacesAnkur Kumar
 
Computer Graphics - Hidden Line Removal Algorithm
Computer Graphics - Hidden Line Removal AlgorithmComputer Graphics - Hidden Line Removal Algorithm
Computer Graphics - Hidden Line Removal AlgorithmJyotiraman De
 
CG OpenGL surface detection+illumination+rendering models-course 9
CG OpenGL surface detection+illumination+rendering models-course 9CG OpenGL surface detection+illumination+rendering models-course 9
CG OpenGL surface detection+illumination+rendering models-course 9fungfung Chen
 
Build Your Own 3D Scanner: Conclusion
Build Your Own 3D Scanner: ConclusionBuild Your Own 3D Scanner: Conclusion
Build Your Own 3D Scanner: ConclusionDouglas Lanman
 
Neural Scene Representation & Rendering: Introduction to Novel View Synthesis
Neural Scene Representation & Rendering: Introduction to Novel View SynthesisNeural Scene Representation & Rendering: Introduction to Novel View Synthesis
Neural Scene Representation & Rendering: Introduction to Novel View SynthesisVincent Sitzmann
 
Hidden surfaces
Hidden surfacesHidden surfaces
Hidden surfacesMohd Arif
 
Visible surface determination
Visible  surface determinationVisible  surface determination
Visible surface determinationPatel Punit
 
Visible surface detection in computer graphic
Visible surface detection in computer graphicVisible surface detection in computer graphic
Visible surface detection in computer graphicanku2266
 
Applicability of-tracability-technologies-for-3 d-printing-robust-blind-water...
Applicability of-tracability-technologies-for-3 d-printing-robust-blind-water...Applicability of-tracability-technologies-for-3 d-printing-robust-blind-water...
Applicability of-tracability-technologies-for-3 d-printing-robust-blind-water...Sirris
 
rural marketing ppt
rural marketing pptrural marketing ppt
rural marketing pptelaya1984
 
Visible surface identification
Visible surface identificationVisible surface identification
Visible surface identificationPooja Dixit
 
Computer Graphics: Visible surface detection methods
Computer Graphics: Visible surface detection methodsComputer Graphics: Visible surface detection methods
Computer Graphics: Visible surface detection methodsJoseph Charles
 

What's hot (20)

Orb feature by nitin
Orb feature by nitinOrb feature by nitin
Orb feature by nitin
 
Hidden Surface Removal using Z-buffer
Hidden Surface Removal using Z-bufferHidden Surface Removal using Z-buffer
Hidden Surface Removal using Z-buffer
 
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
 
Build Your Own 3D Scanner: Surface Reconstruction
Build Your Own 3D Scanner: Surface ReconstructionBuild Your Own 3D Scanner: Surface Reconstruction
Build Your Own 3D Scanner: Surface Reconstruction
 
Hidden lines & surfaces
Hidden lines & surfacesHidden lines & surfaces
Hidden lines & surfaces
 
Computer Graphics - Hidden Line Removal Algorithm
Computer Graphics - Hidden Line Removal AlgorithmComputer Graphics - Hidden Line Removal Algorithm
Computer Graphics - Hidden Line Removal Algorithm
 
CG OpenGL surface detection+illumination+rendering models-course 9
CG OpenGL surface detection+illumination+rendering models-course 9CG OpenGL surface detection+illumination+rendering models-course 9
CG OpenGL surface detection+illumination+rendering models-course 9
 
3 d viewing
3 d viewing3 d viewing
3 d viewing
 
Build Your Own 3D Scanner: Conclusion
Build Your Own 3D Scanner: ConclusionBuild Your Own 3D Scanner: Conclusion
Build Your Own 3D Scanner: Conclusion
 
visible surface detection
visible surface detectionvisible surface detection
visible surface detection
 
Neural Scene Representation & Rendering: Introduction to Novel View Synthesis
Neural Scene Representation & Rendering: Introduction to Novel View SynthesisNeural Scene Representation & Rendering: Introduction to Novel View Synthesis
Neural Scene Representation & Rendering: Introduction to Novel View Synthesis
 
Hidden surfaces
Hidden surfacesHidden surfaces
Hidden surfaces
 
Sr 01-40 good
Sr 01-40 goodSr 01-40 good
Sr 01-40 good
 
Visible surface determination
Visible  surface determinationVisible  surface determination
Visible surface determination
 
Visible surface detection in computer graphic
Visible surface detection in computer graphicVisible surface detection in computer graphic
Visible surface detection in computer graphic
 
Applicability of-tracability-technologies-for-3 d-printing-robust-blind-water...
Applicability of-tracability-technologies-for-3 d-printing-robust-blind-water...Applicability of-tracability-technologies-for-3 d-printing-robust-blind-water...
Applicability of-tracability-technologies-for-3 d-printing-robust-blind-water...
 
Clipping
ClippingClipping
Clipping
 
rural marketing ppt
rural marketing pptrural marketing ppt
rural marketing ppt
 
Visible surface identification
Visible surface identificationVisible surface identification
Visible surface identification
 
Computer Graphics: Visible surface detection methods
Computer Graphics: Visible surface detection methodsComputer Graphics: Visible surface detection methods
Computer Graphics: Visible surface detection methods
 

Similar to Generation and weighting of 3D point correspondences for improved registration of RGB-D data

Visual odometry & slam utilizing indoor structured environments
Visual odometry & slam utilizing indoor structured environmentsVisual odometry & slam utilizing indoor structured environments
Visual odometry & slam utilizing indoor structured environmentsNAVER Engineering
 
Depth estimation do we need to throw old things away
Depth estimation do we need to throw old things awayDepth estimation do we need to throw old things away
Depth estimation do we need to throw old things awayNAVER Engineering
 
Depth Fusion from RGB and Depth Sensors II
Depth Fusion from RGB and Depth Sensors IIDepth Fusion from RGB and Depth Sensors II
Depth Fusion from RGB and Depth Sensors IIYu Huang
 
Digital image processing
Digital image processingDigital image processing
Digital image processingChetan Hulsure
 
Final Project Report Nadar
Final Project Report NadarFinal Project Report Nadar
Final Project Report NadarMaher Nadar
 
[Paper] GIRAFFE: Representing Scenes as Compositional Generative Neural Featu...
[Paper] GIRAFFE: Representing Scenes as Compositional Generative Neural Featu...[Paper] GIRAFFE: Representing Scenes as Compositional Generative Neural Featu...
[Paper] GIRAFFE: Representing Scenes as Compositional Generative Neural Featu...Susang Kim
 
3-d interpretation from single 2-d image for autonomous driving
3-d interpretation from single 2-d image for autonomous driving3-d interpretation from single 2-d image for autonomous driving
3-d interpretation from single 2-d image for autonomous drivingYu Huang
 
高解析度面板瑕疵檢測
高解析度面板瑕疵檢測高解析度面板瑕疵檢測
高解析度面板瑕疵檢測CHENHuiMei
 
3-d interpretation from single 2-d image for autonomous driving II
3-d interpretation from single 2-d image for autonomous driving II3-d interpretation from single 2-d image for autonomous driving II
3-d interpretation from single 2-d image for autonomous driving IIYu Huang
 
DEEP LEARNING TECHNIQUES POWER POINT PRESENTATION
DEEP LEARNING TECHNIQUES POWER POINT PRESENTATIONDEEP LEARNING TECHNIQUES POWER POINT PRESENTATION
DEEP LEARNING TECHNIQUES POWER POINT PRESENTATIONSelvaLakshmi63
 
EFFICIENT STEREO VIDEO ENCODING FOR MOBILE APPLICATIONS USING THE 3D+F CODEC
EFFICIENT STEREO VIDEO ENCODING FOR MOBILE APPLICATIONS USING THE 3D+F CODECEFFICIENT STEREO VIDEO ENCODING FOR MOBILE APPLICATIONS USING THE 3D+F CODEC
EFFICIENT STEREO VIDEO ENCODING FOR MOBILE APPLICATIONS USING THE 3D+F CODECSwisscom
 
Virtual Reality 3D home applications
Virtual Reality 3D home applicationsVirtual Reality 3D home applications
Virtual Reality 3D home applicationsslebrun
 
Ray casting algorithm by mhm
Ray casting algorithm by mhmRay casting algorithm by mhm
Ray casting algorithm by mhmMd Mosharof Hosen
 

Similar to Generation and weighting of 3D point correspondences for improved registration of RGB-D data (20)

Visual odometry & slam utilizing indoor structured environments
Visual odometry & slam utilizing indoor structured environmentsVisual odometry & slam utilizing indoor structured environments
Visual odometry & slam utilizing indoor structured environments
 
M.sc. m hassan
M.sc. m hassanM.sc. m hassan
M.sc. m hassan
 
Depth estimation do we need to throw old things away
Depth estimation do we need to throw old things awayDepth estimation do we need to throw old things away
Depth estimation do we need to throw old things away
 
3d scanning techniques
3d scanning techniques3d scanning techniques
3d scanning techniques
 
Depth Fusion from RGB and Depth Sensors II
Depth Fusion from RGB and Depth Sensors IIDepth Fusion from RGB and Depth Sensors II
Depth Fusion from RGB and Depth Sensors II
 
Digital image processing
Digital image processingDigital image processing
Digital image processing
 
D04432528
D04432528D04432528
D04432528
 
Final Project Report Nadar
Final Project Report NadarFinal Project Report Nadar
Final Project Report Nadar
 
3DSensing.ppt
3DSensing.ppt3DSensing.ppt
3DSensing.ppt
 
[Paper] GIRAFFE: Representing Scenes as Compositional Generative Neural Featu...
[Paper] GIRAFFE: Representing Scenes as Compositional Generative Neural Featu...[Paper] GIRAFFE: Representing Scenes as Compositional Generative Neural Featu...
[Paper] GIRAFFE: Representing Scenes as Compositional Generative Neural Featu...
 
TransNeRF
TransNeRFTransNeRF
TransNeRF
 
3-d interpretation from single 2-d image for autonomous driving
3-d interpretation from single 2-d image for autonomous driving3-d interpretation from single 2-d image for autonomous driving
3-d interpretation from single 2-d image for autonomous driving
 
ICRA Nathan Piasco
ICRA Nathan PiascoICRA Nathan Piasco
ICRA Nathan Piasco
 
高解析度面板瑕疵檢測
高解析度面板瑕疵檢測高解析度面板瑕疵檢測
高解析度面板瑕疵檢測
 
final_presentation
final_presentationfinal_presentation
final_presentation
 
3-d interpretation from single 2-d image for autonomous driving II
3-d interpretation from single 2-d image for autonomous driving II3-d interpretation from single 2-d image for autonomous driving II
3-d interpretation from single 2-d image for autonomous driving II
 
DEEP LEARNING TECHNIQUES POWER POINT PRESENTATION
DEEP LEARNING TECHNIQUES POWER POINT PRESENTATIONDEEP LEARNING TECHNIQUES POWER POINT PRESENTATION
DEEP LEARNING TECHNIQUES POWER POINT PRESENTATION
 
EFFICIENT STEREO VIDEO ENCODING FOR MOBILE APPLICATIONS USING THE 3D+F CODEC
EFFICIENT STEREO VIDEO ENCODING FOR MOBILE APPLICATIONS USING THE 3D+F CODECEFFICIENT STEREO VIDEO ENCODING FOR MOBILE APPLICATIONS USING THE 3D+F CODEC
EFFICIENT STEREO VIDEO ENCODING FOR MOBILE APPLICATIONS USING THE 3D+F CODEC
 
Virtual Reality 3D home applications
Virtual Reality 3D home applicationsVirtual Reality 3D home applications
Virtual Reality 3D home applications
 
Ray casting algorithm by mhm
Ray casting algorithm by mhmRay casting algorithm by mhm
Ray casting algorithm by mhm
 

Recently uploaded

Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 

Recently uploaded (20)

Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 

Generation and weighting of 3D point correspondences for improved registration of RGB-D data

  • 1. Generation and Weighting of 3D Point Correspondences for Improved Registration of RGB-D Data Kourosh Khoshelham Daniel Dos Santos George Vosselman
  • 2. MAPPING BY RGB-D DATA  RGB-D cameras like Kinect have great potential for indoor mapping;  Kinect captures: depth + color images @ ~30 fps = sequence of colored point clouds IR emitter RGB camera + IR camera  2
  • 3. REGISTRATION OF RGB-D DATA  Mapping requires registration of consecutive frames;  Registration: transforming all point clouds into one coordinate system (usually of the first frame). Point i in frame j-1 Point i in frame j 𝑗−1 𝐗 𝑖,𝑗−1 = 𝐑 𝑗 𝑗−1 𝐗 𝑖,𝑗 + 𝐭 𝑗 Transformation from frame j to frame j-1 3
  • 4. REGISTRATION BY VISUAL FEATURES  Extraction and matching of keypoints is done more reliably in RGB images;  Two main components:  Keypoint extraction and matching  SIFT, SURF, …  Outlier detection  RANSAC, M-estimator, … SURF matches Conversion to 3D correspondences (using depth data) Removing outliers RANSAC Least-squares estimation of registration parameters 4
  • 5. CHALLENGES AND OBJECTIVES  Challenge:  Pairwise registration errors accumulate  deformed point cloud  Objective:  More accurate pairwise registration by: i. Accurate generation of 3D correspondences from 2D points; ii. Weighting 3D point pairs based on random error of depth. 5
  • 6. GENERATION OF 3D POINT CORRESPONDENCES  2D keypoints  3D point correspondences ? (ill-posed)  RGB image coordinates relate to depth image coordinates by a shift?  Note: the FOV of the RGB camera and IR camera are different!  Our approach:  Transform 2D keypoints from RGB to depth image using relative orientation between the two cameras;  Search along the epipolar line for the correct 3D coordinates.  Note: relative orientation parameters are estimated during calibration. 6
  • 7. GENERATION OF 3D POINT CORRESPONDENCES More formally:  Given a keypoint in the RGB frame: 1. calculate the epipolar line in the depth frame using the relative orientation parameters; 2. define a search band along the epipolar line using the minimum and maximum of the range of depth values (0.5 m and 5 m respectively);  For all pixels within the search band: 1. calculate 3D coordinates and re-project the resulting 3D point back to the RGB frame; 2. calculate and store the distance between the reprojected point and the original keypoint;  Return the 3D point whose re-projection has the smallest distance to the keypoint. 7
  • 8. GENERATION OF 3D POINT CORRESPONDENCES Finding 3D points in the depth image (right) corresponding to 2D keypoints in the RGB image (left) by searching along epipolar lines (red bands). 8
  • 9. ESTIMATING RELATIVE ORIENTATION PARAMETERS  Relative orientation between the RGB camera and IR camera:  approximate by a shift;  estimate by stereo calibration;  estimate by space resection. Manually measured markers in the disparity (left) and colour image (right) used for the estimation of relative orientation parameters by space resection. 9
  • 10. WEIGHTING OF 3D POINT CORRESPONDENCES  Observation equation in the estimation model: vi  X i , j 1  R jj 1X i , j  t jj 1  Approximate as: vi  X i , j 1  X i , j  Note: because of high frame rate transformation parameters between consecutive frames are quite small.  Define weights as: wi  k 2 v i k  2 2  Xi , j 1   Xi , j 10
  • 11. WEIGHTING OF 3D POINT CORRESPONDENCES  We use random error of depth only:  Relation between disparity (d) and depth (Z): 2 2  Propagation of variance:  Z  c12 Z 4 d  Weight: Z 1  c0  c1 d Calibration parameters  kc12 d 2 wi  4 Z i , j 1  Z i4 j , 11
  • 12. RESULTS: ACCURACY OF 3D POINT CORRESPONDENCES  Relative orientation  approximated by a shift 12
  • 13. RESULTS: ACCURACY OF 3D POINT CORRESPONDENCES  Relative orientation  estimated by stereo calibration 13
  • 14. RESULTS: ACCURACY OF 3D POINT CORRESPONDENCES  Relative orientation  estimated by space resection 14
  • 15. EFFECT OF WEIGHTS IN REGISTRATION  Six RGB-D sequences of an office environment;  Trajectories formed closed loops;  Evaluation by closing error: Closing rotation  R  T 0 Closing translation v n  H1  H n1H1 2 n 1  Transformation from last frame to first frame Transformation from first frame to last frame 15
  • 16. EFFECT OF WEIGHTS IN REGISTRATION  Closing distance for the six sequences registered with and without weights: 16
  • 17. EFFECT OF WEIGHTS IN REGISTRATION  Closing angle for the six sequences registered with and without weights: 17
  • 18. EFFECT OF WEIGHTS IN REGISTRATION  Average closing errors for registrations with and without weight: Average closing distance [cm] Average closing angle [deg] without weight 6.42 6.32 with weight 3.80 4.74 Registration 18
  • 19. EFFECT OF WEIGHTS IN REGISTRATION  The trajectory obtained by weighted registration (in blue) is more accurate than the one without weights (in red). 19
  • 22. CONCLUSIONS  Accurate transformation of keypoints from the RGB space to the 3D space  more accurate registration of consecutive frames;  Assigning weights based on random error of depth improves the accuracy of pairwise registration and sensor pose estimates.  Using weights  covariance matrices for pose vectors  can be used to weight pose vectors in the global adjustment  = more accurate loop closure  Influence of synchronization errors (between RGB and IR cam)  fine registration using point- and plane correspondences extracted directly from the point cloud. 22
  • 23. 23
  • 25. Measurement principle of Kinect  Depth measurement by triangulation:  The laser source emits a laser beam;  A diffraction grating splits the beam to create a pattern of speckles projected onto the scene;  The speckles are captured by the infrared camera;  The speckle image is correlated with a reference image obtained by capturing a plane at a known distance from the sensor;  The result of correlation is a disparity value for each pixel from which depth can be calculated. Resulting disparity image IR image of pattern of speckles projected to the scene 25
  • 26. Depth-disparity relation and calculation of point coordinates From triangle similarities: and: Zk  Zo Z 1 o d fb Zk ( xk  xo  x) f Z Yk   k ( yk  yo  y ) f Xk   where: Zo f d b xk,yk xo, yo δx,δy Distance of the reference plane Focal lnegth of the IR camera Measured disparity Base length between emitter and IR camera Image coordinates of point k Principal point offsets Lens distortion corrections 26
  • 27. Calibration  Calibration procedure:  focal length (f); Standard calibration of IR camera  principal point offsets (xo, yo);  lens distortion coefficients (in δx, δy);  base length (b); Depth calibration  distance of the reference pattern (Zo). Normalization: d = md’+n 1 Zk  ( m n 1 ) d   (Z o  ) fb fb Depth calibration parameters 27
  • 28. Theoretical model of depth random error Depth equation: Zk 1 m n   ( Z o 1  )  ( )d fb fb Propagation of variance Depth random error: Z  ( k m 2 )Z k  d ' fb Random error is a quadratic function of depth. 28
  • 29. Depth random error  Standard deviation of plane fitting residuals as a measure of depth random error;  As expected, depth random error increases quadratically with increasing distance from the sensor. 1.0 m 2.0 m 3.0 m 4.0 m 5.0 m 29
  • 30. Depth resolution  Distribution of plane fitting residuals on the plane at 4 m distance  Depth resolution is also proportional to the squared distance from the sensor; Side view of the points on the plane at 4 m (effect of depth resolution) At a maximum range of 5 m depth resolution is 7 cm. 30