Downloadable code and Examples

Planar patches from unstructured points cloud

ppimages Planar patches are a very compact and stable intermediate
representation of 3D scenes, as they are a good starting point for a complete automatic reconstruction of surfaces. This algorithm extracts planar patches from an unstructured cloud
of points that is produced by a typical structure and motion pipeline.
The method integrates several constraints inside J-linkage and it makes use of information coming
both from the 3D structure and the images.

Downloads:

Video showing the planar patches extracted by the algorithm.

J-Linkage (Robust fitting of multiple models)

JLNkImage The method starts with random sampling, as in RANSAC. Then we consider the preference set of each point, i.e., the set of models that are satisfied by the point within a tolerance. The characteristic function of the PS of a point can be regarded as a conceptual representation of that point. Points belonging to the same structure will have similar PS, in other words, they will cluster in the conceptual space. The J-linkage algorithm is an agglomerative clustering that proceeds by linking elements with Jaccard distance smaller than 1 and stop as soon as there are no such elements left.
JLNkImage Update: speed and memory improvements. We developed a new incremental algorithm
that works in real-time, thanks to several approximations that have been
introduced to get around the quadratic complexity of the original algorithm. The same approximation can be used to deal with large datasets.

Downloads:

C++ Library — New (x86/x64)

Video showing planes extracted in real time with J-Linkage. The algorithm work integrated with the PTAM slam software.

Matlab Code — Old

Generalized Procrustes analysis ICP (Robust multiple view registration)

bunnyICP Novel approach to cope with the problem of global registration of multiple point clouds, where point correspondences and view order are unknown. The method iteratively minimizes a cost function considering all the views simultaneously.
The proposed algorithm takes advantage of the well-known Generalized Procrustes Analysis, seamlessly embedding the mathematical theory in an Iterative Closest Point framework.

Downloads:

Matlab Code

Comments are closed.