DE102019209560A1 - Apparatus and method for training a neural network - Google Patents

Apparatus and method for training a neural network Download PDF

Info

Publication number
DE102019209560A1
DE102019209560A1 DE102019209560.7A DE102019209560A DE102019209560A1 DE 102019209560 A1 DE102019209560 A1 DE 102019209560A1 DE 102019209560 A DE102019209560 A DE 102019209560A DE 102019209560 A1 DE102019209560 A1 DE 102019209560A1
Authority
DE
Germany
Prior art keywords
training
neural network
sign
images
traffic
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
DE102019209560.7A
Other languages
German (de)
Inventor
Konrad Groh
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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE102019209560.7A priority Critical patent/DE102019209560A1/en
Publication of DE102019209560A1 publication Critical patent/DE102019209560A1/en
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
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06F18/24133Distances to prototypes
    • G06F18/24137Distances to cluster centroïds
    • G06F18/2414Smoothing the distance, e.g. radial basis function networks [RBFN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • 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
    • G06V20/58Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
    • G06V20/582Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads of traffic signs
    • 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

Landscapes

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

Abstract

Gemäß wird ein Verfahren zum Trainieren eines neuronalen Netzwerks beschrieben, wobei das Verfahren das Bereitstellen eines Trainingsdatensatzes, der Trainingsbilder aufweist, die eine Fahrzeugumgebung aus der Sicht eines Fahrzeugs zeigen, wobei eine Mehrzahl der Trainingsbilder Verkehrszeichen zeigen, das Erzeugen von zusätzlichen Trainingsbildern durch Augmentieren von Trainingsbildern, die Verkehrszeichen zeigen durch Augmentieren eines Trainingsbilds, das ein Verkehrszeichen zeigt, durch teilweises Überdecken des Verkehrszeichens und/oder Augmentieren eines Trainingsbilds, das ein Wechselverkehrszeichen zeigt, durch Ändern des Leuchtzustands von ein oder mehreren Leuchtelementen des Wechselverkehrszeichens und das Trainieren des neuronalen Netzwerks basierend auf mindestens den augmentierten Trainingsbildern aufweist.According to a method for training a neural network is described, the method comprising the provision of a training data set that includes training images that show a vehicle environment from the perspective of a vehicle, a plurality of the training images showing traffic signs, the generation of additional training images by augmenting training images who show traffic signs by augmenting a training image showing a traffic sign by partially covering the traffic sign and / or augmenting a training image showing a variable message sign by changing the lighting state of one or more luminous elements of the variable message sign and training the neural network based on has at least the augmented training images.

Description

Verschiedene Ausführungsbeispiele betreffen allgemein eine Vorrichtung und ein Verfahren zum Trainieren eines neuronalen Netzwerks.Various embodiments relate generally to an apparatus and a method for training a neural network.

Neuronale Netzwerke können beispielsweise für die Klassifikation von Bilddaten verwendet werden, insbesondere für die Klassifikationen von Objekten in der Umgebung eines Fahrzeugs, die auf Bildern dargestellt sind, die von einer Kamera des Fahrzeugs aufgenommen werden, um darauf basierend das Fahrzeug zu steuern. Aus Sicherheitsgründen ist eine hohe Zuverlässigkeit (d.h. Robustheit) der Objektklassifizierung erforderlich. Dies gilt insbesondere für Verkehrszeichen, für die besondere Schwierigkeiten bestehen, da diese teilweise verdeckt sein können (z.B. durch Bewuchs) und auch durch Leuchtelemente eines Wechselverkehrszeichens dargestellt werden können.Neural networks can be used, for example, for the classification of image data, in particular for the classification of objects in the vicinity of a vehicle, which are represented on images that are recorded by a camera of the vehicle, in order to control the vehicle based thereon. For security reasons, a high level of reliability (i.e. robustness) of the object classification is required. This applies in particular to traffic signs, for which there are particular difficulties, as these can be partially covered (e.g. by vegetation) and can also be represented by the light elements of a variable message sign.

Das Verfahren und die Vorrichtung mit den Merkmalen der unabhängigen Ansprüche 1 (erstes Beispiel), 12 (zwölftes Beispiel) und 13 (dreiundzwanzigstes Beispiel) ermöglichen das robuste Trainieren eines neuronalen Netzwerks zur Verkehrszeichenklassifizierung.The method and the device with the features of the independent claims 1 (first example), 12 (twelfth example) and 13 (twenty-third example) enable the robust training of a neural network for traffic sign classification.

Das Verfahren kann das Trainieren des neuronalen Netzwerks basierend auf den Trainingsbildern des Trainingsdatensatzes und den augmentierten Trainingsbildern aufweisen. Das in diesem Absatz beschriebene Merkmal in Kombination mit dem ersten Beispiel bildet ein zweites Beispiel.The method can include training the neural network based on the training images of the training data set and the augmented training images. The feature described in this paragraph in combination with the first example forms a second example.

Das Verfahren kann das Erzeugen von zusätzlichen Trainingsbildern durch Augmentieren einer Vielzahl von Trainingsbildern, die Verkehrszeichen zeigen, durch teilweises Überdecken eines Verkehrszeichens und/oder Ändern des Leuchtzustands von ein oder mehreren Leuchtelementen eines Wechselverkehrszeichens aufweisen. Das in diesem Absatz beschriebene Merkmal in Kombination mit dem ersten Beispiel oder zweiten Beispiel bildet ein drittes Beispiel.The method can include the generation of additional training images by augmenting a plurality of training images showing traffic signs by partially covering a traffic sign and / or changing the lighting state of one or more lighting elements of a variable message sign. The feature described in this paragraph in combination with the first example or second example forms a third example.

Das Ändern des Leuchtzustands von ein oder mehreren Leuchtelementen des Wechselverkehrszeichens kann, für jedes der ein oder mehreren Leuchtelemente, das Ändern von Pixelwerten von Pixeln, die das Leuchtelement darstellen, aufweisen, sodass die Pixel mit den geänderten Pixelwerten ein nicht-leuchtendes Leuchtelement darstellen, wenn die Pixel mit den ursprünglichen Pixelwerten ein leuchtendes Leuchtelement darstellen und sodass die Pixel mit den geänderten Pixelwerten ein leuchtendes Leuchtelement darstellen, wenn die Pixel mit den ursprünglichen Pixelwerten ein nicht-leuchtendes Leuchtelement darstellen. Das in diesem Absatz beschriebene Merkmal in Kombination mit einem oder mehreren des ersten bis dritten Beispiels bildet ein viertes Beispiel.The changing of the luminous state of one or more luminous elements of the variable message sign can comprise changing pixel values of pixels that represent the luminous element for each of the one or more luminous elements, so that the pixels with the changed pixel values represent a non-luminous luminous element if the pixels with the original pixel values represent a luminous luminous element and so that the pixels with the changed pixel values represent a luminous luminous element when the pixels with the original pixel values represent a non-luminous luminous element. The feature described in this paragraph in combination with one or more of the first to third examples forms a fourth example.

Die ein oder mehreren Leuchtelementen des Wechselverkehrszeichens, deren Leuchtzustand geändert wird, können Leuchtelemente des Wechselverkehrszeichens sein, die gemäß dem von dem Wechselverkehrszeichen in dem Trainingsbild dargestellten Verkehrszeichen aktiv sind. Das in diesem Absatz beschriebene Merkmal in Kombination mit einem oder mehreren des ersten bis vierten Beispiels bildet ein fünftes Beispiel.The one or more luminous elements of the variable message sign, the luminous state of which is changed, can be luminous elements of the variable message sign that are active according to the traffic sign represented by the variable message sign in the training image. The feature described in this paragraph in combination with one or more of the first to fourth examples forms a fifth example.

Das teilweise Überdecken eines Verkehrszeichens in einem Trainingsbild kann das Überdecken eines zufällig ausgewählten Bereichs des Verkehrszeichens aufweisen. Das in diesem Absatz beschriebene Merkmal in Kombination mit einem oder mehreren des ersten bis fünften Beispiels bildet ein sechstes Beispiel.The partial covering of a traffic sign in a training image can comprise the covering of a randomly selected area of the traffic sign. The feature described in this paragraph in combination with one or more of the first through fifth examples forms a sixth example.

Das Überdecken des Verkehrszeichens kann ein Überdecken mit einer Textur aufweisen, die eine Bewachsung darstellt. Das in diesem Absatz beschriebene Merkmal in Kombination mit dem sechsten Beispiel bildet ein siebtes Beispiel.The covering of the traffic sign can include covering with a texture that represents vegetation. The feature described in this paragraph in combination with the sixth example forms a seventh example.

Das Verfahren kann das Trainieren des neuronalen Netzwerks als Klassifikationsnetzwerk für Objekte in der Umgebung eines Fahrzeugs aufweisen. Das in diesem Absatz beschriebene Merkmal in Kombination mit einem oder mehreren des ersten bis siebten Beispiels bildet ein achtes Beispiel.The method can include training the neural network as a classification network for objects in the vicinity of a vehicle. The feature described in this paragraph in combination with one or more of the first through seventh examples forms an eighth example.

Das Verfahren kann das Trainieren des neuronalen Netzwerks als Klassifikationsnetzwerk für Verkehrszeichen aufweisen. Das in diesem Absatz beschriebene Merkmal in Kombination mit einem oder mehreren des ersten bis achten Beispiels bildet ein neuntes Beispiel.The method can include training the neural network as a classification network for traffic signs. The feature described in this paragraph in combination with one or more of the first to eighth examples forms a ninth example.

Das Verfahren kann das Trainieren eines weiteren neuronalen Netzwerks als Segmentierungsnetzwerk für Objekte in der Umgebung eines Fahrzeugs basierend auf mindestens den augmentierten Trainingsbildern aufweisen. Das in diesem Absatz beschriebene Merkmal in Kombination mit einem oder mehreren des ersten bis neunten Beispiels bildet ein zehntes Beispiel.The method can include training a further neural network as a segmentation network for objects in the vicinity of a vehicle based on at least the augmented training images. The feature described in this paragraph in combination with one or more of the first through ninth examples forms a tenth example.

Das Verfahren kann das gemeinsame Trainieren des neuronalen Netzwerks und des weiteren neuronalen Netzwerks basierend auf mindestens den augmentierten Trainingsbildern aufweisen, wobei dem neuronalen Netzwerk Teilbilder der augmentierten Trainingsbilder basierend auf der Segmentierung durch das weitere neuronale Netzwerk zugeführt werden. Das in diesem Absatz beschriebene Merkmal in Kombination mit dem zehnten Beispiel bildet ein elftes Beispiel.The method can include the joint training of the neural network and the further neural network based on at least the augmented training images, partial images of the augmented training images based on the segmentation by the further neural network being fed to the neural network. The feature described in this paragraph in combination with the tenth example forms an eleventh example.

Die Merkmale des zwölften Beispiels zusammen mit den Merkmalen des zweiten Beispiels bilden ein dreizehntes Beispiel, die Merkmale des zwölften Beispiels zusammen mit den Merkmalen des dritten Beispiels bilden ein vierzehntes Beispiel usw. bis zu einem zweiundzwanzigsten Beispiel, das von den Merkmalen des zwölften Beispiels zusammen mit den Merkmalen des elften Beispiels gebildet wird.The features of the twelfth example together with the features of the second example form a thirteenth example, the features of the twelfth example together with the features of the third example form a fourteenth example, and so on up to a twenty-second example, that of the features of the twelfth example together with the features of the eleventh example.

Analog bilden die Merkmale des dreiundzwanzigsten Beispiels jeweils zusammen mit den Merkmalen des zweiten Beispiels bis elften Beispiels ein vierundzwanzigstes bis dreiunddreißigstes Beispiel.Similarly, the features of the twenty-third example together with the features of the second example to the eleventh example each form a twenty-fourth to thirty-third example.

Ein Computerprogramm kann Programminstruktionen aufweisen, die eingerichtet sind, wenn sie von einem oder von mehreren Prozessoren ausgeführt werden, das Verfahren nach einem oder mehreren des ersten bis elften Beispiels auszuführen.A computer program can have program instructions which, when they are executed by one or more processors, are set up to execute the method according to one or more of the first to eleventh examples.

Das Computerprogramm kann in einem maschinenlesbaren Speichermedium gespeichert sein.The computer program can be stored in a machine-readable storage medium.

Ausführungsbeispiele der Erfindung sind in den Figuren dargestellt und werden im Folgenden näher erläutert. In den Zeichnungen beziehen sich gleiche Bezugszeichen überall in den mehreren Ansichten allgemein auf dieselben Teile. Die Zeichnungen sind nicht notwendig maßstabsgerecht, wobei der Schwerpunkt stattdessen allgemein auf die Darstellung der Prinzipien der Erfindung liegt.

  • 1 zeigt ein Beispiel für die Objektklassifizierung beim autonomen Fahren.
  • 2 zeigt ein Beispiel für ein neuronales Netzwerk, das eingerichtet ist, Bilder in eine vordefinierte Anzahl von Klassen zu klassifizieren.
  • 3 zeigt eine Anordnung zum Training und zur Verwendung eines neuronalen Netzwerks zur Klassifizierung von Bildern.
  • 4 zeigt ein Beispiel für ein Wechselverkehrszeichen.
  • 5 zeigt ein Beispiel für ein Verkehrsschild, das durch eine Bewachsung, z.B. Blätter eines Baumes, teilweise verdeckt ist.
  • 6 zeigt ein Verkehrszeichen-Klassifizierungssystem gemäß einer Ausführungsform.
  • 7 zeigt ein Flussdiagramm, das ein Verfahren zum Trainieren eines neuronalen Netzwerks, z.B. ausgeführt von einem oder von mehreren Prozessoren, veranschaulicht.
Embodiments of the invention are shown in the figures and are explained in more detail below. In the drawings, like reference characters generally refer to the same parts throughout the several views. The drawings are not necessarily to scale, emphasis instead being placed generally on illustrating the principles of the invention.
  • 1 shows an example of the object classification in autonomous driving.
  • 2 Figure 3 shows an example of a neural network that is set up to classify images into a predefined number of classes.
  • 3 shows an arrangement for training and for using a neural network to classify images.
  • 4th shows an example of a variable message sign.
  • 5 shows an example of a traffic sign that is partially covered by vegetation, for example leaves of a tree.
  • 6th Figure 12 shows a traffic sign classification system according to an embodiment.
  • 7th FIG. 13 shows a flow diagram illustrating a method for training a neural network, for example carried out by one or more processors.

Beim maschinellen Lernen wird eine Funktion gelernt, die Eingabedaten auf Ausgabedaten abbildet. Beim Lernen (beispielsweise dem Training eines neuronalen Netzwerks und/oder Modells) wird aus einem Eingabedatensatz (auch bezeichnet als Trainingsdatensatz), der zu jeder Eingabe eine gewünschte Ausgabe (z.B. eine gewünschte Klassifikation der Eingabedaten) vorgibt, die Funktion derart bestimmt, dass sie diese Zuordnung von Eingaben auf Ausgaben bestmöglich abbildet.In machine learning, a function is learned that maps input data to output data. When learning (for example training a neural network and / or model), the function is determined from an input data set (also referred to as a training data set), which specifies a desired output (e.g. a desired classification of the input data) for each input, in such a way that it Mapping of inputs to outputs in the best possible way.

Ein Beispiel für eine Anwendung einer solchen maschinell gelernten Funktion ist die Objektklassifizierung für das autonome Fahren, wie es in 1 veranschaulicht ist.An example of an application of such a machine-learned function is object classification for autonomous driving, as shown in 1 is illustrated.

1 zeigt ein Beispiel für die Objektklassifizierung beim autonomen Fahren. 1 shows an example of the object classification in autonomous driving.

Im Beispiel von 1 ist ein Fahrzeug 101, beispielsweise ein PKW oder LKW, mit einer Fahrzeugsteuereinrichtung 102 versehen.In the example of 1 is a vehicle 101 , for example a car or truck, with a vehicle control device 102 Mistake.

Die Fahrzeugsteuereinrichtung 102 weist Datenverarbeitungskomponenten auf, z.B. einen Prozessor (z.B. eine CPU (Zentraleinheit)) 103 und einen Speicher 104 zum Speichern von Steuersoftware, gemäß der die Fahrzeugsteuereinrichtung 102 arbeitet, und Daten, die von dem Prozessor 103 verarbeitet werden.The vehicle control device 102 comprises data processing components such as a processor (eg a CPU (central processing unit)) 103 and a memory 104 for storing control software according to which the vehicle control device 102 works, and data received by the processor 103 are processed.

Beispielsweise weist die gespeicherte Steuerungssoftware (Computerprogramm-) Anweisungen auf, die, wenn der Prozessor sie ausgeführt, bewirken, dass der Prozessor 103 ein oder mehrere neuronale Netzwerke implementiert.For example, the stored control software has (computer program) instructions which, when executed by the processor, cause the processor to 103 implemented one or more neural networks.

Die im Speicher 104 gespeicherten Daten können beispielsweise Bilddaten beinhalten, die von einer oder mehreren Kameras 105 erfasst werden. Die eine oder mehreren Kameras 105 können beispielsweise ein oder mehrere Graustufen- oder Farbfotos der Umgebung des Fahrzeugs 101 aufnehmen.The ones in store 104 Stored data can include, for example, image data from one or more cameras 105 are recorded. The one or more cameras 105 For example, one or more grayscale or color photos of the area around the vehicle 101 take up.

Die Fahrzeugsteuereinrichtung 102 kann basierend auf den Bilddaten ermitteln, ob und welche Objekte, z.B. feste Objekte wie Verkehrszeichen oder Straßenmarkierungen oder bewegliche Objekte wie Fußgänger, Tiere und andere Fahrzeuge in der Umgebung des Fahrzeugs 101 vorhanden sind.The vehicle control device 102 can determine, based on the image data, whether and which objects, eg fixed objects such as traffic signs or road markings or moving objects such as pedestrians, animals and other vehicles in the vicinity of the vehicle 101 available.

Das Fahrzeug 101 kann dann von der Fahrzeugsteuereinrichtung 102 gemäß den Ergebnissen der Objektbestimmung gesteuert werden. So kann die Fahrzeugsteuereinrichtung 102 beispielsweise einen Aktuator 106 (z.B. eine Bremse) steuern, um die Geschwindigkeit des Fahrzeugs zu steuern, z.B. um das Fahrzeug zu bremsen.The vehicle 101 can then from the vehicle control device 102 can be controlled according to the results of the object determination. So can the vehicle control device 102 for example an actuator 106 (e.g. a brake) to control the speed of the vehicle, e.g. to brake the vehicle.

Wie oben erwähnt erfolgt im Beispiel von 1 die Steuerung auf der Grundlage einer Bildklassifizierung, die von einem neuronalen Netzwerk durchgeführt wird.As mentioned above, in the example of 1 the control based on an image classification performed by a neural network.

2 zeigt ein Beispiel für ein neuronales Netzwerk 200, das eingerichtet ist, Bilder in eine vordefinierte Anzahl von Klassen zu klassifizieren. 2 shows an example of a neural network 200 which is set up to classify images into a predefined number of classes.

In diesem Beispiel beinhaltet das neuronale Netzwerk 200 eine Eingangsschicht 201, zwei versteckte Schichten (engl. hidden layers) 202a und 202b und eine Ausgangsschicht 203.In this example, the neural network includes 200 an entry layer 201 , two hidden layers 202a and 202b and an output layer 203 .

Es ist zu beachten, dass das neuronale Netzwerk 200 ein vereinfachendes Beispiel für ein tatsächliches tiefes neuronales Netzwerk ist, das zu Klassifizierungszwecken verwendet wird und viel mehr Verarbeitungsknoten und versteckte Schichten beinhalten kann.It should be noted that the neural network 200 is a simplifying example of an actual deep neural network used for classification purposes and may include many more processing nodes and hidden layers.

Die Eingabedaten entsprechen der Eingabeschicht 201 und können im Allgemeinen als eine mehrdimensionale Anordnung von Werten angesehen werden, z.B. kann ein Eingabebild als eine zweidimensionale Anordnung von Werten betrachtet werden, die den Pixelwerten des Bildes entsprechen.The input data corresponds to the input layer 201 and can generally be viewed as a multi-dimensional array of values, eg an input image can be viewed as a two-dimensional array of values corresponding to the pixel values of the image.

Die Eingabe der Eingangsschicht 201 wird mit den Verarbeitungsknoten 204 verbunden. Ein Knoten 204 multipliziert jede Eingabe mit einem Gewicht und summiert die berechneten Werte. Zusätzlich kann ein Knoten 204 einen Bias zur Summe hinzufügen.Entering the entrance layer 201 will be with the processing nodes 204 connected. One knot 204 multiplies each entry by a weight and sums the calculated values. In addition, a knot 204 add a bias to the sum.

Den Knoten 204 folgt typischerweise eine nichtlineare Aktivierungsfunktion 205, z.B. eine ReLU-Einheit (f(x)= max(0,x)) oder eine Sigmoidfunktion (f(x)=l/(l+exp(-x))). Der resultierende Wert wird dann an die nächste Schicht ausgegeben.The knot 204 typically follows a non-linear activation function 205 , e.g. a ReLU unit (f (x) = max (0, x)) or a sigmoid function (f (x) = l / (l + exp (-x))). The resulting value is then output to the next shift.

Die verborgenen Schichten 202a und 202b können vollständig verbundene Schichten sein, wie in 2 dargestellt, wobei jeder Knoten einer Schicht mit jedem Knoten einer anderen Schicht verbunden ist.The hidden layers 202a and 202b can be fully connected layers, as in 2 with each node of one layer connected to each node of another layer.

Die verborgenen Schichten können auch nicht-vollständig verbundene Schichten sein, z.B. Faltungs- oder Pooling-Schichten (im Fall eines neuronalen Konvolutionsnetzwerks, CNN).The hidden layers can also be layers that are not fully connected, e.g. Convolutional or pooling layers (in the case of a convolutional neural network, CNN).

In einer Faltungsschicht (oder Konvolutionsschicht) werden die Eingaben durch Faltungsfilter modifiziert. Diese Filter nehmen eine Teilmenge der Eingangsdaten auf und können so interpretiert werden, dass sie mögliche Merkmale in den Eingangsdaten repräsentieren, z.B. eine bestimmte Form. Ein in der Faltungsschicht implementierter Filter bewirkt, dass mehrere entsprechende Knoten 204 der Faltungsschicht nur Eingänge von einem Teil der vorherigen Schicht empfangen.In a convolutional layer (or convolutional layer), the inputs are modified by convolutional filters. These filters absorb a subset of the input data and can be interpreted in such a way that they represent possible features in the input data, eg a certain shape. A filter implemented in the convolutional layer causes several corresponding nodes 204 the convolutional layer will only receive inputs from part of the previous layer.

Eine Pooling-Schicht kann als eine Form des nichtlinearen Down-Samplings betrachtet werden, bei dem die Dimensionen der Daten reduziert werden, indem die Ausgaben mehrerer Knoten in der nächsten Schicht zu einem einzigen Knoten kombiniert werden, z.B. durch die Aufnahme des Maximalwerts der Ausgaben.A pooling layer can be viewed as a form of non-linear down-sampling in which the dimensions of the data are reduced by combining the outputs of several nodes in the next layer into a single node, e.g. by including the maximum value of the expenses.

In einem neuronalen Netzwerk, das für die Klassifizierung ausgelegt ist, empfängt die Ausgabeschicht 203 Werte für jede mögliche Klasse von der vorhergehenden versteckten Schicht 202b. Diese Werte, die typischerweise als Scores bezeichnet werden, können von der Ausgabeschicht in Wahrscheinlichkeiten umgewandelt werden, z.B. durch Anwendung der Softmax-Funktion ( f ( x ) ) = exp ( ν i ) k = 1 K e x p ( ν k ) ,

Figure DE102019209560A1_0001
wobei die vi, i = 1...K, die Scores sind) oder der Sigmoid-Funktion auf sie.The output layer receives in a neural network designed for the classification 203 Values for each possible class from the previous hidden layer 202b . These values, which are typically referred to as scores, can be converted into probabilities by the output layer, for example by using the Softmax function ( f ( x ) ) = exp ( ν i ) k = 1 K e x p ( ν k ) ,
Figure DE102019209560A1_0001
where the v i , i = 1 ... K, are the scores) or the sigmoid function on them.

