WO2022043203A1 - Training eines generators zur erzeugung realistischer bilder mit einem semantisch segmentierenden diskriminator - Google Patents

Training eines generators zur erzeugung realistischer bilder mit einem semantisch segmentierenden diskriminator Download PDF

Info

Publication number
WO2022043203A1
WO2022043203A1 PCT/EP2021/073121 EP2021073121W WO2022043203A1 WO 2022043203 A1 WO2022043203 A1 WO 2022043203A1 EP 2021073121 W EP2021073121 W EP 2021073121W WO 2022043203 A1 WO2022043203 A1 WO 2022043203A1
Authority
WO
WIPO (PCT)
Prior art keywords
semantic
image
training
discriminator
images
Prior art date
Application number
PCT/EP2021/073121
Other languages
English (en)
French (fr)
Inventor
Edgar Schoenfeld
Vadim Sushko
Dan Zhang
Anna Khoreva
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 CN202180052034.3A priority Critical patent/CN116113989A/zh
Priority to US17/911,987 priority patent/US20230134062A1/en
Publication of WO2022043203A1 publication Critical patent/WO2022043203A1/de

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/001Texturing; Colouring; Generation of texture or colour
    • 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/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/143Segmentation; Edge detection involving probabilistic approaches, e.g. Markov random field [MRF] modelling
    • 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/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • 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/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/776Validation; Performance evaluation
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/70Labelling scene content, e.g. deriving syntactic or semantic representations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Definitions

  • the present invention relates to the training of a realistic image generator, which in turn can be used to train image classifiers.
  • Corresponding image classifiers have to be trained with training images that were recorded in a large number of traffic situations. Obtaining the training images is comparatively difficult and expensive. Traffic situations that rarely occur in reality can be so underrepresented in the data set with the training images that the image classifier cannot optimally learn how to classify them correctly. Furthermore, a lot of manual work is necessary to “label” the training images or their pixels with the associated target class assignments (“ground truth”). Therefore, synthetically generated training data generated with a generator based on Generative Adversarial Networks, GAN, is also used. Such a generator for radar data is known from DE 10 2018 204494 B3.
  • the concept of the image is not limited to static camera images, but also includes, for example, video images, radar images, lidar images and ultrasound images.
  • the images to be generated can be realistic, for example in relation to a given application.
  • “realistic” can mean in particular that the images can be used in downstream processing, such as when training an image classifier, in the same way as images recorded with physical sensors.
  • realistically generated images can be used, for example, to enrich a stock of real training images recorded with sensors and then “labeled” for an image classifier.
  • the images to be generated are therefore referred to below as “realistic images” or as “realistically generated images” in the interest of better legibility.
  • the generator creates the realistic images from a semantic map.
  • This semantic map assigns a semantic meaning of an object to which this pixel belongs to each pixel of the realistic image to be generated. So not just any random realistic image is generated, but one that reflects the situation given in the semantic map.
  • the semantic map can designate a traffic situation with different lanes, lane boundaries, traffic signs, road users and other objects.
  • Real training images and associated semantic training maps which assign a semantic meaning to each pixel of the respective training image, are provided for the method. There is therefore a semantic training map for every real training image. Conversely, there is at least one real training image for each semantic training map because, for example, a semantically identical situation with different exposures or other imaging parameters may have been recorded.
  • the semantic training maps can be obtained, for example, by manually labeling the real training images.
  • realistic images are generated from at least one semantic training map.
  • At least one real training image is determined for the same at least one semantic training map.
  • a discriminator is used to train the generator. For this purpose, the realistic images generated by the generator and the at least one real training image are fed to the discriminator.
  • the discriminator is designed to determine a semantic segmentation of the image fed to it, which assigns a semantic meaning to each pixel of this image.
  • This semantic segmentation determined by the discriminator is used to evaluate whether the image fed to the discriminator is a realistically generated image or a real training image.
  • This evaluation can also take place in the discriminator itself and/or in a functional unit separate from it. The evaluation does not have to be trainable, but can also be carried out according to a static rule.
  • the realistic images generated by the generator, the at least one real training image and the at least one mixed image are fed to the discriminator.
  • Generator parameters, which characterize the behavior of the generator, are optimized with the aim that the realistic images generated by the generator are misclassified as real images by the discriminator.
  • discriminator parameters that characterize the behavior of the discriminator are optimized with the aim of Improve accuracy in distinguishing between realistically generated images and real images.
  • the discriminator is thus trained such that after the evaluation of the semantic segmentation supplied by it, a realistically generated image is classified as a realistically generated image and a real training image is classified as a real training image.
  • Said binary distinction is always related globally to the whole picture.
  • the semantic segmentation takes place on the local level of the individual pixels.
  • partial areas of the image can be unequivocally identified by the discriminator as parts of the real training image, while other partial areas of the image are identified as parts of a realistically generated image.
  • Such contradictions only have to be resolved in the subsequent evaluation.
  • an image may be declared a realistically rendered image in response to a portion of its pixels identified as part of a realistically rendered image exceeding a predetermined threshold.
  • an image may be classified as a real training image in response to a portion of its pixels identified as part of a real training image exceeding a predetermined threshold. Any gradations in between are possible. For example, if the discriminator identifies 60% of the pixels as part of a real training image and 40% of the pixels as part of an image realistically generated by the generator, the image fed to the discriminator can be scored 0.6 as a real training image and scored 0 ,4 can be evaluated as a realistically generated image by the generator.
  • having the semantic segmentation take place at the pixel level encourages the discriminator to learn fine details of the images fed to it, down to the order of a pixel or a few pixels, and to detect spatial correspondence with the semantic training maps. Based on this spatial correspondence, it can be tested on any size scale to what extent the discriminator learns distinguishing semantic features of the images. If, on the other hand, a mere global statement from the discriminator is required, the cost function used for the optimization in this regard “does not matter” from which source the discriminator obtains this statement in detail. The detailed work at the pixel level is therefore not "rewarded".
  • the training of a discriminator designed for semantic segmentation can generally be better monitored in the present application, since the maximum information content of the given semantic training maps can be used directly as "ground truth" for the training of the discriminator.
  • the more existing labeled training data that can be used during training the greater the accuracy with which the fully trained discriminator works, while the costs for labeling the training data remain the same.
  • the feedback from the semantically segmented discriminator makes it possible to train the generator to generate realistic images from two-dimensional noise covering the entire input image without additional spatial information.
  • the "ground truth" available for training the discriminator is thus made usable, so to speak, in a roundabout way for training the generator.
  • the possible semantic meanings in the semantic segmentation supplied by the discriminator include at least the semantic meanings of the semantic training cards and a classification as part of a realistically generated one picture.
  • the semantic meanings of the semantic training maps can represent, for example, N discrete classes of objects that occur in the real training images. Classification as part of a realistically generated image can be added as a further class N+1.
  • the discriminator parameters are optimized such that a cost function in which, for all pixels and all possible semantic meanings, classification scores of the discriminator for the respective semantic meaning are weighted with binary indicators as to whether this semantic meaning is evident from the semantic training cards is correct, are summed, assumes an optimal value.
  • a cost function maps the cross-entropy of the N+1 classes and thus combines a number of decisions of the discriminator, which corresponds to the number of pixels in the images, to an overall judgment in a statistically well-motivated manner.
  • E denotes the formation of an expected value over all pairs of real images x and semantic training maps t, or over all pairs of noise z sampled using a random distribution and semantic training maps t.
  • the semantic training maps t are three-dimensional tensors. Two dimensions represent the spatial coordinates i and j, which can reach up to the height H and the width W of the images.
  • the class c is then encoded at position i, j in the tensor t in the form of a “one-hot” vector along the third dimension, which only contains an entry 1 for class c and only zeros elsewhere.
  • the semantic meanings of the semantic training maps are weighted in the summation with the inverse of their frequency measured in the affected pixels. This takes into account the fact that the frequencies of the semantic meanings in real training images are usually very unequally distributed. For example, if the semantic meanings represent traffic signs, give way signs or speed limits occur much more frequently than, for example, warnings about level crossings or that a road leads to an unsecured bank. The weighting ensures that such rare but very important traffic signs are also adequately taken into account during training.
  • the weighting factor a c may have the form accept.
  • the generator can also be trained using a cost function LG.
  • This cost function LG can, for example, be modeled on the cost function LD for the discriminator and the shape accept.
  • a discriminator which contains an encoder-decoder arrangement with an encoder structure and a decoder structure.
  • the encoder structure translates an input image into an information-reduced representation in several processing layers.
  • the decoder structure further translates this information-reduced representation into an assignment of each pixel of the input image to a semantic meaning.
  • Encoder-decoder arrangements of this type are particularly well suited to determining semantic segmentations.
  • the discriminator has at least one direct connection between a processing layer of the encoder structure and a processing layer of the decoder structure, bypassing the information-reduced representation. A particularly relevant portion of the information from the encoder structure can then be selectively transferred to the decoder structure without having to pass the "bottleneck" of the maximum information-reduced representation.
  • an essential application of the training method described here is to enlarge a training data set for an image classifier and thus train the image classifier better overall, starting from a given training data set with real training images and associated target assignments to semantic meanings. Therefore, the invention also relates to a method for training an image classifier that assigns a semantic meaning to an input image, and/or pixels of this input image.
  • a generator is trained according to the method described above. With this trained generator, realistic images are generated from semantic maps. These semantic maps are then no longer limited to those semantic maps that were used to train the generator, but can describe any desired scenarios.
  • Semantic target meanings are determined from the semantic maps, onto which the trained image classifier is to map the realistic images in each case.
  • the target meanings can include, for example, belonging to one or more classes of a predefined classification. For example, if a vehicle is drawn in at a specific location in the semantic map, then the realistically generated image will contain a vehicle at this location. Therefore, the image classifier should assign at least this image area to the “Vehicle” class.
  • a training data set for the image classifier which contains real training images and associated semantic target meanings, is expanded to include the realistically generated images and associated semantic target meanings.
  • the image classifier is trained with the extended training data set.
  • the training data set can be enriched in this way, in particular, with realistic images of situations that were previously underrepresented in the training data set. In this way, the image classifier can be better able to handle these situations.
  • the invention therefore also relates to a further method.
  • an image classifier is trained as previously described using realistic images generated with the trained generator.
  • images that were recorded with at least one sensor carried by a vehicle are assigned a semantic meaning.
  • a control signal is determined from the semantic meaning determined by the image classifier. The vehicle is controlled with this control signal.
  • the improved training advantageously improves the accuracy of the semantic meaning provided by the image classifier. Therefore, the probability that the reaction of the vehicle triggered by the control signal is appropriate to the traffic situation shown in the images is advantageously increased.
  • the invention therefore also relates to a computer program with machine-readable instructions which, when executed on one or more computers, cause the computer or computers to carry out one of the methods described.
  • control devices for vehicles and embedded systems for technical devices that are also able to execute machine-readable instructions are also to be regarded as computers.
  • the invention also relates to a machine-readable data carrier and/or a download product with the computer program.
  • a downloadable product is a digital product that can be transmitted over a data network, i.e. can be downloaded by a user of the data network and that can be offered for sale in an online shop for immediate download, for example.
  • a computer can be equipped with the computer program, with the machine-readable data carrier or with the downloadable product. Further measures improving the invention are presented in more detail below together with the description of the preferred exemplary embodiments of the invention with the aid of figures.
  • FIG. 1 exemplary embodiment of the method 100 for training the generator 1
  • FIG. 2 illustration of a semantic segmentation 6 created by the discriminator 7;
  • FIG. 3 exemplary embodiment of the method 200 for training the image classifier 9
  • Figure 4 exemplary embodiment of the method 300 with a complete chain of effects up to the control of a vehicle 50.
  • FIG. 1 is a schematic flowchart of an exemplary embodiment of the method 100.
  • step 110 real training images 5 and associated semantic training maps 5a are provided.
  • the semantic training maps 5a assign a semantic meaning 4 to each pixel of the respective training image 5 .
  • step 120 realistic images 3 are generated from at least one semantic training map 5a using the generator 1 to be trained.
  • step 130 at least one real training image 5 is determined for the same at least one semantic training map 5a. For example, this can be that training image 5 through whose "labeling" the semantic training map 5a was created in the first place.
  • step 140 the realistic images 3 generated by the generator 1 and the at least one real training image 5, which belong to the same semantic training map 5a, are fed to a discriminator 7.
  • this discriminator 7 can have, for example, an encoder-decoder arrangement.
  • the encoder structure in this encoder-decoder arrangement translates an input image into an information-reduced representation in several successive processing layers.
  • the decoder structure in the encoder-decoder arrangement further translates this information-reduced representation into an assignment of each pixel of the input image to a semantic meaning (4).
  • at least one direct connection between a processing layer of the encoder structure and a processing layer of the decoder structure can be provided in the discriminator 7, for example, bypassing the information-reduced representation.
  • the discriminator 7 determines a semantic segmentation 6 of the image 3, 5 supplied to it, which assigns a semantic meaning 4 to each pixel of this image 3, 5.
  • the possible semantic meanings 4 in this semantic segmentation 6 can in particular include, for example, the semantic meanings 4 of the semantic training maps 5a and classification as part of a realistically generated image 3.
  • this does not yet constitute a final assessment of the entered image as a realistically generated image 3 or as a real training image 5.
  • This assessment which is identified by the reference sign 3 v 5 (“3 or 5”), is only made during the subsequent evaluation of the semantic segmentation 6 determined in step 160.
  • the number of pixels that are evaluated by the discriminator 7 as belonging to a real training image 5 can be compared with the number of pixels that are evaluated by the discriminator as belonging to a realistically generated image 3 and/or be set in relation.
  • step 170 generator parameters la, which characterize the behavior of generator 1, are optimized with the aim that generator 1 generated realistic images 3 are misclassified by the discriminator 7 as real images 5.
  • discriminator parameters 7a which characterize the behavior of discriminator 7, are optimized with the aim of improving the accuracy in distinguishing between realistically generated images 3 and real images 5.
  • the discriminator parameters 7a can be optimized in such a way that a special cost function assumes an optimal value.
  • this cost function 4 classification scores of the discriminator 7 for the respective semantic meaning 4 are summed up for all pixels and all possible semantic meanings. The summands in this sum are weighted with binary indicators as to whether this semantic meaning 4 is correct according to the semantic training cards (5a).
  • meanings 4 of the semantic training maps 5a can be weighted in the summation with the inverse of their frequency measured in the affected pixels.
  • the weight can also be set to zero. For example, there may be 5 pixels in training images that are not labeled and thus receive the placeholder label "Unknown". By setting the weight to zero, these pixels can then be completely ignored during optimization.
  • a conventional discriminator cannot easily do this because it does not calculate its cost function (“Loess function”) on the pixel level.
  • FIG. 2 illustrates the formation of a semantic segmentation 6 by the discriminator 7 using a simple example.
  • the semantic training map 5a contains areas with three different semantic meanings 4, namely sky 41, garden 42 and house 43. These semantic meanings were extracted by "labeling" a real training image 5 showing a sunny sky 11, a house 12 and a garden 13 contains.
  • a realistic image 3 is generated from the semantic training map 5a with the generator 1 .
  • This realistic image 3 contains a rainy sky 11', a different house 12' than in the real training image 5, but the same garden 13 as in the real training image 5.
  • the discriminator 7 processes the realistic image 3 into a semantic segmentation 6.
  • the semantic meaning 41 “sky” is assigned to the rainy sky 11'.
  • the garden 13 is assigned the semantic meaning 42 "garden”.
  • the house 12′ which has changed compared to the real training image 5, is assigned the semantic meaning 44 “part of a realistically generated image 3”.
  • the decision as to whether a real image 5 or a realistically generated image 3 is present essentially takes place at the local pixel level.
  • the desired decision 3 v 5 as to whether the image is to be classified as a real image 5 or as a realistically generated image 3 can be obtained in a variety of ways with the subsequent evaluation 160 . If this evaluation 160 is based on the majority of the pixels, then the image can pass as a real image 5 because the sky 11' identified as sky and the garden 13 identified as garden together occupy more pixels than the modified house 12'. However, the evaluation 160 can also be focused, for example, on whether the image contains an object with the semantic meaning 43 “house” at the expected location, regardless of a garden, a sky or other accessories. In this case, the image can be recognized as realistically generated image 3 .
  • cost function contributions that relate to semantic meanings 41-43 occurring in the real image and cost function contributions that relate to the semantic meaning 44" can also be used, for example. part of a realistically generated image 3", averaged or combined in some other way.
  • FIG. 3 is a schematic flowchart of an exemplary embodiment of the method 200 for training an image classifier 9.
  • a generator 1 is trained using the method 100 described above.
  • realistic images 3 are generated from semantic maps 2 with the trained generator 1.
  • the semantic maps 2 used in each case become in Step 230 determines semantic target meanings onto which the image classifier 9 is to map the realistic images 3 or pixels thereof.
  • FIG. 4 is a schematic flow chart of an embodiment of the
  • step 310 an image classifier 9 is trained using the method 200 described above. With this image classifier 9, in step 320, images 5 that were recorded with at least one sensor 50a carried by a vehicle 50 are assigned a semantic meaning 4. From this determined by the image classifier 9 semantic
  • a control signal 330a is determined in step 330.
  • the vehicle 50 is controlled with this control signal 330a.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Computational Linguistics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Image Analysis (AREA)

