Dot Grid-Based Calibration Code Snippet

This code snippet shows how to perform a dot grid-based calibration.

C++

#include <eVision/Easy/ECameraCalibration.h>
using namespace eVision;

// Calibration image containing a dot grid pattern
EImageBW8 calibImage;

// ECameraCalibration constructor
ECameraCalibration calib;

// Distance between the rows and columns of the grid
float rowPitch = 5.0f;
float columnPitch = 5.0f;

// Additional calibration mode
bool enableEmpiricalModes = false;
bool enableAdvancedMode = true;

// Perform the calibration
unsigned int bestCalibrationModes =
  calib.AutoCalibrateDotGrid(&calibImage, columnPitch, rowPitch, enableEmpiricalModes, enableAdvancedMode);

C#

using eVision;
// Calibration image containing a dot grid pattern
EImageBW8 calibImage = new EImageBW8();

// ECameraCalibration constructor
ECameraCalibration calib = new ECameraCalibration();

// Distance between the rows and columns of the grid
float rowPitch = 5.0f;
float columnPitch = 5.0f;

// Additional calibration mode
bool enableEmpiricalModes = false;
bool enableAdvancedMode = true;

// Perform the calibration
uint bestCalibrationModes =
  calib.AutoCalibrateDotGrid(calibImage, columnPitch, rowPitch, enableEmpiricalModes, enableAdvancedMode);

Python

import eVision

# Calibration image containing a dot grid pattern
calib_image = eVision.EImageBW8()

# ECameraCalibration constructor
calib = eVision.ECameraCalibration()

# Distance between the rows and columns of the grid
row_pitch = 5.0
column_pitch = 5.0

# Additional calibration mode
enable_empirical_modes = False
enable_advanced_mode = True

# Perform the calibration
best_calibration_modes = calib.AutoCalibrateDotGrid(calib_image, column_pitch, row_pitch, enable_empirical_modes, enable_advanced_mode)