Dieser Satz von Wahrscheinlichkeiten für ein Eingabebild kann als Wahrscheinlichkeitsvektor betrachtet werden, der für jede der vordefinierten Klassen die Wahrscheinlichkeit anzeigen, dass ein Bild der vordefinierten Klasse entspricht, z.B. ein bestimmtes Objekt zeigt. Angenommen, es gibt zehn vordefinierte Klassen (0, 1,..., 9) für das Eingabebild einer Ziffer, ist die Ausgabe ein Vektor, der aus zehn Elementen besteht, und jedes Element entspricht der Wahrscheinlichkeit für eine Ziffer.This set of probabilities for an input image can be viewed as a probability vector indicating, for each of the predefined classes, the probability that an image corresponds to the predefined class, e.g. shows a specific object. Assuming there are ten predefined classes (0, 1, ..., 9) for the input image of a digit, the output is a vector made up of ten elements, and each element corresponds to the probability for a digit.

Die Klasse mit der maximalen Wahrscheinlichkeit kann dann von der Ausgabeschicht 203 als vorhergesagte Klasse zur weiteren Verarbeitung ausgegeben werden.The class with the maximum probability can then be used by the output layer 203 output as a predicted class for further processing.

Diese Ausgabe der Ausgabeschicht 203 wird als Vorhersage, Klassenvorhersagen vorhergesagte Klassenbezeichnung oder vorhergesagte Klassifizierungsbezeichnung bezeichnet.This edition of the output layer 203 is referred to as prediction, class predictions, predicted class name, or predicted classification name.

