DE102021103200B3 - Method for determining a degree of degradation of a recorded image, computer program product, computer-readable storage medium and assistance system - Google Patents

Method for determining a degree of degradation of a recorded image, computer program product, computer-readable storage medium and assistance system Download PDF

Info

Publication number
DE102021103200B3
DE102021103200B3 DE102021103200.8A DE102021103200A DE102021103200B3 DE 102021103200 B3 DE102021103200 B3 DE 102021103200B3 DE 102021103200 A DE102021103200 A DE 102021103200A DE 102021103200 B3 DE102021103200 B3 DE 102021103200B3
Authority
DE
Germany
Prior art keywords
module
assistance system
pixels
computing device
electronic computing
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.)
Active
Application number
DE102021103200.8A
Other languages
German (de)
Inventor
Senthil Kumar Yogamani
Arindam Das
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Connaught Electronics Ltd
Original Assignee
Connaught Electronics Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Connaught Electronics Ltd filed Critical Connaught Electronics Ltd
Priority to DE102021103200.8A priority Critical patent/DE102021103200B3/en
Priority to PCT/EP2022/052939 priority patent/WO2022171590A1/en
Application granted granted Critical
Publication of DE102021103200B3 publication Critical patent/DE102021103200B3/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • G06F18/23213Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • G06N3/0442Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06N3/0455Auto-encoder networks; Encoder-decoder networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • 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/762Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • 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

Landscapes

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

Abstract

Die Erfindung betrifft ein Verfahren zum Bestimmen eines Degradationsgrads (3) eines mittels einer Kamera (4) eines Assistenzsystems (2) eines Kraftfahrzeugs (1) aufgenommenen Bilds (5) mittels des Assistenzsystems (2), mit den Schritten:- Erfassen des Bilds (5) mittels der Kamera (4);- Durchführen einer tiefen Merkmalsextraktion einer Vielzahl von Pixeln (8) des Bilds (5) mittels eines Kodiermoduls (9) einer elektronischen Recheneinrichtung (6) des Assistenzsystems (2);- Clustern der Vielzahl von Pixeln (8) mittels eines Merkmalspunktclustermoduls (10) der elektronischen Recheneinrichtung (6);- Regressieren der geclusterten Pixel (8) mittels eines Regressionsmoduls (11) der elektronischen Recheneinrichtung (6); und- Bestimmen des Degradationsgrads (3) in Abhängigkeit von einer Auswertung durch Anwenden einer Sigmoidfunktion (20) nach der Regression mittels eines Sigmoidfunktionsmoduls (12) der elektronischen Recheneinrichtung (6) als Ausgabe des Sigmoidfunktionsmoduls (12).Ferner betrifft die Erfindung ein Computerprogrammprodukt, ein computerlesbares Speichermedium sowie ein Assistenzsystem (2).The invention relates to a method for determining a degree of degradation (3) of an image (5) recorded by means of a camera (4) of an assistance system (2) of a motor vehicle (1) using the assistance system (2), with the steps: 5) using the camera (4); - carrying out a deep feature extraction of a large number of pixels (8) of the image (5) using a coding module (9) of an electronic computing device (6) of the assistance system (2); - clustering the large number of pixels (8) by means of a feature point cluster module (10) of the electronic computing device (6); - regressing the clustered pixels (8) by means of a regression module (11) of the electronic computing device (6); and- determining the degree of degradation (3) as a function of an evaluation by applying a sigmoid function (20) after regression using a sigmoid function module (12) of the electronic computing device (6) as the output of the sigmoid function module (12).Furthermore, the invention relates to a computer program product, a computer-readable storage medium and an assistance system (2).

Description

Die Erfindung betrifft ein Verfahren zum Bestimmen eines Degradationsgrads eines mittels einer Kamera eines Assistenzsystems eines Kraftfahrzeugs aufgenommenen Bilds mittels des Assistenzsystems. Ferner betrifft die Erfindung ein Computerprogrammprodukt, ein computerlesbares Speichermedium sowie ein Assistenzsystem.The invention relates to a method for determining a degree of degradation of an image recorded by a camera of an assistance system of a motor vehicle using the assistance system. Furthermore, the invention relates to a computer program product, a computer-readable storage medium and an assistance system.

Aus dem Kraftfahrzeugbau sind insbesondere Kameras bekannt, welche ein Umgebungsbild einer Umgebung des Kraftfahrzeugs aufnehmen können. Insbesondere sind so genannte Surround-View-Kameras bekannt, welche insbesondere von rauen Umgebungsbedingungen, wie Schnee, Regen, Schlamm und dergleichen beeinträchtigt werden können. Um eine solche Beeinträchtigung zu erfassen, ist es bereits bekannt, dass in Abhängigkeit der Verschmutzung spezielle Verschmutzungsklassen, wie Erde und Wassertropfen, bestimmt und erkannt werden können. Hierbei entstehen große Herausforderungen bei der Annotation von nur diesen wenigen Klassen. Insbesondere die Übergangsbereiche sind subjektiv zu annotieren und es ist schwer, realistische Verschmutzungsaufnahmen mit entsprechender Vielfalt zu erhalten. Insbesondere sind Linsenverschmutzungen auf Basis von Schlamm, Sand, Wassertropfen und Frost sowie weitere ungünstige Wetterbedingungen, wie Schnee, Regen oder Nebel, noch nicht möglich zu bestimmen, wobei hierbei diese insbesondere eine beleuchtungsbedingte Verschlechterung, wie schwaches Licht, Blendung, Schatten oder Bewegungsunschärfe erzeugen, wobei diese zukünftig ebenfalls zu berücksichtigen sind. Hierbei ist es jedoch unpraktisch, für jede dieser einzelnen Klassen und mit allen Kombinationen von Degradation weitere Datensätze zu erstellen und diese zu annotieren.In particular, cameras are known from motor vehicle construction which can record an image of the surroundings of the motor vehicle. In particular, what are known as surround-view cameras are known, which can be adversely affected in particular by harsh environmental conditions such as snow, rain, mud and the like. In order to detect such an impairment, it is already known that special pollution classes, such as soil and water droplets, can be determined and recognized depending on the pollution. This creates major challenges when annotating only these few classes. In particular, the transition areas are to be annotated subjectively and it is difficult to obtain realistic pollution images with the corresponding variety. In particular, it is not yet possible to determine lens contamination based on mud, sand, water droplets and frost, as well as other adverse weather conditions such as snow, rain or fog, which in particular produce lighting-related deterioration such as weak light, glare, shadows or motion blur, whereby these must also be taken into account in the future. However, it is impractical to create and annotate additional data sets for each of these individual classes and with all combinations of degradation.

Die US 2018/315167 A1 offenbart ein Objekterkennungsverfahren, bei welchem ein Objekt, wie zum Beispiel ein Fahrzeug, aus einem von einer On-Board-Kamera aufgenommenen Bild erkannt werden kann, selbst wenn ein Objektiv der On-Board-Kamera verschmutzt ist. Um das Ziel zu erreichen, wird in diesem Objekterkennungsverfahren zum Erkennen eines in einem aufgenommenen Bild enthaltenen Objekts ein Originalbild, das das zu erkennende Objekt enthält, aus dem aufgenommenen Bild erstellt, ein verarbeitetes Bild aus dem erstellten Originalbild erzeugt, indem eine vorbestimmte Verarbeitung auf das Originalbild angewendet wird, und es wird ein Lernvorgang bezüglich der Wiederherstellung eines Bilds des zu erkennenden Objekts unter Verwendung des Originalbilds und des verarbeiteten Bilds durchgeführt.the U.S. 2018/315167 A1 discloses an object recognition method in which an object such as a vehicle can be recognized from an image captured by an on-board camera even if a lens of the on-board camera is dirty. In order to achieve the object, in this object recognition method for recognizing an object included in a captured image, an original image containing the object to be recognized is created from the captured image, a processed image is created from the created original image by applying predetermined processing to the original image is applied, and learning is performed on reconstructing an image of the object to be recognized using the original image and the processed image.

