DE102021133878A1 - Bildkomprimierung mittels künstlicher neuronaler Netzwerke - Google Patents

Bildkomprimierung mittels künstlicher neuronaler Netzwerke Download PDF

Info

Publication number
DE102021133878A1
DE102021133878A1 DE102021133878.6A DE102021133878A DE102021133878A1 DE 102021133878 A1 DE102021133878 A1 DE 102021133878A1 DE 102021133878 A DE102021133878 A DE 102021133878A DE 102021133878 A1 DE102021133878 A1 DE 102021133878A1
Authority
DE
Germany
Prior art keywords
image
neural network
artificial neural
hidden layer
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102021133878.6A
Other languages
English (en)
Inventor
Chup-Chung Wong
Senthil Kumar Yogamani
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Connaught Electronics Ltd
Original Assignee
Connaught Electronics Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Connaught Electronics Ltd filed Critical Connaught Electronics Ltd
Priority to DE102021133878.6A priority Critical patent/DE102021133878A1/de
Priority to PCT/EP2022/085363 priority patent/WO2023117534A1/en
Publication of DE102021133878A1 publication Critical patent/DE102021133878A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06N3/0455Auto-encoder networks; Encoder-decoder networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Databases & Information Systems (AREA)
  • Image Analysis (AREA)

Abstract

Gemäß einem computerimplementierten Verfahren zur Bildkomprimierung wird ein komprimiertes Bild (13) erzeugt, indem ein Komprimierungsmodul (14a) eines künstlichen neuronalen Netzwerks (14), welches zur Bildkomprimierung trainiert ist, auf Eingangsdaten angewendet wird, die ein Eingangsbild (12) enthalten oder von dem Eingangsbild (12) abhängen. Ein weiteres künstliches neuronales Netzwerk (15), das zur Ausführung zumindest einer Computervisionsaufgabe trainiert ist und eine erste verborgene Schicht (19a, 19b, 19c) aufweist, wird auf das Eingangsbild (12) angewendet. Die Eingangsdaten enthalten eine Ausgabe der ersten verborgenen Schicht (19a, 19b, 19c) oder hängen von der Ausgabe der ersten verborgenen Schicht (19a, 19b, 19c) ab.

