csiro-robotics / raycloudtools

Other
62 stars 16 forks source link

Raysplit artefact at the edges #17

Closed GabijaBern closed 1 week ago

GabijaBern commented 3 weeks ago

Hello,

I have tested your great tool, but I think I have encountered a bug or similar. I run the tool on the forest point cloud trying to extract individual trees. My pointcloud is quite big, therefore I have used your large pointclouds processing script. One of the steps in the script is splitting the poincloud into a grid. When I run the step and visualise the poinclouds that have been gridded with overlap, I see that at the edges of the 'split' there are points projected on the plane along the 'cut'. I have tried with a couple of point clouds and I keep on seeing this artefact that gets assigned noise label when segmented. I found one extreme case where the artefact goes a couple of hundred of meters below. I have normalised the pointcloud before importing into raycloudtool. Do you have a clue what is happening and where is the potential bug?

Screenshot 2024-08-21 at 10 27 43 Screenshot 2024-08-21 at 10 27 49

@thomas-lowe

thomas-lowe commented 3 weeks ago

Hi Gabija, as odd as it looks these points are supposed to be there and not a bug.

Because the library manages ray clouds rather than point clouds, we need to keep the first part of rays that extend outside of the grid cell. These rays have no solid end point so their alpha is zero (flagging it as non-solid) and are coloured to black to avoid some confusion. If point cloud viewers used the alpha channel then they would be invisible but unfortunately they don't.

If you want to remove all of these 'unbounded' rays then use raysplit cloudname.ply alpha 0, if you want to colour the cloud by the alpha channel use raycolour cloudname.ply alpha.

regards Tom.