Die EP 36 57 379 A1 offenbart ein Bildverarbeitungsgerät mit neuronalem Netzwerk, welches ein erstes Bild und ein jeweiliges zusätzliches Bild erhält, wobei eine erste Bilderfassungsvorrichtung ein anderes Sichtfeld als jede zusätzliche Bilderfassungsvorrichtung hat. Jedes Bild wird durch entsprechende Instanzen eines gemeinsamen Merkmalsextraktions-Verarbeitungsnetzwerks verarbeitet, um eine entsprechende erste Karte und mindestens eine zusätzliche Karte zu erzeugen. Die Merkmalsklassifizierung umfasst die Verarbeitung der ersten Karte, um eine erste Klassifizierung zu erzeugen, die eine Verschmutzung des ersten Bilds anzeigt. Die Verarbeitung der oder jeder zusätzlichen Karte, um mindestens eine zusätzliche Klassifizierung zu erzeugen, die eine entsprechende Verschmutzung des oder jedes zusätzlichen Bilds anzeigt. Es wird die erste und jede zusätzliche Klassifizierung kombiniert, um eine verstärkte Klassifizierung zu erzeugen, die eine Verschmutzung des ersten Bilds anzeigt. Wenn die verstärkte Klassifizierung keine Verschmutzung der ersten Bilderfassungsvorrichtung anzeigt, kann eine weitere Verarbeitung durchgeführt werden.the EP 36 57 379 A1 discloses a neural network image processing apparatus that obtains a first image and a respective additional image, wherein a first image capturing device has a different field of view than each additional image capturing device. Each image is processed by respective instances of a common feature extraction processing network to produce a respective first map and at least one additional map. Feature classification includes processing the first map to generate a first classification indicative of contamination of the first image. Processing the or each additional map to generate at least one additional classification indicative of a corresponding contamination of the or each additional image. The first and each additional classification are combined to produce an enhanced classification indicative of contamination of the first image. If the reinforced classification indicates no contamination of the first imaging device, further processing can be performed.

Die US2016/0379067 offenbart ein Kamerasystem für ein Fahrzeug, wobei die Kamera mit einem Bildsensor und einem Objektiv, der die Umgebung außerhalb des Fahrzeugs ausgesetzt ist umfasst. Der Bildsensor ist angepasst um mehrere Einzelbilder von Bilddaten zu verarbeiten, die von der Kamera erfasst wurden, und verarbeitet erfasste Bilddaten, um einen Fleck in einem Einzelbild von erfassten Bilddaten zu erkennen.the US2016/0379067 discloses a camera system for a vehicle, the camera having an image sensor and a lens that is exposed to the environment outside of the vehicle. The image sensor is adapted to process multiple frames of image data captured by the camera and processes captured image data to detect a blob in a frame of captured image data.

In SoildNet: Soiling Degradation Detection in Autonomous Driving von Arindam Das in arXiv preprint arXiv:1911.01054v2, 2019 veröffentlicht, wird ein Tiefen-Convolutional Neural Network (DCNN) - basierten Baseline-Netzwerk sowie das Ausnutzen mehrerer Netzwerk-Remodelling-Techniken, wie z. B. unter Verwendung statischer und dynamischer Gruppenfaltung, Kanalumordnung, um die Basislinienarchitektur zu komprimieren und sie geeignet für eingebettete Systeme mit niedriger Leistung mit ~ 1 TOPS zu machen vorgeschlagen. Dabei werden verschiedene Ergebnismetriken aller Zwischennetzwerke, die für eine Verschmutzungsverschlechterungsdetektion auf dem Kachelniveau der Grösse 64 × 64 auf der Eingangsauflösung 1280 × 768 bestimmt sind verglichen.In SoildNet: Soiling Degradation Detection in Autonomous Driving by Arindam Published in arXiv preprint arXiv:1911.01054v2, 2019, a Deep Convolutional Neural Network (DCNN)-based baseline network as well as exploiting several network remodeling techniques such as . B. using static and dynamic group convolution, channel reordering to compress the baseline architecture and make it suitable for low power embedded systems with ~1 TOPS are proposed. Thereby different result metrics of all intermediate networks intended for a contamination deterioration detection on the tile level of the size 64×64 on the input resolution 1280×768 are compared.

Aufgabe der vorliegenden Erfindung ist es, ein Verfahren, ein Computerprogrammprodukt, ein computerlesbares Speichermedium sowie ein Assistenzsystem zu schaffen, mittels welchen eine verbesserte Bestimmung eines Degradationsgrads einer Kamera durchgeführt werden kann.The object of the present invention is to create a method, a computer program product, a computer-readable storage medium and an assistance system, by means of which an improved determination of a degree of degradation of a camera can be carried out.

Diese Aufgabe wird durch ein Verfahren, ein Computerprogrammprodukt, ein computerlesbares Speichermedium sowie ein Assistenzsystem gemäß den unabhängigen Patentansprüchen gelöst. Vorteilhafte Ausgestaltungsformen sind in den Unteransprüchen angegeben.This object is achieved by a method, a computer program product, a computer-readable storage medium and an assistance system according to the independent patent claims. Advantageous embodiments are specified in the dependent claims.

Ein Aspekt der Erfindung betrifft ein Verfahren zum Bestimmen eines Degradationsgrads eines mittels einer Kamera eines Assistenzsystems eines Kraftfahrzeugs aufgenommenen Bilds mittels des Assistenzsystems. Es erfolgt ein Erfassen des Bilds mittels der Kamera und ein Durchführen einer tiefen Merkmalsextraktion einer Vielzahl von Pixeln des Bilds mittels eines Kodiermoduls einer elektronischen Recheneinrichtung des Assistenzsystems. Die Vielzahl von Pixeln wird mittels eines Merkmalspunktclustermoduls der elektronischen Recheneinrichtung geclustert. Die geclusterten Pixel werden mittels eines Regressionsmoduls der elektronischen Recheneinrichtung regressiert. Es erfolgt ein Bestimmen des Degradationsgrads in Abhängigkeit von einer Auswertung durch Anwenden einer Sigmoidfunktion nach der Regression mittels eines Sigmoidfunktionsmoduls der elektronischen Recheneinrichtung als Ausgabe des Sigmoidfunktionsmoduls.One aspect of the invention relates to a method for determining, by means of the assistance system, a degree of degradation of an image recorded by means of a camera of an assistance system of a motor vehicle. The image is captured by the camera and a deep feature extraction of a large number of pixels of the image is carried out by means of a coding module of an electronic computing device of the assistance system. The plurality of pixels are clustered using a feature point clustering module of the electronic computing device. The clustered pixels are regressed using a regression module of the electronic computing device. The degree of degradation is determined as a function of an evaluation by applying a sigmoid function after the regression using a sigmoid function module of the electronic computing device as the output of the sigmoid function module.

Insbesondere kann somit eine verbesserte Bestimmung des Degradationsgrads durchgeführt werden. Insbesondere kann der Degradationsgrad beispielsweise zwischen 0 und 1 liegen, wobei 0 andeuten kann, dass keine Degradation vorliegt, also die Linse beispielsweise klar beziehungsweise sauber ist, und 1 bedeuten kann, dass die Linse verschmutzt ist. Je näher somit der Degradationsgrad an 0 liegt, desto sauberer ist die Linse. Insbesondere ist dies somit unabhängig von einer Klassifizierung der Verschmutzung. Es wird lediglich allgemein die Degradation bestimmt, und ob beispielsweise dann wiederum das Bild mit dem entsprechenden Degradationsgrad weiter verwendet werden kann, um beispielsweise eine Auswertung dieses Bilds für eine Fahrfunktion zu verwenden.In particular, an improved determination of the degree of degradation can thus be carried out. In particular, the degree of degradation can be between 0 and 1, for example, where 0 can indicate that there is no degradation, ie the lens is clear or clean, for example, and 1 can mean that the lens is dirty. The closer the degree of degradation is to 0, the cleaner the lens. In particular, this is therefore independent of a classification of the contamination. The degradation is only generally determined and whether, for example, the image with the corresponding degree of degradation can then be used further, for example in order to use an evaluation of this image for a driving function.

Insbesondere löst somit die Erfindung das Problem, dass unabhängig von einer Klassifizierung und somit auch unabhängig von einer Vielzahl von Datensätzen für eine Verschmutzung dennoch ein entsprechender Degradationsgrad bestimmt werden kann. In particular, the invention thus solves the problem that a corresponding degree of degradation can nevertheless be determined independently of a classification and thus also independently of a large number of data sets for contamination.

Somit ist das Assistenzsystem einfach zu trainieren, wobei hierzu insbesondere eine geringe Anzahl von Datensätzen notwendig ist.The assistance system is therefore easy to train, with a small number of data sets being necessary for this in particular.

