Pointcloud Conversion

The Pointcloud conversion dialog allows extraction of, and fitting of shapes on, pointcloud data. These shapes might be used for export and optimization of the calibration process.

Pointcloud data might be imported from scanning devices like Leica Nova Multistation, Leica BLK360, imported from general pointcloud files or generated with ProjectionTools High Resolution Scanning capabilities.

../../_images/SurfaceExtraction_normals.png

User Interface

Outline:

Allows to select between pointcloud and extracted/fit shape for editing.

Add:

Add points from several different sources, such as PCL, PTS, PLY, XYZ, TXT, Leica 3D DISTO, Leica Nova Multistation, Leica BLK360

Delete:

Delete currently selected points / triangles. Holding the button opens a popup menu allowing to delete unselected points as an alternative.

Delete All:

Delete all points/triangles from currently selected item.

Export:

Export points/triangles in different formats, such as PCL, PTS, XYZ, TXT, OBJ.

Selection:

Adjust selection and selection behavior.

Frontface only:

When selecting in the 3d view, select only elements with normals facing towards camera.

Invert Selection:

The Invert selection command will change the current selection such that everything previously unselected will now be selected and vice versa.

Select Cluster:

Attempts to extend the current selection to include all elements belonging to the same continuous and smooth surface.

Statistical Outliers:

Selects statistical outliers, based on a given neighbor count and deviation threshold. This effectively selects points in areas that are less dense than the average.

Solitary Points:

Allows to select points with less than n neighbors in a given radius.

Tools:

Contains tools for pointcloud manipulation, triangulation and registration.

Manipulation:

Pointcloud manipulation

Reduce Density:

Reduce pointcloud density, based on target average distance between points.

Calculate Normals:

Calculates point normals, assuming a sensor position of (0, 0, 800).

Set Origin:

Translates the pointcloud so that the currently selected point is at the world origin.

Set East:

Rotates the pointcloud about its vertical axis, so that the selected point is in east (x) direction. The height of the point is ignored.

Set North:

Rotates the pointcloud about its vertical axis, so that the selected point is in north (y) direction. The height of the point is ignored.

Triangulation:

Surface extraction

Depth:

Iterations of space subdivision for surface extraction. Higher values, result in more dense meshes. Increasing the depth by one roughly quadruples the number of vertices/triangles in the resulting mesh.

Triangulate:

Starts the triangulation of currently selected points in pointcloud.

Registration:

Surface and primitive fitting.

Type:

Select shape type, that should be fit to selected points. Plane, Cylinder and Sphere are currently supported.

Fit:

Fit current shape type to selected points in pointcloud.

3D View Options:
Pointcloud shading:

Allows to select between alternative pointcloud data visualizations.

Normals:

Visualize the normals as colors

Colors:

Show captured color, if available

Intensities:

Show captured intensities

Curvatures:

Show calculated curvatures

Pointsize:

Adjust point size of active pointclouds

Gain:

Adjust brightness of color, intensity and curvature shading

Perspective:

Adjust camera for several standard orthographic views, default perspective and origin.

3D View:
Rotation:

ALT + Left Mouse Button

Translate:

ALT + Shift + Left Mouse Button

Scale:

ALT + CTRL + Left Mouse Button or Scroll-wheel

Selection:

Single click to select single points. Hold and drag for rectangle selection. Hold CTRL to remove from selection. Hold Shift to add to selection. Hold CTRL + Shift to intersect with previous selection.

Worflow

Preparation:
Import:

Import pointcloud data from one of the many supported sources. In some cases pointcloud data might already be pre-loaded and processed, e.g. when the conversion dialog is opened from Creator after a high-res scan was done.

Cleanup:

Cleanup the pointcloud data. This involves removal of parts out of parts out of scope and noise. Selecting and deleting points manually as well as various filters can be used for that process (see selection group-box).

Orientation:

Bring the data into an useful coordinate system, using the “Set Origin” and “Set East/North” functionality.

Tip: Multiple pointclouds in the same coordinate system can be loaded consecutive. This can be used to stitch multiple incomplete pointclouds together.

Preprocess:

Calculate normals, when not yet generated. Several imports from scanning devices generate the normals automatically on import. When importing a general pointcloud, manual normal estimation might be needed (Use ).

Backup (Optional):

Saving the cleaned up pointcloud for later use is often a good idea. When using , a pointcloud including available normal, color, intensity and curvature information is saved, which can be loaded later retaining all the data.

Extraction:
Reference Points:

Select individual points of the cloud (usually based on color), which can later be used as reference points, e.g. for the position finding process of cameras.

Registration:

Fit a standard shape (sphere, cylinder, plane) to pointcloud selection. The results can only be used directly in ProjectionTools, after closing the dialog. There is no export available.

Triangulation:

Generate a mesh surface with adjustable detail, for currently selected pointcloud. Optionally remove parts of the generated mesh, e.g. too far extrapolated parts.

Use/export:
Use:

When accepting and closing the dialog, the extracted data will be used in ProjectionTools based on the context where the dialog was opened.

Export:

When multiple, data was extracted, use exports to store the data for later import and use. For example a list of selected points could be saved as “Points TXT” for later use as reference points and an extracted mesh could be exported as “Mesh OBJ” for later use as reference mesh. These exports could also be used for further cleanup or enhancements in third party software, e.g. uv-unwrapping for using a mesh a custom mapping in Mapper2D.