A camera calibration can be necessary for various reasons and serve several purposes. Basically, the camera system is set in relation to a reference system and thus “calibrated”. All values are then calculated in the reference system.

Reasons for calibration:

  • Conversion of camera coordinates (in pixels) to world coordinates (in mm, µm, etc.)

  • Calculate and compensate for inaccuracies of the camera system

  • Establish reference of camera and positioning system (robot, axis system, laser)

  • Defining a reference position (e.g. zero position, zero angle)

  • Defining component setpoints

Viper.NET uses the calibration tools available in VisionPro, which are included at various points, with pros and cons for each inclusion:

  • In the ToolGroup (Cognex Standard)

    • [+] The calibration is included in the VPP and can be copied/saved with the job. No further configuration is necessary.

    • [-] Calibration is usually related to a camera that can be used in multiple jobs and types. Recalibration, e.g. with a checkerboard after rebuild, must be performed in all jobs.

  • Manipulation ToolGroup of the image source

    • [+] The calibration is stored with the image source.

    • [+] Local or (conditionally) global calibrations (CogFixtureTool only) possible.

    • [-] Quite hidden and therefore hard to find.

  • Global calibrations

    • [Calibrations can be managed centrally.

    • [+] Clear assignment via GUI.

    • [-] Additional configuration required.


Basically the use of global calibration and the assignment via Assignment of calibrations is recommended