Insbesondere wird somit mittels der Sigmoidfunktion die Degradationsverschlechterung zwischen 0 und 1 geschätzt, wobei 0 sauber bedeutet und 1 undurchsichtig. Die beiden oben genannten Fälle sind insbesondere Extreme, für die entsprechende Annotationen bekannt sind. Es wird die Qualität der Degradationsverschlechterung in dem Bereich zwischen 0 und 1 aufgrund des Vorhandenseins des Regressionsmoduls bestimmt.In particular, the deterioration in degradation is thus estimated between 0 and 1 using the sigmoid function, with 0 meaning clean and 1 meaning opaque. In particular, the two cases mentioned above are extremes for which corresponding annotations are known. The quality of degradation deterioration is determined in the range between 0 and 1 due to the presence of the regression module.

Gemäß einer vorteilhaften Ausgestaltungsform wird das Kodiermodul als faltendes neuronales Netzwerk bereitgestellt. Das Kodiermodul kann auch als Encoder bezeichnet werden. Insbesondere wird ein einfaches konvolutes neuronales Netzwerk (convolutional neural network - CNN) verwendet, um Tiefenmerkmale aus den entsprechenden Eingabebildern zu extrahieren. Insbesondere sollte beispielsweise genügend Speicher und Rechenunterstützung vorhanden sein, so kann auch ein neuronales Netzwerk mit einer höheren Kapazität genutzt werden. Insbesondere kann somit zuverlässig eine Merkmalsextraktion durchgeführt werden.According to an advantageous embodiment, the coding module is provided as a convolutional neural network. The coding module can also be referred to as an encoder. In particular, a simple convolutional neural network (CNN) is used to extract depth features from the corresponding input images. In particular, if there is sufficient memory and computing support, for example, a neural network with a higher capacity can also be used. In particular, a feature extraction can thus be carried out reliably.

Es hat sich weiterhin als vorteilhaft erwiesen, wenn die Vielzahl von Pixeln mittels eines K-means Algorithmus des Merkmalspunktclustermoduls geclustert wird. Insbesondere, da die Annotationen jeweils nur für zwei Extremfälle, nämlich sauber und undurchsichtig, verfügbar sind, wird jedoch während der Inferenzzeit das Eingabebild höchstwahrscheinlich eine variierende Verschlechterung im Bereich zwischen 0 und 1 aufweisen. Um diese Variation zu lernen, wird insbesondere das K-means Clustering-Verfahren mit einer Anzahl von beispielsweise n Clustern, wobei n beispielsweise 5 sein kann, angewendet. Es ist vorteilhaft zunächst die Tiefenmerkmalspunkte in n Clustern zu unterscheiden und später wird ein jedes dieser Cluster durch ein Regressionsmodul geleitet. Bei dem K-means Algorithmus handelt es sich insbesondere um ein Verfahren zur Vektorquantisierung, das insbesondere auch zur Clusteranalyse verwendet wird. Dabei wird aus einer Menge von ähnlichen Objekten eine vorher bekannte Anzahl von K-Gruppen gebildet.It has also proven to be advantageous if the multiplicity of pixels is clustered using a K-means algorithm of the feature point cluster module. However, especially since the annotations are only available for two extreme cases each, namely clean and opaque, during the inference time the input image will most likely show a varying degradation in the range between 0 and 1. In order to learn this variation, the K-means clustering method with a number of, for example, n clusters, where n can be 5, for example, is used in particular. It is advantageous to first distinguish the depth feature points in n clusters and later each of these clusters is passed through a regression module. The K-means algorithm is in particular a method for vector quantization which is also used in particular for cluster analysis. A previously known number of K-groups is formed from a set of similar objects.

Weiterhin vorteilhaft ist, wenn die geclusterten Pixel mittels eines als Lang-Kurzzeit-Speicher-Modul ausgebildeten Regressionsmoduls regressiert werden. Bei dem Lang-Kurzzeit-Speicher-Modul handelt es sich insbesondere um ein so genanntes Long Short Term Memory Module (LSTM). Bei dem vorgestellten Problem handelt es sich insbesondere nicht um ein Klassifikationsproblem, sondern um ein Regressionsproblem. It is also advantageous if the clustered pixels are regressed using a regression module designed as a long-term storage module. The long-short-term memory module is in particular what is known as a long-short-term memory module (LSTM). In particular, the problem presented is not a classification problem, but a regression problem.

Die Ausgabe aus dem insbesondere K-means Clustering ist nichts anderes als eine Reihe von Tiefenmerkmalspunkten, die in Clustern getrennt sind, weshalb insbesondere das LSTM-Modul zum Regressieren vorteilhaft ist. Das Kernkonzept eines solchen LSTM-Moduls sind der Zellzustand und seine verschiedenen Gates. Zellzustände wirken wie ein Speicher des Netzwerks und können während der Verarbeitung der Sequenz relevante Informationen tragen. Die Gates sind verschiedene neuronale Netze, die entscheiden, welche Informationen auf dem Zellstatus erlaubt sind. Die Gates können während des Trainings lernen, welche Informationen relevant sind, um sie zu behalten oder zu vergessen. Jedes Tor beziehungsweise Gate enthält sigmoidale Aktivierungen. Dies ist hilfreich, um Daten zu aktualisieren oder zu vergessen, da jede Zahl, die mit 0 multipliziert wird, 0 ist, wodurch Werte verschwinden oder „vergessen“ werden. Jede Zahl, die mit 1 multipliziert wird, ist der gleiche Wert, daher bleibt dieser Wert gleich oder wird „behalten.“ In einem solchen LSTM-Modul ist insbesondere zuerst das so genannte Vergessen-Gatter ausgebildet. Dieses Tor entscheidet, welche Informationen weggeworfen oder behalten werden sollen. Informationen aus dem vorherigen versteckten Zustand und Informationen aus der aktuellen Eingabe werden durch die Sigmoid-Funktion geleitet. Dabei kommen Werte zwischen 0 und 1 heraus. Je näher an 0, desto eher wird vergessen, und je näher an 1, desto eher wird behalten.The output from the K-means clustering in particular is nothing more than a series of depth feature points separated into clusters, which is why the LSTM module in particular is advantageous for regressing. The core concept of such an LSTM module is the cell state and its various gates. Cell states act like a memory of the network and can provide relevant information during the processing of the sequence carry information. The gates are various neural networks that decide what information is allowed on the cell status. During training, the gates can learn which information is relevant in order to remember or forget it. Each gate contains sigmoidal activations. This is useful for updating or forgetting dates, since any number multiplied by 0 is 0, making values disappear or "forget". Any number that is multiplied by 1 is the same value, therefore this value remains the same or is "kept". In such an LSTM module in particular the so-called forget gate is formed first. This gate decides what information to discard or keep. Information from the previous hidden state and information from the current input are passed through the sigmoid function. This results in values between 0 and 1. The closer to 0, the more likely it is to be forgotten, and the closer to 1, the more likely it is to be retained.

In einer weiteren vorteilhaften Ausgestaltungsform werden die geclusterten Pixel unidirektional von dem Merkmalspunktclustermodul zu dem Regressionsmodul übertragen. Insbesondere ist die Verbindung vom Encoder zum LSTM-Modul über den K-means Algorithmus unidirektional und wird nur für den Vorwärtsdurchlauf verwendet, da ein unüberwachtes K-means-Clustering verwendet wird.In a further advantageous embodiment, the clustered pixels are transmitted unidirectionally from the feature point cluster module to the regression module. In particular, the connection from the encoder to the LSTM module via the K-means algorithm is unidirectional and is only used for the forward pass since unsupervised K-means clustering is used.

Ferner hat es sich als vorteilhaft erwiesen, wenn die regressierten Pixel an die Kodiereinrichtung rückpropagiert werden. Insbesondere um einen unverbundenen Graphen zu erzeugen, erfolgt die Rückpropagation über eine separate Verbindung von dem LSTM Modul zum Encoder. Es wird auch davon abgeraten, überwachtes K-means zu verwenden und die Verbindung bidirektional zu machen, da es nur wenige trainierbare Parameter hat, die bei der Rückpropagation nicht ausreichen, da der Gradientenfluss durch eine große Anzahl von trainierbaren Parametern aus dem LSTM Modul erfolgt.Furthermore, it has proven to be advantageous if the regressed pixels are propagated back to the coding device. In particular, to create an unconnected graph, the back propagation is done via a separate connection from the LSTM module to the encoder. It is also discouraged to use supervised K-means and make the connection bi-directional as it has few trainable parameters which are insufficient in backpropagation since the gradient flow is done by a large number of trainable parameters from the LSTM module.

