In a paper titled "Graph-based denoising for time-varying point clouds" presented at 3DTV-Con 2015, we propose a method based on graphs to denoise point clouds (both static and time-varying). Here is some complementary information and code.

Abstract

Noisy 3D point clouds arise in many applications. They may be due to errors when creating a 3D model from images or simply to imprecise depth sensors. Point clouds can be given geometrical structure using graphs created from the similarity information between points. This paper introduces a technique that uses this graph structure and convex optimization methods to denoise 3D point clouds. A short discussion presents how those methods naturally generalize to time-varying inputs such as 3D point cloud time series.

Paper

More information can be found here and the published PDF can be found here (preprint).

Open Code

The code for denoising can be downloaded here (available soon). Note that it depends on the GSP Toolbox (free software) and the UNLocBoX (free software).

Open Data

Links to download the point clouds (PLY format) used to generate the figures in the paper:

  • Raw 3D reconstruction of the Fountain MVS dataset (used in Figure 1): [63.5 MB]
  • Denoised version with degree filtering threshold at 1 and TV smoothing (used in Figure 1): [57.4 MB]
  • Denoised version with degree filtering threshold at 3 and TV smoothing (not used in the paper): [54.0 MB]
  • Portion of the 3D Fountain reconstuction with depthmap (used in Figure 2): [38.4 MB]
  • Denoised version with degree filtering threshold at 3 (used in Figure 2):  [36.1 MB]
  • Denoised version with degree filtering threshold at 3 and TV smoothing (used in Figure 2): [36.1 MB]

We recommend using Meshlab (free software) to open and inspect the point clouds.