Um ein Bild, beispielsweise ein Verkehrszeichen, das das Bild zeigt, klassifizieren zu können, muss das neuronale Netzwerk 200 entsprechend trainiert werden.In order to be able to classify an image, for example a traffic sign that shows the image, the neural network must 200 be trained accordingly.

3 zeigt eine Anordnung 300 zum Training und zur Verwendung eines neuronalen Netzwerks 301 zur Klassifizierung von Bildern. 3 shows an arrangement 300 for training and using a neural network 301 to classify images.

Es ist zu beachten, dass die Klassifizierung eines Bildes als gleichwertig mit der Klassifizierung eines Objekts (z.B. eines Verkehrszeichens), das im Bild dargestellt ist, angesehen werden kann. Wenn ein Originalbild mehrere Objekte aufweist, wie beim autonomen Fahren, kann eine Segmentierung (möglicherweise durch ein anderes neuronales Netzwerk) durchgeführt werden, so dass jedes Segment ein Objekt zeigt und die Segmente als Eingang für das Bild klassifizierende neuronale Netzwerk 301 verwendet werden.It should be noted that the classification of an image can be regarded as equivalent to the classification of an object (e.g. a traffic sign) that is represented in the image. If an original image has multiple objects, as in autonomous driving, segmentation (possibly by a different neural network) can be performed so that each segment shows an object and the segments as an input for the neural network classifying the image 301 be used.

Die Trainingsanordnung 300 für neuronale Netze beinhaltet ein neuronales Netzwerk 301, z.B. entsprechend dem neuronalen Netzwerk 200 aus 2, mit einer Eingangsschicht 302, versteckten Schichten 303 und einer Ausgangsschicht 304.The training arrangement 300 for neural networks includes a neural network 301 , e.g. according to the neural network 200 out 2 , with an input layer 302 , hidden layers 303 and an output layer 304 .

Die Eingangsschicht 302 empfängt Eingangsdaten entweder von einem Trainingsdatensatz 305, einem Testdatensatz 306 oder, zur Bildklassifizierung, wenn das neuronale Netzwerk 301 trainiert wurde, von einem Bildspeicher 307.The entry layer 302 receives input data either from a training data set 305 , a test data set 306 or, for image classification, if the neural network 301 was trained by an image memory 307 .

