# Point Cloud Segmentation

This automatic analysis tool breaks the point cloud into segments based on the spatial and attribute relationships between points returns in the point cloud. By segmenting the point cloud(s) into smaller sections and applying a segment ID, users are better able to select point by segment for manual classification or further editing.

This tool requires Global Mapper Pro.

Unlike the automatic classification tools, this dialog will remain open after the process has been completed. After using the Point Cloud Segmentation tool the Lidar Draw Mode setting will be changed to Segment ID to show the point cloud colored by segment. Running this tool again on the same or a different point cloud during the same segmentation session will continue the counter of segment IDs so there are no repeated values.

When working with large data sets, Global Mapper will work to manage memory and machine resources. Internal tiling of the data set may be performed if the program estimates insufficient memory. If internal tiling is needed for resource management, the user will be prompted when the process is executed.

## Resolution

The resolution at which to analyze the point cloud. This distance, specified in linear units or a multiple of the layer point spacing will determine the local neighborhood size used for any given point when completing this analysis.

## Attribute Evaluation

Below are the attributes that can be used to evaluate the point to point similarity that informs spectral partitioning. Select which attributes to use by checking the box next to attribute and assign a weight for the attribute. A higher value entered will result in that particular attribute being more heavily considered in the point to point similarity measure. Attributes of a point are based on statistics of a local area (neighborhood) with extent defined by the resolution.

**Position** refers to the X/Y/Z or Lat/Lon/Elevation position of each point return. This option is always enabled as the positional relationship between points will always be considered.

**Normal** considers the direction perpendicular to the surface the point is representing. Similar normal values over a local area indicate the points are representing a consistently shaped feature.

The normal of a lidar point can be depicted as a ray or arrow perpendicular to the surface the point represents. Looking at the cross section view of a roof, the plane of the roof is the surface represented by the points, and the normal for a single point is shown perpendicular to this plane moving away from the point.

**Intensity** is the strength of the return collected. Most lidar systems record the intensity of the returning pulse. Similar materials will have similar intensity values making it useful when looking for groups of like points within a layer.

**Return Number** looks for similarity in the return number of each point return in the data set. Return numbers typically range from 1 to 5. Solid, uncovered surfaces typically have larger numbers of first and only returns while vegetation and layered objects have a larger mix of return numbers.

**Curvature** analyzes the curves created by the points in a local neighborhood. Consistency in curvature values will help indicate that points likely belong to the same object.

## Segmentation

**Connectivity Threshold** is threshold value for algebraic connectivity that is used to determine where to cut to divide into segments. A larger value will result in more segments. In general a low value (such as a decimal below 1) would be used for large data sets where many different types of points are included. A high value (such as 50) would be used when trying to segment within a category or class, such as further segmenting the ground.

**Minimum Number of Point in Segment** determines the minimum number of points needed in a cluster for a segment ID to be assigned. This value should be set with the point spacing of the data set in mind. A smaller number will result in many more smaller segments, while a larger number will result in fewer, larger segments.

**Maximum Number of Standard Deviations** narrows the range of point associations to be considered. A larger number of standard deviations will include more weakly connected points in the same segment. A lower value will likely create fewer segments but the points in each will be more closely related.

**Maximum Curvature** determines the maximum allowed curvature within a neighborhood in order for a cohesive segment to be identified.

Curvature is determined by analyzing how the position of adjacent points relate to one another. The maximum curvature threshold dictates the limit of curvature in a local area for point to be considered part of the same segment.

Looking at the cross profile of a car below, the point representing this one vehicle are split into two segments. The break between these segments happens at the top of the windshield area where curve along the surface of the car is at its sharpest over a local area. If the curvature value were to be increased for this data, the car could be assigned a single segment ID.