Bis vor Kurzem standen Entwickler von Embedded-Vision-Systemen vor vielen Hürden, einschließlich Performance-Einschränkungen, fehlender Peripherie für höhere Auflösung/Bildraten und limitiertem On-Chip-Speicher – das hat sich mittlerweile geändert.
Die steigende Nachfrage nach Embedded-Bildverarbeitungssystemen in Anwendungen wie biometrischem Fingerabdruckscanner, Barcode-Scanner für Smart-Kiosk oder Gesichtserkennung für Consumer-Anwendungen hat die Halbleiterhersteller dazu veranlasst, Cross-Over-Mikrocontroller (Microcontroller Unit, MCU) einzuführen. Diese überwinden die Beschränkungen herkömmlicher MCUs und sind trotzdem echtzeitfähig.
Nachfolgend geht es um die Integration der sogenannten CEU (Capture Engine Unit), einem Bildaufnahme-Peripheral der MPU-Klasse, in die 32-bit-MCUs der RA-Familie von Renesas, wobei die Bausteine RA8M1 und RA8D1 hierbei im Fokus stehen. Diese Cross-Over-MCUs wurden entwickelt, um verbesserte Fähigkeiten in der Bildverarbeitung auf Systemebene zu bieten und die steigenden Anforderungen moderner Anwendungen zu erfüllen.
Die CEU ist ein dediziertes Hardwaremodul zur effizienten Erfassung von Bilddaten aus verschiedenen Quellen (Bild 1). Sie ermöglicht das Abrufen mehrerer Bilddaten von externen Modulen, einer Vielzahl von CMOS-Bildsensoren, Kameras und älteren Interlaced-Video-Erfassungstechniken. Diese Peripherie ermöglicht die optimierte Nutzung der Systemressourcen, sodass sich die CPU und der DMA-Controller (Direct Memory Access) auf andere wichtige Aufgaben wie Kommunikationsschnittstellen oder Datenverarbeitung konzentrieren können. Darüber hinaus bietet die CEU Flexibilität und Konfigurierbarkeit, indem sie verschiedene Bildformate, Auflösungen und Bildraten unterstützt. So können Entwickler die Parameter für die Bilderfassung an die spezifischen Anforderungen der Anwendung anpassen und damit die Gesamtleistung des Systems verbessern.
Die Funktionen und Vorteile der CEU werden nachfolgend anhand von Beispielprojekten, die von einfachen bis hin zu komplexen realen Anwendungsfällen reichen, ausführlich dargestellt. Außerdem wird die CEU mit einer alternativen Peripherie, der parallelen Datenerfassung (Parallel, Data Capture, PDC) auf dem RA6M3-Baustein verglichen. Entwickler erhalten auf diese Weise hilfreiche Informationen, um den am besten geeigneten RA-Baustein für ihre Anwendung auswählen zu können.
Wenn die CEU an das System angeschlossen ist und als Bus-Master fungiert, bietet sie zahlreiche Funktionalitäten, die für eine Vielzahl von Anforderungen ausgelegt sind. Zu den wichtigsten Merkmalen gehören:
Bilddateneingabe
Die CEU erfasst Bilddaten von externen Quellen und ermöglicht die nahtlose Übertragung in den Speicher über ein Bus-Brückenmodul. Sie kann Bilddaten von Sub-QCIF (128 x 96) bis zu 5 Megapixel (2560 x 1920) abrufen und unterstützt zahlreiche Bilderfassungstechniken:
YCbCr-Datenerfassung: Erfasst die Bildausgabe von externen Modulen, wie z. B. Kameras, und trennt die YCbCr-Daten, bevor sie in den Speicher geschrieben werden. Die Datenerfassung erfolgt im Verhältnis 1:1 zum Pixel-Taktzyklus. Diese Art der Datenerfassung ist weit verbreitet, da die Trennung der Luminanz- von der Chrominanzinformation typischerweise zu effektiveren Komprimierungsergebnissen führt.
Verschiedene Bildformate: Ruft Bilddaten in Formaten wie JPEG, RGB565 und anderen von externen Modulen ab und ermöglicht das sequenzielle Schreiben in den Speicher. So lassen sich Daten von einem anderen System erfassen und zur weiteren Verarbeitung an die RA8-Serie übertragen.
Interlaced Source Image Capture: Erfasst Interlace-Quellbilder in Halbbildern oder Einzelbildern und speichert sie als Vollbilder im Speicher. Diese Techniken kommen häufig bei älteren Kameras zum Einsatz.
Die CEU verfügt über interne Filter, um wichtige Bildverarbeitungsaufgaben auszuführen, die bei herkömmlicher Peripherie zur parallelen Erfassung fehlen:
Scale-Down: Mit dieser Funktion wird die Größe der Bilder angepasst, um eine effiziente Anzeige zu ermöglichen. Durch die Verkleinerung des Bildes wird der benötigte Speicherplatz für die aufgenommenen Bilder erheblich reduziert, wie Bild 2 zeigt. Die Skalierung kann von SubQCIF bis VGA reichen und wird von vier Registern gesteuert, um flexibles Skalieren zu ermöglichen. Detaillierte Informationen über die Verwendung der Register sind im Hardwarehandbuch zu finden.
Clipping: Zusätzlich bietet die CEU eine Zuschneidefunktion, wie in Bild 3 dargestellt. Diese Funktion ist besonders vorteilhaft in Szenarien, wenn der Fokus auf bestimmte Bildbereiche gerichtet werden soll oder wenn das Bild in bestimmte vorgegebene Begrenzungen passen muss. Das Zuschneiden dient als weitere Methode zur Verkleinerung des Bildes, wodurch auf Bausteinen mit begrenzten Ressourcen Speicherplatz eingespart werden kann.
Low-Pass-Filter: Die CEU verfügt über einen Tiefpassfilter, um hochfrequente Komponenten ausschließlich in horizontaler Richtung zu entfernen. Dieser Filter hilft, Rauschen zu reduzieren, das durch Sensorstörungen oder Übertragungsartefakte verursacht wird. Darüber hinaus spielt er bei der Anti-Aliasing-Bearbeitung und der Erhaltung der Kantenintegrität eine Rolle, wodurch die Klarheit und Schärfe der Kanten und Konturen im aufgenommenen Bild verbessert werden.
Die CEU unterstützt auch die Konvertierung von YCbCr422 in YCbCr420 mithilfe eines einfachen Thinning-Algorithmus. Diese Umwandlung gewährleistet die Kompatibilität mit verschiedenen Speicherkonfigurationen und Verarbeitungsanforderungen.