Abstract

Verfahren (100) zum Trainieren eines Generators (1) für Bilder (3) aus einer semantischen Karte (2, 5a), die jedem Pixel des Bildes (3) eine semantische Bedeutung (4) eines Objekts, zu dem dieses Pixel gehört, zuordnet, wobei - die vom Generator (1) erzeugten Bilder (3) und das mindestens eine reale Trainingsbild (5), die zur gleichen semantischen Trainingskarte (5a) gehören, werden einem Diskriminator (7) zugeführt (140), woraufhin der Diskriminator (7) eine semantische Segmentierung (6) des ihm zugeführten Bildes (3, 5) ermittelt (150), die jedem Pixel dieses Bildes (3, 5) eine semantische Bedeutung (4) zuordnet; - aus der vom Diskriminator (7) ermittelten semantischen Segmentierung (6) wird ausgewertet (160), ob das dem Diskriminator (7) zugeführte Bild (3, 5) ein erzeugtes Bild (3) oder ein reales Trainingsbild (5) ist.

Description

Beschreibung
Titel:
Training eines Generators zur Erzeugung realistischer Bilder mit einem semantisch segmentierenden Diskriminator
Die vorliegende Erfindung betrifft das Training eines Generators für realistische Bilder, die wiederum für das Training von Bildklassifikatoren verwendbar sind.
Stand der Technik
Etwa 90 % der Informationen, die ein menschlicher Fahrer zum Führen eines Fahrzeugs im Straßenverkehr benötigt, sind visuelle Informationen. Für das zumindest teilweise automatisierte Führen von Fahrzeugen ist es daher unabdingbar, Bilddaten gleich welcher Modalität, die bei der Überwachung des Fahrzeugumfelds aufgenommen werden, inhaltlich zutreffend auszuwerten. Von besonderer Bedeutung für die Fahraufgabe ist eine Klassifikation der Bilddaten dahingehend, welche verkehrsrelevanten Objekte in ihnen enthalten sind, wie beispielsweise andere Verkehrsteilnehmer, Fahrbahnmarkierungen, Hindernisse und Verkehrszeichen.
Entsprechende Bildklassifikatoren müssen mit Trainingsbildern, die in einer Vielzahl von Verkehrssituationen aufgenommen wurden, trainiert werden. Das Beschaffen der Trainingsbilder ist vergleichsweise schwierig und teuer. In der Realität selten vorkommende Verkehrssituationen können im Datensatz mit den Trainingsbildern zahlenmäßig so unterrepräsentiert sein, dass der Bildklassifikator ihre richtige Einordnung nicht optimal lernen kann. Weiterhin ist viel manuelle Arbeit notwendig, um die Trainingsbilder, bzw. deren Pixel, mit zugehörigen Soll- Klassenzuordnungen („ground truth“) zu „labeln“. Daher werden zusätzlich auch synthetisch erzeugte Trainingsdaten verwendet, die mit einem Generator auf der Basis von Generative Adversarial Networks, GAN, erzeugt werden. Ein solcher Generator für Radardaten ist aus der DE 10 2018 204494 B3 bekannt.
Offenbarung der Erfindung
Im Rahmen der Erfindung wurde ein Verfahren zum Trainieren eines Generators für Bilder entwickelt.
Der Begriff des Bildes ist nicht auf statische Kamerabilder beschränkt, sondern umfasst beispielsweise auch Videobilder, Radarbilder, Lidar-Bilder und Ultraschallbilder.
Die zu erzeugenden Bilder können insbesondere beispielsweise in Bezug auf eine vorgegebene Anwendung realistisch sein. Hierbei kann „realistisch“ insbesondere bedeuten, dass sich die Bilder in einer nachgeschalteten Verarbeitung, wie beispielsweise beim Trainieren eines Bildklassifikators, in gleicher Weise nutzen lassen wie mit physikalischen Sensoren aufgenommene Bilder. Realistisch erzeugte Bilder können insbesondere beispielsweise genutzt werden, um einen Vorrat von realen, mit Sensoren aufgenommenen und anschließend „gelabelten“ Trainingsbildern für einen Bildklassifikator anzureichern. Daher werden die zu erzeugenden Bilder im Folgenden im Interesse einer besseren Lesbarkeit als „realistische Bilder“, bzw. als „realistisch erzeugte Bilder“, bezeichnet.
Der Generator erzeugt die realistischen Bilder aus einer semantischen Karte. Diese semantische Karte ordnet jedem Pixel des zu erzeugenden realistischen Bildes eine semantische Bedeutung eines Objekts, zu dem dieses Pixel gehört, zu. Es wird also nicht irgendein zufälliges realistisches Bild erzeugt, sondern eines, das die in der semantischen Karte vorgegebene Situation widerspiegelt. So kann die semantische Karte beispielsweise eine Verkehrssituation mit verschiedenen Fahrbahnen, Fahrbahnbegrenzungen, Verkehrszeichen, Verkehrsteilnehmern und weiteren Objekten bezeichnen. Für das Verfahren werden reale Trainingsbilder und zugehörige semantische Trainingskarten, die jedem Pixel des jeweiligen Trainingsbildes eine semantische Bedeutung zuordnen, bereitgestellt. Es gibt also zu jedem realen Trainingsbild eine semantische Trainingskarte. Umgekehrt gibt es zu jeder semantischen Trainingskarte mindestens ein reales Trainingsbild, denn es kann ja beispielsweise eine semantisch identische Situation mit unterschiedlichen Belichtungen oder anderen Abbildungsparametern aufgenommen worden sein. Die semantischen Trainingskarten können beispielsweise durch manuelles Labeln der realen Trainingsbilder erhalten werden.
Mit dem zu trainierenden Generator werden aus mindestens einer semantischen Trainingskarte realistische Bilder erzeugt. Zu der gleichen mindestens einen semantischen Trainingskarte wird mindestens ein reales Trainingsbild ermittelt. Zum Trainieren des Generators wird ein Diskriminator verwendet. Hierzu werden die vom Generator erzeugten realistischen Bilder und das mindestens eine reale Trainingsbild dem Diskriminator zugeführt.
Der Diskriminator ist dazu ausgebildet, eine semantische Segmentierung des ihm zugeführten Bildes zu ermitteln, die jedem Pixel dieses Bildes eine semantische Bedeutung zuordnet. Aus dieser vom Diskriminator ermittelten semantischen Segmentierung wird ausgewertet, ob das dem Diskriminator zugeführtes Bild ein realistisch erzeugtes Bild oder aber ein reales Trainingsbild ist. Diese Auswertung kann noch im Diskriminator selbst, und/oder in einer hiervon separaten Funktionseinheit, erfolgen. Die Auswertung muss nicht trainierbar sein, sondern kann auch nach einer statischen Vorschrift erfolgen.
Die vom Generator erzeugten realistischen Bilder, das mindestens eine reale Trainingsbild sowie das mindestens eine Mischbild werden dem Diskriminator zugeführt. Generator- Parameter, die das Verhalten des Generators charakterisieren, werden optimiert mit dem Ziel, dass die vom Generator erzeugten realistischen Bilder vom Diskriminator als reale Bilder fehlklassifiziert werden.
Gleichzeitig oder auch im Wechsel hiermit werden Diskriminator-Parameter, die das Verhalten des Diskriminators charakterisieren, optimiert mit dem Ziel, die Genauigkeit bei der Unterscheidung zwischen realistisch erzeugten Bildern und realen Bildern zu verbessern. Der Diskriminator wird also darauf trainiert, dass nach der Auswertung der von ihm gelieferten semantischen Segmentierung ein realistisch erzeugtes Bild als ein realistisch erzeugtes Bild klassifiziert wird und ein reales Trainingsbild als ein reales Trainingsbild klassifiziert wird.
Die Verwendung eines Diskriminators, der nicht nur binär zwischen realen Trainingsbildern einerseits und realistisch erzeugten Bildern andererseits unterscheidet, sondern eine vollständige semantische Segmentierung des ihm zugeführten Bildes liefert, hat verschiedene Vorteile.
Die besagte binäre Unterscheidung ist immer global auf das ganze Bild bezogen. Hingegen spielt sich die semantische Segmentierung auf der lokalen Ebene der einzelnen Pixel ab. Es können also beispielsweise Teilbereiche des Bildes vom Diskriminator zweifelsfrei als Teile des realen Trainingsbilds identifiziert werden, während andere Teilbereiche des Bildes als Teile eines realistisch erzeugten Bildes identifiziert werden. Erst in der nachgeschalteten Auswertung müssen derartige Widersprüche aufgelöst werden.
Beispielsweise kann ein Bild in Antwort darauf, dass ein als Teil eines realistisch erzeugten Bildes identifizierter Anteil seiner Pixel einen vorgegebenen Schwellwert überschreitet, als realistisch erzeugtes Bild gewertet werden. Umgekehrt kann ein Bild in Antwort darauf, dass ein als Teil eines realen Trainingsbildes identifizierter Anteil seiner Pixel einen vorgegebenen Schwellwert überschreitet, als reales Trainingsbild gewertet werden. Dazwischen sind beliebige Abstufungen möglich. Werden vom Diskriminator beispielsweise 60 % der Pixel als Teil eines realen Trainingsbildes und 40 % der Pixel als Teil eines vom Generator realistisch erzeugten Bildes identifiziert, kann das dem Diskriminator zugeführte Bild mit einem Score von 0,6 als reales Trainingsbild und mit einem Score von 0,4 als vom Generator realistisch erzeugtes Bild gewertet werden.
Daher ist es allgemein vorteilhaft, bei der Auswertung der semantischen Segmentierung die Anzahl der Pixel, die vom Diskriminator als zu einem realen Trainingsbild zugehörig gewertet werden, mit der Anzahl der Pixel, die vom Diskriminator als zu einem realistisch erzeugten Bild zugehörig gewertet werden, zu vergleichen und/oder ins Verhältnis zu setzen.
Indem die semantische Segmentierung auf der Ebene der Pixel stattfindet, wird der Diskriminator vorteilhaft dazu angeregt, feine Details der ihm zugeführten Bilder auf der Größenordnung von einem Pixel oder einigen wenigen Pixeln zu lernen und die räumliche Übereinstimmung mit den semantischen Trainingskarten zu erfassen. Anhand dieser räumlichen Übereinstimmung lässt sich auf beliebigen Größenskalen prüfen, inwieweit der Diskriminator unterscheidende semantische Merkmale der Bilder lernt. Wenn hingegen eine bloße globale Aussage des Diskriminators gefordert ist, ist es der diesbezüglich für die Optimierung verwendeten Kostenfunktion „egal“, aus welcher Quelle sich der Diskriminator diese Aussage im Einzelnen beschafft. Die Detailarbeit auf der Pixelebene wird also nicht „honoriert“.
Das Training eines auf semantische Segmentierung ausgelegten Diskriminators ist in der vorliegenden Anwendung generell besser überwachbar, da der maximale Informationsgehalt der gegebenen semantischen Trainingskarten unmittelbar als „ground truth“ für das Training des Diskriminators herangezogen werden kann. Je mehr bereits vorhandene gelabelte Trainingsdaten beim Training genutzt werden können, desto größer ist die Genauigkeit, mit der der fertig trainierte Diskriminator arbeitet, bei gleichbleibenden Kosten für das Labeln der Trainingsdaten.
Weiterhin ermöglicht es das Feedback aus dem semantisch segmentierenden Diskriminator, den Generator dazu zu trainieren, auch aus einem das ganze eingegebene Bild bedeckenden zweidimensionalen Rauschen ohne räumliche Zusatzinformation realistische Bilder zu erzeugen. Die für das Training des Diskriminators vorhandene „ground truth“ wird also sozusagen auf Umwegen auch für das Training des Generators verwendbar gemacht.
In einer besonders vorteilhaften Ausgestaltung umfassen die möglichen semantischen Bedeutungen in der vom Diskriminator gelieferten semantischen Segmentierung mindestens die semantischen Bedeutungen der semantischen Trainingskarten sowie eine Einordnung als Teil eines realistisch erzeugten Bildes. Die semantischen Bedeutungen der semantischen Trainingskarten können beispielsweise N diskrete Klassen von Objekten repräsentieren, die in den realen Trainingsbildern vorkommen. Die Einordnung als Teil eines realistisch erzeugten Bildes kann sich als weitere Klasse N+l hierzu gesellen.
In einer besonders vorteilhaften Ausgestaltung werden die Diskriminator- Parameter dahingehend optimiert, dass eine Kostenfunktion, in der für alle Pixel und alle möglichen semantischen Bedeutungen Klassifikations-Scores des Diskriminators für die jeweilige semantische Bedeutung gewichtet mit binären Indikatoren, ob diese semantische Bedeutung ausweislich der semantischen Trainingskarten korrekt ist, summiert werden, einen optimalen Wert annimmt. Eine derartige Kostenfunktion bildet die Kreuzentropie der N+l Klassen ab und führt somit in statistisch gut motivierter Weise eine Anzahl von Entscheidungen des Diskriminators, die der Anzahl von Pixeln in den Bildern entspricht, zu einem Gesamturteil zusammen.
Ein Beispiel für eine derartige Kostenfunktion LD des Diskriminators ist
Figure imgf000008_0001
Hierin bezeichnet E die Bildung eines Erwartungswerts über alle Paare aus realen Bildern x und semantischen Trainingskarten t, bzw. über alle Paare aus anhand einer Zufallsverteilung gesampletem Rauschen z und semantischen Trainingskarten t. Die semantischen Trainingskarten t sind in diesem Beispiel dreidimensionale Tensoren. Zwei Dimensionen repräsentieren die räumlichen Koordinaten i und j, die bis zur Höhe H, bzw. zur Breite W, der Bilder reichen können. Die Klasse c ist dann an der Position i, j im Tensor t in Form eines „one- hot“ Vektors entlang der dritten Dimension kodiert, der nur für die Klasse c einen Eintrag 1 und ansonsten lediglich Nullen enthält.
Somit gibt tij,c für jede Konstellation aus Koordinaten i, j und Klasse c eine Wahrscheinlichkeit dafür an, dass die Zuordnung des Pixels zur Klasse c an diesem Ort i, j der „Wahrheit“ entspricht, und diese Wahrscheinlichkeit ist immer entweder 1 oder 0. Jedes Mal, wenn diese Wahrscheinlichkeit 1 ist, jedoch die vom Diskriminator ausgegebene Wahrscheinlichkeit D(x)i, j, c für die Zuordnung des Pixels i, j zur Klasse c nicht 1 ist (was beim Logarithmieren Null ergäbe), wächst die Kostenfunktion LD für diesen „Verstoß“ je nach „Schwere“ um einen kleineren oder größeren Strafbetrag. Dabei ist dieser Strafbetrag in dem oben genannten Beispiel mit einem klassenspezifischen Faktor ac gewichtet.
Für alle Pixel i, j, die in Wirklichkeit nicht zu einem realen Trainingsbild gehören, sind die Wahrscheinlichkeiten ti, j, c für alle Klassen c von 1 bis N gleich Null. Es handelt sich dann also um ein vom Generator G aus Rauschen z erzeugtes realistisches Bild G(z, t). Idealerweise sollen diese Pixel i, j vom Diskriminator mit einer Wahrscheinlichkeit D(G(z,t))ij,c=N+i von 1 als Pixel identifiziert werden, die zu einem realistisch erzeugten Bild gehören. Dies wird beim Logarithmieren zu Null. Jede Wahrscheinlichkeit kleiner 1 führt wieder dazu, dass das entsprechende Pixel einen Strafbetrag zur Kostenfunktion LD beisteuert.
In einer besonders vorteilhaften Ausgestaltung werden die semantischen Bedeutungen der semantischen Trainingskarten in der Summierung mit dem Inversen ihrer in betroffenen Pixeln gemessenen Häufigkeit gewichtet. Dies trägt dem Umstand Rechnung, dass die Häufigkeiten der semantischen Bedeutungen in realen Trainingsbildern üblicherweise sehr ungleich verteilt sind. Wenn die semantischen Bedeutungen beispielsweise Verkehrszeichen repräsentieren, so kommen Vorfahrtschilder oder Geschwindigkeitsbeschränkungen sehr viel häufiger vor als beispielsweise Warnungen vor Bahnübergängen oder davor, dass eine Straße auf ein ungesichertes Ufer zu führt. Die Gewichtung sorgt dafür, dass auch derartige selten vorkommende, aber dennoch sehr wichtige Verkehrszeichen beim Training angemessen berücksichtigt werden.
In dem oben genannten Beispiel kann der Gewichtungsfaktor ac beispielsweise die Form
Figure imgf000009_0001
annehmen.
Auch das Training des Generators kann anhand einer Kostenfunktion LG erfolgen. Diese Kostenfunktion LG kann beispielsweise der Kostenfunktion LD für den Diskriminator nachgebildet sein und die Form
Figure imgf000010_0001
annehmen.
In einer weiteren besonders vorteilhaften Ausgestaltung wird ein Diskriminator gewählt, der eine Encoder-Decoder-Anordnung mit einer Encoder- Struktur und einer Decoder- Struktur beinhaltet. Die Encoder-Struktur übersetzt ein eingegebenes Bild in mehreren Verarbeitungsschichten in eine informationsreduzierte Repräsentation. Die Decoder- Struktur übersetzt diese informationsreduzierte Repräsentation in eine Zuordnung jedes Pixels des eingegebenen Bildes zu einer semantischen Bedeutung weiter. Encoder- Decoder-Anordnungen dieser Art sind besonders gut geeignet, um semantische Segmentierungen zu ermitteln.
In einer weiteren vorteilhaften Ausgestaltung weist der Diskriminator mindestens eine Direktverbindung zwischen einer Verarbeitungsschicht der Encoder- Struktur und einer Verarbeitungsschicht der Decoder- Struktur unter Umgehung der informationsreduzierten Repräsentation auf. Dann kann selektiv ein besonders relevanter Anteil der Information aus der Encoder-Struktur in die Decoder- Struktur überführt werden, ohne den „Flaschenhals“ der maximal informationsreduzierten Repräsentation passieren zu müssen. Der Diskriminator erhält hierdurch eine „U-Net“-Architektur. Er führt in kohärenter Weise globale und lokale Information, die er durch den besagten „Flaschenhals“ oder auch über besagte Direktverbindungen erhalten hat, zusammen.
Wie zuvor erläutert, besteht eine wesentliche Anwendung des hier beschriebenen Trainingsverfahrens darin, einen Trainingsdatensatz für einen Bildklassifikator zu vergrößern und den Bildklassifikator so ausgehend von einem vorgegebenen Trainingsdatensatz mit realen Trainingsbildern und zugehörigen Soll-Zuordnungen zu semantischen Bedeutungen insgesamt besser zu trainieren. Daher bezieht sich die Erfindung auch auf ein Verfahren zum Trainieren eines Bildklassifikators, der ein eingegebenes Bild, und/oder Pixel dieses eingegebenen Bildes, einer semantischen Bedeutung zuordnet. Bei diesem Verfahren wird ein Generator nach dem zuvor beschriebenen Verfahren trainiert. Mit diesem trainierten Generator werden aus semantischen Karten realistische Bilder erzeugt. Diese semantischen Karten sind dann nicht mehr auf diejenigen semantischen Karten beschränkt, die zum Training des Generators verwendet wurden, sondern können beliebige gewünschte Szenerien beschreiben.
Aus den semantischen Karten werden semantische Soll-Bedeutungen ermittelt, auf die der trainierte Bildklassifikator die realistischen Bilder jeweils abbilden soll. Die Soll-Bedeutungen können insbesondere beispielsweise eine Zugehörigkeit zu einer oder mehreren Klassen einer vorgegebenen Klassifikation umfassen. Wenn beispielsweise in der semantischen Karte an einem bestimmten Ort ein Fahrzeug eingezeichnet ist, dann wird das realistisch erzeugte Bild an diesem Ort ein Fahrzeug enthalten. Daher soll der Bildklassifikator zumindest diesen Bildbereich der Klasse „Fahrzeug“ zuordnen.
Ein Trainingsdatensatz für den Bildklassifikator, der reale Trainingsbilder und zugehörige semantische Soll-Bedeutungen enthält, wird um die realistisch erzeugten Bilder und zugehörigen semantischen Soll-Bedeutungen erweitert. Der Bildklassifikator wird mit dem erweiterten Trainingsdatensatz trainiert.
Wie zuvor erläutert, kann der Trainingsdatensatz auf diese Weise insbesondere um realistische Bilder von Situationen bereichert werden, die zuvor in dem Trainingsdatensatz unterrepräsentiert waren. Auf diese Weise kann der Bildklassifikator besser in die Lage versetzt werden, diese Situationen zu handhaben.
Beispielsweise sind Trainingsbilder von selten, aber gefährlichen Verkehrssituationen häufig schwer erhältlich. Beispielsweise können Nebel, extremer Schneefall oder Glatteis, die wesentlicher Bestandteil der Situation sind, nur selten vorliegen. Andere Teile der Situation, wie etwa zwei Fahrzeuge auf Kollisionskurs, sind möglicherweise zu gefährlich, um sie mit realen Fahrzeugen nachzustellen. Daher bezieht sich die Erfindung auch auf ein weiteres Verfahren. Bei diesem Verfahren wird ein Bildklassifikator, wie zuvor beschrieben, unter Nutzung von mit dem trainierten Generator erzeugten realistischen Bildern trainiert. Mit diesem trainierten Bildklassifikator werden Bilder, die mit mindestens einem von einem Fahrzeug mitgeführten Sensor aufgenommen wurden, einer semantischen Bedeutung zugeordnet. Aus der vom Bildklassifikator ermittelten semantischen Bedeutung wird ein Ansteuersignal ermittelt. Das Fahrzeug wird mit diesem Ansteuersignal angesteuert.
Durch das verbesserte Training ist die Genauigkeit der vom Bildklassifikator gelieferten semantischen Bedeutung vorteilhaft verbessert. Daher ist die Wahrscheinlichkeit, dass die durch das Ansteuersignal ausgelöste Reaktion des Fahrzeugs der in den Bildern gezeigten Verkehrssituation angemessen ist, vorteilhaft erhöht.
Die Verfahren können insbesondere ganz oder teilweise computerimplementiert sein. Daher bezieht sich die Erfindung auch auf ein Computerprogramm mit maschinenlesbaren Anweisungen, die, wenn sie auf einem oder mehreren Computern ausgeführt werden, den oder die Computer dazu veranlassen, eines der beschriebenen Verfahren auszuführen. In diesem Sinne sind auch Steuergeräte für Fahrzeuge und Embedded-Systeme für technische Geräte, die ebenfalls in der Lage sind, maschinenlesbare Anweisungen auszuführen, als Computer anzusehen.
Ebenso bezieht sich die Erfindung auch auf einen maschinenlesbaren Datenträger und/oder auf ein Downloadprodukt mit dem Computerprogramm. Ein Downloadprodukt ist ein über ein Datennetzwerk übertragbares, d.h. von einem Benutzer des Datennetzwerks downloadbares, digitales Produkt, das beispielsweise in einem Online-Shop zum sofortigen Download feilgeboten werden kann.
Weiterhin kann ein Computer mit dem Computerprogramm, mit dem maschinenlesbaren Datenträger bzw. mit dem Downloadprodukt ausgerüstet sein. Weitere, die Erfindung verbessernde Maßnahmen werden nachstehend gemeinsam mit der Beschreibung der bevorzugten Ausführungsbeispiele der Erfindung anhand von Figuren näher dargestellt.
Ausführungsbeispiele
Es zeigt:
Figur 1 Ausführungsbeispiel des Verfahrens 100 zum Trainieren des Generators 1;
Figur 2 Veranschaulichung einer vom Diskriminator 7 erstellten semantischen Segmentierung 6;
Figur 3 Ausführungsbeispiel des Verfahrens 200 zum Trainieren des Bildklassifikators 9;
Figur 4 Ausführungsbeispiel des Verfahrens 300 mit vollständiger Wirkkette bis zum Ansteuern eines Fahrzeugs 50.
Figur 1 ist ein schematisches Ablaufdiagramm eines Ausführungsbeispiels des Verfahrens 100. In Schritt 110 werden reale Trainingsbilder 5 sowie zugehörige semantische Trainingskarten 5a bereitgestellt. Die semantischen Trainingskarten 5a ordnen jedem Pixel des jeweiligen Trainingsbildes 5 eine semantische Bedeutung 4 zu.
In Schritt 120 werden aus mindestens einer semantischen Trainingskarte 5a mit dem zu trainierenden Generator 1 realistische Bilder 3 erzeugt. In Schritt 130 wird zu der gleichen mindestens einen semantischen Trainingskarte 5a mindestens ein reales Trainingsbild 5 ermittelt. Dies kann beispielsweise dasjenige Trainingsbild 5 sein, durch dessen „Labeln“ die semantische Trainingskarte 5a überhaupt erst entstanden ist. In Schritt 140 werden die vom Generator 1 erzeugten realistischen Bilder 3 und das mindestens eine reale Trainingsbild 5, die zur gleichen semantischen Trainingskarte 5a gehören, einem Diskriminator 7 zugeführt. Dieser Diskriminator 7 kann gemäß Block 141 insbesondere beispielsweise eine Encoder-Decoder- Anordnung aufweisen. Die Encoder-Struktur in dieser Encoder-Decoder- Anordnung übersetzt ein eingegebenes Bild in mehreren sukzessiven Verarbeitungsschichten in eine informationsreduzierte Repräsentation. Die Decoder-Struktur in der Encoder-Decoder-Anordnung übersetzt diese informationsreduzierte Repräsentation in eine Zuordnung jedes Pixels des eingegebenen Bildes zu einer semantischen Bedeutung (4) weiter. Gemäß Block 141a kann insbesondere beispielsweise in dem Diskriminator 7 mindestens eine Direktverbindung zwischen einer Verarbeitungsschicht der Encoder- Struktur und einer Verarbeitungsschicht der Decoder-Struktur unter Umgehung der informationsreduzierten Repräsentation vorgesehen sein.
Der Diskriminator 7 ermittelt in Schritt 150 eine semantische Segmentierung 6 des ihm zugeführten Bildes 3, 5, die jedem Pixel dieses Bildes 3, 5 eine semantische Bedeutung 4 zuordnet. Die möglichen semantischen Bedeutungen 4 in dieser semantischen Segmentierung 6 können gemäß Block 151 insbesondere beispielsweise die semantischen Bedeutungen 4 der semantischen Trainingskarten 5a sowie eine Einordnung als Teil eines realistisch erzeugten Bildes 3 umfassen.
Hierin liegt aber noch keine abschließende Beurteilung des eingegebenen Bildes als realistisch erzeugtes Bild 3 oder als reales Trainingsbild 5. Diese Beurteilung, die mit dem Bezugszeichen 3 v 5 („3 oder 5“) bezeichnet ist, wird erst bei der anschließenden Auswertung der semantischen Segmentierung 6 in Schritt 160 ermittelt. Gemäß Block 161 kann hierbei insbesondere die Anzahl der Pixel, die vom Diskriminator 7 als zu einem realen Trainingsbild 5 zugehörig gewertet werden, mit der Anzahl der Pixel, die vom Diskriminator als zu einem realistisch erzeugten Bild 3 zugehörig gewertet werden, verglichen und/oder ins Verhältnis gesetzt werden.
In Schritt 170 werden Generator- Parameter la, die das Verhalten des Generators 1 charakterisieren, optimiert mit dem Ziel, dass die vom Generator 1 erzeugten realistischen Bilder 3 vom Diskriminator 7 als reale Bilder 5 fehlklassifiziert werden. Gleichzeitig oder auch im Wechsel hierzu werden in Schritt 180 Diskriminator-Parameter 7a, die das Verhalten des Diskriminators 7 charakterisieren, optimiert mit dem Ziel, die Genauigkeit bei der Unterscheidung zwischen realistisch erzeugten Bildern 3 und realen Bildern 5 zu verbessern.
Dabei können gemäß Block 181 die Diskriminator- Parameter 7a dahingehend optimiert werden, dass eine spezielle Kostenfunktion einen optimalen Wert annimmt. In dieser Kostenfunktion werden für alle Pixel und alle möglichen semantischen Bedeutungen 4 Klassifikations-Scores des Diskriminators 7 für die jeweilige semantische Bedeutung 4 summiert. Die Summanden in dieser Summe werden gewichtet mit binären Indikatoren, ob diese semantische Bedeutung 4 ausweislich der semantischen Trainingskarten (5a) korrekt ist. Hierbei können gemäß Block 181a insbesondere beispielsweise Bedeutungen 4 der semantischen Trainingskarten 5a in der Summierung mit dem Inversen ihrer in betroffenen Pixeln gemessenen Häufigkeit gewichtet werden. Für bestimmte Bedeutungen 4 kann weiterhin das Gewicht auch auf Null gesetzt werden. So können beispielsweise in Trainingsbildern 5 Pixel vorkommen, die nicht gelabelt sind und dadurch das Platzhalter-Label „Unbekannt“ erhalten. Durch Nullsetzen des Gewichts können diese Pixel dann bei der Optimierung komplett ignoriert werden. Dies kann ein herkömmlicher Diskriminator nicht ohne weiteres, weil er seine Kostenfunktion („Löss- Funktion“) nicht auf der Pixelebene berechnet.
In Figur 2 ist die Bildung einer semantischen Segmentierung 6 durch den Diskriminator 7 an einem einfachen Beispiel veranschaulicht. Die semantische Trainingskarte 5a enthält Bereiche mit drei verschiedenen semantischen Bedeutungen 4, nämlich Himmel 41, Garten 42 und Haus 43. Diese semantischen Bedeutungen wurden durch „Labeln“ eines realen Trainingsbildes 5 entnommen, das einen sonnigen Himmel 11, ein Haus 12 sowie einen Garten 13 enthält.
Mit dem Generator 1 wird aus der semantischen Trainingskarte 5a ein realistisches Bild 3 erzeugt. Dieses realistische Bild 3 enthält einen verregneten Himmel 11', ein anderes Haus 12' als im realen Trainingsbild 5, jedoch den gleichen Garten 13 wie im realen Trainingsbild 5. Der Diskriminator 7 verarbeitet das realistische Bild 3 zu einer semantischen Segmentierung 6. In dieser semantischen Segmentierung 6 wird dem verregneten Himmel 11' die semantische Bedeutung 41 „Himmel“ zugeordnet. Dem Garten 13 wird die semantische Bedeutung 42 „Garten“ zugeordnet. Jedoch wird dem gegenüber dem realen Trainingsbild 5 geänderten Haus 12' die semantische Bedeutung 44 „Teil eines realistisch erzeugten Bildes 3“ zugeordnet.
Im Unterschied zu einem herkömmlichen Diskriminator findet also die Entscheidung, ob ein reales Bild 5 oder ein realistisch erzeugtes Bild 3 vorliegt, im Kern auf der lokalen Pixel- Ebene statt.
Hieraus lässt sich mit der nachgeschalteten Auswertung 160 in vielfältiger Weise die gesuchte Entscheidung 3 v 5 gewinnen, ob das Bild als reales Bild 5 oder als realistisch erzeugtes Bild 3 einzustufen ist. Wenn diese Auswertung 160 auf die Mehrheit der Pixel abstellt, dann kann das Bild als reales Bild 5 durchgehen, denn der als Himmel erkannte Himmel 11' und der als Garten erkannte Garten 13 belegen zusammen mehr Pixel als das geänderte Haus 12'. Die Auswertung 160 kann jedoch auch beispielsweise darauf fokussiert sein, ob das Bild am erwarteten Ort ein Objekt mit der semantischen Bedeutung 43 „Haus“ enthält, ohne Rücksicht auf einen Garten, einen Himmel oder sonstiges Beiwerk. In diesem Fall kann das Bild als realistisch erzeugtes Bild 3 erkannt werden. Wie zuvor bei der Diskussion der beispielhaften Kostenfunktion LD für den Diskriminator 7 erläutert, können aber auch beispielsweise Kostenfunktions- Beiträge, die sich auf im realen Bild vorkommende semantische Bedeutungen 41-43 beziehen, und Kostenfunktions- Beiträge, die sich auf die semantische Bedeutung 44 „Teil eines realistisch erzeugten Bildes 3“ beziehen, gemittelt oder in anderer Weise zusammengeführt werden.
Figur 3 ist ein schematisches Ablaufdiagramm eines Ausführungsbeispiels des Verfahrens 200 zum Trainieren eines Bildklassifikators 9. In Schritt 210 wird ein Generator 1 mit dem zuvor beschriebenen Verfahren 100 trainiert. In Schritt 220 werden mit dem trainierten Generator 1 aus semantischen Karten 2 realistische Bilder 3 erzeugt. Aus den jeweils verwendeten semantischen Karten 2 werden in Schritt 230 semantische Soll-Bedeutungen ermittelt, auf die der Bildklassifikator 9 die realistischen Bilder 3, bzw. Pixel hiervon, jeweils abbilden soll.
Die vom Generator 1 erzeugten realistischen Bilder 3 sowie die zugehörigen Soll- Bedeutungen 4 werden in Schritt 240 zu einem Trainingsdatensatz 9a, der bereits reale Trainingsbilder 5' sowie zugehörige Soll-Bedeutungen 4' enthält, hinzugefügt. Der solchermaßen erweiterte Trainingsdatensatz 9a* wird in Schritt 250 verwendet, um den Bildklassifikator 9 zu trainieren. Figur 4 ist ein schematisches Ablaufdiagramm eines Ausführungsbeispiels des
Verfahrens 300. In Schritt 310 wird ein Bildklassifikator 9 mit dem zuvor beschriebenen Verfahren 200 trainiert. Mit diesem Bildklassifikator 9 werden in Schritt 320 Bilder 5, die mit mindestens einem von einem Fahrzeug 50 mitgeführten Sensor 50a aufgenommen wurden, einer semantischen Bedeutung 4 zugeordnet. Aus dieser vom Bildklassifikator 9 ermittelten semantischen
Bedeutung 4 wird in Schritt 330 ein Ansteuersignal 330a ermittelt. In Schritt 340 wird das Fahrzeug 50 mit diesem Ansteuersignal 330a angesteuert.

