3D Coarse Matching

Introduction

Function Description

This operator performs matching calculations between the workpiece template point cloud and the scene point cloud captured by the camera, outputting the approximate pose of the workpiece.

Usage Scenarios

Used for pose calculation of non-flexible, non-easily deformable workpieces such as metal objects and plastic parts. It is often used in conjunction with the "3D Precise Matching" operator to calculate the precise pose of the workpiece.

Operator Input/Output

point cloud input

point cloud output

Input

Output

Coarse Matching Calculation Process

calculation process

Parameter Description

Parameter Settings

Model point cloud file

Parameter Description

This parameter can select a point cloud template from the matching model library through mapping parameters or directly upload a workpiece template point cloud file. The uploaded point cloud file can also be downloaded.

Model Switching Method

Click [Upload File] to open a pop-up window, select the point cloud file to upload directly, or switch through mapping parameters.

Distance discrete quantity

Default Value

20

Parameter Range

2-500

Parameter Description

This parameter is used to process the number of point clouds involved in the matching calculation. It performs downsampling on the matching template and scene point cloud (distance interval = template size / distance discrete quantity). The larger the distance discrete quantity, the more point clouds are involved in the matching calculation, and vice versa.

Tuning Instructions

If the positional deviation of the matching result calculated with the default value is relatively large, this parameter can be appropriately increased. Increasing the number of points involved in the matching calculation can improve matching accuracy. Note that after increasing the parameter, the calculation time will also increase; if the calculation time with the default value is long and the positional deviation of the matching result is small, this parameter can be appropriately reduced to improve the cycle time.

Effect

primary point cloud

scatter 15

scatter 20

scatter 30

scatter 40

Recommended Value

Raw point cloud

15

20

30

40

Angular discrete quantity

Default Value

30

Parameter Range

1-500

Parameter Description

This parameter is used to quantify the angle value of the initial pose, i.e., to discretize continuous angle values into angle values with intervals (angle interval = 360 / angular discrete quantity); the larger this value, the higher the initial angle accuracy, and vice versa.

Tuning Instructions

Generally, this parameter is not adjusted. If the angle deviation of the matching result is relatively large, this parameter can be appropriately increased;

Effect

angular dispersion 20

angular dispersion 30

Recommended Value

20

30

Reference point step size

Default Value

5

Parameter Range

1-50

Recommended Value

1, 3, 5, 10

Parameter Description

This parameter is used to select reference points for matching calculation, i.e., to select point clouds as matching points for calculation every few points. The larger the parameter value, the fewer points are involved in the matching calculation, and vice versa.

Tuning Instructions

If the positional deviation of the matching result calculated with the default value is relatively large, this parameter value can be appropriately reduced to increase the number of points for matching calculation and improve matching accuracy, but the calculation time will also increase.

Upper limit of the number of output pose

Default Value

100

Parameter Range

0-100000

Recommended Value

5, 10, 20, 30, 50

Parameter Description

This parameter refers to the maximum number of initial poses calculated for a single point cloud. When multiple point clouds are input, the upper limit of the output result is the parameter value of [Number of input point clouds] * [Upper limit of the number of output pose].

Tuning Instructions

If the number of input point clouds is 1 (the point cloud has been processed by cluster segmentation), set it according to the actual number of workpieces. To ensure sufficient correct initial results, the parameter value is generally set to be slightly larger than the number of workpieces; if the number of input point clouds is multiple (the point cloud has been subjected to cluster segmentation), the parameter value can be set to 1~5.

Advanced Parameters

Clustering angle threshold

Default Value

24

Parameter Range

0-360

Recommended Value

15, 20, 24, 30

Parameter Description

This parameter is used to determine whether initial poses that have passed voting belong to the same workpiece. If the angle difference between initial poses is less than the parameter value, they are considered to belong to the same workpiece. The finally displayed matching result is the average of poses whose difference values are within the parameter range.

Tuning Instructions

