3D Localization Configurator

From 3D scanning Knowledge base - Photoneo wiki
Jump to: navigation, search

3D Localization Configurator is a standalone application used to generate configuration file for Photoneo 3D Localization SDK. The configuration file contains the CAD of the searched object, defined gripping point and the localization parameters.

Localization Configurator requires PhoXi Control Application to connect to 3D scanner or file camera.


To download Localization SDK, visit our product webpage: Localization SDK

The Localization Configurator is installed together with the SDK. It serves as a simple wizard to generate PLCF file, which is used as an input for Localization SDK. The example code of how to use the SDK is located in installation folder, which is usually

  • C:\Program Files\PhotoneoSDK\Localization\Examples\ in Windows
  • \opt\PhotoneoSDK\Localization\Examples\ in Ubuntu

Copy the example directory outside the Program Files directory (because of the user rights) and use CMake to generate the project.

Setting the gripping point

The gripping point defines the point where the object should be picked by the gripper. Every gripper has a defined tool point. Gripping point and tool point together define the mutual position of the gripper and gripped object for bin picking applications.

In Localization Configurator, the gripping point has a position and orientation with respect to CAD model coordinate system. When the localization process finds the object, it returns the position and orientation of this gripping point (usually in robot coordinate space).

Localization parameters

Overlap with model
This percentage express how many points have to be seen on the object to consider the result correct
Higher percentage leads to higher accuracy and longer computation time

Amount of time
If checked, the localization process stops after the defined time limit
This constrain can be combined with "Number of instances"

Number of instances
If checked, the localization process stops after the defined number of objects is found
This constrain can be combined with "Amount of time"

Use Smart Memory
If checked, the localization process remembers the positions of found objects from the last run and uses this information in new search
This setting can strikingly speed up the localization process
The assumption for using this setting is that the scene is mostly static (only few parts change their position between consecutive searches)

Check occlusions only in a distance to Gripping Point
If checked, the calculation of the object occlusion is limited only to the area in the defined distance to the gripping point
By default (this option is not checked), object is considered occluded when there is another object on top of it (from the camera perspective)
The assumption for using this setting is that the object can be safely picked also when there are other objects on top of it (e.g. these objects will fall down without damage when the underlying object is being picked)

Using a PRAW file in the 3D Localization Configurator

First, open the PRAW file in PhoXiControl either by dragging and dropping the PRAW file into the PhoXiControl window or by directly opening the PRAW file with PhoXiControl. After this has been done, the Localization Configurator will have the option of using the File Camera of the PRAW file as the source scene in the localization. PRAWimport.png

Advanced parameters

Configuration Localization.png


First the algorithm splits the scene into segments. Segment should be a continuous meaningful area in the scan. In the visualizer each segment has different shade of green color. When there are multiple objects in the scene, each object should have different shade of green. It does not matter when the object is split into several segments. There are 3 advanced parameters affecting the segmentation.

Scene clustering level

higher scene clustering level increases the amount of created segments

Scene minimal cluster size

The nominal number of points in a segment. Smaller segments are filtered out (gray color).

Scene maximal cluster size

The nominal number of points in a segment. Bigger segments are filtered out (gray color).

Matching algorithm

The matching algorithm advanced parameter has 3 possible settings.

Surfaces (default)

Surfaces is a useful setting in case the object has definite depth and indefinite edges and/or a rugged surface.


Combined is a useful setting in case the object is approximately planar and has clear edges (i.e. it is not rounded).

Model Keypoints Sampling

The density of model subsampling. Higher density means more points and more extensive computations. For combined matching algorithm the dense option is not so heavy on the computation and might bring better results.

Local Search Radius

The algorithm works on searching around numerous key points in the scene. This parameter sets the radius for searching. For specific situations, it might speed up or slow down the search, but should not significantly affect whether the object is localized or not.

Tolerance of matching to noise and accuracy

There are 3 advanced parameters affecting the tolerance of matching to noise and accuracy of the fit.

Feature fit consideration level

This parameter is related to the segmentation. This parameter, expressed as a percentage of object surface from a specific viewpoint, defines the minimal segment size that is considered relevant for matching with the object (smaller segments will be considered irrelevant for localizing the object).

Maximal feature fit overflow

This parameter is defined as the percentage of the segment which is allowed to overflow the fitted object (the percentage is calculated from the size of the segment).

Global maximal feature fit overflow

This parameter is defined as the percentage of all segments which is allowed to overflow the fitted object (the percentage is calculated from the sum of segment sizes).

Fine alignment

There are 3 advanced parameters affecting the fine alignment algorithm.

Fine Alignment Iterations

It is defined as the number of iterations of fine alignment algorithm. Most common useful range: 6 - 30

Fine Alignment Point Set

This parameter has two possible settings either Surface or Edge points. Edge points might be more useful for planar and rectangular objects, but commonly remains on the Surface setting.

Fine Alignment Point Set Sampling

It is best to keep on Sampled, use Complete only in the situation when the point set is set to Edges

Projection parameters

Projection Tolerance and Projection Hidden Part Tolerance - percentages, usually set to 100 %, which means it is turned off. Imagine scanning a thin L shaped object and scanning it directly from the top, therefore one side can be seen almost completely (except the shadows), but from the other side only the edge can be seen. In this case the localization might find the object flipped because it relies on the side that is visible and few points on the edge are irrelevant. By setting this tolerance parameter to lower percentage, e.g. 10 - 45 % the localization will consider shadowing of the object on itself and further indicators to find correct "flip" of the part.


This parameter is identical to the parameter Overlap with model in the main application window. After the algorithm finds the object in the scene, it calculates number of points that fit on the CAD model. The model is "covered" with the 3D points only to some extent and this coverage we call overlap. When the overlap is lower than specified number, the fitted object is discarded by the algorithm.

3D visualiser

3D visualiser helps to test the localization parameters on specific object. It displays the 3D point cloud acquired from 3D scanner or file camera via PhoXi Control Application.

After starting the localization process, the CAD models of found object are drawn into the point cloud. The color of object indicates whether the object is occluded (blue color) or not occluded (gold color). Gold objects are the most suitable to pick.


Left mouse button drag
rotate the scene
Mouse wheel or vertical right mouse button drag
Zoom in/out
Mouse wheel drag or SHIFT + left mouse button drag
move the scene
CTRL + left mouse drag
tilt the scene
Move mouse over some point and press F
Set the focus on this point
Press +
Increase the size of points
Press -
Decrease the size of points