Blob Analysis Node
Overview
Blob Analysis node analyzes and locates the blobs in point clouds. Blobs are defined as subsets of neighbouring points which corresponds to physical objects scenes. Points in a blob have similar colors, and lie on the same surface as neighboring points in the same blob.
Input and Output
Input |
Type |
Description |
---|---|---|
Distance Max |
Double |
Maximum distance within which two points are considered neighbors. |
Color Distance Max |
Double |
Mximum color distance within which two points are considered neighbors. |
Normal Distance Max |
Double |
Maximum angle between the normal vectors of two points for them to be considered neighbors. |
Neighbors Max |
int |
Maximum number of neighbors each point can have. |
Use Ratio |
Bool |
When selected, uses points max/min ratio for each blob. Otherwise uses points max/min. |
Points Max Ratio |
Double |
Maximum number of points each blob can have to number of total points in the point cloud. |
Points Min Ratio |
Double |
Minimum number of points each blob must have to number of total points in the point cloud. |
Points Max |
Double |
Maximum number of points each blob can have. |
Points Min |
Double |
Minimum number of points each blob must have. |
Output |
Type |
Description |
---|---|---|
clouds |
vector<Cloud> |
Clouds of all the blobs. Individual blob cloud can be accessed with clouds[]. |
poses |
vector<Pose> |
Poses of all the blobs. Individual blob pose can be accessed with poses[]. |
numSegms |
int |
Number of segments found. |
Node Settings
Data Source
- Input Cloud
The cloud of the scene to perform the blob analysis on. Usually from Camera and Cloud Process.
Settings
- Distance Max (Default: 1/100; Range: (0.0, ∞))
Maximum distance within which two points are considered neighbors.
- Color Distance Max (Default: 1/100; Range: (0.0, ∞))
Maximum color distance within which two points are considered neighbors.
- Normal Distance Max (Default: 1 degree; Range: (0.0, 180.0])
Maximum angle between the normal vectors of two points for them to be considered neighbors.
- Neighbors Max (Default: 49; Range: (0, ∞))
Maximum number of neighbors each point can have.
- Use Ratio (Default: True)
When selected, uses points max/min ratio for each blob. Otherwise uses points max/min.
- Points Max Ratio (Default: 1/2; Range: (0.0, 100.0))
Available when “Use Ratio” is selected. Maximum number of points each blob can have to number of total points in the point cloud.
- Points Min Ratio (Default 1/1000; Range: (0.0, 100.0))
Available when “Use Ratio” is selected. Minimum number of points each blob must have to number of total points in the point cloud.
- Points Max (Default: 10000; Range: (0.0, ∞))
Available when “Use Ratio” is unselected. Maximum number of points each blob can have.
- Points Min (Default: 1; Range: (0.0, ∞))
Available when “Use Ratio” is unselected. Minimum number of points each blob must have.
Procedure to Use
Insert Camera, Cloud Process, and Blob Analysis node.
Add a virtual camera (refer to Camera) and run the node. You can use the .dcf files here.
In Cloud Process node, link camera’s cloud output as the input cloud (data source).
In Cloud Process node, add an “Adjust Bounding Box” operation. Run the node, and select the targeted area with the bounding box.
In Blob Analysis, link Cloud Process’s cloud output.
Input the appropriate settings for the objects. Run the node, and the objects are segmentated from the scene.
Exercise
Increase Distance Max
Decrease Distance Max
Increase Neighbors Max
Decrease Neighbors Max