Ein Selektor (d.h. eine Auswahlfunktion) 309 entscheidet, welche Eingangsdaten der Eingangsschicht 302 zur Verfügung gestellt werden.A selector (ie a selection function) 309 decides which input data of the input layer 302 to provide.

Der Trainingsdatensatz 305 enthält Bilder für Trainingszwecke sowie Zusatzinformationen, die jedes Bild mindestens einer Klasse zuordnen. Diese Informationen werden Klassen- (oder Klassifizierungs-) Kennzeichnungen oder auch Grundwahrheits (engl. ground truth) -Klassen-Kennzeichnungen genannt. Die Trainingsdaten werden daher typischerweise als beschriftete Daten (engl. labeled data) bezeichnet.The training data set 305 contains pictures for training purposes as well as additional information that assigns each picture to at least one class. This information is called class (or classification) identifiers or also ground truth class identifiers. The training data are therefore typically referred to as labeled data.

Der Testdatensatz 306 enthält auch Bilder mit Klassenbezeichnungen, aber diese Bilder werden im Gegensatz zum Trainingsdatensatz 305 nur einmal als Test verwendet, um zu sehen, ob das neuronale Netzwerk erfolgreich trainiert wurde. Ist der Unterschied zwischen den Klassenbezeichnungen und den Vorhersagen (vorhergesagte Klassenbezeichnungen) größer als gewünscht, muss das neuronale Netz neu trainiert und ein anderer Testdatensatz verwendet werden.The test record 306 also contains pictures with class names, but these pictures are in contrast to the training data set 305 used only once as a test to see if the neural network was trained successfully. If the difference between the class names and the predictions (predicted class names) is greater than desired, the neural network must be retrained and another test data set must be used.

Sobald das neuronale Netzwerk erfolgreich trainiert wurde, kann es Bilder klassifizieren, die von der Bildquelle 308, z.B. einer Kamera, stammen und im Bildspeicher 307 gespeichert sind.Once the neural network has been successfully trained, it can classify images coming from the image source 308 , for example a camera, originate and in the image memory 307 are stored.

Ein weiterer Selektor 310 empfängt die Ausgaben des neuronalen Netzes, d.h. die vorhergesagten Klassen-Kennzeichungen (engl. class labels). Der Selektor 310 und liefert eine für ein Eingangsbild vorhergesagtes Klassen-Kennzeichnung an eine Trainingssteuerung 311, falls das Eingangsbild Teil der Trainings- oder Testdaten ist, d.h. falls das neuronale Netz 301 gerade trainiert wird, oder z.B. an einen Speicher 312, wenn das neuronale Netz 301 trainiert wurde und zur Klassifizierung verwendet wird. Im Speicher 312 gespeicherte vorhergesagte Klassen-Kennzeichungen können weiterverarbeitet werden, z.B. zu Steuerungszwecken, z.B. zur Steuerung des Fahrzeugs 101.Another selector 310 receives the outputs of the neural network, ie the predicted class labels. The selector 310 and delivers a predicted class identifier for an input image to a training controller 311 if the input image is part of the training or test data, ie if the neural network 301 is currently being trained, or e.g. to a memory 312 when the neural network 301 has been trained and is used for classification. In the storage room 312 Stored predicted class identifications can be processed further, for example for control purposes, for example to control the vehicle 101 .

Die Trainingssteuerung 311 empfängt auch die Grundwahrheits-Klassen-Kennzeichnungen vom Selektor 309 und vergleicht sie mit den vorhergesagten Klassen-Kennzeichnungen und bewertet die Übereinstimmung mittels einer sogenannten Verlustfunktion (engl. loss function). Die Grundwahrheits-Klassen-Kennzeichnungen dienen als Referenz-Klassen-Kennzeichnungen.The training control 311 also receives the ground truth class labels from the selector 309 and compares it with the predicted class designations and evaluates the correspondence by means of a so-called loss function. The basic truth class labels serve as reference class labels.

Das Ziel beim Training eines neuronalen Netzwerks ist es, die Diskrepanz zwischen den Grundwahrheits-Klassenkennzeichen und den vorhergesagten Klassenkennzeichen bis zu einem zufriedenstellenden Punkt zu reduzieren. Zu diesem Zweck kann die Trainingssteuerung 311 mit verschiedenen Methoden, z.B. Backpropagation, die Gewichte und den Bias der im neuronalen Netz enthaltenen Verarbeitungsknoten anpassen.The goal in training a neural network is to reduce to a satisfactory point the discrepancy between the basic truth class labels and the predicted class labels. For this purpose, the training control 311 using various methods, e.g. backpropagation, to adapt the weights and the bias of the processing nodes contained in the neural network.

In jeder Iteration des Trainings aktualisiert die Trainingssteuerung 311 die Gewichte und den Bias zumindest eines Teils der Knoten des neuronalen Netzwerks 301. Dazu kann der Trainingsdatensatz mehrmals, in sogenannten Epochen, durchlaufen werden.The training control updates in each iteration of the training 311 the weights and bias of at least part of the nodes of the neural network 301 . For this purpose, the training data set can be run through several times, in so-called epochs.

Dieser iterative Prozess wird so lange wiederholt, bis der Unterschied zwischen Grundwahrheits-Klassen-Kennzeichnungen und vorhergesagten Klassen-Kennzeichnungen ausreichend klein (z.B. unter einem vorgegebenen Schwellwert) ist. Dabei wird typischerweise ein Teil des Trainingsdatensatzes als sogenannter Validierungsdatensatz abgetrennt, um zwischendurch, z.B. einmal pro Epoche, den Fortschritt des Trainings zu überprüfen.This iterative process is repeated until the difference between basic truth class labels and predicted class labels is sufficiently small (e.g. below a predetermined threshold value). A part of the training data set is typically separated off as a so-called validation data set in order to be able to use it in between, e.g. once per epoch to check the progress of the training.

Zum abschließenden Test wählt der Selektor 309 den Testdatensatz aus und für den Fall, dass auch der Unterschied zwischen Grundwahrheits-Klassen-Kennzeichnungen und vorhergesagten Klassen-Kennzeichnungen für den Testdatensatz ausreichend klein ist, ist das Training des neuronalen Netzes 301 abgeschlossen.The selector chooses for the final test 309 the test data set and in the event that the difference between basic truth class identifiers and predicted class identifiers for the test data set is also sufficiently small, the training of the neural network is 301 completed.

Das neuronale Netzwerk 301 kann dann als Bild- (oder Objekt-) Klassifizierer verwendet werden.The neural network 301 can then be used as an image (or object) classifier.

Um mit einem maschinellen Lernverfahren (z.B. mittels der Anordnung 300) eine Funktion für das automatisierte Fahren darzustellen (d.h. zu lernen) ist es erforderlich, dass der Trainingsdatensatz alle zu klassifizierenden Objekte enthält. Insbesondere ist es erforderlich, dass alle möglichen (oder zumindest für die Steuerung relevanten) Verkehrszeichen im Trainingsdatensatz vorhanden sind.In order to use a machine learning method (e.g. by means of the arrangement 300 ) To represent (ie to learn) a function for automated driving, it is necessary that the training data set contains all objects to be classified. In particular, it is necessary that all possible (or at least relevant for the control) traffic signs are present in the training data set.

Dabei ist zu beachten, dass nicht alle Verkehrszeichen statisch sind. So gibt es beispielsweise elektrische Lichtanlagen die ebenfalls erkannt müssen. Ein Beispiel für solche eine elektrische Lichtanlage ist ein lichtemittierendes Wechselverkehrszeichen, dass mit einer Matrix von verschieden farbigen Leuchtelementen verschiedene Verkehrszeichen darstellen kann. Solche Wechselverkehrszeichen werden beispielsweise bei einem Verkehrsleitsystem auf der Autobahn eingesetzt, um bei drohendem Stau die Geschwindigkeit zu begrenzen oder bei einem bestehenden Stau vor dem Stau zu warnen. Entsprechend kann das Wechselverkehrszeichen zwischen verschiedenen Geschwindigkeitsbegrenzungen und dem Stau-Verkehrszeichen umschalten.It should be noted that not all traffic signs are static. For example, there are electrical lighting systems that must also be recognized. An example of such an electrical lighting system is a light-emitting variable message sign that can display different traffic signs with a matrix of differently colored light elements. Such Variable message signs are used, for example, in a traffic control system on the motorway to limit the speed in the event of an impending traffic jam or to warn of the traffic jam when there is an existing traffic jam. Accordingly, the variable message sign can switch between different speed limits and the traffic jam traffic sign.

4 zeigt ein Beispiel für ein Wechselverkehrszeichen 400. 4th shows an example of a variable message sign 400 .

Das Wechselverkehrszeichen 400 weist eine Vielzahl von Leuchtelementen (z.B. LEDs) 401, 402 auf. Ein erster Teil der LEDs 401 sind inaktiv und ein zweiter Teil der LEDs 402 sind aktiv, sodass im dargestellten Beispiel das Wechselverkehrszeichen das Verkehrszeichen „Allgemeine Gefahrenstelle“ darstellt.The variable message sign 400 has a multiplicity of light-emitting elements (eg LEDs) 401, 402. A first part of the LEDs 401 are inactive and a second part of the LEDs 402 are active, so that in the example shown, the variable message sign represents the traffic sign "General danger zone".

Wie erkennbar ist, kann das Wechselverkehrszeichen auch andere Verkehrszeichen darstellen, z.B. das Verkehrszeichen „Überholverbot für Kraftfahrzeuge über 3,5t“.As can be seen, the variable message sign can also represent other traffic signs, e.g. the traffic sign "No overtaking for vehicles over 3.5t".