Claims

Ansprüche
1. Verfahren (100) zum Trainieren eines Generators (1) für Bilder (3) aus einer semantischen Karte (2, 5a), die jedem Pixel des Bildes (3) eine semantische Bedeutung (4) eines Objekts, zu dem dieses Pixel gehört, zuordnet, mit den Schritten:
• es werden reale Trainingsbilder (5) und zugehörige semantische Trainingskarten (5a), die jedem Pixel des jeweiligen Trainingsbildes (5) eine semantische Bedeutung (4) zuordnen, bereitgestellt (110);
• aus mindestens einer semantischen Trainingskarte (5a) werden mit dem Generator (1) Bilder (3) erzeugt (120);
• zu der gleichen mindestens einen semantischen Trainingskarte (5a) wird mindestens ein reales Trainingsbild (5) ermittelt (130);
• die vom Generator (1) erzeugten Bilder (3) und das mindestens eine reale Trainingsbild (5), die zur gleichen semantischen Trainingskarte (5a) gehören, werden einem Diskriminator (7) zugeführt (140), woraufhin der Diskriminator (7) eine semantische Segmentierung (6) des ihm zugeführten Bildes (3, 5) ermittelt (150), die jedem Pixel dieses Bildes (3, 5) eine semantische Bedeutung (4) zuordnet;
• aus der vom Diskriminator (7) ermittelten semantischen Segmentierung (6) wird ausgewertet (160), ob das dem Diskriminator (7) zugeführte Bild (3, 5) ein erzeugtes Bild (3) oder ein reales Trainingsbild (5) ist;
• Generator- Parameter (la), die das Verhalten des Generators (1) charakterisieren, werden optimiert (170) mit dem Ziel, dass die vom Generator (1) erzeugten Bilder (3) als reale Bilder (5) fehlklassifiziert werden;
• Diskriminator-Parameter (7a), die das Verhalten des Diskriminators (7) charakterisieren, werden optimiert (180) mit dem Ziel, die Genauigkeit bei der Unterscheidung zwischen erzeugten Bildern (3) und realen Bildern (5) zu verbessern.
2. Verfahren (100) nach Anspruch 1, wobei die möglichen semantischen Bedeutungen (4) in der vom Diskriminator (7) gelieferten semantischen Segmentierung (6) mindestens die semantischen Bedeutungen (4) der semantischen Trainingskarten (5a) sowie eine Einordnung als Teil eines erzeugten Bildes (3) umfassen (151).
3. Verfahren (100) nach Anspruch 2, wobei die Diskriminator-Parameter (7a) dahingehend optimiert werden (181), dass eine Kostenfunktion, in der für alle Pixel und alle möglichen semantischen Bedeutungen (4) Klassifikations- Scores des Diskriminators (7) für die jeweilige semantische Bedeutung (4) gewichtet mit binären Indikatoren, ob diese semantische Bedeutung (4) ausweislich der semantischen Trainingskarten (5a) korrekt ist, summiert werden, einen optimalen Wert annimmt.
4. Verfahren (100) nach Anspruch 3, wobei die semantischen Bedeutungen (4) der semantischen Trainingskarten (5a) in der Summierung mit dem Inversen ihrer in betroffenen Pixeln gemessenen Häufigkeit gewichtet werden (181a).
5. Verfahren (100) nach einem der Ansprüche 1 bis 4, wobei ein Diskriminator (7) mit einer Encoder- Struktur, die ein eingegebenes Bild in mehreren sukzessiven Verarbeitungsschichten in eine informationsreduzierte Repräsentation übersetzt, und einer Decoder-Struktur, die diese informationsreduzierte Repräsentation in eine Zuordnung jedes Pixels des eingegebenen Bildes zu einer semantischen Bedeutung (4) weiterübersetzt, gewählt wird (141).
6. Verfahren (100) nach Anspruch 5, wobei ein Diskriminator (7) mit mindestens einer Direktverbindung zwischen einer Verarbeitungsschicht der Encoder- Struktur und einer Verarbeitungsschicht der Decoder- Struktur unter Umgehung der informationsreduzierten Repräsentation gewählt wird (141a).
7. Verfahren (100) nach einem der Ansprüche 1 bis 6, wobei das Auswerten (160) der semantischen Segmentierung (6) beinhaltet, die Anzahl der Pixel, die vom Diskriminator (7) als zu einem realen Trainingsbild (5) zugehörig - 18 - gewertet werden, mit der Anzahl der Pixel, die vom Diskriminator als zu einem erzeugten Bild (3) zugehörig gewertet werden, zu vergleichen und/oder ins Verhältnis zu setzen (161).
8. Verfahren (200) zum Trainieren eines Bildklassifikators (9), der ein eingegebenes Bild, und/oder Pixel dieses eingegebenen Bildes, einer semantischen Bedeutung zuordnet, mit den Schritten:
• ein Generator (1) wird mit dem Verfahren (100) nach einem der Ansprüche 1 bis 7 trainiert (210);
• mit dem trainierten Generator (1) werden aus semantischen Karten (2) Bilder (3) erzeugt (220);
• aus den jeweils verwendeten semantischen Karten (2) werden semantische Soll-Bedeutungen (4) ermittelt (230), auf die der trainierte Bildklassifikator (9) die Bilder (3) jeweils abbilden soll;
• ein Trainingsdatensatz (9a) für den Bildklassifikator (9), der reale Trainingsbilder (5') und zugehörige semantische Soll-Bedeutungen (4') enthält, wird um die erzeugten Bilder (3) und zugehörigen semantischen Soll-Bedeutungen (4) erweitert (240);
• der Bildklassifikator (9) wird mit dem erweiterten Trainingsdatensatz (9a*) trainiert (250).
9. Verfahren (300) mit den Schritten:
• ein Bildklassifikator (9) wird mit dem Verfahren (200) nach Anspruch 8 trainiert (310);
• Bilder (5), die mit mindestens einem von einem Fahrzeug (50) mitgeführten Sensor (51) aufgenommen wurden, werden mit dem Bildklassifikator (9) einer semantischen Bedeutung (4) zugeordnet (320);
• aus der vom Bildklassifikator (9) ermittelten semantischen Bedeutung (4) wird ein Ansteuersignal (330a) ermittelt (330);
• das Fahrzeug (50) wird mit dem Ansteuersignal (330a) angesteuert (340).
10. Computerprogramm, enthaltend maschinenlesbare Anweisungen, die, wenn sie auf einem oder mehreren Computern ausgeführt werden, den oder die Computer dazu veranlassen, ein Verfahren (100, 200, 300) nach einem der Ansprüche 1 bis 9 auszuführen. - 19 -
11. Maschinenlesbarer Datenträger mit dem Computerprogramm nach Anspruch 10.
12. Computer, ausgerüstet mit dem Computerprogramm nach Anspruch 10, und/oder mit dem maschinenlesbaren Datenträger nach Anspruch 11.
PCT/EP2021/073121 2020-08-24 2021-08-20 Training eines generators zur erzeugung realistischer bilder mit einem semantisch segmentierenden diskriminator WO2022043203A1 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202180052034.3A CN116113989A (zh) 2020-08-24 2021-08-20 用语义分割式鉴别器对用于产生逼真图像的生成器的训练
US17/911,987 US20230134062A1 (en) 2020-08-24 2021-08-20 Training a generator for generating realistic images using a semantically segmenting discriminator

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102020210711.4 2020-08-24
DE102020210711.4A DE102020210711A1 (de) 2020-08-24 2020-08-24 Training eines Generators zur Erzeugung realistischer Bilder mit einem semantisch segmentierenden Diskriminator

