DE102020207323A1 - Messung der Empfindlichkeit von Bildklassifikatoren anhand realistischer Änderungen, die Klassengrenzen überschreiten - Google Patents

Messung der Empfindlichkeit von Bildklassifikatoren anhand realistischer Änderungen, die Klassengrenzen überschreiten Download PDF

Info

Publication number
DE102020207323A1
DE102020207323A1 DE102020207323.6A DE102020207323A DE102020207323A1 DE 102020207323 A1 DE102020207323 A1 DE 102020207323A1 DE 102020207323 A DE102020207323 A DE 102020207323A DE 102020207323 A1 DE102020207323 A1 DE 102020207323A1
Authority
DE
Germany
Prior art keywords
image
generator
changes
images
image classifier
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102020207323.6A
Other languages
English (en)
Inventor
Andres Mauricio Munoz Delgado
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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE102020207323.6A priority Critical patent/DE102020207323A1/de
Publication of DE102020207323A1 publication Critical patent/DE102020207323A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]

Abstract

Verfahren (100) zur Messung der Empfindlichkeit (2*) eines Bildklassifikators (2), der ein Eingabebild (1) einer oder mehreren Klassen (3a-3c) einer vorgegebenen Klassifikation zuordnet, gegen Veränderungen des Eingabebildes (1), mit den Schritten:• es wird eine Vielzahl von Nachbarn (1') des Eingabebildes (1) ermittelt (110), indem jeweils ein Sample aus einer Verteilung von Rauschen gezogen und zum Eingabebild (1) addiert wird;• es wird mindestens ein Generator (6, 6a, 6b) bereitgestellt (120), der darauf trainiert ist, realistische Bilder (1, 1') auf Änderungen R abzubilden, nach deren Vornahme die Bilder ebenfalls realistisch sind und von dem Bildklassifikator (2) einer anderen Klasse (3a-3c) zugeordnet werden als das ursprüngliche realistische Bild (1, 1');• die Nachbarn (1') werden dem Generator (6) zugeführt (130), so dass eine Vielzahl von Änderungen R entsteht;• aus den Änderungen R, und/oder aus einer über diese Änderungen R gebildeten zusammenfassenden Statistik, wird die Empfindlichkeit (2*) des Bildklassifikators (2) ausgewertet (140).

