-
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.
-
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.
-
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.
-
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.
-
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.
-
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.
-
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.
-
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.
-
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.
-
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.
-
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.
-
Somit ist das Assistenzsystem einfach zu trainieren, wobei hierzu insbesondere eine geringe Anzahl von Datensätzen notwendig ist.
-
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.
-
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.
-
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.
-
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.
-
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.
-
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.
-
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.
-
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.
-
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.
-
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.
-
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 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 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.
-
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.
-
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.
-
Ein nochmals weiterer Aspekt der Erfindung betrifft ein computerlesbares Speichermedium mit einem Computerprogrammprodukt, insbesondere eine elektronische Recheneinrichtung mit einem Computerprogrammprodukt, nach dem vorhergehenden Aspekt.
-
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.
-
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.
-
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.
-
Die Erfindung wird nun anhand von bevorzugten Ausführungsbeispielen sowie unter Bezugnahme auf die beigefügten Zeichnungen näher erläutert.
-
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.
-
In den Figuren sind gleiche oder funktionsgleiche Elemente mit den gleichen Bezugszeichen versehen.
-
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.
-
2 zeigt ein schematisches Blockschaltbild einer Ausführungsform des Assistenzsystems 2, insbesondere der elektronischen Recheneinrichtung 6 des Assistenzsystems 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.
-
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 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.
-
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.
-
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.
-
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.
-
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.
-
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.
-
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.
-
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.
-
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.
-
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.