Publications (1)

Publication Number Publication Date
WO2022043203A1 true WO2022043203A1 (de) 2022-03-03

Family

ID=77543525

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2021/073121 WO2022043203A1 (de) 2020-08-24 2021-08-20 Training eines generators zur erzeugung realistischer bilder mit einem semantisch segmentierenden diskriminator

Country Status (4)

Country Link
US (1) US20230134062A1 (de)
CN (1) CN116113989A (de)
DE (1) DE102020210711A1 (de)
WO (1) WO2022043203A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102023200678A1 (de) 2023-01-27 2024-08-01 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren und Vorrichtung zum synthetischen Erzeugen von Trainingsdaten für eine optische Inspektion

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102018204494B3 (de) 2018-03-23 2019-08-14 Robert Bosch Gmbh Erzeugung synthetischer Radarsignale

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102018204494B3 (de) 2018-03-23 2019-08-14 Robert Bosch Gmbh Erzeugung synthetischer Radarsignale

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
CHEN TAO ET AL: "Classification Constrained Discriminator For Domain Adaptive Semantic Segmentation", 2020 IEEE INTERNATIONAL CONFERENCE ON MULTIMEDIA AND EXPO (ICME), IEEE, 6 July 2020 (2020-07-06), pages 1 - 6, XP033808355, DOI: 10.1109/ICME46284.2020.9102965 *
MICHAL URICAR ET AL: "Yes, we GAN: Applying Adversarial Techniques for Autonomous Driving", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 9 February 2019 (2019-02-09), XP081590898, DOI: 10.2352/ISSN.2470-1173.2019.15.AVM-048 *
SCHONFELD EDGAR ET AL: "A U-Net Based Discriminator for Generative Adversarial Networks", 2020 IEEE/CVF CONFERENCE ON COMPUTER VISION AND PATTERN RECOGNITION (CVPR), IEEE, 13 June 2020 (2020-06-13), pages 8204 - 8213, XP033803473, DOI: 10.1109/CVPR42600.2020.00823 *
XIHUI LIU ET AL: "Learning to Predict Layout-to-image Conditional Convolutions for Semantic Image Synthesis", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 15 October 2019 (2019-10-15), XP081575876 *