In einer weiteren vorteilhaften Ausgestaltungsform wird zum Anwenden der Sigmoidfunktion in einer ersten Trainingsphase für das Assistenzsystem ein Sigmoidverlust trainiert. Sigmoid ist hier insbesondere eine vorteilhafte Funktion, damit die Werte im Bereich zwischen 0 und 1 erhalten werden. Der Grund hierfür ist, dass eine kontinuierliche Annotation nicht vorliegt, sondern nur Annotationen für 0 und 1. Insbesondere wird somit in der ersten Phase zuerst die sigmoidale Verlustfunktion trainiert, die die Qualität der Wahrnehmungsverschlechterung, also der Degradation, aus einem Eingabebild schätzt. Dieser Fluss kann jedoch nicht die Qualität der Degradationsverschlechterung pro Pixel ausgeben, daher wird eine Funktionalität hinzugefügt, die die Ausgabe in Form des Eingabebilds generiert.In a further advantageous embodiment, a sigmoid loss is trained for the application of the sigmoid function in a first training phase for the assistance system. In particular, sigmoid is an advantageous function here so that the values in the range between 0 and 1 are obtained. The reason for this is that there is no continuous annotation, only annotations for 0 and 1. In particular, the sigmoidal loss function is trained in the first phase, which estimates the quality of the deterioration in perception, i.e. the degradation, from an input image. However, this flow cannot output the degradation deterioration quality per pixel, so a functionality is added that generates the output in the form of the input image.

Es hat sich weiterhin als vorteilhaft erwiesen, wenn mittels eines Selbstaufmerksamkeitsmoduls der elektronischen Recheneinrichtung die regressierten Pixel diskriminiert werden und die diskriminierten Pixel an das Sigmoidfunktionsmodul übertragen werden. Bei dem Selbstaufmerksamkeitsmodul handelt es sich insbesondere um eine so genannte Attention Map. Mittels der Attention Map kann insbesondere eine so genannte „self attention“ durchgeführt werden. Dies ist insbesondere ein vorteilhafter Schritt, um die Ausgabe des LSTM zu diskriminieren.It has also proven to be advantageous if the regressed pixels are discriminated by means of a self-awareness module of the electronic computing device and the discriminated pixels are transmitted to the sigmoid function module. The self-awareness module is in particular a so-called attention map. In particular, so-called “self attention” can be carried out using the Attention Map. In particular, this is an advantageous step to discriminate the output of the LSTM.

Ebenfalls vorteilhaft ist, wenn das Selbstaufmerksamkeitsmodul in Form einer globalen Mittelwertbildung bereitgestellt wird. Bei der globalen Mittelwertbildung handelt es sich insbesondere um ein so genanntes Global Average Pooling (GAP). Dieses wird auf das Ausgangssignal des LSTM angewendet und mit einem eindimensionalen Vektor multipliziert.It is also advantageous if the self-awareness module is provided in the form of global averaging. The global averaging is in particular a so-called Global Average Pooling (GAP). This is applied to the output of the LSTM and multiplied by a one-dimensional vector.

In einer weiteren vorteilhaften Ausgestaltungsform wird die Ausgabe des Sigmoidfunktionsmoduls an eine Dekodiereinrichtung der elektronischen Recheneinrichtung zum Dekodieren der Ausgabe übertragen. Insbesondere wird somit ein Decoder hinzugefügt, der die Ausgabe des Sigmoidfunktionsmoduls im eindimensionalen Format übernimmt. Insbesondere wird dieser eindimensionale Vektor durch Umformung in einen zweidimensionalen Vektor umgewandelt und dann wiederum dem Decoder zur Rekonstruktion zugeführt. Diese Rekonstruktion kann dann wiederum an ein übergeordnetes Assistenzsystem übertragen werden, wobei dann auf Basis der Rekonstruktion wiederum das übergeordnete Assistenzsystem entscheiden kann, ob das Bild der Kamera zur Auswertung herangezogen werden kann oder nicht. Sollte beispielsweise das Bild nicht zur Auswertung herangezogen werden können, so kann ein Alarmsignal für einen Nutzer des Kraftfahrzeugs erzeugt werden. Ferner kann auch vorgesehen sein, dass beispielsweise die Glaubwürdigkeit des Bilds für einen zumindest teilweise automatisierten Betrieb des Kraftfahrzeugs heruntergestuft wird, sollte ein entsprechender Wert der Degradation vorliegen. Somit kann ein sicherer Betrieb des Kraftfahrzeugs realisiert werden.In a further advantageous embodiment, the output of the sigmoid function module is transmitted to a decoding device of the electronic computing device for decoding the output. In particular, a decoder is thus added which accepts the output of the sigmoid function module in one-dimensional format. In particular, this one-dimensional vector is converted into a two-dimensional vector by reshaping and then in turn fed to the decoder for reconstruction. This reconstruction can then in turn be transmitted to a higher-level assistance system, in which case the higher-level assistance system can then decide on the basis of the reconstruction whether the image from the camera can be used for the evaluation or not. If, for example, the image cannot be used for the evaluation, an alarm signal can be generated for a user of the motor vehicle. Furthermore, it can also be provided that, for example, the credibility of the image for an at least partially automated operation of the motor vehicle is downgraded if a corresponding degradation value is present. Safe operation of the motor vehicle can thus be implemented.

In einer weiteren vorteilhaften Ausgestaltungsform ist die Dekodiereinrichtung in Form eines vollgefalteten neuronalen Netzwerks bereitgestellt. Bei dem vollgefalteten neuronalen Netzwerk handelt es sich insbesondere um ein so genanntes fully convoluted network (FCN). Insbesondere hat sich herausgestellt, dass dies sehr vorteilhaft ist, um den Ausgang des Sigmoidfunktionsmoduls weiter verarbeiten zu können.In a further advantageous embodiment, the decoding device is provided in the form of a fully folded neural network. The fully convoluted neural network is in particular a so-called fully convoluted network (FCN). In particular, it has turned out that this is very advantageous in order to be able to further process the output of the sigmoid function module.

In einer weiteren vorteilhaften Ausgestaltungsform wird die Dekodiereinrichtung in einer zweiten Trainingsphase für das Assistenzsystem antrainiert, wobei in der zweiten Trainingsphase, welche zeitlich nach der ersten Trainingsphase liegt, ausschließlich die Dekodiereinrichtung antrainiert wird. Insbesondere wird somit das vortrainierte Modell aus der ersten Phase genutzt. Es ist hierbei bekannt, dass es sich um zwei gleichzeitige Probleme handelt. Insbesondere erfolgt in der ersten Phase eine Schätzung des Degradationsgrads und in der zweiten Phase eine Rekonstruktion der Ausgabe. In der zweiten Phase wird daher nur der Decoder trainiert, die restlichen Komponenten des Assistenzsystems beziehungsweise der so genannten „pipeline“ bleiben untrainierbar. Andernfalls würde der Gradient des Decoders in den ersten Epochen die meisten der trainierten Gewichte, einschließlich des Encoders, zerstören. Daher werden die in der ersten Trainingsphase verwendeten Komponenten nur in der zweiten Phase als Merkmalsextraktoren verwendet.In a further advantageous embodiment, the decoding device is trained for the assistance system in a second training phase, with only the decoding device being trained in the second training phase, which occurs after the first training phase. In particular, the pre-trained model from the first phase is used. It is known that these are two simultaneous problems. In particular, the degree of degradation is estimated in the first phase and the output is reconstructed in the second phase. In the second phase, therefore, only the decoder is trained, the remaining components of the assistance system or the so-called "pipeline" remain untrainable. Otherwise, the decoder's gradient would destroy most of the trained weights, including the encoder, in the first few epochs. Therefore, the components used in the first training phase are used as feature extractors only in the second phase.

Bei dem vorgestellten Verfahren handelt es sich insbesondere um ein computerimplementiertes Verfahren. Das Verfahren wird dabei insbesondere auf einer elektronischen Recheneinrichtung durchgeführt, wobei die elektronische Recheneinrichtung insbesondere Schaltkreise, beispielsweise integrierte Schaltkreise, Prozessoren und weitere elektronische Bauteile aufweisen kann, um die entsprechenden Verfahrensschritte durchzuführen.The method presented is in particular a computer-implemented method. The method is carried out in particular on an electronic computing device, in which case the electronic computing device can have circuits, for example integrated circuits, processors and other electronic components, in order to carry out the corresponding method steps.

