Bildverarbeitung

Softwareentwicklung auf neuen Wegen

Konfigurieren statt Programmieren

03.12.2009 -

Während die Kosten für Hardware-Komponenten in der Bildverarbeitung beständig sinken, bleiben die Entwicklungskosten für die Applikations-Software immer noch hoch. Daraus entsteht der Wunsch nach neuen Wegen in der Softwareentwicklung: weg von der zeitaufwändigen und kostenintensiven Programmierung in Hochsprachen, hin zu Entwicklungstools, die eine einfache Konfiguration der Anwendung ermöglichen. Der Matrox Design Assistant ist eine Antwort hierauf: Programmierer werden entlastet und auch Nicht-Programmierer werden in die Lage versetzt, BV-Applikationen umzusetzen.

Softwarelösungen zur grafischen oder visuellen Anwendungsentwicklung standen bislang immer vor drei Herausforderungen: die Übersichtlichkeit auch bei komplexen Aufgaben zu wahren, die Möglichkeit ein kundenspezifisches User-Interface zu erzeugen und die Freiheit, bei Bedarf den bestehenden Funktionsumfang schnell und einfach zu erweitern. Der Matrox Design Assistant erfüllt alle diese Forderungen: mit dieser Software-Entwicklungsumgebung werden vollständige Bildverarbeitungs-Applikationen mit den dazugehörigen User-Interfaces entwickelt und interaktiv konfiguriert. Hierfür bietet der Design Assistant zwei komfortable Werkzeuge: ein Tool um das Flussdiagramm (Flowchart) zur Ablaufsteuerung zu entwerfen und einen HTML-Editor zur Erstellung des Benutzer-Interfaces (Operator View).

Bausteine für das Flussdiagramm

Im Flussdiagramm wird der logische Ablauf einer Bildverarbeitungs-Anwendung beschrieben. Das Diagramm besteht aus einzelnen Aktionsblöcken (Steps), die miteinander verknüpft und dann sequentiell abgearbeitet werden. Der Design ­Assistant bietet einen großen Vorrat an konfigurierbaren Steps, die sich in fünf Funktionsgruppen einteilen lassen: Image, Analysis & Processing, Flow Control, Communication und Utilities.
Die Gruppe „Image" enthält Steps für die Bildaufnahme und zum Laden abgespeicherter Bilder. „Analysis & Processing" vereint Module für unterschiedliche Bildverarbeitungs-Aufgaben (siehe Aufzählung am Ende). Alle Algorithmen stammen aus der felderprobten Matrox Imaging Library (MIL), die seit vielen Jahren weltweit Stabilität, Genauigkeit und Performance garantiert. „Flow Control" stellt die Steps zur Verfügung, die den Ablauf des Flussdiagramms steuern: Entscheidungen und Verzweigungen, Erzeugen und Beenden von Programm-Schleifen sowie die Möglichkeit den Programm-Ablauf zu pausieren, fortzusetzen oder ganz zu beenden. „Communication" ermöglicht es, der Außenwelt Ergebnisse mitzuteilen und im Flussdiagramm auf externe Ereignisse zu reagieren. Die Funktionen umfassen digitale User-I/Os, serielle RS-232, Netzwerk, Maus- und Tastatureingaben, bis hin zu den Industrie-Protokollen Ethernet/IP und ModBus. Die Gruppe „Utilities" bietet schließlich Zähler und Variablen zum Speichern beliebiger Daten an. Mit diesen Steps lassen sich auch Logfiles erzeugen und Timestamps verwalten und auswerten.

Übersichtlicher Designprozess
Das Flussdiagramm wird aus den Steps zusammengesetzt und wie in Abbildung 1 zu sehen, innerhalb einer Hauptschleife sequentiell abgearbeitet. Bereits während der Anwender das Flussdiagramm Stück für Stück aufbaut, kann er jeden einzelnen Aktionsblock interaktiv parametrisieren und testen. Parallel dazu wird eine kurze Online-Hilfe mit den wichtigsten Einstell-Möglichkeiten zur Konfiguration angezeigt. Die Konfigurations-Masken überlagern weder das Flowchart noch das Kamerabild mit den aktuellen Mess-Ergebnissen. Damit bleibt der gesamte Design-Prozess selbst bei großen und verzweigten Flussdiagrammen stets sehr übersichtlich (Abb. 2).
Mit 38 verschiedenen Aktionsblöcken lassen sich unterschiedlichste Anwendungen - von der einfachen Anwesenheits-Kontrolle bis hin zur komplexen Messaufgabe - schnell, sicher und komfortabel umsetzen. Die Funktionen aus der Matrox Imaging Library bilden zusammen mit den flexiblen Kommunikations-Möglichkeiten innerhalb des Flussdiagramms, zum Benutzer-Interface und zu den externen Peripheriegeräten über die verschiedenen Schnittstellen, eine stabile Basis für alle Anwendungen.

