Creating Vision Sequences for Calibration

Before you can calibrate a camera, you must create a vision sequence that can find the calibration target(s).

Vision Sequence for Detecting One Target

When the mobile camera, fixed upward camera, or fixed downward camera whose reference point type is “EndEffector” is used, the sequence will search for one calibration target in the entire field of view.
Be sure to define the size of the search window as large as the entire image display.
The X and Y results for the last object in the sequence will be used by the calibration software during calibration. For available objects, refer to the following.
"Vision Guide 8.0 Properties & Results Reference - PixelXYU Result"

Vision Sequences for Detecting Nine Targets

Vision sequences necessary for calibration of fixed downward camera or standalone camera whose reference point type is “TaughtPoints (teach point)” must locate nine calibration targets. There are two methods to do this.

  • Method 1: Create an object for each target, for a total of nine objects.
  • Method 2: Use one of the multi-result objects (Blob or Correlation objects, etc.) to return nine results. Set NumberToFind to “9”, so that nine results will be returned.

    Vision objects placed in order for Standalone Camera Calibration

With the first method described above, the objects must be placed on the image window in the same order that the targets will be taught. The first object will be in the upper left corner, the second at top center, the third in the upper right corner, etc.
For fixed downward camera calibrations, the order for the middle row of objects is in reverse order: 6, 5, 4. This is because moving to the positions in the order 1, 2, 3, 6, 5, 4, 7, 8, 9 produces the most efficient motion from the robot and helps make calibration complete faster.

Vision Sequence for Distortion Correction

To perform distortion correction, a vision sequence needs to be created in the following steps in advance.

  1. Set a square grid pattern.
  2. Create a sequence to detect the square grid pattern.
  3. Select Lamp property as necessary.
  4. Create a Blob object and expand a search area to the entire window.
  5. Set NumberToFind property to “All”.
  6. Set RejectOnEdge property to “True”.
  7. Set ThresholdAuto, ThresholdHigh, ThresholdLow, MinArea, MaxArea and other properties to detect the dots.
  8. Execute the created sequence. Check if more than 100 points can be detected.

    Image example of square grid pattern captured by camera with tilt angle

Vision Sequence for Local, Tool, and Arm Setting

To detect the local coordinate of the calibration plate by using a camera, a vision sequence to recognize the calibration plate is necessary.
Set properties for the sequence (ExposureTime, etc.) so that dots on the optional calibration plate can be recognized clearly. The vision object is not necessary.
To execute calibration of tool and arm settings using a camera, a vision sequence for detecting position of the calibration target is necessary. Create a sequence that has a vision object for detecting a position of one target in the same way as Vision Sequence for Detecting One Target.