Die verfügbare Rechenleistung optimal nutzen Effiziente Implementierung einer Verkehrszeichen-Erkennung

Anhand einer kamerabasierten Verkehrszeichen-Erkennung, die auf einem Blackfin-Prozessor implementiert worden ist, wird im Folgenden gezeigt, wie ein effizientes Software-Gerüst erstellt werden kann. Des Weiteren kommt ein Filterblock-Algorithmus auf unterschiedliche Weise zum Einsatz...

Die verfügbare Rechenleistung optimal nutzen

Anhand einer kamerabasierten Verkehrszeichen-Erkennung, die auf einem Blackfin-Prozessor implementiert worden ist, wird im Folgenden gezeigt, wie ein effizientes Software-Gerüst erstellt werden kann. Des Weiteren kommt ein Filterblock-Algorithmus auf unterschiedliche Weise zum Einsatz; die dabei erzielten Ergebnisse werden verglichen. Zudem wird gezeigt, welche Schritte man unternehmen kann, um die verfügbare Rechenleistung optimal zu nutzen.

Ein klassisches System zur kamerabasierten Mustererkennung besteht aus einer Videoquelle und einem Monitor, die beide an die Schnittstellen des Prozessors angeschlossen werden. Um die Kapazität des benötigten Speichers zu erhöhen, wird zusätzlich externes SDRAM angeschlossen. Bild 1 zeigt das Blockdiagramm eines solchen Systems. Auch wenn das Display in der Endapplikation nicht benötigt wird, ist es ein hilfreiches Werkzeug für Entwicklung und Präsentation.

Graustufen-Sensoren in VGA-Größe

Als Videoquelle dienen CMOS-Bildsensoren, die für den Einsatz im Automobil qualifiziert worden sind. Derzeit werden meist Graustufen-Sensoren in VGA-Größe (640 × 480 Bildpunkte) mit einer Bildpunkt-Auflösung bis 10 bit verwendet. Sie liefern 30 Bilder/ s und sind mit ihrer erhöhten Empfindlichkeit auch bei Nacht und Gegenlicht geeignet. Für zukünftige Applikationen indes werden Sensoren mit größerer Sensorfläche und Farbinformationen benötigt.

TFT-Display

Immer häufiger kommen LCD-TFT-Displays zum Einsatz, die ihre Bilddaten im RGB-Format benötigen. Für jeden Bildpunkt müssen deshalb drei Farbinformationen gesendet werden (Rot, Grün, Blau), die letztendlich dazu führen, dass das Bildformat vom Sensor nicht mit dem Format vom Display übereinstimmt. Dies muss später mittels Farbraumkonvertierung angepasst werden. Bild 2 zeigt den Anschluss eines TFT-Displays an den Prozessor.

Fortsetzung (Seite 1/6)12 | 3 | 4 | 5 | 6nächste Seite >>

Ein Teil dieser Musterdatenbank muss man in den L2-Speicher laden. Von dort aus sind, wie bei den zu erkennenden Schildern, sukzessive die Vergleichsmuster in den L1-Speicher zu laden. Erst dann kann der Block „Erkennung“ die gefundenen Schilder mit allen Mustern vergleichen und eine Liste mit erkannten Schildern erstellen. Ist dieser Prozess abgeschlossen, wird Prozessorkern 1 (Core A) an Prozessorkern 2 (Core B) eine Nachricht schicken und mitteilen, welches Schild gefunden wurde. Prozessorkern 1 beginnt nun mit der Berechnung des zweiten Bildes (frame 1). Prozessorkern 2 indes wird nach Konfiguration seiner Schnittstellen auf die Nachricht von Prozessorkern 1 warten und nach Eintreffen der Nachricht mit dem Senden des ersten Bildes mittels DMA-Kanal beginnen.