Grenzenlos erweitern
Sollten sich Anforderungen ergeben, die der bestehende Funktions-Vorrat nicht abdeckt, besteht die Möglichkeit, schnell und einfach eigene Funktionen (Custom Steps) zu entwickeln und in den Design Assistant einzubinden. Diese neuen, selbsterzeugten Aktionsblöcke integrieren sich nahtlos und können dann - genau wie die bestehenden Steps - interaktiv und ohne Programmier-Know-how verwendet werden. Die eigenen Funktionen werden mit Microsoft C# programmiert, optional kann dabei auf den Funktions- und Leistungsumfang der Matrox Imaging Library zugegriffen werden. Beispiele aus der Praxis für von Kunden erstellte Aktionsblöcke sind beispielsweise ein FTP-Client zum Übertragen von Fehler-Bildern per FTP, ein Parser von Konfigurations-Files und spezielle Berechnungsmodule.

Operator View streng getrennt
Eine weitere Stärke des Design Assistant liegt in der strikten Trennung zwischen der Logik der Bildverarbeitungs-Applikation, also dem Flussdiagramm, und dem User-Interface, das der Anwender zur Laufzeit der Anwendung sieht (Operator View). Während das Flussdiagramm den logischen Ablauf repräsentiert, stellt der Operator View die Benutzer-Oberfläche für den Anwender zur Visualisierung und gegebenenfalls Parametrisierung des Prüfprogramms dar (Abb. 3). Der Operator View wird innerhalb des Design Assistant mit einem graphischen Editor erzeugt. Alle graphischen Bedienelemente der Bildverarbeitungs-Anwendung werden hier angelegt und mit den entsprechenden logischen Ein- und Ausgaberoutinen des Flussdiagramms verknüpft. Zur Verfügung stehen Ein- und Ausgabefelder, Buttons, Anzeigen für das Kamerabild und graphische Elemente.
In der Regel ist der Operator View eine Webseite, die dann zur Laufzeit von jedem PC aus über das Netzwerk angezeigt werden kann. Darüber hinaus besteht die Möglichkeit das GUI für spezifische Anforderungen z. B. mit Visual Basic .NET umzusetzen.

Schnelle Applikationsentwicklung
Der Design Assistant ist ein mächtiges Werkzeug für die schnelle Applikations-Entwicklung. Mit der übersichtlichen und leicht zu bedienenden Entwicklungs-Umgebung lassen sich in allen Branchen unterschiedlichste Bildverarbeitungs-Aufgaben ohne jede Programmierung lösen. Gleichzeitig bringt er ein Höchstmaß an Flexibilität und Konfigurierbarkeit mit sich und sogar eigene, spezifische Algorithmen können direkt eingebunden werden.
In Verbindung mit der intelligenten Kamera Matrox Iris GT, die in einem kompakten IP67 Gehäuse dank des Intel Atom 1,6 GHz Prozessors höchste Performance liefert, eröffnet der Design Assistant OEMs, Systemhäusern und Endanwendern die Möglichkeit, schnell und flexibel Lösungen zu entwickeln und die zeitaufwändige Programmierung einzusparen.

 

Bildverarbeitungsmodule der Funktionsgruppe Analysis & Processing
Image Processing     Bildfilter, arithmetische, geometrische, morphologische Operationen, LUT, ­Binarisierung
Intensity Checker    Berechnung und statistische Analyse der Helligkeitswerte im Bild oder Bildbereich 
Blob Analysis           Erkennen, Zählen und Vermessen von Objekten (Blobs)
Edge Locator          Kantenantastung zur Positionsbestimmung
Metrology               Vollständige Vermessung von 2D-Objekten inkl. Toleranzen
Code Reader           Lesen von 1D- und 2D-Codes (Barcode, Datamatrix, Composite)
String Reader          Lesen von Klarschrift, unabhängig von Verzerrung, Skalierung und Degradierung
Pattern Matching     Grauwertbasierte Mustererkennung
Model Finder           Konturbasierte Mustererkennung, rotations- und größenunabhängig
Bead Inspection       Vermessen und analysieren von Kleberaupen, Wulsten und Graten

Kontakt

Rauscher GmbH

Johann-G.Gutenberg-Str. 20
82140 Olching
Deutschland

+49 8142 44841 0
+49 8142 44841 90

Spannende Artikel zu Fokus-Themen finden Sie in unseren E-Specials. Lesen Sie jetzt die bisher erschienenen Ausgaben.

Zu den E-Specials

Media Kit

Die Mediadaten 2025 sind jetzt verfügbar! Laden Sie sie hier herunter.

Industrie-Lexikon

Begriffe aus der Bildverarbeitung und Automation, die man kennen sollte

Zum Lexikon

Spannende Artikel zu Fokus-Themen finden Sie in unseren E-Specials. Lesen Sie jetzt die bisher erschienenen Ausgaben.

Zu den E-Specials

Media Kit

Die Mediadaten 2025 sind jetzt verfügbar! Laden Sie sie hier herunter.

Industrie-Lexikon

Begriffe aus der Bildverarbeitung und Automation, die man kennen sollte

Zum Lexikon