-
Die vorliegende Erfindung betrifft Fahrzeugsysteme und insbesondere Systeme und Verfahren zum Entwickeln, Trainieren und Prüfen von Algorithmen zum Detektieren von Anomalien in einer Fahrumgebung.
-
Um Funktionalitäten wie Fahrerassistenz, Fahrzeugdynamiksteuerung und/oder autonomes Fahren bereitzustellen, zu ermöglichen oder zu unterstützen, sind erprobte Algorithmen zum Interpretieren von Sensordaten unerlässlich. Dementsprechend wird ein System und Verfahren zum Entwickeln, Trainieren und Prüfen solcher Algorithmen benötigt.
-
Damit die Vorteile der Erfindung hinlänglich verstanden werden, soll eine detailliertere Beschreibung der oben kurz beschriebenen Erfindung unter Bezugnahme auf spezifische, in den angehängten Zeichnungen veranschaulichte Ausführungsformen gegeben werden. Unter der Voraussetzung, dass diese Zeichnungen nur typische Ausführungsformen der Erfindung darstellen und daher nicht als ihren Schutzumfang einschränkend angesehen werden, wird die Erfindung mit zusätzlicher Spezifizität und Ausführlichkeit beschrieben und erläutert, und zwar unter Verwendung der beiliegenden Zeichnungen, in denen:
-
1 eine schematische Darstellung ist, die eine Ausführungsform einer Simulation veranschaulicht, die durch ein erfindungsgemäßes System durchgeführt werden kann;
-
2 eine schematische Darstelltung ist, die eine alternative Ausführungsform einer Simulation veranschaulicht, die durch ein erfindungsgemäßes System durchgeführt werden kann;
-
3 ein schematisches Blockdiagramm ist, das eine Ausführungsform eines erfindungsgemäßen Systems veranschaulicht;
-
4 eine schematische Darstellung ist, die eine Ausführungsform einer erfindungsgemäßen virtuellen Fahrumgebung einschließlich Anomalien veranschaulicht;
-
5 eine schematische Darstellung ist, die ein virtuelles Fahrzeug zu einem ersten Zeitpunkt veranschaulicht, worin ein oder mehrere virtuelle Sensoren ein vor dem Fahrzeug befindliches Schlagloch „sehen“;
-
6 eine schematische Darstellung ist, die das virtuelle Fahrzeug von 5 zu einem zweiten, darauffolgenden Zeitpunkt veranschaulicht, worin das Fahrzeug mit dem Schlagloch in Berührung kommt (z.B. darüberfährt);
-
7 eine schematische Darstellung ist, die eine Ausführungsform von erfindungsgemäßen Sensordaten veranschaulicht, die mit einer oder mehreren Anmerkungen markiert sind;
-
8 ein schematisches Blockdiagramm ist, das eine Ausführungsform einer erfindungsgemäßen Anmerkung veranschaulicht.
-
9 ein schematisches Blockdiagramm einer Ausführungsform eines erfindungsgemäßen Verfahrens zum Erzeugen von Trainingsdaten ist;
-
10 ein schematisches Blockdiagramm einer Ausführungsform eines erfindungsgemäßen Verfahrens zum Verwenden von Trainingsdaten ist; und
-
11 ein schematisches Blockdiagramm einer Ausführungsform eines erfindungsgemäßen Verfahrens zum Erzeugen von Trainingsdaten und Verwenden dieser Daten in Echtzeit ist.
-
Es versteht sich, dass die Komponenten der vorliegenden Erfindung, wie sie im Allgemeinen in den Figuren hierin beschrieben und veranschaulicht sind, in einer großen Vielzahl von verschiedenen Konfigurationen angeordnet und konstruiert sein können. Daher soll die folgende, ausführlichere Beschreibung der Ausführungsformen der Erfindung, wie sie in den Figuren dargestellt sind, den beanspruchten Schutzumfang der Erfindung nicht einschränken, sondern sie ist lediglich repräsentativ für bestimmte Beispiele von hierin in Frage kommenden erfindungsgemäßen Ausführungsformen. Die hierin beschriebenen Ausführungsformen lassen sich mit Bezug auf die Zeichnungen am besten verstehen, worin gleiche Teile durchgehend mit gleichen Bezugszeichen bezeichnet sind.
-
Bezug nehmend auf 1 stellt die reale Welt eine Reihe von Zuständen und Hindernissen dar, die sich ständig verändern. Diese Realität schafft erhebliche Herausforderungen für Fahrzeug-basierte Systeme, die eine autonome Steuerung bestimmter Fahrzeugdynamiken und/oder autonomes Fahren bereitstellen. Um diese Herausforderungen zu bewältigen, kann ein Fahrzeug mit Sensoren und Computersystemen versehen sein, die eine umgebende Umwelt kollektiv abfühlen, interpretieren und angemessen darauf reagieren. Schlüsselkomponenten solcher Computersysteme können ein oder mehrere Algorithmen sein, die verwendet werden, um Datenausgaben durch verschiedene an Bord solcher Fahrzeuge vorhandene Sensoren zu interpretieren.
-
Beispielsweise können bestimmte Algorithmen einen oder mehrere Ströme von Sensordaten analysieren, die einen Bereich vor einem Fahrzeug charakterisieren, und erkennen, wenn eine Anomalie in diesem Bereich vorhanden ist. Andere Algorithmen können dafür verantwortlich sein, zu entscheiden, was bei Detektieren einer Anomalie zu tun ist. Um eine geeignete Antwort auf solche Anomalien bereitzustellen, müssen alle solchen Algorithmen gut entwickelt und gründlich getestet werden.
-
In ausgewählten Ausführungsformen kann ein anfänglicher und wesentlicher Anteil der Entwicklung und Testung verschiedener Algorithmen in einer virtuellen Umgebung durchgeführt werden. Beispielsweise kann zu einem bestimmten Zeitpunkt innerhalb einer computerbasierten Simulation 10 ein an Bord vorhandener virtueller Sensor eine bestimmte Position innerhalb einer virtuellen Fahrumgebung einnehmen. Dementsprechend kann zu diesem Zeitpunkt die „Sicht“ des virtuellen Sensors auf die virtuelle Fahrumgebung bestimmt werden 12. Diese Sicht kann durch den virtuellen Sensor verarbeitet werden, um Sensordaten (d.h. eine modellierte Sensorausgabe) basierend auf der Sicht zu erzeugen 14.
-
Danach können ein oder mehrere Algorithmen auf die der Sicht entsprechenden Sensordaten angewendet werden. Die Algorithmen können programmiert sein, die Sensordaten auf Anomalien innerhalb der virtuellen Fahrumgebung zu untersuchen. Wenn beispielsweise eine Sicht des virtuellen Sensors auf einen Teil der virtuellen Fahrumgebung direkt vor dem virtuellen Fahrzeug gerichtet ist, können der eine oder die mehreren Algorithmen die Sensordaten analysieren, um jegliche Anomalien in diesem Bereich zu erfassen 16, welche den Betrieb oder die Bewegung des virtuellen Fahrzeugs beeinflussen können.
-
Mit dem Fortschreiten oder Verlauf einer Simulation 10 kann das virtuelle Fahrzeug ein Inkrement in die virtuelle Fahrumgebung fortschreiten. Diese Bewegung kann berechnet werden 18. Dementsprechend kann der an Bord eines virtuellen Fahrzeugs vorhandene virtuelle Sensor eine andere Position innerhalb einer virtuellen Fahrumgebung einnehmen. Die Sicht des virtuellen Sensors auf die virtuelle Fahrumgebung von dieser neuen Position aus kann bestimmt werden 12 und die Simulation 10 kann fortfahren. Auf diese Weise kann die Fähigkeit eines oder mehrerer Algorithmen, verschiedene Anomalien exakt und wiederholt zu identifizieren, charakterisieren und/oder nachzuverfolgen, getestet und verbessert werden.
-
Bezug nehmend auf 2, können in verschiedenen Simulationen 10 verschiedene Algorithmen getestet und verbessert werden. Beispielsweise können, wie oben erläutert, bestimmte Simulationen 10 ein Testumfeld für eine oder mehrere Algorithmen bereitstellen, die das Identifizieren, Charakterisieren und/oder Nachverfolgen verschiedener Anomalien betreffen. Weitere Simulationen 10 können ein Testumfeld für einen oder mehrere Algorithmen bereitstellen, die das Steuern der Bewegung oder des Betriebs eines Fahrzeugs betreffen.
-
Beispielsweise können, nachdem die Sicht eines virtuellen Sensors auf eine virtuelle Fahrumgebung bestimmt wurde 12 und verwendet wurde, um Sensordaten zu erzeugen 14, ein oder mehrere erste Algorithmen eine oder mehrere Anomalien innerhalb der virtuellen Fahrumgebung suchen und erfassen 16. Dementsprechend können ein oder mehrere zweite Algorithmen programmiert sein, die Charakterisierungsausgabe durch die ersten Algorithmen zu empfangen und zu entscheiden, wie am besten darauf zu reagieren oder zu antworten ist.
-
Beispielsweise können zweite Algorithmen abhängig von verschiedenen Faktoren (z.B. Positionen von umgebenden Fahrzeugen oder Objekten, Fahrzeuggeschwindigkeit, Positionslage des Fahrzeugs, Anomalietyp, Anomaliegröße oder dergleichen) bestimmen, ob es am besten ist, nichts zu tun, zu bremsen, Aufhängungscharakteristika zu verändern, ein Rad zu heben, umzudrehen, Fahrspuren zu wechseln, innerhalb einer Fahrspur nach links oder rechts auszuweichen oder dergleichen, um auf die durch die erfasste Anomalie dargestellten Herausforderungen angemessen zu reagieren. Daher können ein oder mehrere zweite Algorithmen die logische Basis zum Steuern 20 des Betriebs oder der Bewegung eines virtuellen Fahrzeugs als Antwort auf eine oder mehrere erfasste virtuelle Anomalien bereitstellen.
-
Mit dem Fortschreiten oder Verlauf einer Simulation 10 kann das virtuelle Fahrzeug ein Inkrement in die virtuelle Fahrumgebung fortschreiten und die neue Position des virtuellen Fahrzeugs kann berechnet werden 18. Dementsprechend kann der an Bord eines virtuellen Fahrzeugs vorhandene virtuelle Sensor eine andere Position innerhalb einer virtuellen Fahrumgebung einnehmen. Die Sicht des virtuellen Sensors auf die virtuelle Fahrumgebung von dieser neuen Position aus kann bestimmt werden 12 und die Simulation 10 kann fortfahren. Auf diese Weise kann die Fähigkeit eines oder mehrerer Algorithmen, geeignete Antworten auf verschiedene Anomalien zu identifizieren, getestet und verbessert werden.
-
Bezug nehmend auf 3, kann in ausgewählten Ausführungsformen ein erfindungsgemäßes System 22 ein Testumfeld zum Entwickeln, Testen und/oder Trainieren verschiedener Algorithmen bereitstellen. Beispielsweise kann in bestimmten Ausführungsformen ein System 22 eine oder mehrere Simulationen 10 ausführen, um Sensordaten 24 zu erzeugen. Ein System 22 kann auch diese Sensordaten 24 verwenden (z.B. eine oder mehrere Simulationen 10 durchführen), um verschiedene Algorithmen (z.B. Anomaliedetektions-Algorithmen, Anomalieantwort-Algorithmen oder dergleichen) zu entwickeln, zu testen und/oder auszubilden. Dabei kann ein System 22 die Sensordaten 24 in Echtzeit (d.h. bei ihrer Erzeugung) oder einige Zeit danach bearbeiten oder analysieren. Ein System 22 kann diese Funktionen auf jegliche geeignete Weise ausführen. Beispielsweise kann ein System 22 als Hardware, Software oder eine Kombination davon ausgeführt sein.
-
In ausgewählten Ausführungsformen kann ein System 22 Computerhardware und Computersoftware umfassen. Die Computerhardware eines Systems 22 kann einen oder mehrere Prozessoren 26, einen Speicher 28, eine Benutzerschnittstelle 30, weitere Hardware 32 oder dergleichen oder eine Kombination oder Unterkombination davon umfassen. Der Speicher 28 kann mit dem einen oder den mehreren Prozessoren 26 operativ verbunden sein und die Computersoftware speichern. Dies kann es dem einen oder den mehreren Prozessoren 26 ermöglichen, die Computersoftware auszuführen.
-
Eine Benutzerschnittstelle 30 eines Systems 22 kann es einem Ingenieur, Techniker oder dergleichen ermöglichen, mit verschiedenen Aspekten eines Systems 22 zu interagieren, diese auszuführen, anzupassen oder zu steuern. In ausgewählten Ausführungsformen kann eine Benutzerschnittstelle 30 eines Systems 22 ein oder mehrere Kleintastaturen, Tastaturen, Berührungsbildschirme, Zeigegeräte oder dergleichen oder eine Kombination oder Unterkombination davon umfassen.
-
In ausgewählten Ausführungsformen kann der Speicher 28 eines Systems 22 ein oder mehrere Fahrzeugbewegungsmodelle 34, ein oder mehrere Sensormodelle 36, eine oder mehrere virtuelle Fahrumgebungen 38 enthaltend verschiedene virtuelle Anomalien 40, ein Simulationsmodul 42, Sensordaten 24, ein Erfassungsmodul 44, ein Steuermodul 46, andere Daten oder Software 48 oder dergleichen oder Kombinationen oder Unterkombinationen davon speichern.
-
Ein Fahrzeugbewegungsmodell 34 kann ein Softwaremodell sein, das für bestimmte Situationen die Bewegung des Körpers eines entsprechenden Fahrzeugs definieren kann. In bestimmten Ausführungsformen kann ein Fahrzeugbewegungsmodell 34 mit einer oder mehreren Fahrereingaben (z.B. einem oder mehreren Werten, die Faktoren wie Geschwindigkeit, Antriebsdrehmoment, Bremsbetätigung, Lenkeingaben oder dergleichen oder Kombinationen oder Unterkombinationen davon) und Informationen (z.B. Daten aus einer virtuellen Fahrumgebung 38), die eine Straßenoberfläche charakterisieren, bereitgestellt sein. Mit diesen Eingaben und Informationen kann ein Fahrzeugbewegungsmodell 34 Bewegungszustände des Körpers eines entsprechenden Fahrzeugs voraussagen.
-
Die Parameter eines Fahrzeugbewegungsmodells 34 können auf eine beliebige geeignete Weise bestimmt oder spezifiziert werden. In ausgewählten Ausführungsformen können bestimmte Parameter eines Fahrzeugbewegungsmodells 34 von Vorkenntnissen der mechanischen Eigenschaften (z.B. Geometrie, Trägheit, Steifigkeit, Dämpfungskoeffizienten etc.) eines entsprechenden Fahrzeugs der realen Welt abgeleitet sein.
-
Es versteht sich, dass die Parameter für verschiedene Fahrzeuge unterschiedlich sein können. Dementsprechend kann ein Fahrzeugbewegungsmodell 34 in ausgewählten Ausführungsformen fahrzeugspezifisch sein. Das heißt, ein Fahrzeugbewegungsmodell 34 kann geeignet sein, die Körperdynamik eines ersten Fahrzeugs (z.B. eines bestimmten Sportwagens) zu modellieren, während ein anderes Fahrzeugbewegungsmodell 34 geeignet sein kann, die Körperdynamik eines zweiten Fahrzeugs (z.B. eines bestimmten Kleintransporters) zu modellieren.
-
Ein Sensormodell 36 kann ein Softwaremodell sein, das für bestimmte Situationen oder Sichten die Ausgabe eines entsprechenden Sensors der realen Welt definieren oder vorhersagen kann. Dementsprechend kann ein Sensormodell 36 das rechnerische Herz eines virtuellen Sensors bilden. In bestimmten Ausführungsformen kann ein Sensormodell 36 mit Informationen (z.B. Daten aus einer virtuellen Fahrumgebung 38) bereitgestellt sein, die verschiedene Sichten auf eine Straßenoberfläche charakterisieren. Mit diesen Informationen kann ein Sensormodell 36 vorhersagen, was ein tatsächlicher Sensor, der in der realen Welt auf diese Ansichten trifft, ausgeben würde. In bestimmten Ausführungsformen kann ein Sensormodell 36 Signalverarbeitungscode wie z.B. SIMULINK-Modelle oder unabhängigen C++-Code umfassen, um Daten aus einer virtuellen Fahrumgebung 38 wie erforderlich abzurufen und zu verarbeiten, sodass sie die Begrenzungen des zu modellierenden Sensors wiedergeben.
-
In ausgewählten Ausführungsformen können Sensoren der realen Welt von Interesse Wandler umfassen, die eine Charakteristik einer Umgebung abfühlen oder detektieren und eine entsprechende Ausgabe (z.B. ein elektrisches oder optisches Signal), die diese Charakteristik definiert, bereitstellen. Beispielsweise können ein oder mehrere Sensoren der realen Welt von Interesse Beschleunigungsmesser sein, die eine Elektrosignalcharakteristik der richtigen Beschleunigung, die dadurch erhalten wird, ausgeben. Solche Beschleunigungsmesser können verwendet werden, um die Ausrichtung, Beschleunigung, Geschwindigkeit und/oder von einem Fahrzeug zurückgelegte Entfernung zu bestimmen. Weitere Sensoren der realen Welt von Interesse können Kameras, Laserscanner, Lidarscanner, Radarvorrichtungen, Gyroskope, inertiale Messeinheiten, Umdrehungszähler oder -sensoren, Dehnungsmessstreifen, Temperatursensoren oder dergleichen oder weitere Sensoren, die in einer virtuellen Umgebung modelliert sein können, umfassen.
-
Ein Sensormodell 36 kann die durch einen beliebigen Sensor der realen Welt von Interesse erzeugte Ausgabe modellieren. Es versteht sich, dass die Ausgaben für unterschiedliche Sensoren der realen Welt verschieden sein können. Dementsprechend kann ein Sensormodell 36 in ausgewählten Ausführungsformen sensorspezifisch sein. Das heißt, ein Sensormodell 36 kann geeignet sein, die Ausgabe eines ersten Sensor (z.B. einer bestimmten Kamera) zu modellieren, während ein anderes Sensormodell 36 geeignet sein kann, die Ausgabe eines zweiten Sensors (z.B. eines bestimmten Laserscanners) zu modellieren.
-
In ausgewählten Ausführungsformen können ein oder mehrere Sensormodelle 36 Bildsensoren modellieren. Ein Bildsensor kann ein Sensor sein, der Informationen, die ein Bild ausmachen, detektiert und übermittelt. Bildsensoren können Kameras, Laserscanner, Lidarscanner, Radarvorrichtungen und dergleichen oder andere Bildsensoren, die in einer virtuellen Umgebung modelliert sein können, umfassen.
-
Ein Sensormodell 36 kann eine Ausgabe eines beliebigen geeigneten Formats erzeugen. Beispielsweise kann ein Sensormodell 36 in ausgewählten Ausführungsformen ein Signal (z.B. ein analoges Signal) ausgeben, das ein entsprechender Sensor der realen Welt erzeugen würde. Alternativ dazu kann ein Sensormodell 36 ein verarbeitetes Signal ausgeben. Beispielsweise kann ein Sensormodell 36 ein verarbeitetes Signal wie das durch ein Datenerfassungssystem ausgegebene ausgeben. Dementsprechend kann in ausgewählten Ausführungsformen die Ausgabe eines Sensormodells 36 eine konditionierte, digitale Version des Signals sein, das ein entsprechender Sensor der realen Welt erzeugen würde.
-
Ein Simulationsmodul 42 kann programmiert sein, eine virtuelle Fahrumgebung 38, ein Fahrzeugbewegungsmodell 34 und ein oder mehrere Sensormodelle 36 zu verwenden, um eine Ausgabe (z.B. Sensordaten 24) zu erzeugen, die das modellieren, was durch einen oder mehrere Sensoren der realen Welt ausgegeben würde, wenn der eine oder die mehreren Sensoren der realen Welt an einem Fahrzeug (z.B. dem durch das Fahrzeugbewegungsmodell 34 modellierten Fahrzeug) angebracht worden wären, das in einer tatsächlichen Fahrumgebung wie (z.B. im Wesentlichen oder genau entsprechend) der virtuellen Fahrumgebung 38 gefahren wird.
-
Ein Erfassungsmodul 44 kann programmiert sein, einen oder mehrere Anomaliedetektions-Algorithmen anzuwenden, zu testen und/oder zu verbessern. Beispielsweise kann in ausgewählten Ausführungsformen ein Erfassungsmodul 44 einen oder mehrere Anomaliedetektions-Algorithmen auf bestimmte Sensordaten 24 anwenden, um eine oder mehrere erfasste Dimensionen von einer oder mehreren virtuellen Anomalien 40 zu erzeugen. Erfasste Dimensionen können die Länge, Breite, Dicke, Tiefe, Höhe und/oder Ausrichtung einer Anomalie 40 umfassen. Erfasste Dimensionen können auch die Entfernung von einem Fahrzeug zu einer Anomalie 40, die Entfernung von einer Mittellinie (z.B. einer Linie, wo eine Mitte eines Fahrzeugs gegebene aktuelle Lenkeingaben weitergibt) zu einer Anomalie 40 oder dergleichen oder Kombinationen davon umfassen.
-
Danach kann ein Erfassungsmodul 44 ein Leistungsverhalten des einen oder der mehreren Anomaliedetektions-Algorithmen quantifizieren, indem es die eine oder mehreren erfassten Dimensionen mit einer oder mehreren tatsächlichen Dimensionen der einen oder mehreren virtuellen Anomalien 40, wie in der virtuellen Fahrumgebung 38 definiert, vergleicht. Die tatsächlichen Dimensionen der einen oder mehreren virtuellen Anomalien 40 können die „Ground Truth“ sein. Das heißt, die den erfassten Dimensionen entsprechenden exakten Dimensionen können aus der virtuellen Fahrumgebung 38 bekannt sein. Dementsprechend kann in ausgewählten Ausführungsformen ein Erfassungsmodul 44 Sensordaten 24, Ground-Truth-Daten und überwachte Lernverfahren verwenden, um das Leistungsverhalten des einen oder der mehreren Anomaliedetektions-Algorithmen zu verbessern.
-
In ausgewählten Ausführungsformen können ein oder mehrere Anomalien 40, wie sie durch eine oder mehrere Anomaliedetektions-Algorithmen erfasst sind, unter Verwendung von Kennzeichnungen und Markierungen angezeigt werden, um auf einem Simulationsfenster den Blickpunkt des virtuellen Sensors einzublenden. Alternativ oder zusätzlich dazu kann eine Ausgabe eines oder mehrerer Anomaliedetektions-Algorithmen zeitgestempelt und in eine Datei eingeschrieben sein, um später gelesen zu werden.
-
In bestimmten Ausführungsformen können ein oder mehrere Anomaliedetektions-Algorithmen ein oder mehrere neuronale Netzwerke sein oder umfassen, die ausgebildet sind, um Merkmale in Sensordaten 24 (z.B. Kameradaten), die Indikatoren für ein Schlagloch, eine Bodenschwelle oder eine andere Anomalie 40 sind, zu erkennen. Ein Anomaliedetektions-Algorithmus kann einer Verbesserung bedürfen, wenn ein oder mehrere Tests anzeigen, dass der Anomaliedetektions-Algorithmus bestimmte falsche positive oder falsche negative Werte erhält. Die Verbesserung eines solchen Anomaliedetektions-Algorithmus kann durch zusätzliches Training des neuronalen Netzwerks erfolgen. Das zusätzliche Training kann Trainingsdaten umfassen oder nutzen, welche die Fälle abdecken, in denen der Anomaliedetektions-Algorithmus Schwierigkeiten hatte. In anderen Ausführungsformen, bei denen andere Typen von Anomaliedetektions-Algorithmen verwendet werden, können diese Algorithmen verbessert werden, indem bestimmte Parameter gemäß den Testergebnissen abgestimmt werden.
-
Ein Steuermodul 46 kann programmiert sein, einen oder mehrere Anomalieantwort-Algorithmen anzuwenden, zu testen und/oder zu verbessern. Beispielsweise kann ein Steuermodul 46 einen oder mehrere Anomalieantwort-Algorithmen auf bestimmte Dimensionen anwenden, die durch einen oder mehrere Anomaliedetektions-Algorithmen ausgegeben werden. Die einen oder mehreren Anomalieantwort-Algorithmen können bestimmen, wie auf eine oder mehrere Anomalien 40 reagiert wird, und zwar basierend auf deren Dimensionen.
-
Wenn beispielsweise die durch einen oder mehrere Anomaliedetektions-Algorithmen ausgegebenen Dimensionen anzeigen, dass eine bestimmte Anomalie 40 ein Kanaldeckel ist, können ein oder mehrere Anomalieantwort-Algorithmen bestimmen, dass keine Antwort erforderlich ist. Wenn umgekehrt die durch einen oder mehrere Anomaliedetektions-Algorithmen ausgegebenen Dimensionen anzeigen, dass eine bestimmte Anomalie 40 ein Schlagloch ist, können ein oder mehrere Anomalieantwort-Algorithmen bestimmen, dass bestimmte Lenkeingaben benötigt werden, um zu vermeiden, dass jegliches Rad durch das Schlagloch gefahren wird.
-
In ausgewählten Ausführungsformen können ein oder mehrere Antwortalgorithmen Wegplanungs- und/oder Wegfolge-Algorithmen, die rund um Schlaglöcher navigieren, Algorithmen, welche die Fahrzeuggeschwindigkeit und/oder -aufhängung je nach Rauheit des Geländes anpassen, Algorithmen, die eine oder mehrere Warnungen an den Fahrer ausgeben (z.B. wenn das Fahrzeug für ein nahendes Schlagloch zu schnell fährt) oder dergleichen oder Kombinationen oder Unterkombinationen davon sein oder umfassen.
-
Bezug nehmend auf 4 kann eine virtuelle Fahrumgebung 38 ein dreidimensionales Netz umfassen, das in einem virtuellen Raum eine Fahroberfläche 50 (z.B. Straße) und verschiedene über die Fahroberfläche 50 verteilte (z.B. willkürlich verteilte) Anomalien 40 definiert. Die Anomalien 40 in einer virtuellen Fahrumgebung 38 können Merkmale oder Objekte modellieren, die zeitweise oder unregelmäßig den Betrieb des Fahrzeugs in der realen Welt beeinflussen. In einer virtuellen Fahrumgebung 38 enthaltene Anomalien 40 können von verschiedenen Typen sein.
-
Beispielsweise können bestimmte Anomalien 40a Merkmale modellieren, die typischerweise mit Absicht in Fahroberflächen der realen Welt enthalten sind. Diese Anomalien 40a können Kanalschächte und Kanaldeckel, Bodenschwellen, Rinnen, Linien oder Text, die auf eine Fahroberfläche 50 gemalt oder anderweitig aufgebracht sind, Straßenschilder, Ampeln, Dichtungsmittel für Risse, Fugen in Pflasterungsmaterial, Änderungen von Pflasterungsmaterial und dergleichen umfassen. Weitere Anomalien 40b können Defekte in einer Fahroberfläche 50 modellieren. Diese Anomalien 40b können Schlaglöcher, Risse, Frosthübe, Spurrinnen, Wellblechoberflächen und dergleichen umfassen. Weitere Anomalien 40c können unbelebte Objekte, die auf einer Fahroberfläche 50 liegen, modellieren. Diese Anomalien 40c können tote Wildtiere, Stücke von delaminierten Reifenprofilen, Müll, Schutt, abgefallene Vegetation oder dergleichen umfassen.
-
Noch weitere Anomalien 40d können belebte Objekte modellieren. Belebte Objekte können Dinge in der realen Welt sein, die ihre Position in Bezug auf eine Fahroberfläche 50 über einen relativ kurzen Zeitraum ändern. Beispiele für belebte Objekte können Tiere, Fußgänger, Radfahrer, andere Fahrzeuge, Steppenläufer und dergleichen umfassen. In ausgewählten Ausführungsformen können Anomalien 40d, die belebte Objekte modellieren, in einer virtuellen Fahrumgebung 38 in unbelebter Form enthalten sein. Das heißt, sie können innerhalb der virtuellen Fahrumgebung 38 stationär sein. Alternativ dazu können Anomalien 40d, die belebte Objekte modellieren, in einer virtuellen Fahrumgebung 38 in belebter Form enthalten sein und sich innerhalb dieser Umgebung 38 bewegen. Dies kann die Verwendung erfindungsgemäßer Sensordaten 24 in der Entwicklung, im Training oder dergleichen von Algorithmen zum Nachverfolgen verschiedener Anomalien 40 ermöglichen.
-
Bezug nehmend auf 5 und 6 kann ein Simulationsmodul 42 durch eine Serie von Berechnungen einen oder mehrere virtuelle Sensoren 52 über eine virtuelle Fahrumgebung 38 (z.B. eine Straßenoberfläche 50 einer virtuellen Fahrumgebung 38) verfahren, die eine Vielzahl von virtuellen Anomalien 40 definiert oder umfasst, die jeweils durch den einen oder die mehreren virtuellen Sensoren 52 abfühlbar sind.
-
In ausgewählten Ausführungsformen kann dies das Manipulieren eines Blickpunkts des einen oder der mehreren virtuellen Sensoren 52 in Bezug auf die virtuelle Fahrumgebung 38 während einer solchen Verfahrbewegung umfassen. Genauer gesagt kann es das Bewegen jedes des einen oder der mehreren virtuellen Sensoren 52 in Bezug auf die virtuelle Fahrumgebung 38 während einer solchen Verfahrbewegung umfassen, wie es durch eine Modellierungsbewegung eines Fahrzeugbewegungsmodell 34 eines entsprechenden virtuellen Fahrzeugs 54, das in der virtuellen Fahrumgebung 38 fährt und den einen oder die mehreren virtuellen Sensoren 52 enthält, vorgegeben ist.
-
In ausgewählten Ausführungsformen kann ein Simulationsmodul 42, um die Bewegung des einen oder der mehreren virtuellen Sensoren 52 angemessen zu berücksichtigen, drei Koordinatensysteme in Betracht ziehen. Das erste kann ein globales, inertiales Koordinatensystem innerhalb einer virtuellen Fahrumgebung 38 sein. Das zweite kann ein ungestörtes Koordinatensystem eines virtuellen Fahrzeugs 54 sein, das durch ein Fahrzeugbewegungsmodell 34 definiert ist oder einem solchen entspricht. Dies kann das Koordinatensystem einer „ungestörten“ Version des virtuellen Fahrzeugs 54 sein, das so definiert sein kann, dass seine „xy“-Ebene parallel zu einer Grundebene (z.B. einer geschätzten, virtuellen Grundebene) ist. Das dritte kann ein gestörtes Koordinatensystem des Fahrzeugs 54 sein. Dies kann das Koordinatensystem des virtuellen Fahrzeugs 54 sein, das Roll-, Nick-, Hiev- und Gierbewegungen durchführt, die Fahrer-induziert (z.B. durch virtualisiertes Lenken, Bremsen, Beschleunigen oder dergleichen) oder Straßen-induziert (z.B. durch eine virtuelle Fahrumgebung 38 oder bestimmte virtuelle Anomalien 40 darin ausgelöst) oder auf andere virtuelle Störungen (z.B. Seitenwind oder dergleichen) zurückzuführen sein können. Ein Simulationsmodul 42 kann zwei oder mehr dieser verschiedenen Koordinatensysteme verwenden, um zu bestimmen, welche Sichten 56 oder Szenen 56 zu welchen virtuellen Sensoren 52 während eines Simulationsverfahrens gehören.
-
Das heißt, die durch ein oder mehrere Sensormodelle 36 modellierten Sensoren können in der realen Welt an Bord eines entsprechenden Fahrzeugs getragen werden. Bestimmte solche Sensoren können befestigt sein, um sich mit dem Körper eines entsprechenden Fahrzeugs mitzubewegen. Dementsprechend kann sich die durch Sensoren wie Kameras, Laserscanner, Radare oder dergleichen überblickte Sicht oder Szene abhängig von der Ausrichtung des entsprechenden Fahrzeugs in Bezug auf die umgebende Umwelt verändern. Wenn beispielsweise ein Fahrzeug über eine holprige Straße fährt, kann ein vorwärtsgerichteter Bildsensor (z.B. eine am Fahrzeug montierte Kamera, Lasersensor oder dergleichen, die/der die Straßenoberfläche vor dem Fahrzeug überwacht) denselben Straßenabschnitt aus verschiedenen Winkeln festhalten oder abfühlen, abhängig von dem aktuellen Bewegungszustand des Fahrzeugs.
-
Um solche Effekte in einem erfindungsgemäßen System 22 zu simulieren, kann ein Simulationsmodul 42 die Position und Ausrichtung eines oder mehrerer virtueller Sensoren 52 (z.B. Sensoren, die durch ein oder mehrere entsprechende Sensormodelle 36 modelliert werden) innerhalb eines Koordinatensystems, das dem virtuellen Fahrzeug 54 (z.B. dem Fahrzeug, das durch das Fahrzeugbewegungsmodell 34 modelliert wird) entspricht, in Betracht ziehen. Ein Simulationsmodul 42 kann auch in Betracht ziehen, wie ein solches fahrzeugbasiertes Koordinatensystem in Form von Roll-, Nick-, Hiev- und Gierbewegungen gestört wird, die durch ein Fahrzeugbewegungsmodell 34 basierend auf virtualisierten Fahrereingaben, von einer virtuellen Fahrumgebung 38 definierten Straßeneingaben und dergleichen vorausgesagt werden. Dementsprechend kann ein Simulationsmodul 42 für einen beliebigen simulierten Zeitpunkt von Interesse eine Position und Ausrichtung eines bestimmten virtuellen Sensors 52 in Bezug auf eine virtuelle Fahrumgebung 38 berechnen und die Sicht 56 innerhalb der virtuellen Fahrumgebung 38, die zu diesem Zeitpunkt durch den bestimmten virtuellen Sensor 52 abzufühlen ist, zu bestimmen.
-
Beispielsweise kann zu einem ersten simulierten Zeitpunkt 58 ein vorwärtsgerichteter virtueller Sensor 52 eine bestimmte Sicht 56a einer virtuellen Fahrumgebung 38 haben. In ausgewählten Ausführungsformen kann diese Sicht 56a so charakterisiert sein, dass sie einen ersten Einfallswinkel 60a in Bezug auf die virtuelle Fahrumgebung 38 und einen ersten Abstand 62a in der Normalrichtung von der virtuellen Fahrumgebung 38 aufweist. In der veranschaulichten Ausführungsform umfasst diese bestimmte Sicht 56a eine bestimmte Anomalie 40, nämlich ein Schlagloch.
-
Zu einem zweiten, darauffolgenden simulierten Zeitpunkt 64 kann ein virtuelles Fahrzeug 54 jedoch vorwärtsgenickt sein 66, und zwar aufgrund modellierter Effekte, die dem Fahren durch die zuvor gesichtete virtuelle Anomalie 40 (d.h. das Schlagloch) zugeordnet sind. Dementsprechend kann der vorwärtsgerichtete Sensor 52 zu dem zweiten Zeitpunkt 64 eine andere Sicht 56b einer virtuellen Fahrumgebung 38 haben. Aufgrund des Vorwärtsnickens 66 kann diese Sicht 56b so charakterisiert sein, dass sie einen zweiten, kleineren Einfallswinkel 60b in Bezug auf die virtuelle Fahrumgebung 38 und einen zweiten, kleineren Abstand 62b in der Normalrichtung von der virtuellen Fahrumgebung 38 aufweist.
-
Bezug nehmend auf 7 und 8 kann ein Simulationsmodul 42 für einen ersten simulierten Zeitpunkt die Sicht 56 der virtuellen Fahrumgebung 38, die zu diesem Zeitpunkt durch einen bestimmten virtuellen Sensor 52 abzufühlen ist, bestimmen. Ein Simulationsmodul 42 kann dann von einem geeigneten Sensormodell 36 eine Ausgabe erhalten, die diese Sicht 56 charakterisiert. Dieser Vorgang kann für einen zweiten simulierten Zeitpunkt, einen dritten simulierten Zeitpunkt usw. wiederholt werden. Dementsprechend kann ein Simulationsmodul 42 durch Fortschreiten von einem Zeitpunkt zum nächsten einen Datenstrom 68 erhalten, der das modelliert, was die Ausgabe des bestimmten virtuellen Sensors 52 wäre, wenn er und die entsprechende virtuelle Fahrumgebung 38 real wären.
-
Dieser Vorgang kann für alle der virtuellen Sensoren 52, die einem bestimmten virtuellen Fahrzeug 54 entsprechen, wiederholt werden. Dementsprechend können für das bestimmte virtuelle Fahrzeug 54 und die virtuelle Fahrumgebung 38, über die verfahren wird, Sensordaten 24 umfassend einen oder mehrere Datenströme 68 erzeugt werden.
-
In ausgewählten Ausführungsformen können verschiedene Datenströme 68 die Ausgabe verschiedener virtueller Sensoren 52 darstellen. Beispielsweise kann ein erster Datenstrom 68a die Ausgabe einer ersten virtuellen Kamera darstellen, die am vorderen rechten Abschnitt eines virtuellen Fahrzeugs 54 montiert ist, während ein zweiter Datenstrom 68b die Ausgabe einer zweiten virtuellen Kamera darstellen kann, die vorne links am virtuellen Fahrzeug 54 montiert ist. Zusammen können die verschiedenen Datenströme 68, welche die Sensordaten 24 für einen bestimmten Durchgang (z.B. eine bestimmte virtuelle Verfahrbewegung eines bestimmten virtuellen Fahrzeugs 54 durch eine bestimmte virtuelle Fahrumgebung 38) bilden, alle Eingaben darstellen oder berücksichtigen, die ein bestimmter Algorithmus (d.h. der Anomaliedetektions- oder Anomalieantwort-Algorithmus, der entwickelt oder getestet wird) in der realen Welt verwenden würde.
-
In bestimmten Ausführungsformen oder Situationen kann ein Simulationsmodul 42 Sensordaten 24 mit einer oder mehreren Anmerkungen 70 koppeln. Jede solche Anmerkung 70 kann „Ground Truth“ entsprechend der virtuellen Fahrumgebung 38 bereitstellen. In ausgewählten Ausführungsformen kann die in einer oder mehreren Anmerkungen 70 enthaltene Ground Truth verwendet werden, um das Leistungsverhalten eines Anomaliedetektions-Algorithmus im Klassifizieren von Anomalien 40 in einem überwachten Lernverfahren zu quantifizieren.
-
Beispielsweise können eine oder mehrere Anmerkungen 70 wahre (z.B. exakte) Positionen 72, wahre (z.B. exakte) Dimensionen 74, andere Informationen 76 oder dergleichen oder Kombinationen davon entsprechend den verschiedenen Anomalien 40 bereitstellen, auf die ein virtuelles Fahrzeug 54 in einem bestimmten Durchgang trifft. Anmerkungen 70 können mit bestimmten Abschnitten des Datenstroms 68 verbunden, verknüpft oder anderweitig assoziiert sein. Dementsprechend kann die einer bestimmten Anomalie 40 entsprechende Ground Truth mit dem Abschnitt eines oder mehrerer Datenströme 68 verbunden sein, die das Erfassen eines oder mehrerer virtueller Sensoren 52 dieser Anomalie 40 wiedergeben. In ausgewählten Ausführungsformen kann dies durch Verbinden verschiedener Anmerkungen 70a, 70b mit verschiedenen Abschnitten eines oder mehrerer Datenströme 68 erreicht werden.
-
Bezug nehmend auf 9, kann ein System 22 ein erfindungsgemäßes Verfahren 78 unterstützen, ermöglichen oder ausführen. In ausgewählten Ausführungsformen kann ein solches Verfahren 78 mit dem Erzeugen 80 einer virtuellen Fahrumgebung 38, umfassend verschiedene Anomalien 40, beginnen. Über die virtuelle Fahrumgebung 38 kann dann in einem Simulationsverfahren mit einem oder mehreren virtuellen Sensoren 52 verfahren werden 82.
-
Während der Verfahrbewegung 82 durch die virtuellen Fahrumgebung 38 mit einem oder mehreren virtuellen Sensoren 52 kann der Blickpunkt des einen oder der mehreren virtuellen Sensoren 52 auf die virtuelle Fahrumgebung 38 manipuliert werden 84, wie von einem Fahrzeugbewegungsmodell 34 vorgegeben. Dementsprechend können die verschiedenen Sichten 56, die dem einen oder den mehreren virtuellen Sensoren 52 zu verschiedenen simulierten Zeitpunkten entsprechen, erhalten werden 86 oder identifiziert werden 86. Die so erhaltenen 86 oder identifizierten 86 verschiedenen Sichten 56 können durch oder über entsprechende Sensormodelle 36 analysiert werden, um Sensordaten 24 zu erhalten 88, die das wiedergeben, was ein entsprechender Sensor der realen Welt, der auf die verschiedenen Ansichten 56 „blickt“, in der realen Welt erzeugen oder ausgeben würde. In ausgewählten Ausführungsformen können diese Daten 24 mit Anmerkungen zu Ground-Truth-Informationen versehen sein 90, um bestimmte überwachte Lernverfahren zu unterstützen oder zu ermöglichen.
-
Bezug nehmend auf 10, sobald Sensordaten 24 (z.B. Trainingsdaten) in einem ersten Verfahren 78 erzeugt wurden, können diese Daten 24 verwendet werden, um einen oder mehrere Algorithmen in einem zweiten Verfahren 92 zu entwickeln, zu testen und/oder zu verbessern. Beispielsweise können die Sensordaten 24 analysiert werden 94, indem ein oder mehrere Anomaliedetektions-Algorithmen auf sie angewendet werden. Basierend auf dieser Analyse 94 können eine oder mehrere Anomalien 40 erfasst werden 96.
-
Dieses Erfassen 96 der einen oder mehreren Anomalien 40 kann das Schätzen bestimmter Dimensionen oder Abstände umfassen, die der einen oder den mehreren Anomalien 40 zugeordnet sind. Die geschätzten oder erfassten Dimensionen oder Abstände können mit den tatsächlichen Dimensionen oder Abständen, die aus der entsprechenden virtuellen Fahrumgebung 38 exakt bekannt sind, verglichen werden 98. Dementsprechend kann das Leistungsverhalten eines oder mehrerer Anomaliedetektions-Algorithmen beurteilt werden 100. In ausgewählten Ausführungsformen kann dieses Beurteilen 100 die Verbesserung 102 eines oder mehrerer Anomaliedetektions-Algorithmen ermöglichen oder unterstützen.
-
In ausgewählten Ausführungsformen kann ein erfindungsgemäßes Verfahren 92 mit den exakt gleichen Sensordaten 24 wiederholt werden. Dies kann es einem Entwickler ermöglichen, zu bestimmen, ob bestimmte Anomaliedetektions-Algorithmen besser als andere sind. Alternativ oder zusätzlich dazu kann ein Verfahren 92 mit verschiedenen Sensordaten 24 wiederholt werden. Dementsprechend kann die Entwicklung, Testung und/oder Verbesserung eines oder mehrerer Anomaliedetektions-Algorithmen so lange wie nötig fortgesetzt werden.
-
Bezug nehmend auf 11 können Sensordaten 24 in bestimmten Ausführungsformen in einem ersten Verfahren 78 entwickelt, für eine Zeitdauer gespeichert und dann verwendet werden, um einen oder mehrere Algorithmen in einem zweiten, darauffolgenden Verfahren 92 zu entwickeln, zu testen und/oder zu verbessern. In weiteren Ausführungsformen und Verfahren 104 können die Erzeugung von Sensordaten 24 und die Anwendung eines oder mehrerer Algorithmen jedoch zusammen in Echtzeit erfolgen. Dementsprechend kann in solchen Ausführungsformen und Verfahren 104 ein erfindungsgemäßes System 22 die Ereignisse und zeitlichen Einschränkungen, die mit der Verwendung der entsprechenden Algorithmen in der realen Welt verbunden sind, vollständiger replizieren.
-
In ausgewählten Ausführungsformen kann ein Echtzeitverfahren 104 mit dem Erzeugen 80 einer virtuellen Fahrumgebung 38, umfassend verschiedene Anomalien 40, beginnen. Über ein Inkrement (z.B. ein sehr kleines Inkrement) der virtuellen Fahrumgebung 38 kann dann in einem Simulationsverfahren mit einem oder mehreren virtuellen Sensoren 52 verfahren werden 82. Mit der Verfahrbewegung 82 über das Inkrement der virtuellen Fahrumgebung 38 mit einem oder mehreren virtuellen Sensoren 52 kann der Blickpunkt eines oder mehrerer Sensoren 52 auf die virtuelle Fahrumgebung 38 manipuliert werden 84, wie von einem Fahrzeugbewegungsmodell 34 vorgegeben. Dementsprechend können die verschiedenen Sichten 56, die dem einen oder den mehreren virtuellen Sensoren 52 zu dem simulierten Zeitpunkt entsprechen, erhalten 86 oder identifiziert 86 werden.
-
Die so erhaltenen 86 oder identifizierten 86 verschiedenen Sichten 56 können durch oder über entsprechende Sensormodell 36 analysiert werden, um Daten 24 zu erhalten 88 die das wiedergeben, was ein entsprechender realer Sensor, der auf die verschiedenen Ansichten 56 „blickt“, in der realen Welt erzeugen oder ausgeben würde. In ausgewählten Ausführungsformen können diese Daten 24 mit Anmerkungen zu Ground-Truth-Informationen versehen sein 90, um bestimmte überwachte Lernverfahren zu unterstützen oder zu ermöglichen.
-
Sobald Sensordaten 24 (z.B. Trainingsdaten) für ein bestimmtes Inkrement erzeugt wurden, können diese Daten 24 verwendet werden, um einen oder mehrere Algorithmen zu entwickeln, zu testen und/oder zu verbessern. Beispielsweise können die Sensordaten 24 analysiert werden 94, indem ein oder mehrere Anomaliedetektions-Algorithmen darauf angewendet werden. Basierend auf dieser Analyse 94 können eine oder mehrere Anomalien 40 erfasst werden 96. Dieses Erfassen 96 der einen oder mehreren Anomalien 40 kann das Schätzen bestimmter Dimensionen oder Abstände umfassen, die der einen oder den mehreren Anomalien 40 zugeordnet sind. Daraufhin können ein oder mehrere Anomalieantwort-Algorithmen diese geschätzten Dimensionen oder Abstände verwenden, um zu bestimmen 106, wie auf die erfassten 96 Anomalien 40 zu antworten ist. Die so bestimmte 106 Antwort kann dann implementiert werden 108.
-
Das Verfahren 104 kann fortgesetzt werden, wenn ein virtueller Sensor 52 über das nächste Inkrement einer virtuellen Fahrumgebung 38 verfährt 82. So können Sensordaten 24 Inkrement um Inkrement erhalten 88 und verwendet werden. Darüber hinaus kann die Implementierung 108 einer Antwort beeinflussen, wie ein virtueller Sensor 52 über das nächste Inkrement einer virtuellen Fahrumgebung 38 verfährt 82. Dementsprechend kann ein erfindungsgemäßes Verfahren 104 adaptiv sein (d.h., Änderungen des Algorithmus können zu Änderungen darin, wie das virtuelle Fahrzeug 58 sich durch eine virtuelle Fahrumgebung 38 bewegt, und/oder Änderungen des Wegs, den das virtuelle Fahrzeug 58 durch die virtuelle Fahrumgebung 38 nimmt, führen).
-
In ausgewählten Ausführungsformen kann ein erfindungsgemäßes Verfahren 104 mit exakt derselben virtuellen Fahrumgebung 38 wiederholt werden. Dies kann es einem Entwickler ermöglichen, zu bestimmen, ob bestimmte Anomaliedetektions- und/oder Anomalieantwort-Algorithmen besser als andere sind. Dementsprechend kann ein erfindungsgemäßes System 22 ein Testumfeld zum Entwickeln, Testen und/oder Verbessern eines oder mehrerer Anomaliedetektions- und/oder Anomalieantwort-Algorithmen bereitstellen.
-
Die Flussdiagramme in den 9 bis 11 veranschaulichen die Architektur, Funktionalität und den Betrieb möglicher Implementierungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen erfindungsgemäßen Ausführungsformen. In diesem Zusammenhang kann jeder Block in den Flussdiagrammen ein Modul, Segment oder einen Abschnitt von Code darstellen, der eine oder mehrere ausführbare Befehle zum Implementieren der spezifizierten logischen Funktion(en) umfasst. Es gilt ebenso anzumerken, dass jeder Block der Flussdiagramm-Darstellungen und Kombinationen von Blöcken in den Flussdiagramm-Darstellungen durch hardwarebasierte Spezialsysteme, welche die spezifizierten Funktionen oder Schritte durchführen, oder Kombinationen von Hardware- und Computer-Spezialbefehlen implementiert sein können.
-
Es gilt ebenso anzumerken, dass in manchen alternativen Ausführungsformen die in den Blöcken angeführten Funktionen in einer anderen Reihenfolge als der in den Figuren angeführten erfolgen können. In bestimmten Ausführungsformen können zwei aufeinanderfolgend gezeigte Blöcke tatsächlich im Wesentlichen gleichzeitig ausgeführt werden, oder die Blöcke können manchmal in umgekehrter Reihenfolge ausgeführt werden, abhängig von der jeweiligen Funktionalität. Alternativ dazu können bestimmte Schritte oder Funktionen weggelassen werden, wenn sie nicht erforderlich sind.
-
Die vorliegende Erfindung kann in weiteren spezifischen Formen ausgeführt sein, ohne von ihrem Sinn oder ihren wesentlichen Charakteristika abzuweichen. Die beschriebenen Ausführungsformen sind in jeglicher Hinsicht nur als veranschaulichend und nicht als einschränkend zu verstehen. Der Schutzumfang der Erfindung ist daher durch die beigefügten Ansprüche und nicht durch die vorangegangene Beschreibung angegeben. Jegliche Änderungen, die innerhalb die Bedeutung und den Äquivalenzbereich der Ansprüche fallen, sind als innerhalb ihres Schutzumfangs liegend zu verstehen.