Evaluierungsrahmen für skalierbare Mikroprozessor-Bildverarbeitungssysteme in industriellen Inspektionsanwendungen
2026-02-21 10:54:03··#1
Quelle : Alacron. Bildgebungssysteme für anspruchsvolle industrielle und militärische Anwendungen wie Computer Vision und automatische Zielerkennung benötigen typischerweise Echtzeit-Hochleistungsrechner. Während diese Systeme traditionell auf proprietären Architekturen und kundenspezifischen Komponenten basierten, haben jüngste Fortschritte in der Hochleistungs-Mikroprozessortechnologie eine Vielzahl kostengünstiger Komponenten hervorgebracht, die sich für den Einsatz in Hochleistungsrechnersystemen eignen. Einleitung : Bildgebungssysteme für anspruchsvolle industrielle und militärische Anwendungen wie Computer Vision und automatische Zielerkennung benötigen in der Regel Echtzeit-Hochleistungsrechner. Traditionell basierten diese Systeme auf proprietären Architekturen und kundenspezifischen Komponenten, um die erforderliche Leistung zu erzielen. Jüngste Fortschritte in der Hochleistungs-Mikroprozessortechnologie haben jedoch die Herstellung einer großen Anzahl kostengünstiger Komponenten ermöglicht, die sich für Hochleistungsverarbeitungssysteme eignen. Ein häufiger Konstruktionsfehler bei Hochleistungs-Bildgebungssystemen, insbesondere solchen mit skalierbaren Multiprozessorarchitekturen, ist die Unfähigkeit, Rechenbandbreite und Speicherbandbreite über I/O-Schnittstellen auszubalancieren. Die Einführung von Mikroprozessoren mit großen internen Caches und leistungsstarken externen Speicherschnittstellen hat in letzter Zeit die Entwicklung von Hochleistungs-Bildgebungssystemen ermöglicht, die ein ausgewogenes Verhältnis zwischen Rechenleistung und Speicherbandbreite erzielen. Mikroprozessoren nutzen Speicher- und I/O-Architekturen auf Boardebene, und Systeme mit solchen Mikroprozessoren und Speichern stellen hohe Leistungsanforderungen. Das System erweitert die Speicherbusbandbreite nicht; ebenso werden Mikroprozessoren in der Regel nicht zur Leistungssteigerung eingesetzt, und nach einigen Leistungssteigerungen stoßen sie an ihre Grenzen. Darüber hinaus spielt die I/O-Bandbreite eine entscheidende Rolle für die Gesamtleistung. Dieser Artikel stellt ein Framework vor, das Entwicklern die Auswahl eines Mikroprozessorsystems ermöglicht, das die für Echtzeit-Bildverarbeitungsanwendungen erforderliche Leistung und Skalierbarkeit bietet. Bei der Auswahl programmierbarer Bildgebungssysteme konzentrieren wir uns auf die folgenden drei Aspekte: (a) Handelt es sich um ein natives System oder verwendet es ein Koprozessormodell? (b) Welcher Prozessor eignet sich am besten für ein ausgewogenes Verhältnis zwischen Verarbeitung und I/O in der Anwendung? (c) Wie hoch sind die Gesamtkosten? Um unsere Annahmen besser zu verstehen, analysieren wir die Leistung von vier verschiedenen Prozessoren in Anwendungen zur Bauteilprüfung. Mikroprozessor-Evaluierung: Um die Vorteile verschiedener moderner Mikroprozessoren aufzuzeigen, haben wir vier neue Mikroprozessoren für die Evaluierung ausgewählt: den 21160 Hammerhead von Analog Devices, den Intel® P3-450, den Philips Semiconductor TM1300 TriMedia und den C6701 von Texas Instruments (TI). Dieses Framework kann auch zur Evaluierung anderer Prozessoren verwendet werden. Die folgende Tabelle zeigt die wichtigsten Merkmale der ausgewählten Prozessoren. Bei der Prüfung der Rechenleistung wird davon ausgegangen, dass die verschiedenen Prozessoren unabhängig voneinander arbeiten. Cluster-Designs stoßen schnell an die Bus-Grenze – das heißt, das Hinzufügen weiterer Prozessoren verbessert weder die Geschwindigkeit noch die Rechenleistung. Diese Annahme basiert darauf, dass die meisten Multiprozessoren unabhängige Coprozessor-Karten besitzen oder lokale Speicherdesigns zur Skalierbarkeit nutzen. Der einzige Prozessor mit nicht-lokalem Speicherdesign ist der PIII-450, der zum Vergleich mit anderen Prozessoren eingeführt wurde. Die Leistungsparameter in der obigen Tabelle finden Sie in der jeweiligen Herstellerdokumentation. Sie basieren auf optimierten Assemblerprogrammen. Mit Ausnahme von Intels Complex Instruction System Computer (CISC) verwenden alle Mikroprozessoren eine Very Long Instruction Set Architecture (VLIW). Die Kosten der Bonding-Logik jeder CPU spiegeln die Kosten der zusätzlichen Komponenten wider, die für die Verbindung des Prozessors mit dem externen System erforderlich sind. Anwendungsbeschreibung: Prüfung von Industriekomponenten in einer Produktionslinie. Wenn ein Produkt eine Prüfstation durchläuft, erkennt diese Farbe und Form und entscheidet anhand von Standards über die Annahme. Die Komponenten werden für die Bildgebung in beliebigen Winkeln auf dem Förderband positioniert. Der Erkennungsalgorithmus erkennt Bereiche, die Farbe und Form verbinden, verarbeitet die Daten innerhalb dieser Bereiche und wendet die Ergebnisse auf einen neuronalen Netzwerk-Erkenner an. Die Produkte werden geprüft, während sie schnell von der Produktionslinie laufen. Kameras erfassen Bilder mit 30 Bildern pro Sekunde, um eine Überlappung von mindestens 50 % in jedem Bild zu gewährleisten und sicherzustellen, dass jedes Teil mindestens einmal vollständig dargestellt wird. Die Bildspezifikationen sind 512×512 Pixel, 24-Bit-Farbtiefe (RGB). Ablaufdiagramm des Algorithmus : Das obige Diagramm veranschaulicht den Algorithmus zur Erkennung von Bildfehlern. Das Originalbild wird gefiltert, um Rauschen zu entfernen und Farb- und Helligkeitsschwankungen, die durch Winkelabweichungen auf dem Förderband entstehen, auszugleichen. Anschließend wird das Bild in ein HLS-Modell konvertiert und mithilfe zweier 16-Bit-Eingangs- und 8-Bit-Ausgangs-Lookup-Tabellen in ein Schwarzweißbild umgewandelt. Im HLS-Modell werden Chroma (H) und Sättigung (S) durch die Farbe bestimmt, während die Luminanz (L) primär von der Ausrichtung der beleuchteten Objektoberfläche abhängt. Diese beiden Elemente sind in der Struktur eines 8-Bit-Schwarzweißbildes (M im Diagramm) kodiert. Dieser Schritt ist wichtig, da er Farb- und Ausrichtungsfehler erkennt. Nach der Rauschunterdrückung und der Entfernung von Bildfehlern wird eine Konnektivitätsanalyse durchgeführt. Die Analyseergebnisse dienen dazu, Bereiche aus den Schwarzweiß- und Farbbildern auszuwählen, um zusätzliche Eigenschaften zu ermitteln. Dieser Schritt reduziert typischerweise die Pixelanzahl um 70 %. Die ausgewählten Bereiche werden im Schwarzweißbild vermessen, während die Farbbilder zur Bestimmung der Eigenschaften jedes Bereichs verwendet werden. Die ermittelten Eigenschaften umfassen die Farbe, korrigiert durch Elemente wie Schwarzweißbild, Begrenzungsrahmen, Begrenzungskreise, Umfang, konvexe Hülle und Fläche. Diese Eigenschaften dienen als Eingaben für ein neuronales Netzwerk zur Bilderkennung. Ein neuronales Netzwerk wurde gewählt, da die zu verarbeitenden Bildbereiche sehr komplex sind. Statistische Erkennungsverfahren sind rechenintensiv und anfällig für Rauschen. Das neuronale Netzwerk verwendet 100 Eingaben, 200 Knoten in der ersten verborgenen Schicht, 100 Knoten in der zweiten Schicht und einen Knoten in der Ausgabeschicht (bestanden/nicht bestanden). Im nächsten Schritt zur Auswahl des Verarbeitungssystems wird der Algorithmus mit den folgenden Mikroprozessoren evaluiert: Analog Devices 21160 Hammerhead, Intel® (P3-450), Philips Semiconductor TM1300 TriMedia und Texas Instruments (TI) C6701. Der Code wurde für jeden Prozessor optimiert und die Ausführungszeit für jeden Prozessortyp gemessen. Die folgende Tabelle zeigt die Ergebnisse für jeden Prozessor bei der Ausführung jedes Algorithmus-Schritts. Analyse und Ergebnisse: Alle Zeitangaben erfolgen in Millisekunden. Aus der obigen Tabelle geht hervor, dass jeder Prozessor seine spezifischen Vorteile bietet. Bezüglich der Gesamtzeit ist der PIII-450 zweifellos der beste. Zwei dieser Prozessoren müssen die Bildgeschwindigkeit mit der Kamera synchronisieren. In allen Fällen benötigt das System einen weiteren Prozessor für die Betriebssystemunterstützung, beispielsweise für Festplattenlaufwerke und Benutzerschnittstellen. Die Rechenleistung des PIII ist zwar nicht optimal, dennoch ist er in Anwendungen mit begrenzter Speicherbus-Performance ein recht guter Prozessor. Die Speicherbus-Geschwindigkeit des PIII ist doppelt so hoch wie die anderer Prozessoren, mit Ausnahme des TM1300, bei dem die Speicherbus-Geschwindigkeit des PIII nur 1,4-mal höher ist (800 MB/s gegenüber 572 MB/s). Prozessoren von Philips und TI verfügen über viele Verarbeitungseinheiten, was ihnen eine recht gute Gesamtleistung verleiht, obwohl ihre Taktfrequenz deutlich niedriger ist als die des Intel PIII-450. Der Philips TM1300 verwendet einen einzigen Bildverarbeitungsport für das direkte Auslesen und Anzeigen vom Prozessor. Der Intel PIII-450, der Analog Devices 21160 und der TI C6701 verwenden einen DMA-Controller zum Lesen und Anzeigen. Die obige Grafik zeigt die erreichbaren Bildwiederholraten in Abhängigkeit von der Anzahl der Prozessoren. Wie ersichtlich, schneiden der TM1300 und der PIII-450 in dieser Anwendung ähnlich gut ab und belegen den ersten Platz. Der TMS320C6701 ist etwas langsamer, und der ADI21160 ist am langsamsten. Der Philips TM1300, der Analog Devices 21160 und der TI C6701 benötigen jeweils zwei Prozessoren, um die Bildwiederholrate aufrechtzuerhalten. Ihre Kosten (auf der Coprozessorplatine im PC) sind jedoch deutlich geringer als die des PIII-450. Ein System mit mehreren PIII-450-Prozessoren kostet mehrere Tausend Dollar (ca. 3.000 US-Dollar) – und ist damit teurer als ein einfacher PC mit einem Prozessor. Koprozessorsysteme mit Philips TM1300, Analog Devices 21160 und TI C6701 sind bereits ab 1.500 US-Dollar erhältlich. Die Effizienz des PIII nimmt jedoch mit zunehmender Anzahl an Prozessoren ab. Der in Mehrprozessor-Systemen mit PIII verwendete Shared Multiprocessor (SMP)-Bus beeinträchtigt die Leistung speicherintensiver Anwendungen aufgrund von Buskonflikten zwischen den Prozessoren. Mit jedem zusätzlichen Prozessor verstärken sich diese Konflikte und reduzieren die Effizienz weiter. Systeme mit mehr als vier PIII-Prozessoren sind selten. Die Anbindung des Prozessors an die Kamera erfordert spezielle Hardware. Lösungen auf Basis des 21160 und TMS320C6701 sind teurer als Lösungen mit TriMedia und dem PIII. Fazit: Am Beispiel der Bauteilprüfung zeigt sich, dass der Pentium PIII-450 zweifellos ein exzellenter Prozessor für Anwendungen ist, bei denen die Speicherbandbreite eine entscheidende Rolle spielt. Clusterbasierte Architekturen haben jedoch einen Nachteil, da die Speicherbus-Sättigung die zukünftige Skalierbarkeit stark einschränkt (z. B. beim PIII-450). Prozessoren mit lokalen Speicherarchitekturen hingegen können ihren Durchsatz mit zunehmender Anzahl an Prozessoren linear steigern. Der Intel PIII, dessen Leistung durch seine Peripherielogik (PC) begrenzt ist, kann in manchen Anwendungen sein volles Potenzial nicht ausschöpfen. Zwar würde der Einsatz des AGP-Busses die Situation verbessern, doch sein SMP-Design begrenzt letztendlich die Skalierbarkeit. Daher ist es bei anspruchsvollen Bildverarbeitungsanwendungen, insbesondere solchen mit zukünftiger Erweiterung, am sinnvollsten, eine skalierbarere Coprozessorplatine mit höherem Durchsatz zu verwenden, wodurch die Kosten letztendlich niedriger sind als bei einer lokalen Lösung.