Typischerweise werden die Leuchtelemente 401, 402 gepulst betrieben, das heißt die aktiven Leuchtelemente 402 sind nicht zu jedem Zeitpunkt sichtbar, sondern immer nur für einen kurzen Moment (z.B. zeilenweise). Dies ist für das menschliche Auge kein Problem, da die aktiven Leuchtelement 402 scheinbar kontinuierlich leuchten. Für eine Kamera 105 sind jedoch je nach Aufnahmezeitpunkt möglicherweise nicht alle aktiven Leuchtelemente sichtbar, sondern z.B. nur ein Teil. Werden die aktiven Leuchtelement 402 derart eingeschaltet, dass sie nicht alle gleichzeitig leuchten (wie bei einem zeilenweisen Betrieb), sind für die Kamera für keinen Aufnahmezeitpunkt alle aktiven Leuchtelemente 402 sichtbar. Entsprechend besteht die Schwierigkeit für ein neuronales Netz, das das Verkehrszeichen klassifizieren soll, dass nur ein Teil der Leuchtelemente, die gemäß dem dargestellten Verkehrszeichen eigentlich leuchten müssten, also aktiv sind, tatsächlich im entsprechenden Bild leuchtend dargestellt sind. Anschaulich ist für das neuronale Netz nur ein Teil des Verkehrszeichens sichtbar.Typically the lighting elements 401 , 402 operated in a pulsed manner, i.e. the active light elements 402 are not visible at all times, but only for a short moment (e.g. line by line). This is not a problem for the human eye as the active light element 402 seem to shine continuously. For a camera 105 However, depending on the time of the recording, it may not be possible to see all the active light elements, for example only some. Become the active luminous element 402 switched on in such a way that they do not all light up at the same time (as in line-by-line operation), all the light elements are not active for the camera at any point in time 402 visible. Accordingly, there is the difficulty for a neural network that is intended to classify the traffic sign that only some of the lighting elements that should actually light up according to the traffic sign shown, that is to say are active, are actually shown glowing in the corresponding image. Only part of the traffic sign is clearly visible to the neural network.

Eine weitere Schwierigkeit bei der Verkehrszeichenklassifizierung für das autonome Fahren stellen Verdeckungen durch natürliche Bewachsung dar, was wiederum dazu führt, dass für ein neuronales Netz, das das Verkehrszeichen klassifizieren soll, nur ein Teil des Verkehrszeichens sichtbar ist.Another difficulty in the classification of traffic signs for autonomous driving is the obscuration of natural vegetation, which in turn means that only part of the traffic sign is visible to a neural network that is intended to classify the traffic sign.

5 zeigt ein Beispiel für ein Verkehrsschild 500, das durch eine Bewachsung 501, z.B. Blätter eines Baumes, teilweise verdeckt ist. 5 shows an example of a traffic sign 500 that by a vegetation 501 , e.g. leaves of a tree, is partially covered.

Das Verkehrsschild 500 stellt das „Verbot für Fahrzeuge über 3,5t tatsächliches Gewicht“ dar. Durch die Bewachsung 501 besteht zum Beispiel die Gefahr der Verwechslung mit „zulässige Höchstgeschwindigkeit 30km/h“.The traffic sign 500 represents the "prohibition for vehicles over 3.5t actual weight". Due to the vegetation 501 there is, for example, a risk of confusion with “permissible maximum speed 30 km / h”.

Gemäß verschiedenen Ausführungsformen wird der Trainingsdatensatz durch den Einsatz synthetischer Manipulation durch Verdeckungen und nur teilweise leuchtende Leuchtelemente augmentiert. Dadurch kann die Robustheit der gelernten Klassifizierungsfunktion in Hinblick auf verdeckte Verkehrszeichen und nur teilweise leuchtende aktive Leuchtelemente eines Wechselverkehrszeichens erhöht werden.According to various embodiments, the training data set is augmented through the use of synthetic manipulation through concealments and only partially illuminated light elements. As a result, the robustness of the learned classification function with regard to concealed traffic signs and only partially illuminated active light elements of a variable message sign can be increased.

Im Folgenden wird ein Ausführungsbeispiel erläutert. Wie oben erwähnt, enthält ein von einer Kamera 105 aufgenommenes Bild typischerweise mehrere Objekte und es wird zunächst eine Segmentierung vorgenommen und ein Bildausschnitt, der ein Verkehrszeichen darstellt (oder auch mehrere solche Bildausschnitte) an das eigentliche Klassifizierungsnetzwerk, wie es mit Bezug auf 3 beschrieben ist, weitergegeben. Das im Folgenden beschriebene Verkehrszeichen-Erkennungssystem enthält dementsprechend zwei neuronale Netzwerk, eines zur Segmentierung und eines zur Klassifikation.An exemplary embodiment is explained below. As mentioned above, one contains from a camera 105 recorded image typically several objects and a segmentation is first carried out and an image section that represents a traffic sign (or also several such image sections) to the actual classification network, as described with reference to 3 is described, passed on. The traffic sign recognition system described below accordingly contains two neural networks, one for segmentation and one for classification.

6 zeigt ein Verkehrszeichen-Klassifizierungssystem 600 gemäß einer Ausführungsform. 6th shows a traffic sign classification system 600 according to one embodiment.

Das Verkehrszeichen-Klassifizierungssystem 600 weist ein erstes neuronales Netzwerk 601 und ein zweites neuronales Netzwerk 602 auf.The traffic sign classification system 600 exhibits a first neural network 601 and a second neural network 602 on.

Das erste neuronale Netzwerk 601 implementiert eine Funktion f: X → Y, die Eingangsdaten, Bilder der Umgebung eines Fahrzeugs, semantisch klassifiziert (d.h. z.B. eine dense prediction für jedes Bild durchführt). Die semantischen Klassen enthalten insbesondere die semantische Klasse „Verkehrszeichen“ und können auch weitere semantische Klassen wie „Fußgänger“, „Fahrzeug“ enthalten, die ebenso für die Fahrzeugsteuerung weiterverarbeitet werden können.The first neural network 601 implements a function f: X → Y, which semantically classifies input data, images of the surroundings of a vehicle (ie, for example, carries out a dense prediction for each image). The semantic classes contain in particular the semantic class “traffic signs” and can also contain further semantic classes such as “pedestrian”, “vehicle”, which can also be further processed for vehicle control.

Das Verkehrszeichen-Klassifizierungssystem 600 weist einen Ausschneideblock 603 auf, der eine Funktion g: X → B implementiert, die aus einem Eingangsbild des ersten neuronalen Netzes 601 eine Box (d.h. ein Teilbild) gemäß der vom ersten neuronalen Netz 601 vorgenommenen Segmentierung ausschneidet. Die Teilbilder werden zur weiteren Verarbeitung gespeichert. Dabei schneidet g solche Teilbilder aus, die (jeweils) ein Verkehrszeichen enthalten, d.h. derart, dass jedes Teilbild alle zusammenhängenden Pixels eines Verkehrszeichens enthält (die das erste neuronale Netz 601 der semantischen Klasse „Verkehrszeichen“ zugeordnet hat).The traffic sign classification system 600 has a cutout block 603 which implements a function g: X → B, which is derived from an input image of the first neural network 601 a box (ie a partial image) according to that of the first neural network 601 the segmentation made. The partial images are saved for further processing. In this case, g cuts out those partial images which (each) contain a traffic sign, that is to say in such a way that each partial image contains all connected pixels of a traffic sign contains (which is the first neural network 601 assigned to the semantic class "traffic signs").

Die vom Ausschneideblock 603 ausgegebenen (Teil-)Bilder werden dem zweiten neuronalen Netzwerk 602 zugeführt, welches eine Funktion h: B → Z implementiert, die die Verkehrszeichen klassifiziert. Das zweite neuronale Netzwerk 602 entspricht beispielsweise dem neuronalen Netzwerk 301.The one from the cutout block 603 Output (partial) images are sent to the second neural network 602 supplied, which implements a function h: B → Z that classifies the traffic signs. The second neural network 602 corresponds, for example, to the neural network 301 .

Im Betrieb erhält die Anordnung aus erstem neuronalen Netzwerk 601, Ausschneidebblock 603 und zweitem neuronalen Netzwerk 602, die beispielsweise von der Steuereinrichtung 102 zur Steuerung des Fahrzeugs 100 implementiert wird, Bilder 604 von der Umgebung eines Fahrzeugs, beispielsweise aufgenommen von der ein oder mehreren Kameras 105.In operation, the arrangement receives from the first neural network 601 , Cutout block 603 and second neural network 602 , for example by the control device 102 to control the vehicle 100 is implemented, images 604 of the surroundings of a vehicle, for example recorded by the one or more cameras 105 .

Für das Training der neuronalen Netzwerke 601, 602 wird ein Trainingsdatensatz 605 mit Trainingsdatenelementen (xk, yk), k= 1, ..., K, mit jeweils einem Bild xk einer typischen Straßenszene und mit einer zugehörigen semantischen Segmentierung y;, die jedem Pixel von xk eine semantische Klasse zugeordnet, bereitgestellt. Beispielsweise kann als Trainingsdatensatz (oder zumindest als Grundlage für den Trainingsdatensatz) ein verfügbarer Trainingsdatensatz mit Bildern mit Verkehrsszenen wie zum Beispiel Cityscapes verwendet werden.For training neural networks 601 , 602 becomes a training data set 605 with training data elements (x k , y k ), k = 1, ..., K, each with an image x k of a typical street scene and with an associated semantic segmentation y; which assigns a semantic class to each pixel of x k . For example, an available training data set with images with traffic scenes such as cityscapes can be used as the training data set (or at least as the basis for the training data set).

