chenzhaiyu/points2poly

poor result

jhy-dabeeo opened this issue · 4 comments

Hi
I'm trying to make building models using your project.
but cannot get a decent result like your examples
can i get any advice or tip?

this is my input pointcloud building
image

these are RANSAC parameters ( all default )
image

before detect Planars, i run Estimate normals with deafult setting

this is the RANSAC result. it looks good to me
image

After saving the ply and vg files, run make_pc_dataset.py script and reconstruct.py
all parameters in config.yaml are default except normalize and append_bottom

cell_complex.visualize() result
image

this is final result
All structures on the roof of the building have disappeared.
image

Hi @jhy-dabeeo, three possible causes on top of my head:

  1. The default coefficient value may not fit your data. Try to decrease the value to avoid shrinking surfaces. The effect of this parameter is explained in section 5.2.4 of the paper.
  2. Something possibly cracked with cell complex creation. From the cell_complex.visualise() screenshot I can't really see the cells from the slanted roof structure. Can you make sure they're there? You can also save the cells into PLM files with cell_complex.save_plm(), load them into Mapple, and switch on clipping-plane for better visualisation (Global - Clipping Plane).
  3. Did you use the provided Point2Surf model for SDF prediction? This pre-trained model may not fit your data (though it gets the overall building shape), in which case you need to retrain the model.

Thanks for replying
i tried several combinations of parameters.

  1. RANSAC and coefficient
    I changed minimum support of RANSAC Parameters from 1000 to 500 and dropped coeefficient value 0.0005
    image
    image

it looks way better then previous one but still not good to use as building model
image

  1. cell_complex.save_plm()
    image
    image

  2. pretrained model
    i'im using model named helsinki_fullview which you provide

Thanks for the follow-up. Now I can see the slanted roof structure in the cell complex. Your point cloud seems very noisy, which could result in

  1. excessive cells being generated from excessive plane segments,
  2. the model pre-trained only with Gaussian noise being confused.

In this case, I'd guess possibly the combination of 1 and 2 resulted in the poor reconstruction result. Maybe try to tune the plane detection further (IMO this is actually the main limitation: in the paper we assumed good-quality planes can be detected), or retrain a model with data of similar characteristics?

Closed for now. Feel free to reopen in case of any updates.