DE102020119943A1 - Automatische visuelle Wahrnehmung - Google Patents

Automatische visuelle Wahrnehmung Download PDF

Info

Publication number
DE102020119943A1
DE102020119943A1 DE102020119943.0A DE102020119943A DE102020119943A1 DE 102020119943 A1 DE102020119943 A1 DE 102020119943A1 DE 102020119943 A DE102020119943 A DE 102020119943A DE 102020119943 A1 DE102020119943 A1 DE 102020119943A1
Authority
DE
Germany
Prior art keywords
features
output data
decoder
visual perception
module
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
DE102020119943.0A
Other languages
English (en)
Inventor
Ganesh Sistu
Thomas Boulay
Sankaralingam Madasamy
Saranya Kandan
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 DE102020119943.0A priority Critical patent/DE102020119943A1/de
Publication of DE102020119943A1 publication Critical patent/DE102020119943A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • 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
    • 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

Landscapes

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

Abstract

Ein Verfahren zur visuellen Wahrnehmung umfasst die Bereitstellung eines neuronalen Netzwerks (6) mit einem Encodermodul (7) und zwei Decodermodulen (8a, 8b). Schichten des Encodermoduls (7) werden auf Bilddaten (3) angewendet, um eine erste Teilmenge (F2a) und eine zweite Teilmenge (F2b) von Merkmalen zu erzeugen. Die Teilmengen (F2a, F2b) werden den jeweiligen Decodern (8a, 8b) zur Verfügung gestellt. Weitere Merkmale (F3) werden durch Anwendung weiterer Schichten des Encodermoduls (7) auf die Teilmengen (F2a, F2b) erzeugt. Erste und zweite Decoderausgangsdaten (F10a, F10b) werden in Abhängigkeit von Encoderausgangsdaten (F3) und in Abhängigkeit von der jeweiligen Teilmenge von Merkmalen (F2a, F2b) erzeugt. Eine erste und eine zweite visuelle Wahrnehmungsaufgabe werden in Abhängigkeit von den Decoderausgangsdaten (F10a, F10b) durchgeführt.

