Vertical surfaces

Feel free to ask any question here
Post Reply
aizquierdo021
Posts: 1
Joined: Sun Feb 05, 2017 7:45 pm

Vertical surfaces

Post by aizquierdo021 »

I am trying to detect vertical surfaces from a cloudpoint . I try to detect it computing a curvature analysis but he result is not as expected. Is there any tool to detect vertical surfaces ?
daniel
Site Admin
Posts: 7713
Joined: Wed Oct 13, 2010 7:34 am
Location: Grenoble, France
Contact:

Re: Vertical surfaces

Post by daniel »

If it's a point cloud, you can compute the normals and then filter the points based on their orientation with the 'Stereogram display' tool of qFacets: http://www.cloudcompare.org/doc/wiki/in ... ive_filter (see the 'Interactive filter' option).
Daniel, CloudCompare admin
daniel
Site Admin
Posts: 7713
Joined: Wed Oct 13, 2010 7:34 am
Location: Grenoble, France
Contact:

Re: Vertical surfaces

Post by daniel »

Oh, a simpler way to do it is also to compute dip/dip direction from the normals and then filter the points with a dip value close to 0 (or 90, I never remember which way it is ;)
Daniel, CloudCompare admin
Dimitri
Posts: 156
Joined: Mon Oct 18, 2010 9:01 am
Location: Rennes (France)
Contact:

Re: Vertical surfaces

Post by Dimitri »

Works also (depending on your point density and noise):
. map elevation as a scalar (tools->projection->export coordinate to SF (Z)
. compute the gradient (scalar->gradient)
. filter by a threshold value (min/max)

I often use Daniel's suggestion, but on large clouds, normal calculation can be long
matknaak
Posts: 38
Joined: Wed May 04, 2016 12:43 pm

Re: Vertical surfaces

Post by matknaak »

Daniel's suggestions works fine, but is sensitive to the relation between the size of the surfaces you want to detect, the point distance and the search radius of the normal computation. In the unfortunate case that your steep surfaces have very irregular size and some are actually very small it might be tricky. The search radius used for the normal computation is the same for the entire point cloud irrespective of changes in the point cloud. If you do visually recognise such changes in the poincloud it might be usefull to subdivide the cloud into more homogeneous domains. It would be extremely usefull if this could be automated. Anyway, great tool and everyday good fun to use CC.

cheers

mat
parevalosiles
Posts: 1
Joined: Mon Mar 25, 2019 6:13 am

Re: Vertical surfaces

Post by parevalosiles »

Hello to everyone. I also want to filter vertical surfaces. My idea was to compute normals, export the z component of the normals (Nz) to a scalar field and then keep all the values between let's say (-0.2<Nz<0.2). Is there any way to export only the Nz component of the normals to a scalar field ? I tried but I didn't succeed to do so. Thank you in advance.
daniel
Site Admin
Posts: 7713
Joined: Wed Oct 13, 2010 7:34 am
Location: Grenoble, France
Contact:

Re: Vertical surfaces

Post by daniel »

No, but you can convert the normals to 'Dip and dip direction' (2 scalar fields). Then simply keep the points with a 'dip' value close to 0 degrees if I'm not mistaken.

Another solution is to use the Facets plugin and more especially the 'Stereogram tool' that lets you filter the points based on their (normal) orientation: https://www.cloudcompare.org/doc/wiki/i ... ive_filter
Daniel, CloudCompare admin
Post Reply