Außerdem ist für jedes Trainingsdatenelement zu jedem Verkehrszeichen, das sich in dem jeweiligen Bild befindet, ein Begrenzungsrahmen (engl. bounding box) bk und die Klasse (d.h. der Typ) des Verkehrszeichens zk abgelegt.In addition, a bounding box b k and the class (ie the type) of the traffic sign z k are stored for each training data element for each traffic sign that is located in the respective image.

Insbesondere sind in dem Trainingsdatensatz Verkehrszeichen basierend auf elektrischen Lichtanlagen, d.h. Wechselverkehrszeichen, gekennzeichnet.In particular, the training data set contains traffic signs based on electrical lighting systems, i.e. Variable message signs, marked.

Um ein robustes Training der neuronalen Netzwerke 601, 602 für Wechselverkehrszeichen und verdeckte Verkehrszeichen zu gewährleisten, wird nicht nur der ursprüngliche Trainingsdatensatz 605 verwendet, sondern auch der mittels eines Augmentierungsblocks 606 augmentierte Trainingsdatensatz.To provide robust training for the neural networks 601 , 602 for variable message signs and hidden traffic signs is not just the original training data set 605 used, but also by means of an augmentation block 606 augmented training data set.

Der Augmentierungsblock 606 augmentiert den Datensatz (xk, yk), k= 1, ..., K, beispielsweise derart (mittels einer entsprechenden Funktion), dass er Verkehrszeichen mittels Simulation eines natürlichen Bewuchses teilweise überdeckt. Beispielsweise kann der Augmentierungsblock 606 für ein Bild zufällig Ausschnitte von gespeicherten Baum- oder Strauch-Texturen zufällig über das Bild verteilen. Zum Beispiel kann ein Bild, dass das Verkehrszeichen 500 aus 5 ohne Bewachsung zeigt, durch Texturen entsprechend der Bewachsung 501 teilweise überdecken.The augmentation block 606 augments the data set (x k , y k ), k = 1, ..., K, for example in such a way (by means of a corresponding function) that it partially covers traffic signs by simulating natural vegetation. For example, the augmentation block 606 randomly distribute sections of saved tree or shrub textures over the image for an image. For example, an image that shows the road sign 500 out 5 without vegetation shows by textures corresponding to the vegetation 501 partially cover.

Der Augmentierungsblock 606 kann außerdem (mittels einer entsprechenden Funktion) Bilder, die eine elektrische Signalanlage mit Lichtelementen (z.B. ein Wechselverkehrszeichen) enthalten, derart augmentieren, dass es die aktiven Leuchtelemente (die von dem Wechselverkehrszeichen auf dem Bild sichtbar sind) zufällig ein- oder ausschaltet (d.h. leuchtend oder nicht-leuchtend darstellt), entsprechend eines gepulsten Betriebs der aktiven Leuchtelemente wie im Zusammenhang mit 4 erläutert.The augmentation block 606 can also (by means of a corresponding function) augment images that contain an electrical signal system with light elements (e.g. a variable message sign) in such a way that it randomly switches the active light elements (which are visible from the variable message sign on the image) on or off (i.e. illuminated or non-luminous), corresponding to a pulsed operation of the active luminous elements as in connection with 4th explained.

Das Training des ersten neuronalen Netzwerks 601 kann analog zum dem Klassifizierungsnetzwerk 301 geschehen, wie es mit Bezug auf 3 beschrieben ist. An Stelle der Klassen-Kennzeichnung pro Bild tritt dann die semantische Klasse pro Pixel. Da das erste neuronale Netzwerk beispielsweise eine Vielzahl von Werten ausgibt (semantische Klasse pro Pixel), in denen allen eine Abweichung von dem jeweils korrekten Wert vorliegen kann, kann die Verlustfunktion, die von der Trainingssteuerung 311 implementiert wird, eine Summation über die Pixel vorsehen. Das erste neuronale Netzwerk 601 wird derart trainiert, insbesondere auf den augmentierten Trainingsdaten, dass es die ihm zugeführten Bilder möglichst gut segmentiert, d.h. mit möglichst geringer Abweichung von der vorgegebenen semantischen Segmentierung yk, die für ein augmentiertes Bild einfach von dem augmentierten Bild zu Grunde liegenden Bild übernommen wird. Entsprechend wird eine Verlustfunktion eingesetzt, deren Wert von der Abweichung zwischen der vom ersten neuronalen Netzwerk 601 ermittelten Segmentierung und der vorgegebenen Segmentierung (z.B. summiert über alle Pixel), abhängt.Training the first neural network 601 can be analogous to the classification network 301 happen as it related to 3 is described. The semantic class per pixel then takes the place of the class identification per image. Since the first neural network outputs, for example, a large number of values (semantic class per pixel) in which there may be a deviation from the correct value in each case, the loss function determined by the training control 311 is implemented, provide a summation over the pixels. The first neural network 601 is trained in such a way, in particular on the augmented training data, that it segments the images fed to it as well as possible, ie with the smallest possible deviation from the predetermined semantic segmentation y k , which for an augmented image is simply adopted from the image on which the augmented image is based. Correspondingly, a loss function is used whose value depends on the deviation between that of the first neural network 601 determined segmentation and the specified segmentation (for example summed over all pixels), depends.

Das Training des zweiten neuronalen Netzwerks 602 kann basierend auf der Ausgabe des Ausschneideblocks 603 für Trainingsdaten 605 und für vom Augmentierungsblock augmentierte Trainingsdaten erfolgen. Alternativ oder zusätzlich kann das zweite neuronale Netz 602 auch durch direktes Zuführen von Trainingsdaten trainiert werden, wie es mit Bezug auf 3 beschrieben ist.The training of the second neural network 602 can be based on the output of the clipping block 603 for training data 605 and for training data augmented by the augmentation block. Alternatively or additionally, the second neural network 602 can also be trained by directly supplying training data, as referring to 3 is described.

Beispielsweise wird das zweite neuronale Netzwerk 602 trainiert

  • • mit echten Trainingsdaten (z.B. basierend auf echten Kamerabildern) und synthetischen Trainingsdaten (und jeweils diesen zugeordneten Referenz-Klassen-Kennzeichnungen) und/oder
  • • mit echten Trainingsdaten und augmentierten Trainingsdaten (und jeweils diesen zugeordneten Referenz-Klassen-Kennzeichnungen, wobei bei den augmentierten Trainingsdaten die Referenz-Klassen-Kennzeichnungen der entsprechenden Bilder übernommen werden).
For example, the second neural network becomes 602 trained
  • • with real training data (for example based on real camera images) and synthetic training data (and reference class identifiers assigned to them) and / or
  • • with real training data and augmented training data (and reference class identifications assigned to them in each case, the reference class identifications of the corresponding images being adopted for the augmented training data).

Zur Erzeugung von synthetischen Trainingsdaten kann beispielsweise insbesondere eine Funktion vorgesehen sein, die synthetische Bilder von elektrische Lichtanlagen (Wechselverkehrszeichen) erzeugt, wobei aktive Leuchtelemente zufällig leuchtend und nicht-leuchtend dargestellt werden.In order to generate synthetic training data, for example, a function can be provided that generates synthetic images of electrical lighting systems (variable message signs), with active lighting elements being shown randomly luminous and non-luminous.

Für das Training können von dem Trainingsdatensatz 605 wie mit Bezug auf 3 beschrieben Validierungsdaten abgetrennt werden und außerdem Testdaten vorgesehen werden. Beispielsweise werden augmentierte Trainingsdaten von dem Augmentierungsblock 606 basierend auf den Trainingsdaten (ohne die Validierungsdaten) erzeugt.The training data set can be used for training 605 as with reference to 3 validation data described are separated and test data are also provided. For example, augmented training data are obtained from the augmentation block 606 based on the training data (excluding the validation data).

Zusammenfassend wird gemäß verschiedenen Ausführungsformen ein Verfahren bereitgestellt, wie es in 7 dargestellt ist.In summary, according to various embodiments, a method is provided as shown in FIG 7th is shown.

7 zeigt ein Flussdiagramm 700, das ein Verfahren zum Trainieren eines neuronalen Netzwerks, z.B. ausgeführt von einem oder von mehreren Prozessoren, veranschaulicht. 7th shows a flow chart 700 , which illustrates a method for training a neural network, for example carried out by one or more processors.

In 701 wird ein Trainingsdatensatz, der Trainingsbilder aufweist, die eine Fahrzeugumgebung aus der Sicht eines Fahrzeugs zeigen, wobei eine Mehrzahl der Trainingsbilder Verkehrszeichen zeigen, bereitgestellt.In 701 a training data set is provided which has training images which show a vehicle environment from the point of view of a vehicle, a plurality of the training images showing traffic signs.

In 702 werden zusätzliche Trainingsbilder durch Augmentieren von Trainingsbildern, die Verkehrszeichen zeigen augmentiert. Dies erfolgt durch Augmentieren eines Trainingsbilds, das ein Verkehrszeichen zeigt, durch teilweises Überdecken des Verkehrszeichens und/oder Augmentieren eines Trainingsbilds, das ein Wechselverkehrszeichen zeigt, durch Ändern des Leuchtzustands von ein oder mehreren Leuchtelementen des Wechselverkehrszeichens.In 702 additional training images are augmented by augmenting training images that show traffic signs. This is done by augmenting a training image that shows a traffic sign by partially covering the traffic sign and / or augmenting a training image that shows a variable message sign by changing the lighting state of one or more light elements of the variable message sign.

