Bildverarbeitung schneller als je zuvor
06.10.2011 -
Es gibt kaum noch einen Zweig im Maschinenbau, in der Sicherheitstechnik oder in der Medizin, der keine industrielle Bildverarbeitung als erfolgreiche Querschnittstechnologie einsetzt. Wohin aber führt die Entwicklung?
BV wird in der Industrie überall dort eingesetzt, wo das menschliche Auge zur Beobachtung oder Kontrolle überfordert ist: an Fließbändern, in der Druckindustrie, bei der Herstellung von Halbleitern, in der Autoindustrie und bei der Robotersteuerung. Schnelligkeit ist eine der Hauptvoraussetzungen, ob sich ein System durchsetzt oder nicht.
Der Trend in der Industrie geht immer stärker hin zur 100%-Kontrolle. Stichproben gehören damit immer mehr der Vergangenheit an: In Bruchteilen von Sekunden müssen während des Produktions- oder Verpackungsprozesses Bilder erfasst, Objekte überprüft und anschließend Entscheidungen getroffen werden. Es ist daher heute längst nicht mehr die Frage, ob sich BV-Verfahren durchsetzen, sondern wie schnell sie das tun werden. BV steht und fällt mit der Schnelligkeit, der Genauigkeit und der Zuverlässigkeit. Standen früher Beleuchtung und Anordnung im Vordergrund der Applikationen, so wird heute immer mehr die Software zum Kern. Denn erstklassige Software kann heute bereits Störungen und Schwächen in der Konfiguration ausgleichen, wie es vor wenigen Jahren noch nicht denkbar war. Die Datenmenge, die dabei anfällt, ist enorm. In den letzten zwanzig Jahren sind die Prozessoren zwar stetig weiterentwickelt worden und die Entwicklung schien kein Ende zu nehmen. Mittlerweile aber ist man an einem Punkt angelangt, der eine eindeutige Grenze markiert: Ohne gravierende thermische Probleme lässt sich die Rechenleistung moderner Prozessoren nicht erhöhen. Um den Fortschritt der Prozessorleistung nicht zu stoppen, haben führende Hersteller deshalb ab Mitte 2005 die neuen Mehrkern-Prozessoren auf den Markt gebracht. Das kommt der BV besonders zugute!
Erfahrene Bildverarbeiter haben sich schon seit einigen Jahren eines Tricks bedient, der die Bearbeitung von großen Datenmengen schneller bewerkstelligen kann: Die Daten eines Bildes werden aufgeteilt und auf unterschiedliche Prozessoren geschickt, wo sie zwar zeitlich parallel, aber physikalisch getrennt voneinander verarbeitet werden. Eine solche parallele Ausführung von Programmteilen nennt man Multi-Threading. Durch das Multi-Threading werden die Bilder also wesentlich schneller verarbeitet. Multi-Threading aber setzt entsprechende Spezialkenntnisse des Programmierers voraus. Zudem ist die Programmierung dieses Vorgangs zeitaufwändig – es sei denn, eine Software löst das Problem automatisch.
Das Machine Vision-Flaggschiff Halcon der MVTec Software GmbH in München (aktuelle Version 7.1) stellt dazu die Automatic Operator Parallelization (AOP) bereit, kurz Parallel Halcon: Das ist weltweit einzigartig. Parallel Halcon teilt die Daten auf und verteilt sie auf die vorhandenen CPUs, wo sie verarbeitet werden. Danach fügt der Operator die errechneten Daten wieder zusammen, als wäre es eine einzige Berechnung gewesen, ohne dass der Programmierer dafür etwas hätte tun müssen. Jetzt, da die neue Generation der Mehrkern-Prozessoren auf dem Markt ist und standardmäßig mehrfach parallele Einheiten bereitstellt, ist Halcon also bereits optimal vorbereitet. Die Automatisierung über Parallel Halcon (Abb. 1) zeigt gegenüber der klassischen Methode des Multi-Threadings eine vergleichbare Performanz, bietet jedoch gleichzeitig große Vorteile: Die Handhabung ist einfacher, die Fehleranfälligkeit ist geringerund auch Programmierer mit wenig Erfahrung kommen damit sehr gut zurecht.
Parallel Halcon ist jedoch nicht nur sicher, was das Aufteilen in Threads angeht, es ist auch ablaufinvariant, das bedeutet: Mehrere Verarbeitungsstränge können gleichzeitig mehrere BV-Operatoren abrufen, nutzen und die Ergebnisse wieder zusammenfügen. Parallel Halcon in Zusammenhang mit Multikern-Prozessoren ist ein Technologieschub für die industrielle BV. Allen zeitkritischen und auflösungsintensiven Applikationen (wie Fließband- Kontrolle, Oberflächeninspektion, Materialprüfung, Folienkontrolle, Teppichkontrolle, Leiterplatteninspektion, Bestückungsüberwachung etc.), aber auch Fernerkundung und Photogrammetrie, kommt dieser Fortschritt zugute.
Auch ansonsten steht – was die industrielle BV betrifft – die Software-Entwicklung nicht still. Immer neue Möglichkeiten bieten sich, um Schnelligkeit, Zuverlässigkeit und Robustheit zu verbessern. Microsoft hat jetzt aktuell die 64-Bit-Technologie auch für Windows erschlossen (XP Professional x64 Edition). Das bedeutet: Der wohl größte Anwenderkreis in der Computerwelt kann jetzt endlich diese schnelle Technologie einsetzen. Allerdings gibt es bisher kaum Programme, die davon auch Gebrauch machen. Halcon 7.1 nutzt das als erste Machine Vision-Software weltweit und bringt somit bis zu 30 % Zeitersparnis.
Robustheit ist besonders beim Einsatz von Datacodes von Bedeutung. Umfangreiche Datacodes ersetzen Dokumente und begleiten auf diese Weise Werkstücke, die transportiert werden, oder Instrumente, die eindeutig identifiziert werden müssen. Datacodes können als fester Bestandteil eines Produkts so angebracht werden, dass sie nur mit hohem Aufwand entfernt werden können. Allerdings können sie trotzdem im Laufe ihres Produktlebens unabsichtlich teilweise zerstört, überdeckt oder übermalt werden. Das stellt in Bezug auf die Robustheit eine große Herausforderung an die Software dar, die den Code trotz Veränderungen einwandfrei lesen können muss. Ein weltweit zunehmend eingesetzter Datacode ist der sog. PDF417. Halcon 7.1 liest ihn zuverlässig, sogar wenn er teilweise zerstört oder übermalt und beschmutzt ist (Abb. 2).
Matching ist ein weit verbreitetes Verfahren zum Auffinden von Objekten in Bildern, die bspw. als CAD-Modell bekannt sind oder zuvor eintrainiert wurden. Die bereits in früheren Versionen etablierten konkurrenzlosen Methoden Shape-based und Component-based Matching von Halcon werden jetzt mit 7.1 um die automatische Parameterbestimmung erweitert. Das bedeutet, dass Halcon nun alle BV-Parameter automatisch ermittelt. Das spart viel Zeit bei der Applikationserstellung, und unerfahrene Programmierer kommen sehr schnell zu optimalen Ergebnissen.
Seit längerer Zeit wird immer wieder versucht, die Verarbeitung umfangreicher Bilddateien zu beschleunigen. Die Version 7.1 von Halcon erhöht die Geschwindigkeit von arithmetischen Operatoren und wichtigen Filtern zwischen 30 und 400(!)%. Stereomessverfahren können exakt die Raumlage eines Objekts bestimmen, was z. B. für die Robotertechnik unerlässlich ist. Stereo ist aber aufwändig, da zwei Bilder benötigt werden. Hat ein Objekt einen Kreis, bspw. ein Bohrloch, so kann Halcon 7.1 anhand der perspektivischen Verzerrung des Kreises eine exakte 3D-Positionsbestimmung des Objekts mit nur einem Kamerabild durchführen. Auch dadurch wird Zeit, Geld und Aufwand gespart.
Bei allen Hochgenauigkeits-Verfahren kommt es im Prinzip auf den Grauwert jedes einzelnen Pixels an. Kameras aber erzeugen keine lineare Beziehung zwischen der tatsächlichen Lichtintensität (also der Anzahl der Photonen) und dem resultierenden Grauwert, wie es eigentlich sein müsste. Halcon 7.1 nimmt daher als Bildvorverarbeitung eine automatische Grauwert-Kalibrierung vor und erzeugt dadurch eine lineare Beziehung (Abb. 3). Hierzu ist weder eine Kalibrierplatte noch eine spezielle Beleuchtungseinheit notwendig. Messergebnisse werden dadurch wesentlich genauer.
Die 3D-Kamera-Kalibrierung für Flächenkameras von Halcon gilt weltweit als Alleinstellungsmerkmal. Nun gibt es dieses Instrument auch für Zeilenkameras. Damit steht nun die vorteilhafte und oft angewendete 3D-Kalibrierung auch überall dort zur Verfügung, wo Zeilenkameras zur Inspektion in der Produktion eingesetzt werden, wie Automobil-, Druck-, Halbleiter-, Lebensmittelindustrie, Holzverarbeitung und alle Fertigungen mit Produktionsstraßen und Fließbändern. Die 3D-Kalibrierung bestimmt innere und äußere Kameraparameter, Pixelkoordinaten können sehr schnell in Weltkoordinaten umgerechnet werden, eine erhebliche Vereinfachung der Robotersteuerung und -referenzierung. Selbstkalibrierung unter Halcon 7.1 funktioniert ganz ohne den aufwändigen Einsatz von Kalibrierplatten: Es müssen lediglich mit einer Kamera mehrere Aufnahmen gemacht werden, wobei die Kamera jeweils mit Bildüberdeckung um ihr optisches Zentrum rotiert wird. Durch die Selbstkalibrierung verbessert sich auch das Mosaicking, denn ab jetzt ist sogar das automatische Zusammenfügen eines 360 ° Panoramas möglich.
Stereoverfahren ohne Kalibrierung: Ein lang gehegter Wunsch von Applikationsingenieuren. Halcon 7.1 macht es jetzt möglich. Gerade in der Überwachungs- und Sicherheitstechnik ist die Kalibrierung von Stereoapplikationen oft sehr aufwändig, weil die Kameras sehr weit voneinander entfernt angebracht sein können. Das revolutionäre unkalibrierte Stereoverfahren von Halcon benötigt lediglich die internen Kameraparameter und die Bilder, die von beiden Kameras vom Objekt gemacht worden sind. Da dieses Verfahren unkompliziert während der Arbeit durchgeführt werden kann, hilft das Verfahren vor allem auch bei mobilen Kameras. Das unkalibrierte Stereoverfahren bringt eine enorme Zeitersparnis.
MVTec arbeitet ständig an der Weiterentwicklung ihrer BV-Software. Um diese Entwicklungen dem Weltmarkt schnell und effizient zur Verfügung zu stellen, werden die Mitarbeiter der weltweit über 25 Vertriebspartnerfirmen ständig fortgebildet. Erst im September 2005 fand in München ein viertägiges Training für Distributoren (42 Teilnehmer aus 14 Ländern) statt. MVTec ist natürlich auch auf den wichtigsten Fachmessen der Welt zu sehen, demnächst auf der Vision 2005 in Stuttgart (Halle 4, Stand 420/1). MVTec erhebt auch weiterhin den Anspruch, die technologische Entwicklung von Machine Vision-Software anführen zu wollen.
Der Autor: Dr. Lutz Kreutzer Manager PR & Marketing MVTec Software GmbH Tel. 089/457695-0 kreutzer@mvtec.com www.mvtec.com