The document discusses GPU implementations of 3D point set registration algorithms including Softassign, EM-ICP, and weighted Horn's method. It finds that EM-ICP runs 60 times faster on a GPU compared to CPU and can align 5000 points within 7 seconds, making it more robust than CPU-based ICP. The implementations allow registration of up to 8000 points depending on GPU memory. Limitations include inefficient stopping conditions and a fixed number of iterations.
2. Contributionofthistalk
Fast GPU implementations of registration
algorithms for 3D point sets.
Softassign [Gold et al., 1998]
EM-ICP [Granger et al., 2002]
(Weighted) Horn’s method [Horn, 1987]
So, what is “registartion” ?
6. Algorithmsforregistration
Horn’s method
• Corresponding point sets are given.
• Estimate R and t.
ICP (Iterative closest point)
• Unknown correspondence.
• Fast, standard.
• Easily fail due to local minimum.
• A lot of variants follow.
Softassign
• Unknown correspondence.
• Robust.
• Very slow because of iterations.
EM-ICP
• Unknown correspondence.
• Robust.
• Very slow because of iterations.
Registration
algorithm
7. Algorithmsforregistration
Horn’s method
• Corresponding point sets are given.
• Estimate R and t.
ICP (Iterative closest point)
• Unknown correspondence.
• Fast, standard.
• Easily fail due to local minimum.
• A lot of variants follow.
Softassign
• Unknown correspondence.
• Robust.
• Very slow because of iterations.
EM-ICP
• Unknown correspondence.
• Robust.
• Very slow because of iterations.
Registration
algorithm
10. Algorithmsforregistration
Horn’s method
• Corresponding point sets are given.
• Estimate R and t.
ICP (Iterative closest point)
• Unknown correspondence.
• Fast, standard.
• Easily fail due to local minimum.
• A lot of variants follow.
Softassign
• Unknown correspondence.
• Robust.
• Very slow because of iterations.
EM-ICP
• Unknown correspondence.
• Robust.
• Very slow because of iterations.
Registration
algorithm
12. ICP:correspondenceisunknown.
𝑋 𝑌
𝒙1 𝒚1
𝒙2 𝒚2
⋮⋮
𝑇
𝑇
𝑇
𝑇
Find closest
(nearest) point
to 𝒙1 in 𝑌
𝑌∗
𝒚 𝑗
𝒚𝑖
Put the point
to 𝑌∗
𝒚 𝑗
⋮
Horn’s method
with 𝑋 and 𝑌∗
Estimate 𝑅 and 𝒕
13. ICP:correspondenceisunknown.
𝑋 𝑅𝑌 + 𝒕
𝒙1 𝒚1
𝒙2 𝒚2
⋮⋮
𝑇
𝑇
𝑇
𝑇
Find closest
(nearest) point
to 𝒙1 in 𝑌
𝑌∗
𝒚 𝑗
𝒚𝑖
Put the point
to 𝑌∗
𝒚 𝑗
⋮
Horn’s method
with 𝑋 and 𝑌∗
Estimate 𝑅 and 𝒕
Repeat
Fast, but easy to fail
due to hard correspondence.
14. Algorithmsforregistration
Horn’s method
• Corresponding point sets are given.
• Estimate R and t.
ICP (Iterative closest point)
• Unknown correspondence.
• Fast, standard.
• Easily fail due to local minimum.
• A lot of variants follow.
Softassign
• Unknown correspondence.
• Robust.
• Very slow because of iterations.
EM-ICP
• Unknown correspondence.
• Robust.
• Very slow because of iterations.
Registration
algorithm
16. Shinkhorniterations
𝑀
Each row and column
should be normalized to 1
by Shinkhorn iterations
𝑚𝑖𝑗
sum up to 1
sum up to 1
sum up to 1
⋮
sum up to 1
Repeat row and column
normalization until converge.
17. Shinkhorniterations
𝑀
Each row and column
should be normalized to 1
by Shinkhorn iterations
𝑚𝑖𝑗
sumupto1
sumupto1
sumupto1
⋮
sumupto1
Repeat row and column
normalization until converge.
19. Shinkhorn.GPU(rownormalization)
𝑀
Each row and column
should be normalized to 1
by Shinkhorn iterations
𝑹 𝑀
UsingCUDA kernel
Row-wise
division
Column normalization is done
by the same way.
22. PipelineofSoftassing.GPU
𝑋
𝑌
𝑋
𝑌
𝑀
𝑋 𝑌𝑆 = 𝑀
Compute 𝑀 with CUDA kernel
Shinkhorn.GPU
Centering.GPU
𝑆
Weighted Horn’s method
𝐾
𝑅 and 𝒕
Solve
Eigenvalue
problem
𝒙 , 𝒚
23. Algorithmsforregistration
Horn’s method
• Corresponding point sets are given.
• Estimate R and t.
ICP (Iterative closest point)
• Unknown correspondence.
• Fast, standard.
• Easily fail due to local minimum.
• A lot of variants follow.
Softassign
• Unknown correspondence.
• Robust.
• Very slow because of iterations.
EM-ICP
• Unknown correspondence.
• Robust.
• Very slow because of iterations.
Registration
algorithm
32. Summary
Implemented 3D registration algorithms on a
GPU are:
Softassign,
EM-ICP,
Weighted Horn’s method.
EM-ICP.GPU is
able to align 5000 points within 7 seconds,
60 times faster than EM-ICP.CPU,
more robust than ICP.CPU.
Code, binary, and movies are available at:
http://home.hiroshima-u.ac.jp/tamaki/study/cuda_softassign_emicp/
33. Limitations
Number of points
Should be less than 8000 for GeForce8800GT with
512MB memory.
More memory, more points.
Stopping condition
requires to store whole matrix 𝑀 or 𝐴, and
compare with previous ones: inefficient.
Hence, currently, number of iterations is fixed.
34. Algorithmsforregistration
Horn’s method
• Corresponding point sets are given.
• Estimate R and t.
ICP (Iterative closest point)
• Unknown correspondence.
• Fast, standard.
• Easily fail due to local minimum.
• A lot of variants follow.
Softassign
• Unknown correspondence.
• Robust.
• Very slow because of iterations.
EM-ICP
• Unknown correspondence.
• Robust.
• Very slow because of iterations.
Registration
algorithm