Daher betrifft ein weiterer Aspekt der Erfindung ein Computerprogrammprodukt mit Programmcodemitteln, welche in einem computerlesbaren Speichermedium gespeichert sind, um das Verfahren zum Bestimmen eines Degradationsgrads nach dem vorhergehenden Aspekt durchzuführen, wenn das Computerprogrammprodukt auf einem Prozessor einer elektronischen Recheneinrichtung abgearbeitet wird.A further aspect of the invention therefore relates to a computer program product with program code means, which are stored in a computer-readable storage medium, in order to carry out the method for determining a degree of degradation according to the preceding aspect, when the computer program product is processed on a processor of an electronic computing device.

Ein nochmals weiterer Aspekt der Erfindung betrifft ein computerlesbares Speichermedium mit einem Computerprogrammprodukt, insbesondere eine elektronische Recheneinrichtung mit einem Computerprogrammprodukt, nach dem vorhergehenden Aspekt.Yet another aspect of the invention relates to a computer-readable storage medium with a computer program product, in particular an electronic computing device with a computer program product, according to the preceding aspect.

Ein nochmals weiterer Aspekt der Erfindung betrifft ein Assistenzsystem zum Bestimmen eines Degradationsgrads eines mittels einer Kamera eines Kraftfahrzeugs aufgenommenen Bilds, mit zumindest einer Kamera und mit einer elektronischen Recheneinrichtung, wobei das Assistenzsystem zum Durchführen eines Verfahrens nach dem vorhergehenden Aspekt ausgebildet ist. Insbesondere wird das Verfahren mittels des Assistenzsystems durchgeführt.Yet another aspect of the invention relates to an assistance system for determining a degree of degradation of an image recorded by a camera of a motor vehicle, with at least one camera and with an electronic computing device, the assistance system being designed to carry out a method according to the preceding aspect. In particular, the method is carried out using the assistance system.

Ein nochmals weiterer Aspekt der Erfindung betrifft ein Kraftfahrzeug mit einem Assistenzsystem nach dem vorhergehenden Aspekt. Das Kraftfahrzeug ist insbesondere als zumindest teilweise autonomes, insbesondere als vollautonomes, Kraftfahrzeug ausgebildet.Yet another aspect of the invention relates to a motor vehicle with an assistance system according to the preceding aspect. The motor vehicle is designed in particular as an at least partially autonomous, in particular as a fully autonomous, motor vehicle.

Vorteilhafte Ausgestaltungsformen des Verfahrens sind als vorteilhafte Ausgestaltungsformen des Computerprogrammprodukts, des computerlesbaren Speichermediums, des Assistenzsystems sowie des Kraftfahrzeugs anzusehen. Das Assistenzsystem sowie das Kraftfahrzeug weisen dazu gegenständliche Merkmale auf, welche eine Durchführung des Verfahrens oder einer vorteilhaften Ausgestaltungsform davon ermöglichen.Advantageous configurations of the method are to be regarded as advantageous configurations of the computer program product, the computer-readable storage medium, the assistance system and the motor vehicle. For this purpose, the assistance system and the motor vehicle have specific features which enable the method or an advantageous embodiment thereof to be carried out.

Die Erfindung wird nun anhand von bevorzugten Ausführungsbeispielen sowie unter Bezugnahme auf die beigefügten Zeichnungen näher erläutert.The invention will now be explained in more detail using preferred exemplary embodiments and with reference to the accompanying drawings.

Dabei zeigen:

  • 1 eine schematische Draufsicht auf ein Kraftfahrzeug mit einer Ausführungsform eines Assistenzsystems;
  • 2 ein schematisches Blockschaltbild einer Ausführungsform eines Assistenzsystems; und
  • 3 eine schematische Ansicht einer Ausführungsform eines Regressionsmoduls einer Ausführungsform einer elektronischen Recheneinrichtung einer Ausführungsform des Assistenzsystems.
show:
  • 1 a schematic plan view of a motor vehicle with an embodiment of an assistance system;
  • 2 a schematic block diagram of an embodiment of an assistance system; and
  • 3 a schematic view of an embodiment of a regression module of an embodiment of an electronic computing device of an embodiment of the assistance system.

In den Figuren sind gleiche oder funktionsgleiche Elemente mit den gleichen Bezugszeichen versehen.Elements that are the same or have the same function are provided with the same reference symbols in the figures.

1 zeigt eine schematische Draufsicht auf eine Ausführungsform eines Kraftfahrzeugs 1 mit einer Ausführungsform eines Assistenzsystems 2. Das Assistenzsystem 2 ist zum Bestimmen eines Degradationsgrads 3 (2) eines mittels einer Kamera 4 des Kraftfahrzeugs 1 aufgenommenen Bilds 5 ausgebildet. Das Assistenzsystem 2 weist hierzu insbesondere die Kamera 4 sowie eine elektronische Recheneinrichtung 6 auf. Mit der Kamera 4 kann insbesondere eine Umgebung 7 des Kraftfahrzeugs 1 erfasst werden. Bei dem Kraftfahrzeug 1 handelt es sich vorliegend insbesondere um ein zumindest teilweise autonomes, insbesondere um ein vollautonomes Kraftfahrzeug 1. Das Assistenzsystem 2 kann vorliegend lediglich zum Bestimmen des Degradationsgrads 3 ausgebildet sein. Zusätzlich kann das Assistenzsystem 2 auch zum zumindest teilweise autonomen Betrieb beziehungsweise zum vollautonomen Betrieb des Kraftfahrzeugs 1 ausgebildet sein. Hierzu kann das Assistenzsystem 2 beispielsweise Eingriffe in eine Lenk- und Beschleunigungseinrichtung des Kraftfahrzeugs 1 vornehmen. Auf Basis der erfassten Umgebung 7 wiederum kann insbesondere das Assistenzsystem 2 dann beispielsweise entsprechende Steuersignale für den Lenk- beziehungsweise Bremseingriff durchführen. 1 shows a schematic plan view of an embodiment of a motor vehicle 1 with an embodiment of an assistance system 2. The assistance system 2 is for determining a degree of degradation 3 ( 2 ) of an image 5 recorded by a camera 4 of the motor vehicle 1 is formed. For this purpose, the assistance system 2 has in particular the camera 4 and an electronic computing device 6 . In particular, an area 7 of the motor vehicle 1 can be captured with the camera 4 . In the present case, the motor vehicle 1 is in particular an at least partially autonomous, in particular a fully autonomous motor vehicle 1 . In addition, the assistance system 2 can also be designed for at least partially autonomous operation or for fully autonomous operation of the motor vehicle 1 . For this purpose, the assistance system 2, for example, interventions in a steering and Accelerating device of the motor vehicle 1 make. On the basis of the detected surroundings 7, in turn, the assistance system 2 in particular can then, for example, carry out corresponding control signals for the steering or braking intervention.

2 zeigt ein schematisches Blockschaltbild einer Ausführungsform des Assistenzsystems 2, insbesondere der elektronischen Recheneinrichtung 6 des Assistenzsystems 2. 2 shows a schematic block diagram of an embodiment of the assistance system 2, in particular the electronic computing device 6 of the assistance system 2.

Beim Verfahren zum Bestimmen des Degradationsgrads 3 wird das Bild 5 mittels der Kamera 4 erfasst. Es erfolgt ein Durchführen einer tiefen Merkmalsextraktion einer Vielzahl von Pixeln 8 des Bilds 5 mittels eines Kodiermoduls 9 der elektronischen Recheneinrichtung 6. Das Kodiermodul 9 kann auch als Encoder bezeichnet werden. Es erfolgt ein Clustern der Vielzahl von Pixeln 8 mittels eines Merkmalspunktclustermoduls der elektronischen Recheneinrichtung 6. Es werden die geclusterten Pixel 8 mittels eines Regressionsmoduls 11 der elektronischen Recheneinrichtung 6 regressiert. Es erfolgt dann wiederum ein Bestimmen des Degradationsgrads 3 in Abhängigkeit von einer Auswertung durch Anwenden einer Sigmoidfunktion 20 (3) nach der Regression mittels eines Sigmoidfunktionsmoduls 12 der elektronischen Recheneinrichtung 6 als Ausgabe des Sigmoidfunktionsmoduls 12.In the method for determining the degree of degradation 3 , the image 5 is captured by the camera 4 . A deep feature extraction of a multiplicity of pixels 8 of the image 5 is carried out by means of a coding module 9 of the electronic computing device 6. The coding module 9 can also be referred to as an encoder. The multiplicity of pixels 8 are clustered using a feature point cluster module of the electronic computing device 6 . The clustered pixels 8 are regressed using a regression module 11 of the electronic computing device 6 . The degree of degradation 3 is then determined again as a function of an evaluation by applying a sigmoid function 20 ( 3 ) after the regression by means of a sigmoid function module 12 of the electronic computing device 6 as an output of the sigmoid function module 12.

