Build a showcase demo with Pattern

This article will guide you in setting up a simple robot picking demo with Pickit Pattern. This detection engine is made for picking objects with simple geometrical shapes stacked into an organized pattern. In this demo we are picking cardboard boxes. Click here to see the video of this demo.


The hardware requirements to set up this demo are:

  • A Pickit vision system

  • A robot and gripper, UR5 + vacuum suction cup

  • An additional computer or laptop

  • Cardboard boxes of equal size, i.e. 115 x 65 x 30 mm (contact to get exactly these parts).

It is assumed that the Pickit system is mounted around 700 mm above the table and is running correctly.

Your first detection (Configure the Pickit files)

Now that every component is connected to the Pickit system, we are able to configure Pickit.

In the Pickit Web interface, create a new setup and product file:

  • Setup: pattern_demo.

  • Product: pattern_demo.

Configuring the Pickit comes down to three simple steps:

  1. Create a scene where you want to pick the parts

  2. Define the shape of objects that need to be picked

  3. Define a picking strategy

Create a scene

The first step defines where Pickit has to look for objects. This is done by defining the Region of Interest (ROI).

Below you can see a picture of a well-defined ROI for this application. All useless information is filtered out (the table and surroundings), keeping only information of the parts.

Don’t forget to save the settings in the corresponding Setup files.


Define the detection parameters

The second step consists in setting up the Pickit Pattern detection engine. In this application Pickit will look for fixed sized rectangular shapes.

The images below show the results of the clustering and fitting steps. See the following article on how to use Pickit Pattern.

../_images/pattern-demo-clusters.png ../_images/pattern-demo-objects.png

In this demo, the following parameters are used:

  • Clustering: Non-touching

  • No rejecting clusters

  • Object model: rectangle

  • Contour: inner and outer

  • 3D tolerance: 15 mm

  • 2D tolerance: 10 mm

  • Expected length: 115 mm

  • Expected width: 65 mm

  • Expected orientation: either X||X or X||Y depending on the pattern orientation w.r.t. the ROI frame in the 3D view.

  • 2D contour score: 45%

  • 2D surface score: 95%

  • Fusion: None

  • Downsampling: 1 mm

Don’t forget to save the settings. This will update the Product file.

Define the picking parameters

Finally the picking strategy is defined. For this application no special strategies are applied. However, more information about the picking strategies can be found in the Picking article.

  • Check collision with: none

  • Ordering Strategy: Highest product center

Don’t forget to save the settings. This will update the Product file.


Next step is the robot-camera calibration. This process teaches Pickit where the robot base is located w.r.t. to the camera. This information is used to transform the object pick points into robot coordinates. A detailed description in robot-camera calibration can be found in the article Calibration. Do not forget to save after the calibration is finished.

Program the robot

Now Pickit is configured, the only thing left to do is programming the robot. The robot used in the demo video is a UR5, but a similar program can be created on any other robot.

The idea of the program is to trigger a detection and pick all found parts one by one. The parts are dropped off on a running conveyor. Since the boxes are nicely stacked and it is unlikely that a part will move when one is pickit, it is not necessary to trigger a new detection every time.

  • The UR robot program: Download link here.


Happy picking!

If you followed all steps above, you’re ready building your Pickit product showcase using the Pattern detection engine. Happy picking!

If you need any help with one of the steps above, please contact