Home > History back  Previous chapter  Next chapter  Print  

GenICam structure and glossary of terms

uEye GenICam Integration Version 4.00

GenICam structure and glossary of terms

XML Camera Definition

A manufacturer of a GenICam compatible camera series will not only supply a compatible driver for that series, but also a description file written in XML format. This camera description, which you can imagine as a kind of machine-readable camera manual, specifies the supported functions and the camera registers that need to be set. The entry for the width property, for example, looks like this in the uEye XML definition:

<Integer Name="Width" NameSpace="Standard">
  <ToolTip>Width of the image (px)</ToolTip>
  <Visibility>Beginner</Visibility>
  <pValue>WidthReg</pValue>
  <pMin>WidthMinReg</pMin>
  <pMax>WidthMaxReg</pMax>
  <pInc>WidthIncReg</pInc>
  <Representation>Linear</Representation>
</Integer>

The XML file is stored either directly in the camera or in the PC when the driver/transport layer is installed.

GenICam Programming Interface (GenAPI)

At the core of the standard is the programming interface named GenAPI, through which a software application can access the camera. First, the API loads the description files of the existing GenICam compatible cameras (parsing) and creates a feature tree from the content of the descriptions. These feature descriptions are then used to check each connected camera for the functions it supports. Only those functions are then enabled. Software based on this principle is thus applicable across all camera models and technologies.

The GenICam committee provides a reference implementation of the GenAPI on its website. Non-members of the GenICam group can use a compiled version of the reference implementation, while members can additionally access the source code. The reference implementation is not mandatory. You can also program your own GenAPI according to the GenICam standard description.

GenICam Transport Layer (GenTL)

For every GenICam compatible device, a transport layer has to be provided in the system. The transport layer is usually also supplied by the hardware manufacturer. It translates the GenAPI's commands into commands for the camera driver, which is usually proprietary. Another task of the GenTL is to pass a camera's XML description to the GenAPI.

Factory

The factory layer is provided below the GenAPI in the interface structure. It scans the system for all existing transport layers and makes them available to the GenAPI. This allows using devices with different interface technologies – or from different manufacturers – in the same application. The factory layer is not yet included in Version 1.1 of the released GenICam standard.

Fig. 2: Structure of the GenICam interface

Fig. 2: Structure of the GenICam interface

Standard Feature Naming Convention (SNFC)

This convention defines the names and behavior of over 180 camera features and properties that an XML camera definition can contain. The defined functions are classified as either mandatory, recommended or optional. Smooth interoperability between hardware from different manufacturers largely depends on whether the individual manufacturers comply with these conventions.

GenICam Producer

The term GenICam producer refers either to image acquisition hardware (e.g. the uEye camera series) that is provided by a GenICam transport layer or to the manufacturer of this hardware.

GenICam Consumer

The term GenICam consumer refers to application software (e.g. an image processing library) that can access compatible image acquisition hardware through the GenAPI.

Compatibility

To check whether GenICam products (producers and consumers) are compatible, you can look them up in a Nutrition Facts table. This table displays the supported GenICam version and the camera interfaces (i.e. the transport layers). It also indicates for each product whether it is a GenICam consumer or producer (see above).

Fig. 3: Example of the GenICam compatibility table

Fig. 3: Example of the GenICam compatibility table


Suggestion for improvement? Send us your short Feedback on this chapter. Thank you very much!

For technical questions please contact you local distributor or use the support form on our website.


© 2012 IDS Imaging Development Systems GmbH
http://www.ids-imaging.com