Description

  • Die vorliegende Erfindung ist auf ein computerimplementiertes Verfahren zur automatischen visuellen Wahrnehmung gerichtet, bei dem ein künstliches neuronales Netz mit einem Encodermodul, einem ersten Decodermodul und einem zweiten Decodermodul auf einer Speichereinheit bereitgestellt wird. Ein Rechensystem wird verwendet, um Bilddaten von einer Abbildungsvorrichtung zu empfangen und einen Satz von Merkmalen zu erzeugen, indem mindestens eine Schicht des Encodermoduls auf die Bilddaten angewendet wird. Die Erfindung ist ferner gerichtet auf ein computerimplementiertes Trainingsverfahren zum Trainieren eines künstlichen neuronalen Netzes zur automatischen visuellen Wahrnehmung, auf ein Verfahren zum zumindest teilweise automatischen Führen eines Fahrzeugs, auf eine Anordnung zur automatischen visuellen Wahrnehmung und auf ein Computerprogrammprodukt.
  • Lernalgorithmen für Mehrfachaufgaben, die auf künstlichen neuronalen Netzwerken basieren, beispielsweise auf faltenden neuronalen Netzwerken, sind leistungsfähige Werkzeuge für viele wahrnehmungsbezogene Aufgaben, zum Beispiel bei Anwendungen zum autonomen Fahren. Dabei zeichnen sich mehrere Aufgaben lernende Netzwerke durch eine besonders effiziente Hardware-Nutzung und eine hohe Leistung in kritischen Anwendungen aus. Die neuronalen Netzwerke können zum Beispiel bei verschiedenen automatischen visuellen Wahrnehmungsaufgaben wie Objekterkennung und semantische Segmentierung oder zur Fehlerkorrektur eingesetzt werden.
  • Bei vorhandenen Ansätzen kann es für jede visuelle Wahrnehmungsaufgabe ein unabhängiges Netzwerk oder einen unabhängigen Kanal geben. Dies erfordert jedoch einen hohen Rechenaufwand, insbesondere für die Entwicklung und das Training der jeweiligen neuronalen Netze.
  • Der Artikel von Sistu et al. „NeurAII: Towards a Unified Model for Visual Perception in Automated Driving“, arXiv:1902.03589v1 (Feb. 2019) schlägt eine neuronale Netzarchitektur mit einem gemeinsamen Encoder für verschiedene Decoder vor.
  • Es ist daher Gegenstand der vorliegenden Erfindung, ein verbessertes Konzept für die automatische visuelle Wahrnehmung bereitzustellen, das die Effektivität und/oder Effizienz des zugrundeliegenden Algorithmus und/oder eines entsprechenden Trainings erhöht.
  • Dieses Ziel wird durch den Gegenstand der unabhängigen Ansprüche erreicht. Weitere Ausführungsformen und bevorzugte Ausführungsformen sind Gegenstand der abhängigen Ansprüche.
  • Das verbesserte Konzept basiert auf der Idee, eine gemeinsame Encoder-Architektur für ein künstliches neuronales Netzwerk zu verwenden, bei dem ein Encodermodul von mindestens zwei Decodermodulen für unterschiedliche visuelle Wahrnehmungsaufgaben gemeinsam genutzt wird. Um sowohl aufgabeninvariante Merkmale als auch aufgabenspezifische Merkmale zu berücksichtigen, wird ein Verzweigungs- und Zusammenführungsansatz verwendet. Insbesondere werden entsprechende Teilmengen von Merkmalen des Encodermoduls jedem Decodermodul direkt zur Verfügung gestellt, während die Teilmengen auch zur Generierung eines weiteren Satzes von Merkmalen durch das Encodermodul verwendet werden.
  • Entsprechend dem verbesserten Konzept wird ein computerimplementiertes Verfahren zur automatischen visuellen Wahrnehmung bereitgestellt. Dabei wird ein künstliches neuronales Netzwerk, insbesondere ein faltendes künstliches neuronales Netzwerk, CNN, auf einer Speichereinheit, insbesondere eines Rechensystems, bereitgestellt. Das künstliche neuronale Netzwerk enthält ein Encodermodul, ein erstes Decodermodul und ein zweites Decodermodul. Ein Rechensystem wird verwendet, um Bilddaten von einer Abbildungsvorrichtung zu empfangen und einen Satz von Merkmalen zu erzeugen, indem mindestens eine Schicht des Encodermoduls auf die Bilddaten angewendet wird. Das Rechensystem wird verwendet, um eine erste Teilmenge des Satzes von Merkmalen dem ersten Decodermodul zur Verfügung zu stellen und um eine zweite Teilmenge des Satzes von Merkmalen dem zweiten Decodermodul zur Verfügung zu stellen. Das Rechensystem wird verwendet, um einen weiteren Satz von Merkmalen zu erzeugen, indem mindestens eine weitere Schicht des Encodermoduls auf den Satz von Merkmalen angewendet wird, insbesondere auf der ersten Teilmenge und auf der zweiten Teilmenge. Das Rechensystem wird verwendet, um Encoderausgangsdaten des Encodermoduls in Abhängigkeit von der weiteren Gruppe von Merkmalen zu erzeugen. Das Rechensystem wird verwendet, um erste Decoderausgangsdaten des ersten Decodermoduls in Abhängigkeit von den Encoderausgangsdaten und von der ersten Teilmenge zu erzeugen und um zweite Decoderausgangsdaten des zweiten Decodermoduls in Abhängigkeit von den Encoderausgangsdaten und von der zweiten Teilmenge zu erzeugen. Das Rechensystem wird verwendet, um eine erste visuelle Wahrnehmungsaufgabe in Abhängigkeit von den ersten Decoderausgangsdaten durchzuführen und um eine zweite visuelle Wahrnehmungsaufgabe, die sich von der ersten visuellen Wahrnehmungsaufgabe unterscheidet, in Abhängigkeit von den zweiten Decoderausgangsdaten durchzuführen.
  • Ein neuronales Netzwerk kann als ein Softwarecode oder eine Zusammenstellung mehrerer Softwarecodekomponenten verstanden werden, wobei der Softwarecode mehrere Module für verschiedene Funktionen umfassen kann, einschließlich des Encodermoduls und des ersten und zweiten Decodermoduls.
  • Die Durchführung einer visuellen Wahrnehmungsaufgabe kann beispielsweise als Extraktion von Informationen aus den Bilddaten unter Verwendung des neuronalen Netzwerks verstanden werden. Insbesondere kann die visuelle Wahrnehmungsaufgabe im Prinzip von einem Menschen durchgeführt werden, der in der Lage ist, ein den Bilddaten entsprechendes Bild visuell wahrzunehmen. Dem Verfahren zufolge werden die visuellen Wahrnehmungsaufgaben jedoch automatisch durch das Rechensystem, insbesondere unter Verwendung des künstlichen neuronalen Netzwerks, durchgeführt. Die Durchführung einer visuellen Wahrnehmungsaufgabe kann auch als Durchführung einer Computer-Sehaufgabe bezeichnet werden.
  • Das Rechensystem kann zum Beispiel die Bilddaten als Eingabe für das Encodermodul bereitstellen, um die mindestens eine Schicht des Encodermoduls auf die Bilddaten anzuwenden. Mit anderen Worten, die mindestens eine Schicht des Encodermoduls kann eine initiale Schicht oder Eingangsschicht des Encodermoduls beinhalten.
  • Ein Satz von Merkmalen kann hier im Folgenden einen oder mehrere Merkmalsvektoren, Merkmalsmatrizen oder Merkmalsmaps beinhalten. Insbesondere kann eine Faltungsschicht des neuronalen Netzwerks einen oder mehrere Faltungskerne verwenden, um einen oder mehrere Merkmalsvektoren, Merkmalsmatrizen oder Merkmalsmaps zu erzeugen, die einen entsprechenden Satz von Merkmalen bilden oder zu einem entsprechenden Satz von Merkmalen beitragen.
  • Falls mehr als eine Schicht auf Daten angewendet wird, kann dies so verstanden werden, dass die Schichten nacheinander angewendet werden.
  • Hier und im Folgenden kann ein Modul als Softwaremodul verstanden werden, insbesondere als Softwarecode, der funktionell zu einer Einheit verbunden ist. Ein Modul kann mehrere Verarbeitungsschritte und/oder Datenstrukturen umfassen.
  • Ein Verfahrensschritt des Bereitstellens eines Moduls kann so verstanden werden, dass ein entsprechender Softwarecode in computerlesbarer Form auf einem computerlesbaren Speichermedium bereitgestellt wird, der insbesondere von der Recheneinheit oder einer anderen Recheneinheit gelesen werden kann.
  • Das Rechensystem beinhaltet insbesondere eine oder mehrere Prozessoreinheiten, insbesondere Hardwareeinheiten, und kann wahlweise Datenstrukturen und/oder Softwareeinheiten umfassen. Das Rechensystem kann die jeweiligen Verfahrensschritte durch Ausführung der jeweiligen Codeabschnitte des neuronalen Netzes oder der jeweiligen Module durchführen.
  • Da das erste und das zweite Decodermodul die jeweiligen Decoderausgangsdaten in Abhängigkeit von den Encoderausgangsdaten erzeugen, kann das Encodermodul als ein gemeinsames Encodermodul für die beiden Decodermodule betrachtet werden.
  • Durch die gemeinsame Nutzung des Encodermoduls durch das erste und das zweite Decodermodul oder, mit anderen Worten, durch die Verwendung der Encoderausgangsdaten für verschiedene visuelle Wahrnehmungsaufgaben, wird der Rechenaufwand für die Durchführung der ersten und der zweiten visuellen Wahrnehmungsaufgabe und insbesondere der Rechenaufwand für das Training des neuronalen Netzes, zum Beispiel des Encodermoduls, reduziert, da das gemeinsame Lernen für die verschiedenen visuellen Wahrnehmungsaufgaben Synergien hinsichtlich der verschiedenen Aufgaben bieten kann. Insbesondere können Rechenschritte, die für die verschiedenen visuellen Wahrnehmungsaufgaben notwendig sind, zum Beispiel während des Trainings, gemeinsam durchgeführt werden. Dadurch wird die Recheneffizienz erhöht und die Rechenkomplexität sowie der Trainingsaufwand reduziert.
  • Durch die Bereitstellung der ersten und der zweiten Teilmenge direkt von dem Encoder, insbesondere als Ausgabe einer verborgenen Schicht des Encoders, an das erste beziehungsweise das zweite Decodermodul kann das neuronale Netzwerk beziehungsweise das Encodermodul als verzweigt betrachtet werden. Durch die Verzweigung werden aufgabenspezifische Merkmale, die für die eine Wahrnehmungsaufgabe besonders nützlich, für die andere Wahrnehmungsaufgabe jedoch weniger nützlich oder nicht nützlich sind, von dem Satz von Merkmalen getrennt und dem ersten Decodermodul und dem zweiten Decodermodul direkt zur Verfügung gestellt.
  • Andererseits kann durch Erzeugen des weiteren Satzes von Merkmalen und damit der Ausgangsdaten des Encoders abhängig von dem Satz von Merkmalen, insbesondere abhängig von der ersten und zweiten Teilmenge, das Encodermodul nach der Verzweigung als wieder zusammengeführt betrachtet werden. Durch das Zusammenführen wird ausgenutzt, dass mehrere Merkmale, insbesondere der weitere Satz von Merkmalen, aufgabeninvariant sein können oder, mit anderen Worten, für alle Aufgaben gleich sein können.
  • Durch die Kombination der gemeinsamen Encoder-Topologie mit der Verzweigung und dem Zusammenführen nach dem verbesserten Konzept wird eine besonders hohe Effizienz des Verfahrens und für das Training des neuronalen Netzes erreicht.
  • Darüber hinaus wurde festgestellt, dass es ohne die Verzweigung und Zusammenführung dazu kommen kann, dass im Verlauf des Trainings eine der visuellen Wahrnehmungsaufgaben nicht gut genug trainiert wird, insbesondere die jeweilige Verlustfunktion nicht optimiert wird. Durch die Verzweigung und Zusammenführung nach dem verbesserten Konzept können beide visuellen Wahrnehmungsaufgaben gut trainiert werden. Folglich wird auch die Effektivität des Trainings und damit der neuronalen Netzarchitektur verbessert.
  • Der Grund hierfür kann zum Beispiel darin liegen, dass die unterschiedlichen visuellen Wahrnehmungsaufgaben der jeweiligen Analyse der Bilddaten auf unterschiedlichen Auflösungsebenen entsprechen können. Während zum Beispiel die semantische Segmentierung eine pixelweise Analyse aller Pixel in den Bilddaten erfordert, kann ein Bounding-Box-Algorithmus oder ein Objekterkennungsalgorithmus auf einer Ebene eines Gitters arbeiten, die viel gröber ist als einzelne Pixel. Dennoch können einige Merkmale beiden Aufgaben gemeinsam sein. Das verbesserte Konzept trägt diesen Tatsachen Rechnung, um Effizienz und Effektivität gleichzeitig zu maximieren.
  • Um die ersten Decoderausgangsdaten zu erzeugen, werden die Encoderausgangsdaten zum Beispiel einer initialen Schicht des ersten Decodermoduls zur Verfügung gestellt, und die erste Teilmenge wird einer weiteren Schicht, die nicht die initiale Schicht ist, des ersten Decodermoduls zur Verfügung gestellt. Um die zweiten Decoderausgangsdaten zu erzeugen, werden die Encoderausgangsdaten zum Beispiel einer initialen Schicht des zweiten Decodermoduls zur Verfügung gestellt und die zweite Teilmenge wird einer weiteren Schicht, die nicht die initiale Schicht ist, des zweiten Decodermoduls zur Verfügung gestellt.
  • Mit anderen Worten, während die Encoderausgangsdaten der initialen Schicht des jeweiligen Decodermoduls zur Verfügung gestellt werden, wird die Teilmenge einer verborgenen Schicht des jeweiligen Decodermoduls zur Verfügung gestellt. Dies kann zum Beispiel durch entsprechende Skip-Verbindungen zwischen dem Encodermodul und dem jeweiligen Decodermodul realisiert werden.
  • Auf diese Weise werden die aufgabenspezifischen Merkmale dem ersten und dem zweiten Decodermodul auf besonders zielgerichtete Weise zur Verfügung gestellt. Dadurch werden die Komplexität des neuronalen Netzes und damit die benötigte Rechenzeit für die automatische visuelle Wahrnehmung sowie für das Training des künstlichen neuronalen Netzes reduziert.
  • Gemäß mehreren Ausführungsformen ist das künstliche neuronale Netz als faltendes neuronales Netz, CNN, ausgelegt.
  • Gemäß mehreren Ausführungsformen enthält die mindestens eine Schicht des Encodermoduls eine Gruppenfaltungsschicht. Das Rechensystem wird dazu verwendet, die Gruppenfaltungsschicht auf Daten anzuwenden, die von den Bilddaten abhängen, um den Satz von Merkmalen zu erzeugen.
  • Die von den Bilddaten abhängigen Daten können zum Beispiel mit den Bilddaten identisch sein oder durch Vorverarbeitung oder Verarbeitung der Bilddaten gewonnen werden. Mit anderen Worten ist die Gruppenfaltungsschicht nicht notwendigerweise die initiale Schicht des Encodermoduls und insbesondere ist die Gruppenfaltungsschicht eine finale Schicht der mindestens einen Schicht des Encodermoduls.
  • Durch die Gruppenfaltung wird eine höhere Flexibilität für die Größe der ersten und der zweiten Teilmenge, insbesondere durch die Verwendung unterschiedlicher Kerngrößen für die jeweiligen Faltungen, erreicht. Daher wird insbesondere durch die Berücksichtigung der Größe des Kerns als dynamischer Parameter während des Trainings eine verbesserte Effizienz und/oder Effektivität des Verfahrens und des Trainings erreicht.
  • Gemäß mehreren Ausführungsformen werden zur Anwendung der Gruppenfaltungsschicht auf die von den Bilddaten abhängigen Daten ein oder mehrere erste Faltungskerne auf die von den Bilddaten abhängigen Daten angewendet, um die erste Teilmenge zu erzeugen, und ein oder mehrere zweite Faltungskerne auf die von den Bilddaten abhängigen Daten angewendet, um die zweite Teilmenge zu erzeugen, insbesondere unter Verwendung des Rechensystems. Dabei können sich die ersten Faltungskerne im Allgemeinen von den zweiten Faltungskernen unterscheiden.
  • Gemäß mehreren Ausführungsformen unterscheidet sich eine entsprechende Größe des einen oder der mehreren ersten Faltungskerne von einer entsprechenden Größe des einen oder der mehreren zweiten Faltungskerne.
  • Zum Beispiel entspricht die Größe jedes der ersten Faltungskerne einer ersten Größe und die Größe jedes der zweiten Faltungskerne einer zweiten Größe, wobei sich die zweite Größe von der ersten Größe unterscheidet.
  • Auf diese Weise wird der Tatsache Rechnung getragen, dass unterschiedliche visuelle Wahrnehmungsaufgaben unterschiedliche optimale Gruppengrößen von aufgabenspezifischen Merkmalen aufweisen können. Die erste und die zweite Größe des ersten beziehungsweise des zweiten Faltungskerns können zum Beispiel während des Trainings für das künstliche neuronale Netzwerk bestimmt werden. Mit anderen Worten, die Größen der Faltungskerne sowie die Gruppengrößen der ersten und der zweiten Teilmenge werden während des Trainings dynamisch angepasst oder optimiert.
  • Nach mehreren Ausführungsformen sind die visuellen Wahrnehmungsaufgaben für den Einsatz in einer automobilen Anwendung vorgesehen, zum Beispiel für automatisiertes, halbautomatisches, autonomes oder halbautonomes Fahren.
  • Insbesondere kann die erste und/oder die zweite visuelle Wahrnehmungsaufgabe eine Analyse der Position, Orientierung, Größe, Art, Bewegung und so weiter eines oder mehrerer Objekte beinhalten.
  • Zum Beispiel kann die erste oder zweite visuelle Wahrnehmungsaufgabe eine Objektlokalisierung beinhalten, welche die Bestimmung von Raumkoordinaten und/oder einer räumlichen Orientierung des Objekts beinhalten kann.
  • Zum Beispiel kann die erste oder die zweite visuelle Wahrnehmungsaufgabe eine Objekterkennung beinhalten, die zum Beispiel eine Klassifizierung des Objekts, die Bereitstellung eines zweidimensionalen oder dreidimensionalen Begrenzungsrahmens für das Objekt und so weiter beinhalten kann.
  • Zum Beispiel kann die erste oder die zweite visuelle Wahrnehmungsaufgabe eine Bildsegmentierung beinhalten, die zum Beispiel die Erzeugung einer semantischen Kontur oder einer Polylinie für ein oder mehrere Objekte beinhalten kann.
  • Zum Beispiel kann die erste oder die zweite visuelle Wahrnehmungsaufgabe eine Bewegungserkennung beinhalten, die zum Beispiel die Erkennung eines sich bewegenden Objekts und/oder die Bestimmung von Bewegungsparametern seiner Bewegung beinhalten kann.
  • Die erste oder zweite visuelle Wahrnehmungsaufgabe kann zum Beispiel eine Tiefenerkennung beinhalten, die zum Beispiel die Erkennung statischer Objekte und/oder deren Position in drei Dimensionen beinhalten kann.
  • Gemäß mehreren Ausführungsformen umfasst die erste visuelle Wahrnehmungsaufgabe eine Objekterkennungsaufgabe und/oder die zweite visuelle Wahrnehmungsaufgabe eine semantische Segmentierungsaufgabe.
  • Die Objekterkennungsaufgabe kann zum Beispiel die Erzeugung eines oder mehrerer Begrenzungsrahmen für eines oder mehrere entsprechende Objekte in einem den Bilddaten entsprechenden Bild umfassen. Die Objekterkennungsaufgabe kann auch die Klassifizierung der jeweiligen Objekte umfassen, für die die Begrenzungsrahmen erzeugt werden.
  • Die semantische Segmentierungsaufgabe kann es beispielsweise beinhalten, jedem Pixel für das den Bilddaten entsprechende Bild eine Klasse zuzuweisen.
  • Mit anderen Worten, die Ebene der perzeptiven Analyse der Wahrnehmungsaufgaben kann deutlich verschieden sein. Das verbesserte Konzept ist in solchen Fällen besonders effizient, in denen eine signifikante Anzahl von Encoder-Merkmalen aufgabenspezifisch sein kann.
  • Gemäß dem verbesserten Konzept wird auch ein computerimplementiertes Trainingsverfahren zum Trainieren eines künstlichen neuronalen Netzes zur automatischen visuellen Wahrnehmung bereitgestellt. Das Netzwerk enthält ein Encodermodul, ein erstes Decodermodul und ein zweites Decodermodul. Ein Trainingsrechensystem wird verwendet, um Trainingsbilddaten zu erhalten und einen Satz von Merkmalen zu erzeugen, indem mindestens eine Schicht des Encodermoduls auf die Trainingsbilddaten angewendet wird. Das Trainingsrechensystem wird verwendet, um die folgenden Schritte a) bis h) während einer ersten Trainingsepoche durchzuführen.
    1. a) Bereitstellen einer ersten Teilmenge des Satzes von Merkmalen für das erste Decodermodul.
    2. b) Bereitstellen einer zweiten Teilmenge des Satzes von Merkmalen für das zweite Decodermodul.
    3. c) Erzeugen eines weiteren Satzes von Merkmalen durch Anwendung mindestens einer weiteren Schicht des Encodermoduls auf den Satz von Merkmalen.
    4. d) Erzeugen von Encoderausgangsdaten des Encodermoduls in Abhängigkeit von dem weiteren Satz von Merkmalen.
    5. e) Erzeugen erster Decoderausgangsdaten des ersten Decodermoduls in Abhängigkeit von den Encoderausgangsdaten und der ersten Teilmenge.
    6. f) Erzeugen zweiter Decoderausgangsdaten des zweiten Decodermoduls in Abhängigkeit von den Encoderausgangsdaten und der zweiten Teilmenge.
    7. g) Berechnen entsprechender Werte mindestens einer vordefinierten Verlustfunktion in Abhängigkeit von den ersten Decoderausgangsdaten und den zweiten Decoderausgangsdaten.
    8. h) Modifizieren des neuronalen Netzwerks in Abhängigkeit von den jeweiligen Werten der mindestens einen Verlustfunktion.
  • Insbesondere kann die mindestens eine Verlustfunktion eine erste Verlustfunktion für das erste Decodermodul und eine zweite Verlustfunktion für das zweite Decodermodul enthalten. Mit anderen Worten beinhaltet die Berechnung der jeweiligen Werte für die mindestens eine vordefinierte Verlustfunktion die Berechnung eines Wertes der ersten vordefinierten Verlustfunktion des ersten Decodermoduls und eines Wertes der zweiten vordefinierten Verlustfunktion des zweiten Decodermoduls. Die Modifikation des neuronalen Netzwerks kann zum Beispiel mittels Rückpropagation erfolgen.
  • Gemäß mehreren Ausführungsformen des computerimplementierten Trainingsverfahrens nach dem verbesserten Konzept beinhaltet die mindestens eine Schicht des Encodermoduls eine Gruppenfaltungsschicht. Das Trainingsrechensystem wird dazu verwendet, die Gruppenfaltungsschicht auf Daten anzuwenden, die von den Trainingsbilddaten abhängen, um den Satz von Merkmalen zu erzeugen. Um die Gruppenfaltungsschicht auf die von den Bilddaten abhängigen Daten anzuwenden, werden ein oder mehrere erste Faltungskerne auf die von den Trainingsbilddaten abhängigen Daten angewendet, um die erste Teilmenge zu erzeugen, und ein oder mehrere zweite Faltungskerne werden auf die von den Trainingsbilddaten abhängigen Daten angewendet, um die zweite Teilmenge zu erzeugen.
  • Gemäß mehreren Ausführungsformen des computerimplementierten Trainingsverfahrens werden der eine oder die mehreren ersten Faltungskerne in Abhängigkeit von den jeweiligen Werten der mindestens einen Verlustfunktion modifiziert und/oder der eine oder die mehreren zweiten Faltungskerne werden in Abhängigkeit von den jeweiligen Werten der mindestens einen Verlustfunktion modifiziert.
  • Dabei beinhaltet das Modifizieren des einen oder der mehreren ersten Faltungskerne oder des einen oder der mehreren zweiten Faltungskerne das Modifizieren mindestens eines der ersten Faltungskerne beziehungsweise das Modifizieren mindestens eines der zweiten Faltungskerne. Das Modifizieren eines Faltungskerns kann zum Beispiel das Modifizieren der Größe des Faltungskerns beinhalten.
  • Auf diese Weise kann während des Trainings eine optimale Größe für die ersten und zweiten Faltungskerne gefunden werden. Folglich werden die Gruppengrößen für die Gruppenfaltungsschicht und damit auch die Größen der ersten und der zweiten Teilmenge für die jeweiligen visuellen Wahrnehmungsaufgaben optimiert.
  • Gemäß mehreren Ausführungsformen des computerimplementierten Trainingsverfahrens werden der Wert der ersten Verlustfunktion auf der Grundlage der ersten visuellen Wahrnehmungsaufgabe, insbesondere in Abhängigkeit von einem Ergebnis der ersten visuellen Wahrnehmungsaufgabe, und der Wert der zweiten Verlustfunktion auf der Grundlage der zweiten visuellen Wahrnehmungsaufgabe, insbesondere in Abhängigkeit von einem Ergebnis der zweiten visuellen Wahrnehmungsaufgabe, bestimmt.
  • Gemäß mehreren Ausführungsformen des computerimplementierten Trainingsverfahrens werden die Schritte a) bis g) nach Durchführung des Schrittes h) und nach Modifikation des einen oder mehrerer erster Faltungskerne und/oder des einen oder mehrerer zweiter Faltungskerne wiederholt.
  • Insbesondere werden bei der Wiederholung von Schritt c) die modifizierten ersten und/oder zweiten Faltungskerne anstelle der vorherigen ersten und/oder zweiten Faltungskerne verwendet.
  • Gemäß mehreren Ausführungsformen des computerimplementierten Verfahrens zur automatischen visuellen Wahrnehmung wird oder wurde das künstliche neuronale Netz nach einem computerimplementierten Trainingsverfahren gemäß dem verbesserten Konzept trainiert.
  • Gemäß dem verbesserten Konzept wird auch ein Computersystem zur automatischen visuellen Wahrnehmung bereitgestellt. Das Computersystem enthält eine Speichereinheit zur Speicherung eines künstlichen neuronalen Netzes, das ein Encodermodul, ein erstes Decodermodul und ein zweites Decodermodul enthält. Das Computersystem umfasst ein Rechensystem, das dazu eingerichtet ist, Bilddaten von einer Abbildungsvorrichtung zu empfangen und einen Satz von Merkmalen zu erzeugen, indem mindestens eine Schicht des Encodermoduls auf die Bilddaten angewendet wird. Das Rechensystem ist ferner dazu eingerichtet, eine erste Teilmenge des Satzes von Merkmalen an das erste Decodermodul zu liefern, eine zweite Teilmenge des Satzes von Merkmalen an das zweite Decodermodul zu liefern, einen weiteren Satz von Merkmalen zu erzeugen, indem mindestens eine weitere Schicht des Encodermoduls auf den Satz von Merkmalen angewendet wird, um Encoderausgangsdaten des Encodermoduls in Abhängigkeit von dem weiteren Satz von Merkmalen zu erzeugen, erste Decoderausgangsdaten des ersten Decodermoduls in Abhängigkeit von den Encoderausgangsdaten und der ersten Teilmenge zu erzeugen, zweite Decoderausgangsdaten des zweiten Decodermoduls in Abhängigkeit von den Encoderausgangsdaten und der zweiten Teilmenge zu erzeugen, eine erste visuelle Wahrnehmungsaufgabe in Abhängigkeit von den ersten Decoderausgangsdaten durchzuführen und eine zweite visuelle Wahrnehmungsaufgabe in Abhängigkeit von den zweiten Decoderausgangsdaten durchzuführen.
  • Gemäß dem verbesserten Konzept wird auch eine Anordnung zur automatischen visuellen Wahrnehmung bereitgestellt. Die Anordnung umfasst eine Abbildungsvorrichtung, die dazu eingerichtet ist, Bilddaten zu erzeugen, die eine Umgebung der Anordnung darstellen. Die Anordnung enthält eine Speichereinheit, die ein künstliches neuronales Netzwerk speichert, das ein Encodermodul, ein erstes Decodermodul und ein zweites Decodermodul aufweist. Die Anordnung umfasst ein Rechensystem, das zum Beispiel die Speichereinheit umfasst, wobei das Rechensystem dazu eingerichtet ist, die Bilddaten von der Abbildungsvorrichtung zu empfangen und einen Satz von Merkmalen zu erzeugen, indem mindestens eine Schicht des Encodermoduls auf die Bilddaten angewendet wird. Das Rechensystem ist dazu eingerichtet, eine erste Teilmenge von Merkmalen dem ersten Decodermodul und eine zweite Teilmenge von Merkmalen dem zweiten Decodermodul bereitzustellen. Das Rechensystem ist dazu eingerichtet, einen weiteren Satz von Merkmalen zu erzeugen, indem mindestens eine weitere Schicht des Encodermoduls auf den Satz von Merkmalen angewendet wird, und Encoderausgangsdaten des Encodermoduls in Abhängigkeit von dem weiteren Satz von Merkmalen zu erzeugen. Das Rechensystem ist dazu eingerichtet, erste Decoderausgangsdaten des ersten Decodermoduls in Abhängigkeit von den Encoderausgangsdaten und der ersten Teilmenge zu erzeugen und zweite Decoderausgangsdaten des zweiten Decodermoduls in Abhängigkeit von den Encoderausgangsdaten und der zweiten Teilmenge zu erzeugen. Das Rechensystem ist dazu eingerichtet, eine erste visuelle Wahrnehmungsaufgabe in Abhängigkeit von den ersten Decoderausgangsdaten auszuführen und eine zweite visuelle Wahrnehmungsaufgabe in Abhängigkeit von den zweiten Decoderausgangsdaten auszuführen.
  • Gemäß mehreren Ausführungsformen der Anordnung zur automatischen visuellen Wahrnehmung ist die Anordnung als ein elektronisches Fahrzeugführungssystem ausgelegt, und die Anordnung, insbesondere das Rechensystem, enthält eine Steuereinheit, die dazu eingerichtet ist, eines oder mehrere Steuersignale zur zumindest teilweise automatischen Führung eines Fahrzeugs in Abhängigkeit von einem Ergebnis der ersten visuellen Wahrnehmungsaufgabe und/oder in Abhängigkeit von einem Ergebnis der zweiten visuellen Wahrnehmungsaufgabe zu erzeugen.
  • Ein elektronisches Fahrzeugführungssystem kann als ein elektronisches System verstanden werden, das dazu eingerichtet ist, ein Fahrzeug vollautomatisch oder völlig autonom zu führen, insbesondere ohne dass ein manueller Eingriff oder eine manuelle Steuerung durch einen Fahrer oder Benutzer des Fahrzeugs erforderlich ist. Das Fahrzeug führt die erforderlichen Lenkmanöver, Verzögerungsmanöver und/oder Beschleunigungsmanöver und so weiter automatisch durch. Insbesondere kann das elektronische Fahrzeugleitsystem einen vollautomatischen oder vollständig autonomen Fahrmodus gemäß Stufe 5 der SAE J3016-Klassifizierung implementieren. Ein elektronisches Fahrzeugleitsystem kann auch als fortgeschrittenes Fahrerassistenzsystem (Advanced Driver Assistance System, ADAS) implementiert sein, das den Fahrer beim teilautomatischen oder teilautonomen Fahren unterstützt.
  • Insbesondere kann das elektronische Fahrzeugleitsystem einen teilautomatischen oder teilautonomen Fahrmodus gemäß den Stufen 1 bis 4 der SAE J3016-Klassifizierung implementieren. Hier und im Folgenden bezieht sich SAE J3016 auf die entsprechende Norm vom Juni 2018.
  • Das zumindest teilweise automatische Führen des Fahrzeugs kann daher das Führen des Fahrzeugs in einem vollautomatischen oder vollständig autonomen Fahrmodus gemäß Stufe 5 der SAE J3016-Klassifizierung beinhalten. Das zumindest teilweise automatische Führen des Fahrzeugs kann auch das Führen des Fahrzeugs in einem teilautomatischen oder teilautonomen Fahrmodus gemäß den Stufen 1 bis 4 der SAE J3016-Klassifizierung umfassen.
  • Weitere Ausführungsformen der Anordnung zur automatischen visuellen Wahrnehmung nach dem verbesserten Konzept folgen direkt aus den verschiedenen Ausführungsformen des computerimplementierten Verfahrens zur automatischen visuellen Wahrnehmung und des computerimplementierten Trainingsverfahrens nach dem verbesserten Konzept beziehungsweise umgekehrt. Insbesondere kann eine Anordnung nach dem verbesserten Konzept dazu eingerichtet oder programmiert sein, ein Verfahren nach dem verbesserten Konzept auszuführen oder sie führt ein Verfahren nach dem verbesserten Konzept aus.
  • Gemäß dem verbesserten Konzept wird auch ein Kraftfahrzeug mit einer Anordnung gemäß dem verbesserten Konzept, insbesondere einem elektronischen Fahrzeugführungssystem gemäß dem verbesserten Konzept, bereitgestellt.
  • Nach dem verbesserten Konzept wird auch ein erstes Computerprogramm mit ersten Befehlen bereitgestellt. Wenn die ersten Befehle von einem Computersystem, insbesondere von einem Computersystem nach dem verbesserten Konzept oder einer Anordnung nach dem verbesserten Konzept ausgeführt werden, bewirken die ersten Befehle, dass das Computersystem ein Verfahren nach dem verbesserten Konzept zur automatischen visuellen Wahrnehmung ausführt.
  • Gemäß dem verbesserten Konzept wird auch ein zweites Computerprogramm mit zweiten Befehlen bereitgestellt. Wenn die zweiten Instruktionen von einem Trainingsrechensystem ausgeführt werden, bewirken die zweiten Instruktionen, dass das Trainingsrechensystem ein computerimplementiertes Verfahren gemäß dem verbesserten Konzept ausführt.
  • Gemäß dem verbesserten Konzept wird auch ein drittes Computerprogramm mit dritten Anweisungen bereitgestellt. Wenn die dritten Instruktionen durch eine Anordnung nach dem verbesserten Konzept, insbesondere durch ein elektronisches Fahrzeugführungssystem nach dem verbesserten Konzept ausgeführt werden, bewirken die dritten Instruktionen, dass die Anordnung ein Verfahren zur zumindest teilweisen automatischen Führung eines Fahrzeugs nach dem verbesserten Konzept durchführt.
  • Gemäß dem verbesserten Konzept wird auch ein computerlesbares Speichermedium bereitgestellt, das ein erstes Computerprogramm, ein zweites Computerprogramm und/oder ein drittes Computerprogramm gemäß dem verbesserten Konzept speichert.
  • Die Computerprogramme nach dem verbesserten Konzept und das computerlesbare Speichermedium nach dem verbesserten Konzept können als jeweilige Computerprogrammprodukte angesehen werden, die die jeweiligen Befehle enthalten.
  • Weitere Merkmale der Erfindung ergeben sich aus den Ansprüchen, den Abbildungen und der Beschreibung der Abbildungen. Die oben in der Beschreibung genannten Merkmale und Merkmalskombinationen sowie die unten in der Beschreibung der Abbildungen und/oder in den Abbildungen allein erwähnten und/oder gezeigten Merkmale und Merkmalskombinationen können von dem verbesserten Konzept nicht nur in der jeweils angegebenen Kombination, sondern auch in anderen Kombinationen erfasst werden. Damit sind Ausführungsformen des verbesserten Konzepts umfasst und offenbart, die möglicherweise nicht explizit in den Abbildungen gezeigt oder erläutert werden, sondern sich aus getrennten Merkmalskombinationen aus den erläuterten Ausführungsformen ergeben und durch diese erzeugt werden können. Ausführungsformen und Merkmalskombinationen, die nicht alle Merkmale eines ursprünglich formulierten Anspruchs aufweisen, können von dem verbesserten Konzept umfasst sein. Darüber hinaus können Ausführungsformen und Merkmalskombinationen, die über die in den Beziehungen der Ansprüche dargelegten Merkmalskombinationen hinausgehen oder von diesen abweichen, von dem verbesserten Konzept umfasst sein.
  • In den Figuren zeigen,
    • 1 eine schematische Blockdarstellung einer beispielhaften Ausführungsform einer Anordnung nach dem verbesserten Konzept;
    • 2 eine schematische Blockdarstellung eines künstlichen neuronalen Netzes zur Verwendung in einer weiteren beispielhaften Ausführungsform einer Anordnung nach dem verbesserten Konzept; und
    • 3 schematisch ein Fahrzeug mit einem elektronischen Fahrzeugleitsystem nach dem verbesserten Konzept.
  • 1 zeigt eine schematische Blockdarstellung einer beispielhaften Ausführungsform einer Anordnung 1 zur automatischen visuellen Wahrnehmung nach dem verbesserten Konzept. Die Anordnung 1 enthält eine Abbildungsvorrichtung 2, zum Beispiel eine Kamera, die dazu eingerichtet ist, Bilddaten 3 zu erzeugen, die eine Umgebung der Anordnung 1 darstellen.
  • Die Anordnung 1 enthält ferner eine Speichereinheit 5, die ein künstliches neuronales Netzwerk 6 speichert, und ein Rechensystem 4, das mit der Abbildungsvorrichtung 2 zum Empfang der Bilddaten 3 und mit der Speichereinheit 5 gekoppelt ist, insbesondere um das neuronale Netzwerk 6 auf die Bilddaten 3 anzuwenden.
  • Das neuronale Netzwerk 6 ist insbesondere als CNN mit einer gemeinsamen Encoderarchitektur ausgelegt. Mit anderen Worten enthält das neuronale Netzwerk 6 ein erstes Decodermodul 8a für eine erste visuelle Wahrnehmungsaufgabe, zum Beispiel Objekterkennung, und ein zweites Decodermodul 8b für eine zweite visuelle Wahrnehmungsaufgabe, zum Beispiel semantische Segmentierung. Das neuronale Netz 6 enthält ferner ein gemeinsames Encodermodul 7, das mit den beiden Decodermodulen 8a, 8b gekoppelt ist. Es wird betont, dass das Neuronale Netz 6 weitere Decodermodule für weitere visuelle Wahrnehmungsaufgaben oder andere Computer-Vision-Aufgaben umfassen kann und/oder weitere Encodermodule umfassen kann, die als gemeinsame Encodermodule oder als aufgabenspezifische Encodermodule ausgestaltet sein können.
  • Darüber hinaus ist die in 1 gezeigte Anzahl der Schichten und die genaue Topologie der Module 7, 8a, 8b nur der Erklärung halber gewählt. Eine tatsächliche Architektur des neuronalen Netzwerks 6 kann im Detail abweichen.
  • Das Rechensystem 4 kann mindestens eine Schicht einschließlich einer Anfangsschicht des Encodermoduls 7 auf die Bilddaten 3 anwenden, um einen Satz von Merkmalen F1 zu erzeugen. Dann kann das Rechensystem 4 eine Gruppenfaltungsschicht auf den Satz von Merkmalen F1 anwenden, um zwei weitere Sätze von Merkmalen F2a, F2b zu erzeugen. Dabei kann das Rechensystem 4 auf den Satz von Merkmalen F1 in der Gruppenfaltungsschicht verschiedene Sätze von Kernen anwenden.
  • Das Rechensystem 4 kann eine oder mehrere weitere Schichten auf die Sätze von Merkmalen F2a, F2b anwenden, um einen weiteren Satz von Merkmalen F3 zu erzeugen. Das Rechensystem 4 kann Encoderausgangsdaten F6 basierend auf dem Satz von Merkmalen F3 erzeugen. Zu diesem Zweck kann das Rechensystem 4 eine oder mehrere weitere Schichten, die eine oder mehrere weitere Gruppenfaltungsschichten enthalten können oder nicht, auf den Satz von Merkmalen F3 anwenden.
  • Im Beispiel von 1 gibt es eine weitere Gruppenfaltungsschicht, die Teilmengen von Merkmalen F4a, F4b erzeugt, indem sie die weitere Gruppenfaltungsschicht auf den Satz von Merkmalen F3 anwendet. Eine weitere Schicht des Encodermoduls 7 wird auf die Sätze von Merkmalen F4a, F4b angewendet, um einen weiteren Satz von Merkmalen F5 zu erzeugen, und in einem nachfolgenden Schritt die Encoderausgangsdaten F6.
  • Im Beispiel von 1 umfassen die beiden Decodermodule 8a, 8b jeweils vier Schichten. Das Rechensystem 4 liefert die Encoderausgangsdaten F6 an die jeweiligen initialen Schichten des ersten und des zweiten Decodermoduls 8a, 8b. Das Rechensystem 4 kann eine erste Schicht des ersten Decodermoduls 8a und eine erste Schicht des zweiten Decodermoduls 8b jeweils auf die Encoderausgangsdaten F6 anwenden, um entsprechende Sätze von Merkmalen F7a, F7b zu erzeugen.
  • Dann kann das Rechensystem 4 eine zweite Schicht des ersten Decodermoduls 8a auf den Satz von Merkmalen F7a und auf den Satz von Merkmalen F2a anwenden, der direkt von dem Encodermodul 7 über eine entsprechende Skip-Verbindung empfangen wird. Das Ergebnis der zweiten Schicht des ersten Decodermoduls 8a ist ein Satz von Merkmalen F8a.
  • Das Rechensystem 4 kann eine dritte Schicht des ersten Decodermoduls 8a auf den Satz von Merkmalen F8a und auf den Satz von Merkmalen F4a anwenden, der direkt von dem Encodermodul 7 über eine weitere entsprechende Skip-Verbindung empfangen wird, um einen Satz von Merkmalen F9a zu erzeugen. Das Rechensystem 4 kann eine vierte Schicht des ersten Decodermoduls 8a auf den Satz von Merkmalen F9a anwenden, um die ersten Decoderausgangsdaten F10a zu erzeugen.
  • Das Rechensystem 4 kann eine zweite Schicht des zweiten Decodermoduls 8b auf den Satz von Merkmalen F7b und auf den Satz von Merkmalen F2b anwenden, der direkt von dem Encodermodul 7 über eine entsprechende Skip-Verbindung empfangen wird. Das Ergebnis der zweiten Schicht des zweiten Decodermoduls 8b ist ein Satz von Merkmalen F8b.
  • Das Rechensystem 4 kann eine dritte Schicht des zweiten Decodermoduls 8b auf den Satz von Merkmalen F8b und auf den Satz von Merkmalen F4b anwenden, der direkt von dem Encodermodul 7 über eine weitere entsprechende Skip-Verbindung empfangen wird, um einen Satz von Merkmalen F9b zu erzeugen. Das Rechensystem 4 kann eine vierte Schicht des zweiten Decodermoduls 8b auf den Satz von Merkmalen F9b anwenden, um die Ausgangsdaten des zweiten Decoders F10b zu erzeugen.
  • Das Rechensystem 4 kann eine erste visuelle Wahrnehmungsaufgabe, zum Beispiel eine Objekterkennungsaufgabe, in Abhängigkeit von den ersten Decoderausgangsdaten F10a ausführen und/oder eine zweite visuelle Wahrnehmungsaufgabe, zum Beispiel eine semantische Segmentierungsaufgabe, in Abhängigkeit von den zweiten Decoderausgangsdaten F10b ausführen.
  • Die beschriebene Architektur hat den Vorteil, dass beide visuellen Wahrnehmungsaufgaben gleichermaßen gut gelernt werden. Daher können sowohl die Objekterkennung als auch die semantische Segmentierung in der operativen Phase besonders effizient durchgeführt werden.
  • Zu diesem Zweck verwendet das neuronale Netzwerk 6 eine Architektur, die im Encodermodul 7 eine Verzweigung und Zusammenführung implementiert. Es wird jedoch darauf hingewiesen, dass das verbesserte Konzept keineswegs auf die Objekterkennung und semantische Segmentierung beschränkt ist, sondern auch auf andere visuelle Wahrnehmungsaufgaben wie Tiefenschätzung, Erkennung bewegter Objekte und so weiter angewendet werden kann.
  • Es wurde festgestellt, dass gemeinsame Encoder zwar generische Merkmale extrahieren, aber nicht alle Merkmale aufgabeninvariant sind und nicht alle aufgabeninvarianten Merkmale beim Lernen verschiedener Aufgaben hilfreich sind. Andererseits ist die Gradientenausbreitung in Netzwerken mit individuellen Aufgaben-Encodern wesentlich klarer. Daher bringt das verbesserte Konzept das Beste aus beiden Ansätzen zusammen, indem es eine Kombination aus gemeinsamen und nicht-gemeinsamen Faltungsschichten verwendet. Mit anderen Worten werden nicht gemeinsame oder aufgabenspezifische Gruppenfaltungsschichten zwischen gemeinsamen Schichten eingefügt, um die Vorteile beider Ansätze zu erreichen.
  • Bei den Gruppenfaltungsschichten handelt es sich beispielsweise um dreidimensionale Faltungsschichten, bei denen die Ausgabe-Featuremaps nur mit einer Untergruppe der Eingabe-Featuremaps und nicht mit allen Featuremaps berechnet werden. Folglich wird bei zwei Filtergruppen die Anzahl der Parameter im Vergleich zu einer normalen Faltungsschicht um den Faktor zwei reduziert, wodurch die Berechnungskomplexität und der Rechenaufwand verringert werden.
  • Die Verwendung von Merkmalen aus verschiedenen Gruppen für verschiedene Aufgaben bietet die Flexibilität, die Kernelgrößen, die Aktivierungsfunktion und andere Designmerkmale oder Hyperparameter innerhalb der Gruppen entsprechend der jeweiligen Aufgabe zu variieren. Beispielsweise können Trainingsmuster bestimmte Objekte unterschiedlicher Größe haben, die gelernt und erkannt werden sollen, wie z. B. Bordsteine, Botts' Punkte und Fußgänger in großer Entfernung von der Abbildungsvorrichtung. Unterschiedliche Kernelgrößen helfen nicht nur bei der Erkennung von Objekten mittlerer Größe, sondern verbessern auch die Erkennung von Objekten kleinerer Größe, da das Aufnahmefeld der Schichten variiert wird.
  • Im Beispiel von 1 sind die Sätze von Merkmalen F2a, F2b, F4a und F4b wesentlich besser an ihre spezielle visuelle Wahrnehmungsaufgabe angepasst als die gemeinsamen Merkmale F1, F3 und F4. Bei einer Objekterkennungsaufgabe werden die Gradienteninformationen beispielsweise auf den Konturen von Fußgängern oder Autos lokalisiert, während bei semantischen Segmentierungsaufgaben die Gradienteninformationen auf der Straße, auf Fahrspuren oder in Kurven lokalisiert werden müssen.
  • Der beschriebene Ansatz bietet eine Lösung zur Reduzierung der Rechenkosten, der Speicherbandbreite und des Speicherplatzbedarfs. Die Verwendung der Gruppenfaltungsschichten zur Erzeugung von zwei Zweigen ist im beschriebenen Beispiel zweifach kostengünstiger als eine normale dreidimensionale Faltungsschicht. Darüber hinaus wird die Speicherbandbreite reduziert, da nach dem verbesserten Konzept nur die aufgabenspezifischen Merkmale direkt mit den Decodern geteilt werden können. Schließlich wird auch der Speicherplatzbedarf, d.h. die Anzahl der trainierbaren Parameter, ebenfalls reduziert, da die Anzahl der Parameter für eine dreidimensionale Gruppenfaltungsschicht zweifach geringer ist als für eine normale dreidimensionale Faltungsschicht.
  • 2 zeigt eine schematische Blockdarstellung eines weiteren neuronalen Netzwerks 6 zur Verwendung in einer Anordnung 1 nach dem verbesserten Konzept, wobei das neuronale Netzwerk 6 aus 2 zum Beispiel auf dem neuronalen Netzwerk 6 aus 1 basieren kann. Darüber hinaus kann das neuronale Netz 6 aus 2 ein weiteres aufgabenspezifisches Modul 8c enthalten. Folglich erzeugen die Gruppenfaltungsschichten in dem Encodermodul 7 eine zusätzliche Teilmenge von Merkmalen F2c beziehungsweise F4c für den dritten Block 8c. 2 zeigt auch beispielhaft Ausgaben der visuellen Wahrnehmungsaufgaben 3', 3".
  • Während des Trainings des neuronalen Netzwerks 6 können die verschiedenen Gruppen der Gruppenfaltungsschichten und die jeweiligen Kerne durcheinander gemischt werden und/oder die Kernelgrößen können während der verschiedenen Trainingsepochen variiert werden. Auf diese Weise kann eine optimale Größe der einzelnen Teilmengen der Merkmale F2a, F2b, F2c, F4a, F4b, F4c bestimmt werden.
  • 3 zeigt ein Kraftfahrzeug 11 mit einer beispielhaften Ausführungsform einer Anordnung 1 nach dem verbesserten Konzept, das als elektronisches Fahrzeugführungssystem ausgebildet ist. Die Anordnung 1 kann zum Beispiel wie in 1 oder 2 beschrieben ausgeführt sein.
  • Insbesondere kann das Rechensystem 4 eine Steuereinheit enthalten, die dazu eingerichtet ist, in Abhängigkeit von einem Ergebnis der ersten visuellen Wahrnehmungsaufgabe und/oder in Abhängigkeit von einem Ergebnis der zweiten visuellen Wahrnehmungsaufgabe eines oder mehrere Steuersignale zu erzeugen. In Abhängigkeit von den Steuersignalen kann das elektronische Fahrzeugführungssystem 1 das Fahrzeug 11 zumindest teilweise automatisch steuern.
  • Wie in Bezug auf die Abbildungen beschrieben, bietet das verbesserte Konzept einen Ansatz zur automatischen visuellen Wahrnehmung und automatischen Fahrzeugführung auf der Grundlage von visuellen Wahrnehmungsanwendungen, der eine verbesserte Effizienz und/oder Effektivität ermöglicht.
  • Insbesondere wird ein Verzweigungs- und Zusammenführungsnetzwerk vorgeschlagen, um eine größere Flexibilität für das Training von Mehrfachanwendungen zu ermöglichen.
  • Zu diesem Zweck können Gruppenfaltungsschichten verwendet werden. Ein Vorteil der Verwendung der Gruppenfaltung, insbesondere im Hinblick auf eingebettete Hardwarebeschränkungen, besteht darin, dass die Anzahl der Eingabemerkmalsmaps für jede der Aufgaben, wie zum Beispiel Segmentierung oder Erkennung, selektiv ausgewählt und trainiert werden kann. Dadurch werden auch der Speicherbedarf, die eingebettete Komplexität und die Laufzeit effektiv reduziert.

