Easy3DMatchMatch
Support |
|
||||||
Required licenses |
Easy3DMatch |
||||||
Recommended images |
The images from the folder Sample Images\3D\Easy3DMatch\Match |
||||||
Location |
3D Processing\Easy3DMatchMatch \ |
||||||
![]()
|
In Visual C#, you cannot set all the options of the E3DMatcher.
Purpose
The matching consists in aligning the sample on the reference and comparing both to find defects in the sample.
This sample program demonstrates how to:
□ | Match a sample (point cloud or ZMap) on a reference (3D mesh, point cloud or ZMap). |
Code highlights
Use the recommended images:
□ | Reference: .stl or .ply file with goldenScan in the name. |
□ | Sample: .ply file with goldenScan in the name. |
□ | Both reference and sample files should come from the same folder (Object In a general content, the term object should be understood with the meaning of a class instance. In EasyObject, an object is a maximally-sized area of adjacent connected pixels belonging to the layer foreground. 1 or Object 2). |
□ | In case of .ply reference, they should both contain top or both contain bottom. |
This sample contains many options that are not detailed here. Only the main code path is described here.
1. | Set the reference mesh with its viewpoint (azimuth and elevation angle). |
matcher_.SetReference(referenceMesh_, azimuthReference_, elevationReference_);
2. | Perform the matching for the given sample point cloud with its viewpoint and retrieves the result. |
match_ = matcher_.Match(samplePointCloud_, azimuthSample_, elevationSample_);
3. | Retrieve the result of the comparison as a point cloud containing the point-to-point distances between sample and reference. |
matcher_.GetComparisonPointCloud(resultPointCloud_, true, true, showComparisonResultOnReference_, showResultFullModel_);
4. | Highlight the anomalies detected by the E3DMatcher in the viewer. |
viewer_.AddRenderSource("anomaly_" + i.ToString(), match_.Anomalies[i].BoundingBox, new EC24(255, 255, 255), 128);