Generally, this parameter is not adjusted. If there are few displayed matching results and the angle deviation is relatively large, this parameter value can be appropriately reduced to narrow the calculation range for pose angle clustering, output more results, and improve matching accuracy, but the calculation time will also increase.

Clustering distance threshold

Default Value

6

Parameter Range

0-200

Recommended Value

3, 6, 10

Parameter Description

This parameter is used to determine whether initial poses that have passed voting belong to the same workpiece. If the distance difference between initial poses is less than the parameter value, they are considered to belong to the same workpiece. The finally displayed matching result is the average of initial poses whose difference values are within the parameter range.

Tuning Instructions

Generally, this parameter is not adjusted. If there are few displayed matching results and the positional deviation is relatively large, this parameter value can be appropriately reduced to narrow the calculation range for pose position clustering, output more results, and improve matching accuracy, but the calculation time will also increase.

Voting filter threshold

Default Value

0.5

Parameter Range

0-1

Recommended Value

0.1, 0.3, 0.5, 0.8, 1.0

Parameter Description

This parameter is used to filter initial poses. The generated initial poses undergo a round of matching calculation, and initial poses with values greater than this value are retained; the higher this value, the more incorrect results are filtered, and the more accurate the matching result.

Tuning Instructions

Generally, this parameter is not adjusted. If the number of displayed matches is relatively small, this value can be appropriately reduced; if there are many displayed matches with relatively large deviations, this value can be appropriately increased.

Model overlap threshold

Default Value

0.1

Parameter Range

0.01-1000

Recommended Value

0.1, 0.3, 0.5, 1.0

Parameter Description

This parameter is used to filter overlapping matching results.

Tuning Instructions

Generally, this parameter is not adjusted. If multiple matching results appear for one workpiece, this value can be appropriately increased to filter out duplicate matching results.

Matching point search range

Default Value

5

Parameter Range

0-20

Recommended Value

1, 3, 5, 10

Parameter Description

This parameter specifies the calculation range for determining whether the template point cloud matches the scene point cloud, and is used to sort the matching results.

Tuning Instructions

Generally, this parameter is not adjusted. If the scene point cloud has large fluctuations, the correct matching results may occupy fewer voxels, in which case this parameter can be appropriately increased to increase the number of voxels occupied by the correct matching results (incorrect matching results will have a smaller increase in occupied voxels due to larger deviations); conversely, if the scene point cloud is relatively small, this parameter can be appropriately reduced to decrease the number of voxels occupied by incorrect results, allowing the correct results to be ranked higher.

Parameter Tuning Experience Sharing

How to Improve 3D Coarse Matching Calculation Accuracy

Matching calculation time and accuracy are inversely proportional; improving matching accuracy will increase calculation time. "3D Coarse Matching" only calculates an approximate pose, and there is a subsequent "3D Precise Matching" operator. Therefore, the calculation accuracy of "3D Coarse Matching" does not need to be very high, and accuracy and cycle time need to be considered comprehensively. The main parameters affecting matching accuracy are "Distance discrete quantity" and "Reference point step size", followed by "Clustering angle threshold" and "Clustering distance threshold" parameters.

  1. First, try to increase the "Distance discrete quantity" or decrease the "Reference point step size" parameter. This improves accuracy without significantly increasing calculation time;

  2. If this is not satisfactory, simultaneously increase the "Distance discrete quantity" and decrease the "Reference point step size" parameter, paying attention to the calculation time when adjusting parameter values;

  3. If still not satisfactory, then try to decrease the "Clustering angle threshold" and "Clustering distance threshold" parameters.

How to Remove Overlapping Matching Results

Overlapping matching results are directly related to the "Upper limit of the number of output pose", "Voting filter threshold", and "Model overlap threshold" parameters, and secondarily to the "Matching point search range" parameter.

  1. First, decrease the "Upper limit of the number of output pose" parameter or increase the "Voting filter threshold";

  2. If this is not satisfactory, then increase the "Model overlap threshold" or "Matching point search range".