Claims (15)

  1. Computerimplementiertes Verfahren zur automatischen visuellen Wahrnehmung, wobei - ein künstliches neuronales Netzwerk (6) mit einem Encodermodul (7), einem ersten Decodermodul (8a) und einem zweiten Decodermodul (8b) auf einer Speichereinheit (5) bereitgestellt wird; - ein Rechensystem (4) verwendet wird, um Bilddaten (3) von einer Abbildungseinrichtung (2) zu empfangen und einen Satz von Merkmalen (F2a, F2b) zu erzeugen, indem mindestens eine Schicht des Encodermoduls (7) auf die Bilddaten (3) angewendet wird; dadurch gekennzeichnet, dass das Rechensystem (4) verwendet wird, um - eine erste Teilmenge (F2a) des Satzes von Merkmalen (F2a, F2b) dem ersten Decodermodul (8a) zur Verfügung zu stellen; - eine zweite Teilmenge (F2b) des Satzes von Merkmalen (F2a, F2b) dem zweiten Decodermodul (8b) zur Verfügung zu stellen; - einen weiteren Satz von Merkmalen (F3) zu erzeugen, indem mindestens eine weitere Schicht des Encodermoduls (7) auf den Satz von Merkmalen (F2a, F2b) angewendet wird; - in Abhängigkeit von dem weiteren Satz von Merkmalen (F3) Encoderausgangsdaten (F6) des Encodermoduls (7) zu erzeugen; - in Abhängigkeit von den Encoderausgangsdaten (F6) und der ersten Teilmenge (F2a) erste Decoderausgangsdaten (F10a) des ersten Decodermoduls (8a) zu erzeugen; - in Abhängigkeit von den Encoderausgangsdaten (F6) und der zweiten Teilmenge (F2b) zweite Decoderausgangsdaten (F10b) des zweiten Decodermoduls (8b) zu erzeugen; - in Abhängigkeit von den ersten Decoderausgangsdaten (F10a) eine erste visuelle Wahrnehmungsaufgabe auszuführen; und - in Abhängigkeit von den zweiten Decoderausgangsdaten (F10b) eine zweite visuelle Wahrnehmungsaufgabe auszuführen.
  2. Computerimplementiertes Verfahren zur automatischen visuellen Wahrnehmung nach Anspruch 1, dadurch gekennzeichnet, dass - zum Erzeugen der ersten Decoderausgangsdaten (F10a) die Encoderausgangsdaten (F6) einer initialen Schicht des ersten Decodermoduls (8a) zur Verfügung gestellt werden und die erste Teilmenge (F2a) einer weiteren Schicht des ersten Decodermoduls (8a) zur Verfügung gestellt wird; und/oder - zum Erzeugen der zweiten Decoderausgangsdaten (F10b) die Encoderausgangsdaten (F6) einer initialen Schicht des zweiten Decodermoduls (8b) zur Verfügung gestellt werden und die zweite Teilmenge (F2b) einer weiteren Schicht des zweiten Decodermoduls (8b) zur Verfügung gestellt wird.
  3. Computerimplementiertes Verfahren zur automatischen visuellen Wahrnehmung gemäß einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass - die mindestens eine Schicht des Encodermoduls (7) eine Gruppenfaltungsschicht enthält; und - das Rechensystem (4) wird verwendet, um die Gruppenfaltungsschicht auf Daten anzuwenden, die von den Bilddaten (3) abhängen, um den Satz von Merkmalen (F2a, F2b) zu erzeugen.
  4. Computerimplementiertes Verfahren zur automatischen visuellen Wahrnehmung nach Anspruch 3, dadurch gekennzeichnet, dass zum Anwenden der Gruppenfaltungsschicht auf die Daten, die von den Bilddaten (3) abhängen, - einer oder mehrere erste Faltungskerne auf die Daten, die von den Bilddaten (3) abhängen, angewendet werden, um die erste Teilmenge (F2a) zu erzeugen; und - einer oder mehrere zweite Faltungskerne auf die Daten, die von den Bilddaten (3) abhängen, angewendet werden, um die zweite Teilmenge (F2b) zu erzeugen.
  5. Computerimplementiertes Verfahren zur automatischen visuellen Wahrnehmung nach Anspruch 4, dadurch gekennzeichnet, dass eine jeweilige Größe des einen oder der mehreren ersten Faltungskerne sich von einer jeweiligen Größe des einen oder der mehreren zweiten Faltungskerne unterscheidet.
  6. Computerimplementiertes Verfahren zur automatischen visuellen Wahrnehmung nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass - die erste visuelle Wahrnehmungsaufgabe eine Objekterkennungsaufgabe enthält; und/oder - die zweite visuelle Wahrnehmungsaufgabe eine semantische Segmentierungsaufgabe enthält.
  7. Computerimplementiertes Trainingsverfahren zum Trainieren eines künstlichen neuronalen Netzwerks (6) zur automatischen visuellen Wahrnehmung, wobei das neuronale Netzwerk (6) ein Encodermodul (7), ein erstes Decodermodul (8a) und ein zweites Decodermodul (8b) beinhaltet, wobei ein Trainingsrechensystem verwendet wird, um Trainingsbilddaten zu empfangen und einen Satz von Merkmalen (F2a, F2b) zu erzeugen, indem mindestens eine Schicht des Encodermoduls (7) auf die Trainingsbilddaten (3) angewendet wird, dadurch gekennzeichnet, dass das Trainingsrechensystem wird verwendet, um die folgenden Schritte a) bis h) während einer ersten Trainingsepoche durchzuführen: a) Bereitstellen einer ersten Teilmenge (F2a) des Satzes von Merkmalen (F2a, F2b) an das erste Decodermodul (8a); b) Bereitstellen einer zweiten Teilmenge (F2b) des Satzes von Merkmalen an das zweite Decodermodul (8b); c) Erzeugen eines weiteren Satzes von Merkmalen (F3) durch Anwenden mindestens einer weiteren Schicht des Encodermoduls (7) auf den Satz von Merkmalen (F2a, F2b); d) Erzeugen von Encoderausgangsdaten (F6) des Encodermoduls (7) abhängig von dem weiteren Satz von Merkmalen (F3); e) Erzeugen erster Decoderausgangsdaten (F10a) des ersten Decodermoduls (8a) in abhängig von den Encoderausgangsdaten (F6) und der ersten Teilmenge (F2a); f) Erzeugen von zweiten Decoderausgangsdaten (F10b) des zweiten Decodermoduls (8b) abhängig von den Encoderausgangsdaten (F6) und der zweiten Teilmenge (F2b); g) Berechnen jeweiliger Werte mindestens einer vordefinierten Verlustfunktion in Abhängigkeit von den ersten Decoderausgangsdaten (F10a) und den zweiten Decoderausgangsdaten (F10b); und h) Modifizieren des neuronalen Netzwerks (6) abhängig von den jeweiligen Werten der mindestens einen Verlustfunktion.
  8. Computerimplementiertes Trainingsverfahren nach Anspruch 7, dadurch gekennzeichnet, dass - die mindestens eine Schicht des Encodermoduls (7) eine Gruppenfaltungsschicht beinhaltet; - das Trainingsrechensystem verwendet wird, um die Gruppenfaltungsschicht auf Daten anzuwenden, die von den Trainingsbilddaten abhängen, um den Satz von Merkmalen (F2a, F2b) zu erzeugen; und - zum Anwenden der Gruppenfaltungsschicht auf die Daten in Abhängigkeit von den Bilddaten, - einer oder mehrere erste Faltungskerne auf die Daten, die von den Trainingsbilddaten abhängen, angewendet werden, um die erste Teilmenge (F2a) zu erzeugen; und - einer oder mehrere zweite Faltungskerne auf die Daten, die von den Trainingsbilddaten abhängen, angewendet werden, um die zweite Teilmenge (F2b) zu erzeugen.
  9. Computerimplementiertes Trainingsverfahren nach Anspruch 8, dadurch gekennzeichnet, dass - der eine oder die mehreren ersten Faltungskerne in Abhängigkeit von den jeweiligen Werten der mindestens einen Verlustfunktion modifiziert werden; und/oder - der eine oder die mehreren zweiten Faltungskerne in Abhängigkeit von den jeweiligen Werten der mindestens einen Verlustfunktion modifiziert werden.
  10. Computerimplementiertes Trainingsverfahren nach Anspruch 9, dadurch gekennzeichnet, dass die Schritte a) bis g), nach Schritt h) und nachdem der eine oder die mehreren ersten Faltungskerne und/oder der eine oder die mehreren zweiten Faltungskerne modifiziert wurden, wiederholt werden.
  11. Computerimplementiertes Verfahren zur automatischen visuellen Wahrnehmung nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, dass das künstliche neuronale Netzwerk (6) gemäß einer computerimplementierten Trainingsverfahren nach einem der Ansprüche 7 bis 10 trainiert wird.
  12. Verfahren zum zumindest teilweise automatischen Führen eines Fahrzeugs (11), wobei - Bilddaten (3), die eine Umgebung des Fahrzeugs (11) repräsentieren, unter Verwendung einer Abbildungseinrichtung (2) des Fahrzeugs (11) erzeugt werden; - ein computerimplementiertes Verfahren zur automatischen visuellen Wahrnehmung nach einem der Ansprüche 1 bis 6 oder nach Anspruch 11 durchgeführt wird; und - das Fahrzeug (11) in Abhängigkeit von einem Ergebnis der ersten visuellen Wahrnehmungsaufgabe und/oder in Abhängigkeit von einem Ergebnis der zweiten visuellen Wahrnehmungsaufgabe zumindest teilweise automatisch geführt wird.
  13. Anordnung zur automatischen visuellen Wahrnehmung, enthaltend - eine Abbildungseinrichtung (2), die dazu eingerichtet ist, Bilddaten (3) zu erzeugen, die eine Umgebung der Anordnung (1) darstellen; - eine Speichereinheit (5), die ein künstliches neuronales Netzwerk (6) speichert, das ein Encodermodul (7), ein erstes Decodermodul (8a) und ein zweites Decodermodul (8b) aufweist; - ein Rechensystem (4), das dazu eingerichtet ist, die Bilddaten (3) von der Abbildungseinrichtung (2) zu erhalten und einen Satz von Merkmalen (F2a, F2b) zu erzeugen, indem mindestens eine Schicht des Encodermoduls (7) auf die Bilddaten (3) angewendet wird; dadurch gekennzeichnet, dass das Rechensystem (4) dazu eingerichtet ist, - eine erste Teilmenge (F2a) des Satzes von Merkmalen (F2a, F2b) dem ersten Decodermodul (8a) zur Verfügung zu stellen; - eine zweite Teilmenge (F2b) des Satzes von Merkmalen (F2a, F2b) dem zweiten Decodermodul (8b) zur Verfügung zu stellen; - einen weiteren Satz von Merkmalen (F3) zu erzeugen, indem mindestens eine weitere Schicht des Encodermoduls (7) auf den Satz von Merkmalen (F2a, F2b) angewendet wird; - in Abhängigkeit von dem weiteren Satz von Merkmalen (F3) Encoderausgangsdaten (F6) des Encodermoduls (7) zu erzeugen; - in Abhängigkeit von den Encoderausgangsdaten (F6) und der ersten Teilmenge (F2a) erste Decoderausgangsdaten (F10a) des ersten Decodermoduls (8a) zu erzeugen; - in Abhängigkeit von den Encoderausgangsdaten (F6) und der zweiten Teilmenge (F2b) zweite Decoderausgangsdaten (F10b) des zweiten Decodermoduls (8b) zu erzeugen; - in Abhängigkeit von den ersten Decoderausgangsdaten (F10a) eine erste visuelle Wahrnehmungsaufgabe auszuführen; und - in Abhängigkeit von den zweiten Decoderausgangsdaten (F10b) eine zweite visuelle Wahrnehmungsaufgabe auszuführen.
  14. Anordnung nach Anspruch 13, dadurch gekennzeichnet, dass - die Anordnung (1) als elektronisches Fahrzeugführungssystem ausgestaltet ist; und - die Anordnung (1) eine Steuereinheit beinhaltet, die dazu eingerichtet ist, eines oder mehrere Steuersignale zum zumindest teilweise automatischen Führen eines Fahrzeugs (11) in Abhängigkeit von einem Ergebnis der ersten visuellen Wahrnehmungsaufgabe und/oder in Abhängigkeit von einem Ergebnis der zweiten visuellen Wahrnehmungsaufgabe zu erzeugen.
  15. Computerprogrammprodukt, beinhaltend - Befehle, die, wenn sie von einem Computersystem ausgeführt werden, das Computersystem dazu veranlassen, ein Verfahren nach einem der Ansprüche 1 bis 6 oder 11 auszuführen; und/oder - Befehle, die, wenn sie von einem Trainingscomputersystem ausgeführt werden, das Trainingscomputersystem dazu veranlassen, ein Verfahren nach einem der Ansprüche 7 bis 10 auszuführen; und/oder - Befehle, die, wenn sie von einer Anordnung (1) gemäß einem der Ansprüche 13 oder 14 ausgeführt werden, die Anordnung (1) dazu veranlassen, ein Verfahren gemäß Anspruch 12 auszuführen.