Also Published As

Publication number Publication date
US20230134062A1 (en) 2023-05-04
CN116113989A (zh) 2023-05-12
DE102020210711A1 (de) 2022-02-24

Similar Documents

Publication Publication Date Title
DE102018128290A1 (de) Verfahren und vorrichtung zum erzeugen von szenarien und parametrischen sweeps für die entwicklung und bewertung von autonomen antriebssystemen
DE102018116036A1 (de) Training eines tiefen konvolutionellen neuronalen Netzwerks für individuelle Routen
DE102015208139A1 (de) Fahrzeuginsassenerfassung mittels des Abstands zwischen Beifahrer- und Fahrermerkmalen
WO2019206792A1 (de) Verfahren und vorrichtung zur umsetzung eines eingangsbildes einer ersten domäne in ein ausgangsbild einer zweiten domäne
WO2020126167A1 (de) Verfahren zur erkennung von mindestens einem muster in einer umgebung eines fahrzeugs, steuergerät zum ausführen eines solchen verfahrens, sowie fahrzeug mit einem solchen steuergerät
DE102018218098A1 (de) Verfahren und Vorrichtung zum Abstrahieren eines Datensatzes
DE102019208733A1 (de) Verfahren und Generator zum Erzeugen von gestörten Eingangsdaten für ein neuronales Netz
EP3748453A1 (de) Verfahren und vorrichtung zum automatischen ausführen einer steuerfunktion eines fahrzeugs
WO2022043203A1 (de) Training eines generators zur erzeugung realistischer bilder mit einem semantisch segmentierenden diskriminator
DE112018005749T5 (de) Fahrbahnmarkierungsbestimmungsvorrichtung zum automatisierten Fahren
EP3748454A1 (de) Verfahren und vorrichtung zum automatischen ausführen einer steuerfunktion eines fahrzeugs
DE102020214596A1 (de) Verfahren zum Erzeugen von Trainingsdaten für ein Erkennungsmodell zum Erkennen von Objekten in Sensordaten einer Umfeldsensorik eines Fahrzeugs, Verfahren zum Erzeugen eines solchen Erkennungsmodells und Verfahren zum Ansteuern einer Aktorik eines Fahrzeugs
DE102018129871A1 (de) Trainieren eins tiefen konvolutionellen neuronalen Netzwerks zum Verarbeiten von Sensordaten zur Anwendung in einem Fahrunterstützungssystem
DE102021133977A1 (de) Verfahren und System zur Klassifikation von Szenarien eines virtuellen Tests sowie Trainingsverfahren
DE102021205447A1 (de) Datenanreicherung für das Trainieren von Bildklassifizierern
DE102020200876B4 (de) Verfahren zum Verarbeiten von Sensordaten einer Sensorik eines Fahrzeugs
WO2021175783A1 (de) Computerimplementiertes verfahren und system zum erzeugen synthetischer sensordaten und trainingsverfahren
DE102018221625A1 (de) Transfer von Zusatzinformation zwischen Kamerasystemen
DE102020210712A1 (de) Erzeugung realistischer Bilder aus vorgegebenen semantischen Karten
DE102020210710A1 (de) Trainingsverfahren für einen Generator zur Erzeugung realistischer Bilder
EP4033452B1 (de) Domänenunabhängiges training von bildklassifikatoren
DE102021203492B3 (de) Computerimplementiertes Verfahren und System zum Trainieren eines maschinellen Lernverfahrens
DE112022003908T5 (de) Informationsverarbeitungsvorrichtung, informationsverarbeitungsverfahren, servervorrichtung, fahrzeugvorrichtung und informationsverarbeitungsprogramm
DE102023202000A1 (de) Verfahren, Steuergerät und Computerprogramm zum Ermitteln von Objektdaten und Positionsdaten eines Objekts, und computerlesbares Speichermedium
DE102021206190A1 (de) Verfahren zur Erkennung von Objekten gesuchter Typen in Kamerabildern

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21762725

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21762725

Country of ref document: EP

Kind code of ref document: A1