Vision Pipeline Adjustment
Computer vision is one of the most important and complicated elements of a pick and place machine. Vision is used in four main places:
- Finding the homing fiducial (Top Camera)
- Finding PCB fiducials (Top Camera)
- Calibrating Nozzle Tips (Bottom Camera)
- Calibrating component position (Bottom Camera)
The default settings in the provided configuration files work well, but depending on your lighting conditions, component geometry, or other factors, you might need to adjust them.
Tutorial Video
This video walks you through the process of calibrating vision for the LumenPnP. Each page in this section has a link to the relevant timestamp of the video.
Ambient light
Because machine vision is heavily dependent on lighting, we recommend maintaining consistent lighting in the room where you're operating the LumenPnP. Changing the lighting in the room can require readjusting your vision settings.
Computer Vision Basics
Computer vision used in OpenPnP takes photos from your top or bottom camera and passes them through a "Pipeline" of stages to identify what is in the image. Stages fall into a few categories:
- Manipulating the photo to make it easier for the computer to identify parts of the photo. For example:
Threshold
. - Identifying certain elements of the photo. For example:
DetectCirclesHough
. - Showing you more information on the screen so that you can build, debug, and tweak the pipeline. For example:
DrawCircles
.
You will need to fine-tune each stage to adjust how it works by changing its "parameters." For example, the Threshold
stage takes in the photo from your camera (or the previous stage in the pipeline) and turns it into stark black and white. It uses a threshold
parameter to pick the brightness level where the distinction is made.
For more complicated changes to your pipeline can also add and remove stages.
Pipeline Editing View
The pipeline editing view has several sections and features:
- The list of stages. Click on a stage to show it's results in the main view, and show its parameters in the stage settings.
- The main view. This shows the result of the currently selected stage unless a particular stage is pinned (see #5).
- Stage output. This shows error messages if there's a problem with your stage or pipeline.
- Stage settings. This lets you change the settings for the selected stage.
- Pin Image. This lets you keep the results of the currently selected stage on on main view, even if you select another stage. Use this to pin a debugging stage so that you can quickly see the results of changes to a stage you're editing.