- GenICam
-
GenICam (Abk. für Generic Interface for Cameras) ist eine generische Programmier-Schnittstelle für Kameras, die in der industriellen Bildverarbeitung eingesetzt werden.[1] Ziel dieses Standards ist die Entkopplung der Schnittstellen-Technologie industrieller Kameras (wie z.B. GigE Vision oder Camera Link) von der Programmier-Schnittstelle der Benutzer-Anwendung (API). GenICam wird von der European Machine Vision Association (EMVA) betreut.[2] Die Arbeit an dem Standard wurde im Jahr 2003 begonnen[3] und sein erstes Modul, GenApi, wurde 2006 ratifiziert. Das letzte Modul, GenTL, folgte im Jahr 2008.[4]
Inhaltsverzeichnis
Module
GenICam besteht aus drei Modulen, die helfen sollen, die wichtigsten Aufgaben in der industriellen Bildverarbeitung auf generische Weise zu lösen. Die Module heißen:
- GenApi: Dieses Modul wird für die Konfiguration der Kamera, des Kamera-Zugriffs und der Kamera-Steuerung benutzt. Es verwendet dazu eine Datei im XML-Format.
- SFNC (Standard Feature Naming Convention): Dies sind die empfohlenen Bezeichnungen und Typisierungen für gemeinsame Kamera-Eigenschaften zur Förderung der Kompatibilität.
- GenTL (Transport Layer): Diese Schicht ist für den Transport der Kamera-Daten in die Benutzer-Anwendung verantwortlich.
Funktionen
GenICam unterstützt fünf Hauptfunktionen:[5]
- Kamera-Konfiguration — Diese Funktion unterstützt eine Reihe von Kamera-Eigenschaften wie z.B. Bildgröße, Aufnahmegeschwindigkeit, Pixelformat, Gain, Offset etc.
- Bilderfassung — Diese Funktion erstellt Zugänge zwischen der Kamera und der Benutzer-Schnittstelle und veranlasst das Empfangen von Bildern.
- Grafische Benutzeroberfläche (GUI) — Diese Funktion stellt eine Anwender-Schnittstelle für die nahtlose Kommunikation mit der (den) Kamera(s) bereit.
- Übertragung zusätzlicher Daten — Diese Funktion ermöglicht Kameras das Übertragen von zusätzlichen Daten, die über die reinen Bilddaten hinausgehen, wie beispielsweise Histogramm, Zeitstempel oder ROI.
- Übertragung von Ereignissen — Diese Funktion ermöglicht es Kameras mithilfe eines „Ereignis-Kanals“ mit einer Anwendung zu kommunizieren.
Kompatibilität
Viele Unternehmen der industriellen Bildverarbeitung haben zu dem Standard beigetragen. Die wichtigsten an der Ausarbeitung des GenICam-Standards beteiligten Unternehmen sind:[6]
- Basler
- DALSA
- e2v semiconductors
- JAI Pulnix
- Leutron Vision
- Matrox
- MVTec Software
- National Instruments
- Pleora Technologies
- Stemmer Imaging
Die Standardisierung bewirkt, dass Produkte unterschiedlicher Hersteller untereinander technisch kompatibel sind. Dank der zahlreichen Unternehmen, die an der Definition von GenICam beteiligt sind, und der vielfältigen Möglichkeiten, die sich für den Anwender durch den Vorteil der Kompatibilität ergeben, setzen bereits viele Hersteller von Bildverarbeitungskomponenten den Standard in ihren Produkten ein. Allerdings bieten auch Unternehmen, die an der Entwicklung des Standards beteiligt waren, weiterhin eigene, proprietäre SDKs an. Es ist deshalb abzuwarten, ob GenICam sämtliche eigenentwickelte SDKs ersetzen und so das angestrebte Ziel einer vollständigen Kompatibilität erreichen kann.[7]
Einzelnachweise
Kategorien:- Bildverarbeitung
- Ethernet
- Kameratechnik
Wikimedia Foundation.