-
TECHNISCHES GEBIET
-
Diese Patentschrift betrifft ein computerimplementiertes Verfahren zum Erzeugen einer Datenstruktur, die eine Vielzahl von Sprachentitäten, die ein semantisches Mapping visueller zu einem Raum visueller Parameter definieren, umfasst. Damit zusammenhängende Aspekte betreffen ein computerimplementiertes Verfahren zum Trainieren eines Computervisionsmodells, eines Geräts, eines Computerprogramms und eines computerlesbaren Mediums.
-
HINTERGRUND
-
Computervision befasst sich damit, wie Computer automatisch höheres Verstehen aus digitalen Bildern oder Videos gewinnen können. Computervisionssysteme finden in zunehmendem Ausmaß Anwendung im Automobil- oder Roboterfahrzeugbereich. Computervision kann Eingaben aus einer Wechselwirkung zwischen mindestens einem Detektor und der Umgebung dieses Detektors verarbeiten. Die Umgebung kann von dem mindestens einen Detektor als eine Szene oder eine Abfolge von Szenen wahrgenommen werden. Insbesondere kann Wechselwirkung aus mindestens einer Kamera, einem Multikamerasystem, einem RADAR-System oder einem LIDAR-System resultieren.
-
Bei Automobil-Computervision Systemen muss sich Computervision oft mit offenem Kontext befassen, obwohl das sicherheitskritisch bleibt. Es ist daher wichtig, dass quantitative Sicherungsmittel sowohl bei der Konzeption als auch beim Testen von Computervisionsmodellen berücksichtigt werden. Die Entwicklung und das Testen von Computervisionsmodellen kann daher weiter verbessert werden.
-
KURZDARSTELLUNG
-
Gemäß einem ersten Aspekt wird ein computerimplementiertes Verfahren zum Erzeugen einer Datenstruktur bereitgestellt, die eine Vielzahl von Sprachentitäten umfasst, die ein semantisches Mapping visueller Parameter zu einem Raum visueller Parameter definieren, wobei das Verfahren umfasst:
- - Erhalten eines Computervisionsmodells, das konfiguriert ist, um eine Computervisionsfunktion zum Charakterisieren von Elementen beobachteter Szenen auszuführen;
- - Erhalten eines ersten Satzes visueller Parameter, der eine Vielzahl anfänglicher visueller Parameter umfasst, wobei ein Element visueller Daten, das basierend auf dem Ausmaß des mindestens einen anfänglichen visuellen Parameters bereitgestellt wird, fähig ist, eine Klassifizierungs- oder Regressions-Performance des Computervisionsmodells zu beeinflussen;
- - Bereitstellen eines visuellen Datensatzes, der einen Subsatz von Elementen visueller Daten, die mit dem ersten visuellen Satz visueller Parameter übereinstimmen, umfasst, und einen ersten entsprechenden Subsatz von Elementen von Ground-Truth-Daten;
- - Anwenden des Subsatzes von Elementen visueller Daten an das Computervisionsmodell, um eine Vielzahl von Performance-Scores zu erhalten, die die Performance des Computervisionsmodells, wenn es an den Subsatz von Elementen visueller Daten des Satzes visueller Daten unter Verwenden der entsprechenden Ground-Truth-Daten angewandt wird, charakterisieren;
- - Ausführen einer Sensitivitätsanalyse der Vielzahl von Performance-Scores über eine Domäne des ersten visuellen Satzes visueller Parameter;
- - Erzeugen eines zweiten Satzes visueller Parameter, der mindestens einen aktualisierten visuellen Parameter umfasst, wobei der zweite Satz visueller Parameter mindestens einen anfänglichen visuellen Parameter umfasst, der basierend auf dem Ergebnis der Sensitivitätsanalyse modifiziert wird, um den mindestens einen aktualisierten visuellen Parameter bereitzustellen;
- - Erzeugen einer Datenstruktur, die mindestens eine Sprachentität umfasst, basierend auf den visuellen Parametern des zweiten Satzes visueller Parameter, so dass ein semantisches Mapping zu visuellen Parametern des zweiten Satzes visueller Parameter bereitgestellt wird.
-
Das Verfahren gemäß dem ersten Aspekt ermöglicht vorteilhafterweise das automatische Definieren eines verfeinerten Satzes visueller Parameter (oder Spezifikation), der automatisch verbessert wurde, um einen oder mehrere Sätze visueller Parameter, die auf die Performance des Ziel-Computervisionsmodells abgestimmt sind, zu enthalten. Derartige verfeinerte visuelle Parameter bilden Sprachentitäten einer Spezifikationssprache.
-
Eine Spezifikationssprache ist für diverse Aufgaben wichtig, wie für das Beschaffen von Bildern (Einzelbilder oder Abfolgen) von einem Bildverkäufer-/Anbieter (zum Beispiel einem 3D-Rendering-Studio oder physischer Bildaufnahme in dem Feld), zum Spezifizieren von Produkterfordernissen eines Computervisionsmodells in der Entwicklung, zum Testen und Überprüfen von Aktivitäten des Computervisionsmodells, zum Bereitstellen einer Sicherheitsspezifikation eines Produkts (der operationellen Konzeptionsdomäne), und zum Ermöglichen von Zusammenarbeit durch ein gemeinsames Austauschformat. Das Konzipieren einer Spezifikationssprache ist für menschliche Experten schwierig, weil Meinungen zu den relevanten Aspekten eines Bildes variieren können, und ein Bild auf viele Weisen auf einem höheren Niveau beschrieben werden kann.
-
Die Spezifikationssprache hilft dabei, die Konzeption einer Bildspezifikationssprache zu entwickeln und empirisch nachzuweisen. Dieser Ansatz soll die Sprachkomponenten, die visuelle Parameter verwenden, die die Taxonomie der Sprache bilden, darstellen. Die Bedeutung der Sprachkomponenten wird priorisiert, wobei diese Priorisierung verwendet werden kann, um Subsätze zu bauen und die Komplexheit der Sprache zu reduzieren.
-
Ein anderes Resultat ist eine Operationalisierung oder Konkretisierung der visuellen Parameter hinsichtlich einer semantischen Darstellung aus verfeinerten visuellen Parametern zu Elementen visueller Daten und entsprechenden Vorhersagen. Auf diese Weise können zweideutige Auslegungen der visuellen Parameter gelöst werden. Das ist für das Entwickeln und Trainieren des Computervisionsmodells relevant. Es kann auch zum Testen des Computervisionsmodells und im Fall einer Haftung wichtig sein.
-
Die Sprache ist eine Datenstruktur, die in einem Austauschformat gespeichert werden kann. Das ermöglicht Zusammenarbeit zwischen Datenanbietern und Entwicklern sowie Testern eines AI-basierten Computervisionsmodells. Unter Verwenden einer Sprache ist es auch nützlich, unterschiedliche Computervisionsmodelle zu gleichen Bedingungen zu testen und zu vergleichen. Auf ähnliche Weise können unterschiedliche Betriebskonzeptdomänen hinsichtlich einer gemeinsamen Spezifikationssprache verglichen werden.
-
Bei einem Beispiel kann der Satz visueller Parameter verfeinert werden, um visuelle Parameter, die bewirken, dass das Computervisionsmodell eine große Varianz aufweist, zu enthalten. Weitere Bilder, die als Trainingsdaten ausgewählt werden, die einen solchen Satz visueller Parameter verwenden, können zum Trainieren eines Computervisionsmodells nützlich sein, weil die höhere Varianz bedeutet, dass die Bilder, die gemäß einem solchen Satz visueller Parameter ausgewählt werden, eine große Anzahl von „Eckfällen“ enthalten, zu deren sicherer Beantwortung das Computervisionsmodell trainiert werden sollte. Mit anderen Worten kann das Verfahren einen Subsatz des Satzes visueller Parameter (und Wertbereiche), der die höchste Varianz der Performance beeinflusst, auswählen. Eine Datenstruktur, die aus einem solchen Satz visueller Parameter erzeugt wird, ermöglicht bessere Auswahl oder Definition visueller Zustände einer Szene, auf der ein Computervisionsmodell schlechte Resultate erzielt. Eine Sprache, die durch eine solche Datenstrukturweise definiert ist, kann verwendet werden, um zum Beispiel während der Überprüfung Eckfälle zu definieren.
-
Bei einem Beispiel kann der Satz visueller Parameter verfeinert werden, um visuelle Parameter zu umfassen, die bewirken, dass das Computervisionsmodell eine kleine Varianz aufweist. Weitere visuelle Zustände einer Szene, die unter Verwenden eines solchen Satzes visueller Parameter definiert werden, können beim Überprüfen eines Computervisionsmodells nützlich sein, weil die niedrigere Varianz bedeutet, dass die Bilder, die gemäß einem solchen Satz visueller Parameter ausgewählt werden, Fälle mit beständigem Zustand enthalten, bei denen das Computervisionsmodell dazu fähig sein sollte, zuverlässig zu arbeiten. Eine Datenstruktur, die aus einem solchen Satz visueller Parameter erzeugt wird, ermöglicht bessere Auswahl oder Definition visueller Zustände einer Szene, auf der ein Computervisionsmodell gut arbeitet. Eine Sprache, die von einer solchen Datenstrukturweise definiert ist, kann verwendet werden, um Fälle mit stabilem Zustand zum Beispiel während einer Überprüfung zu definieren.
-
Auf jeden Fall entspricht das Reduzieren eines oder mehrerer redundanter Parameter in einem Satz visueller Parameter einer signifikanten Reduktion der Größe eines Raums von Parametern beim Trainieren oder Überprüfen eines Computersichtmodells, was ein(en) schnelleres/schnelleren und energieeffizienteres/energieeffizienteren Training und/oder Prozess ermöglicht.
-
Visuelle Parameter sind ein Aspekt eines Bildes oder Videos, der das Verstehen einer angezeigten Szene durch ein Computervisionsmodell beeinflusst. Als ein Beispiel kann ein visueller Parameter ein Winkel der Sonne in Bezug auf ein Ego-Fahrzeug, eine Tageszeit, eine Höhe und Nähe von Gebäuden und Bäumen in der Szene, eine Geschwindigkeit des Ego-Fahrzeugs, die Geschwindigkeit und der Ort von Fahrzeugen in Bezug auf das Ego-Fahrzeug, die visuellen Merkmale der Straßenoberfläche vor dem Ego-Fahrzeug und dergleichen sein.
-
Als ein konkretes Beispiel könnte eine nasse Straßenoberfläche mit der Sonne direkt vor dem Ego-Fahrzeug darin resultieren, dass zusätzliches Blendlicht zu der Windschutzscheibe des Ego-Fahrzeugs gelenkt wird. Diese Bedingung könnte sich darauf auswirken, wie genau ein Computervisionsmodell Straßenschilder, die sich vor dem Ego-Fahrzeug befinden, aufgrund des gesteigerten Blendlichts klassifizieren könnte. Es wäre folglich wahrscheinlicher, dass eine Straßenschild-Identifikationsaufgabe eines Computervisionsmodells bei dem beschriebenen Zustand Straßenschilder falsch identifiziert. Die Performance des Computervisionsmodells würde daher eine höhere Resultatvarianz zeigen. Bei diesem Beispiel können Nässe der Straße und der Sonnenwinkel direkt vor dem Ego-Fahrzeug zu Sprachentitäten der Spezifikationssprache befördert werden.
-
Während des Trainierens von Computervisionsmodellen ermöglicht es Kontrolle über den Satz von Computerdaten, das Computervisionsmodell zu trainieren, um sich mit schwierigen Bedingungen auseinanderzusetzen. Es wird eine Operational Design Domain (ODD) definiert, die den Bereich visueller Parameter, die die Trainingsdaten einschließen sollten, beschreibt. Typischerweise ist die Definition der Operational Design Domain eine weitgehend manuelle Aufgabe, die die Eingabe von Bereichsexperten erfordert. Gemäß der vorliegenden Patentschrift können Bereichsexperten eine anfängliche Operational Design Domain, „erster Satz visueller Parameter“ oder „erste Spezifikation visueller Parameter“ bereitstellen. Bei einem Beispiel kann das semantische Mapping, das durch die Vielzahl von Sprachentitäten, die gemäß der vorliegenden Patentschrift erzeugt werden, definiert wird, verwendet werden, um Punkte, Wertebereiche oder Cluster innerhalb der ODD zu definieren.
-
Die vorliegende Patentschrift beschreibt einen Ansatz, der automatisch die Performance eines Computervisionsmodells zum Trainieren von Daten unter Verwenden der anfänglichen Operational Design Domain analysiert und automatisch eine zweite Operational Design Domain oder „einen zweiten Satz visueller Parameter“, die/der visuelle Parameter aufweist, die durch iterative Verfeinerung verbessert sind, bereitstellt. Der zweite Satz visueller Parameter wird basierend auf einer Sensitivitätsanalyse der Performance des Computervisionsmodells auf einem Testtrainingssatz, der in Übereinstimmung mit dem anfänglichen Satz visueller Parameter ausgewählt wird, bereitgestellt.
-
Mit anderen Worten, falls der anfängliche Satz visueller Parameter das Computervisionsmodell veranlasst hat, hinter den Erwartungen zurückzubleiben, kann solchen Parametern weniger Gewicht beigemessen werden, können sie in der Reichweite eingeschränkt oder aus dem zweiten Satz visueller Parameter entfernt werden. Insbesondere können visuelle Parameter priorisiert werden, und ein Subbereich der anfänglichen visuellen Parameter kann als ein sicherer Betriebsbereich des Computervisionsmodells definiert werden. In einigen Fällen kann ein visueller Parameter in mehrere Subparameter aufgespaltet werden.
-
Ein sicherer Betriebsbereich ist einer, in dem die Performance des Computervisionsmodells beim Identifizieren von Elementen in einer Szene der Trainingsdaten für Variationen der gegebenen visuellen Parameter relativ unempfindlich ist.
-
Im Allgemeinen ermöglicht der Ansatz das automatische Erzeugen einer Operational Design Domain unter Verwenden eines wiederholbaren automatischen Prozesses, der es ermöglicht, zweideutige Auslegungen der visuellen Parameter zu lösen. Ein oder mehrere der Sätze visueller Parameter, die gemäß dem Verfahren des ersten Aspekts erzeugt werden, können daher als ein empirisch validierter Testfall für ein Computervisionsmodell dienen. Die Methodologie verstärkt die Entscheidungsfindung basierend auf empirischen Resultaten.
-
Mit anderen Worten analysiert der erste Aspekt, welche visuellen Parameter die größte Auswirkung beim Testen oder statistischen Bewerten eines Computervisionsmodells aufweisen. Mit einem Satz visueller Parameter und einem Computervisionsmodell als Eingabe, wird eine sortierte Liste visueller Parameter ausgegeben. Durch Auswählen einer Subliste visueller Parameter aus einer sortierten Liste wird ein reduziertes Eingabemodell (Ontologie) des zweiten Satzes visueller Parameter definiert.
-
Sobald es an ein Computervisionsmodell angewandt wird, das Eingabe zu dem Steuersystem eines autonomen Fahrzeugs, Roboters oder einer autonomen Drohne bereitstellt, wird ein Computervisionsmodell, das gemäß der vorliegenden Patentschrift trainiert ist, zuverlässiger arbeiten, was zu einer Verbesserung der Sicherheit des autonomen Fahrzeugs, Roboters oder der autonomen Drohne führt.
-
Bei einer Ausführungsform ist das semantische Mapping fähig, einen Trainingsdatensatz zum Trainieren eines Computervisionsmodells einzuschränken.
-
Bei einer Ausführungsform ist das semantische Mapping fähig, den Betrieb eines Computervisionsmodells zu definieren, auszuwählen oder einzuschränken.
-
Bei einer Ausführungsform ist das semantische Mapping fähig, einen Punkt innerhalb der Operational Design Domain eines Computervisionsmodells zu definieren.
-
Bei einer Ausführungsform ist das semantische Mapping fähig, einen Überprüfungsfall eines Computervisionsmodells zu definieren.
-
Bei einer Ausführungsform ist das semantische Mapping eine Spezifikationssprache visueller Parameter.
-
Ein zweiter Aspekt stellt ein computerimplementiertes Verfahren zum Trainieren eines Computervisionsmodells bereit, das umfasst:
- - Erhalten eines weiteren Computervisionsmodells, das konfiguriert ist, um eine Computervisionsfunktion
zum Charakterisieren von Elementen beobachteter Szenen auszuführen; und - - Erhalten eines Satzes von Trainingsdaten gemäß dem Verfahren des ersten Aspekts oder seiner Ausführungsformen.
- - Trainieren des Computervisionsmodells unter Verwenden des Satzes von Trainingsdaten.
Vorteilhafterweise kann ein besser vorhersehbares trainiertes Computervisionsmodell bereitgestellt werden.
-
Ein dritter Aspekt stellt ein Gerät zum Erzeugen einer Datenstruktur bereit, die eine Vielzahl von Sprachentitäten umfasst, die ein semantisches Mapping visueller Parameter zu einem Raum visueller Parameter definiert, das umfasst:
- - eine Eingabeschnittstelle;
- - einen Prozessor;
- - einen Speicher; und
- - eine Ausgabeschnittstelle.
-
Die Eingabeschnittstelle ist dazu konfiguriert, ein Computervisionsmodell zu erhalten, das dazu konfiguriert ist, eine Computervisionsfunktion zum Charakterisieren von Elementen beobachteter Szenen auszuführen, und einen ersten Satz visueller Parameter zu erhalten, der eine Vielzahl anfänglicher visueller Parameter umfasst, wobei ein Element visueller Daten, das basierend auf dem Ausmaß des mindestens einen anfänglichen visuellen Parameters bereitgestellt wird, fähig ist, eine Klassifizierungs- oder Regressions-Performance des Computervisionsmodells zu beeinflussen.
-
Der Prozessor ist dazu konfiguriert, einen Satz visueller Daten bereitzustellen, der einen Subsatz von Elementen visueller Daten umfasst, der mit dem ersten Satz visueller Parameter übereinstimmt, und einen entsprechenden Subsatz von Elementen von Ground-Truth-Daten, und den Subsatz von Elementen visueller Daten an das Computervisionsmodell anzuwenden, um eine Vielzahl von Performance-Scores zu erhalten, die die Performance des Computervisionsmodells, wenn es an den Subsatz von Elementen visueller Daten des Satzes visueller Daten angewandt wird, unter Verwenden der entsprechenden Ground-Truth-Daten charakterisieren und eine Sensitivitätsanalyse der Vielzahl von Performance-Scores über einen Bereich des ersten Satzes visueller Parameter auszuführen, und einen zweiten Satz visueller Parameter zu erzeugen, der mindestens einen aktualisierten visuellen Parameter umfasst, wobei der zweite Satz visueller Parameter mindestens einen anfänglichen visuellen Parameter umfasst, der basierend auf dem Ergebnis der Sensibilitätsanalyse modifiziert wird, um den mindestens einen aktualisierten visuellen Parameter bereitzustellen, und eine Datenstruktur zu erzeugen, die mindestens eine Sprachentität basierend auf den visuellen Parametern des zweiten Satzes visueller Parameter umfasst, so dass ein semantisches Mapping zu visuellen Parametern des zweiten Satzes visueller Parameter bereitgestellt wird.
-
Ein vierter Aspekt stellt ein Computerprogramm bereit, das maschinenlesbare Anweisungen umfasst, die, wenn sie von einem Prozessor ausgeführt werden, fähig sind, entweder (i) das computerimplementierte Verfahren gemäß dem Verfahren des ersten Aspekts oder seiner Ausführungsformen, und/oder (ii) das computerimplementierte Verfahren gemäß dem Verfahren des zweiten Aspekts auszuführen.
-
Ein fünfter Aspekt stellt ein computerlesbares Medium bereit, das mindestens eines der Computerprogramme gemäß dem vierten Aspekt umfasst, und/oder die Datenstruktur, die die mindestens eine Sprachentität umfasst, und/oder das semantische Mapping, das gemäß dem Verfahren des ersten Aspekts oder seiner Ausführungsformen erzeugt wird, umfasst.
-
Abhängige Ausführungsformen der oben erwähnten Aspekte werden in den abhängigen Ansprüchen gegeben und in der folgenden Beschreibung, auf die sich der Leser nun beziehen sollte, erklärt.
-
Die vorliegenden Definitionen sind generell auf diese Patentschrift anwendbar.
-
Ein Satz visueller Daten der beobachteten Szenen ist ein Satz von Elementen, die entweder ein Bild, wie JPEG- oder GIF-Bilder, oder ein Video darstellen. Ein Video ist eine Sequenz von Bildern, die optional nach Bedarf in einem Format, wie MPEG, codiert sind.
-
Ein Computervisionsmodell ist eine Funktion, die von Modellparametern parametriert ist. Die Modellparameter werden während Training basierend auf dem Trainingsdatensatz unter Verwenden von Maschinenlerntechniken gelernt. Das Computervisionsmodell wird konfiguriert, um mindestens ein Element visueller Daten oder einen Abschnitt oder Subsatz davon zu einem Element vorhergesagter Ground-Truth-Daten abzubilden. Ein oder mehrere visuelle Parameter definieren einen visuellen Zustand, indem sie Informationen über die Inhalte der beobachteten Szene enthalten und/oder Grenzbedingungen zum Aufnehmen und/oder Erzeugen der beobachteten Szene darstellen. Eine latente Darstellung des Computervisionsmodells ist eine Zwischenschicht (das heißt verborgene Schicht) oder ein Abschnitt davon in dem Computervisionsmodell.
-
Ein Element von Ground-Truth-Daten, das einem Element visueller Daten entspricht, ist ein Klassifizierungs- und/oder Regressionsresultat, das das Computervisionsmodell als Antwort auf eine Bildeingabe, wenn es korrekt funktioniert, ausgeben soll. Mit anderen Worten stellen die Ground-Truth-Daten eine korrekte Antwort dar, die das Computervisionsmodell in einem Idealfall ausgeben sollte, wenn ein Element visueller Daten, das eine vorhersehbare Szene zeigt, oder Element einer Szene eingegeben wird. Der Begriff Bild kann einen Subsatz eines Bildes betreffen, wie ein segmentiertes Straßenschild oder Hindernis.
-
Ein Satz visueller Daten der beobachteten Szenen ist ein Satz von Elementen, die entweder ein Bild oder ein Video darstellen, wobei Letzteres eine Sequenz von Bildern ist. Jedes Element visueller Daten kann ein numerischer Tensor sein, mit einem Video, das eine Extra-Dimension für die Abfolge von Rahmen aufweist. Ein Element der Ground-Truth-Daten, das einem Element visueller Daten entspricht, ist zum Beispiel ein Klassifizierungs- und/oder Regressionsresultat, das das Computervisionsmodell unter idealen Umständen ausgeben sollte. Falls das Element visueller Daten zum Beispiel zum Teil gemäß der Anwesenheit einer nassen Straßenoberfläche parametriert ist, und die Anwesenheit oder nicht einer nassen Straßenoberfläche eine beabsichtigte Ausgabe des Computermodells, das zu trainieren ist, sein soll, würde die Ground-Truth eine Beschreibung dieses Elements des assoziierten Elements visueller Daten als ein Bild einer nassen Straße beinhaltend zurückgeben.
-
Jedes Element von Ground-Truth-Daten kann ein anderer numerischer Sensor sein, oder in einem einfacheren Fall, ein binärer Resultatvektor, der mit einem Element in dem Satz visueller Daten assoziiert oder zu diesem referenziert ist. Die Ground-Truth-Daten stellen ein definitives Resultat, das ein Element einer Szene in ihren assoziierten visuellen Daten betrifft, bereit. Ein Element visueller Daten, das zum Beispiel ein Bild eines 20-km/h-Tempolimit-Schildes umfasst, würde mit einem Resultatvektor assoziiert, der bestätigt, dass die Szene ein Straßenschild enthält, wobei weitere Detailebenen sind, dass das Straßenschild ein Tempolimit-Schild ist, dass das angezeigte Tempolimit 20 km/h ist. Auf diese Art kann die Ausgabevorhersage eines Computervisionsmodells, das an das Element visueller Daten angewandt wird, auf seine Richtigkeit durch Vergleich mit den assoziierten Ground-Truth-Daten beurteilt werden, und ein Performance-Maß des Computervisionsmodells kann berechnet werden.
-
Beispielhafte Ausführungsformen der vorliegenden Erfindung sind in den Figuren abgebildet, die nicht als die Ansprüche einschränkend ausgelegt werden dürfen, und sind unten ausführlicher erklärt.
-
Figurenliste
-
- 1 veranschaulicht schematisch ein computerimplementiertes Verfahren gemäß dem ersten Aspekt.
- 2 veranschaulicht schematisch ein Beispiel einer beispielhaften Umsetzung des ersten Aspekts zum Erzeugen einer Datenstruktur, die Sprachentitäten für ein semantisches Mapping umfasst.
- 3 veranschaulicht schematisch ein Beispiel einer Sensitivitätsanalysefunktion.
- 4 veranschaulicht schematisch ein Beispiel des Clusterns von Sätzen visueller Parameter.
- Die 5a und 5b veranschaulichen schematisch ein Beispiel des Unterteilens von Parameterbereichen.
- 5c veranschaulicht schematisch ein Beispiel des Kombinierens zweier Parameterbereiche visueller Parameter.
- 6 veranschaulicht schematisch ein Gerät gemäß dem dritten Aspekt.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Ein oder mehrere visuelle Parameter definieren einen visuellen Zustand einer Szene, weil er oder sie Informationen über die Inhalte der beobachteten Szene enthalten und/oder Grenzbedingungen zum Aufnehmen und/oder Erzeugen der beobachteten Szene darstellen. Eine typische Szene ist durch eine große Anzahl visueller Parameter, von welchen einige kontinuierlich variabel sind, gekennzeichnet. Der Suchraum für Rechenfunktionen über die Gesamtanzahl der visuellen Parameter, die eine typische Szene charakterisieren, ist daher aufwändig.
-
Die visuellen Parameter können zum Beispiel sein: Kameraeigenschaften (zum Beispiel räumliches und zeitliches Sampeln, Verzerrung, Aberration, Farbtiefe, Sättigung, Rauschen usw.), LIDAR- oder RADAR-Eigenschaften (zum Beispiel Absorption oder Reflexionsvermögen von Oberflächen usw.), Lichtbedingungen in der Szene (Lichtprallen, Reflexionen, Lichtquellen, Nebel und Lichtstreuung, gesamte Beleuchtung usw.), Materialien und Texturen, Objekte und ihre Positionen, Größe und Drehung, Geometrie (von Objekten und Umgebung), Parameter, die die Umgebung definieren, Umgebungsmerkmale, wie Sichtentfernung, Niederschlagmerkmale, Strahlungsstärken (von denen vermutet wird, dass sie stark mit dem Erfassungsprozess interagieren und die starke Korrelationen mit Performance aufweisen können), Bildmerkmale/-statistiken (wie Kontrast, Sättigung, Rauschen usw.), bereichsspezifischer Beschreibungen der Szene und Situation (zum Beispiel Pkw und Objekte auf einer Kreuzung) usw. Viele weitere Parameter sind denkbar.
-
Diese Parameter können als eine Ontologie, Taxonomie, Maße oder Sprachentitäten gesehen werden. Sie können eine eingeschränkte Sicht auf die Welt oder ein Eingabemodell definieren. Ein Satz konkreter Bilder kann angesichts einer Zuweisung/einer Auswahl visueller Parameter aufgenommen oder gerendert werden, oder Bilder in einem bereits existierenden Datensatz können unter Verwenden der visuellen Parameter beschrieben werden. Der Vorteil des Verwendens einer Ontologie oder eines Eingabemodells besteht darin, dass zum Testen ein erwartetes Testdeckungsziel definiert werden kann, um ein Testende-Kriterium zu definieren, zum Beispiel unter Verwenden t-weiser Deckung, und zur statistischen Analyse kann eine Verteilung in Bezug auf diese Parameter definiert werden. Sprachentitäten sind Bausteine einer Spezifikationssprache.
-
Bilder, Videos und andere visuelle Daten können gemeinsam mit co-annotierten anderen Sensordaten (GPS-Daten, radiometrischen Daten, lokalen meteorologischen Merkmalen) auf unterschiedliche Weisen erhalten werden. Reale Bilder oder Videos können durch eine Bildaufnahmevorrichtung, wie ein Kamerasystem, aufgenommen werden. Reale Bilder können bereits in einer Datenbank existieren, und eine manuelle oder automatische Auswahl eines Subsatzes von Bildern kann angesichts visueller Parameter und/oder anderer Sensordaten erfolgen. Visuelle Parameter und/oder andere Sensordaten können auch zum Definieren erforderlicher Experimente verwendet werden. Ein anderer Ansatz kann darin bestehen, Bilder angesichts visueller Parameter und/oder anderer Sensordaten zu synthetisieren. Bilder können unter Verwenden von Bildaugmentationstechniken, Deep-Learning-Netzwerken (zum Beispiel Generative Adversarial Networks (GANs), Variational Autoencoders (VAEs)) und 3D-Rendering synthetisiert werden. Ein Tool zum 3D-Rendern in dem Kontext von Fahrsimulation ist zum Beispiel das CARLA-Tool (Koltun, 2017, erhältlich bei www.arXiv.org : 1711.03938).
-
Herkömmlich werden bei Entwicklung und Testen von Computervisionsmodellen die eingegebenen Bilder definiert, ausgewählt oder basierend auf Eigenschaften (visuellen Parametern), die gemäß der Expertenmeinung wichtig sind, erzeugt. Die Expertenmeinung in Zusammenhang mit der richtigen Auswahl visueller Parameter kann jedoch unvollständig sein oder durch Annahmen, die durch Erfahrung menschlicher Wahrnehmung bewirkt werden, irreführen. Die menschliche Wahrnehmung basiert auf dem menschlichen Wahrnehmungssystem (menschliches Auge und visueller Kortex), das sich von den technischen Erfassungs- und Wahrnehmungsmerkmalen unter Verwenden eines Computervisionsmodells unterscheidet.
-
Herkömmlich werden Sprachentitäten einer Spezifikationssprache, falls sie existieren, a priori basierend auf Expertenmeinung definiert. Die Spezifikationssprache kann wieder unvollständig oder irreführend sein, da sie die Relevanz visueller Parameter nicht berücksichtigt.
-
Herkömmlich kann das Computervisionsmodell auf Bildeigenschaften, die nicht relevant sind, entwickelt oder getestet werden, und visuelle Parameter, die wichtige Einflussfaktoren sind, können übersehen oder unterschätzt werden. Außerdem kann ein technisches System zusätzliche Merkmale, wie Polarisierung oder erweiterte spektrale Bereiche, die für das menschliche Wahrnehmungssystem nicht wahrnehmbar sind, erfassen.
-
Ein Computervisionsmodell für ein autonomes System ist ein sicherheitskritisches Bauteil. Um Sicherheit sicherzustellen und aus Haftungsgründen integriert die Definition eines Satzes visueller Parameter (manchmal als eine Operational Design Domain bezeichnet) mit einem Computervisionsmodell, um eine Sicherheitsgarantie bereitzustellen. Das Definieren der Wechselwirkung des Computervisionsmodells mit seinen Trainingsdaten ist komplex.
-
1 veranschaulicht schematisch ein computerimplementiertes Verfahren gemäß dem ersten Aspekt.
-
Der erste Aspekt stellt ein computerimplementiertes Verfahren 100 zum Erzeugen einer Datenstruktur bereit, die eine Vielzahl von Sprachentitäten umfasst, die ein semantisches Mapping visueller Parameter zu einem Raum visueller Parameter definieren, wobei das Verfahren umfasst:
- - Erhalten 110 eines Computervisionsmodells, das dazu konfiguriert ist, eine Computervisionsfunktion zum Charakterisieren von Elementen beobachteter Szenen auszuführen;
- - Erhalten 120 eines ersten Satzes visueller Parameter, der eine Vielzahl anfänglicher visueller Parameter umfasst, wobei ein Element visueller Daten, die basierend auf dem Ausmaß, in dem der mindestens eine anfängliche Parameter fähig ist, eine Klassifizierungs- oder Regressions-Performance des Computervisionsmodells zu beeinflussen, bereitgestellt wird;
- - Bereitstellen 130 eines Satzes visueller Daten, der einen Subsatz von Elementen visueller Daten umfasst, die mit dem ersten Satz visueller Parameter übereinstimmen, und eines entsprechenden Subsatzes von Elementen von Ground-Truth-Daten;
- - Anwenden 140 des Subsatzes von Elementen visueller Daten an das Computervisionsmodell, um eine Vielzahl von Performance-Scores zu erhalten, die die Performance des Computervisionsmodells charakterisieren, wenn es an den Subsatz von Elementen visueller Daten des Satzes visueller Daten unter Verwenden der entsprechenden Ground-Truth-Daten angewandt wird;
- - Ausführen 150 einer Sensitivitätsanalyse der Vielzahl von Performance-Scores über einen Bereich des ersten Satzes visueller Parameter;
- - Erzeugen 160 eines zweitens Satzes visueller Parameter, der mindestens einen aktualisierten visuellen Parameter umfasst, wobei der zweite Satz visueller Parameter mindestens einen anfänglichen visuellen Parameter umfasst, der basierend auf dem Ergebnis der Sensitivitätsanalyse modifiziert wird, um den mindestens einen aktualisierten visuellen Parameter bereitzustellen;
- - Erzeugen 170 einer Datenstruktur, die mindestens eine Sprachentität basierend auf den visuellen Parametern des zweiten Satzes visueller Parameter umfasst, so dass ein semantisches Mapping zu visuellen Parametern des Satzes zweiter visueller Parameter bereitgestellt wird.
-
Das Computervisionsmodell 16 ist zum Beispiel ein Deep Neural Network (DNN) oder ein einem neuronalen Netzwerk ähnliches Modell, die jeweils eine Vielzahl neuronaler Netzschichten umfassen. Andere Modelltopologien, die einem Fachmann bekannt sind, können jedoch auch gemäß der vorliegenden Technik umgesetzt werden. Die Schichten berechnen latente Darstellungen, die höhere Darstellungen des eingegebenen Bildes oder der eingegebenen Videosequenz sind. Das Computervisionsmodell 16 kann in einem vortrainierten Zustand vorliegen. Maschinenlernen involviert oft Iterationen von Trainingsschritten.
-
Der erste Satz visueller Parameter ist zum Beispiel eine Datenstruktur, die unterschiedliche Typen visueller Erscheinungen definiert, die sich auf die Performance eines Computervisionsmodells auswirken, das eine Funktion, wie zum Beispiel Bild- oder Videoerkennung, Klassifizierungs oder Regression auf einer Szene oder eines Abschnitts dieser Szene ausführt. Die visuellen Erscheinungen werden von einem oder mehreren Sätzen visueller Parameter codiert. Ein Satz visueller Parameter kann zum Beispiel Parameter 60 als eine Reihe diskreter Werte, wie Niederschlagsstärke, definieren (siehe zum Beispiel 5c). Ein Satz visueller Parameter kann Parameter unter Verwenden boolescher Bedingungen definieren, wie einer booleschen Bedingung, die die Anwesenheit oder Abwesenheit von Baumdeckung definiert. Alternativ oder zusätzlich kann ein Satz visueller Parameter Parameter unter Verwenden durchgehender Bereiche, wie Azimutwinkelverschiebungen, verwenden.
-
Das Sampeln eines Satzes von Werten innerhalb der Grenzen, die von einem Satz visueller Parameter definiert sind, ermöglicht es, Elemente visueller Daten und Elemente entsprechender Ground-Truth-Daten, die mit dem Satz visueller Parameter übereinstimmen, bereitzustellen. Als ein Beispiel stimmen visuelle Parameter von Elementen visueller Daten und Elementen entsprechender Ground-Truth-Daten überein, falls Elemente visueller Daten und Elemente entsprechender Ground-Truth-Daten von einem Generator synthetischer Bilder erzeugt, von einer physischen Aufnahmevorrichtung aufgenommen und/oder aus einer Datenbank entnommen, jeweils gemäß den virtuellen Parametern erzeugt werden.
-
Es kann davon ausgegangen werden, dass der Satz visueller Parameter eine Ontologie, Taxonomie, Maße oder Sprachentitäten darstellt, die eine eingeschränkte Sicht auf die Welt oder ein Eingabemodell definieren. Ein Satz konkreter Bilder kann aufgenommen werden (von einem Datensatz realer Bilder) oder gerendert werden (unter Verwenden einer Erzeugungsmaschine synthetischer Bilder), indem die visuellen Parameter verwendet werden.
-
Das Aktualisieren mindestens eines visuellen Parameters kann eines oder eine Kombination von Hinzufügen, Entfernen, Neudefinieren, Aufspalten, Zusammenführen oder Kombinieren visueller Parameter umfassen. Es kann auch Koordinatenumwandlungen visueller Parameter umfassen. Das Aktualisieren mindestens eines visuellen Parameters basierend auf dem Ergebnis der Sensitivitätsanalyse kann auf das Steigen der Relevanz der visuellen Parameter abzielen.
-
Bei einer Ausführungsform können die visuellen Parameter des ersten und zweiten Satzes visueller Parameter eine oder eine Kombination ausgewählt aus der folgenden Liste umfassen: einen oder mehrere Parameter, die eine Konfiguration einer Bildaufnahmeeinrichtung beschreiben, optional einer Bild- oder Videoaufnahmevorrichtung, visuelle Daten werden genommen oder synthetisch erzeugt zum optional räumlichen und/oder zeitlichen Sampeln, Verzerrung, Aberration, Farbtiefe, Sättigung, Rauschen, Absorption, Reflexionsfähigkeit von Oberflächen, eine oder mehrere Lichtbedingungen in einer Szene eines Bildes/Videos, Lichtprallen, Reflexionen, Lichtquellen, Nebel und Lichtstreuung, gesamte Beleuchtung; und/oder ein oder mehrere Merkmale der Szene eines Bildes/Videos, optional eines oder mehrerer Objekte und/oder ihrer Position, Größe, Drehung, Geometrie, Materialien, Texturen, ein oder mehrere Parameter einer Umgebung der Bild-/Videoaufnahmevorrichtung oder für eine Simulation für Bildaufnahmevorrichtung eines Generators synthetischer Bilder, optional Umgebungsmerkmale, Sichtentfernung, Niederschlagsmerkmale, Strahlungsstärke, Bildcharakterisierungsstatistiken, wie Kontrast, Sättigung, Rauschen oder eine oder mehrere bereichsspezifische Beschreibungen der Szene eines Bildes/Videos, optional eines oder mehrerer Fahrzeuge oder Straßenbenutzer, oder eines oder mehrerer Objekte auf einer Kreuzung.
-
Bei einer Ausführungsform umfasst der Bereich des ersten Satzes visueller Parameter einen Subsatz, in einem endlich-dimensionalen Vektorraum, numerischer Darstellungen, in welchen es visuellen Parametern erlaubt ist zu liegen, optional ein multidimensionales Intervall kontinuierlicher oder diskreter visueller Parameter, oder einen Satz numerischer Darstellungen visueller Parameter in dem endlich-dimensionalen Vektorraum. Insbesondere kann ein visueller Parameter ein Satz diskreter (zum Beispiel Punkte) oder kontinuierlicher Werte (zum Beispiel Bereich, Intervall) sein. Auch Werte können auch boolesch sein.
-
Kasten 1 ist ein praktisches Beispiel eines Satzes visueller Parameter. Jeder der Text-Strings in Klammern, wie „spawn_point“, „cam_yaw“ ist ein Beispiel eines Satzes anfänglicher visueller Parameter. Bei dem Beispiel des Kastens 1 sind die Werte des Satzes anfänglicher visueller Parameter eine Reihe diskreter Werte, obwohl alternativ mindestens einer des Satzes visueller Parameter einen Bereich zwischen mindestens zwei Endpunkten umfassen kann. Alternativ kann mindestens ein Satz visueller Parameter des Satzes visueller Parameter eine Vielzahl von Bereichen umfassen (in Kasten 1 nicht veranschaulicht). Kasten 1 - Beispiel eines ersten Satzes visueller Parameter in „Python“
worldmodel = OrderedDict | ([ | (‚spawn_point‘, [0,3,6,9,12,15]), |
| | (‚cam_yaw‘, [-20, -10, 0, 10, 20]), |
| | (‚cam_pitch‘, [-10, -5, 0, 5, 10]), |
| | (‚cam_roll‘ , [-10, -5, 0, 5, 10]), |
| | (‚cloudyness‘, [0, 33, 66, 100]), |
| | (‚precipitation‘, [0, 50, 100]), |
| | (‚precipitation_deposits‘, [0, 50, 100]), |
| | (‚sun_altitude_angle‘, [-10, 0, 33, 66, 100]), |
| | (‚sun_azimuth_angle‘, [0, 45, 90, 135, 180, 225, 270]), |
| ]) | |
-
Bilder zum Trainieren eines Computervisionsmodells 16 werden basierend auf dem zweiten Satz visueller Parameter erhalten. Damit das Computervisionsmodell 16 eine vorhersehbare Charakterisierung von Elementen in einer realen Szene bereitstellt, sollte es auf repräsentativen Daten trainiert werden. Typischerweise wird der Satz visueller Parameter des Kastens 1 gemäß der Meinung eines Experten definiert. Der Experte kann jedoch eine falsche oder voreingenommene Meinung haben. In diesem Fall könnte ein Computervisionsmodell auf voreingenommen Trainingsdaten trainiert werden.
-
Gemäß der vorliegenden Patentschrift wird ein aktualisierter oder zweiter Satz visueller Parameter basierend auf dem ersten Satz visueller Parameter auf einen Optimierungsprozess folgend erzeugt. Der erste Satz visueller Parameter wird automatisch basierend auf dem Ergebnis der Sensitivitätsanalyse gemäß dem computerimplementierten Verfahren des ersten Aspekts modifiziert, um sicherzustellen, dass visuelle Daten erhalten werden, die mit der Definition des zweiten Satzes visueller Parameter übereinstimmen, eine große Varianz des Performance-Score bewirken, wenn sie an das Computervisionsmodell 16 angewandt werden. Das ermöglicht es, den zweiten Satz visueller Parameter zum Auswählen oder Spezifizieren von „Eckfällen“ von zum Beispiel Trainingsdaten, die während der Überprüfung eines Computervisionsmodells 16 nützlich sind, zu verwenden.
-
Bei einem alternativen Beispiel wird der erste Satz visueller Parameter automatisch basierend auf dem Ergebnis der Sensitivitätsanalyse gemäß dem computerimplementierten Verfahren des ersten Aspekts modifiziert, um sicherzustellen, dass visuelle Daten erhalten werden, die mit der Definition des zweiten Satzes visueller Parameter übereinstimmen, eine kleine Varianz des Performance-Score bewirken, wenn sie an das Computervisionsmodell 16 angewandt werden. Das ermöglicht es, den Satz zweiter visueller Parameter zum Auswählen oder Spezifizieren von „Fällen mit beständigem Zustand“ als ein Beispiel von Performance mit niedriger Varianz des Computervisionsmodells 16 zu verwenden.
-
Ein Fachmann versteht, dass eine „große“ oder „kleine“ Varianz der Performance-Scores in Bezug auf die Anwendung, den Satz visueller Parameter und die betrachtete Szene definiert werden. Der Performance-Score des Computervisionsmodells 16 für ein spezifisches Element eingegebener visueller Daten kann unter Verwenden mindestens einer einer Konfusionsmatrix, eines Präzision-Score, eines Rückruf-Score, eines Fl-Score, eines Vereinigungsmengen-Score, oder eines mittleren Score berechnet werden, wobei eine „große“ oder „kleine“ Varianz unterschiedliche Werte abhängig davon, welche Technik angewandt wird, aufweisen kann.
-
Viele unterschiedliche Änderungstypen des ersten Satzes visueller Parameter können erfolgen. Es kann zum Beispiel mindestens ein Element eines Satzes visueller Parameter gelöscht, gesteigert, verringert oder hinzugefügt werden. In Kasten 2 wurde die Parameter für „Bewölkung“ und „Niederschlag“ im oberen Bereich auf 85 herunter von 100 reduziert, und der „Sonnenhöhenwinkel“-Parameter wurde im Bereich durch Entfernen seines Endelements reduziert. Der Parameter „Niederschlag“ wurde mit der Hinzufügung zweier zusätzlicher Elemente upgesampelt. Der gesamte „cam-yaw“-Parameter wurde gelöscht. Oben Stehendes ist ein spezifisches Beispiel dafür, wie der Satz visueller Parameter automatisch abgeändert wird, und viele Variationen sind möglich.
-
2 veranschaulicht schematisch ein Beispiel einer automatischen Umsetzung des ersten Aspekts zum Erzeugen einer Datenstruktur, die Sprachentitäten für ein semantisches Mapping umfasst. Eine ausführliche Beschreibung eines Betriebsbeispiels des Verfahrens gemäß dem ersten Aspekt wird nun bereitgestellt.
-
Als ein Beispiel kann ein anfänglicher Satz visueller Parameter und Werte oder Wertebereiche für die visuellen Parameter in einem gegebenen Szenario definiert werden (z.B. von Experten). Ein einfaches Szenario hätte einen ersten Parameter, der diverse Sonnenhöhen bezüglich der Fahrtrichtung des Ego-Fahrzeugs definiert, obwohl, wie unten besprochen wird, ein viel weiterer Bereich visueller Parameter möglich ist.
-
Eine Sampling-Vorgehensweise 11 erzeugt einen Satz von Zuweisungen von Werten zu dem Satz visueller Parameter 10 (Weltmodell, ODD). Optional wird der Raum visueller Parameter, der von dem Satz visueller Parameter definiert wird, willkürlich gemäß einer Gaußschen Verteilung gesampelt. Optional werden die visuellen Parameter an Bereichen, von denen vermutet wird, dass sie Performance-Ecken des Computervisionsmodells 16 definieren, oversampelt. Optional werden die visuellen Parameter an Bereichen, von denen vermutet wird, dass sie vorhersehbare Performance des Computervisionsmodells 16 definieren, undersampelt. Folglich umfasst bei einer Ausführungsform, die einen Satz visueller Daten, der mit dem ersten Satz visueller Daten übereinstimmt, bereitstellt, ferner das Sampeln des mindestens einen anfänglichen Satzes visueller Parameter, der in dem ersten Satz visueller Parameter enthalten ist, um einen Satz gesampelter Werte visueller Parameter zu erhalten, und den Satz visueller Daten mit Werten anfänglicher visueller Parameter unter Verwenden des Satzes gesampelter Werte anfänglicher visueller Parameter zu erhalten.
-
Die nächste Aufgabe besteht im Beschaffen von Bildern in Übereinstimmung mit dem Satz visueller Parameter.
-
Ein Generator synthetischer Bilder, eine physische Aufnahmeeinrichtung und/oder eine Datenbankauswahl 42, die das Erzeugen, Aufnehmen oder Auswählen von Bildern und entsprechender Ground-Truth-Elemente gemäß den visuellen Parametern, die während der Sampling-Vorgehensweise 11 gesampelt wurden, erlauben, können umgesetzt werden.
-
Synthetische Bilder werden zum Beispiel unter Verwenden des CARLA-Generators, der oben besprochen ist, erzeugt. In dem Fall des synthetischen Erzeugens kann die Ground-Truth genommen werden, um der gesampelte Wert visueller Parameter zu sein, der verwendet wird, um das gegebene synthetische Bild zu erzeugen.
-
Die physische Aufnahmevorrichtung ermöglicht es, ein Experiment auszuführen, um eine Vielzahl visueller Testdaten innerhalb des spezifizierten Raums visueller Parameter zu erhalten. Alternativ können Datenbanken, die historische Archive visueller Daten enthalten, die zweckdienlich benannt wurden, ausgewählt werden.
-
Bei einem Testschritt 17 werden Bilder aus dem Bilderfassungsschritt 42 zu einem Computervisionsmodell 16 bereitgestellt. Optional befindet sich das Computervisionsmodell innerhalb eines autonomen Fahrzeugs oder Robotersystems 46 als ein Beispiel eines „Hardware in the Loop“-Tests.
-
Für jedes Element visueller Daten, die in das Computervisionsmodell 16 eingegeben werden, wird ein vorausgesagtes Element von dem Computervisionsmodell 16 erhalten. Dieses stellt eine Vorhersage eines Elements einer Szene dar, das in dem Element visueller Daten, die in das Computervisionsmodell 16 eingegeben werden, dargestellt ist. Ein Performance-Score, der zum Beispiel auf einem Vergleich zwischen der Ground-Truth und dem vorhergesagten Element von Ausgabedaten basiert, wird berechnet. Das Resultat ist eine Vielzahl von Performance-Scores gemäß den gesampelten Werten des Satzes visueller Parameter.
-
Bei einer Ausführungsform umfasst folglich das Erhalten einer Vielzahl von Performance-Scores ferner das Erzeugen unter Verwenden des Computervisionsmodells einer Vielzahl von Vorhersagen von Elementen beobachteter Szenen in dem Subsatz von Elementen visueller Daten, wobei die Vielzahl von Vorhersagen mindestens eine Vorhersage eines Klassifizierungslabels und/oder mindestens eines Regressionswerts mindestens eines Elements in dem Subsatz visueller Daten umfasst, und das Vergleichen der Vielzahl von Vorhersagen von Elementen in dem Subsatz von Elementen visueller Daten mit dem entsprechenden Subsatz von Ground-Truth-Daten, um daher die Vielzahl von Performance Scores zu erhalten.
-
Bei einer Ausführungsform umfasst oder basiert der Performance-Score auf einem beliebigen oder
- einer Kombination der Liste einer Konfusionsmatrix, einem Präzisions-Score, einem Rückruf-Score, einem F1-Score, einem Vereinigungsmengen-Score oder einem mittleren Score; und/oder das Computervisionsmodell ist ein neuronales Netzwerk, oder ein Neuronal-Netzwerk-ähnliches Modell ist.
-
Eine (globale) Sensitivitätsanalyse 19 wird auf den Performance-Scores bezüglich der visuellen Parameter 10 ausgeführt. Die (globale) Sensitivitätsanalyse 19 bestimmt die Relevanz der visuellen Parameter des Satzes visueller Parameter für die Performance des Computervisionsmodells 16.
-
Als ein Beispiel wird für jeden visuellen Parameter eine Varianz der Performance-Scores bestimmt. Solche Varianzen werden verwendet, um eine Einstufung visueller Parameter zu erzeugen und/oder anzuzeigen. Diese Informationen können verwendet werden, um den Satz anfänglicher visueller Parameter 10 des Satzes visueller Parameter zu modifizieren.
-
Bei einer Ausführungsform umfasst folglich das Ausführen der Sensitivitätsanalyse ferner das Berechnen einer Vielzahl von Varianzen jeweiliger Performance-Scores der Vielzahl von Performance-Scores bezüglich der anfänglichen visuellen Parameter des ersten Satzes visueller Parameter und/oder bezüglich einer oder mehrerer Kombinationen visueller Parameter des ersten Satzes visueller Parameter; und optional das Einstufen der anfänglichen visuellen Parameter des ersten Satzes visueller Parameter und/oder der einen oder mehreren Kombinationen visueller Parameter basierend auf der berechneten Vielzahl von Varianzen von Performance-Scores.
-
Optional können Cluster von Bedingungen gemäß der (globalen) Sensitivitätsanalyse 19 erzeugt werden. Falls zum Beispiel ein erster visueller boolescher Parameter „die Kamera ist in Richtung Sonne ausgerichtet“ und ein zweiter boolescher visueller Parameter, die Straße ist nass“ behauptet werden, kann die Performance des Computervisionsmodells 16 niedrig sein, und der erste und der zweite visuelle Parameter erhalten beide eine hohe Einstufung.
-
Der Test Schritt 17 und die (globale) Sensitivitätsanalyse 19 und/oder Neutrainieren des Computervisionsmodells 16 können wiederholt werden. Optional werden die Performance-Scores und Varianzen des Performance-Score während solcher Trainingsiterationen verfolgt. Die Trainingsiterationen werden gestoppt, wenn es scheint, dass sich die Varianzen des Performance-Score gesetzt haben (gestoppt haben, sich signifikant zu ändern). Optional können irrelevante visuelle Parameter iterativ modifiziert oder aus darauffolgenden Versionen des Satzes visueller Parameter entfernt werden. Optional können Tests mit höherer Auflösung an Teile des Satzes visueller Parameter, die als für die Performance der Funktion 16 wichtig betrachtet werden, angewandt werden.
-
Ein Verfeinerungsschritt 45 verwendet die Resultate der (globalen) Sensitivitätsanalyse 19, um mindestens einen anfänglichen visuellen Parameter des Satzes visueller Parameter zu modifizieren, um somit einen zweiten Satz visueller Parameter zu ergeben. Wenn der zweite Satz visueller Parameter 11 gesampelt wird und visuelle Daten erhalten werden 42, weist eine Vielzahl der Elemente der visuellen Daten, die gemäß dem zweiten Satz visueller Parameter erhalten werden, einen verbesserten Performance-Score auf.
-
Als ein Beispiel kann ein visueller Parameter mit Performance-Scores, die eine niedrige Varianz aufweisen, aus dem Satz visueller Parameter entfernt werden. Alternativ kann ein anderer Satz visueller Parameter hinzugefügt werden, falls sich Performance-Scores über einen Schwellenwert hinaus verbessern. Ein Bereich mindestens eines visuellen Parameters kann vergrößert oder reduziert werden. Viele unterschiedliche Änderungstypen des ersten Satzes visueller Parameter können ausgeführt werden.
-
Eine Ausführungsform umfasst ferner das Identifizieren basierend auf einer Identifikationsbedingung mindestens eines anfänglichen Satzes visueller Parameter (der zum Beispiel einen oder mehrere diskrete Punkte oder mindestens eine kontinuierliche Reihe von Punkten umfasst) des ersten Satzes visueller Parameter unter Verwenden der Vielzahl von Performance-Scores und/oder der Vielzahl von Varianzen der Performance-Scores, und wobei das Erzeugen des zweiten Satzes visueller Parameter das Modifizieren des mindestens einen anfänglichen visuellen Parameters durch Aufteilen des mindestens einen anfänglichen Satzes visueller Parameter in mindestens einen ersten und einen zweiten Subsatz visueller Parameter umfasst, womit zwei weitere Sprachentitäten definiert werden.
-
Eine Ausführungsform umfasst folglich weiter das Konkatenieren mindestens eines dritten und eines vierten Satzes visueller Parameter des ersten Satzes visueller Parameter in einen kombinierten Subsatz visueller Parameter.
-
Eine Ausführungsform umfasst folglich ferner mindestens eine Reihe der anfänglichen visuellen Parameter des ersten Satzes visueller Parameter unter Verwenden der Vielzahl von Performance-Scores und/oder der Vielzahl von Varianzen der Performance-Scores, und das Erzeugen des zweiten Satzes virtueller Parameter umfasst das Modifizieren des Bereichs mindestens eines anfänglichen visuellen Parameters durch Vergrößern oder Verkleinern der Reichweite des mindestens einen Bereichs anfänglicher visueller Parameter auf seiner Domäne, um somit einen modifizierten Bereich visueller Parameter zu ergeben.
-
Eine Ausführungsform umfasst folglich das Identifizieren mindestens eines Satzes anfänglicher visueller Parameter des ersten Satzes visueller Parameter unter Verwenden der Vielzahl von Performance-Scores und/oder der Vielzahl von Varianzen von Performance-Scores, und das Erzeugen der zweiten Spezifikation visueller Parameter umfasst das Modifizieren des mindestens einen Satzes anfänglicher visueller Parameter durch Teilen oder Kombinieren von Bereichen (oder Sätzen) des mindestens einen Satzes anfänglicher visueller Parameter, um daher einen modifizierten Satz visueller Parameter zu ergeben.
-
Bei einem Beispiel wird der Bereich visueller Parameter eines oder mehrerer Parameter modifiziert, um die Performance-Varianz zu steigern.
-
Bei einem Beispiel wird der Bereich visueller Parameter eines oder mehrerer Parameter modifiziert, um die Performance-Varianz zu verringern.
-
Als ein Beispiel kann der Sonnenhöhenwinkel („sun_altitude“, [-10, 0, 33, 66, 100]) partitioniert oder gespaltet werden in (,night‘, [True, False]) entsprechend (,sun_altitude‘<=10), (,sun_set_rise‘, [True, False]) entsprechend (,sun_altitude‘, [10,33]), (,day_sun‘, [33,66,100]). Bei einem solchen Spalten oder Kombinieren visueller Parameter ist es für einen Benutzer möglich, auf ein Modell zu fokussieren, das höhere Varianz aufweist, und in diesem Fall können Eckfälle leichter getestet werden, oder niedrigere Varianz, und in diesem Fall kann der „normale Betrieb“ zuverlässiger getestet werden. So oder so kann die Anzahl von Rechenzyklen, die für Konvergenz benötigt wird, reduziert werden.
-
Eine Ausführungsform umfasst folglich ferner das Identifizieren mindestens einer Kombination visueller Parameter, die mindestens zwei Sätze anfänglicher visueller Parameter oder mindestens zwei Bereiche anfänglicher visueller Parameter oder mindestens einen Satz anfänglicher visueller Parameter und einen Bereich anfänglicher visueller Parameter von dem ersten Satz visueller Parameter umfassen, indem die Vielzahl von Performance-Scores und/oder die Vielzahl von Varianzen von Performance-Scores verwendet wird, und das Erzeugen des zweiten Satzes visueller Parameter umfasst das Konkatenieren der mindestens einen Kombination anfänglicher visueller Parameter, womit eine weitere Sprachentität definiert wird. Eine Ausführungsform umfasst folglich ferner das Identifizieren, dass die mindestens eine Kombination visueller Parameter gemäß mindestens einem vorbestimmten Kriterium basierend auf den entsprechenden Varianzen von Performance-Scores automatisiert ist, optional wobei die mindestens eine Kombination visueller Parameter identifiziert wird, falls die entsprechende Varianz von Performance-Scores einen vorbestimmten Schwellenwert überschreitet.
-
Bei einer Ausführungsform umfasst das Bereitstellen eines semantischen Mapping von visuellen Parametern des zweiten Satzes visueller Parameter zu Elementen visueller Daten und entsprechenden Elementen von Ground-Truth-Daten:
- - Sampeln des mindestens einen anfänglichen visuellen Parameters, der in dem ersten Satz
visueller Parameter enthalten ist, um einen Satz gesampelter anfänglicher Werte visueller Parameter zu erhalten, optional wobei das Sampeln des mindestens einen Bereichs anfänglicher visueller Parameter unter Verwenden eines Sampling-Verfahrens ausgeführt wird, das optional kombinatorisches Testen und/oder Latin-Hypercube-Sampling beinhaltet; und - - Erhalten eines Satzes visueller Daten durch eines oder eine Kombination von:
- - Erzeugen, unter Verwenden eines Generators synthetischer visueller Daten, eines Satzes synthetischer visueller Daten,
die synthetische visuelle Daten und Ground-Truth-Daten, die gemäß den Samples des zweiten Satzes visueller Parameter synthetisiert werden, umfassen; und oder - - Sampeln von Elementen visueller Daten aus einer Datenbank, die Probenbilder umfasst, die mit entsprechenden Elementen der Ground-Truth-Daten gemäß den Samples des zweiten Satzes visueller Daten assoziiert sind, umfassen; und/oder
- - Spezifizieren experimenteller Anforderungen gemäß den Samples des zweiten Satzes visueller Parameter und Ausführen von Live-Experimenten, um den Satz visueller Daten zu erhalten und Ground-Truth-Daten zu sammeln.
-
Eine Ausführungsform umfasst folglich das Ausgeben des Satzes visueller Daten und entsprechender Elemente von Ground-Truth-Daten als einen Trainingsdatensatz.
-
Bei einer Ausführungsform wird die mindestens eine Datenstruktur, die mindestens eine Sprachentität umfasst,
die auf den visuellen Parametern des zweiten Satzes visueller Parameter basiert, über eine Eingabeschnittstelle einer Rechenvorrichtung empfangen.
-
Bei einer Ausführungsform wird die Sprachentität zu einem Benutzer über eine Ausgabeschnittstelle der Rechenvorrichtung angezeigt.
Im Allgemeinen können unterschiedliche Sätze visueller Parameter (die das Weltmodell oder Ontologie definieren) zum Testen oder statistischen Bewerten des Computervisionsmodells 16 definiert werden, und ihre Umsetzung oder exakte Auslegung kann variieren. Diese Methodologie verstärkt die Entscheidungsfindung basierend auf empirischen Resultaten 19 statt auf der Meinung von Experten allein, und verstärkt die Konkretisierung 42 abstrakter Parameter 10. Experten können immer noch visuelle Parameter als Kandidaten 10 bereitstellen.
-
Visuelle Parameter des Satzes verfeinerter visueller Parameter werden in 10b verwendet, um Sprachentitäten der Spezifikationssprache zu definieren. Falls zum Beispiel einer der verfeinerten visuellen Parameter ein boolescher Wert ist, der angibt, ob die „sun_altitude“ größer ist als 33°, kann eine Datenstruktur, die mindestens eine Sprachentität umfasst, erzeugt werden. In der Tat würde man in diesem Fall zu Sprachentitäten „sun_altitude“, „33°“, und „>“ gelangen, die in einer Phrase, wie „sun_altitude > 33°“ ausgedrückt werden können. Eine solche Phrase kann eine Darstellung, die die Datenstruktur codiert, sein. Es kann unerlässlich sein, eine oder mehrere Kombinationen verfeinerter visueller Parameter in Betracht zu ziehen. Als ein Beispiel kann eine Kombination besonderer Bereiche visueller Parameter „sun_altitude“ und „precipitation“ (siehe 5c) relevant sein. Eine solche Kombination kann befördert werden, um ein neuer boolescher Parameter zu werden und folglich eine neue (molekulare) Sprachentität „sun_altitude & precipitation“. Alternativ können Operatoren wie „und“, „oder“, „falls ..., dann ...“ oder „für alle ...“ oder eines oder mehrere aus imperativer und/oder funktionaler Programmierung als eine andere Sorte von Sprachentitäten hinzugefügt werden. Bei dem oben erwähnten Beispiel könnte das zu einer Phrase führen wie „Sonnen_Höhe > 10° und Sonnen_Höhe <= 45° und Niederschlag = 2“.
-
Die Aufschlüsselung des Sampelns 11 und das Erhalten 42 von Elementen visueller Daten und Elementen entsprechender Ground-Truth-Daten erzeugt ein semantisches Mapping von visuellen Parametern der verfeinerten (das heißt des zweiten Satzes visueller Parameter) zu konkreten Bildern und entsprechender Ground-Truth. Das semantische Mapping definiert ein Semantik, in der die Sprachentitäten oder Phrasen, die aus Sprachentitäten gebaut werden, zu Bildern und Ground-Truth gemappt werden. Mit anderen Worten macht das semantische Mapping (verfeinerte) visuelle Parameter interpretierbar.
-
das semantische Mapping ist nicht surjektiv. Es können in der Tat viele oder sogar unendlich viele Elemente visueller Daten und Elemente entsprechender Ground-Truth in Bezug auf identische (verfeinerte) visuelle Parameter beschrieben werden. Es ist schwierig, ein Computervisionsmodell auf all diesen zu entwickeln und zu testen. Das Verfahren des ersten Aspekts stellt jedoch Mittel bereit, um die relevantesten (am weitesten verfeinerten) Sprachentitäten für Computervisionsmodell ausfindig zu machen. Während für jede relevante Sprachentität immer noch unendlich viele Elemente visueller Daten und entsprechende Ground-Truth bestehen, ist es am besten, wenn man sinnvolle Vertreter definiert. Es ist dieses semantische Mappin, das als Bereitstellen solcher Vertreter von Äquivalenzklassen gesehen werden kann.
-
Ein zweiter Aspekt betrifft ein computerimplementiertes Verfahren 200 zum Trainieren eines Computervisionsmodells, das umfasst:
- - Erhalten eines weiteren Computervisionsmodells, das konfiguriert ist, um eine Computervisionsfunktion
zum Charakterisieren von Elementen beobachteter Szenen auszuführen; und - - Erhalten eines Satzes von Trainingsdaten gemäß dem Verfahren des ersten Aspekts oder seiner Ausführungsformen.
- - Trainieren des Computervisionsmodells unter Verwenden des Satzes von Trainingsdaten. Dabei stellt die Spezifikationssprache ein Mittel zum Beschreiben, wie das Computervisionsmodell trainiert wurde, bereit. Das ist hinsichtlich der Vergleichbarkeit und Haftung wichtig. Wenn es nämlich darum geht, mindestens zwei unterschiedliche Computervisionsmodelle 16 zu bewerten, ist es vorteilhaft, falls die mindestens zwei unterschiedlichen Computervisionsmodelle weitgehend auf dieselbe Art gemäß dem zweiten Aspekt trainiert werden, insbesondere unter Verwenden derselben Spezifikationssprache und derselben Operational Design Domain (in der Spezifikationssprache formuliert).
-
3 veranschaulicht schematisch ein Beispiel einer Sensitivitätsanalysefunktion 19.
-
Im Allgemeinen kann die Sensitivitätsanalyse (oder eingeengter die globale Sensitivitätsanalyse) als eine numerische Quantifizierung dafür gesehen werden, wie die Unsicherheit der Ausgabe eines Modells oder Systems aufgeteilt und unterschiedlichen Ungewissheitsquellen in ihren Eingaben zugeordnet werden kann. Diese Quantifizierung kann als eine Sensitivität oder Robustheit bezeichnet werden. In dem Kontext dieser Patentschrift kann das Modell zum Beispiel als das Mapping
von visuellen Parametern (oder visuellen Parameterkoordinaten) X
i, i = 1 n basierend darauf, welche Elemente visueller Daten aufgenommen/erzeugt/ausgewählt wurden, um Performance-Kenndaten (oder Performance-Kenndaten-Koordinaten) Y
j, j = 1,..., m basierend auf den Vorhersagen und entsprechender Ground-Truth zu ergeben, genommen werden. Falls m gleich eins ist gibt es nur einen Performance-Score. m kann jedoch größer als eins sein.
-
Eine auf Varianz basierende Sensitivitätsanalyse, die gelegentlich auch als Sobol-Methode oder Sobol-Indices bezeichnet wird, ist eine besondere Art (globaler) Sensitivitätsanalyse. Zu diesem Zweck können Samples sowohl von Eingabe als auch Ausgabe der oben erwähnten Abbildung Φ in einem probabilistischen Sinn interpretiert werden. In der Tat kann als ein Beispiel eine (multivariate) empirische Verteilung für Eingabe-Samples erzeugt werden. Analog kann für Ausgabe-Samples eine (multivariate) empirische Verteilung berechnet werden. Eine Varianz der Eingabe und/oder Ausgabe (das heißt die Performance-Scores) können somit berechnet werden. Auf Varianz basierende Sensitivitätsanalyse ist zur Aufschlüsselung der Varianz der Ausgabe in Bruchteilen fähig, die Eingabekoordinaten oder Sätzen von Eingabekoordinaten zugewiesen werden können. In dem Fall zweier visueller Parameter (das heißt n=2) könnte man feststellen, dass 50 % der Varianz der Performance-Scores von (der Varianz) des ersten visuellen Parameters (X1) bewirkt werden, dass 20 % von (der Varianz) des zweiten visuellen Parameters (X2) bewirkt werden, und dass 30 % auf Wechselwirkungen zwischen dem ersten visuellen Parameter und dem zweiten visuellen Parameter zurückzuführen sind. Für n>2 entstehen Wechselwirkungen für mehr als zwei visuelle Parameter. Angemerkt wird, dass, falls sich solche Wechselwirkungen als signifikant herausstellen, eine Kombination zwischen zwei oder mehreren visuellen Parametern befördert werden kann, um eine neue visuelle Dimension und/oder eine Sprachentität zu werden. Auf Varianz basierende Sensitivitätsanalyse ist ein Beispiel einer globalen Sensitivitätsanalyse.
-
Bei Anwendungen in dem Kontext dieser Patentschrift ist daher ein wichtiges Resultat der auf Varianz basierenden Sensitivitätsanalyse eine Varianz von Performance-Scores für jeden visuellen Parameter. Je größer eine Varianz von Performance-Scores für einen gegebenen visuellen Parameter ist, desto mehr variieren Performance-Scores für diesen visuellen Parameter. Das gibt an, dass das Computervisionsmodell basierend auf der Einstellung dieses visuellen Parameters unvorhersehbarer ist. Unvorhersehbarkeit beim Trainieren des Computervisionsmodells 16 kann unerwünscht sein, und visuelle Parameter, die zu einer hohen Varianz führen, können somit beim Erzeugen einer Datenstruktur, die eine Vielzahl von Sprachentitäten umfasst, die ein semantisches Mapping visueller Parameter zu einem Raum visueller Parameter definieren, weniger Gewicht erhalten oder entfernt werden.
-
In dem Kontext dieser Patentschrift kann das Modell zum Beispiel als das Abbilden von visuellen Parametern basierend darauf, welche Elemente visueller Daten aufgenommen/erzeugt/ausgewählt werden, genommen werden, um Performance-Scores basierend auf einem Vergleich zwischen den Vorhersagen und der Ground-Truth zu ergeben. Ein wichtiges Resultat der Sensitivitätsanalyse kann eine Varianz von Performance-Scores für jeden visuellen Parameter sein. Je größer eine Varianz von Performance-Scores für einen gegebenen visuellen Parameter ist, desto mehr variieren Performance-Scores für diesen visuellen Parameter. Das gibt an, dass das Computervisionsmodell basierend auf der Einstellung dieses visuellen Parameters unvorhersehbarer ist.
-
Das Beispiel der Sensitivitätsanalysefunktion 19 der 3 funktioniert auf den Vorhersagen von Szenen, die von dem Computervisionsmodell 16 ausgegeben werden, in Kombination mit der Ground-Truth 15. Die Performance 17 des Computervisionsmodells 16 wird für entsprechende Paare von Bildern und Ground-Truth bewertet, was eine maximale mittlere Performance 34 und eine minimale mittlere Performance 35 für jedes entsprechende Paar von Vorhersage und Ground-Truth ergibt.
-
Optional werden mindestens eine entweder der maximalen mittleren Performance 34 und einer minimalen mittleren Performance 35 jedes entsprechenden Paares von Vorhersage und Ground-Truth, die unter Verwenden derselben visuellen Parameters 32 bereitgestellt werden, oder sowohl die maximale mittlere Performance 34 als auch eine minimale mittlere Performance 35 bewertet. Das ermöglicht das Berechnen einer Performance-Varianz (und Subverzweigung) 36. Die Sensitivitätsanalysefunktion 19 wird über eine Vielzahl visueller Parameter in dem ersten Satz visueller Parameter iteriert.
-
Es ist nicht unerlässlich, dass die Sensitivitätsanalysefunktion 19 über jeden visuellen Parameter in dem ersten Satz visueller Parameter iteriert wird. Eine Performance-Varianz pro Parameter 36 (und optional Subbereich) wird folglich für eine Vielzahl von Parametern in dem ersten Satz visueller Parameter berechnet.
-
Die Performance-Varianz pro Parameter 36 ermöglicht ein Einstufen von Performance in Bezug auf Parameter (und Subbereiche), die in einer Einstufungseinheit 20 auszuführen ist. Optional können sich mehrere Parameter auf die Performance des Computervisionsmodells 16 auswirken, und diese können in Subbereiche geclustert sein.
-
4 veranschaulicht schematisch ein Beispiel des Clusterns von Sätzen visueller Parameter.
-
In 4 stellt die X-Achse der Grafik 50 eine Sensitivität der Performance eines Computervisionsmodells 16 für einem gegebenen Parameter dar. Die Y-Achse zählt visuelle Parameter des Satzes visueller Parameter, der oben in Kasten 1 gezeigt ist, auf.
-
Die visuellen Parameter „sun_altitude“ und „sun_azimuth“ bilden ein erstes Cluster visueller Parameter 52. Die visuellen Parameter „cam_yaw“, „cam_pitch“, „cam_roll“ bilden ein zweites Cluster visueller Parameter 54. Die Cluster sind identifizierbar, weil die Sensitivitäts-Scores jedes visuellen Parameters in dem ersten und zweiten Cluster eine Identifikationsbedingung erfüllen.
-
Eine Identifikationsbedingung ist, dass ein Unterschied δb des Ausmaßes der zwei Performance-Scores von „sun_altitude“ und „sun_azimuth“ im Vergleich zu der Bedeutung des „sun_altitude“-Performance-Score bezüglich des nächstgrößeren Cluster 54 nach Entfernung δa klein ist. Das bildet daher eine Identifikationsbedingung, die es dem computerimplementierten Verfahren ermöglicht, die visuellen Parameter „sun_altitude“ und „sun_azimuth“ als ein erstes Cluster in dem zweiten Satz visueller Parameter zu gruppieren.
-
Die 5a und 5b veranschaulichen schematisch ein Beispiel des Unterteilens von Parameterbereichen.
-
5a veranschaulicht schematisch eine Vielzahl von Performance-Scores, die aus einem ersten Satz visueller Parameter vor seiner Unterteilung resultieren. Die Identifikationsbedingung kann durch Beurteilen des Verhältnisses von δc : (δc + δd) bewertet werden. Falls das Verhältnis unter einem Identifikationsschwellenwert für einen gegebenen Subsatz der visuellen Parameter liegt, ist dieser Subsatz der visuellen Parameter ein Kandidat für Aufschlüsselung.
-
Wie in 5a gezeigt, scheint es, dass der Subsatz visueller Parameter „sun_altitude“ und „sun_azimuth“ eine beträchtlich größere Auswirkung auf die Sensitivität der Performance des Computervisionsmodells 16 hat als einer der anderen visuellen Parameter.
-
Die 5b veranschaulicht schematisch ein Beispiel unterteilter Parameterbereiche. In diesem Fall wurden „sun_altitude“ und „sun_azimuth“ automatisch jeweils in vier und drei Subbereiche unterteilt. Metadaten, die die visuellen Parameter begleiten, geben an, dass der Bereich des visuellen „sun_altitude“-Parameters zwischen 0° und 90° liegt. Metadaten, die die visuellen Parameter begleiten, geben an, dass der Bereich des visuellen „sun_azimuth“-Parameters zwischen 0° und 359° liegt. Das Verfahren berechnet folglich zweckdienliche Unterteilungen der Parameterbereiche.
-
Optional kann ein Benutzer einen Vorschlag für das Unterteilen in Subbereiche über eine grafische Benutzeroberfläche eingeben. Optional kann eine vorgeschlagene Unterteilung automatisch für einen Benutzer über eine grafische Benutzeroberfläche vorgeschlagen werden, wobei die vorgeschlagene Unterteilung an den zweiten Satz visueller Parameter nach Zustimmung des Benutzers angewandt wird.
-
Bei einem Beispiel, sobald die Unterteilungen der Parameterbereiche berechnet wurden, werden der Korpus von Vorhersagen, die von dem Computervisionsmodell 16 ausgegeben werden, in Kombination mit den ursprünglichen Elementen visueller Daten (Bild) und ihrer Ground-Truth 15, die zuvor berechnet wurden, erneut gemäß den unterteilten Bereichen visueller Parameter gesampelt. Die unterteilten Bereiche visueller Parameter geben daher mehr Einzelheiten über die Sensitivität von Subbereichen des Satzes visueller Parameter zurück.
-
Optional werden die unterteilten Bereiche visueller Parameter in den zweiten Satz visueller Parameter aufgenommen.
-
Eine Ausführungsform umfasst folglich ferner das Identifizieren, basierend auf einer Identifikationsbedingung, mindestens eines Satzes anfänglicher visueller Parameter des ersten Satzes visueller Parameter unter Verwenden der Vielzahl von Performance-Scores. Das Erzeugen des zweiten Satzes visueller Parameter umfasst das Modifizieren des mindestens einen Satzes anfänglicher visueller Parameter durch Aufteilen des mindestens einen Satzes anfänglicher Parameter in mindestens einen ersten und einen zweiten modifizierten Satz visueller Parameter, oder das Kombinieren eines ersten und eines zweiten visuellen Parameters in ein Cluster.
-
Eine spezifische Ausführungsform des ersten Aspekts betrifft den Schritt des Sampelns des ersten Satzes visueller Parameter.
-
Das Sampeln des mindestens einen Satzes anfänglicher visueller Parameter erfolgt unter Verwenden eines
Sampling-Verfahrens. Optional beinhaltet das Sampling-Verfahren kombinatorisches Testen und/oder Latin Hypercube Sampling. Ein Beispiel der Umsetzung einer paarweisen Sampling-Funktion zum Umsetzen kombinatorischen Sampling über die visuellen Parameter des Satzes visueller Parameter ist in Box 3 gegeben. Box 3 - Beispiel „Python“-Code, der eine paarweise Sampling-Funktion 11 des ersten Satzes visueller Parameter umsetzt
| # The sampling algorithm corresponds to (11) |
| #wmPairs = { k:[] for k in worldmodel.keys() } |
| df = DataFrame (columns=worldmodel.keys () ) |
| |
| #Ensure that projection on each dimension still guarantees pair-wise coverage |
on the subspace |
| for dim in worldmodel.keys(): |
| | for dim_val in worldmodel[dim]: |
| | | wm_subspace = worldmodel.copy() |
| | | wm_subspace[dim] = [dim_val] |
| | | for row in AllPairs (wm subspace.values () ): |
| | | | df.loc[len(df)] = row |
| df.drop _duplicates() |
| #The output is df and corresponds to (12) desired _combis.csv |
-
5c veranschaulicht schematisch ein Beispiel des Kombinierens zweier Parameterbereiche visueller Parameter. In dem hypothetischen Fall, dass ,sun_altitude > 10° und sun_altitude <= 45° und Niederschlag = 2" für Computervision (zum Beispiel aufgrund von Blendlicht) eine Herausforderung ist, kann es sinnvoll sein, diese Kombination zu einem neuen visuellen Parameter zu befördern und daher der Sprachentität „sun_altitude > 10° und sun_altitude < = 45° und Niederschlag = 2“.
-
Vorteilhafterweise ermöglicht eine solche Sampling-Technik ein gutes Decken des gesamten Raums visueller Parameter mit einer effizienten Anzahl von Rechnungen. Insbesondere ist kein energisches Sampeln des Raums visueller Parameter erforderlich. Die Technik der vorliegenden Patentschrift ermöglicht folglich zunächst das Sampeln eines großen Raums visueller Parameter zum Beispiel unter Verwenden kombinatorischen Testens, um das Ausführen einer Sensitivitätsanalyse zu ermöglichen.
-
Das Ergebnis der Sensitivitätsanalyse ist eine erste Reduktion der Suchraumkomplexheit durch Bereitstellen eines zweiten Satzes visueller Parameter, der visuelle Parameter aufweist, die für die Performance des Computervisionsmodells am relevantesten sind. Dann kann bei einem optionalen Überprüfungsschritt 47 der zweite Satz visueller Parameter wieder gemäß einer Technik, wie kombinatorisches Testen, gesampelt werden, um eine weitere Reduktion des Suchraums und eine Verbesserung der Effizienz beim Überprüfen des zweiten Satzes visueller Parameter zu ermöglichen.
-
Bei einer Ausführungsform wird Anzeigen über eine grafische Benutzeroberfläche auf einer Ausgabeschnittstelle, einer grafischen Darstellung des zweiten Satzes visueller Parameter für einen Benutzer angezeigt, optional in Kombination mit einer grafischen Darstellung des ersten Satzes visueller Parameter, und optional in Kombination mit einer grafischen Darstellung des Ergebnisses der Sensitivitätsanalyse.
Bei einer Ausführungsform wird Erzeugen eines dritten Satzes visueller Parameter als eine Folge eines interaktiven Benutzernachtrags zu der grafischen Darstellung des zweiten Satzes visueller Parameter über die grafische Benutzeroberfläche bereitgestellt.
-
Ein dritter Aspekt stellt ein Gerät 300 zum Erzeugen einer Datenstruktur bereit, die eine Vielzahl von Sprachentitäten umfasst, die ein semantisches Mapping visueller Parameter zu einem Raum visueller Parameter definiert, das eine Eingabeschnittstelle 310, einen Prozessor 320, einen Speicher 330, und eine Ausgabeschnittstelle 340 umfasst.
-
Die Eingangsschnittstelle 310 ist dazu konfiguriert, ein Computervisionsmodell zu erhalten, das dazu konfiguriert ist, eine Computervisionsfunktion zum Charakterisieren von Elementen beobachteter Szenen auszuführen und einen ersten Satz visueller Parameter, der eine Vielzahl anfänglicher visueller Parameter umfasst, zu erhalten. Ein Element visueller Daten, das basierend auf dem Ausmaß des mindestens einen anfänglichen visuellen Parameters bereitgestellt wird, ist fähig, eine Klassifizierungs- oder Regressions-Performance des Computervisionsmodells zu beeinflussen.
-
Der Prozessor 320 ist dazu konfiguriert, einen Satz visueller Daten bereitzustellen, der einen Subsatz von Elementen visueller Daten umfasst, der mit dem ersten Satz visueller Parameter übereinstimmt, und einen entsprechenden Subsatz von Elementen von Ground-Truth-Daten, und den Subsatz von Elementen visueller Daten an das Computervisionsmodell anzuwenden, um eine Vielzahl von Performance-Scores zu erhalten, die die Performance des Computervisionsmodells, wenn es an den Subsatz von Elementen visueller Daten des Satzes visueller Daten angewandt wird, unter Verwenden der entsprechenden Ground-Truth-Daten charakterisieren und eine Sensitivitätsanalyse der Vielzahl von Performance-Scores über einen Bereich des ersten Satzes visueller Parameter auszuführen, und einen zweiten Satz visueller Parameter zu erzeugen, der mindestens einen aktualisierten visuellen Parameter umfasst, wobei der zweite Satz visueller Parameter mindestens einen anfänglichen visuellen Parameter umfasst, der basierend auf dem Ergebnis der Sensibilitätsanalyse modifiziert wird, um den mindestens einen aktualisierten visuellen Parameter bereitzustellen, und eine Datenstruktur zu erzeugen, die mindestens eine Sprachentität basierend auf den visuellen Parametern des zweiten Satzes visueller Parameter umfasst, so dass ein semantisches Mapping zu visuellen Parametern des zweiten Satzes visueller Parameter bereitgestellt wird.
-
6 veranschaulicht schematisch ein Gerät 300 gemäß dem dritten Aspekt. Bei einem Beispiel ist das Datenverarbeitungsgerät 300 ein Personal Computer, Server, Cloudbasierter Server oder eingebetteter Computer. Es ist nicht unerlässlich, dass die Verarbeitung auf einem physischen Prozessor erfolgt. Die Verarbeitungsaufgabe kann zum Beispiel auf eine Vielzahl von Prozessorkernen auf demselben Prozessor oder über eine Vielzahl unterschiedlicher Prozessoren oder virtueller Maschinen aufgeteilt werden. Der Prozessor kann ein Hadoop(TM)-Cluster sein oder auf einem kommerziellen Cloud-Verarbeitungsdienst bereitgestellt werden. Ein Teil der Verarbeitung kann auf einer nicht-herkömmlichen Verarbeitungshardware ausgeführt werden, wie auf einem feldprogrammierbaren Gate-Array (FPGA), einer anwendungsspezifischen integrierten Schaltung (ASIC), einer Vielzahl von Grafikprozessoren, anwendungsspezifischen Prozessoren für Maschinenlernen und dergleichen.
-
Der Speicher 330 des Geräts 300 speichert ein Computerprogramm 350 gemäß dem vierten Aspekt, das, wenn es von dem Prozessor 320 ausgeführt wird, den Prozessor 320 veranlasst, die Funktionalitäten, die von den computerimplementierten Verfahren gemäß dem ersten und dem zweiten Aspekt beschrieben werden, auszuführen. Gemäß einem Beispiel ist die Eingabeschnittstelle 310 und/oder die Ausgabeschnittstelle 340 eine einer USB-Schnittstelle, einer Ethernet-Schnittstelle, einer WLAN-Schnittstelle oder eine andere geeignete Hardware, die fähig ist, Eingabe und Ausgabe von Daten-Samples von dem Gerät 300 zu ermöglichen. Bei einem Beispiel umfasst das Gerät 300 ferner ein flüchtiges und/oder nichtflüchtiges Speichersystem 330, das dazu konfiguriert ist, eingegebene Beobachtungen als Eingabedaten von der Eingabeschnittstelle 310 zu empfangen.
-
Bei einem Beispiel ist das Gerät 300 ein eingebetteter Automobil-Computer, der in einem Fahrzeug enthalten ist, und in diesem Fall kann der eingebettete Automobil-Computer mit Sensoren und Aktuatoren, die in dem Fahrzeug anwesend sind, verbunden werden. Die Eingabeschnittstelle des Geräts kann zum Beispiel eine Schnittstelle mit einer oder mehreren einer Motorsteuereinheit-, die Geschwindigkeits-, Kraftstoffverbrauchsdaten, Batteriedaten, Ortsdaten und dergleichen bereitstellt, bilden. Die Ausgabeschnittstelle 340 des Geräts 300 kann zum Beispiel eine Schnittstelle mit einem oder mehreren einer Vielzahl von Bremsaktuatoren, Drosselaktuatoren, Kraftstoffgemisch- oder Kraftstoff-Luft-Gemisch-Aktuatoren, einer Turbolader-Steuervorrichtung, einem Batterieverwaltungssystem, dem Fahrzeugbeleuchtungssystem oder Entertainment-System und dergleichen bilden.
-
Ein vierter Aspekt stellt ein Computerprogramm 350 bereit, das maschinenlesbare Anweisungen umfasst, die, wenn sie von einem Prozessor ausgeführt werden, fähig sind, entweder (i) das computerimplementierte Verfahren 100 des ersten Aspekts oder seiner Ausführungsformen, und/oder (ii) das computerimplementierte Verfahren 200 des zweiten Aspekts auszuführen.
-
Ein fünfter Aspekt stellt ein computerlesbares Medium 370 bereit, das mindestens eines der Computerprogramme gemäß dem vierten Aspekt umfasst, und/oder die Datenstruktur, die die mindestens eine Sprachentität umfasst, und/oder das semantische Mapping, das gemäß dem Verfahren 100 des ersten Aspekts oder seiner Ausführungsformen erzeugt wird, umfasst.
-
das semantische Mapping kann auf diverse Arten gespeichert werden. Als ein Beispiel kann das semantische Mapping als eine numerische Nachschlagetabelle oder in einer (optional relationalen) Datenbank gespeichert werden. das semantische Mapping, die Bilder und/oder Videos enthält, ist gewöhnlich groß und muss in einem computerimplementierten System gespeichert werden. Es ist daher auch denkbar, das semantische Mapping mittels eines anderen neuronalen Netzwerks zu codieren, um eine komprimierte Darstellung der semantischen Abbildung zu ergeben.
-
Die Beispiele, die in den Zeichnungen bereitgestellt und in der vorhergehenden schriftlichen Beschreibung beschrieben sind, sind dazu bestimmt, ein Verstehen der Konzepte dieser Patentschrift zu vermitteln. Damit wird keine Einschränkung des Geltungsbereichs der beigefügten Ansprüche bezweckt. Die vorliegende Patentschrift beschreibt Abänderungen und Modifikationen an den veranschaulichten Beispielen. Es wurden nur die bevorzugten Beispiele präsentiert, und alle Änderungen, Modifikationen und weiteren Anwendungen dieser innerhalb des Geltungsbereichs der Patentschrift sollen geschützt werden.