Description

  • Die vorliegende Erfindung ist auf ein computerimplementiertes Verfahren zur Bildkomprimierung gerichtet, wobei ein komprimiertes Bild erzeugt wird, indem ein Komprimierungsmodul eines künstlichen neuronalen Netzwerks, das zur Bildkomprimierung trainiert ist, auf Eingangsdaten angewendet wird, die ein Eingangsbild enthalten oder von dem Eingangsbild abhängen. Die Erfindung ist weiterhin gerichtet auf ein entsprechendes computerimplementiertes Trainingsverfahren, auf ein Verfahren zum zumindest teilweise automatischen Führen eines Fahrzeugs, auf ein Datenverarbeitungssystem, auf ein elektronisches Fahrzeugführungssystem für ein Fahrzeug und auf ein Computerprogrammprodukt.
  • Bildkomprimierungstechniken, wie etwa JPEG, H.264/AVC und H.265/HEVC, können eingesetzt werden, um die Bildgröße zur Speicherung und zum Streaming zu reduzieren. Dies sind jedoch verlustbehaftete Komprimierungsverfahren, die Artefakte einführen können und Bilddetails reduzieren können, was zu Leistungsproblemen führen kann, wenn die dekomprimierten Bilder für Computervisionsaufgaben benutzt werden. Des Weiteren sind die Artefakte und reduzierten Bilddetails durch menschliche Betrachter visuell erkennbar. Beide Probleme ergeben sich zum Beispiel im Kontext von Automobilanwendungen, insbesondere wenn Computervisionsaufgaben bei autonomem oder teilautonomem Fahren oder Fahrerassistenzfunktionen involviert sind, aber auch wenn einem Fahrer oder Benutzer des Fahrzeugs Bilder angezeigt werden, zum Beispiel für teilautonomes Fahren oder Fahrerassistenzfunktionen. Ähnliche Probleme ergeben sich jedoch auch auf anderen Anwendungsgebieten, wo die dekomprimierten Bilder für Computervisionsaufgaben benutzt werden.
  • Eine Aufgabe der vorliegenden Erfindung ist es, eine Möglichkeit zur Bildkomprimierung bereitzustellen, wobei die Leistungsfähigkeit oder Zuverlässigkeit einer Computervisionsaufgabe, die basierend auf dem komprimierten Bild ausgeführt wird, verbessert wird, insbesondere Fehler der Computervisionsaufgabe, die aus Artefakten aufgrund der Bildkomprimierung resultieren, vermieden werden.
  • Diese Aufgabe wird durch den jeweiligen Gegenstand der unabhängigen Ansprüche erreicht. Weitere Ausführungen und bevorzugte Ausführungsformen sind Gegenstand der abhängigen Ansprüche.
  • Die Erfindung beruht auf dem Gedanken, eine Kombination von zwei künstlichen neuronalen Netzwerken bereitzustellen, wobei eines der künstlichen neuronalen Netzwerke zur Bildkomprimierung trainiert ist und das andere künstliche neuronale Netzwerk zur Computervision trainiert ist. Um die Bildkomprimierung durchzuführen, benutzt das künstliche neuronale Netzwerk zur Bildkomprimierung eine Ausgabe einer verborgenen Schicht des künstlichen neuronalen Netzwerks zur Computervision. Insbesondere wird die Bildkomprimierung durch das künstliche neuronale Netzwerk zur Bildkomprimierung durch die Ausgabe der verborgenen Schicht des künstlichen neuronalen Netzwerks zur Computervision geführt.
  • Gemäß einem Aspekt der Erfindung wird ein computerimplementiertes Verfahren zur Bildkomprimierung bereitgestellt. Dabei wird ein komprimiertes Bild erzeugt, indem ein Komprimierungsmodul eines künstlichen neuronalen Netzwerks, das zur Bildkomprimierung trainiert ist, auf Eingangsdaten angewendet wird, wobei die Eingangsdaten ein Eingangsbild enthalten oder von dem Eingangsbild abhängen. Ein weiteres künstliches neuronales Netzwerk, welches zur Ausführung zumindest einer Computervisionsaufgabe trainiert ist und welches eine erste verborgene Schicht aufweist, wird auf das Eingangsbild angewendet, insbesondere um die zumindest eine Computervisionsaufgabe auszuführen. Die Eingangsdaten, auf die das Komprimierungsmodul angewendet wird, enthalten eine Ausgabe der ersten verborgenen Schicht oder hängen von der Ausgabe der ersten verborgenen Schicht ab.
  • Falls nicht anders angegeben, können alle Schritte des computerimplementierten Verfahrens mittels zumindest einer Recheneinheit durchgeführt werden. Insbesondere kann ein Datenverarbeitungsgerät, welches zumindest einen Prozessor aufweist, der dazu eingerichtet oder angepasst ist, ein erfindungsgemäßes computerimplementiertes Verfahren durchzuführen, die Schritte des computerimplementierten Verfahrens durchführen. Zu diesem Zweck kann das Datenverarbeitungsgerät, das der zumindest einen Recheneinheit entsprechen kann, insbesondere ein Computerprogramm speichern, das Befehle beinhaltet, die, wenn sie von dem Datenverarbeitungsgerät, insbesondere dem zumindest einen Prozessor, ausgeführt werden, das Datenverarbeitungsgerät dazu veranlassen, das computerimplementierte Verfahren auszuführen.
  • Falls die Eingangsdaten das Eingangsbild nicht enthalten, aber von dem Eingangsbild abhängen, enthalten die Eingangsdaten einen Datensatz, insbesondere einen zweidimensionalen Datensatz, welcher abhängig von dem Eingangsbild, zum Beispiel mittels des weiteren künstlichen neuronalen Netzwerks, erzeugt wird. Insbesondere kann der von dem Eingangsbild abhängige Datensatz einem Zwischenergebnis des weiteren künstlichen neuronalen Netzwerks entsprechen, welches bei Ausführung der zumindest einen Computervisionsaufgabe ausgegeben wird. Das weitere künstliche neuronale Netzwerk kann zum Beispiel ein Encodermodul zum Encodieren von Merkmalen des Eingangsbilds und eines oder mehrere Decodermodule zur Ausführung der zumindest einen Computervisionsaufgabe aufweisen. Der von dem Eingangsbild abhängige Datensatz, welcher Teil der Eingangsdaten für das künstliche neuronale Netzwerk ist, kann dann zum Beispiel eine Ausgabe des Encodermoduls oder eine Ausgabe einer Schicht, insbesondere einer Zwischenschicht, des Encodermoduls aufweisen.
  • Das künstliche neuronale Netzwerk kann auch als Komprimierungsnetzwerk bezeichnet werden, obwohl es außer dem Komprimierungsmodul noch weitere Module, zum Beispiel ein Dekomprimierungsmodul, aufweisen kann. Das weitere neuronale Netzwerk kann als Computervisionsnetzwerk bezeichnet werden. Das Komprimierungsnetzwerk und das Computervisionsnetzwerk können als jeweilige Teile eines übergeordneten künstlichen neuronalen Netzwerks betrachtet werden. Zum Beispiel kann das übergeordnete künstliche neuronale Netzwerk in Ende-zu-Ende-Weise trainiert sein, so dass das Computervisionsnetzwerk und das Komprimierungsnetzwerk gemeinsam trainiert sind.
  • Allgemein kann davon ausgegangen werden, dass ein künstliches neuronales Netzwerk eine Eingangsschicht, eine Ausgangsschicht und optional eine oder mehrere verborgene Schichten, die auch als Intra-Schichten bezeichnet werden, aufweist. Falls die Anzahl von verborgenen Schichten eine oder mehrere sind, so wird das künstliche neuronale Netzwerk manchmal als tiefes neuronales Netzwerk, DNN (englisch: deep neural network) bezeichnet. Insbesondere liegen in einer Sequenz von Schichten eines künstlichen neuronalen Netzwerks die verborgenen Schichten zwischen der Eingangsschicht und der Ausgangsschicht dieses Netzwerks. Das Computervisionsnetzwerk ist insbesondere als ein faltendes neuronales Netzwerk, CNN (englisch: convolutional neural network), ausgeführt. Das Komprimierungsnetzwerk kann auch als ein CNN ausgeführt sein. Da das Computervisionsnetzwerk die erste verborgene Schicht aufweist, ist es ein DNN. Das Komprimierungsnetzwerk kann auch als ein DNN ausgeführt sein.
  • Neben dem Komprimierungsmodul kann das Komprimierungsnetzwerk auch ein Dekomprimierungsmodul aufweisen. Das Dekomprimierungsmodul kann auf das komprimierte Bild angewendet werden, um ein rekonstruiertes oder dekomprimiertes Bild zu erzeugen. Jedoch ist der Schritt des Anwendens des Dekomprimierungsmoduls auf das komprimierte Bild nicht notwendigerweise ein Teil des computerimplementierten Verfahrens zur Bildkomprimierung. Vielmehr kann das komprimierte Bild, insbesondere für spätere Benutzung, gespeichert werden. Zum Beispiel kann die spätere Benutzung das Anwenden des Dekomprimierungsmoduls auf das komprimierte Bild beinhalten.
  • Das dekomprimierte Bild kann für unterschiedliche Zwecke benutzt werden. Einerseits kann das dekomprimierte Bild dazu benutzt werden, die zumindest eine Computervisionsaufgabe auszuführen, zum Beispiel indem das Computervisionsnetzwerk auf das dekomprimierte Bild angewendet wird. Der Zweck davon kann zum Beispiel eine Fehleranalyse des Computervisionsnetzwerks oder eine Analyse der Leistungsfähigkeit des Computervisionsnetzwerks sein, beispielsweise um die Leistungsfähigkeit des Computervisionsnetzwerks durch Anpassung seiner Architektur zu steigern. Eine weitere zusätzliche Anwendung besteht darin, eine Backend-Berechnung (Cloud) von Computeraufgaben zu ermöglichen, die in der elektronischen Steuereinheit (ECU) nicht verfügbar sind. Dies wird das Niveau der Details der Umgebungswahrnehmung um das Fahrzeug herum erhöhen. Mit neuen 5G-Breitband-Mobilfunknetzen mit hoher Datenrate und niedriger Latenz-Kommunikationsnetzwerk helfen die Wahrnehmungsdetails, die Sicherheit und Konsistenz der Leistung des autonomen Fahrsystems zu verbessern.
  • Das dekomprimierte Bild kann jedoch, zusätzlich oder alternativ, auch einem menschlichen Benutzer oder menschlichen Betrachter bereitgestellt werden. Zum Beispiel kann im Kontext des fernbetriebenen Fahrens ein menschlicher Betrachter das dekomprimierte Bild analysieren, um die Gründe für einen Unfall et cetera zu rekonstruieren.
  • Mittels der Erfindung wird ein optimaler Kompromiss zwischen geringer digitaler Bildgröße des komprimierten Bilds und einem Grad an bewahrten Details, die speziell für Computervisionsaufgaben, aber auch für andere Anwendungen, wie etwa Langzeitspeicherungs-, Streaming- und Visualisierungszwecke optimiert sind, erreicht, indem das trainierte Komprimierungsnetzwerk benutzt wird, das explizit die Ausgabe der ersten verborgenen Schicht des Computervisionsnetzwerks für die Komprimierung berücksichtigt. Insbesondere wird die Komprimierung durch die Ausgabe der ersten verborgenen Schichten und optional durch die Ausgabe weiterer verborgener Schichten des Computervisionsnetzwerks geführt, um die Komprimierung der unterschiedlichen Bereiche in dem Eingangsbild abhängig von ihrer Relevanz für die zumindest eine Computervisionsaufgabe zu steigern oder zu verringern. Da die Bildkomprimierung entsprechend den Interessen des Computervisionsnetzwerks geführt wird, kann der Grad an Details unterschiedlicher Bereiche in dem Eingangsbild speziell für die zumindest eine Computervisionsaufgabe bewahrt werden. Daher kann die Rekonstruktion des Eingangsbilds durch Dekomprimierung des komprimierten Bilds sowohl zur Visualisierung als auch für Computervisionsanwendungen mit einer verbesserten Leistungsfähigkeit oder mit anderen Worten mit einer verbesserten Zuverlässigkeit oder reduzierten Fehlerrate benutzt werden.
  • Bei einigen Ausführungen weist das Komprimierungsmodul eine Kaskade von Komprimierungsblöcken mit einer fortschreitend reduzierten Auflösung auf. Jeder der Komprimierungsblöcke besteht aus einer oder mehreren Faltungsschichten, zum Beispiel drei Faltungsschichten, an einem Eingang gefolgt von einer gewichteten Downsampling-Schicht, die die Auflösung um einen Faktor reduziert, der durch eine vorgegebene Komprimierungsrate und eine Gesamtanzahl der Komprimierungsblöcke bestimmt ist.
  • Zum Beispiel ist ganzzahliges Downsampling, beispielsweise um einen Faktor zwei, effizient, aber fraktionale Skalierung in der gewichteten Downsampling-Schicht kann auch unterstützt werden. Das Eingabemerkmalsvolumen und Ausgabemerkmalsvolumen kann in eine identische Anzahl von Elementen unterteilt sein, wobei die Elementgrößen bei Eingabe und Ausgabe unterschiedlich sind, da die Auflösungen unterschiedlich sind.
  • Jede Ausgabeelementmerkmalskarte kann eine lineare Kombination des entsprechenden Eingabeelements und seiner acht verbundenen Nachbarn sein. Die Nachbarverbindungen schaffen Redundanz und erreichen somit Komprimierung. Eine Sigmoid-Nichtlinearität kann am Ende der gewichteten Downsampling-Schicht gefolgt von einer oder mehreren Faltungsschichten, zum Beispiel zwei Faltungsschichten, bereitgestellt sein.
  • Dies kann in jedem der Komprimierungsblöcke fortschreitend wiederholt werden. So kann zum Beispiel, wenn die Komprimierungsrate eine Reduzierung der Auflösung um einen Faktor acht erfordert und es drei Komprimierungsblöcke gibt, das Downsampling gleichmäßig in den drei Blöcken verteilt sein, wobei der Downsamplingfaktor in jedem Block zwei ist.
  • Die Gewichtungen in dem Komprimierungsmodul können mittels Hilfs-Decodierungs-Maximierung des Informationsgehalts, der für eine bestimmte Computervisionsaufgabe benötigt wird, trainiert werden. Somit wird die Komprimierung zur gezielten Computervisionsanwendung eingestellt und ist kein generisches Komprimierungsschema.
  • Das Dekomprimierungsmodul kann als eine symmetrische Umkehrung des Komprimierungsmoduls ausgestaltet sein, wobei gewichtete Upsampling-Schichten statt der Downsampling-Schichten benutzt werden. Zum Beispiel kann das Komprimierungs- und Dekomprimierungsmodul gemäß einer Encoder-Decoder-Architektur ausgestaltet sein.
  • Gemäß mehreren Ausführungen des computerimplementierten Verfahrens wird ein Satz von encodierten Merkmalen erzeugt, indem ein Encodermodul des weiteren künstlichen neuronalen Netzwerks auf das Eingangsbild angewendet wird. Ein Decodermodul des weiteren künstlichen neuronalen Netzwerks wird auf den Satz von encodierten Merkmalen angewendet, wobei das Decodermodul dazu trainiert ist, die zumindest eine Computervisionsaufgabe auszuführen, und das Decodermodul die erste verborgene Schicht aufweist.
  • In derartigen Ausführungen trägt die Ausgabe der verborgenen Schicht spezifische Informationen in Bezug auf die tatsächlich auszuführende Computervisionsaufgabe. Das Komprimierungsmodul wird daher in einer speziell für diese Computervisionsaufgabe und nicht nur für die Computervision im Allgemeinen angepassten Weise geführt. Der Satz von encodierten Merkmalen kann auch als die Ausgabe des Encodermoduls bezeichnet werden.
  • Das Decodermodul kann eines oder mehrere Decoderuntermodule aufweisen, wobei jedes Decoderuntermodul zur Ausführung einer jeweiligen Computervisionsaufgabe der zumindest einen Computervisionsaufgabe trainiert ist. Mit anderen Worten kann das Decodermodul ein einzelner Decoder zur Ausführung genau einer Computervisionsaufgabe sein oder er kann ein Multi-Task-Decoder mit zwei oder mehr Decoderuntermodulen sein, die denselben Satz von Encodermerkmalen zur Ausführung unterschiedlicher Computervisionsaufgaben benutzen. Die Ausgabe des Decodermoduls oder mit anderen Worten die jeweiligen Ausgaben der Decoderuntermodule können als die jeweiligen Ausgaben des Computervisionsnetzwerks betrachtet werden.
  • Der Inhalt der Ausgabe hängt von der entsprechenden Computervisionsaufgabe ab. Wenn zum Beispiel die Computervisionsaufgabe eine Objekterkennungsaufgabe ist, so kann die Ausgabe eine Beschreibung eines Bereichs von Interesse, ROI (englisch: region of interest), auch als Begrenzungsbox bezeichnet, für ein Objekt in dem Eingangsbild enthalten, wobei der ROI die Position und/oder die Orientierung des Objekts in dem Eingangsbild oder dem entsprechenden Szenario spezifiziert. Die Ausgabe kann auch eine Objektklasse für das Objekt und/oder eine Konfidenzstufe für die Objektklasse und/oder für eine oder mehrere weitere Objektklassen enthalten. Im Fall einer semantischen Segmentierungsaufgabe kann die Ausgabe eine jeweilige Klasse auf Pixelebene für jedes Pixel des Eingangsbilds aufweisen, wobei jede Klasse auf Pixelebene einen Objekttyp definiert, zu dem das jeweilige Pixel mit einer gewissen Wahrscheinlichkeit oder Konfidenz gehört. Es sind jedoch einige andere Computervisionsaufgaben bekannt, die dementsprechende Ausgaben erzeugen. Insbesondere kann die Architektur des Computervisionsnetzwerks gemäß einer bekannten Architektur für eine oder mehrere Computervisionsaufgaben ausgestaltet sein.
  • Gemäß einigen Ausführungen weisen die Eingangsdaten einen Satz von encodierten Merkmalen auf und weisen insbesondere nicht das Eingangsbild auf. Durch Verwendung der encodierten Darstellung des Eingangsbilds kann die Leistungsfähigkeit der Komprimierung und/oder Dekomprimierung verbessert werden.
  • Gemäß einigen Ausführungen wird ein erstes Decoderuntermodul des Decodermoduls, wobei das erste Decoderuntermodul zur Ausführung einer ersten Computervisionsaufgabe der zumindest einen Computervisionsaufgabe trainiert ist, auf den Satz von encodierten Merkmalen angewendet, wobei das erste Decoderuntermodul die erste verborgene Schicht aufweist. Ein zweites Decoderuntermodul des Decodermoduls, wobei das zweite Decoderuntermodul zur Ausführung einer zweiten Computervisionsaufgabe der zumindest einen Computervisionsaufgabe trainiert ist, wird auf den Satz von encodierten Merkmalen angewendet, wobei das zweite Decoderuntermodul eine zweite verborgene Schicht des weiteren künstlichen neuronalen Netzwerks aufweist. Dabei ist die zweite Computervisionsaufgabe insbesondere unterschiedlich zu der ersten Computervisionsaufgabe. Die Eingangsdaten, auf die das Komprimierungsmodul angewendet wird, enthalten eine Ausgabe der zweiten verborgenen Schicht oder hängen von der Ausgabe der zweiten verborgenen Schicht ab.
  • Folglich wird die Komprimierung gleichzeitig entsprechend den Interessen der ersten und zweiten Computervisionsaufgabe geführt. Das komprimierte Bild und insbesondere das dekomprimierte Bild ist daher besonders zur Ausführung unterschiedlicher Computervisionsaufgaben geeignet, was die Flexibilität des Verfahrens steigert oder die Anwendung des Verfahrens ermöglicht, ohne mehrere unterschiedliche komprimierte Bilder für unterschiedliche Computervisionsaufgaben zu erfordern.
  • Gemäß mehreren Ausführungen weist das weitere künstliche neuronale Netzwerk, insbesondere das erste Decoderuntermodul, eine weitere erste verborgene Schicht auf und die Eingangsdaten enthalten eine Ausgabe der weiteren ersten verborgenen Schicht oder hängen von der Ausgabe der weiteren ersten verborgenen Schicht ab.
  • Gemäß einigen Ausführungen weist das erste Decoderuntermodul die weitere erste verborgene Schicht des weiteren künstlichen neuronalen Netzwerks auf und die Eingangsdaten enthalten eine Ausgabe der weiteren ersten verborgenen Schicht oder hängen von der Ausgabe der weiteren ersten verborgenen Schicht ab.
  • Daher wird die Komprimierung durch unterschiedliche Ebenen des Decodiervorgangs geführt, was eine verbesserte Anpassung der Komprimierung an die erste Computervisionsaufgabe ermöglicht.
  • Gemäß einigen Ausführungen weist das weitere künstliche neuronale Netzwerk, insbesondere das zweite Decoderuntermodul, eine weitere zweite verborgene Schicht des weiteren künstlichen neuronalen Netzwerks auf und die Eingangsdaten enthalten eine Ausgabe der weiteren zweiten verborgenen Schicht oder hängen von der Ausgabe der weiteren zweiten verborgenen Schicht ab.
  • Gemäß einigen Ausführungen wird die Ausgabe der ersten verborgenen Schicht heruntergerechnet und normalisiert, insbesondere mittels eines Herunterrechnungs- und Normalisierungsmoduls des übergeordneten neuronalen Netzwerks, zum Beispiel des Komprimierungsnetzwerks oder des Computervisionsnetzwerks. Die Eingangsdaten enthalten die heruntergerechnete und normalisierte Ausgabe der ersten verborgenen Schicht.
  • Auf diese Weise wird das Format der Ausgabe der ersten verborgenen Schicht und/oder der weiteren verborgenen Schichten an ein Eingangsformat angepasst, das direkt durch das Komprimierungsmodul verarbeitet werden kann.
  • Gemäß einigen Ausführungen wird die Ausgabe der zweiten verborgenen Schicht heruntergerechnet und normalisiert, insbesondere mittels des Herunterrechnungs- und Normalisierungsmoduls. Die Eingangsdaten enthalten die heruntergerechnete und normalisierte Ausgabe der zweiten verborgenen Schicht.
  • Gemäß einem weiteren Aspekt der Erfindung wird ein computerimplementiertes Trainingsverfahren zum Trainieren eines künstlichen neuronalen Netzwerks zur Bildkomprimierung und eines weiteren künstlichen neuronalen Netzwerks zur Ausführung zumindest einer Computervisionsaufgabe bereitgestellt. Ein komprimiertes Trainingsbild wird erzeugt, indem ein Komprimierungsmodul des künstlichen neuronalen Netzwerks auf Trainingseingangsdaten angewendet wird, wobei die Trainingseingangsdaten ein Trainingsbild enthalten oder von dem Trainingsbild abhängen und die Trainingseingangsdaten eine Ausgabe einer ersten verborgenen Schicht des weiteren künstlichen neuronalen Netzwerks enthalten oder von der Ausgabe der ersten verborgenen Schicht abhängen. Ein dekomprimiertes Trainingsbild wird erzeugt, indem ein Dekomprimierungsmodul des künstlichen neuronalen Netzwerks auf das komprimierte Trainingsbild angewendet wird, und zumindest eine Verlustfunktion wird abhängig von dem dekomprimierten Trainingsbild ausgewertet. Das weitere künstliche neuronale Netzwerk wird auf das Trainingsbild angewendet und zumindest eine weitere Verlustfunktion wird abhängig von einer Ausgabe des weiteren künstlichen neuronalen Netzwerks ausgewertet. Netzwerkparameter des künstlichen neuronalen Netzwerks und weitere Netzwerkparameter des weiteren künstlichen neuronalen Netzwerks werden abhängig von einem Ergebnis der Auswertung der zumindest einen Verlustfunktion und der zumindest einen weiteren Verlustfunktion angepasst.
  • Dabei kann das Anpassen der Netzwerkparameter derart verstanden werden, dass es einem Trainingsschritt zum Trainieren des künstlichen neuronalen Netzwerks und des weiteren künstlichen neuronalen Netzwerks in einer Trainingsepoche entspricht. Die Anpassung der Parameter wird zum Beispiel ausgeführt, um die zumindest eine Verlustfunktion und die zumindest eine weitere Verlustfunktion zu minimieren oder eine gemeinsame Verlustfunktion, die von der zumindest einen Verlustfunktion und der zumindest einen weiteren Verlustfunktion abhängt, im Verlauf von mehreren Trainingsepochen zu minimieren. Insbesondere kann eine Vielzahl von Trainingsbildern in der beschriebenen Weise für die unterschiedlichen Trainingsepochen benutzt werden. Das Auswerten einer Verlustfunktion kann als ein Berechnen eines Wertes der Verlustfunktion verstanden werden.
  • Die Netzwerkparameter und die weiteren Netzwerkparameter weisen insbesondere Gewichtungsparameter und/oder Biasparameter des künstlichen neuronalen Netzwerks beziehungsweise des weiteren künstlichen neuronalen Netzwerks, zum Beispiel eines Encodermoduls des künstlichen neuronalen Netzwerks, eines Decodermoduls des künstlichen neuronalen Netzwerks, des Komprimierungsmoduls und/oder des Dekomprimierungsmoduls auf.
  • Gemäß einigen Ausführungen des computerimplementierten Trainingsverfahrens wird eine gemeinsame Verlustfunktion ausgewertet, die eine Kombination, insbesondere eine Summe, der zumindest einen Verlustfunktion und der zumindest einen weiteren Verlustfunktion enthält, und die Netzwerkparameter und die weiteren Netzwerkparameter werden abhängig von einem Ergebnis der Auswertung der gemeinsamen Verlustfunktion, insbesondere in einer Ende-zu-Ende-Weise angepasst.
  • Die Kombination der zumindest einen Verlustfunktion und der zumindest einen weiteren Verlustfunktion kann insbesondere eine Summe aller Verlustfunktionen der zumindest einen Verlustfunktion und aller weiteren Verlustfunktionen der zumindest einen weiteren Verlustfunktion enthalten.
  • Auf diese Weise wird ein Ende-zu-Ende-Training erreicht, das insbesondere in einem besonders engen Verhältnis zwischen dem trainierten künstlichen neuronalen Netzwerk und dem trainierten weiteren künstlichen neuronalen Netzwerk resultiert und folglich in einer besonders guten Eignung des komprimierten Bilds für die zumindest eine Computervisionsaufgabe.
  • Gemäß mehreren Ausführungen des computerimplementierten Trainingsverfahrens enthält die zumindest eine Verlustfunktion eine erste Verlustfunktion, wobei die zumindest eine weitere Verlustfunktion die erste Verlustfunktion ebenfalls enthält.
  • Mit anderen Worten ist die erste Verlustfunktion eine Verlustfunktion zum Trainieren oder Bewerten der entsprechenden Computervisionsaufgabe, die von dem weiteren künstlichen neuronalen Netzwerk ausgeführt wird. Auf diese Weise kann die Leistung des Komprimierungsmoduls direkt an die Computervisionsaufgabe angepasst werden.
  • Gemäß einigen Ausführungen enthält die zumindest eine Verlustfunktion eine zweite Verlustfunktion, die von einem Gesamtrekonstruktionsfehler des dekomprimierten Trainingsbilds in Bezug auf das Trainingseingangsbild abhängt.
  • Die zweite Verlustfunktion ist insbesondere eine Verlustfunktion zur Auswertung der Qualität des dekomprimierten Trainingsbilds oder der Komprimierung für Zwecke menschlichen Sehens.
  • Insbesondere kann der Gesamtrekonstruktionsfehler E gegeben sein durch E = i = 0 M 1 j = 0 N 1 a ij b ij 2 ,
    Figure DE102021133878A1_0001
    wobei aij Elemente einer MxN-Matrix A sind, die die Pixelwerte des Trainingseingangsbilds enthält, und bij Elemente einer MxN-Matrix B sind, die die Pixelwerte des dekomprimierten Trainingseingangsbilds enthält.
  • Die zweite Verlustfunktion kann direkt durch den Gesamtrekonstruktionsfehler gegeben sein oder durch eine Größe, die abhängig von dem Gesamtrekonstruktionsfehler berechnet wird, wie etwa einem mittleren quadratischen Fehler, MSE (englisch: mean square error), wobei MSE = E/(M*N), einem Signal-zu-Rausch-Verhältnis, SNR (englisch: signal to noise ratio), oder ein Spitzen-Signal-zu-Rausch-Verhältnis, PSNR (englisch: peak signal to noise ratio) ist, wobei PSNR = 20  log 10 ( V 2 MSE ) .
    Figure DE102021133878A1_0002
  • Dabei bezeichnet V den größtmöglichen Wert der Pixelwerte bezeichnet, zum Beispiel V=255 für ein 8-Bit-Bild.
  • Gemäß einigen Ausführungen des computerimplementierten Verfahrens zur Bildkomprimierung, werden das künstliche neuronale Netzwerk und das weitere künstliche Netzwerk unter Verwendung eines erfindungsgemäßen computerimplementierten Trainingsverfahrens trainiert oder sind derart trainiert worden.
  • Weitere Ausführungen des computerimplementierten Trainingsverfahrens ergeben sich unmittelbar aus den verschiedenen Ausführungen des computerimplementierten Verfahrens zur Bildkomprimierung und umgekehrt.
  • Gemäß einem weiteren Aspekt der Erfindung wird ein computerimplementiertes Verfahren zur Bildkomprimierung und -dekomprimierung bereitgestellt. Das Verfahren beinhaltet eine Ausführung eines computerimplementierten Verfahrens zur Bildkomprimierung und einen zusätzlichen Verfahrensschritt, wobei das Dekomprimierungsmodul des künstlichen neuronalen Netzwerks auf das komprimierte Bild angewendet wird, um ein dekomprimiertes Bild zu erzeugen.
  • Zum Beispiel kann das komprimierte Bild auf einem Speichergerät gespeichert werden und die Dekomprimierung kann zu einem späteren Zeitpunkt nach der Speicherung ausgeführt werden. Zum Beispiel kann das dekomprimierte Bild auf dem Speichergerät oder einem weiteren Speichergerät gespeichert werden.
  • Gemäß einem weiteren Aspekt der Erfindung wird ein computerimplementiertes Verfahren zur Bildkomprimierung und Computervision bereitgestellt. Das Verfahren beinhaltet eine Ausführung eines erfindungsgemäßen computerimplementierten Verfahrens zur Bildkomprimierung, wobei die zumindest eine Computervisionsaufgabe ausgeführt wird, indem das weitere künstliche neuronale Netzwerk auf das Eingangsbild angewendet wird.
  • Gemäß einem weiteren Aspekt der Erfindung wird ein Verfahren zum zumindest teilweise automatischen Führen eines Fahrzeugs bereitgestellt. Dabei wird ein Eingangsbild, das eine Umgebung des Fahrzeugs, insbesondere eine äußere Umgebung des Fahrzeugs darstellt, mittels eines Umgebungssensorsystems, zum Beispiel mittels eines Kamerasystems, des Fahrzeugs erzeugt. Ein komprimiertes Bild wird erzeugt, indem ein erfindungsgemäßes computerimplementiertes Verfahren zur Bildkomprimierung, insbesondere mittels zumindest eines Verarbeitungsschaltkreises des Fahrzeugs, ausgeführt wird. Das Fahrzeug wird abhängig von einer Ausgabe, insbesondere einer finalen Ausgabe, des auf das Eingangsbild angewendeten weiteren künstlichen neuronalen Netzwerks zumindest teilweise automatisch geführt. Das komprimierte Bild wird gespeichert, insbesondere auf einem Speichergerät des Fahrzeugs oder auf einem externen Speichergerät, zum Beispiel eines Servercomputers.
  • Das Fahrzeug wird zum Beispiel mittels eines elektronischen Fahrzeugführungssystems des Fahrzeugs, welches das Umgebungssensorsystem und den zumindest einen Verarbeitungsschaltkreis aufweisen kann, zumindest teilweise automatisch geführt.
  • Eine Steuereinheit des elektronischen Fahrzeugführungssystems kann zumindest ein Steuersignal zum zumindest teilweise automatischen Führen des Fahrzeugs abhängig von der Ausgabe des weiteren künstlichen neuronalen Netzwerks erzeugen und das zumindest eine Steuersignal einem oder mehreren Aktuatoren des Kraftfahrzeugs beziehungsweise des elektronischen Fahrzeugführungssystems bereitstellen. Der eine oder die mehreren Aktuatoren können eine Längs- und/oder Quersteuerung des Fahrzeugs abhängig von dem zumindest einen Steuersignal zumindest teilweise automatisch beeinflussen oder ausführen.
  • Alternativ oder zusätzlich kann ein Warn- und/oder ein Informationssignal und/oder eine andere Ausgabe zur Warnung und/oder Information eines Benutzers oder Fahrers des Fahrzeugs von dem zumindest einen Verarbeitungsschaltkreis abhängig von der Ausgabe des weiteren künstlichen neuronalen Netzwerks zum zumindest teilweise automatischen Führen des Fahrzeugs erzeugt werden.
  • Gemäß einigen Ausführungen des Verfahrens zum Führen eines Fahrzeugs enthält die zumindest eine Computervisionsaufgabe eine Objekterkennungsaufgabe, und die Ausgabe des auf das Eingangsbild angewendeten weiteren neuronalen Netzwerks enthält eine Objektklasse eines Objekts, das von dem Eingangsbild abgebildet wird und/oder eine Begrenzungsbox für das Objekt.
  • Gemäß einigen Ausführungen enthält die zumindest eine Computervisionsaufgabe eine semantische Segmentierungsaufgabe und die Ausgabe des auf das Eingangsbild angewendeten weiteren künstlichen neuronalen Netzwerks enthält eine Klasse auf Pixelebene für jedes einer Vielzahl von Pixeln des Eingangsbilds auf, zum Beispiel für alle Pixel des Eingangsbilds.
  • Gemäß einem weiteren Aspekt der Erfindung wird ein Datenverarbeitungssystem, das zumindest einen Verarbeitungsschaltkreis aufweist, bereitgestellt. Der zumindest eine Verarbeitungsschaltkreis ist dazu angepasst, ein erfindungsgemäßes computerimplementiertes Verfahren zur Bildkomprimierung und/oder ein erfindungsgemäßes computerimplementiertes Trainingsverfahren auszuführen.
  • Gemäß einem weiteren Aspekt der Erfindung wird ein elektronisches Fahrzeugführungssystem für ein Fahrzeug bereitgestellt. Das elektronische Fahrzeugführungssystem weist zumindest ein Speichergerät auf, welches ein Komprimierungsmodul eines künstlichen neuronalen Netzwerks aufweist, das zur Bildkomprimierung trainiert ist. Das elektronische Fahrzeugführungssystem weist zumindest einen Verarbeitungsschaltkreis auf, der dazu eingerichtet ist, ein komprimiertes Bild zu erzeugen, indem das Komprimierungsmodul auf Eingangsdaten angewendet wird, die ein Eingangsbild enthalten oder von dem Eingangsbild abhängen, und das komprimierte Bild auf dem zumindest einen Speichergerät zu speichern. Das zumindest eine Speichergerät speichert ein weiteres künstliches neuronales Netzwerk, das zur Ausführung zumindest einer Computervisionsaufgabe trainiert ist und das eine erste verborgene Schicht enthält. Der zumindest eine Verarbeitungsschaltkreis ist dazu eingerichtet, das weitere künstliche neuronale Netzwerk auf das Eingangsbild anzuwenden. Das elektronische Fahrzeugführungssystem weist zumindest eine Steuereinheit auf, welche dazu eingerichtet ist, das Fahrzeug abhängig von einer Ausgabe des auf das Eingangsbild angewendeten weiteren künstlichen neuronalen Netzwerks zumindest teilweise automatisch zu führen. Die Eingangsdaten weisen eine Ausgabe der ersten verborgenen Schicht auf oder hängen von der Ausgabe der ersten verborgenen Schicht ab.
  • Der zumindest eine Verarbeitungsschaltkreis kann das Eingangsbild direkt von einem Umgebungssensorsystem des Fahrzeugs oder des elektronischen Fahrzeugführungssystems empfangen. Alternativ kann das Eingangsbild auf dem zumindest einen Speichergerät gespeichert werden und der zumindest eine Verarbeitungsschaltkreis empfängt das Eingangsbild von dem zumindest einen Speichergerät.
  • Gemäß einigen Ausführungen des elektronischen Fahrzeugführungssystems weist das elektronische Fahrzeugführungssystem ein Umgebungssensorsystem, insbesondere ein Kamerasystem auf, welches dazu eingerichtet ist, eine Umgebung des Fahrzeugs oder mit anderen Worten eine Umgebung des Umgebungssensorsystems darstellende Bilddaten zu erzeugen, und der zumindest eine Verarbeitungsschaltkreis ist dazu eingerichtet, das Eingangsbild abhängig von den Bilddaten zu erzeugen.
  • Die Bilddaten können zum Beispiel Rohbilddaten eines Imagerchips des Umgebungssensorsystems oder den vorverarbeiteten Rohbilddaten entsprechen. Der zumindest eine Verarbeitungsschaltkreis kann zum Beispiel einen Bildsignalprozessor, ISP (englisch: image signal processor) aufweisen, der dazu eingerichtet ist, das Eingangsbild abhängig von den Bilddaten zu erzeugen. Der ISP kann in manchen Ausführungen ein Teil des Kamerasystems sein.
  • Weitere Ausführungen des erfindungsgemäßen elektronischen Fahrzeugführungssystems ergeben sich unmittelbar aus den verschiedenen Ausführungen des computerimplementierten Verfahrens zur Bildkomprimierung und den verschiedenen Ausführungen des Verfahrens zum zumindest teilweise automatischen Führen eines Fahrzeugs und umgekehrt. Insbesondere ist ein erfindungsgemäßes elektronisches Fahrzeugführungssystem dazu eingerichtet, ein Verfahren zum zumindest teilweise automatischen Führen eines Fahrzeugs auszuführen, oder führt ein derartiges Verfahren aus.
  • Gemäß einem weiteren Aspekt der Erfindung wird ein erstes Computerprogramm, welches erste Befehle beinhaltet, bereitgestellt. Wenn die ersten Befehle beziehungsweise das erste Computerprogramm von einem Datenverarbeitungssystem, insbesondere von einem erfindungsgemäßen Datenverarbeitungssystem, ausgeführt werden, veranlassen die ersten Befehle das Datenverarbeitungssystem dazu, ein erfindungsgemäßes computerimplementiertes Verfahren zur Bildkomprimierung auszuführen.
  • Gemäß einem weiteren Aspekt der Erfindung wird ein zweites Computerprogramm, welches zweite Befehle beinhaltet, bereitgestellt. Wenn die zweiten Befehle beziehungsweise das zweite Computerprogramm von einem erfindungsgemäßen elektronischen Fahrzeugführungssystem, insbesondere von dem zumindest einen Verarbeitungsschaltkreis und/oder der Steuereinheit, ausgeführt wird, veranlassen die zweiten Befehle das elektronische Fahrzeugführungssystem dazu, ein erfindungsgemäßes Verfahren zum zumindest teilweise automatischen Führen eines Fahrzeugs auszuführen.
  • Gemäß einem weiteren Aspekt der Erfindung wird ein computerlesbares Speichermedium bereitgestellt, welches ein erstes und/ein zweites erfindungsgemäßes Computerprogramm speichert.
  • Das erste und das zweite Computerprogramm wie auch das computerlesbare Speichermedium können als jeweilige Computerprogrammprodukte betrachtet werden, die die ersten und/oder die zweiten Befehle beinhalten.
  • Unter einem elektronischen Fahrzeugführungssystem kann ein elektronisches System verstanden werden, das dazu eingerichtet ist, ein Fahrzeug in vollautomatischer oder vollautonomer Weise zu führen, und insbesondere ohne dass ein manuelles Eingreifen oder eine manuelle Steuerung durch einen Fahrer oder Benutzer des Fahrzeugs erforderlich ist. Das Fahrzeug führt alle erforderlichen Funktionen, wie etwa Lenkmanöver, Abbremsmanöver und/oder Beschleunigungsmanöver sowie Überwachung und Erfassung des Straßenverkehrs sowie entsprechende Reaktionen automatisch durch. Insbesondere kann das elektronische Fahrzeugführungssystem einen vollautomatischen oder vollautonomen Fahrmodus nach Stufe 5 der Klassifizierung gemäß SAE J3016 implementieren. Ein elektronisches Fahrzeugführungssystem kann auch als ein Fahrerassistenzsystem (englisch: „advanced driver assistance system“), ADAS, implementiert sein, welches einen Fahrer beim teilautomatischen oder teilautonomen Fahren unterstützt. Insbesondere kann das elektronische Fahrzeugführungssystem einen teilautomatischen oder teilautonomen Fahrmodus nach den Stufen 1 bis 4 der Klassifizierung gemäß SAE J3016 implementieren. Hier und im Folgenden bezieht sich SAE J3016 auf die entsprechende Norm in der Version vom Juni 2018.
  • Die zumindest teilweise automatische Fahrzeugführung kann es daher beinhalten, das Fahrzeug gemäß eines vollautomatischen oder vollautonomen Fahrmodus nach Stufe 5 der Klassifizierung gemäß SAE J3016 zu führen. Die zumindest teilweise automatische Fahrzeugführung kann es auch beinhalten, das Fahrzeugs gemäß eines teilautomatischen oder teilautonomen Fahrmodus nach den Stufen 1 bis 4 der Klassifizierung gemäß SAE J3016 zu führen.
    Ist in der vorliegenden Offenbarung die Rede davon, dass eine Komponente des erfindungsgemäßen Datenverarbeitungssystems oder das erfindungsgemäße elektronische Fahrzeugführungssystem, insbesondere der zumindest eine Verarbeitungsschaltkreis des erfindungsgemäßen elektronischen Fahrzeugführungssystems, dazu angepasst, eingerichtet, ausgestaltet et cetera ist, eine bestimmte Funktion auszuführen oder zu realisieren, eine bestimmte Wirkung zu erzielen oder einem bestimmten Zweck zu dienen, so kann dies derart verstanden werden, dass die Komponente, über die prinzipielle oder theoretische Verwendbarkeit oder Eignung der Komponente für diese Funktion, Wirkung oder diesen Zweck hinaus, durch eine entsprechende Anpassung, Programmierung, physische Ausgestaltung und so weiter konkret und tatsächlich dazu in der Lage ist, die Funktion auszuführen oder zu realisieren, die Wirkung zu erzielen oder dem Zweck zu dienen.
  • Unter einer Recheneinheit kann insbesondere ein Datenverarbeitungsgerät verstanden werden, welches eine Verarbeitungsschaltung aufweist. Die Recheneinheit kann also insbesondere Daten zur Durchführung von Rechenoperationen verarbeiten. Darunter können auch Operationen fallen, um indizierte Zugriffe auf eine Datenstruktur, beispielsweise eine Umsetzungstabelle, LUT (englisch: „look-up table“), durchzuführen. Die zumindest eine Verarbeitungsschaltung und die Steuereinheit des elektronischen Fahrzeugführungssystems können daher auch als eine oder mehrere Recheneinheiten betrachtet werden.
  • Die Recheneinheit kann insbesondere einen oder mehrere Computer, einen oder mehrere Mikrocontroller und/oder einen oder mehrere integrierte Schaltkreise enthalten, beispielsweise eine oder mehrere anwendungsspezifische integrierte Schaltungen, ASIC (englisch: „application-specific integrated circuit“), eines oder mehrere feldprogrammierbare Gate Arrays, FPGA, und/oder eines oder mehrere Einchipsysteme, SoC (englisch: „system on a chip“). Die Recheneinheit kann auch einen oder mehrere Prozessoren, beispielsweise einen oder mehrere Mikroprozessoren, eine oder mehrere zentrale Prozessoreinheiten, CPU (englisch: „central processing unit“), eine oder mehrere Grafikprozessoreinheiten, GPU (englisch: „graphics processing unit“) und/oder einen oder mehrere Signalprozessoren, insbesondere einen oder mehrere digitale Signalprozessoren, DSP, enthalten. Die Recheneinheit kann auch einen physischen oder einen virtuellen Verbund von Computern oder sonstigen der genannten Einheiten beinhalten.
  • Bei verschiedenen Ausführungsbeispielen enthält die Recheneinheit eine oder mehrere Hardware- und/oder Softwareschnittstellen und/oder eine oder mehrere Speichereinheiten.
  • Eine Speichereinheit kann als flüchtiger Datenspeicher, beispielsweise als dynamischer Speicher mit wahlfreiem Zugriff, DRAM (englisch: „dynamic random access memory“) oder statischer Speicher mit wahlfreiem Zugriff, SRAM (englisch: „static random access memory“), oder als nicht-flüchtiger Datenspeicher, beispielsweise als Festwertspeicher, ROM (englisch: „read-only memory“), als programmierbarer Festwertspeicher, PROM (englisch: „programmable read-only memory“), als löschbarer Festwertspeicher, EPROM (englisch: „erasable read-only memory“), als elektrisch löschbarer Festwertspeicher, EEPROM (englisch: „electrically erasable read-only memory“), als Flash-Speicher oder Flash-EEPROM, als ferroelektrischer Speicher mit wahlfreiem Zugriff, FRAM (englisch: „ferroelectric random access memory“), als magnetoresistiver Speicher mit wahlfreiem Zugriff, MRAM (englisch: „magnetoresistive random access memory“) oder als Phasenänderungsspeicher mit wahlfreiem Zugriff, PCRAM (englisch: „phase-change random access memory“), ausgestaltet sein.
  • Ein künstliches neuronales Netzwerk kann als ein Softwarecode oder eine Zusammenstellung mehrerer Softwarecodekomponenten verstanden werden, wobei der Softwarecode mehrere Softwaremodule für unterschiedliche Funktionen, zum Beispiel eines oder mehrere Encodermodule und eines oder mehrere Decodermodule, beinhalten kann. Ein künstliches neuronales Netzwerk kann als ein nichtlineares Modell oder ein nichtlinearer Algorithmus verstanden werden, das beziehungsweise der eine Eingabe auf eine Ausgabe abbildet, wobei die Eingabe durch einen Eingangsmerkmalsvektor oder eine Eingangssequenz gegeben ist. Ein Softwaremodul kann als ein Teil eines Softwarecodes verstanden werden, der funktional verbunden und zu einer Einheit kombiniert ist. Ein Softwaremodul kann mehrere Verarbeitungsschritte und/oder Datenstrukturen aufweisen oder implementieren.
  • Computer-Vision-Algorithmen, die auch als Algorithmen zum maschinellen Sehen oder Algorithmen zur automatischen visuellen Wahrnehmung bezeichnet werden können, können als Computeralgorithmen zur automatischen Ausführung einer Aufgabe zur visuellen Wahrnehmung betrachtet werden. Unter einer Aufgabe zur visuellen Wahrnehmung, auch als Computervisionsaufgabe bezeichnet, kann zum Beispiel eine Aufgabe zum Extrahieren visueller Informationen aus Bilddaten verstanden werden. Insbesondere kann die Aufgabe zur visuellen Wahrnehmung im Prinzip von einem Menschen ausgeführt werden, der dazu imstande ist, ein Bild, das den Bilddaten entspricht, visuell wahrzunehmen. Im vorliegenden Zusammenhang werden visuelle Wahrnehmungsaufgaben jedoch automatisch ausgeführt, ohne die Unterstützung durch einen Menschen zu benötigen.
  • Zum Beispiel kann unter einem Algorithmus zur Computervision ein Algorithmus zur Bildbearbeitung oder ein Algorithmus zur Bildanalyse verstanden werden, der unter Verwendung maschinellen Lernens trainiert is und beispielsweise auf einem künstlichen neuronalen Netzwerk, insbesondere einem faltenden neuronalen Netzwerk, basieren kann.
  • Zum Beispiel kann der Algorithmus zur Computervision einen Algorithmus zur Objekterkennung, einen Algorithmus zur Hinderniserkennung, einen Algorithmus zur Objektverfolgung, einen Klassifikationsalgorithmus und/oder einen Segmentierungsalgorithmus beinhalten.
  • Die Ausgabe eines Algorithmus zur Computervision hängt von der spezifischen zugrundeliegenden visuellen Wahrnehmungsaufgabe ab. Zum Beispiel kann eine Ausgabe eines Algorithmus zur Objekterkennung eine oder zwei Begrenzungsboxen enthalten, die einen räumlichen Ort und wahlweise eine Orientierung eines oder mehrerer jeweiliger Objekte in der Umgebung und/oder entsprechende Objektklassen für das eine oder die mehreren Objekte definieren. Ein Algorithmus zur semantischen Segmentierung, der auf ein Kamerabild angewendet wird, kann eine Klasse auf Pixelebene für jedes Pixel des Kamerabilds enthalten. Die Klassen auf Pixelebene können zum Beispiel einen Objekttyp definieren, zu dem das jeweilige Pixel oder der jeweilige Punkt gehört.
  • Weitere Merkmale der Erfindung ergeben sich aus den Ansprüchen, den Figuren und der Figurenbeschreibung. Die oben in der Beschreibung erwähnten Merkmale und Merkmalskombinationen sowie die unten in der Figurenbeschreibung erwähnten und/oder in den Figuren gezeigten Merkmale und Merkmalskombinationen können von der Erfindung nicht nur in der jeweils angegebenen Kombination, sondern auch in anderen Kombinationen umfasst sein. Insbesondere sind Ausführungsformen und Merkmalskombinationen, die nicht alle Merkmale eines ursprünglich formulierten Anspruchs aufweisen, auch von der Erfindung umfasst. Darüber hinaus sind Ausführungsformen und Merkmalskombinationen, die über die in den Rückbezügen der Ansprüche dargelegten Merkmalskombinationen hinausgehen oder von diesen abweichen, von der Erfindung umfasst.
  • Im Folgenden wird die Erfindung im Einzelnen anhand spezifischer beispielhafter Ausführungen und jeweiliger schematischer Zeichnungen erklärt. In den Zeichnungen können identische oder funktionsgleiche Elemente mit denselben Bezugszeichen bezeichnet sein. Die Beschreibung identischer oder funktionsgleicher Elemente wird nicht notwendigerweise hinsichtlich unterschiedlicher Zeichnungen wiederholt.
  • In den Figuren zeigen
    • 1 eine schematische Darstellung eines Fahrzeugs mit einer beispielhaften Ausführung eines erfindungsgemäßen elektronischen Fahrzeugführungssystems;
    • 2 eine schematische Veranschaulichung einer beispielhaften Ausführung eines erfindungsgemäßen computerimplementierten Verfahrens zur Bildkomprimierung;
    • 3 eine schematische Veranschaulichung einer Dekomprimierung gemäß einer beispielhaften Ausführung eines erfindungsgemäßen computerimplementierten Verfahrens zur Komprimierung und Dekomprimierung;
    • 4 eine schematische Veranschaulichung einer Dekomprimierung gemäß einer weiteren beispielhaften Ausführung eines erfindungsgemäßen computerimplementierten Verfahrens zur Komprimierung und Dekomprimierung;
    • 5 eine schematische Veranschaulichung einer beispielhaften Ausführung eines erfindungsgemäßen computerimplementierten Trainingsverfahrens; und
    • 6 eine schematische Veranschaulichung eines weiteren Teils einer weiteren beispielhaften Ausführung eines erfindungsgemäßen computerimplementierten Verfahrens zur Bildkomprimierung.
  • 1 zeigt schematisch ein Kraftfahrzeug 1, welches eine beispielhafte Ausführung eines erfindungsgemäßen elektronischen Fahrzeugführungssystems 2 aufweist.
  • Das elektronische Fahrzeugführungssystem 2 weist eine Kamera 4 auf, die an dem Fahrzeug 1 montiert ist, um ein Sichtfeld in der äußeren Umgebung des Fahrzeugs 1 zu erfassen. Das elektronische Fahrzeugführungssystem 2 weist zumindest ein Speichergerät 8, 9, zum Beispiel einen flüchtigen Speicher 8 und einen nicht-flüchtigen Speicher 9 auf. Der flüchtige Speicher 8 kann zum Beispiel als ein Speicher mit wahlfreiem Zugriff, RAM (englisch: random access memory), zum Beispiel als DDR-RAM, implementiert sein.
  • Das elektronische Fahrzeugführungssystem 2 weist des Weiteren zumindest einen Verarbeitungsschaltkreis 5, 6, 7, zum Beispiel einen Bildsignalprozessor, ISP (englisch: image signal processor) 5, eine Computervisions- und komprimierungsmaschine, CVCE 6 und eine zentrale Verarbeitungseinheit, CPU (englisch: central processing unit), 7 auf. Die Verarbeitungsschaltkreise 5, 6, 7 können zum Beispiel Teile eines Einchipsystems, SoC (englisch: system on a chip), 3 sein. Es ist jedoch anzumerken, dass die beschriebene Trennung der Verarbeitungsschaltkreise 5, 6, 7 nicht notwendigerweise gegeben ist oder anders realisiert sein kann. Insbesondere können die Funktionen der Verarbeitungsschaltkreise 5, 6, 7 mittels unterschiedlicher Verarbeitungsschaltkreise oder einer unterschiedlichen Anzahl von Verarbeitungsschaltkreisen oder mittels eines einzigen Verarbeitungsschaltkreises ausgeführt werden.
  • Das elektronische Fahrzeugführungssystem 2, zum Beispiel das SoC 3, kann des Weiteren eine Speicherschnittstelle 10 aufweisen, welche mit den Speichergeräten 8, 9 verbunden ist, und eine Kommunikationsschnittstelle 11, welche auch als eine Netzwerkschnittstelle bezeichnet werden kann.
  • Das SoC 3, insbesondere die Verarbeitungsschaltkreise 5, 6, 7, die Speichergeräte 8, 9 und die Schnittstellen 10, 11, können Teil eines elektronischen Steuergeräts, ECU (englisch: electronic control unit), des Kraftfahrzeugs 1 sein. Die genannten Bauteile können jedoch auch auf die zwei oder mehr ECUs oder andere Bauteile des Kraftfahrzeugs 1 verteilt sein.
  • Die Kamera 4 kann einen Bilddatensatz erzeugen, der eine Umgebung des Kraftfahrzeugs 1 darstellt, und den Bilddatensatz dem ISP 5 bereitstellen, der die Bildsignale, insbesondere Bayer-Muster, die von einem Imagerchip der Kamera 4 herrühren, verarbeitet. In alternativen Ausgestaltungen kann sich der ISP 5 innerhalb der Kamera 4 befinden.
  • Das Eingangsbild kann dann mittels des ISP 5 auf den flüchtigen Speicher 8 geschrieben werden, oder Videostreams, die eine Vielzahl von derartigen Bildern enthalten, können entsprechend auf den flüchtigen Speicher 8 geschrieben werden. Das Eingangsbild kann dann mittels der CVCE 6 gelesen werden. Die CVCE 6 speichert ein künstliches neuronales Netzwerk 14, welches zur Bildkomprimierung trainiert ist, und ein weiteres künstliches neuronales Netzwerk 15, welches zur Ausführung zumindest einer Computervisionsaufgabe trainiert ist (siehe zum Beispiel 2 und 5). Zumal die CVCE 6 ein Verarbeitungsschaltkreis ist, kann sie auch als ein Speichergerät aufweisend angesehen werden, das die neuronalen Netzwerke 14, 15 speichert.
  • Insbesondere kann der zumindest eine Verarbeitungsschaltkreis 5, 6, 7 ein erfindungsgemäßes computerimplementiertes Verfahren zur Bildkomprimierung ausführen. Eine beispielhafte Ausführung eines derartigen Verfahrens ist in 2 veranschaulicht, welches schematisch ein Komprimierungsmodul 14a des neuronalen Netzwerks 14 zeigt, welches auch als Komprimierungsnetzwerk bezeichnet werden kann, sowie das weitere künstliche neuronale Netzwerk 15, welches auch als Computervisionsnetzwerk bezeichnet werden kann.
  • Das Eingangsbild 12 wird von der CVCE 6 empfangen, welche dazu eingerichtet ist, das Computervisionsnetzwerk 15 auf das Eingangsbild 12 anzuwenden, um die zumindest eine Computervisionsaufgabe auszuführen. Jede der zumindest einen Computervisionsaufgabe ergibt eine entsprechende Ausgabe 20a, 20b, 20c.
  • Des Weiteren wendet die CVCE 6 das Komprimierungsmodul 14a auf Eingangsdaten an, die das Eingangsbild 12 enthalten oder von dem Eingangsbild 12 abhängen, um ein komprimiertes Bild 13 zu erzeugen. Die CVCE 6 kann dann die Ausgaben 20a, 20b, 20c der Computervisionsaufgaben und/oder das komprimierte Bild 13 auf dem flüchtigen Speicher 8 speichern. Die Speicherschnittstelle 10 kann zum Beispiel das komprimierte Bild 13 aus dem flüchtigen Speicher 8 lesen und es auf dem nicht-flüchtigen Speicher 9 speichern.
  • Alternativ oder zusätzlich kann die Kommunikationsschnittstelle 11 das komprimierte Bild 13 aus dem flüchtigen Speicher 8 lesen und es einem externen Gerät, zum Beispiel einer weiteren ECU des Kraftfahrzeugs 1 oder einem externen Servercomputer bereitstellen.
  • Das Computervisionsnetzwerk 15 weist zumindest eine verborgene Schicht 19a, 19b, 19c auf. Wenn das Computervisionsnetzwerk 15 auf das Eingangsbild 12 angewendet wird, wird eine Vielzahl von Schichten einschließlich einer Eingangsschicht und einer Ausgangsschicht und die eine oder die mehreren verborgenen Schichten 19a, 19b, 19c, welche zwischen der Eingangsschicht und der Ausgangsschicht angeordnet sind, sukzessiv auf das Eingangsbild 12 angewendet. Eine entsprechende Ausgabe der zumindest einen der verborgenen Schichten 19a, 19b, 19c wird dem Komprimierungsmodul 14a als ein zusätzlicher Teil der Eingangsdaten bereitgestellt, um das komprimierte Bild 13 zu erzeugen. Insbesondere kann das Komprimierungsnetzwerk 14 eine Herunterrechnungs- und Normalisierungsstufe 21 enthalten, die die Ausgabe der zumindest einen verborgenen Schicht 19a, 19b, 19c empfängt und sie herunterrechnet und normalisiert, bevor sie sie dem Komprimierungsmodul 14a bereitstellt.
  • Das elektronische Fahrzeugführungssystem 2 weist des Weiteren eine Steuereinheit (nicht gezeigt) auf, die die Ausgabe 20a, 20b, 20c der Computervisionsaufgaben empfängt und Steuersignale für einen oder mehrere Aktuatoren (nicht gezeigt) des Kraftfahrzeugs 1 erzeugt, die eine Quer- und/oder Längssteuerung des Fahrzeugs 1 abhängig von den Steuersignalen zumindest teilweise automatisch beeinflussen kann.
  • Wie in 3 gezeigt, kann in manchen Anwendungen die Speicherschnittstelle 10 das komprimierte Bild 13 aus dem nicht-flüchtigen Speicher 9 lesen und es einem Dekomprimierungsmodul 14b des Komprimierungsnetzwerks 14 bereitstellen. Die CVCE 6 wendet das Dekomprimierungsmodul 14b auf das komprimierte Bild 13 an und erzeugt ein darauf basierendes dekomprimiertes Bild. Dann kann das dekomprimierte Bild zum Beispiel dem Computervisionsnetzwerk 15 oder einem anderen Computervisionsnetzwerk (nicht gezeigt) bereitgestellt werden, welches die zumindest eine Computervisionsaufgabe abhängig von dem dekomprimierten Bild ausführen kann.
  • 4 zeigt eine ähnliche Anwendung, wobei die Speicherschnittstelle 10 das komprimierte Bild 13 aus dem nicht-flüchtigen Speicher 9 liest und es auf einem weiteren flüchtigen Speicher 22 speichert. Die Kommunikationsschnittstelle 11 liest das komprimierte Bild 13 aus dem weiteren flüchtigen Speicher 22 und stellt es einer entsprechenden weiteren Kommunikationsschnittstelle 11' einer weiteren ECU bereit. Die weitere Kommunikationsschnittstelle 11' speichert das empfangene komprimierte Bild 13 auf einem weiteren flüchtigen Speicher 22', welcher es einem weiteren Dekomprimierungsmodul 14' bereitstellt, welches mittels einer weiteren CVCE (nicht gezeigt) der weiteren ECU angewendet wird, um das dekomprimierte Bild zu erzeugen. Das dekomprimierte Bild kann dann einem weiteren Computervisionsnetzwerk 17' bereitgestellt werden, welches entsprechend die zumindest eine Computervisionsaufgabe durchführt.
  • Bei manchen Ausführungen ist das Computervisionsnetzwerk 15 als ein Autoencoder-CNN-Netzwerk implementiert, wie zum Beispiel in 2 gezeigt. Das Computervisionsnetzwerk 15 weist ein Encodermodul 16 auf, welches das Eingangsbild 12 empfängt und einen Satz von encodierten Merkmalen 18 ausgibt. Das Computervisionsnetzwerk 15 weist auch ein Decodermodul 17 auf, welches den Satz von encodierten Merkmalen 18 empfängt, um die zumindest eine Computervisionsaufgabe auszuführen, und erzeugt die Ausgaben 20a, 20b, 20c abhängig von dem Satz von encodierten Merkmalen 18.
  • Einige Schichten des Encodermoduls 16 können zum Beispiel einen Faltungsvorgang, ein maximales Pooling-Verfahren und/oder einen nichtlinearen Vorgang, wie etwa einen ReLU-Vorgang enthalten. Die Ausgabegröße einer faltenden Schicht ist typischerweise kleiner als ihre Eingabe. Die Faltungen komprimieren daher das Eingangsbild 12. Der Komprimierungsgrad kann für unterschiedliche Netzwerkausgestaltungen des Encodermoduls 16 unterschiedlich sein. Gleichzeitig werden in dem Eingangsbild 12 enthaltene Informationen und Details für die Anforderungen der gezielten Computervisionsaufgabe erhalten.
  • Bei manchen Ausführungen ist das Decodermodul 17 ein Multi-Task-Decoder, der zwei oder mehr Decoderuntermodule 17a, 17b, 17c aufweist, wobei jedes davon für eine andere Computervisionsaufgabe basierend auf demselben Satz von encodierten Merkmalen 18 trainiert ist. Jedes der Decoderuntermodule 17a, 17b, 17c erzeugt daher eine jeweilige Ausgabe 20a, 20b, 20c des Computervisionsnetzwerks 15, zum Beispiel zur Objekterkennung, semantischen Segmentierung, Fußgängererkennung, Fahrzeugerkennung und Geschwindigkeitsbegrenzungserkennung, Tiefenschätzung, Bewegungsschätzung, et cetera.
  • Das Decodermodul 17, zum Beispiel jedes der Decoderuntermodule 17a, 17b, 17, weist verborgene Schichten 19a, 19b, 19c auf, die auch als Intra-Schichten 19a, 19b, 19c bezeichnet werden. Zumindest manche der Intra-Schichten 19a, 19b, 19c werden als Teil der Eingabe an das Komprimierungsmodul 14a extrahiert, welches auch auf einem CNN basieren kann.
  • Da die mehreren Decoderuntermodule 17a, 17b, 17 zum Beispiel dazu trainiert sind, Objekte und Merkmale zu erkennen, die zum zumindest teilweise automatischen Führen des Kraftfahrzeugs 1 benutzt werden, werden die Intra-Schichten 19a, 19b, 19c dazu benutzt, das Komprimierungsmodul 14a dahingehend zu führen, welche Merkmale wichtig sind und in welchen Bereichen in dem Eingangsbild 12 daher mehr Details beibehalten werden sollen. Das hilft dabei, einen optimalen Kompromiss zwischen dem Bildkomprimierungsfaktor und der Bildqualität im Hinblick auf die Verwendung für Computervisionsanwendungen zu erreichen.
  • Folglich wird das dekomprimierte Bild auch für Computervisionsanwendungen optimiert. Es kann daher von dem Computervisionsnetzwerk 15 und/oder von anderen CNN-Netzwerken für dieselbe oder andere Computervisionsaufgaben benutzt werden.
  • Des Weiteren wird ein verbesserter Sicherheitsgrad erhalten, da die Dekomprimierung nicht von irgendeiner standardmäßigen Dekomprimierungsmaschine ausgeführt werden kann.
  • Eine beispielhafte Anwendung für das komprimierte Bild ist eine Offline-Szenario-Analyse. Im Fall eines Betriebsfehlers der zumindest teilweise automatischen Führung des Fahrzeugs 1 basierend auf den Ausgaben 20a, 20b, 20c, sowie für Grenzfälle (englisch: corner cases), die während der Entwicklung nicht beobachtet wurden, können die gespeicherten komprimierten Bilder dekomprimiert werden und in einem Backend über eine Simulation untersucht werden, die Systemverhaltensentscheidungen basierend auf einer Computervisionsanalyse einschließt.
  • Bei manchen Ausführungen der Erfindung kann Bildkomprimierung als eine Zusatzaufgabe in einem bestehenden Multi-Task-Wahrnehmungsmodell, wie OmniDet, auf rechnerisch effiziente Weise betrachtet werden.
  • Im Gegensatz zu bekannten Komprimierungsalgorithmen kann die Erfindung zum Beispiel semantische und/oder geometrische Merkmale aus dem Computervisionsnetzwerk 15 wirksam einsetzen. Merkmale aus einem oder mehreren, beispielsweise allen, verborgenen Decoderschichten werden genutzt, um das Komprimierungsmodul 14a direkt zu führen, indem die Auflösung jeder Merkmalskarte normalisiert wird, um mit der komprimierten Merkmalskarte übereinzustimmen. Diese Merkmalsführung ermöglicht den expliziten Gebrauch von Informationen aus den Computervisionsaufgaben, um die Komprimierung in anwendungsspezifischer Weise zu führen.
  • Zum Beispiel können Fußgänger und Fahrzeuge wichtige Objekte sein und die jeweiligen Erkennungsmerkmale können die Komprimierung führen, um den jeweiligen Bildbereichen mehr Wichtigkeit zu verleihen und diese Bereiche daher weniger zu komprimieren als andere, zum Beispiel Fahrbahn- und Himmelsbereiche, die weniger wichtig sein können und mehr komprimiert werden können. Bewegungsmerkmale können die Verfolgung von Bereichen und Objekten im Zeitverlauf ermöglichen, um eine explizite Merkmalswiederverwendung und einen höheren Komprimierungsgrad zu erreichen.
  • Das Komprimierungsmodul 14a kann als ein Encoder implementiert sein, der den empfangenen encodierten Merkmalssatz basierend auf den Anforderungen an die Komprimierungsrate fortschreitend reduziert. Das Dekomprimierungsmodul 14b kann ein Decoder sein, der die komprimierte Merkmalskarte fortschreitend rekonstruiert, um das dekomprimierte Bild zu erzeugen.
  • Ein erfindungsgemäßes computerimplementiertes Trainingsverfahren ist in 5 veranschaulicht. Da ein Komprimierungsalgorithmus notwendigerweise ein Kompromiss zwischen dem Komprimierungsfaktor und der Rekonstruktionsgenauigkeit ist, können spezifische Verluste 22a zur Bildrekonstruktion basierend auf Computervisionsaufgaben, wie etwa Objekterkennung, für das Training verwendet werden, wie in 5 dargestellt. Des Weiteren können Verluste 22b verwendet werden, die die Qualität des dekomprimierten Bilds für das menschliche Sehen quantifizieren.
  • Zum Beispiel kann ein fortschreitender Informationsreduktionsverlust in dem Komprimierungsmodul 14a verwendet werden, wobei das nächste Schichtmerkmal einen Hilfskonstruktionszweig 23 mit einem jeweiligen Fehlerberechnungsblock 24 aufweist, um sicherzustellen, dass wichtige Informationen bewahrt werden. Der Fokus kann zum Beispiel sein, anwendungsabhängige Informationen und nicht generischen Bildinhalt zu bewahren.
  • Jede der Computervisionsaufgaben kann einen entsprechenden Verlust 26a, 26b, 26c haben, der auf bekannte Weise definiert ist. Eine gemeinsame Verlustfunktion kann eine Summe aller Verluste 26a, 26b, 26c, 22a, 22b sein und kann ausgewertet werden, um ein gemeinsames Ende-zu-Ende-Training des Computervisionsnetzwerks 15 und des Komprimierungsnetzwerks 15 zu erreichen.
  • Optional kann die Komprimierung durch wirksames Einsetzen einer zeitlichen Redundanz in dem Videostream erweitert werden, wie in 6 veranschaulicht. Einige, in 6 zum Beispiel drei, Encoderstreams T1, T2, T3 können an ein Merkmalfusionsmodul 25 geleitet werden, welches zum Beispiel in der Art eines rollierender Pufferspeichers arbeiten kann, um die Speicherung eines großen Satzes von früheren Encoder-Frames zu vermeiden.
  • Der Merkmalsencoder kann ein Prädiktormodul haben, welches das Encodermodul für den nächsten Frame prädiziert und dann eine Differenz erhält, um einen weiteren Komprimierungsgrad zu erhalten. Das ist besonders vorteilhaft in statischen oder sich langsam bewegenden Szenen. Im Fall von statischen Szenen ohne sich bewegende Objekte hat der differenzielle Encoder keine Informationen. Das Prädiktormodul wird basierend auf einem Rekonstruktionsverlust des prädizierten und rekonstruierten nächsten Frames unter Verwendung des beobachteten nächsten Frames als Ground Truth trainiert. Der Verlust ist dazu ausgestaltet, den Komprimierungsfaktor über den Videostream zu maximieren und nur neuartige Ereignisse zu erfassen, die sich ändern, wobei sie eine Ereignisverwaltung in der Software nachahmen.
  • Zusätzlich zu klassischen verlustbehafteten Bild- oder Videoencodern, wie etwa JPEG, HEIC, H.264/AVC, H.265/HEVC, die auf eine Maximierung der Bild- oder Videokomprimierungsrate mit minimierten visuellen Artefakten abzielen, kann eine CNNbasierte Bildkomprimierungstechnik, wie sie in Bezug auf mehrere Ausführungen der Erfindung beschrieben ist, auch den Verlust von Bilddetails für Computervisionsanwendungen minimieren. Um die drei Ziele, beste Komprimierungsrate, geringste visuelle Artefakte und geringsten Detailverlust für die Computervision, zu erreichen, werden Zwischenschichten des Computervisionsnetzwerks benutzt, um Informationen zum Führen des Komprimierungsmoduls bereitzustellen.
  • In Fahrzeug-ECUs können Computervision und Bild- oder Videokomprimierung sich zwei unterschiedliche Funktionsblöcke zunutze machen, die separat verarbeitet werden. Zum Beispiel kann die Computervision auf die größtmögliche Erkennungsleistung mit möglichst wenigen falschen Positiven abzielen, während die Komprimierung auf die größtmögliche Komprimierung mit der geringsten Auswirkung auf ihre visuelle Qualität abzielen kann. Wenn jedoch die komprimierten Bilder oder Streams zur Computervision verwendet werden, können sie weniger Details und ungewollte Artefakte einführen, was in einer reduzierten Leistung der Computervision resultiert. Zusätzlich sind die Verarbeitungswege zur Computervision von denen zur Bild- oder Videokomprimierung separat. Dies würde zu einem erhöhten Bedarf an Prozessorleistung, einer erhöhten Anzahl von Verarbeitungsblöcken sowie einer erhöhten Speichergröße und Bandbreite führen. Manche Ausführungen der Erfindung ermöglichen andererseits die Verwendung eines einzigen CNN-Prozessors, auch als CVCE-Maschine bezeichnet, sowohl zur Computervision als auch zur Komprimierung, wobei die Notwendigkeit einer separaten Bildkomprimierungsmaschine beseitigt wird. Hardwarekosten und/oder erforderliche Rechenressourcen werden somit reduziert.