In 703 wird das neuronale Netzwerk basierend auf mindestens den augmentierten Trainingsbildern (beispielsweise zusammen mit zumindest einem Teil der Trainingsbilder aus dem Trainingsdatensatz) trainiert.In 703 the neural network is trained based on at least the augmented training images (for example, together with at least some of the training images from the training data set).

Gemäß verschiedenen Ausführungsbeispielen wird in anderen Worten ein Trainingsdatensatz für ein neuronales Netzwerk in Hinblick auf eine höhere Robustheit bezüglich Wechselverkehrszeichen und/oder verdeckten Verkehrszeichen durch zusätzliche Trainingsbilder erweitert. Dazu werden Verkehrszeichen, die in den Trainingsbildern vorhanden sind, zufällig verdeckt und/oder bei Wechselverkehrszeichen Leuchtelemente zufällig „an- oder ausgeschaltet“, d.h. Pixelwerte entsprechend manipuliert, entsprechend einem gepulsten Betrieb des Wechselverkehrszeichens wie mit Bezug auf 4 erläutert.In other words, according to various exemplary embodiments, a training data set for a neural network is expanded with additional training images with regard to greater robustness with regard to variable message signs and / or concealed traffic signs. For this purpose, traffic signs that are present in the training images are randomly covered and / or, in the case of variable message signs, light elements are randomly “switched on or off”, ie pixel values are manipulated accordingly, corresponding to a pulsed operation of the variable message sign as with reference to 4th explained.

Das neuronale Netzwerk soll beispielsweise zur Klassifizierung von Verkehrszeichen dienen, d.h. soll erkennen, was ein Verkehrszeichen aussagen soll, oder auch zur vorhergehenden Erkennung von Verkehrszeichen in einem Bild, also dem Feststellen, dass ein Verkehrszeichen vorhanden ist, z.B. entsprechend einer semantischen Segmentierung des Bildes.The neural network is intended, for example, to classify traffic signs, i.e. is intended to recognize what a traffic sign is supposed to say, or also for the previous recognition of traffic signs in an image, i.e. to determine that a traffic sign is present, e.g. according to a semantic segmentation of the image.

Gemäß verschiedenen Ausführungsformen wird in anderen Worten durch den Einsatz synthetischer Manipulation ein Trainingsdatensatz für ein oder mehrere neuronale Netzwerke um Verdeckungen und/oder nur teilweise aktive Leuchtelemente augmentiert. Dies erhöht die Robustheit der so von dem oder den neuronalen Netzwerk(en) gelernten Funktion.According to various embodiments, in other words, through the use of synthetic manipulation, a training data set for one or more neural networks is augmented by concealments and / or only partially active light elements. This increases the robustness of the function learned from the neural network (s) in this way.

Gemäß einer Ausführungsform wird eine (Trainings-)Vorrichtung oder (Trainings-) Anordnung bereitgestellt, die ein Verfahren wie mit Bezug auf 7 beschrieben ausführt. Außerdem wird gemäß einer Ausführungsform ein Fahrerassistenzsystem (z.B. aufweisend eine Fahrzeugsteuereinrichtung für das autonome Fahren) bereitgestellt, das ein wie mit Bezug auf 7 trainiertes neuronales Netzwerk verwendet.According to one embodiment, a (training) device or (training) arrangement is provided which has a method as with reference to FIG 7th described. In addition, according to one embodiment, a driver assistance system (for example having a vehicle control device for autonomous driving) is provided, which is as described with reference to FIG 7th trained neural network used.

Die Trainingsvorrichtung oder Trainingsanordnung und das Fahrerassistenzsystem können mittels ein oder mehrerer Schaltungen implementiert werden. In einer Ausführungsform kann eine „Schaltung“ als jede Art von Logik-implementierender Entität verstanden werden, welche Hardware, Software, Firmware oder eine Kombination davon sein kann. Daher kann in einer Ausführungsform eine „Schaltung“ eine hartverdrahtete Logikschaltung oder eine programmierbare Logikschaltung, wie beispielsweise ein programmierbarer Prozessor, zum Beispiel ein Mikroprozessor sein. Eine „Schaltung“ kann auch Software sein, die von einem Prozessor implementiert bzw. ausgeführt wird, zum Beispiel jede Art von Computerprogramm. Jede andere Art der Implementierung der jeweiligen Funktionen, die im Folgenden ausführlicher beschrieben werden, kann in Übereinstimmung mit einer alternativen Ausführungsform als eine „Schaltung“ verstanden werden.The training device or training arrangement and the driver assistance system can be implemented by means of one or more circuits. In one embodiment, a “circuit” can be understood as any type of logic implementing entity, which can be hardware, software, firmware, or a combination thereof. Thus, in one embodiment, a “circuit” may be a hardwired logic circuit or a programmable logic circuit such as a programmable processor, for example a microprocessor. A “circuit” can also be software that is implemented or executed by a processor, for example any type of computer program. Any other type of implementation of the respective functions, which are described in more detail below, may be understood as a “circuit” in accordance with an alternative embodiment.

Claims (13)

Verfahren zum Trainieren eines neuronalen Netzwerks, ausgeführt von einem oder von mehreren Prozessoren, das Verfahren aufweisend: • Bereitstellen eines Trainingsdatensatzes, der Trainingsbilder aufweist, die eine Fahrzeugumgebung aus der Sicht eines Fahrzeugs zeigen, wobei eine Mehrzahl der Trainingsbilder Verkehrszeichen zeigen; • Erzeugen von zusätzlichen Trainingsbildern durch Augmentieren von Trainingsbildern, die Verkehrszeichen zeigen durch o Augmentieren eines Trainingsbilds, das ein Verkehrszeichen zeigt, durch teilweises Überdecken des Verkehrszeichens und/oder o Augmentieren eines Trainingsbilds, das ein Wechselverkehrszeichen zeigt, durch Ändern des Leuchtzustands von ein oder mehreren Leuchtelementen des Wechselverkehrszeichens und • Trainieren des neuronalen Netzwerks basierend auf mindestens den augmentierten Trainingsbildern.Method for training a neural network, carried out by one or more processors, the method comprising: providing a training data set which has training images which show a vehicle environment from the perspective of a vehicle, with a plurality of the training images showing road signs; • Generation of additional training images by augmenting training images that show traffic signs by o augmenting a training image that shows a traffic sign by partially covering the traffic sign and / or o augmenting a training image that shows a variable message sign by changing the light status of one or more Luminous elements of the variable message sign and • training the neural network based on at least the augmented training images. Verfahren gemäß Anspruch 1, aufweisend Trainieren des neuronalen Netzwerks basierend auf den Trainingsbildern des Trainingsdatensatzes und den augmentierten Trainingsbildern.Procedure according to Claim 1 , comprising training the neural network based on the training images of the training data set and the augmented training images. Verfahren gemäß Anspruch 1 oder 2, aufweisend Erzeugen von zusätzlichen Trainingsbildern durch Augmentieren einer Vielzahl von Trainingsbildern, die Verkehrszeichen zeigen, durch teilweises Überdecken eines Verkehrszeichens und/oder Ändern des Leuchtzustands von ein oder mehreren Leuchtelementen eines Wechselverkehrszeichens.Procedure according to Claim 1 or 2 , comprising generating additional training images by augmenting a plurality of training images that show traffic signs, by partially covering a traffic sign and / or changing the lighting state of one or more lighting elements of a variable message sign. Verfahren gemäß einem der Ansprüche 1 bis 3, wobei das Ändern des Leuchtzustands von ein oder mehreren Leuchtelementen des Wechselverkehrszeichens aufweist, für jedes der ein oder mehreren Leuchtelemente, das Ändern von Pixelwerten von Pixeln, die das Leuchtelement darstellen, sodass die Pixel mit den geänderten Pixelwerten ein nicht-leuchtendes Leuchtelement darstellen, wenn die Pixel mit den ursprünglichen Pixelwerten ein leuchtendes Leuchtelement darstellen und sodass die Pixel mit den geänderten Pixelwerten ein leuchtendes Leuchtelement darstellen, wenn die Pixel mit den ursprünglichen Pixelwerten ein nicht-leuchtendes Leuchtelement darstellen.Method according to one of the Claims 1 to 3 , wherein changing the lighting state of one or more light-emitting elements of the variable message sign comprises, for each of the one or more light-emitting elements, changing pixel values of pixels that represent the light-emitting element, so that the pixels with the changed pixel values represent a non-light-emitting light-emitting element when the pixels with the original pixel values represent a luminous luminous element and so that the pixels with the changed pixel values represent a luminous luminous element when the pixels with the original pixel values represent a non-luminous luminous element. Verfahren gemäß einem der Ansprüche 1 bis 4, wobei die ein oder mehreren Leuchtelementen des Wechselverkehrszeichens, deren Leuchtzustand geändert wird, Leuchtelemente des Wechselverkehrszeichens sind, die gemäß dem von dem Wechselverkehrszeichen in dem Trainingsbild dargestellten Verkehrszeichen aktiv sind.Method according to one of the Claims 1 to 4th wherein the one or more light-emitting elements of the variable message sign, the light state of which is changed, are light-emitting elements of the variable message sign which are active according to the traffic sign represented by the variable message sign in the training image. Verfahren gemäß einem der Ansprüche 1 bis 5, wobei das teilweise Überdecken eines Verkehrszeichens in einem Trainingsbild das Überdecken eines zufällig ausgewählten Bereichs des Verkehrszeichens aufweist.Method according to one of the Claims 1 to 5 wherein partially covering a traffic sign in a training image comprises covering a randomly selected area of the traffic sign. Verfahren gemäß Anspruch 6, wobei das Überdecken des Verkehrszeichens ein Überdecken mit einer Textur aufweist, die eine Bewachsung darstellt.Procedure according to Claim 6 wherein the covering of the traffic sign comprises covering with a texture that represents vegetation. Verfahren gemäß einem der Ansprüche 1 bis 7, aufweisend Trainieren des neuronalen Netzwerks als Klassifikationsnetzwerk für Objekte in der Umgebung eines Fahrzeugs.Method according to one of the Claims 1 to 7th , comprising training the neural network as a classification network for objects in the vicinity of a vehicle. Verfahren gemäß einem der Ansprüche 1 bis 8, aufweisend Trainieren des neuronalen Netzwerks als Klassifikationsnetzwerk für Verkehrszeichen.Method according to one of the Claims 1 to 8th , comprising training the neural network as a classification network for traffic signs. Verfahren gemäß einem der Ansprüche 1 bis 9, aufweisend Trainieren eines weiteren neuronalen Netzwerks als Segmentierungsnetzwerk für Objekte in der Umgebung eines Fahrzeugs basierend auf mindestens den augmentierten Trainingsbildern.Method according to one of the Claims 1 to 9 , comprising training a further neural network as a segmentation network for objects in the vicinity of a vehicle based on at least the augmented training images. Verfahren gemäß Anspruch 10, aufweisend gemeinsames Trainieren des neuronalen Netzwerks und des weiteren neuronalen Netzwerks basierend auf mindestens den augmentierten Trainingsbildern, wobei dem neuronalen Netzwerk Teilbilder der augmentierten Trainingsbilder basierend auf der Segmentierung durch das weitere neuronale Netzwerk zugeführt werden.Procedure according to Claim 10 , having joint training of the neural network and the further neural network based on at least the augmented training images, with partial images of the augmented training images based on the segmentation by the further neural network being fed to the neural network. Vorrichtung, die eingerichtet ist, das Verfahren nach einem der Ansprüche 1 bis 11 auszuführen.Device which is set up, the method according to one of the Claims 1 to 11 execute. Fahrzeug, aufweisend: • zumindest einen Bildgebungssensor, der eingerichtet ist, um digitale Bilddaten bereitzustellen; und • ein Fahrassistenzsystem, dass ein nach einem der Ansprüche 1 bis 11 trainiertes neuronales Netzwerk aufweist, wobei das neuronale Netzwerk eingerichtet ist, um die digitalen Bilddaten zu klassifizieren und wobei das Fahrassistenzsystem eingerichtet ist, um das Fahrzeug basierend auf den klassifizierten digitalen Bilddaten zu steuern.Vehicle, comprising: • at least one imaging sensor which is set up to provide digital image data; and • a driver assistance system that one after one of the Claims 1 to 11 having trained neural network, wherein the neural network is set up to classify the digital image data and wherein the driver assistance system is set up to control the vehicle based on the classified digital image data.
DE102019209560.7A 2019-06-28 2019-06-28 Apparatus and method for training a neural network Pending DE102019209560A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102019209560.7A DE102019209560A1 (en) 2019-06-28 2019-06-28 Apparatus and method for training a neural network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102019209560.7A DE102019209560A1 (en) 2019-06-28 2019-06-28 Apparatus and method for training a neural network