Description

  • Die vorliegende Erfindung betrifft die Kontrolle des Verhaltens trainierbarer Bildklassifikatoren, die beispielsweise für die Qualitätskontrolle von in Serie gefertigten Produkten genutzt werden können.
  • Stand der Technik
  • Bei der Serienfertigung von Produkten ist es in der Regel erforderlich, die Qualität der Fertigung laufend zu überprüfen. Dabei wird angestrebt, Qualitätsprobleme möglichst schnell zu erkennen, um die Ursache baldmöglichst beheben zu können und nicht zu viele Einheiten des jeweiligen Produkts als Ausschuss zu verlieren.
  • Die optische Kontrolle der Geometrie und/oder Oberfläche eines Produkts ist schnell und zerstörungsfrei. Die WO 2018/197 074 A1 offenbart eine Prüfvorrichtung, in der ein Objekt einer Vielzahl von Beleuchtungssituationen ausgesetzt werden kann, wobei in jeder dieser Beleuchtungssituationen mit einer Kamera Bilder des Objekts aufgezeichnet werden. Aus diesen Bildern wird die Topographie des Objekts ausgewertet.
  • Bilder des Produkts können auch unmittelbar mit einem Bildklassifikator auf der Basis künstlicher neuronaler Netzwerke einer von mehreren Klassen einer vorgegebenen Klassifikation zugeordnet werden. Auf dieser Basis kann das Produkt einer von mehreren vorgegebenen Qualitätsklassen zugeordnet werden. Im einfachsten Fall ist diese Klassifikation binär („OK“/ „nicht OK“).
  • Offenbarung der Erfindung
  • Im Rahmen der Erfindung wurde ein Verfahren zur Messung der Empfindlichkeit eines Bildklassifikators gegen Veränderungen des Eingabebildes zugeordnet.
  • Der Bildklassifikator ordnet ein Eingabebild einer oder mehreren Klassen einer vorgegebenen Klassifikation zu. Als Eingabebilder können beispielsweise Bilder von in Serie gefertigten, nominell identischen Produkten verwendet werden. Der Bildklassifikator kann beispielsweise darauf trainiert sein, die Eingabebilder einer oder mehreren von mindestens zwei möglichen Klassen zuzuordnen, die eine Qualitätsbeurteilung des jeweiligen Produkts repräsentieren.
  • Beispielsweise kann ein Produkt anhand eines Bildes binär als „OK“ oder „nicht OK“ (NOK) klassifiziert werden. Möglich und sinnvoll kann beispielsweise auch eine Einteilung in eine Klassifikation sein, die mehr Zwischenstufen zwischen „OK“ und „nicht OK“ umfasst.
  • Der Begriff des Bildes umfasst grundsätzlich jede in einem zwei- oder mehrdimensionalen Raster angeordnete Verteilung von Informationen. Diese Informationen können beispielsweise Intensitätswerte von Bildpixeln sein, die mit einer beliebigen Abbildungsmodalität, wie etwa mit einer optischen Kamera, mit einer Wärmebildkamera oder mit Ultraschall, aufgenommen wurden. Es können jedoch auch beliebige andere Daten, wie beispielsweise Audiodaten, Radardaten oder LIDAR-Daten, in Bilder übersetzt und dann gleichermaßen klassifiziert werden.
  • Bei dem Verfahren wird eine Vielzahl von Nachbarn des Eingabebildes ermittelt, indem jeweils ein Sample aus einer Verteilung von Rauschen gezogen und zum Eingabebild addiert wird. Hierbei kann das Sample insbesondere beispielsweise gleich viele Pixel wie das Eingabebild haben und für jedes dieser Pixel einen zufälligen Wert enthalten. Der Begriff „Nachbar“ ist hierbei nicht an eine bestimmte Metrik in einem vieldimensionalen Raum gebunden, sondern steht vielmehr dafür, dass die Amplitude des Rauschens nur so groß ist, dass das verrauschte Bild noch deutlich von dem ursprünglichen Eingabebild dominiert wird. Nachbarschaft lässt sich also beispielsweise in Form einer mindestens geforderten Korrelation des Nachbarn mit dem ursprünglichen Eingabebild ausdrücken.
  • Es wird mindestens ein Generator bereitgestellt, der darauf trainiert ist, realistische Bilder auf Änderungen R abzubilden, nach deren Vornahme die Bilder ebenfalls realistisch sind und von dem Bildklassifikator einer anderen Klasse zugeordnet werden als das ursprüngliche realistische Bild. Die Nachbarn werden dem Generator zugeführt, so dass eine Vielzahl von Änderungen R entsteht.
  • Hierbei ist unter einem realistischen Bild insbesondere ein Bild zu verstehen, das in einer konkreten vorgegebenen Anwendung, in der Bilder in beliebiger Weise durch physikalische Messung erhalten und anschließend mit dem Bildklassifikator klassifiziert werden, mit hinreichender Wahrscheinlichkeit als ein Ergebnis der physikalischen Messung zu erwarten ist. Wenn beispielsweise ein Bild ein Gesicht eines Menschen zeigt, der eine Brille trägt, dann ist eine Änderung R, die aus diesem Bild die Brille vollständig entfernt, als realistisch anzusehen. Eine Änderung R hingegen, die nur eines der beiden Brillengläser entfernt, ist nicht realistisch, denn beide Brillengläser sind ja fest verbunden und können nur gemeinsam aufgesetzt oder abgesetzt werden.
  • Wenn die Änderung R beispielsweise zu einem Eingabebild addiert wird, das der Bildklassifikator der Klasse „OK“ zuordnet, kann hierdurch eine Abwandlung dieses Eingabebildes entstehen, die vom Bildklassifikator der Klasse „nicht OK“ zugeordnet wird. Wenn es zwischen „OK“ und „nicht OK“ weitere Zwischenstufen als weitere Klassen gibt, können auch aus dem gleichen Eingabebild gezielt Abwandlungen erzeugt werden, die einer dieser weiteren Klassen angehören.
  • Die Bildung der Nachbarn durch das Hinzufügen von Rauschen hat hier eine doppelte Wirkung. Zum einen wird hierdurch eine organische Möglichkeit geschaffen, aus ein und demselben Eingabebild eine Vielzahl von Änderungen R zu gewinnen, die ausgehend von diesem Eingabebild jeweils die Entscheidungsgrenze des Bildklassifikators überschreiten. Zum anderen erhöht das Rauschen als solches auch die Unsicherheit der Klassifikation durch den Bildklassifikator. Es wird dann einfacher, eine realistische Änderung R zu finden, die die Entscheidungsgrenze des Bildklassifikators überschreitet. Um hingegen ausgehend vom unverrauschten Eingabebild die Entscheidungsgrenze zu überschreiten, wären möglicherweise Änderungen R in einer Stärke erforderlich, die den Rahmen des in der jeweiligen Anwendung Realistischen sprengen könnte.
  • Aus den Änderungen R, und/oder aus einer über diese Änderungen R gebildeten zusammenfassenden Statistik, wird die Empfindlichkeit des Bildklassifikators ausgewertet.
  • Insbesondere kann beispielsweise der Vergleich der Änderungen R mit dem ursprünglichen Eingabebild eine Information dahingehend liefern, welche Merkmale in dem Eingabebild dafür verantwortlich sind, dass es von dem Bildklassifikator in seine gegenwärtige Klasse eingeordnet wurde. Diese Information ist besonders wertvoll in der Qualitätskontrolle von in Serie gefertigten Produkten. Hier gibt die jeweilige Anwendung üblicherweise eine Spezifikation vor, welche Mängel und Schäden zur Einstufung des Produkts in welche Qualitätsklasse führen sollen. Der Bildklassifikator soll dann bei der Qualitätskontrolle seine Kraft zur Verallgemeinerung dahingehend ausspielen, dass die Mängel und Schäden zuverlässig erkannt werden, obwohl sie sich in Bildern zweier nacheinander gefertigten Produkten, sowie auch in zwei nacheinander angefertigten Bildern des gleichen Produkts, nie in absolut identischer Form manifestieren. Die Verallgemeinerung soll auf der anderen Seite nicht so weit gehen, dass auch ganz andere Merkmale als die zu erkennenden Mängel und Schäden plötzlich für die Entscheidung herangezogen werden, das Produkt einer bestimmten Qualitätsklasse zuzuordnen. Dies lässt sich über die Änderungen R kontrollieren. So kann beispielsweise erkannt werden, dass die Änderungen R Bildbereiche betreffen, die für die Qualitätskontrolle des Produkts gar nicht relevant sind. Beispielsweise kann festgestellt werden, dass für manche Eingabebilder die Entscheidung über die Zuordnung zu einer Qualitätsklasse gar nicht (nur) auf den zum Produkt selbst gehörenden Bildpixeln basiert, sondern (zumindest auch) auf Bildpixeln, die zum Bildhintergrund oder zu einem Roboterarm gehören, der das Produkt in die Kamera hält.
  • Beispielsweise können die Änderungen R jeweils mit einer Bewertungsfunktion, die die Stärke und/oder Relevanz dieser Änderungen R im Hinblick auf die konkrete Anwendung des Bildklassifikators misst, auf Maßzahlen abgebildet werden. Die Empfindlichkeit des Bildklassifikators kann dann unter Heranziehung dieser Maßzahlen, und/oder einer zusammenfassenden Statistik über diese Maßzahlen, ermittelt werden.
  • Darüber hinaus ist auch eine zusammenfassende Statistik jeglicher Art über die Änderungen R sehr aufschlussreich im Hinblick auf die Empfindlichkeit des Bildklassifikators. Dies gilt insbesondere bei der besagten Qualitätskontrolle. Hier sind viele Eingabebilder sehr ähnlich zueinander, da die in Serie gefertigten Produkte ja nominell identisch gefertigt werden. Dementsprechend können die Änderungen R über viele Eingabebilder aggregiert werden, so dass insbesondere nur schwach ausgeprägte Muster in diesen Änderungen R über eine entsprechend große Statistik identifiziert werden können. Gleiches gilt für andere Anwendungen, in denen viele sehr ähnliche Eingabebilder aufgenommen werden.
  • Die zusammenfassende Statistik kann beispielsweise eine Kreuzkorrelation zwischen den einzelnen Änderungen R, und/oder eine Einteilung dieser Änderungen R in mehrere Cluster, umfassen.
  • In einer besonders vorteilhaften Ausgestaltung wird ein Generator bereitgestellt, der einen Teilgenerator und einen zweiten Teilgenerator umfasst. Der erste Teilgenerator leistet einen additiven Beitrag zur Änderung R. Der zweite Teilgenerator leistet einen subtraktiven Beitrag zur Änderung R.
  • Hierhinter steckt die Erkenntnis, dass viele für die optische Qualitätskontrolle relevante Mängel und Schäden Einzelfehler mit räumlich begrenzter Ausdehnung sind, wie etwa Löcher, Kratzer und Abplatzungen von Funktionsschichten, mit denen das Produkt beschichtet ist. Derartige Einzelfehler manifestieren sich in einem Eingabebild entweder als lokale Erhöhung oder als lokale Verminderung der Lichtintensität. Hingegen ist es vergleichsweise unwahrscheinlich, dass ein und derselbe Einzelfehler an einer Stelle im Eingabebild zu einer Erhöhung und an einer anderen Stelle im Eingabebild zu einer Verminderung der Lichtintensität führt. Daher schafft die Unterteilung in zwei Teilgeneratoren einen zusätzlichen Freiheitsgrad, um qualitativ verschiedene Arten von Mängeln und Schäden unabhängig voneinander zu modellieren.
  • Dabei stehen die beiden Teilgeneratoren jedoch in Bezug auf die Verarbeitung grundlegender Merkmale des Eingabebildes vor ähnlichen Aufgaben. Dieses „Handwerkszeug“ muss für beide Generatoren nur einmal gelernt werden. Daher sind in einer weiteren besonders vorteilhaften Ausgestaltung die beiden Teilgeneratoren jeweils als in Schichten organisierte künstliche neuronale Netzwerke, KNN, ausgebildet sind, wobei beide KNN mindestens eine Schicht gemeinsam haben. Die beiden KNN teilen sich somit Neuronen bzw. andere Verarbeitungseinheiten der mindestens einen Schicht. Damit teilen sich die beiden KNN auch die Gewichte bzw. anderen Parameter, die das Verhalten dieser mindestens einen Schicht charakterisieren.
  • In einer weiteren besonders vorteilhaften Ausgestaltung wird in Antwort darauf, dass die ermittelte Empfindlichkeit des Bildklassifikators ein vorgegebenes Kriterium erfüllt, ein Produkt, auf das sich das Eingabebild bezieht, für eine manuelle Nachkontrolle vorgemerkt, und/oder es wird eine Fördereinrichtung angesteuert, um dieses Produkt aus dem Produktionsprozess abzusondern. Dann kann ein erheblicher technischer Zusatzaufwand für die Aufnahme und Auswertung von Bildern im Rahmen der automatisierten Qualitätskontrolle eingespart werden, der ansonsten notwendig wäre, um auch alle Zweifelsfälle und Grenzfälle automatisiert abklären zu können. Die manuelle Nachkontrolle einiger weniger Exemplare eines in großer Stückzahl gefertigten Produkts kann wirtschaftlich deutlich günstiger sein als die Steigerung der Trefferquote bei der automatisierten Qualitätskontrolle auf ein Maß, bei dem die nachzukontrollierenden Zweifelsfälle komplett wegfallen würden.
  • In einer weiteren besonders vorteilhaften Ausgestaltung wird mindestens eine Abwandlung des Eingabebildes, die durch Hinzufügen einer Änderung R zu dem Eingabebild entsteht, als weiteres Trainingsbild für das Training des Bildklassifikators verwendet.
  • Die Erfindung bezieht sich auch auf ein Verfahren zum Trainieren eines Generators für die Verwendung in dem zuvor beschriebenen Verfahren. Trainingsbilder, die nahe an der Entscheidungsgrenze des Bildklassifikators liegen, können insbesondere genutzt werden, um die Erkennungsleistung nahe der Entscheidungsgrenze zu schärfen.
  • Im Rahmen dieses Verfahrens wird eine Vielzahl von Trainingsbildern bereitgestellt. Parameter, die das Verhalten des Generators charakterisieren, werden auf das Ziel optimiert, dass der Generator die Trainingsbilder jeweils auf Änderungen R abbildet. Hierbei sind speziell solche Änderungen R gesucht, die aus dem Trainingsbild Abwandlungen erzeugen, die
    • • vom Bildklassifikator einer anderen Klasse zugeordnet werden als das jeweilige Trainingsbild und
    • • gleichwohl nach Maßgabe einer vorgegebenen Realitäts-Kostenfunktion realistisch sind.
  • Insbesondere kann beispielsweise nach solchen Änderungen R gefragt werden, die zu einer Einsortierung der entsprechenden Abwandlung nicht in irgendeine andere als die bisherige Klasse, sondern in eine bestimmte Zielklasse führen. Wenn es beispielsweise bei der optischen Qualitätskontrolle zwischen „OK“ und „nicht OK“ noch Zwischenstufen gibt, kann gezielt danach gefragt werden, welche Änderungen R ein Bild in die schlechteste Qualitätsstufe „nicht OK“ überführen. Es kann dann beispielsweise mit einer Klassifikations-Kostenfunktion nach einer beliebigen Metrik gemessen werden, wie weit die Klasse, in die der Bildklassifikator die Abwandlung einordnet, von der gewünschten Zielklasse entfernt ist.
  • Hierbei besteht eine große Flexibilität dahingehend, wie die Forderung, dass die Abwandlungen speziell in Bezug auf eine konkrete Anwendung realistisch sind, in der Realitäts-Kostenfunktion ausgedrückt werden kann. Somit kann für eine große Klasse von Anwendungen eine Realitäts-Kostenfunktion angegeben werden, die zutreffend misst, inwieweit Abwandlungen der Eingabebilder in Bezug auf die Anwendung realistisch sind.
  • Beispielsweise kann die Realitäts-Kostenfunktion mindestens einen Beitrag enthalten, der umso besser ist, je geringer die Unsicherheit ist, mit der der Bildklassifikator die Abwandlung klassifiziert. Hierhinter steckt die Erkenntnis, dass der Bildklassifikator, der nur mit realistischen Trainingsbildern trainiert wurde, nur den Umgang mit realistischen Bildern gelernt hat. Nicht realistische Bilder sind für ihn etwas völlig Neues, so dass er sich bei der Klassifikation deutlich unsicherer ist. Die Einbeziehung der Unsicherheit in die Realitäts-Kostenfunktion ist also ein Ersatz dafür, dass es nicht direkt messbar ist, inwieweit ein beliebiges Bild sich in der Mannigfaltigkeit der realistischen Bilder befindet oder nicht.
  • In die Ermittlung der Unsicherheit kann insbesondere beispielsweise einbezogen werden, wie stark die vom Bildklassifikator gelieferten Ergebnisse sich ändern, wenn Parameter, die das Verhalten des Bildklassifikators charakterisieren, in zufälliger Weise unterdrückt werden.
  • So ist beispielsweise das Verhalten eines KNN durch Gewichte charakterisiert, mit denen Eingaben, die Neuronen oder anderen Verarbeitungseinheiten zugeführt werden, zu einer gewichteten Summe aufsummiert werden. Es kann dann beispielsweise die Ausgabe des Bildklassifikators für eine vorab festgelegte Zahl von Durchläufen (beispielsweise 50) ermittelt werden, wobei bei jedem Durchlauf aus einer Zufallsverteilung (etwa einer Bernoulli-Verteilung) gezogen wird, ob bestimmte Gewichte auf Null gesetzt werden oder nicht. Es kann dann beispielsweise die Entropie für die Klassifikation des Bildklassifikators über alle Durchläufe dieses „Monte-Carlo-Dropouts“ als Maß für die Unsicherheit der Klassifikation herangezogen werden. Hierhinter steckt die Überlegung, dass sich bei einer geringen Unsicherheit der Klassifikation unterschiedliche Teilbereiche und Verarbeitungseinheiten des Bildklassifikators untereinander einig sind. Dementsprechend sollte sich das Ergebnis der Klassifikation nur wenig ändern, wenn einzelne Verarbeitungseinheiten oder Teilbereiche des Bildklassifikators kurzfristig inaktiv sind.
  • Die Situation ist ein Stück weit damit vergleichbar, was zu erwarten ist, wenn man telefonisch eine rechtliche Ad-hoc-Auskunft bei einer Behörde einholt und der entsprechende Sachbearbeiter ohne vorherige Recherche in der Literatur sofort antworten muss. In klar gesetzlich geregelten Fällen wird man unabhängig davon, welchen Sachbearbeiter man ans Telefon bekommt, immer die gleiche Auskunft bekommen, da das Gesetz jedem Sachbearbeiter geläufig ist. Bei Grenzfällen, bei denen es Interpretationsspielraum gibt und möglicherweise auch die nicht jedem Sachbearbeiter geläufige aktuellste Rechtsprechung relevant wird, kann es hingegen zu mitunter deutlichen Abweichungen zwischen den Auskünften kommen.
  • In einer weiteren besonders vorteilhaften Ausgestaltung enthält die Realitäts-Kostenfunktion mindestens einen Beitrag, der umso besser ist, je schwieriger ein gleichzeitig oder im Wechsel mit dem Generator trainierter Diskriminator in der Lage ist, die Abwandlung von Trainingsbildern zu unterscheiden. Generator und Diskriminator bilden während des Trainings ein Generative Adversarial Network, GAN, von dem bei der Messung der Empfindlichkeit nach Abschluss des Trainings nur noch der Generator weiter verwendet wird. Der Generator lernt dann allein anhand der Trainingsbilder die Mannigfaltigkeit der realistischen Bilder, ohne dass explizit zu formulieren wäre, wann ein Bild genau als „realistisch“ zu bezeichnen ist.
  • Die Parameter des Generators können beispielsweise mit dem Ziel optimiert werden, dass eine Gesamt-Kostenfunktion, die einen Beitrag der Klassifikations-Kostenfunktion und einen Beitrag der Realitäts-Kostenfunktion (mit oder ohne GAN-Anteil) umfasst, ein Optimum annimmt. Dabei können die Beiträge in beliebiger Weise untereinander gewichtet sein, was beispielsweise durch konfigurierbare Hyperparameter festgelegt sein kann.
  • In einer weiteren besonders vorteilhaften Ausgestaltung wird dem Generator zusätzlich zum jeweiligen Trainingsbild auch additives Rauschen zugeführt. Damit wird speziell trainiert, dass auch bei der späteren Nutzung des Bildklassifikators nicht unmittelbar das Eingabebild dem Generator zugeführt wird, sondern durch Hinzufügen von Rauschen erzeugte Nachbarn.
  • Die Verfahren können insbesondere ganz oder teilweise computerimplementiert sein. Daher bezieht sich die Erfindung auch auf ein Computerprogramm mit maschinenlesbaren Anweisungen, die, wenn sie auf einem oder mehreren Computern ausgeführt werden, den oder die Computer dazu veranlassen, eines der beschriebenen Verfahren auszuführen. In diesem Sinne sind auch Steuergeräte für Fahrzeuge und Embedded-Systeme für technische Geräte, die ebenfalls in der Lage sind, maschinenlesbare Anweisungen auszuführen, als Computer anzusehen.
  • Ebenso bezieht sich die Erfindung auch auf einen maschinenlesbaren Datenträger und/oder auf ein Downloadprodukt mit dem Computerprogramm. Ein Downloadprodukt ist ein über ein Datennetzwerk übertragbares, d.h. von einem Benutzer des Datennetzwerks downloadbares, digitales Produkt, das beispielsweise in einem Online-Shop zum sofortigen Download feilgeboten werden kann.
  • Weiterhin kann ein Computer mit dem Computerprogramm, mit dem maschinenlesbaren Datenträger bzw. mit dem Downloadprodukt ausgerüstet sein.
  • Weitere, die Erfindung verbessernde Maßnahmen werden nachstehend gemeinsam mit der Beschreibung der bevorzugten Ausführungsbeispiele der Erfindung anhand von Figuren näher dargestellt.
  • Figurenliste
  • Es zeigt:
    • 1 Ausführungsbeispiel des Verfahrens 100 zur Messung der Empfindlichkeit 2* eines Bildklassifikators 2;
    • 2 Beispielhafte Erzeugung einer Abwandlung 7 eines Eingabebildes 1, die anders klassifiziert wird als das Eingabebild 1;
    • 3 Ausführungsbeispiel des Verfahrens 200 zum Trainieren eines Generators 6.
  • 1 ist ein schematisches Ablaufdiagramm eines Ausführungsbeispiels des Verfahrens 100 zur Messung der Empfindlichkeit 2* eines Bildklassifikators 2 gegen Veränderungen des Eingabebildes 1. Als Eingabebilder 1 können gemäß Schritt 105 insbesondere beispielsweise Bilder von in Serie gefertigten, nominell identischen Produkten gewählt werden. Der Bildklassifikator 2 kann dann darauf trainiert sein, die Eingabebilder 1 in Klassen 3a-3c einer vorgegebenen Klassifikation einzuteilen, die eine Qualitätsbeurteilung des jeweiligen Produkts repräsentieren.
  • In Schritt 110 wird durch Hinzufügen von Rauschen eine Vielzahl von Nachbarn 1' des Eingabebildes 1 ermittelt. In Schritt 120 wird mindestens ein Generator 6 bereitgestellt. Dieser Generator 6 ist darauf trainiert, realistische Bilder 1, 1' auf Änderungen R abzubilden. Wenn diese Änderungen R auf die realistischen Bilder 1, 1' angewendet werden, ist das Ergebnis ebenfalls realistisch und wird zusätzlich von dem Bildklassifikator 2 einer anderen Klasse 3a-3c zugeordnet als das ursprüngliche realistische Bild 1, 1'.
  • Der Generator 6 kann gemäß Block 121 insbesondere aus zwei Teilgeneratoren 6a und 6b bestehen. Der erste Teilgenerator 6a leistet einen additiven Beitrag und der zweite Teilgenerator 6b einen subtraktiven Beitrag zur Änderung R.
  • In Schritt 130 werden die Nachbarn 1' dem Generator 6 zugeführt, so dass eine Vielzahl von Änderungen R entsteht. In Schritt 140 wird aus den Änderungen R, und/oder aus einer über diese Änderungen R gebildeten zusammenfassenden Statistik, die Empfindlichkeit 2* des Bildklassifikators 2 gegen Veränderungen des Eingabebildes 1 ausgewertet. Hierbei können insbesondere beispielsweise Änderungen R ermittelt werden, die sich besonders gut zur Herstellung einer Abwandlung 7 des Eingabebildes 1 eignen, welche vom Bildklassifikator 2 anders klassifiziert wird als das Eingabebild 1. Eine solche Abwandlung 7 kann beispielsweise in Schritt 180 als weiteres Trainingsbild für den Bildklassifikator 2 verwendet werden, um die Entscheidungsgrenze zwischen verschiedenen Klassen 3a-3c zu schärfen.
  • In Schritt 150 kann geprüft werden, ob die ermittelte Empfindlichkeit 2* des Bildklassifikators 2, eventuell auch ausgedrückt als Abhängigkeit 2*(4) dieser Empfindlichkeit 2* vom Operator 4, ein vorgegebenes Kriterium erfüllt. Ist dies der Fall (Wahrheitswert 1), kann beispielsweise in Schritt 160 das Produkt, auf das sich das Eingabebild 1 bezieht, für eine manuelle Nachkontrolle vorgemerkt werden. Alternativ oder auch in Kombination hierzu kann in Schritt 170 eine Fördereinrichtung 8 angesteuert werden, um dieses Produkt aus dem Produktionsprozess abzusondern.
  • Innerhalb des Kastens 140 ist beispielhaft eingezeichnet, wie die Empfindlichkeit 2* ermittelt werden kann. Gemäß Block 141 können Änderungen R jeweils mit einer Bewertungsfunktion 9, die die Stärke und/oder Relevanz dieser Änderungen R im Hinblick auf die konkrete Anwendung des Bildklassifikators 2 misst, auf Maßzahlen 9a abgebildet werden. Unter Heranziehung dieser Maßzahlen 9a, und/oder einer zusammenfassenden Statistik über diese Maßzahlen 9a, kann die Empfindlichkeit 2* ermittelt werden. Alternativ oder auch in Kombination hierzu kann auch eine unmittelbar über die Änderungen R gebildete zusammenfassende Statistik in die Ermittlung der Empfindlichkeit 2* eingehen.
  • 2 zeigt beispielhaft, wie mit dem Generator 6 eine Änderung R für ein Eingabebild 1 erzeugt werden kann, deren Anwendung auf das Eingabebild 1 zur Einteilung der entstehenden Abwandlung 7 in eine neue Klasse 3a-3c führt.
  • Das Eingabebild 1 zeigt eine intakte Schraubenmutter 10 mit einem Innengewinde 11 in der Mitte. Wird dieses Eingabebild 1 dem Bildklassifikator 2 zugeführt, wird es richtigerweise in die Klasse 3a „OK“ eingeordnet.
  • Durch Hinzufügen von Rauschen 13 entsteht ein Nachbar 1' des Bildes 1. Wird dieser Nachbar 1' dem Generator 6 zugeführt, entsteht eine Änderung R, die einen Riss 12 enthält. Wird diese Änderung dem ursprünglichen Eingabebild 1 hinzugefügt, entsteht eine Abwandlung 7, in der sich der Riss 12 zwischen dem Außenumfang des Innengewindes 11 und dem äußeren Rand der Schraubenmutter 10 erstreckt. Das Bild dieser defekten Schraubenmutter 10 wird vom Bildklassifikator 2 in die neue Klasse 3b eingeteilt. Die defekte Schraubenmutter 10 wird also mit dem Qualitätsurteil „nicht OK“ (NOK) bewertet.
  • 3 ist ein schematisches Ablaufdiagramm eines Ausführungsbeispiels des Verfahrens 200 zum Trainieren eines Generators 6 für die Verwendung in dem Verfahren 100. In Schritt 210 wird eine Vielzahl von Trainingsbildern 1# bereitgestellt. In Schritt 220 werden diese Trainingsbilder 1# dem Generator 6 zugeführt. Dabei kann dem Generator 6 gemäß Block 221 zusätzlich auch additives Rauschen zugeführt werden.
  • In Schritt 230 werden Parameter 6*, die das Verhalten des Generators 6 charakterisieren, auf das Ziel optimiert, dass der Generator 6 die Trainingsbilder 1# jeweils auf Änderungen R abbildet, mit denen aus dem Trainingsbild 1# Abwandlungen 7 mit den zuvor beschriebenen gewünschten Eigenschaften erzeugt werden können: Die Abwandlungen 7 sollen vom Bildklassifikator 2 einer anderen Klasse 3a-3c zugeordnet werden als das jeweilige Trainingsbild 1#. Gleichwohl sollen die Abwandlungen 7 im Kontext der jeweiligen Anwendung nach Maßgabe einer vorgegebenen Realitäts-Kostenfunktion realistisch sein.
  • Gemäß Block 231 kann die Realitäts-Kostenfunktion mindestens einen Beitrag enthalten, der umso besser ist, je geringer die Unsicherheit ist, mit der der Bildklassifikator 2 die Abwandlung 7 klassifiziert. Hierbei kann gemäß Block 231a beispielsweise in die Ermittlung der Unsicherheit einbezogen werden, wie stark die vom Bildklassifikator 2 gelieferten Ergebnisse sich ändern, wenn Parameter, die das Verhalten des Bildklassifikators charakterisieren, in zufälliger Weise unterdrückt werden (Monte-Carlo-Dropout).
  • Weiterhin kann gemäß Block 232 die Realitäts-Kostenfunktion mindestens einen GAN-Beitrag enthalten, der umso besser ist, je schwieriger ein gleichzeitig oder im Wechsel mit dem Generator trainierter Diskriminator in der Lage ist, die Abwandlung 7 von Trainingsbildern 1# zu unterscheiden.
  • Die Optimierung der Parameter 6* kann fortgesetzt werden, bis ein beliebiges Abbruchkriterium erfüllt ist. Der fertig trainierte Zustand der Parameter 6* charakterisiert den fertigen Generator 6.
  • 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 Patentliteratur
    • WO 2018/197074 A1 [0003]

