-
Stand der Technik
-
Die Erfindung geht aus von einem Verfahren und einer Vorrichtung zur Verarbeitung von Bildern insbesondere mit einem künstlichen neuronalen Netzwerk.
-
Y. Dong, H. Su, J. Zhu, and F. Bao. Towards interpretable deep neural networks by leveraging adversarial examples. arXiv preprint arXiv: 1708.05493, 2017 offenbart Aspekte, die dem Verständnis einer Ausgabe eines künstlichen neuronalen Netzwerks dienen sollen. Dazu werden interne Zustände des künstlichen neuronalen Netzwerks betrachtet, die bei der Analyse von Bildern, die eine für künstliche neuronale Netzwerke feindselige Störung enthalten, auftreten. Die für künstliche neuronale Netzwerke feindselige Störung in einem zu analysierenden Bild dient dazu, eine vertrauenswürdige Ausgabe des künstlichen neuronalen Netzwerks zu erzielen, die vom Erzeuger dieses Bildes beabsichtigt jedoch gegenüber einem im Bild dargestellten Inhalt falsch ist. Beispielsweise wird in ein Bild eine bei der Betrachtung des Bildes für das menschliche Auge schwer oder nicht erkennbare Änderung, beispielsweise ein Rauschen, in das zu analysierende Bild integriert, durch die dieses Bild vom künstlichen neuronalen Netzwerk falsch klassifiziert wird.
-
Wünschenswert ist es, derartige Störungen in einem Bild zuverlässig zu erkennen.
-
Offenbarung der Erfindung
-
Dies wird durch den Gegenstand der unabhängigen Ansprüche erreicht.
-
In Verfahren zur Bilderkennung, welche auf Maschinenlernen basieren, wird einem Eingang x ∈ X ein Ausgang y ∈ Y zugeordnet, wobei X einen Eingangsraum und Y einen Ausgangsraum bezeichnet.
-
Ein Modell für die Bilderkennung umfasst eine Kompatibilitätsfunktion F: X × Y -> ℝ und eine Vorhersagefunktion f(x; w) = arg maxF(x, y; w), mit y ∈ Y .
-
Die Vorhersagefunktion f (x; w) umfasst einen Modellparametervektor w, die Kompatibilitätsfunktion F stellt ein Maß für die Kompatibilität eines Paares (x, y) bei einem gegebenen Parametervektor w dar.
-
Im Folgenden wird das Verfahren am Beispiel eines künstlichen neuronalen Netzwerks beschrieben. Das Verfahren ist auf jede parameterisierte und nach w ableitbare Funktion anwendbar.
-
Ausgehend von einer Trainingsmenge S = {(x
n, y
n), n = 1, ... N} von N Eingangs/Ausgangspaaren mit x
n ∈ X und y
n ∈ Y wird zum Training des Modells eine Vorhersage mit dem Ziel durchgeführt, eine Structured Joint Embedding Funktion f: X → Y zu erlernen indem ein empirisches Risiko
minimiert wird, wobei Δ: Y × Y → ℝ die Kosten misst, die für die Vorhersage f (x) entstehen, wenn y
n die zutreffende Klasse kennzeichnet. Beispielsweise wird Δ(y
n, f(x
n)) = 0, für y
n = f(x
n) und Δ(y
n, f(x
n)) = 1, für y
n ≠ f(x
n), d.h. ein 0/1 loss, verwendet.
-
Für den Eingangsraum X wird beispielsweise ein input embedding θ(xn): X → X̃ verwendet, d.h. eine Abbildung die den Eingangsraum X auf einen transformierten Eingang X̃ abbildet. Für den Ausgangraum Y wird beispielsweise ein output embedding ϕ: Y → Ỹ verwendet, d.h. eine Abbildung die einen transformierten Ausgang Ỹ auf den Ausgangsraum Y abbildet. Für das Training des Modells kann in diesem Fall der transformierte Eingang X̃ und der transformierte Ausgang Ỹ verwendet.
-
Attribute Label Embedding stellt eine Möglichkeit dar, label embeddings <p(y) = [ρy,1, ...,ρy,E] zu bestimmen. Für das output embedding ϕ wird von einer Anzahl E Attribute A = {ai, i = 1, ..., E} ausgegangen, die eine Anzahl C Klassen Y = {1, ..., C} beschreiben. Die Werte ρy,i stellen ein Maß für eine Zugehörigkeit eines Attributs ai zu einer Klasse y dar. Reihenweise übereinander angeordnet stellen die φ(y) aller C Klassen Y eine output embedding Matrix ϕ der Dimension E × C für die Attribute A dar.
-
Wird der Parametervektor w abhängig von einer Dimension D eines input embeddings θ(xn) und abhängig von einer Dimension E des output embeddings ϕ(y) als D × E Matrix W dargestellt, ist die Kompatibilitätsfunktion abhängig vom input embedding θ(xn) und vom output embedding ϕ(y) darstellbar als F(xn, yn; W) = θ(xn)TWϕ(yn).
-
Beispielsweise wird durch binäre Werte ρy,i festgelegt, ob das Attribut ai der Klasse y zugehörig ist. Anstelle der Verwendung von binären Werten kann ein Vertrauenswert aus einem kontinuierlichen Wertebereich verwendet, der das Maß für die Zugehörigkeit kontinuierlich angibt. Ausgehend von einem Datensatz, in dem eine Menge gekennzeichneter Bilder xn ∈ X enthalten sind, werden den Werten ρy,i beispielsweise in überwachtem Lernen binäre Werte, d.h. {0, 1}, oder Werte aus dem kontinuierlichen Wertebereich zugeordnet.
-
Die im Folgenden beschriebenen Aspekte sind nicht auf überwachtes Lernen beschränkt, sondern können auch in Verbindung mit unüberwachtem oder hierarchischem Lernen, insbesondere basierend auf Text, angewendet werden.
-
Diese und weitere Aspekte sind beispielsweise in Z. Akata, S. Reed, D. Walter, H. Lee, and B. Schiele: „Evaluation of output embeddings for fine-grained image classification" In Computer Vision and Pattern Recognition (CVPR), 2015 IEEE Conference on, pages 2927-2936. IEEE, 2015 beschrieben.
-
Der beschriebene Structured Joint Embeddings Algorithmus ist besonders geeignet, um Attribute mittels zero-shot Lernverfahren vorherzusagen. Mittels des zero-shot Lernverfahrens wird eine Klassifizierung von Bildern in Klassen trainiert, bei der Trainingsbilder und zu klassifizierende Bilder zu zwei disjunkten Mengen von Klassen zugeordnet sind.
-
Eine objektive Lernfunktion ist beispielsweise definiert als
mit
Wobei ein stochastisches Gradientenabstiegsverfahren verwendet wird, um die Parameter in der Matrix W ausgehend von einer Stichprobe (x
n, y
n) zu bestimmen und die am höchsten bewertete Klasse y zu finden. Wenn die Klasse aus der Stichprobe y
n nicht der zutreffenden Klasse entspricht, werden die Gewichte beispielsweise mit folgender Gleichung aktualisiert
mit
- t
- Berechnungsschritt
- ηt
- Lernrate im Berechnungsschritt t.
-
Bei einer Klassifizierung eines Bildes xn stellt Zn,y
n =θ(xn)W eine Attributvorhersage, d.h. ein vorhergesagtes Attribut ai für das Bild xn dar, das einer Klasse yn zugeordnet ist.
-
Das Ergebnis der Klassifikation bezieht sich auf Objekte aus dem Bild, die in einem oder mehreren Bildausschnitten des Bildes, d.h. bounding boxes, enthalten sind. Bounding boxes definieren im Bild geometrische Umrisse, in denen ein Objekt lokalisiert ist. Zur Lokalisierung von bounding boxes in einem Bild wird beispielsweise ein Faster-Region-Based-Convolutional-Neural Network, Faster-RCNN, verwendet, das mit einem Visual-genome dataset trainiert wurden. Dieses Vorgehen ist beispielsweise in P. Anderson, X. He, C. Buehler, D. Teney, M. Johnson, S. Gould, and L. Zhang: „Bottom-up and top-down attention for image captioning and vqa“ arXiv preprint arXiv:1707.07998, 2017 beschrieben.
-
Einer bounding box, die einem Objekt zugeordnet ist, wird zudem ein Attribut a
i zugeordnet. Im Beispiel umfasst ein Attributvektor A Attribute a
i. Dazu wird ein künstliches neuronales Netzwerk eingesetzt, das mit dem margin-based ranking loss
trainiert wurde, wobei
für eine bezüglich des analysierten Bildes unzutreffende paarweise Zuordnung eines Attributs zu einer bounding box eine negative Kennzahl
ist und wobei
für eine bezüglich des analysierten Bildes zutreffende paarweise Zuordnung eines Attributs zu einer bounding box eine positive Kennzahl
ist. Für eine bounding box werden beispielsweise alle positiven Attribute
bestimmt und die übrigen Attribute als negative Attribute
verwendet. Von den im Bild lokalisierten bounding boxes wird die bounding box mit der höchsten Kennzahl bestimmt und beispielsweise zusammen mit dem Bild und der bounding box ausgegeben. Beispielsweise wird abhängig von den Kennzahlen eine Reihenfolge der bounding boxes festgelegt. Dieses Vorgehen zur Lokalisierung ist beispielsweise in L. A. Hendricks, R. Hu, T. Darrell, and Z. Akata: „Grounding visual explanations“ arXiv preprint arXiv: 1807.09685, 2018 beschrieben.
-
In den folgenden Aspekten wird zwischen sauberen Bildern und feindseligen Bildern unterschieden. Ein feindseliges Bild unterscheidet sich von einem sauberen Bild durch eine Störung. Die Störung ist vorzugsweise für einen menschlichen Betrachter nicht oder nur schwer erkennbar. Die Störung ist eine für künstliche neuronale Netzwerke feindselige Störung, die zu einer vertrauenswürdigen aber fehlerhaften Klassifikation des feindseligen Bildes führt. Das bedeutet, die Störung ist derart gestaltet, dass das künstliche neuronale Netzwerk das feindselige Bild in eine existierende aber für dieses Bild falsche Klasse klassifiziert.
-
Die Störung wird einem sauberen Bild x beispielsweise durch das in A. Kurakin, I. Goodfellow, and S. Bengio: „Adversarial examples in the physical world. arXiv preprint arXiv: 1607.02533, 2016“ beschriebene Vorgehen hinzugefügt. Dazu wird die folgende Optimierungsgleichung verwendet:
mit
- n
- Schritt in der Berechnung,
- x
- sauberes Bild,
-
- gestörtes Bild in einem Schritt n,
-
- Gradient der Kostenfunktion für das gestörte Bild im Schritt n,
- Clipε
- Funktion, welche die maximale Distanz ihres Arguments von x auf ε beschränkt,
- ytrue
- wahre Klasse des Bildes x,
- a
- Schrittgröße, beispielsweise a = 1,
- ε
- wählbarer Hyperparameter.
-
Das feindselige Bild wird durch iterative Berechnung der Optimierungsgleichung mit einer wählbaren Anzahl an Iterationen bestimmt.
-
Weitere Aspekte derartiger Störungen sind beispielsweise in C. Szegedy, W. Zaremba, I. Sutskever, J. Bruna, D. Erhan, I. Goodfellow, and R. Fergus: „Intriguing properties of neural networks“ arXiv preprint arXiv:1312.6199, 2013 beschrieben.
-
Die folgenden Aspekte sind für derartige feindselige Bilder als auch für andere Störungen in feindseligen Bildern anwendbar.
-
Sowohl für die sauberen Bilder als auch für die feindseligen Bilder ist es möglich, wie zuvor beschrieben, eine bounding box oder mehrere bounding boxes und das Attribut mit der größten Kennzahl für die jeweilige bounding box zu bestimmen. In der Ausgabe kann das Attribut oder eine dem Attribut zugeordnete Klasse oder beide zusammen mit der bounding box enthalten sein. Diese können visualisiert werden, d.h. zusammen mit dem analysierten Bild angezeigt werden. Werden sowohl ein sauberes Bild als auch ein feindseliges Bild analysiert, können diese auch nebeneinander oder nacheinander dargestellt werden, um es einem Menschen zu ermöglichen, eine Güte der Lokalisierung der bounding boxes bezüglich eines Objekts, das in beiden Bildern enthalten ist, oder bezüglich einer Relevanz eines mit einer bounding box dargestellten Attributs oder einer mit der bounding box dargestellten Klasse für diese bounding box zu beurteilen. Alternativ dazu kann ein künstliches neuronales Netzwerk eingesetzt werden, das trainiert wurde diese Beurteilung vorzunehmen.
-
Ein computerimplementiertes Verfahren zur Erkennung einer Störung in einem Bild sieht vor, dass abhängig von einem Bild eine Klasse für ein Objekt aus dem Bild bestimmt wird, wobei durch eine Vorhersagefunktion, insbesondere ein künstliches neuronales Netzwerk, abhängig vom Bild ein Attribut für das Objekt bestimmt wird, und wobei abhängig vom Attribut und der Klasse bestimmt wird, ob das Bild eine für Vorhersagefunktionen, insbesondere künstliche neuronale Netzwerke, feindselige Störung enthält oder nicht. Durch eine Vorhersage eines Attributs für dasselbe Objekt, das in die Klasse klassifiziert wird, ist die Ausgabe des künstlichen neuronalen Netzwerks für dieses Objekt dahingehend analysierbar, ob in einem analysierten Bild eine für das künstliche neuronale Netzwerke feindselige Störung enthalten ist oder nicht.
-
In einem Fahrerassistenzsystem wird beispielsweise durch die Vorhersage von Attributen, insbesondere unter der Annahme, dass ein Angreifer keinen Zugriff auf die Attributvorhersage selbst hat, folgendes erreicht werden: Der Angreifer täuscht einen Objektdetektor, der die Klasse für das Objekt aus dem Bild bestimmt, sodass der Objektdetektor dem Objekt eine falsche Klasse zuordnet. Das Objekt ist beispielsweise eine Darstellung eines Stopp-Schilds gemäß der deutschen Straßenverkehrsordnung. Die zutreffende Klasse ist beispielsweise Stopp-Zeichen, die unzutreffende Klasse ist beispielsweise Person. Eine Attributvorhersage weist dem als Person erkannten Objekt wenigstens ein Attribut zu. Ein Attribut repräsentiert beispielsweise einen für Menschen verständlichen Begriff als Wortvektoren. Andere Repräsentationen von für Menschen verständliche Begriffe oder für Menschen unverständliche Attribute können ebenfalls vorgesehen sein. Beispielsweise werden die Attribute „Oktagon“, „weißer Text“, „roter Hintergrund“ zugewiesen, die nicht zu einer Person, wohl aber zu einem Stopp-Zeichen passen. Es können auch Attribute zugewiesen werden, die zu beiden Klassen, d.h. Person und Stopp-Zeichen passen. Aufgrund der Attribute, die nicht zur vorhergesagten Klasse passen, ist ein potentieller Täuschungsversuch erkennbar.
-
Anderen Anwendungsgebiete sind beispielsweise (semi-)autonome Roboter, die ebenfalls Objekte erkennen müssen und getäuscht werden können. Auch hier wird beispielsweise bei der Erkennung eines potentiellen Angriffs in einen Fallback-Modus gewechselt, der z.B. eine menschliche Fernsteuerung vorsieht.
-
In einem Aspekt des Verfahrens ist vorgesehen, dass das Attribut durch ein erstes künstliches neuronales Netzwerk bestimmt wird, wobei durch ein zweites künstliches neuronales Netzwerk bestimmt wird, ob die für künstliche neuronale Netzwerke feindselige Störung im Bild enthalten ist, oder nicht. Dadurch ist der Täuschungsversuch automatisiert erkennbar. Vorteilhaft ist es, wenn der Angreifer keine Kenntnis der Präsenz des zweiten neuronalen Netzes besitzt oder keinen Zugriff auf dieses hat. Durch entsprechende technische Maßnahmen, die das zweite neuronale Netz beispielsweise für einen potentiellen Angreifer unzugänglich machen, wird vermieden, dass eine Störung so erzeugbar ist, dass beide Netze gleichzeitig getäuscht werden.
-
Vorteilhafterweise ist vorgesehen, dass das Attribut für das Objekt mit dem Bild und/oder einer Region des Bildes für dieses Objekt für eine bildliche Darstellung ausgegeben wird. Dadurch ist eine Beurteilung einer Güte der Lokalisierung der Region bezüglich des Objekts oder einer Relevanz des Attributs für das Objekt durch einen Menschen auf einem Bildschirm beurteilbar.
-
Vorteilhafterweise ist vorgesehen, dass dem Attribut eine Region im Bild zugeordnet wird, wobei ein Maß für eine Lokalisierung der Region bezüglich des Objekts bestimmt wird, und wobei abhängig vom Maß für die Lokalisierung bestimmt wird, ob das Bild die für künstliche neuronale Netzwerke feindselige Störung enthält oder nicht. Das Maß für die Lokalisierung gibt beispielsweise an, wie gut die Region dem Objekt zuzuordnen ist. Beispielsweise wird das künstliche neuronale Netzwerk auf einem Trainingsdatensatz trainiert, der als Input Bounding-Box und beispielsweise manuell annotierte Attribut erhält, und lernt, vorherzusagen, ob eine Bounding-Box gut lokalisiert ist. Die manuell annotierten Bounding-Boxen des Trainingsdatensatzes werden als gut lokalisiert betrachtet. Durch zufällige Verschiebung dieser Bounding-Boxen können schlecht-lokalisierte Boxen erzeugt werden, die ebenfalls dem Training dienen können. Ein so trainiertes künstliches neuronale Netzwerk wird auf die vorhersagten Bounding-Boxen angewendet und prüft, ob die Bounding-Boxen als gut lokalisiert eingestuft werden kann. Schlecht lokalisierte Bounding-Boxen weisen auf Bilder mit Störung hin.
-
Vorzugsweise ist vorgesehen, dass wenigstens ein erstes Attribut für ein erstes Bild bestimmt wird, wobei ein erster Abstand zwischen dem wenigstens einen ersten Attribut für das erste Bild und wenigstens einem durch das künstliche neuronale Netzwerk für ein zweites, ungestörtes Bild vorhergesagten zweiten Attributs bestimmt wird, wobei in einem Vergleich der erste Abstand mit einem Schwellwert verglichen wird, und wobei abhängig vom Ergebnis des Vergleichs bestimmt wird, ob das erste Bild die für künstliche neuronale Netzwerke feindselige Störung enthält oder nicht. Das zweite, ungestörte Bild ist ein Bild, von dem bekannt ist, dass es keine feindselige Störung enthält. Der Schwellwert ist so wählbar, dass die Störung erkennbar ist. Für ein erstes Bild mit feindseliger Störung wird der Abstand beispielsweise größer als der Schwellwert. Für ein erstes Bild ohne feindselige Störung ist der Abstand kleiner oder gleich dem Schwellwert. Beispielsweise werden erste Attribute Ẑn,y und zweite Attribute Zn,y
n bestimmt. Der Index yn bezieht sich auf eine für das erste Bild zutreffende Klasse yn. Der Index y bezieht sich auf wenigstens eine für das erste Bild unzutreffenden Klasse y. Zn,yn und Ẑn,y bezeichnen Attributvektoren. Beispielsweise wird der erste Abstand dZ = d{Zn,y
n ,Ẑn,y} = ||Zn,y
n - Ẑn,y ||2 bestimmt.
-
In diesem Aspekt ist der Schwellwert vorzugsweise abhängig von einem zweiten Abstand zwischen einer Vielzahl Attribute für eine für das erste Bild zutreffende Klasse und einer Vielzahl Attribute für wenigstens eine für das erste Bild unzutreffende Klasse definiert. Beispielsweise werden erste Attribute Ẑn,y, zweite Attribut Zn,y
n die Vielzahl Attribute ϕ(y) für eine für das erste Bild unzutreffende Klasse y und die Vielzahl Attribute ϕ(yn) für eine für das erste Bild zutreffende Klasse yn bestimmt. Damit wird beispielsweise der zweite Abstand dϕ = d{ϕ(yn), ϕ{(y)} = ||ϕ(yn) - ϕ(y)||2 bestimmt. Ein Effekt für die Klassifizierung wird im Beispiel erkannt, wenn der erste Abstand dZ kleiner als der zweite Abstand dϕ ist.
-
Alternativ dazu kann der Schwellwert abhängig von einem zweiten Abstand zwischen dem wenigstens einen ersten Attribut für das erste Bild und wenigstens einem durch das künstliche neuronale Netzwerk für ein zweites, ungestörtes Bild aus einer für das erste Bild unzutreffenden Klasse vorhergesagten Attributs definiert sein. Beispielsweise wird für die zweiten Attribute Zm,y der zweite Abstand dZm = d{Zm,y,Ẑn,y} = ||Zm,y - Ẑn,y||2 bestimmt. Zm,y bezeichnet im Beispiel einen entsprechenden Attributvektor. In diesem Aspekt wird ein Effekt für die Klassifizierung beispielsweise erkannt, wenn der erste Abstand dZ gleich groß oder bis auf eine Toleranz ungefähr gleich groß ist, wie der zweite Abstand dZm.
-
Vorzugsweise ist in einem weiteren Aspekt vorgesehen, dass das wenigstens eine Attribut für das Bild bestimmt wird, wobei ein erster Abstand zwischen dem wenigstens einen Attribut für das Bild und einer Vielzahl Attribute für eine für das Bild unzutreffende Klasse bestimmt wird, wobei in einem Vergleich der erste Abstand mit einem Schwellwert verglichen wird, und wobei abhängig vom Ergebnis des Vergleichs bestimmt wird, ob das Bild die für künstliche neuronale Netzwerke feindselige Störung enthält oder nicht. Beispielsweise wird die Vielzahl Attribute ϕ(y) für die für das Bild unzutreffende Klasse y und der erste Abstand dy = d{Ẑn,y, ϕ(y)} = ||Ẑn,y - ϕ(y) ||2 bestimmt. Der Schwellwert ist so wählbar, dass der erste Abstand dy den Schwellwert überschreitet, wenn ein Bild mit einer feindseligen Störung vorliegt.
-
In diesem Aspekt ist vorzugsweise vorgesehen, dass der Schwellwert abhängig von einem zweiten Abstand zwischen dem wenigstens ein Attribut für das erste Bild und einer Vielzahl Attribute für eine für das erste Bild zutreffende Klasse definiert ist. Beispielsweise wird die Vielzahl Attribute ϕ(yn) für eine für das erste Bild zutreffende Klasse yn und der zweite Abstand dy
n = d{Ẑn,y, ϕ(yn)} = ||Ẑn,y - ϕ(yn)||2 bestimmt. Beispielsweise wird der erste Abstand dy mit dem zweiten Abstand dy
n verglichen. Für ein Bild, das eine feindselige Störung enthält, sind die Attribute näher an den Attributen der unzutreffenden Klasse, und weiter entfernt von den Attributen der zutreffenden Klasse.
-
Vorzugsweise wird ein Fahrerassistenzsystem abhängig vom Ergebnis der Erkennung in einem ersten Betriebsmodus oder in einem vom ersten Betriebsmodus verschiedenen zweiten Betriebsmodus betrieben, wobei im zweiten Betriebsmodus ein menschlicher Eingriff angefordert oder berücksichtigt wird, oder wobei das Ergebnis einer nicht auf maschinenlernen basierender Objekterkennung verwendet oder gegenüber dem ersten Betriebsmodus stärker gewichtet wird. Dies stellt ein gegenüber derartigen Störungen robustes Fahrerassistenzsystem dar.
-
Eine entsprechende Vorrichtung zur Erkennung einer Störung umfasst eine Recheneinrichtung, insbesondere wenigstens einen Microcontroller oder einen Prozessor und einen Speicher, wobei die Recheneinrichtung die ausgebildet ist das beschriebene Verfahren auszuführen.
-
Ein Fahrerassistenzsystem für ein Fahrzeug umfasst die beschriebene Vorrichtung, eine Schnittstelle für eine Verbindung zu einer Kamera zum Erfassen des Bildes und eine Schnittstelle zur Ansteuerung eines Fahrzeugs abhängig vom Ergebnis der Erkennung oder zur Ausgabe eines Ergebnisses der Erkennung und/oder eine Mensch-Maschine-Schnittstelle zur Ausgabe eines Ergebnisses der Erkennung.
-
Zudem kann ein Computerprogramm mit computerlesbaren Instruktionen vorgesehen sein, bei deren Ausführung durch einen Computer das beschriebene Verfahren ausgeführt wird. Zudem kann ein Computerprogrammprodukt vorgesehen sein, das einen computerlesbaren Speicher umfasst, in dem das Computerprogramm gespeichert ist.
-
Weitere vorteilhafte Ausführungen ergeben sich aus der folgenden Beschreibung und der Zeichnung. In der Zeichnung zeigt:
- 1 eine schematische Darstellung einer Vorrichtung zur Erkennung einer Störung,
- 2 Schritte in einem Verfahren zur Erkennung einer Störung,
- 3 eine schematische Darstellung von Teilen des Verfahrens.
-
1 stellt schematisch eine Vorrichtung 102 dar. Die Vorrichtung 102 umfasst eine Recheneinrichtung 104, die Ausgebildet ist, eine für ein künstliches neuronales Netzwerk feindselige Störung in einem Bild zu erkennen. In einem Aspekt umfasst ein Fahrerassistenzsystem für ein Fahrzeug die Vorrichtung 102. Das Fahrerassistenzsystem umfasst eine Schnittstelle 106 für eine Verbindung zu einer Kamera 108 zum Erfassen des Bildes und eine Schnittstelle 110 zur Ansteuerung eines Fahrzeugs abhängig vom Ergebnis der Erkennung oder zur Ausgabe eines Ergebnisses der Erkennung und/oder eine Mensch-Maschine-Schnittstelle 112 zur Ausgabe eines Ergebnisses der Erkennung umfasst. Diese sind durch Datenleitungen 114 zur Kommunikation verbindbar. Das Fahrerassistenzsystem ist ausgebildet, abhängig von dem Ergebnis der Erkennung angesteuert zu werden, um in einem ersten Betriebsmodus oder in einem zweiten Betriebsmodus betrieben zu werden. Im ersten Betriebsmodus wird das Bild im Beispiel als ungestörtes Bild für eine Fahrerassistenzfunktion verwendet. Im zweiten Betriebsmodus wird das Bild als gestörtes oder möglicherweise gestörtes Bild behandelt.
-
Ein computerimplementiertes Verfahren zur Erkennung einer Störung in einem Bild wird im Folgenden mit Bezug auf die 2. Das Verfahren beginnt beispielsweise, wenn ein zu analysierendes Bild bereitsteht.
-
Nach dem Start wird in einem Schritt 202 abhängig vom zu analysierenden Bild eine Klasse für ein Objekt aus dem Bild bestimmt.
-
Anschließend wird in einem Schritt 204 durch eine Vorhersagefunktion, im Beispiel ein künstliches neuronales Netzwerk abhängig vom Bild ein Attribut für das Objekt bestimmt. Das Attribut wird im Beispiel durch ein erstes künstliches neuronales Netzwerk bestimmt.
-
Anschließend wird in einem Schritt 206 dem Attribut eine Region im Bild zugeordnet.
-
Anschließend wird in einem Schritt 208 abhängig vom Attribut und der Klasse bestimmt, ob das Bild eine für künstliche neuronale Netzwerke feindselige Störung enthält oder nicht. Wenn im Bild keine Störung erkannt wird, wird ein Schritt 210 ausgeführt. Anderenfalls wird ein Schritt 212 ausgeführt. Es kann vorgesehen sein, durch ein zweites künstliches neuronales Netzwerk zu bestimmen, ob die für künstliche neuronale Netzwerke feindselige Störung im Bild enthalten ist, oder nicht. Das Attribut für das Objekt kann auch mit dem Bild und/oder einer Region des Bildes für dieses Objekt für eine bildliche Darstellung ausgegeben werden. Dann kann ein menschlicher Betrachter feststellen, ob es sich um ein Bild mit Störung oder ohne Störung handelt.
-
Es kann vorgesehen sein, dass ein Maß für eine Lokalisierung der Region bezüglich des Objekts, dem das Attribut zugeordnet ist, bestimmt wird. In diesem Aspekt kann zudem oder alternativ abhängig vom Maß für die Lokalisierung bestimmt werden, ob das Bild die für künstliche neuronale Netzwerke feindselige Störung enthält oder nicht.
-
In einem Aspekt wird im Schritt 204 zusätzlich oder alternative wenigstens ein erstes Attribut Ẑn,y für ein erstes Bild bestimmt. In diesem Aspekt wird ein erster Abstand dZ zwischen dem wenigstens einen ersten Attribut Ẑn,y und wenigstens einem zweiten Attribut Zn,yn bestimmt. Das wenigstens eine zweite Attribut Zn,yn wird beispielsweise durch das künstliche neuronale Netzwerk für ein zweites, ungestörtes Bild vorhergesagt.
-
In diesem Aspekt wird im Schritt 208 zudem oder alternativ in einem Vergleich der erste Abstand dZ mit einem Schwellwert verglichen und abhängig vom Ergebnis des Vergleichs bestimmt, ob das erste Bild die für künstliche neuronale Netzwerke feindselige Störung enthält oder nicht.
-
Der Schwellwert ist beispielsweise abhängig von einem zweiten Abstand dZϕ zwischen einer Vielzahl Attribute ϕ(yn) für eine für das erste Bild zutreffende Klasse yn und einer Vielzahl Attribute ϕ(y) für wenigstens eine für das erste Bild unzutreffende Klasse y definiert.
-
Der Schwellwert ist alternativ dazu beispielsweise abhängig von einem zweiten Abstand dZm zwischen dem wenigstens einen ersten Attribut Ẑn,y und wenigstens einem zweiten Attribut Zm,y definiert. Das wenigstens eine zweiten Attribut Zm,y ist beispielsweise einer für das erste Bild unzutreffenden Klasse y zugeordnet. Das wenigstens eine zweiten Attribut Zm,y wird beispielsweise durch das künstliche neuronale Netzwerk für ein zweites, ungestörtes Bild vorhergesagt. Alternativ oder zusätzlich dazu wird im Schritt 206 wenigstens ein Attribut Ẑn,y für das Bild bestimmt. Ein erster Abstand dy wird in diesem Aspekt zwischen dem wenigstens einen Attribut Ẑn,y und einer Vielzahl Attribute ϕ(y) für eine für das erste Bild unzutreffende Klasse y bestimmt.
-
Im Schritt 208 wird in diesem Aspekt alternativ oder zusätzlich der erste Abstand dy in einem Vergleich mit einem Schwellwert verglichen und abhängig vom Ergebnis des Vergleichs bestimmt, ob das Bild die für künstliche neuronale Netzwerke feindselige Störung enthält oder nicht.
-
In diesem Aspekt ist der Schwellwert beispielsweise abhängig von einem zweiten Abstand dy
n zwischen dem wenigstens einen Attribut Ẑn,y für das erste Bild und einer Vielzahl Attribute ϕ(yn) für eine für das erste Bild zutreffende Klasse yn definiert.
-
Im Schritt 210 wird im Beispiel ein Fahrerassistenzsystem abhängig vom Ergebnis der Erkennung in einem ersten Betriebsmodus 212 betrieben.
-
Im Schritt 212 wird im Beispiel das Fahrerassistenzsystem in einem vom ersten Betriebsmodus verschiedenen zweiten Betriebsmodus betrieben.
-
Im zweiten Betriebsmodus wird beispielsweise für eine Funktion der Fahrerassistenz ein menschlicher Eingriff angefordert oder für die Funktion berücksichtigt. Zudem oder alternativ dazu kann vorgesehen sein, das Ergebnis einer nicht auf maschinenlernen basierender Objekterkennung für die Funktion zu verwendet oder gegenüber dem Ergebnis für die Funktion gegenüber einer Gewichtung im ersten Betriebsmodus stärker zu gewichten.
-
Anschließend wird in einem Schritt 214 überprüft, ob ein weiteres Bild zur Analyse vorliegt. Fall dies der Fall ist, wird der Schritt 202 ausgeführt. Anderenfalls wird der Betriebsmodus bis zum Eintreffen eines weiteren Bildes beibehalten. Dazu wird der Schritt 214 erneut ausgeführt.
-
Die 3 stellt einige Aspekte des Verfahrens schematisch dar.
-
Die Vorrichtung 102 ist ausgebildet, sowohl ungestörte Bilder 302 als auch auf den ungestörten Bildern 302 basierende, durch eine Störung 304 veränderte gestörte Bilder 306 verarbeiten.
-
Die ungestörten Bilder 302 bilden einen Eingang X für ein künstliches neuronale Netzwerk. Das künstliche neuronale Netzwerk bestimmt in einem Aspekt für ungestörte Bilder 302 wenigstens ein zutreffendes Attribut Zn,y
n . Beispielhaft sind in 3 dafür mögliche Werte 308a, ..., 308e dargestellt. Die ungestörten Bilder 302 führen am Ausgang Y zu einer mit einem Ergebnis 310 mit zumindest überwiegend zutreffenden Attributen Ẑn,y und werden als Bilder erkannt, die frei von Störung sind.
-
Das künstliche neuronale Netzwerk bestimmt in einem anderen Aspekt für gestörte Bilder 304 wenigstens ein unzutreffendes Attribut Ẑn,y. Beispielhaft sind in 3 dafür mögliche Werte 312a, ..., 312e dargestellt. Die gestörten Bilder 306 führen zu einer mit einem Ergebnis 314 mit wenigstens einem oder zumindest überwiegend unzutreffenden Attributen Ẑn,y und werden als Bilder erkannt, die eine Störung enthalten.
-
Für das Training werden sowohl ungestörte Bilder 302 als auch daraus erzeugt gestörte Bilder 306 sowie deren jeweilige Klassifizierung als gestört oder ungestört verwendet. Das Training kann vorsehen, aus den ungestörten Bildern 302 gestörte Bilder 306 wie zuvor beschrieben zu erzeugen. Die Parameter der Parametervektoren w werden im Training wie zuvor beschrieben gelernt. Das derart trainierte künstliche neuronale Netzwerk ist anschließend zur Erkennung von Bildern, die für ein künstliches neuronales Netzwerk feindselige Störungen enthalten verwendbar.
-
Außer dem Einsatz in einem Fahrerassistenzsystem kann der Einsatz auch in jedem anderen System vorgesehen sein, in dem es wünschenswert ist, zuverlässig zu erkennen, ob ein zu analysierendes Bild eine derartige Störung enthält oder nicht.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Nicht-Patentliteratur
-
- Z. Akata, S. Reed, D. Walter, H. Lee, and B. Schiele: „Evaluation of output embeddings for fine-grained image classification“ In Computer Vision and Pattern Recognition (CVPR), 2015 IEEE Conference on, pages 2927-2936. IEEE, 2015 [0015]