2 zeigt ferner, dass zum Anwenden der Sigmoidfunktion 20 in einer ersten Trainingsphase für das Assistenzsystem 2 ein Sigmoidverlust 13 trainiert wird. Ferner weist das Assistenzsystem 2 beziehungsweise die elektronische Recheneinrichtung 6 ein Selbstaufmerksamkeitsmodul 14 auf, mittels welchem die regressierten Pixel 8 diskriminiert werden und die diskriminierten Pixel 8 an das Sigmoidfunktionsmodul 12 übertragen werden. Das Selbstaufmerksamkeitsmodul 14 ist insbesondere in Form einer globalen Mittelwertbildung (global average pooling) bereitgestellt. 2 also shows that a sigmoid loss 13 is trained for the application of the sigmoid function 20 in a first training phase for the assistance system 2 . Furthermore, the assistance system 2 or the electronic computing device 6 has a self-awareness module 14 by means of which the regressed pixels 8 are discriminated and the discriminated pixels 8 are transmitted to the sigmoid function module 12 . In particular, the self-awareness module 14 is provided in the form of global average pooling.

2 zeigt ferner, dass das Kodiermodul 9 als faltendes neuronales Netzwerk bereitgestellt wird. Ferner werden die Vielzahl von Pixeln 8 mittels eines K-means Algorithmus 15 des Merkmalspunktclustermoduls 10 geclustert. Die geclusterten Pixel 8 werden wiederum mittels eines als Lang-Kurzzeit-Speicher-Modul 16 ausgebildeten Regressionsmoduls 11 regressiert. Ferner werden die geclusterten Pixel 8 unidirektional, was durch die Pfeile 17 dargestellt ist, von dem Merkmalspunktclustermodul 10 zu dem Regressionsmodul 11 übertragen. Von dem Regressionsmodul 11 werden wiederum bidirektional die Pixel 8 an das Selbstaufmerksamkeitsmodul 14, von dem Selbstaufmerksamkeitsmodul 14 an das Sigmoidfunktionsmodul 12 und von dem Sigmoidfunktionsmodul 12 bidirektional an den Sigmoidverlust 13 übertragen. Dies ist insbesondere durch die Pfeile 18 dargestellt. Ferner erfolgt die Weitergabe des Degradationsgrads 3 ebenfalls bidirektional an eine Dekodiereinrichtung 19 des Assistenzsystems 2. Insbesondere erfolgt somit die Ausgabe des Sigmoidfunktionsmoduls 12 an die Dekodiereinrichtung 19 zum Dekodieren der Ausgabe. Die Dekodiereinrichtung 19 kann dabei insbesondere in Form eines vollgefalteten neuronalen Netzwerks bereitgestellt werden. Die Dekodiereinrichtung 19 wird insbesondere in einer zweiten Trainingsphase für das Assistenzsystem 2 antrainiert, wobei in der zweiten Trainingsphase, welche zeitlich nach der ersten Trainingsphase liegt, ausschließlich die Dekodiereinrichtung 19 antrainiert wird. 2 Figure 12 further shows that the coding module 9 is provided as a convolutional neural network. Furthermore, the multiplicity of pixels 8 are clustered using a K-means algorithm 15 of the feature point cluster module 10 . The clustered pixels 8 are in turn regressed using a regression module 11 embodied as a long-short-term memory module 16 . Furthermore, the clustered pixels 8 are transmitted unidirectionally, which is represented by the arrows 17, from the feature point cluster module 10 to the regression module 11. The pixels 8 are in turn transmitted bidirectionally from the regression module 11 to the self-awareness module 14, from the self-awareness module 14 to the sigmoid function module 12 and from the sigmoid function module 12 bidirectionally to the sigmoid loss 13. This is shown in particular by arrows 18 . Furthermore, the degree of degradation 3 is also forwarded bidirectionally to a decoding device 19 of the assistance system 2. In particular, the output of the sigmoid function module 12 is thus to the decoding device 19 for decoding the output. The decoding device 19 can be provided in particular in the form of a fully folded neural network. In particular, the decoding device 19 is trained for the assistance system 2 in a second training phase, with only the decoding device 19 being trained in the second training phase, which occurs after the first training phase.

3 zeigt ein schematisches Blockschaltbild einer Ausführungsform des Regressionsmoduls 11 gemäß 2. Vorliegend handelt es sich insbesondere um ein Lang-Kurzzeit-Speicher-Modul 16, welches auch als Long-Short-Term-Memory Module (LSTM) bezeichnet werden kann. Das Lang-Kurzzeit-Speicher-Modul 16 weist vorliegend zumindest drei Sigmoidfunktionen 20 sowie zumindest zwei tanh-Funktionen 21 auf. Ferner weist das Lang-Kurzzeit-Speicher-Modul 16 zumindest zwei punktweise Multiplikationen 22 sowie zwei punktweise Additionen 23 auf. Die Ergebnisse der Regression werden wiederum an die Kodiereinrichtung 9 rückpropagiert, was insbesondere durch die Pfeile 24 dargestellt ist. 3 FIG. 12 shows a schematic block diagram of an embodiment of the regression module 11 according to FIG 2 . In the present case, it is in particular a long-short-term memory module 16, which can also be referred to as a long-short-term memory module (LSTM). In the present case, the long-short-term storage module 16 has at least three sigmoid functions 20 and at least two tanh functions 21 . Furthermore, the long-short-term memory module 16 has at least two point-by-point multiplications 22 and two point-by-point additions 23 . The results of the regression are in turn propagated back to the coding device 9, which is shown in particular by the arrows 24.

Insbesondere eignet sich ein solches Lang-Kurzzeit-Speicher-Modul 16, da es sich bei dem K-means Algorithmus 15 um eine Serie von Tiefenmerkmalspunkten handelt, welche separiert in Clustern sind, sodass es sich um ein Regressionsproblem handelt.Such a long-short-term storage module 16 is particularly suitable since the K-means algorithm 15 is a series of depth feature points which are separated into clusters, so that a regression problem is involved.

Das Kernkonzept des Lang-Kurzzeit-Speicher-Moduls 16 sind der Zellzustand und seine verschiedenen Gates. Zellzustände wirken wie ein Speicher des Netzwerks und können während der Verarbeitung der Sequenz relevante Informationen tragen. Die Gates sind verschiedene neuronale Netze, die entscheiden, welche Informationen auf dem Zellstatus erlaubt sind. Die Gates können während des Trainings lernen, welche Informationen relevant sind, um sie zu behalten oder zu vergessen. Jedes Tor beziehungsweise Gate enthält sigmoidale Aktivierung. Dies ist hilfreich, um Daten zu aktualisieren oder zu vergessen, da jede Zahl, die mit 0 multipliziert wird, 0 ist, wodurch Werte verschwinden oder „vergessen“ werden. Jede Zahl, die mit 1 multipliziert wird, ist der gleiche Wert, daher bleibt dieser Wert gleich oder wird „behalten.“ In dem Lang-Kurzzeit-Speicher-Modul 16 wird zunächst das Vergessen-Gatter bereitgestellt. Dieses Tor entscheidet, welche Informationen weggeworfen oder behalten werden sollen. Informationen aus dem vorherigen versteckten Zustand und Informationen aus der aktuellen Eingabe werden durch die Sigmoidfunktion 20 geleitet. Dabei kommen Werte zwischen 0 und 1 heraus. Je näher an 0, desto eher wird vergessen, und je näher an 1, desto eher wird behalten.The core concept of the long-short-term storage module 16 is the cell state and its various gates. Cell states act like a memory of the network and can carry relevant information during the processing of the sequence. The gates are various neural networks that decide what information is allowed on the cell status. During training, the gates can learn which information is relevant in order to remember or forget it. Each gate contains sigmoidal activation. This is useful for updating or forgetting dates, since any number multiplied by 0 is 0, making values disappear or "forget". Any number multiplied by 1 is the same value, so that value stays the same or is "kept." In the long-short-term storage module 16, the forget gate is first provided. This gate decides what information to discard or keep. Information from the previous hidden state and information from the current one output are passed through the sigmoid function 20. This results in values between 0 and 1. The closer to 0, the more likely it is to be forgotten, and the closer to 1, the more likely it is to be retained.