Claims (16)

  1. Verfahren (100) zur Messung der Empfindlichkeit (2*) eines Bildklassifikators (2), der ein Eingabebild (1) einer oder mehreren Klassen (3a-3c) einer vorgegebenen Klassifikation zuordnet, gegen Veränderungen des Eingabebildes (1), mit den Schritten: • es wird eine Vielzahl von Nachbarn (1') des Eingabebildes (1) ermittelt (110), indem jeweils ein Sample aus einer Verteilung von Rauschen gezogen und zum Eingabebild (1) addiert wird; • es wird mindestens ein Generator (6, 6a, 6b) bereitgestellt (120), der darauf trainiert ist, realistische Bilder (1, 1') auf Änderungen R abzubilden, nach deren Vornahme die Bilder ebenfalls realistisch sind und von dem Bildklassifikator (2) einer anderen Klasse (3a-3c) zugeordnet werden als das ursprüngliche realistische Bild (1, 1'); • die Nachbarn (1') werden dem Generator (6) zugeführt (130), so dass eine Vielzahl von Änderungen R entsteht; • aus den Änderungen R, und/oder aus einer über diese Änderungen R gebildeten zusammenfassenden Statistik, wird die Empfindlichkeit (2*) des Bildklassifikators (2) ausgewertet (140).
  2. Verfahren (100) nach Anspruch 1, wobei die Änderungen R jeweils mit einer Bewertungsfunktion (9), die die Stärke und/oder Relevanz dieser Änderungen R im Hinblick auf die konkrete Anwendung des Bildklassifikators (2) misst, auf Maßzahlen (9a) abgebildet werden (141) und wobei die Empfindlichkeit (2*) des Bildklassifikators (2) unter Heranziehung dieser Maßzahlen (9a), und/oder einer zusammenfassenden Statistik über diese Maßzahlen (9a), ermittelt wird (142).
  3. Verfahren (100) nach einem der Ansprüche 1 bis 2, wobei die zusammenfassende Statistik eine Kreuzkorrelation zwischen den einzelnen Änderungen R, und/oder eine Einteilung dieser Änderungen R in mehrere Cluster, umfasst.
  4. Verfahren (100) nach einem der Ansprüche 1 bis 3, wobei ein Generator (6) bereitgestellt wird (121), der einen Teilgenerator (6a) und einen zweiten Teilgenerator (6b) umfasst, wobei der erste Teilgenerator (6a) einen additiven Beitrag zur Änderung R leistet und wobei der zweite Teilgenerator (6b) einen subtraktiven Beitrag zur Änderung R leistet.
  5. Verfahren (100) nach Anspruch 4, wobei die beiden Teilgeneratoren (6a, 6b) jeweils als in Schichten organisierte künstliche neuronale Netzwerke, KNN, ausgebildet sind, wobei beide KNN mindestens eine Schicht gemeinsam haben.
  6. Verfahren (100) nach einem der Ansprüche 1 bis 5, wobei Bilder von in Serie gefertigten, nominell identischen Produkten als Eingabebilder (1) gewählt werden (105) und wobei der Bildklassifikator (2) darauf trainiert ist, die Eingabebilder (2a-3c) einer oder mehreren von mindestens zwei möglichen Klassen (3a-3c) zuzuordnen, die eine Qualitätsbeurteilung des jeweiligen Produkts repräsentieren.
  7. Verfahren (100) nach Anspruch 6, wobei in Antwort darauf, dass die ermittelte Empfindlichkeit (2*) des Bildklassifikators (2) ein vorgegebenes Kriterium erfüllt (150), ein Produkt, auf das sich das Eingabebild (1) bezieht, für eine manuelle Nachkontrolle vorgemerkt wird (160), und/oder eine Fördereinrichtung (8) angesteuert wird (170), um dieses Produkt aus dem Produktionsprozess abzusondern.
  8. Verfahren (100) nach einem der Ansprüche 1 bis 7, wobei mindestens eine Abwandlung (7) des Eingabebildes (1), die durch Hinzufügen einer Änderung R zu dem Eingabebild (1) entsteht, als weiteres Trainingsbild für das Training des Bildklassifikators (2) verwendet wird (180).
  9. Verfahren (200) zum Trainieren eines Generators (6) für die Verwendung in dem Verfahren (100) nach einem der Ansprüche 1 bis 8 mit den Schritten: • es wird eine Vielzahl von Trainingsbildern (1#) bereitgestellt (210); • die Trainingsbilder (1#) werden dem Generator (6) zugeführt (220); • Parameter (6*), die das Verhalten des Generators (6) charakterisieren, werden auf das Ziel optimiert (230), dass der Generator (6) die Trainingsbilder (1#) jeweils auf Änderungen R abbildet, die aus dem Trainingsbild (1#) jeweils eine Abwandlung (7) erzeugen, die ◯ vom Bildklassifikator (2) einer anderen Klasse (3a-3c) zugeordnet wird als das jeweilige Trainingsbild (1#) und ◯ gleichwohl nach Maßgabe einer vorgegebenen Realitäts-Kostenfunktion realistisch ist.
  10. Verfahren (200) nach Anspruch 9, wobei die Realitäts-Kostenfunktion mindestens einen Beitrag enthält (231), der umso besser ist, je geringer die Unsicherheit ist, mit der der Bildklassifikator (2) die Abwandlung (7) klassifiziert.
  11. Verfahren (200) nach Anspruch 10, wobei in die Ermittlung der Unsicherheit einbezogen wird (231a), wie stark die vom Bildklassifikator (2) gelieferten Ergebnisse sich ändern, wenn Parameter, die das Verhalten des Bildklassifikators charakterisieren, in zufälliger Weise unterdrückt werden.
  12. Verfahren (200) nach einem der Ansprüche 9 bis 11, wobei die Realitäts-Kostenfunktion mindestens einen Beitrag enthält (232), der umso besser ist, je schwieriger ein gleichzeitig oder im Wechsel mit dem Generator trainierter Diskriminator in der Lage ist, die Abwandlung (7) von Trainingsbildern (1#) zu unterscheiden.
  13. Verfahren (200) nach einem der Ansprüche 9 bis 12, wobei dem Generator (6) zusätzlich zum jeweiligen Trainingsbild (1#) auch additives Rauschen zugeführt wird (221).
  14. Computerprogramm, enthaltend maschinenlesbare Anweisungen, die, wenn sie auf einem oder mehreren Computern ausgeführt werden, den oder die Computer dazu veranlassen, ein Verfahren (100, 200) nach einem der Ansprüche 1 bis 13 auszuführen.
  15. Maschinenlesbarer Datenträger und/oder Downloadprodukt mit dem Computerprogramm nach Anspruch 14.
  16. Computer, ausgerüstet mit dem Computerprogramm nach Anspruch 14, und/oder mit dem maschinenlesbaren Datenträger und/oder Downloadprodukt nach Anspruch 15.
DE102020207323.6A 2020-06-12 2020-06-12 Messung der Empfindlichkeit von Bildklassifikatoren anhand realistischer Änderungen, die Klassengrenzen überschreiten Pending DE102020207323A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102020207323.6A DE102020207323A1 (de) 2020-06-12 2020-06-12 Messung der Empfindlichkeit von Bildklassifikatoren anhand realistischer Änderungen, die Klassengrenzen überschreiten

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102020207323.6A DE102020207323A1 (de) 2020-06-12 2020-06-12 Messung der Empfindlichkeit von Bildklassifikatoren anhand realistischer Änderungen, die Klassengrenzen überschreiten

Publications (1)

Publication Number Publication Date
DE102020207323A1 true DE102020207323A1 (de) 2021-12-16

Family

ID=78718757

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102020207323.6A Pending DE102020207323A1 (de) 2020-06-12 2020-06-12 Messung der Empfindlichkeit von Bildklassifikatoren anhand realistischer Änderungen, die Klassengrenzen überschreiten

Country Status (1)

Country Link
DE (1) DE102020207323A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102022201342A1 (de) 2022-02-09 2023-08-10 Robert Bosch Gesellschaft mit beschränkter Haftung Untersuchung von Falschklassifikationen eines Bildklassifikators

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018197074A1 (de) 2017-04-27 2018-11-01 Robert Bosch Gmbh Prüfvorrichtung zur optischen prüfung eines objekts und objektprüfungsanordnung

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018197074A1 (de) 2017-04-27 2018-11-01 Robert Bosch Gmbh Prüfvorrichtung zur optischen prüfung eines objekts und objektprüfungsanordnung

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102022201342A1 (de) 2022-02-09 2023-08-10 Robert Bosch Gesellschaft mit beschränkter Haftung Untersuchung von Falschklassifikationen eines Bildklassifikators

Similar Documents

Publication Publication Date Title
DE102019211656A1 (de) Bestimmung eines Verschleißgrades eines Werkzeugs
DE102020207323A1 (de) Messung der Empfindlichkeit von Bildklassifikatoren anhand realistischer Änderungen, die Klassengrenzen überschreiten
DE102020208474B4 (de) Messung der Empfindlichkeit von Klassifikatoren anhand zusammenwirkender Störungen
EP1391655A1 (de) Verfahren zur Überwachung eines thermodynamischen Prozesses
DE102017111215B4 (de) Vorrichtung und Verfahren zum Detektieren einer Eigenschaft aus elektromagnetischen Strahlungssensordaten
DE102006043684A1 (de) Verfahren zum Bearbeiten eines Intensitätsbildes eines Mikroskopes
EP3655920B1 (de) Verfahren und vorrichtung zur bewertung von bildausschnitten für eine korrespondenzbildung
EP3923193B1 (de) Messung der empfindlichkeit von bildklassifikatoren gegen veränderungen des eingabebildes
DE102019202523A1 (de) Verfahren und Vorrichtung zum Betreiben eines Steuerungssystems
DE102015206194A1 (de) Verfahren zur Kontrolle von Prüflingen sowie Vorrichtung hierfür
DE102021201833A1 (de) Vorrichtung zur Verarbeitung von mindestens einem Eingangsdatensatz unter Verwendung eines neuronalen Netzes sowie Verfahren
DE102013224382A1 (de) Beschleunigte Objekterkennung in einem Bild
DE102013225997A1 (de) Verfahren zum Ermitteln eines Modellwertsaus einem Random-Forest-Modell
EP3973455A1 (de) Verfahren zum beurteilen einer funktionsspezifischen robustheit eines neuronalen netzes
WO2020233992A1 (de) Verfahren zum funktionsspezifischen robustifizieren eines neuronalen netzes
DE102016212486A1 (de) Verfahren und Einrichtung zur Kategorisierung einer Bruchfläche eines Bauteils
DE102020208765A1 (de) Bildklassifikator mit variablen rezeptiven Feldern in Faltungsschichten
DE102020214996A1 (de) Messung der Empfindlichkeit eines Bildklassifikators gegenüber Änderungen des Eingabe-Bildes
DE102020207324A1 (de) Plausibilisierung der Ausgabe eines Bildklassifikators mit einem Generator für abgewandelte Bilder
DE102016200854B4 (de) Verfahren und Recheneinheit zur Dimensionierung eines Klassifikators
DE102019214546A1 (de) Computerimplementiertes Verfahren und Vorrichtung zur Optimierung einer Architektur eines künstlichen neuronalen Netzwerks
DE102020205535A1 (de) Charakterisierung, Training und Anwendung von Bildklassifikatoren
DE102020216054A1 (de) Ermitteln der Wirkung des Eingabe-Bildes eines Bildklassifikators auf ein durch Faltungsschichten gebildetes Zwischenprodukt
DE102020210732A1 (de) Verfahren zur Messung der Relevanz von Bildbereichen für Entscheidungen eines Bildklassifikators
DE102022208868A1 (de) Maschinelles Lernsystem zur optischen Inspektion

Legal Events

Date Code Title Description
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06K0009620000

Ipc: G06V0030190000

R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06V0030190000

Ipc: G06V0020600000

R163 Identified publications notified
R012 Request for examination validly filed