DE102020119943.0A 2020-07-29 2020-07-29 Automatische visuelle Wahrnehmung Pending DE102020119943A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102020119943.0A DE102020119943A1 (de) 2020-07-29 2020-07-29 Automatische visuelle Wahrnehmung

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102020119943.0A DE102020119943A1 (de) 2020-07-29 2020-07-29 Automatische visuelle Wahrnehmung

Publications (1)

Publication Number Publication Date
DE102020119943A1 true DE102020119943A1 (de) 2022-02-03

Family

ID=79300462

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102020119943.0A Pending DE102020119943A1 (de) 2020-07-29 2020-07-29 Automatische visuelle Wahrnehmung

Country Status (1)

Country Link
DE (1) DE102020119943A1 (de)

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
RUDER, Sebastian, et al. Latent multi-task architecture learning. In: Proceedings of the AAAI Conference on Artificial Intelligence. 2019. S. 4822-4829.

Similar Documents

Publication Publication Date Title
EP3765927B1 (de) Verfahren zum erzeugen eines trainingsdatensatzes zum trainieren eines künstlichen-intelligenz-moduls für eine steuervorrichtung eines fahrzeugs
DE102018128531A1 (de) System und Verfahren zum Analysieren einer durch eine Punktwolke dargestellten dreidimensionalen Umgebung durch tiefes Lernen
DE3587061T2 (de) Bildverarbeitungseinrichtung und verfahren zu deren steuerung.
DE102018119467B4 (de) Verfahren zum durchführen eines autonomen betriebs eines fahrzeugs durch tiefes räumlich-zeitliches lernen
WO2019001649A1 (de) Wissenstransfer zwischen verschiedenen deep-learning architekturen
DE102019214402A1 (de) Verfahren und vorrichtung zum verarbeiten von daten mittels eines neuronalen konvolutionsnetzwerks
DE102019209644A1 (de) Verfahren zum Trainieren eines neuronalen Netzes
DE102018217092A1 (de) Verfahren, künstliches neuronales Netz, Vorrichtung, Computerprogramm und maschinenlesbares Speichermedium zur semantischen Segmentierung von Bilddaten
DE102021129544A1 (de) Systeme und verfahren zur tiefenabschätzung in einem fahrzeug
DE102018217091A1 (de) Verfahren, künstliches neuronales Netz, Vorrichtung, Computerprogramm und maschinenlesbares Speichermedium zur semantischen Segmentierung von Bilddaten
WO2022053505A1 (de) Computerimplementiertes verfahren zur umfelderkennung für ein automatisiertes fahrsystem, maschinenlernverfahren, steuergerät für ein automatisiertes fahrsystem und computerprogramm für ein derartiges steuergerät
DE102021207613A1 (de) Verfahren zur Qualitätssicherung eines Systems
DE102019105850A1 (de) Verfahren zur Erzeugung eines reduzierten neuronalen Netzes für ein Steuergerät eines Fahrzeuges mithilfe von Eigenvektoren
DE68926580T2 (de) Verfahren und Gerät zum Erzeugen beweglicher Bilder
DE102020122979A1 (de) Verfahren zum Bereitstellen eines komprimierten, robusten neuronalen Netzes und Assistenzeinrichtung
EP3785178B1 (de) Verfahren und vorrichtung zum ermitteln einer netzkonfiguration eines neuronalen netzes
DE102020127051A1 (de) Verfahren zur Bestimmung von sicherheitskritischen Ausgabewerten mittels einer Datenanalyseeinrichtung für eine technische Entität
DE102020101911A1 (de) Computerimplementiertes Verfahren zum Trainieren eines künstlichen neuronalen Netzwerks, computerimplementiertes Verfahren zur visuellen Objekterkennung, Verfahren zum Steuern eines Kraftfahrzeugs, Computerprogramm sowie computerlesbares Speichermedium
DE102020119943A1 (de) Automatische visuelle Wahrnehmung
DE102016115327A1 (de) Verfahren zum Erkennen zumindest eines Objekts in einem Umgebungsbereich eines Kraftfahrzeugs anhand von Objektmerkmalen aus Bildern, Kamerasystem sowie Kraftfahrzeug
DE102018129871A1 (de) Trainieren eins tiefen konvolutionellen neuronalen Netzwerks zum Verarbeiten von Sensordaten zur Anwendung in einem Fahrunterstützungssystem
DE102022213409A1 (de) Verfahren und vorrichtung zur bildverarbeitung und fahrzeugdieses verfahren und diese vorrichtung umfassend
DE102021200643B3 (de) Verfahren zur Umfelderkennung für teilautonome oder autonome Fahrfunktionen eines Kraftfahrzeugs mittels eines neuronalen Netzes
DE102018114229A1 (de) Verfahren zum Bestimmen eines Bewegungszustands eines Objekts in Abhängigkeit einer erzeugten Bewegungsmaske und eines erzeugten Begrenzungsrahmens, Fahrerassistenzsystem sowie Kraftfahrzeug
DE102020208765A1 (de) Bildklassifikator mit variablen rezeptiven Feldern in Faltungsschichten

Legal Events

Date Code Title Description
R163 Identified publications notified