DE102019209560A1 - Apparatus and method for training a neural network - Google Patents
Apparatus and method for training a neural network Download PDFInfo
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
- G06F18/24133—Distances to prototypes
- G06F18/24137—Distances to cluster centroïds
- G06F18/2414—Smoothing the distance, e.g. radial basis function networks [RBFN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local 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/443—Local 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/449—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
- G06V10/451—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
- G06V10/454—Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
- G06V20/582—Recognition 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations 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.
-
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
Im Beispiel von
Die Fahrzeugsteuereinrichtung
Beispielsweise weist die gespeicherte Steuerungssoftware (Computerprogramm-) Anweisungen auf, die, wenn der Prozessor sie ausgeführt, bewirken, dass der Prozessor
Die im Speicher
Die Fahrzeugsteuereinrichtung
Das Fahrzeug
Wie oben erwähnt erfolgt im Beispiel von
In diesem Beispiel beinhaltet das neuronale Netzwerk
Es ist zu beachten, dass das neuronale Netzwerk
Die Eingabedaten entsprechen der Eingabeschicht
Die Eingabe der Eingangsschicht
Den Knoten
Die verborgenen Schichten
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
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
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
Diese Ausgabe der Ausgabeschicht
Um ein Bild, beispielsweise ein Verkehrszeichen, das das Bild zeigt, klassifizieren zu können, muss das neuronale Netzwerk
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
Die Trainingsanordnung
Die Eingangsschicht
Ein Selektor (d.h. eine Auswahlfunktion) 309 entscheidet, welche Eingangsdaten der Eingangsschicht
Der Trainingsdatensatz
Der Testdatensatz
Sobald das neuronale Netzwerk erfolgreich trainiert wurde, kann es Bilder klassifizieren, die von der Bildquelle
Ein weiterer Selektor
Die Trainingssteuerung
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
In jeder Iteration des Trainings aktualisiert die Trainingssteuerung
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
Das neuronale Netzwerk
Um mit einem maschinellen Lernverfahren (z.B. mittels der Anordnung
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.
Das Wechselverkehrszeichen
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
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.
Das Verkehrsschild
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
Das Verkehrszeichen-Klassifizierungssystem
Das erste neuronale Netzwerk
Das Verkehrszeichen-Klassifizierungssystem
Die vom Ausschneideblock
Im Betrieb erhält die Anordnung aus erstem neuronalen Netzwerk
Für das Training der neuronalen Netzwerke
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
Der Augmentierungsblock
Der Augmentierungsblock
Das Training des ersten neuronalen Netzwerks
Das Training des zweiten neuronalen Netzwerks
Beispielsweise wird das zweite neuronale Netzwerk
- • 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).
- • 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
Zusammenfassend wird gemäß verschiedenen Ausführungsformen ein Verfahren bereitgestellt, wie es in
In
In
In
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
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
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)
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)
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 |
-
2019
- 2019-06-28 DE DE102019209560.7A patent/DE102019209560A1/en active Pending
Cited By (9)
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 |