Publications (1)

Publication Number Publication Date
DE102019209560A1 true DE102019209560A1 (en) 2020-12-31

Family

ID=73747163

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102019209560.7A Pending DE102019209560A1 (en) 2019-06-28 2019-06-28 Apparatus and method for training a neural network

Country Status (1)

Country Link
DE (1) DE102019209560A1 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102020212751A1 (en) 2020-10-08 2022-04-14 Robert Bosch Gesellschaft mit beschränkter Haftung Method and device for training and operating a classifier for use in an electric or pneumatic screwdriver
DE102020213080A1 (en) 2020-10-16 2022-04-21 Robert Bosch Gesellschaft mit beschränkter Haftung Method and device for training and operating a classifier for use in an electric or pneumatic screwdriver
DE102021207258B3 (en) 2021-07-08 2022-09-29 Volkswagen Aktiengesellschaft Method for automatically controlling at least one vehicle function of a vehicle and notification system for a vehicle
WO2023016798A1 (en) * 2021-08-12 2023-02-16 Robert Bosch Gmbh Method for representing a rear environment of a mobile platform coupled to a trailer
DE102021131930A1 (en) 2021-12-03 2023-06-07 Connaught Electronics Ltd. Gesture recognition in traffic
WO2024100080A1 (en) 2022-11-10 2024-05-16 Robert Bosch Gmbh Method for testing the robustness of a machine learning algorithm for classifying objects in an environment of a motor vehicle
DE102022212455A1 (en) 2022-11-22 2024-05-23 Robert Bosch Gesellschaft mit beschränkter Haftung Method for training a machine learning algorithm
DE102023201104A1 (en) 2023-02-10 2024-08-14 Robert Bosch Gesellschaft mit beschränkter Haftung Method for generating additional training data for training a machine learning algorithm

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102020212751A1 (en) 2020-10-08 2022-04-14 Robert Bosch Gesellschaft mit beschränkter Haftung Method and device for training and operating a classifier for use in an electric or pneumatic screwdriver
DE102020213080A1 (en) 2020-10-16 2022-04-21 Robert Bosch Gesellschaft mit beschränkter Haftung Method and device for training and operating a classifier for use in an electric or pneumatic screwdriver
DE102021207258B3 (en) 2021-07-08 2022-09-29 Volkswagen Aktiengesellschaft Method for automatically controlling at least one vehicle function of a vehicle and notification system for a vehicle
WO2023016798A1 (en) * 2021-08-12 2023-02-16 Robert Bosch Gmbh Method for representing a rear environment of a mobile platform coupled to a trailer
DE102021131930A1 (en) 2021-12-03 2023-06-07 Connaught Electronics Ltd. Gesture recognition in traffic
WO2024100080A1 (en) 2022-11-10 2024-05-16 Robert Bosch Gmbh Method for testing the robustness of a machine learning algorithm for classifying objects in an environment of a motor vehicle
DE102022211904A1 (en) 2022-11-10 2024-05-16 Robert Bosch Gesellschaft mit beschränkter Haftung Method for testing the robustness of a machine learning algorithm for classifying objects in a motor vehicle environment
DE102022212455A1 (en) 2022-11-22 2024-05-23 Robert Bosch Gesellschaft mit beschränkter Haftung Method for training a machine learning algorithm
DE102023201104A1 (en) 2023-02-10 2024-08-14 Robert Bosch Gesellschaft mit beschränkter Haftung Method for generating additional training data for training a machine learning algorithm

Similar Documents

Publication Publication Date Title
DE102019209560A1 (en) Apparatus and method for training a neural network
EP2368216B1 (en) Method and device for analyzing surrounding objects and/or surrounding scenes, such as for object and scene class segmenting
DE102020113280A1 (en) AUTOMATIC GENERATION OF BASIC TRUTH DATA FOR TRAINING OR RE-TRAINING ONE OR MORE MODELS FOR MACHINE LEARNING
WO2019001649A1 (en) Knowledge transfer between different deep learning architectures
DE102011055458A1 (en) Adaptation technology for the detection of a free lane by means of reliable local model calibration
DE112010002232T5 (en) Semantic scene segmentation using random multinominal logit (RML)
DE112020000448T5 (en) CAMERA SELF CALIBRATION NETWORK
EP3828758A1 (en) Object classification method, object classification circuit, motor vehicle
DE102018203583A1 (en) Method, driver assistance system and motor vehicle for the prediction of a position or a trajectory by means of a graph-based environment model
DE102021111096A1 (en) VISUAL BEHAVIOR GUIDED OBJECT DETECTION
DE102020128978A1 (en) TRAINING DEEP NEURAL NETWORKS WITH SYNTHETIC IMAGES
EP3748454B1 (en) Method and device for automatically executing a control function of a vehicle
DE102018113621A1 (en) A method of training a convolutional neural network for processing image data for use in a driving support system
EP4078238A1 (en) Method and device for making sensor data more robust against adverse disruptions
DE102021104178A1 (en) DYNAMICALLY ROUTED FIELD DISCRIMINATOR
DE102021200300A1 (en) MODIFYING PARAMETER SETS THAT CHARACTERIZE A COMPUTER VISION MODEL
DE102019220335A1 (en) SEMANTIC SEGMENTATION USING DRIVER ATTENTION INFORMATION
DE102018129871A1 (en) Train a deep convolutional neural network to process sensor data for use in a driving support system
DE102019215912A1 (en) METHOD AND DEVICE FOR COMPUTER-IMPLEMENTED OPERATION OF A NEURONAL NETWORK
DE102020208765A1 (en) Image classifier with variable receptive fields in convolutional layers
DE102019217952A1 (en) Method and device for providing a training data set for training an AI function on an unknown data domain
DE102019216184A1 (en) Method for the robustification of a neural network against adversarial disturbances
DE102019217951A1 (en) Method and apparatus for determining a domain distance between at least two data domains
DE102019208864A1 (en) Detection system, working procedures and training procedures
DE102018221625A1 (en) Transfer of additional information between camera systems

Legal Events

Date Code Title Description
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06N0003020000

Ipc: G06N0003080000

R163 Identified publications notified
R012 Request for examination validly filed
R016 Response to examination communication