Als nächstes folgt das Eingabe-Gatter, bei dem zunächst der vorherige versteckte Zustand in die aktuelle Eingabe an eine Sigmoidfunktion 20 übergeben wird, die entscheidet, welche Werte aktualisiert werden, indem sie die Werte so transformiert, dass sie zwischen 0 und 1 liegen. Es wird der versteckte Zustand an die aktuelle Eingabe auch an die tanh-Funktion 21 übergeben, um Werte zwischen -1 und 1 zu „zerquetschen“, um das Netzwerk zu regulieren. Später werden die Ausgaben von beiden multipliziert. Die Sigmoidausgabe entscheidet, welche Informationen wichtig sind, um sie von der tanh-Ausgabe zu behalten.Next is the input gate, where first the previous hidden state in the current input is passed to a sigmoid function 20 which decides which values to update by transforming the values to be between 0 and 1. It also passes the hidden state on the current input to the tanh function 21 to "crunch" values between -1 and 1 to regulate the network. Later, the outputs of both are multiplied. The sigmoid output decides what information is important to keep from the tanh output.

Zur Berechnung des Zellzustands wird zunächst der Zellzustand punktweise mit dem Vergessen-Vektor multipliziert. Dann wird der Ausgang des Eingangsgatters genutzt und es wird eine punktweise Addition 23 durchgeführt, die den Zellstatus auf neue Werte aktualisiert, die das neuronale Netz für relevant hält.To calculate the cell state, the cell state is first multiplied point by point by the forgetting vector. Then the output of the input gate is used and a pointwise addition 23 is performed, updating the cell status to new values that the neural network deems relevant.

Ein Ausgangsgatter entscheidet dann, was der nächste versteckte Zustand sein soll. Der versteckte Zustand enthält Informationen über die vorherigen Eingaben. Dieser Zustand wird auch für Vorhersagen verwendet.An output gate then decides what the next hidden state should be. The hidden state contains information about the previous inputs. This state is also used for predictions.

Es ist zu beachten, dass die Verbindung vom Encoder zum dem LSTM-Modul über K-means unidirektional ist und nur für den Vorwärtsdurchlauf verwendet wird, da ein unüberwachtes K-Means-Clustering verwendet wird. Um einen unverbundenen Graphen zu erzeugen, erfolgt die Rückpropagation 24 über eine separate Verbindung von dem Regressionsmodul 11 zu der Kodiereinrichtung 9. Es wird auch davon abgeraten, das überwachte K-means zu verwenden und die Verbindung bidirektional zu machen, da es nur wenige trainierbare Parameter hat, die bei der Rückpropagation 24 nicht ausreichen, da der Gradientenfluss durch eine große Anzahl von trainierbaren Parametern aus dem LSTM erfolgt.It should be noted that the connection from the encoder to the LSTM module is unidirectional via K-means and is only used for the forward pass as unsupervised K-means clustering is used. To produce a disconnected graph, the back propagation 24 is done via a separate connection from the regression module 11 to the encoder 9. It is also discouraged to use supervised K-means and make the connection bi-directional as there are few trainable parameters has, which are not sufficient in the back propagation 24, since the gradient flow takes place through a large number of trainable parameters from the LSTM.

Ferner stellt die zeitliche Konsistenz einen wichtigen Aspekt bei bildverarbeitungsbasierten Algorithmen dar, um die Systemleistung konstant zu halten. Die in den Figuren vorgeschlagene Lösung kann um eine weitere Kodiereinrichtung erweitert werden, sodass beide Encoder über aufeinanderfolgende Bildrahmen beziehungsweise Frames der Videosequenz verfügen. Dies ist vorteilhaft für das Assistenzsystem 2, Vorhersagen ohne Flackereffekt auszugeben.Furthermore, temporal consistency is an important aspect of image processing-based algorithms in order to keep system performance constant. The solution proposed in the figures can be expanded to include a further coding device, so that both encoders have consecutive image frames or frames of the video sequence at their disposal. This is advantageous for the assistance system 2 to output predictions without a flickering effect.

Insgesamt ist somit ein halbüberwachter Algorithmus vorgeschlagen, der den Degradationsgrad 3 auf Pixelbasis aus dem Eingabebild schätzt. Das Assistenzsystem 2 ist derart flexibel, dass es keine harte Annotation erfordert, die lästig und sehr kostenintensiv ist. Das Assistenzsystem 2 kann insbesondere für ein zumindest teilweise autonomes Fahren des Kraftfahrzeugs 1 genutzt werden.Overall, a semi-supervised algorithm is thus proposed that estimates the degree of degradation 3 on a pixel basis from the input image. The assistance system 2 is so flexible that it does not require any hard annotation, which is annoying and very expensive. The assistance system 2 can be used in particular for at least partially autonomous driving of the motor vehicle 1 .

Claims (15)

Verfahren zum Bestimmen eines Degradationsgrads (3) eines mittels einer Kamera (4) eines Assistenzsystems (2) eines Kraftfahrzeugs (1) aufgenommenen Bilds (5) mittels des Assistenzsystems (2), mit den Schritten: - Erfassen des Bilds (5) mittels der Kamera (4); - Durchführen einer tiefen Merkmalsextraktion einer Vielzahl von Pixeln (8) des Bilds (5) mittels eines Kodiermoduls (9) einer elektronischen Recheneinrichtung (6) des Assistenzsystems (2); - Clustern der Vielzahl von Pixeln (8) mittels eines Merkmalspunktclustermoduls (10) der elektronischen Recheneinrichtung (6); - Regressieren der geclusterten Pixel (8) mittels eines Regressionsmoduls (11) der elektronischen Recheneinrichtung (6); und - Bestimmen des Degradationsgrads (3) in Abhängigkeit von einer Auswertung durch Anwenden einer Sigmoidfunktion (20) nach der Regression mittels eines Sigmoidfunktionsmoduls (12) der elektronischen Recheneinrichtung (6) als Ausgabe des Sigmoidfunktionsmoduls (12).Method for determining a degree of degradation (3) of an image (5) recorded by a camera (4) of an assistance system (2) of a motor vehicle (1) using the assistance system (2), with the steps: - Capturing the image (5) by means of the camera (4); - Carrying out a deep feature extraction of a plurality of pixels (8) of the image (5) by means of a coding module (9) of an electronic computing device (6) of the assistance system (2); - clustering the plurality of pixels (8) by means of a feature point cluster module (10) of the electronic computing device (6); - Regression of the clustered pixels (8) by means of a regression module (11) of the electronic computing device (6); and - Determining the degree of degradation (3) as a function of an evaluation by applying a sigmoid function (20) after the regression using a sigmoid function module (12) of the electronic computing device (6) as the output of the sigmoid function module (12). Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass das Kodiermodul (9) als faltendes neuronales Netzwerk bereitgestellt wird.procedure after claim 1 , characterized in that the coding module (9) is provided as a convolutional neural network. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die Vielzahl von Pixeln (8) mittels eines K-means Algorithmus (15) des Merkmalspunktclustermoduls (10) geclustert wird.procedure after claim 1 or 2 , characterized in that the plurality of pixels (8) is clustered by means of a K-means algorithm (15) of the feature point cluster module (10). Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die geclusterten Pixel (8) mittels eines als Lang-Kurzzeit-Speicher-Modul (16) ausgebildeten Regressionsmoduls (11) regressiert werden.Method according to one of the preceding claims, characterized in that the clustered pixels (8) are regressed by means of a regression module (11) designed as a long/short-term memory module (16). Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die geclusterten Pixel (8) unidirektional zumindest von dem Merkmalspunktclustermodul (10) zu dem Regressionsmodul (11) übertragen werden.Method according to one of the preceding claims, characterized in that the clustered pixels (8) are transmitted unidirectionally at least from the feature point cluster module (10) to the regression module (11). Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die regressierten Pixel (8) an die Kodiereinrichtung (9) rückpropagiert werden.Method according to one of the preceding claims, characterized in that the regressed pixels (8) are propagated back to the coding device (9). Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass zum Anwenden der Sigmoidfunktion (20) in einer ersten Trainingsphase für das Assistenzsystem (2) ein Sigmoidverlust (13) trainiert wird.Method according to one of the preceding claims, characterized in that a sigmoid loss (13) is trained in a first training phase for the assistance system (2) in order to apply the sigmoid function (20). Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass mittels eines Selbstaufmerksamkeitsmoduls (14) der elektronischen Recheneinrichtung (6) die regressierten Pixel (8) diskriminiert werden und die diskriminierten Pixel (8) an das Sigmoidfunktionsmodul (12) übertragen werden.Method according to one of the preceding claims, characterized in that the regressed pixels (8) are discriminated by means of a self-awareness module (14) of the electronic computing device (6) and the discriminated pixels (8) are transmitted to the sigmoid function module (12). Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass das Selbstaufmerksamkeitsmodul (14) in Form einer globalen Mittelwertbildung bereitgestellt wird.procedure after claim 8 , characterized in that the self-awareness module (14) is provided in the form of global averaging. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Ausgabe des Sigmoidfunktionsmoduls (12) an eine Dekodiereinrichtung (19) der elektronischen Recheneinrichtung (6) zum Dekodieren der Ausgabe übertragen wird.Method according to one of the preceding claims, characterized in that the output of the sigmoid function module (12) is transmitted to a decoding device (19) of the electronic computing device (6) for decoding the output. Verfahren nach Anspruch 10, dadurch gekennzeichnet, dass die Dekodiereinrichtung (19) in Form eines vollgefalteten neuronalen Netzwerks bereitgestellt wird.procedure after claim 10 , characterized in that the decoding means (19) is provided in the form of a fully folded neural network. Verfahren nach Anspruch 10 oder 11, dadurch gekennzeichnet, dass die Dekodiereinrichtung (19) in einer zweiten Trainingsphase für das Assistenzsystem (2) antrainiert wird, wobei in der zweiten Trainingsphase, welche zeitlich nach der ersten Trainingsphase liegt, ausschließlich die Dekodiereinrichtung (19) antrainiert wird.procedure after claim 10 or 11 , characterized in that the decoding device (19) is trained in a second training phase for the assistance system (2), wherein in the second training phase, which is chronologically after the first training phase, only the decoding device (19) is trained. Computerprogrammprodukt mit Programmcodemitteln, welche, wenn die Programmcodemittel auf einer elektronischen Recheneinrichtung (6) abgearbeitet werden, diese dazu veranlassen ein Verfahren nach einem der Ansprüche 1 bis 12 durchzuführen.Computer program product with program code means which, when the program code means are processed on an electronic computing device (6), this cause a method according to one of Claims 1 until 12 to perform. Computerlesbares Speichermedium mit zumindest einem Computerprogrammprodukt nach Anspruch 13.Computer-readable storage medium containing at least one computer program product Claim 13 . Assistenzsystem (2) zum Bestimmen eines Degradationsgrads (3) eines mittels einer Kamera (4) eines Kraftfahrzeugs (1) aufgenommenen Bilds (5), mit zumindest einer Kamera (4) und mit einer elektronischen Recheneinrichtung (6), wobei das Assistenzsystem (2) zum Durchführen eines Verfahrens nach einem der Ansprüche 1 bis 12 ausgebildet ist.Assistance system (2) for determining a degree of degradation (3) of an image (5) recorded by a camera (4) of a motor vehicle (1), with at least one camera (4) and with an electronic computing device (6), the assistance system (2 ) for performing a method according to any one of Claims 1 until 12 is trained.
DE102021103200.8A 2021-02-11 2021-02-11 Method for determining a degree of degradation of a recorded image, computer program product, computer-readable storage medium and assistance system Active DE102021103200B3 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102021103200.8A DE102021103200B3 (en) 2021-02-11 2021-02-11 Method for determining a degree of degradation of a recorded image, computer program product, computer-readable storage medium and assistance system
PCT/EP2022/052939 WO2022171590A1 (en) 2021-02-11 2022-02-08 Method for determining a degradation degree of a captured image, computer program product, computer-readable storage medium as well as assistance system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102021103200.8A DE102021103200B3 (en) 2021-02-11 2021-02-11 Method for determining a degree of degradation of a recorded image, computer program product, computer-readable storage medium and assistance system

