For surface recognition are you looking at adding further capability to this? I would be interested in being able to select a portion of the point cloud and tell the software that this is a pipe or wall to improve both the point outputs and more importantly the mesh.
The ability to also have a curved surface (vertical or horizontal) or tank surface would also be beneficial for creating clean surfaces.
Rather than having to draw the surface for some objects if part of the cloud could be tagged with a surface type, and AI then created the surface based on points found, as most surfaces are not perfect, this would be an awesome addition.