Claims (15)

  1. Computerimplementiertes Verfahren zur Bildkomprimierung, wobei ein komprimiertes Bild (13) erzeugt wird, indem ein Komprimierungsmodul (14a) eines künstlichen neuronalen Netzwerks (14), welches zur Bildkomprimierung trainiert ist, auf Eingangsdaten, welche ein Eingangsbild (12) enthalten oder von dem Eingangsbild (12) abhängen, angewendet wird, dadurch gekennzeichnet, dass - ein weiteres künstliches neuronales Netzwerk (15), welches zur Ausführung zumindest einer Computervisionsaufgabe trainiert ist und eine erste verborgene Schicht (19a, 19b, 19c) aufweist, auf das Eingangsbild (12) angewendet wird; und - die Eingangsdaten eine Ausgabe der ersten verborgenen Schicht (19a, 19b, 19c) enthalten oder von der Ausgabe der ersten verborgenen Schicht (19a, 19b, 19c) abhängen.
  2. Computerimplementiertes Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass - ein Satz von encodierten Merkmalen (18) erzeugt wird, indem ein Encodermodul (16) des weiteren künstlichen neuronalen Netzwerks (15) auf das Eingangsbild (12) angewendet wird; - ein Decodermodul (17), welches zur Ausführung der zumindest einen Computervisionsaufgabe trainiert ist, des weiteren künstlichen neuronalen Netzwerks (15) auf den Satz von encodierten Merkmalen (18) angewendet wird, wobei das Decodermodul (17) die erste verborgene Schicht (19a, 19b, 19c) aufweist.
  3. Computerimplementiertes Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass - ein erstes Decoderuntermodul (17a, 17b, 17c) des Decodermoduls (17), welches zur Ausführung einer ersten Computervisionsaufgabe der zumindest einen Computervisionsaufgabe trainiert ist, auf den Satz von encodierten Merkmalen (18) angewendet wird, wobei das erste Decoderuntermodul (17a, 17b, 17c) die erste verborgene Schicht (19a, 19b, 19c) aufweist; - ein zweites Decoderuntermodul (17a, 17b, 17c) des Decodermoduls (17), welches zur Ausführung einer zweiten Computervisionsaufgabe der zumindest einen Computervisionsaufgabe trainiert ist, auf den Satz von encodierten Merkmalen (18) angewendet wird, wobei das zweite Decoderuntermodul (17a, 17b, 17c) eine zweite verborgene Schicht (19a, 19b, 19c) des weiteren künstlichen neuronalen Netzwerks (15) aufweist; und - die Eingangsdaten eine Ausgabe der zweiten verborgenen Schicht (19a, 19b, 19c) enthalten oder von der Ausgabe der zweiten verborgenen Schicht (19a, 19b, 19c) abhängen.
  4. Computerimplementiertes Verfahren nach Anspruch 3, dadurch gekennzeichnet, dass - das erste Decoderuntermodul (17a, 17b, 17c) eine weitere erste verborgene Schicht (19a, 19b, 19c) des weiteren künstlichen neuronalen Netzwerks (15) aufweist und die Eingangsdaten eine Ausgabe der weiteren ersten verborgenen Schicht (19a, 19b, 19c) enthalten oder von der Ausgabe der weiteren ersten verborgenen Schicht (19a, 19b, 19c) abhängen; und/oder - das zweite Decoderuntermodul (17a, 17b, 17c) eine weitere zweite verborgene Schicht (19a, 19b, 19c) des weiteren künstlichen neuronalen Netzwerks (15) aufweist und die Eingangsdaten eine Ausgabe der weiteren zweiten verborgenen Schicht (19a, 19b, 19c) enthalten oder von der Ausgabe der weiteren zweiten verborgenen Schicht (19a, 19b, 19c) abhängen.
  5. Computerimplementiertes Verfahren nach einem der vorhergehenden Ansprüche, wobei - die Ausgabe der ersten verborgenen Schicht (19a, 19b, 19c) heruntergerechnet und normalisiert wird; und - die Eingangsdaten die heruntergerechnete und normalisierte Ausgabe der ersten verborgenen Schicht (19a, 19b, 19c) enthalten.
  6. Computerimplementiertes Trainingsverfahren zum Trainieren eines künstlichen neuronalen Netzwerks (14) zur Bildkomprimierung und eines weiteren künstlichen neuronalen Netzwerks (15) zur Ausführung zumindest einer Computervisionsaufgabe, welches eine erste verborgene Schicht (19a, 19b, 19c) enthält, dadurch gekennzeichnet, dass - ein komprimiertes Trainingsbild erzeugt wird, indem ein Komprimierungsmodul (14a) des künstlichen neuronalen Netzwerks (14) auf Trainingseingangsdaten angewendet wird, wobei die Trainingseingangsdaten ein Trainingsbild (12') enthalten oder von dem Trainingsbild (12') abhängen und die Trainingseingangsdaten eine Ausgabe der ersten verborgenen Schicht (19a, 19b, 19c) enthalten oder von der Ausgabe der ersten verborgenen Schicht abhängen (19a, 19b, 19c); - ein dekomprimiertes Trainingsbild erzeugt wird, indem ein Dekomprimierungsmodul (14b) des künstlichen neuronalen Netzwerks (14) auf das komprimierte Trainingsbild angewendet wird und zumindest eine Verlustfunktion (22a, 22b) abhängig von dem dekomprimierten Trainingsbild ausgewertet wird; - das weitere künstliche neuronale Netzwerk (15) auf das Trainingsbild (12') angewendet wird und zumindest eine weitere Verlustfunktion (26a, 26b, 26c) abhängig von einer Ausgabe des weiteren künstlichen neuronalen Netzwerks (15) ausgewertet wird; - Netzwerkparameter des künstlichen neuronalen Netzwerks (14) und weitere Netzwerkparameter des weiteren künstlichen neuronalen Netzwerks (15) abhängig von einem Ergebnis der Auswertung der zumindest einen Verlustfunktion (22a, 22b) und der zumindest einen weiteren Verlustfunktion (26a, 26b, 26c) angepasst werden.
  7. Computerimplementiertes Trainingsverfahren nach Anspruch 6, dadurch gekennzeichnet, dass eine gemeinsame Verlustfunktion, die eine Kombination der zumindest einen Verlustfunktion (22a, 22b) und der zumindest einen weiteren Verlustfunktion (26a, 26b, 26c) enthält, ausgewertet wird und die Netzwerkparameter und die weiteren Netzwerkparameter abhängig von einem Ergebnis der Auswertung der gemeinsamen Verlustfunktion angepasst werden.
  8. Computerimplementiertes Trainingsverfahren nach einem der Ansprüche 6 oder 7, dadurch gekennzeichnet, dass - die zumindest eine Verlustfunktion (22a, 22b) eine erste Verlustfunktion enthält, wobei die zumindest eine weitere Verlustfunktion (26a, 26b, 26c) ebenfalls die erste Verlustfunktion enthält; und/oder - die zumindest eine Verlustfunktion (22a, 22b) eine zweite Verlustfunktion enthält, welche von einem Gesamtrekonstruktionsfehler des dekomprimierten Trainingsbilds in Bezug auf das Trainingsbild (12') abhängt.
  9. Computerimplementiertes Verfahren nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, dass das künstliche neuronale Netzwerk (14) und das weitere künstliche neuronale Netzwerk (15) unter Verwendung eines computerimplementierten Trainingsverfahrens nach einem der Ansprüche 6 bis 8 trainiert werden.
  10. Verfahren zum zumindest teilweise automatischen Führen eines Fahrzeugs (1), wobei - ein Eingangsbild (12), das eine Umgebung des Fahrzeugs (1) darstellt, von einem Umgebungssensorsystem (4) des Fahrzeugs (1) erzeugt wird; - ein komprimiertes Bild (13) erzeugt wird, indem ein computerimplementiertes Verfahren nach einem der Ansprüche 1 bis 5 oder 9 ausgeführt wird; - das Fahrzeug (1) abhängig von einer Ausgabe (20a, 20b, 20c) des auf das Eingangsbild (12) angewendeten weiteren künstlichen neuronalen Netzwerks (15), zumindest teilweise automatisch geführt wird; und - das komprimierte Bild (13) gespeichert wird.
  11. Verfahren nach Anspruch 10, dadurch gekennzeichnet, dass - die zumindest eine Computervisionsaufgabe eine Objekterkennungsaufgabe enthält und die Ausgabe (20a, 20b, 20c) des auf das Eingangsbild (12) angewendeten weiteren künstlichen neuronalen Netzwerks (15) eine Objektklasse und/oder eine Begrenzungsbox für ein Objekt enthält, das von dem Eingangsbild (12) abgebildet wird; und/oder - die zumindest eine Computervisionsaufgabe eine semantische Segmentierungsaufgabe enthält und die Ausgabe (20a, 20b, 20c) des auf das Eingangsbild (12) angewendeten weiteren künstlichen neuronalen Netzwerks (15) eine Klasse auf Pixelebene für jedes einer Vielzahl von Pixeln des Eingangsbilds (12) enthält.
  12. Datenverarbeitungssystem aufweisend zumindest einen Verarbeitungsschaltkreis (5, 6, 7), der dazu angepasst ist, ein computerimplementiertes Verfahren nach einem der Ansprüche 1 bis 5 oder 9 auszuführen.
  13. Elektronisches Fahrzeugführungssystem (2) für ein Fahrzeug (1), wobei - das elektronische Fahrzeugführungssystem (2) zumindest ein Speichergerät (8, 9) aufweist, das ein Komprimierungsmodul (14a) eines künstlichen neuronalen Netzwerks (14) speichert, welches zur Bildkomprimierung trainiert ist; und - das elektronische Fahrzeugführungssystem (2) zumindest einen Verarbeitungsschaltkreis (5, 6, 7) aufweist, der dazu eingerichtet ist, ein komprimiertes Bild (13) zu erzeugen, indem das Komprimierungsmodul (14a) auf Eingangsdaten angewendet wird, die ein Eingangsbild (12) enthalten oder von dem Eingangsbild (12) abhängen, und das komprimierte Bild (13) auf dem zumindest einen Speichergerät (8, 9) zu speichern; - das zumindest eine Speichergerät (8, 9) ein weiteres künstliches neuronales Netzwerk (15) speichert, welches zur Ausführung zumindest einer Computervisionsaufgabe trainiert ist und eine erste verborgene Schicht (19a, 19b, 19c) enthält, - der zumindest eine Verarbeitungsschaltkreis (5, 6, 7) dazu eingerichtet ist, das weitere künstliche neuronale Netzwerk (15) auf das Eingangsbild (12) anzuwenden; - das elektronische Fahrzeugführungssystem (2) zumindest eine Steuereinheit aufweist, die dazu eingerichtet ist, das Fahrzeug (1) abhängig von einer Ausgabe (20a, 20b, 20c) des auf das Eingangsbild (12) angewendeten weiteren künstlichen neuronalen Netzwerks (15) zumindest teilweise automatisch zu führen; und - die Eingangsdaten eine Ausgabe der ersten verborgenen Schicht (19a, 19b, 19c) enthalten oder von der Ausgabe der ersten verborgenen Schicht (19a, 19b, 19c) abhängen.
  14. Elektronisches Fahrzeugführungssystem (2) nach Anspruch 13, dadurch gekennzeichnet, dass das elektronische Fahrzeugführungssystem (2) ein Umgebungssensorsystem (4) aufweist, welches dazu eingerichtet ist, Bilddaten zu erzeugen, die eine Umgebung des Fahrzeugs (1) darstellen, und der zumindest eine Verarbeitungsschaltkreis (5, 6, 7) dazu eingerichtet ist, das Eingangsbild (12) abhängig von den Bilddaten zu erzeugen.
  15. Computerprogrammprodukt, welches Befehle beinhaltet, die, - wenn sie von einem Datenverarbeitungssystem ausgeführt werden, das Datenverarbeitungssystem dazu veranlassen, ein computerimplementiertes Verfahren nach einem der Ansprüche 1 bis 5 oder 9 auszuführen; oder - wenn sie von einem elektronischen Fahrzeugführungssystem (2) nach einem der Ansprüche 13 oder 14 ausgeführt werden, das elektronische Fahrzeugführungssystem (2) dazu veranlassen, ein Verfahren nach einem der Ansprüche 10 oder 11 auszuführen.
DE102021133878.6A 2021-12-20 2021-12-20 Bildkomprimierung mittels künstlicher neuronaler Netzwerke Pending DE102021133878A1 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102021133878.6A DE102021133878A1 (de) 2021-12-20 2021-12-20 Bildkomprimierung mittels künstlicher neuronaler Netzwerke
PCT/EP2022/085363 WO2023117534A1 (en) 2021-12-20 2022-12-12 Image compression by means of artificial neural networks

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102021133878.6A DE102021133878A1 (de) 2021-12-20 2021-12-20 Bildkomprimierung mittels künstlicher neuronaler Netzwerke

Publications (1)

Publication Number Publication Date
DE102021133878A1 true DE102021133878A1 (de) 2023-06-22

Family

ID=84767022

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021133878.6A Pending DE102021133878A1 (de) 2021-12-20 2021-12-20 Bildkomprimierung mittels künstlicher neuronaler Netzwerke

Country Status (2)

Country Link
DE (1) DE102021133878A1 (de)
WO (1) WO2023117534A1 (de)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021220008A1 (en) * 2020-04-29 2021-11-04 Deep Render Ltd Image compression and decoding, video compression and decoding: methods and systems

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
BANK, Dor; KOENIGSTEIN, Noam; GIRYES, Raja: Autoencoders. arXiv preprint ar-Xiv:2003.05991v2, 2021
NEVEN, Davy [et al.]: Fast scene understanding for autonomous driving. arXiv pre-print arXiv:1708.02550, 2017
TEICHMANN, Marvin [et al.]: Multinet: Real-time joint semantic reasoning for auton-omous driving. In: 2018 IEEE intelligent vehicles symposium (IV). IEEE, 2018. S. 1013-1020

Also Published As

Publication number Publication date
WO2023117534A1 (en) 2023-06-29

Similar Documents

Publication Publication Date Title
DE102018130821A1 (de) Verfahren zum Beurteilen einer Umgebung eines Kraftfahrzeugs durch ein künstliches neuronales Netz mit einer Aggregationseinheit; Steuereinheit, Fahrerassistenzsystem sowie Computerprogrammprodukt
DE102020214863A1 (de) Selbstüberwachtes verfahren und system zur tiefenschätzung
DE102017203276B4 (de) Verfahren und Vorrichtung zur Ermittlung einer Trajektorie in Off-road-Szenarien
DE102017102952A1 (de) Eine Vorrichtung zum Erzeugen eines dreidimensionalen Farbbildes und ein Verfahren zum Produzieren eines dreidimensionalen Farbbildes
DE202017007512U1 (de) Bewegungsschätzung durch maschinelles Lernen
DE102018217091A1 (de) Verfahren, künstliches neuronales Netz, Vorrichtung, Computerprogramm und maschinenlesbares Speichermedium zur semantischen Segmentierung von Bilddaten
DE112020000448T5 (de) Kameraselbstkalibrierungsnetz
DE102019214402A1 (de) Verfahren und vorrichtung zum verarbeiten von daten mittels eines neuronalen konvolutionsnetzwerks
DE102019131971A1 (de) Ein Bildverarbeitungsmodul
DE102020133963A1 (de) Systeme und Verfahren zur Abbildrauschunterdrückung unter Verwendung von tiefen gefalteten Netzwerken
DE102020107868A1 (de) Objektdetektionssystem für die detektion eines objekts mit hilfe einer hierarchie-pyramide und objektdetektionsverfahren
DE102018119467B4 (de) Verfahren zum durchführen eines autonomen betriebs eines fahrzeugs durch tiefes räumlich-zeitliches lernen
DE102017128082A1 (de) Meta-Architektur-Design für ein CNN-Netzwerk
DE102020100210A1 (de) Neuronaler Netzwerkprozessor zum Komprimieren von Merkmalsabbildungsdaten und Computersystem dasselbe enthaltend
DE102021133878A1 (de) Bildkomprimierung mittels künstlicher neuronaler Netzwerke
DE102018132627A1 (de) Verfahren zum Erfassen einer Umgebung eines Kraftfahrzeugs mittels zeitlicher Fusion von Bildern durch ein künstliches neuronales Netz; Steuereinheit, Fahrerassistenzsystem; Computerprogrammprodukt
DE102018114229A1 (de) Verfahren zum Bestimmen eines Bewegungszustands eines Objekts in Abhängigkeit einer erzeugten Bewegungsmaske und eines erzeugten Begrenzungsrahmens, Fahrerassistenzsystem sowie Kraftfahrzeug
DE102021108308A1 (de) Computerimplementiertes Verfahren zum Verarbeiten eines Satzes von Scanpunkten, Computerprogramm, computerlesbares Speichermedium und Fahrerassistenzsystem für ein Kraftfahrzeug
DE102021111881A1 (de) Ratenadaptives kodierungs-dekodierungsschema für priorisierte segmentierte daten
DE102020116774A1 (de) Automatische visuelle Wahrnehmung mittels eines künstlichen neuronalen Netzes
DE102021131179A1 (de) Formpriorisierte Bildklassifizierung unter Verwendung tiefer Faltungsnetze
DE102021133203A1 (de) Segmentierungseinrichtung und Verfahren zum Erzeugen einer korrigierten Bildsegmentierung und Verfahren zum Herstellen einer Segmentierungseinrichtung
DE102021110056A1 (de) Automatische visuelle Wahrnehmung mit globaler Aufmerksamkeit
DE102022124384A1 (de) Automatische Umfeldwahrnehmung auf der Basis von multimodalen Sensordaten eines Fahrzeugs
WO2020094551A1 (de) Verfahren zum betreiben einer fischaugenkamera durch nutzung eines ersten kompressionsalgorithmus und eines zweiten kompressionsalgorithmus, elektronische recheneinrichtung, fischaugenkamera sowie fahrerassistenzsystem

Legal Events

Date Code Title Description
R163 Identified publications notified