Surface segmentation is a function that separates 3D surface data into discrete objects that may or may not be touching. In 2D machine vision, this function is known as “blob analysis.” With 3D shape data, “blobs” have height and this information becomes the key dimension to segment a scan into individual parts.
Example applications where surface segmentation is used include: counting the number of bottles present in a box, or verifying the number of pins on a connector.
Built-in Surface Segmentation
Surface Segmentation was recently introduced as a built-in tool in Gocator firmware version 5.1. This tool works by applying Max and Min thresholds (such as Height, Area, and Aspect) in order to separate parts into segments.
Benefit to the User
The Surface Segmentation tool (video here) allows the user to set measurement parameters and report statistics on global information such as part count, min/max height, width, and length. And, with an SDK application or GDK tool, developers can access 3D surface measurements on individual parts (learn more about the Gocator Development Kit here).
Part Detection and Surface Segmentation
This tool can also be used as a second stage of processing after part detection. For example, part detection can be used to detect a tray (containing parts), and the Surface Segmentation tool can then be applied to separate and characterize the individual parts within the tray.
Noise Reduction Parameters
The Surface Segmentation tool includes several parameters for minimizing the effects of noise in your 3D scan data. Background and Part Edge filters cleanup background and overlapping edges respectively. These parameters serve to increase the accuracy and reliability of any surface segmentation operation you perform.
Stay tuned for our next feature post on the Surface Track tool in Gocator Firmware 5.1.