HALCON 9.0 Schnelle und nachhaltige Bildverarbeitungssoftware
Mit der Version 9.0 steigert die Bildverarbeitungssoftware HALCON erneut die Geschwindigkeit und beschleunigt zusätzlich die automatische Parallelverarbeitung (AOP). Zudem bietet die aktuelle Ausführung neue Matching-Verfahren für perspektivisch verzerrte Objekte.
Anbieter zum Thema
Neben Fortschritten rund um 3D-Vision ist die integrierte Entwicklungsumgebung jetzt noch benutzerfreundlicher. Zudem kann HALCON jetzt extrem große Bilder jenseits von 32k verarbeiten, und Datacodes werden auch dann noch gelesen, wenn bedeutende Teile fehlen.
Es ist viel darüber geschrieben worden: über die Möglichkeit, die Bildvorverarbeitung auf die Graphikkarte auszulagern. Doch ist das wirklich sinnvoll? Für praktische Anwendungen derzeit wohl nicht, denn keine aktuell verfügbare Hardware ermöglicht eine ausreichend schnelle Datenübertragung von CPU zu GPU. Das Nadelöhr ist und bleibt der Datentransfer.
Durch die zweifachen langsamen Transferzeiten würde die Applikation also in der Summe abgebremst. MVTec setzt daher statt auf GPU-Vorverarbeitung auf eine sinnvolle Möglichkeit der Bildvorverarbeitung – wie dies Framegrabber bieten. Denn hier lassen sich freie Rechenkapazitäten ohne zusätzlichen Transfer nutzen. Deshalb gibt es in der Bildverarbeitungssoftware HALCON ein Visual Applets-Interface, um Bildvorverarbeitung auf Framegrabbern von Silicon Software in Echtzeit einzubinden.
Schnelle Bildvorverarbeitung
Primär jedoch konzentriert sich MVTec darauf, die Geschwindigkeit dadurch zu erhöhen, dass einerseits die Algorithmen an sich schneller werden. So wurde mit HALCON 9.0 nicht nur die gesamte Bibliothek um etwa fünf Prozent beschleunigt, sondern auch ausgewählte Operatoren (Gauss 3,7fach; Median 27fach für 16 bit Grauwerte; Grauwertmorphologie 11fach für 16 bit Grauwerte). Andererseits wurde ebenfalls wiederum die automatische Parallelverarbeitung (AOP) gegenüber der vorhergehenden Version um 20 Prozent beschleunigt, um Multicore-Hardware noch besser nutzbar zu machen.
Parallelverarbeitung – für HALCON selbstverständlich
HALCON ist seit vielen Jahren optional mit AOP ausgestattet. Diese Version „Parallel HALCON“ setzte sich am Markt vor allem bei Kunden durch, die Hochgeschwindigkeits-Bildverarbeitung betreiben.
Heute sind Multicore-Prozessoren nahezu Standard. HALCON war darauf bereits gut vorbereitet. AOP bestimmt automatisch — also ohne Arbeit des Programmierers — die Anzahl der verfügbaren Prozessorkerne. Das System teilt das Bild automatisch auf, übergibt die Teile an verschiedene Verarbeitungsstränge und fügt sie automatisch zum Ergebnisbild zusammen. Mit steigender Anzahl der Prozessoren steigt dadurch auch die Geschwindigkeit kontinuierlich an.

Will der Programmierer nur einen bestimmten Teil eines Bildes verarbeiten, kann er eine ROI (Region of Interest) als Freiform vorwählen. HALCON parallelisiert dann nur diesen Bildbereich, unabhängig von der Orientierung der ROI.
Es werden aber nicht nur Filter parallelisiert sondern auch viele komplexe Operatoren und Methoden, die für zahlreiche Anwendungen relevant sind. Hierzu zählen die schnelle Fourier-Transformation (FFT), Matching, 3D-Matching sowie Subpixel-Extraktion. In HALCON laufen nun mehr als 400 Operatoren unter AOP.
Die Software erkennt die Hardwareumgebung wie Leistungsfähigkeit oder Anzahl der Kerne automatisch. Auf dieser Grundlage entscheidet sie, welcher Algorithmus parallelisieren soll, um unnötigen Overhead zu umgehen. HALCON 9.0 parallelisiert auch Mehrkanalbilder — etwa Farbbilder — mit beliebiger Zahl von Kanälen.
(ID:319414)