The PC_Demo is designed to perform our implicit surface reconstruction algorithm for unorganized point clouds based on convexified image segmentation. It is not optimized for performance. In fact, it was developed as a research code for the purpose of testing and experimenting with the ideas presented in the reference [1]. Our method can handle data sets that are non-uniform, and with holes or with open boundaries.

  1. Initial Processing
    1. simplify data point, average neighboring normals if necessary
    2. compute distance function and closest point information
    3. compute anisotropic Gaussian function for each data point
    4. compute the inner product field as the initial image
  2. Binary Image Segmentation Algorithm using TVG-L1 model (twice)
  3. Isosurface Extraction, the level set with value 0.5 is extracted


Here are some experiment figures and a table of computation time (in seconds). All experiments are performed on a laptop with an Intel(R) Core(TM) i5-2430 CPU @2.40 GHz processor and 8.00 GB RAM memory.

   point size  point used  grid size  initial process TVG-L1  total
 dragon  1,769,269  170,188 257x181x117     8.71    3.74 12.45
Bunny  362.271  157,860 257x255x201 12.82  21.63 34.45
 Bunny (holes)    341,387 149,954 257x255x201 12.47  16.74 29.21
 knot     9,785 8,174 127x129x63   2.01    0.92   2.93
 Venus    44,992  43,820 181x251x257 16.16    6.77 22.93
 Armadillo (non-uniform)  1,142,120  111.377  217x257x199 11.68   13.21 24.89 
 Armadillo (sparse)    22,403 20,456 217x257x195 10.83  13.64 24.47

  • data with holes

  • open surface (data with open boundaries)

  • non-uniform and sparse Armadillo

[2] Edward Castillo, Jian Liang and Hongkai Zhao, Point Cloud Segmentation via Constrained Nonlinear Least Squares Surface Normal Estimates, Book Chapter, Innovations for Shape Analysis: Models and Algorithms, Springer, 2012.


Please download here

Contact us
Jian Liang 

Frederick Park

Hongkai Zhao

We would like to thank Edward Castillo for graciously providing us with his code for computing consistent surface normals to PC data.