Industrielle Bildverarbeitung (Machine Vision)
Unter industrieller Bildverarbeitung versteht man die Verarbeitung von Informationen, welche in Form von Bildern dargestellt werden. Hierbei werden die Bilder generell durch industrietaugliche Kameras geliefert. Die gewünschte Information wird meist durch spezielle Beleuchtungen hervorgehoben.
Wir nehmen in dieser Beschreibung speziell Bezug auf die industrielle Bildverarbeitung, da dies das Tätigkeitsfeld ist, in welchem sich die Firma k²bytes hauptsächlich bewegt.
Die industrielle Bildverarbeitung zielt speziell auf den Industriebereich ab. Sie ist ein Teilbereich der digitalen Bildverarbeitung. Andere Teilbereiche sind zum Beispiel der Bereich Medizin, Verkehrsüberwachung oder der Bereich der Unterhaltungselektronik (z.B. Computerspiele).
Softwaretechnisch überschneiden sich diese Bereiche häufig. Ein starker Unterschied ist in der verwendeten Hardware (Cameras, Beleuchtung) zu erkennen. So ist die verwendete Hardware der industriellen Bildverarbeitung natürlich auch für den industriellen Einsatz ausgelegt. Sie hält stärkeren Vibrationen stand und je nach Einsatzgebiet ist sie zum Beispiel Spritzwasser geschützt.
Anwendungsgebiete der Industriellen Bildverarbeitung
Zu den Aufgaben der industriellen Bildverarbeitung zählen zum Beispiel das Hervorheben von nicht eindeutigen Informationen durch spezielle Filter, Vermessen von Bauteilen, Lokalisieren von bestimmten Objekten und das Überprüfen auf Vollständigkeit.
Dies ist aber nur ein Auszug von Anwendungsmöglichkeiten der industriellen Bildverarbeitung.
Als praktische Beispiele können zum Beispiel die Überprüfung auf Vollständigkeit von Tabletten in Verpackungen, das Vermessen von Schrauben, die Überprüfung von Füllständen in Flaschen, genannt werden.
Ebenso findet die industrielle Bildverarbeitung Anwendung in der Aufbesserung von Bildern aus der Sicherheitsüberwachung, bei welchen durch schlechte Lichtverhältnisse, Nebel oder andere Einwirkungsfaktoren die Informationen nicht zu identifizieren sind.
In der Praxis benötigt man für die industrielle Bildverarbeitung viele verschiedene optische Sensoren. So kommen neben "normalen" CCD oder CMOS Kameras auch Laser mit einem Triangulationsverfahren für die dreidimensionale Vermessung von Objekten zum Einsatz.
Für die zweidimensionale Verarbeitung werden in der Regel industrietaugliche oder auch „Intelligente Kameras“ verwendet. Hier besteht die Möglichkeit Grauwert- oder auch Farbbilder auszuwerten.
Bildverarbeitungssysteme
Um die jeweiligen Prüfaufgaben durchführen zu können sind eine passende Bildverarbeitungssoftware, sowie geeignete Kameras, Objektive, Beleuchtungen und Rechensysteme nötig.
Kameras
Je nach Aufgabe werden unterschiedliche Typen von Kameras verwendet. Man kann diese gundsätzlich in Flächen- und Zeilenkameras unterteilen. Weiter kann man diese in die Kategorien "normale" und intelligente Kameras einordnen. Bei den Flächenkameras kommen je nach Anwendungsfall zwei verschiedene Arten von Sensoren zum Einsatz: Entweder CCD oder CMOS. Jede Sensorart hat ihre speziellen - durch den physikalischen Aufbau bedingten - Eigenschaften.
Industrielle Kameras
Industrietaugliche Kameras sind robuster gebaut als z.B. herkömmliche Webcams, sodass sie gewissen Erschütterungen standhalten und beim Einsatz in Maschinen keinen Schaden nehmen.
Um Bilder zu erzeugen, nehmen die Kameras Licht über einen CCD oder CMOS Chip auf. Die Aufnahme von Farb- als auch Grauwertbildern ist je nach Kameratyp möglich.
Die Bilddaten werden dann je nach Kameramodel digital über FireWire, USB oder Ethernet in digitaler Form zu einem Rechensystem übertragen.
Analoge Kameramodelle benötigen zur Verarbeitung der Bilddaten auf Computerseite noch zusätzlich einen sog. Framegrabber. der die Bilddaten in Digitale Informationen umsetzt. Zwar werden Analogkameras immer mehr durch ihre digitale Konkurrenz abgelöst, jedoch in speziellen Einsatzgebieten werden diese noch bevorzugt verwendet bzw. sind die einzigste praktikable Lösung. Die digitale Konkurrenz ist in der Lage, die Analog-Digital-Wandlung selbst schon "vor Ort" in der Kamera durchzuführen, wodurch der Einsatz von Framegrabbern entfällt.
Intelligente Kameras
Intelligente Kameras sind mit einem eigenen Rechensystem ausgestattet. Sie besitzen genug Rechenleistung um die bildverarbeitenden Funktionen selbst durchzuführen. Ebenso ist die bildverarbeitende Software in die Kamera integriert.
Dies ist der Grund, warum intelligente Kameras grösser ausfallen als andere Kameras, die in der industriellen Bildverarbeitung ihren Einsatz finden.
Generell gibt es zugehörig zu den Kameras eine Bedienoberfläche, mit welcher die Bildverarbeitung konfiguriert und die Einstellungen auch in „Produktion“ durchgeführt werden können. Diese Bedienoberfläche muss allerdings auf einem anderen System ausgeführt werden.
Die weiteren Eigenschaften intelligenter Kameras sind gleich den normalen industriellen Kameras.
Vorteile intelligenter Kameras:
- Intelligente Kameras sind im Gegensatz zu Alternativsystemen kompakter.
- Sie sind eigenständig einsetzbar. Um die Bildverarbeitung durchzuführen ist keine weitere Hardware erforderlich.
- Durch Ihre Bauart, kann das Aufgenommene Bild auf schnellstem Wege der Bildverarbeitungssoftware zu Verfügung gestellt werden.
Dadurch ist es möglich, ja nach Anforderung, eine sehr schnelle Bildverarbeitung zu entwickeln.
Nachteile intelligenter Kameras:
- Aufgrund vernünftiger Gehäusegrößen ist die Leistung der Kameras stark begrenzt.
- Komplexe Bildverarbeitungsaufgaben sind meist schwer zu lösen oder überhaupt nicht umsetzbar.
- Um intelligente Kameras bedienen zu können ist ein weiteres Rechensystem notwendig, welches mit Bildschirm und Eingabegeräten ausgestattet ist.
- Funktionserweiterungen, welche vom Hersteller nicht angeboten werden sind nicht möglich.
Bildverarbeitungssoftware (und Bibliotheken)
Auf dem Markt findet man eine Vielzahl an Software und Bibliotheken für den Bildverarbeitunseinsatz.
Häufig liefern Hersteller von Kameras eine geeignete Software mit der Hardware aus. Es gibt auch Kamera unabhängige Hersteller von Bibliotheken.
Es gibt Software mit grafischen Oberflächen, welche teilweise sogar die Erstellung einer Bildverarbeitung mit grafischen Elementen ermöglichen. Ebenso sind spezielle Skriptsprachen im Einsatz sowie reine Bibliotheken für die gängisten Programmiersprachen.
Bildverarbeitunssoftware, welche grafisch oder mit Skripten programmiert werden, ermöglichen generell eine sehr schnelle Umsetzung von Bildverarbeitungsaufgaben. Häufig bieten diese einfache und schnelle Methoden für die Erstellung von Bedienungsoberflächen. Allerdings schränken sie meist in der Entwicklung ein und sind für aufwendige Aufgaben weniger geeignet.
Bibliotheken für gängige Programmiersprachen sind wesentlich flexibler in der Entwicklung, im Gegenzug benötigen diese aber für kleinere Bildverarbeitungsaufgaben einen höhren Zeitaufwand. Bedienoberflächen müssen selbst gestrickt werden, wobei es auch Bibliotheken gibt, welche hier verenfachende Methoden anbieten.