Publications (1)

Publication Number Publication Date
DE102021103200B3 true DE102021103200B3 (en) 2022-06-23

Family

ID=80786370

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021103200.8A Active DE102021103200B3 (en) 2021-02-11 2021-02-11 Method for determining a degree of degradation of a recorded image, computer program product, computer-readable storage medium and assistance system

Country Status (2)

Country Link
DE (1) DE102021103200B3 (en)
WO (1) WO2022171590A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102022207416B3 (en) 2022-07-20 2023-10-05 Zf Friedrichshafen Ag Computer-implemented method for detecting occlusions of an imaging sensor
DE102022121781A1 (en) 2022-08-29 2024-02-29 Connaught Electronics Ltd. Computer vision based on thermal imaging in a vehicle

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160379067A1 (en) 2013-02-20 2016-12-29 Magna Electronics Inc. Vehicle vision system with dirt detection
US20180315167A1 (en) 2015-11-06 2018-11-01 Clarion Co., Ltd. Object Detection Method and Object Detection System
EP3657379A1 (en) 2018-11-26 2020-05-27 Connaught Electronics Ltd. A neural network image processing apparatus for detecting soiling of an image capturing device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160379067A1 (en) 2013-02-20 2016-12-29 Magna Electronics Inc. Vehicle vision system with dirt detection
US20180315167A1 (en) 2015-11-06 2018-11-01 Clarion Co., Ltd. Object Detection Method and Object Detection System
EP3657379A1 (en) 2018-11-26 2020-05-27 Connaught Electronics Ltd. A neural network image processing apparatus for detecting soiling of an image capturing device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
DAS, Arindam. Soildnet: Soiling degradation detection in autonomous driving. arXiv preprint arXiv:1911.01054v2, 2019

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102022207416B3 (en) 2022-07-20 2023-10-05 Zf Friedrichshafen Ag Computer-implemented method for detecting occlusions of an imaging sensor
DE102022121781A1 (en) 2022-08-29 2024-02-29 Connaught Electronics Ltd. Computer vision based on thermal imaging in a vehicle

Also Published As

Publication number Publication date
WO2022171590A1 (en) 2022-08-18

Similar Documents

Publication Publication Date Title
EP2368216B1 (en) Method and device for analyzing surrounding objects and/or surrounding scenes, such as for object and scene class segmenting
DE102017107264A1 (en) VISIBLE RAIN RECOGNITION USING DEEP LEARNING
DE102021103200B3 (en) Method for determining a degree of degradation of a recorded image, computer program product, computer-readable storage medium and assistance system
DE102017217733A1 (en) Checking a neural network
DE102017127592A1 (en) A method of classifying image scenes in a driving support system
EP3291172B1 (en) Method for calculating final image data
DE112018005089T5 (en) Inference device, inference method, program and non-transitory tangible computer-readable medium
DE102012019425A1 (en) Method, device and system for a parking control
DE112019007762T5 (en) Method for training a generative adversarial network, modified image generation module and system for detecting features in an image
DE202018104373U1 (en) Apparatus adapted to operate a machine learning system
DE102018217091A1 (en) Process, artificial neural network, device, computer program and machine-readable storage medium for the semantic segmentation of image data
DE102020209538A1 (en) Device and method for determining a physical property of a physical object
WO2020069964A1 (en) Method, artificial neural network, device, computer program, and machine-readable storage medium for semantically segmenting image data
DE102023102316A1 (en) SYSTEM AND METHOD FOR ROBUST GENERATION OF PSEUDO-LABELS FOR SEMI-SUPERVISED OBJECT DETECTION
EP1180258B1 (en) Pattern recognition by means of an examination of supplementary features after a partial processing
DE102017124600A1 (en) Semantic segmentation of an object in an image
DE102018113621A1 (en) A method of training a convolutional neural network for processing image data for use in a driving support system
DE102017116016A1 (en) A motor vehicle sensor device having a plurality of sensor units and a neural network for generating an integrated representation of an environment
DE102017128082A1 (en) Meta-architecture design for a CNN network
DE102020200503A1 (en) Method for generating labeled data, in particular for training a neural network, by improving initial labels
DE102021200643B3 (en) Method for environment recognition for semi-autonomous or autonomous driving functions of a motor vehicle using a neural network
DE102018201909A1 (en) Method and device for object recognition
DE102020209958A1 (en) Device for learning an image of a vehicle camera and method therefor
DE102019217951A1 (en) Method and apparatus for determining a domain distance between at least two data domains
DE102017223166A1 (en) Method for automatic classification

Legal Events

Date Code Title Description
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06K0009620000

Ipc: G06V0030190000

R163 Identified publications notified
R012 Request for examination validly filed
R016 Response to examination communication
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06V0030190000

Ipc: G06V0020560000

R018 Grant decision by examination section/examining division
R020 Patent grant now final