3D Matching and Classification (Multiple Models)
Function
This Step can match the objects in the scene by using multiple point cloud models and output the poses and class labels of the objects.
Usage Scenario
This Step is usually used for the matching and classification of a single object in the scene. If there are multiple objects in the scene, point cloud clustering or deep learning can be utilized to segment objects first and then each object can be matched and classified by using this Step.
Input and Output
After inputting the point clouds of objects, this Step will output the object poses with the same amounts as point clouds.
The input and output of this Step are shown below with the example of inputting a point cloud of a single object.
Input
| Input port | Data type | Description |
|---|---|---|
Point Cloud (with normals) |
PointCloud/XYZNormal[] |
The list of point clouds input to this port will be matched with the point cloud models. |
Output
| Output port | Data type | Description |
|---|---|---|
Object Pose |
Pose[] |
Matched target object poses. |
Object Point Clouds (with normals) |
PointCloud/XYZNormal[] |
Point clouds of the objects. |
Object Class Labels |
String[] |
Class labels of the objects. |
Pose Confidence Values |
Number[] |
List of confidence values of the corresponding object poses. |
Parameter Description
| Parameter | Description |
|---|---|
Parameter Tuning Level |
Parameter description: This parameter is used to select the Parameter Tuning Level for the Step.
|
Basic Parameter Tuning Level
Model Settings
| Parameter | Description | ||
|---|---|---|---|
Select Target Object |
Parameter description: This parameter is used to select the target object that is configured in the target object editor. Tuning instruction: After making a point cloud model with the target object editor, click the button to the right of the parameter to expand the drop-down list to select or switch the point cloud model file.
|
| Parameter | Description | ||
|---|---|---|---|
Matching Mode |
Parameter description: This parameter is used to select between Edge Matching and Surface Matching modes. Value list: Surface matching, Edge matching. Default value: Surface matching. Tuning recommendation: When the surface of the object has obvious recognizable features (such as crankshafts, rotors, and steel rods), it is recommended to use surface matching. You should create a point cloud model that represents the surface features of the object. When the object is relatively flat and shows clear and regular edge features under the camera (such as panels, track pads, connecting rods, and brake discs), it is recommended to use edge matching. You should create a point cloud model that represents the edge features of the object.
|
Coarse Matching Settings
| Parameter | Description | ||
|---|---|---|---|
Operation Mode |
Parameter description: This parameter is used to select the operation mode for coarse matching. Value list: High speed, Standard, High accuracy, Extra-high accuracy, and Custom. Instruction: Under all kinds of operation modes, the matching accuracy and speed are different due to different number of points in the point cloud models. The following table provides a detailed description. |
||
Expected Point Count of Model |
Parameter description: This parameter is used to set the expected number of points in the point cloud model. Default value: 200 Instruction: Set this parameter when Operation Mode is Custom. Tuning recommendation: Please set the parameter according to the actual requirement.
|
| Operation Mode | Number of Points in the Point Cloud Models | Matching Characteristics |
|---|---|---|
High speed |
200 |
High speed, low accuracy |
Standard |
300 |
Relatively stable |
High accuracy |
400 |
High accuracy, low speed |
Extra-high accuracy |
500 |
Highest accuracy |
Custom |
Custom |
Determined by customized number of points |
Fine Matching Settings
| Parameter | Description |
|---|---|
Operation Mode |
Parameter description: This parameter is used to select the operation mode for fine matching.
|
Advanced Parameter Tuning Level
Model Settings
| Parameter | Description | ||
|---|---|---|---|
Select Target Object |
Parameter description: This parameter is used to select the target object that is configured in the target object editor. Tuning instruction: After making a point cloud model with the target object editor, click the button to the right of the parameter to expand the drop-down list to select or switch the point cloud model file.
|
Coarse Matching Settings
| Parameter | Description |
|---|---|
Operation Mode |
Parameter description: This parameter is used to select the operation mode for coarse matching. Value list: High speed, Standard, High accuracy, Extra-high accuracy, and Custom. Instruction: Under all kinds of operation modes, the matching accuracy and speed are different due to different number of points in the point cloud models. The following table provides a detailed description. |
Expected Point Count of Model |
Parameter description: This parameter is used to set the expected number of points in the point cloud model.
|
Upper Limit of Point Pair Count per Feature |
Parameter description: This parameter is used to specify the maximum number of point pairs contained in each feature during the model analysis. The smaller this value is, the faster the processing speed, but the lower the accuracy of the matching results.
|
| Operation Mode | Number of Points in the Point Cloud Models | Matching Characteristics |
|---|---|---|
High speed |
200 |
High speed, low accuracy |
Standard |
300 |
Relatively stable |
High accuracy |
400 |
High accuracy, low speed |
Extra-high accuracy |
500 |
Highest accuracy |
Custom |
Custom |
Determined by customized number of points |
Voting Settings
| Parameter | Description |
|---|---|
Distance Quantification |
Parameter description: The parameter for the quantification of the distance between points (Distance between Two Points=Distance Quantification*Sampling Interval). The larger the value is, the less accurate the matching results.
|
Angle Quantification |
Parameter description: The parameter for the quantification of the angle between the normals of the points in the point pair (Angle between Two Vectors = 360°/Angle Quantification). The larger this value is, the more accurate the matching results, but it also requires higher point cloud quality.
|
Vote Ratio Lower Threshold |
Parameter description: In the matching process, each object pose will earn a score. When the pose score is higher than the “product of Highest Score in the Vote and Vote Ratio Lower Threshold,” the corresponding pose will be involved in the pose verification. The lower this value is, the more likely an exact match will be found, but the execution time will also be longer.
|
Referring Point Sampling Step |
Parameter description: This parameter is used to adjust the step size to downsample the scene point cloud and obtain referring points that form point pairs with the referred points. When the value is larger, the interval sampling points are fewer, and the execution speed is faster, but the matching accuracy is reduced.
|
Referred Point Sampling Step |
Parameter description: This parameter is used to adjust the step size to downsample the scene point cloud and obtain referred points that form point pairs with the referring points. When the value is larger, the interval sampling points are fewer, and the execution speed is faster, but the matching accuracy is reduced.
|
Pose Verification Settings
| Parameter | Description |
|---|---|
Use Distance NMS |
Parameter description: After this parameter is selected, candidate poses whose distances to the selected poses are less than 0.1 times the diameter of the object will be filtered out.
|
Voxel Length Generation Strategy |
Parameter description: This parameter is used to select the method to generate the voxel length.
|
Voxel Length |
Parameter description: This parameter is used to set the length (mm) of the voxel. The larger the value, the less accurate the matching results.
|
Voxel Length Lower Limit |
Parameter description: This parameter is used to set the minimum voxel length (mm).
|
Voxel Length Upper Limit |
Parameter description: This parameter is used to set the maximum voxel length (mm).
|
Pose Filtering Settings
This parameter group needs to be adjusted in the edge matching mode.
| Parameter | Description |
|---|---|
Filter Poses by Model Rotation Angle |
Parameter description: In the edge matching mode, the point cloud model may need to be rotated by a certain angle to match with the scene point cloud, and the poses will be filtered by the point cloud model’s rotation angle. When the model’s rotation angle exceeds the “Angle Difference Upper Threshold,” the pose will be filtered out.
|
Angle Difference Upper Threshold |
Parameter description: Please refer to the parameter “Filter Poses by Model Rotation Angle” for details. |
Fine Matching Settings
| Parameter | Description |
|---|---|
Deviation Correction Capacity |
Parameter description: This parameter is used to set the intensity of the deviation correction to the matching result from 3D Coarse Matching. The greater the deviation correction capacity is, the more likely the coarsely matched poses can be corrected to the accurately matched poses. Please note that an excessive deviation correction capability may lead to a loss of matching accuracy.
|
Operation Mode |
Parameter description: You can refer to the Basic Parameter Tuning Level. |
Symmetry settings
| Parameter | Description |
|---|---|
Symmetry Axis |
Parameter description: This parameter is used to select the axis of rotational symmetry to rotate the initial pose of the object.
|
Symmetry Angle Step (0–360) |
Parameter description: This parameter is used to set the step to change the initial orientation from “Min Rotation Angle” to “Max Rotation Angle.” The unit is degree (°).
|
Min Rotation Angle |
Parameter description: This parameter specifies the minimum rotation angle for the pose rotation according to the “Symmetry Angle Step.” The unit is degree (°).
|
Max Rotation Angle |
Parameter description: This parameter specifies the maximum rotation angle for the pose rotation according to the “Symmetry Angle Step.” The unit is degree (°).
|
Validation Settings
This parameter group needs to be adjusted in the surface matching mode.
| Parameter | Description |
|---|---|
Only Consider Visible Surface of Model |
Parameter description: Once this parameter is selected, only the visible part of the surface point cloud model will be involved in the matching, which facilitates the calculation and produces a more reasonable matching confidence.
|
Result Visualization
| Parameter | Description |
|---|---|
Visualization Options |
Parameter description: After “Debug Output” is enabled, the selected option will be generated and displayed.
|
Only Visualize Current Matching Result |
Parameter description: Once this parameter is selected, only the matching result corresponding to the current model will be visualized.
|
Select Model for Visualization |
Parameter description: This parameter is used to select the point cloud model that you want to visualize.
|