DE102015013943B4 - Testing a navigation system of a motor vehicle - Google Patents
Testing a navigation system of a motor vehicle Download PDFInfo
- Publication number
- DE102015013943B4 DE102015013943B4 DE102015013943.6A DE102015013943A DE102015013943B4 DE 102015013943 B4 DE102015013943 B4 DE 102015013943B4 DE 102015013943 A DE102015013943 A DE 102015013943A DE 102015013943 B4 DE102015013943 B4 DE 102015013943B4
- Authority
- DE
- Germany
- Prior art keywords
- test
- signal
- navigation system
- feature
- key
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 141
- 238000000034 method Methods 0.000 claims abstract description 32
- 238000010801 machine learning Methods 0.000 claims description 31
- 238000005070 sampling Methods 0.000 claims description 12
- 238000000605 extraction Methods 0.000 claims description 9
- 230000006870 function Effects 0.000 claims description 8
- 230000001419 dependent effect Effects 0.000 claims description 3
- 238000001514 detection method Methods 0.000 description 33
- 230000006399 behavior Effects 0.000 description 17
- 238000011161 development Methods 0.000 description 15
- 230000018109 developmental process Effects 0.000 description 15
- 238000004364 calculation method Methods 0.000 description 12
- 238000011156 evaluation Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 230000008901 benefit Effects 0.000 description 6
- 230000007547 defect Effects 0.000 description 6
- 230000002123 temporal effect Effects 0.000 description 6
- 238000003909 pattern recognition Methods 0.000 description 5
- 238000012549 training Methods 0.000 description 5
- 238000013459 approach Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 238000002360 preparation method Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000012512 characterization method Methods 0.000 description 2
- 230000002950 deficient Effects 0.000 description 2
- 238000012422 test repetition Methods 0.000 description 2
- FGRBYDKOBBBPOI-UHFFFAOYSA-N 10,10-dioxo-2-[4-(N-phenylanilino)phenyl]thioxanthen-9-one Chemical compound O=C1c2ccccc2S(=O)(=O)c2ccc(cc12)-c1ccc(cc1)N(c1ccccc1)c1ccccc1 FGRBYDKOBBBPOI-UHFFFAOYSA-N 0.000 description 1
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 1
- 241000282412 Homo Species 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000007630 basic procedure Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000013101 initial test Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 230000002045 lasting effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000013450 outlier detection Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000003045 statistical classification method Methods 0.000 description 1
- 238000010998 test method Methods 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C25/00—Manufacturing, calibrating, cleaning, or repairing instruments or devices referred to in the other groups of this subclass
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/36—Input/output arrangements for on-board computers
- G01C21/3602—Input other than that of destination using image analysis, e.g. detection of road signs, lanes, buildings, real preceding vehicles using a camera
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Manufacturing & Machinery (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Automation & Control Theory (AREA)
- Image Analysis (AREA)
Abstract
Verfahren zum Testen eines Navigationssystems (1), wobei durch eine Testvorrichtung (2):- in einem Testdurchlauf (9) Sensordaten (5), die eine Fahrt eines Kraftfahrzeugs beschreiben, in das Navigationssystem (1) eingespeist oder innerhalb des Navigationssystems (1) simuliert werden, und- Einzelbilder (6) einer Bildsequenz (4), die das Navigationssystem (1) in Abhängigkeit von einem vorgegebenen Navigationsziel und den Sensordaten (5) erzeugt, erfasst werden, wobei jedes Einzelbild (6) eine Kombination (29) aus graphischen Schlüsselobjekten (11) darstellt, und- zumindest eines der graphischen Schlüsselobjekte (11) anhand von Konfigurationsdaten ausgewählt wird und- in den Einzelbildern (6) jedes ausgewählte Schlüsselobjekt (11) extrahiert wird und- von jedem extrahierten Schlüsselobjekt (11) zu zumindest einem vorbestimmten Objektmerkmal (30) ein jeweiliger Merkmalswert (12) ermittelt wird, und- zu jedem Objektmerkmal (30) die ermittelten Merkmalswerte (12) aller erfassten Einzelbilder (6) zu einem Zeitsignal (14) kombiniert werden, und- detektiert wird, ob zumindest ein Zeitsignal (14) ein vorbestimmtes Fehlerkriterium (7) erfüllt, und- falls das Fehlerkriterium (7) erfüllt wird, ein Hinweissignal (8) erzeugt wird, dadurch gekennzeichnet, dass der Testdurchlauf (9) mehrmals wiederholt wird, und jedes Zeitsignal (14) eines der Testdurchläufe (9) jeweils als Referenzsignal (15) und jedes Zeitsignal (14) eines anderen der Testdurchläufe (9) jeweils als Testsignal (16) verwendet wird und das Fehlerkriterium (7) umfasst, dass ein Unterschied (35) zwischen zumindest einem Testsignal (16) und dem korrespondierenden Referenzsignal (15) außerhalb eines vorbestimmten Toleranzbereichs (36, 38) ist.Method for testing a navigation system (1), wherein a test device (2): - in a test run (9), sensor data (5) describing a journey of a motor vehicle, fed into the navigation system (1) or within the navigation system (1) are simulated, and individual images (6) of an image sequence (4), which the navigation system (1) generates as a function of a specified navigation destination and the sensor data (5), are recorded, each individual image (6) being a combination (29) graphic key objects (11), and- at least one of the graphic key objects (11) is selected on the basis of configuration data and- each selected key object (11) is extracted in the individual images (6) and- from each extracted key object (11) to at least one predetermined object feature (30) a respective feature value (12) is determined, and - for each object feature (30) the determined feature values (12) of all captured individual images (6) are combined into a time signal (14), and it is detected whether at least one time signal (14) fulfills a predetermined error criterion (7), and if the error criterion (7) is fulfilled, a warning signal (8) is generated , characterized in that the test run (9) is repeated several times, and each time signal (14) of one of the test runs (9) as a reference signal (15) and each time signal (14) of another of the test runs (9) as a test signal (16) ) is used and the error criterion (7) includes that a difference (35) between at least one test signal (16) and the corresponding reference signal (15) is outside a predetermined tolerance range (36, 38).
Description
Die Erfindung betrifft ein Verfahren zum Testen eines Navigationssystems. Das Verfahren wird durch eine Testvorrichtung durchgeführt, die ebenfalls Bestandteil der Erfindung ist.The invention relates to a method for testing a navigation system. The method is carried out by a test device which is also part of the invention.
Die Komplexität von Navigationssystemen in Kraftfahrzeugen nimmt kontinuierlich zu. Dies ist nicht nur auf die Anzahl an verfügbaren Funktionen und die geforderte grafische Aufbereitung der Navigation zurückzuführen, sondern auch auf die Variantenvielfalt der verbauten Navigationssysteme und deren Interaktion mit anderen Geräten und Infotainment-Softwarekomponenten (Infotainmentsystem - Informations-Unterhaltungssystem). Mit steigender Komplexität steigt auch die Wahrscheinlichkeit, dass die Navigationssoftware Fehler enthält. Diese Fehler gilt es zu finden, bevor die Software als Serienstand den Kunden erreicht. Die Erfahrung der letzten Jahre zeigt, dass seltene, komplexe Fehler nur mit vielen hundert oder sogar tausend Stunden an automatisierten Tests zu fassen sind. Um die so nötige Testabdeckung und Testzeit für jede der relevanten Navigationsvarianten wirtschaftlich sinnvoll zu erreichen, ist eine automatisierte Erprobung mit geringem Auswerteaufwand für den Tester (Menschen) unverzichtbar.The complexity of navigation systems in motor vehicles is increasing continuously. This is not only due to the number of available functions and the required graphic preparation of the navigation, but also to the variety of variants of the built-in navigation systems and their interaction with other devices and infotainment software components (infotainment system - information entertainment system). With increasing complexity, the probability that the navigation software contains errors also increases. It is important to find these errors before the software reaches the customer as a series version. Experience over the last few years shows that rare, complex errors can only be captured with hundreds or even thousands of hours of automated tests. In order to achieve the necessary test coverage and test time for each of the relevant navigation variants in an economically sensible manner, automated testing with little evaluation effort for the tester (human) is indispensable.
Aus der
In der
In der
Aus der
In einem wissenschaftlichen
Der Erfindung liegt die Aufgabe zugrunde, ein Navigationssystem automatisiert zu testen.The invention is based on the task of automatically testing a navigation system.
Die Aufgabe wird durch die Gegenstände der unabhängigen Patentansprüche gelöst. Vorteilhafte Weiterbildungen der Erfindung sind durch die Merkmale der abhängigen Patentansprüche gegeben.The object is achieved by the subjects of the independent claims. Advantageous developments of the invention are given by the features of the dependent claims.
Durch die Erfindung ist ein Verfahren zum Testen eines Navigationssystems bereitgestellt. Das Verfahren wird durch eine Testvorrichtung durchgeführt. In einem Testdurchlauf des Navigationssystems werden in das Navigationssystem Sensordaten eingespeist, die eine Fahrt eines Kraftfahrzeugs beschreiben. Das Navigationssystem wird also genau so betrieben, als sei es in ein Kraftfahrzeug eingebaut und würde Sensordaten von dem Kraftfahrzeug empfangen. Sensordaten können beispielsweise GPS-Daten (GPS - Global Positioning System) und/oder Gierratendaten eines Gierratensensors und/oder ein Geschwindigkeitssignal sein. Die Sensordaten können mittels einer Simulation oder bei einer Testfahrt des Navigationssystems erzeugt werden. Alternativ zu einer Einspeisung der Sensordaten können diese innerhalb des Navigationssystems simuliert werden. Hierzu kann ein sogenannter Demo-Modus mit Testszenarien genutzt werden. „Demo-Modus“ bedeutet, dass die Navigationssoftware des Navigationssystems die Sensordaten selbst generiert und zwar allein auf Basis eines von außen gesetzten Startpunktes und Zielpunktes. Dies erspart eine Zuführung der Sensordaten von außen. Das Fahrzeug fährt „virtuell“ mit konstanter Geschwindigkeit.The invention provides a method for testing a navigation system. The method is carried out by a test device. In a test run of the navigation system, sensor data describing a journey of a motor vehicle are fed into the navigation system. The navigation system is therefore operated exactly as if it were installed in a motor vehicle and sensor data were received from the motor vehicle. Sensor data can be, for example, GPS data (GPS - Global Positioning System) and / or yaw rate data from a yaw rate sensor and / or a speed signal. The sensor data can be generated by means of a simulation or during a test drive of the navigation system. As an alternative to feeding in the sensor data, they can be simulated within the navigation system. A so-called demo mode with test scenarios can be used for this. "Demo mode" means that the navigation software of the navigation system generates the sensor data itself, based solely on an externally set starting point and destination. This saves having to supply the sensor data from outside. The vehicle drives “virtually” at a constant speed.
Das Navigationssystem erzeugt in Abhängigkeit von den Sensordaten und einem vorgegebenen Navigationsziel dann in bekannter Weise eine Videosequenz oder Animation oder Bildsequenz, die auf einem Bildschirm des Navigationssystems angezeigt werden kann. Die Bildsequenz kann beispielsweise ein Symbol für das Eigenfahrzeug sowie den vorausliegenden Straßenverlauf darstellen. Bei dem Verfahren ist nun vorgesehen, dass durch die Testvorrichtung Einzelbilder (Frames) dieser Bildsequenz erfasst werden. Die Einzelbilder können beispielsweise durch Auslesen eines Videosignals oder ein so genanntes Framegrabbing oder durch Abfilmen des Bildschirms erfasst werden. Wichtig hierbei ist, dass jedes Einzelbild eine Kombination aus grafischen Schlüsselobjekten darstellt. Ein solches Schlüsselobjekt kann beispielsweise das beschriebene Symbol für das Eigenfahrzeug sein oder eine Straße oder ein Warnhinweis für eine Baustelle. Zumindest eines dieser grafischen Schlüsselobjekte wird anhand von Konfigurationsdaten ausgewählt. Mit anderen Worten wird in der Testvorrichtung anhand der Konfigurationsdaten beispielsweise durch einen Benutzer eingestellt, welches Schlüsselobjekt oder welche Schlüsselobjekte durch die Testvorrichtung beobachtet werden sollen.The navigation system then generates, in a known manner, a video sequence or animation or image sequence that can be displayed on a screen of the navigation system as a function of the sensor data and a predetermined navigation destination. The image sequence can for example, a symbol for the own vehicle and the road ahead. In the method it is now provided that individual images (frames) of this image sequence are recorded by the test device. The individual images can be captured, for example, by reading out a video signal or so-called frame grabbing or by filming the screen. It is important here that each individual image represents a combination of graphic key objects. Such a key object can, for example, be the symbol described for one's own vehicle or a road or a warning notice for a construction site. At least one of these graphic key objects is selected on the basis of configuration data. In other words, on the basis of the configuration data, a user sets in the test device which key object or which key objects are to be observed by the test device.
In den Einzelbildern wird jedes ausgewählte Schlüsselobjekt extrahiert. Mit anderen Worten wird in jedem Einzelbild eine Segmentierung des ausgewählten Schlüsselobjekts vorgenommen. Es wird also ermittelt, welche Pixel (Bildelemente) des Einzelbildes zu dem Schlüsselobjekt gehören. Von jedem extrahierten Schlüsselobjekt wird zu zumindest einem vorbestimmten Objektmerkmal ein jeweiliger Merkmalswert ermittelt. Ein Objektmerkmal oder eine Objekteigenschaft wird also in jedem Einzelbild quantifiziert. Beispielsweise kann ein Objektmerkmal die Fläche oder Größe des Schlüsselobjekts sein oder eine geometrische Ausrichtung. Dies wird zu jedem Einzelbild als jeweiliger Merkmalswert ausgedrückt oder beschrieben. Zu jedem Objektmerkmal werden dann die ermittelten Merkmalswerte aller erfassten Einzelbilder zu einem Zeitsignal oder Merkmalsverlauf kombiniert. Es wird also beispielsweise ein Zeitsignal erzeugt, welches die Fläche oder Größe des Schlüsselobjekts über der Zeit beschreibt. Es wird dann detektiert, ob das Zeitsignal oder zumindest eines mehrerer Zeitsignale ein vorbestimmtes Fehlerkriterium erfüllt. Falls das Fehlerkriterium erfüllt wird, wird ein Hinweissignal erzeugt.Each selected key object is extracted in the individual images. In other words, the selected key object is segmented in each individual image. It is thus determined which pixels (picture elements) of the individual image belong to the key object. A respective feature value is determined for at least one predetermined object feature from each extracted key object. An object feature or an object property is thus quantified in each individual image. For example, an object feature can be the area or size of the key object or a geometric orientation. This is expressed or described for each individual image as a respective feature value. For each object feature, the determined feature values of all captured individual images are then combined to form a time signal or feature profile. For example, a time signal is generated that describes the area or size of the key object over time. It is then detected whether the time signal or at least one of several time signals fulfills a predetermined error criterion. If the error criterion is met, a notification signal is generated.
Durch die Erfindung ergibt sich der Vorteil, dass die Reaktion des Navigationssystems auf die Sensordaten und das vorgegebene Navigationsziel automatisiert durch die Testvorrichtung geprüft wird und ein Benutzer der Testvorrichtung, d. h. ein Mensch, nur dann die Bildsequenz überprüfen muss, wenn das Hinweissignal erzeugt wird, wenn also ein ungewöhnliches Ereignis in der Bildsequenz durch die Testvorrichtung erkannt wurde. Welche Ereignisse in der Bildsequenz als ungewöhnlich klassifiziert werden, kann durch das Fehlerkriterium eingestellt werden. Durch die Testvorrichtung ist es somit möglich, ein Navigationssystem viele Stunden lang oder sogar tagelang zu betreiben, ohne dass die von dem Navigationssystem erzeugte Bildsequenz tatsächlich durch einen menschlichen Betrachter beobachtet werden muss. Anhand des erzeugten Hinweissignals kann dann gezielt derjenige Abschnitt der Bildsequenz tatsächlich durch den Benutzer geprüft werden, zu dem das Fehlerkriterium erfüllt wurde. Es kann auch ein weiteres In-Ordnung-Signal erzeugt werden, falls das Fehlerkriterium nicht erfüllt ist.The invention has the advantage that the reaction of the navigation system to the sensor data and the specified navigation destination is automatically checked by the test device and a user of the test device, i.e. H. a person only has to check the image sequence when the notification signal is generated, that is, when an unusual event in the image sequence has been recognized by the test device. Which events in the image sequence are classified as unusual can be set using the error criterion. The test device thus makes it possible to operate a navigation system for many hours or even for days without the image sequence generated by the navigation system actually having to be observed by a human observer. Using the generated information signal, that section of the image sequence can then actually be checked by the user for which the error criterion was met. A further OK signal can also be generated if the error criterion is not met.
Das Fehlerkriterium kann beispielsweise besagen, dass der Verlauf des Zeitsignals innerhalb eines vorbestimmten Werteintervalls oder Toleranzbereichs liegen muss. Liegt das Zeitsignal einmal außerhalb des Intervalls, so ist das Fehlerkriterium erfüllt. Die Erfindung sieht hierzu vor, dass kein absolutes Werteintervall verwendet wird, sondern ein Vergleich des Zeitsignals mit einem Referenzsignal durchgeführt wird. Bei der Erfindung wird der Testdurchlauf mehrmals wiederholt. Zu einem der Testdurchläufe, nämlich einer Referenzsequenz, wird dann ein Zeitsignal oder werden mehrere Zeitsignale erzeugt, je nachdem wie viel Schlüsselobjekte und wie viel Objektmerkmale pro Schlüsselobjekt beobachtet werden. Jedes Zeitsignal dieses Testdurchlaufs stellt jeweils ein Referenzsignal dar. Für einen anderen Testdurchlauf, nämlich einer Testsequenz, wird jeweils ein korrespondierendes Zeitsignal erzeugt, das dann jeweils als Testsignal verwendet wird. Das Fehlerkriterium umfasst dann, dass ein Unterschied zwischen zumindest einem Testsignal und dem korrespondieren Referenzsignal außerhalb eines vorbestimmten Toleranzbereichs liegt.The error criterion can for example state that the course of the time signal must lie within a predetermined value interval or tolerance range. If the time signal is outside the interval, the error criterion is met. For this purpose, the invention provides that no absolute value interval is used, but a comparison of the time signal with a reference signal is carried out. In the invention, the test run is repeated several times. A time signal or several time signals are then generated for one of the test runs, namely a reference sequence, depending on how many key objects and how many object features are observed per key object. Each time signal of this test run represents a reference signal. For another test run, namely a test sequence, a corresponding time signal is generated, which is then used as a test signal. The error criterion then includes that a difference between at least one test signal and the corresponding reference signal lies outside a predetermined tolerance range.
Die Testdurchläufe können mit denselben oder mit unterschiedlichen Sensordaten durchgeführt werden. Selbst bei Verwendung derselben Sensordaten pro Testdurchlauf kommt es zu unterschiedlichen Reaktionen des Navigationssystems, je nachdem, welche Auslastung anderer Fahrzeugsysteme gegeben ist, die mit derselben Hardware realisiert werden. Beispielsweise kann bei einem Multithreading-Prozessorsystem die Verarbeitung der Sensordaten in unterschiedlichen Testdurchläufen im Navigationssystem unterschiedlich erfolgen. Entsprechend ergeben sich auch unterschiedliche Bildsequenzen. Beispielsweise kann es zu einer Unterbrechung der Darstellung der Bildsequenz bei einer ungünstigen Auslastung des Prozessorsystems kommen.The test runs can be carried out with the same or with different sensor data. Even when using the same sensor data per test run, the navigation system reacts differently, depending on the utilization of other vehicle systems that are implemented with the same hardware. For example, in a multithreading processor system, the processing of the sensor data can take place differently in different test runs in the navigation system. Accordingly, different image sequences also result. For example, the display of the image sequence can be interrupted in the event of an unfavorable load on the processor system.
Zu der Erfindung gehören auch optionale Weiterbildungen, durch deren Merkmale sich zusätzliche Vorteile ergeben.The invention also includes optional developments, the features of which result in additional advantages.
Ein Aspekt betrifft die Frage, welche Objektmerkmale geeignet sind, um zuverlässig einen Fehler in der Bildsequenz zu erkennen. Eine Weiterbildung hierzu sieht vor, dass ein Objektmerkmal ein skalarer Wert ist, also ein „Eine-Zahl-Merkmal“. Beispielsweise kann eine Pixelanzahl des grafischen Schlüsselobjekts ermittelt werden. Dies entspricht der Anzeigefläche des grafischen Schlüsselobjekts. Ein skalarer Wert weist den Vorteil auf, dass das besagte Zeitsignal als Zeitreihe von Einzelwerten ermittelt wird. Es kann dann besonders effizient durch die Testvorrichtung verarbeitet werden. Ein Objektmerkmal kann gemäß einer Weiterbildung eine dynamische oder zeitliche Eigenschaft des Schlüsselobjekts beschreiben, beispielsweise eine Bewegungsgeschwindigkeit oder einen Bewegungsvektor. Hierdurch ergibt sich der Vorteil, dass ein Zusammenhang zwischen aufeinanderfolgenden Einzelbildern berücksichtigt wird. Ein Objektmerkmal kann gemäß einer Weiterbildung ein Merkmalstupel aus mehreren Einzelmerkmalen sein. Hierdurch drückt das Zeitsignal eine mehrdimensionale Trajektorie aus, sodass durch ein einzelnes Zeitsignal die zeitliche Entwicklung mehrerer Einzelmerkmale beschrieben ist.One aspect relates to the question of which object features are suitable for reliably detecting an error in the image sequence. A further development for this provides that an object feature is a scalar value, that is to say a “one-number feature”. For example, a number of pixels of the graphic Key object can be determined. This corresponds to the display area of the graphic key object. A scalar value has the advantage that the said time signal is determined as a time series of individual values. It can then be processed particularly efficiently by the test device. According to one development, an object feature can describe a dynamic or temporal property of the key object, for example a movement speed or a movement vector. This has the advantage that a relationship between successive individual images is taken into account. According to one development, an object feature can be a feature tuple made up of several individual features. As a result, the time signal expresses a multi-dimensional trajectory, so that the development of several individual features over time is described by a single time signal.
Bei einer Weiterbildung wird ein Objektmerkmal gewählt, das von einem Navigationskontext abhängig ist. Hierdurch kann dann für unterschiedliche Sensordaten und/oder Navigationsziele ein jeweils geeignetes Objektmerkmal im Voraus festgelegt werden, sodass gezielt für unterschiedliche Navigationssituationen ein geeignetes Objektmerkmal gewählt wird. Zusätzlich oder alternativ dazu kann als Objektmerkmal auch eine Korrelation zweier vorbestimmter Einzelmerkmale beschreiben. Mit anderen Worten wird also nicht direkt aus dem Einzelbild jeweils ein Einzelmerkmal beobachtet, sondern ein Zusammenhang zweier solcher Einzelmerkmale. Diese Einzelmerkmale können von dem Schlüsselobjekt stammen oder auch einen Bezug eines Einzelmerkmals des Schlüsselobjekts zu einem Einzelmerkmal eines anderen Objekts beschreiben. Beispielsweise kann hierdurch ein Größenverhältnis zweier Schlüsselobjekte als Objektmerkmal beschrieben werden.In a further development, an object feature is selected that is dependent on a navigation context. In this way, a respectively suitable object feature can be defined in advance for different sensor data and / or navigation destinations, so that a suitable object characteristic is specifically selected for different navigation situations. In addition or as an alternative to this, a correlation of two predetermined individual features can also describe as an object feature. In other words, an individual feature is not observed directly from the individual image, but a connection between two such individual features. These individual features can originate from the key object or also describe a relationship between an individual feature of the key object and an individual feature of another object. For example, a size ratio of two key objects can be described as an object feature.
Eine Weiterbildung sieht vor, dass die Extrahierung des Schlüsselobjekts anhand einer Farbe und/oder eines grafischen Musters erfolgt. Die Extrahierung anhand der Farbe ist besonders effizient mit geringen rechentechnischen Ressourcen zu realisieren. Ein grafisches Muster lässt sich mit einer aufwandsarmen Mustererkennung detektieren.A further development provides that the key object is extracted using a color and / or a graphic pattern. The extraction based on the color can be implemented particularly efficiently with low computational resources. A graphic pattern can be detected with a low-effort pattern recognition.
Um das Testsignal mit dem Referenzsignal vergleichen zu können, sieht eine Weiterbildung vor, dass das Referenzsignal und/oder das Testsignal auf eine für die Abtastung der Bildsequenz vorgegebene Abtastrate interpoliert wird. Hierdurch ergibt sich eine Synchronisierung des Testsignals mit dem Referenzsignal. Die Synchronisierung ist somit nicht von Anfang an nötig. Es können also für die unterschiedlichen Testläufe Einzelbilder innerhalb der jeweiligen Bildsequenz zu unterschiedlichen Zeitpunkten erfasst werden. So kann ein Hardware-in-the-loop-Test ermöglicht werden, bei welchem das Navigationssystem unabhängig oder asynchron zur Testvorrichtung läuft. Falls als Objektmerkmal der beschriebene skalare Wert verwendet wird, ist die Interpolation besonders robust. Es ist keine mehrdimensionale, beispielsweise grafische Interpolation eines Bildes nötig.In order to be able to compare the test signal with the reference signal, a further development provides that the reference signal and / or the test signal is interpolated to a sampling rate specified for the sampling of the image sequence. This results in a synchronization of the test signal with the reference signal. Synchronization is therefore not necessary from the start. It is therefore possible to acquire individual images within the respective image sequence at different times for the different test runs. A hardware-in-the-loop test can thus be made possible in which the navigation system runs independently or asynchronously to the test device. If the described scalar value is used as the object feature, the interpolation is particularly robust. There is no need for a multidimensional, for example graphical, interpolation of an image.
Um den Vergleich zwischen Referenzsignalen und Testsignalen noch aussagekräftiger zu machen, sieht eine Weiterbildung vor, dass das Testsignal mit dem Referenzsignal durch einen fensterbasierten Vergleich registriert wird. Mit Registrierung ist hierbei gemeint, dass ein Zeitversatz oder Zeitoffset zwischen Testsignal und Referenzsignal auf Grundlage des fensterbasierten Vergleichs eingestellt wird. Der fensterbasierte Vergleich kann beispielsweise eine Korrelation oder eine Summe absoluter Differenzwerte (SAD) sein. Der minimale Korrelationswert oder SAD-Wert gibt dann an, dass das Testsignal und das Referenzsignal die größte Ähnlichkeit aufweisen, also der Zeitversatz dahingehend optimal ist, dass ein erkannter oder detektierter Unterschied zwischen Referenzsignal und Testsignal ausschließlich aufgrund eines Unterschieds in den Bildsequenzen verursacht wird und nicht aufgrund eines fehlerhaften Zeitversatzes.In order to make the comparison between reference signals and test signals even more meaningful, a further development provides that the test signal is registered with the reference signal by means of a window-based comparison. Here, registration means that a time offset or time offset is set between the test signal and the reference signal on the basis of the window-based comparison. The window-based comparison can be, for example, a correlation or a sum of absolute difference values (SAD). The minimum correlation value or SAD value then indicates that the test signal and the reference signal have the greatest similarity, i.e. the time offset is optimal in that a recognized or detected difference between reference signal and test signal is caused solely by a difference in the image sequences and not due to an incorrect time offset.
Eine Weiterbildung ermöglicht es sogar, das Fehlerkriterium für den Vergleich von Testsignal und Referenzsignal automatisch zu erzeugen. Ein zur Weiterbildung wird ein weiteres Referenzsignal erzeugt, beispielsweise aus einem anderen Abschnitt der Referenzsequenz oder durch nochmaliges Durchlaufen des Testdurchlaufs. Aus dem weiteren Referenzsignal (oder den mehreren weiteren Referenzsignalen bei mehreren Objektmerkmalen), wird mittels einer Methode des maschinellen Lernens (ML) der Toleranzbereich für den Unterschied des Testsignals zum korrespondierenden Referenzsignal ermittelt. Als eine Methode des maschinellen Lernens kann beispielsweise die so genannte Novelty-Detetection-Methode (Neuheitserkennung) verwendet werden. Durch das maschinelle Lernen wird anhand des weiteren Referenzsignals erkannt, welche Verläufe oder Werte für das Referenzsignal typisch sind, d. h. das zu erwartende Verhalten. Hiermit können also danach statistische Ausreißer, die auf einen Fehler hindeuten, erkannt werden.A further development even makes it possible to automatically generate the error criterion for the comparison of test signal and reference signal. As a further development, a further reference signal is generated, for example from another section of the reference sequence or by running through the test run again. The tolerance range for the difference between the test signal and the corresponding reference signal is determined from the further reference signal (or the several further reference signals in the case of several object features) by means of a machine learning (ML) method. The so-called novelty detection method, for example, can be used as a method of machine learning. The machine learning uses the additional reference signal to identify which courses or values are typical for the reference signal, i. H. the expected behavior. This means that statistical outliers that indicate an error can then be recognized.
Als besonders zuverlässige automatische Toleranzfestsetzung hat sich die folgende Weiterbildung erwiesen. Sie weist den zusätzlichen Vorteil auf, dass durch einen Benutzer mittels einer grafischen Anzeige überprüft werden kann, ob der Toleranzbereich geeignet gesetzt wurde. Bei der Weiterbildung werden die Merkmalswerte zumindest zweiter Referenzsignale als Koordinaten eines Datenpunkts verwendet oder interpretiert. Mit anderen Worten werden die Merkmalswerte der Referenzsignale zu einem gegebenen Einzelbild (oder bei Interpolation zu einem gegebenen Zeitpunkt) als Koordinaten interpretiert. Nimmt man beispielsweise zwei Referenzsignale, so ergibt sich pro Zeitpunkt ein Datenpunkt in einem zweidimensionalen Koordinatensystem. Wird dies für alle Zeitpunkte oder Abtastzeitpunkte der Referenzsignale durchgeführt, so ergibt sich eine Punktwolke. Aus dieser Punktwolke, d.h. aus den Datenpunkten der Referenzsignale wird z.B. mittels radialer Basisfunktionen (RBF - Radial Basis Function) der Toleranzbereich als eine so genannte Entscheidungsgrenze (Decision Boundary) ermittelt. Die Entscheidungsgrenze ist diejenige Linie, welche die Datenpunkte oder zumindest die meisten Datenpunkte einschließt. Der Verlauf oder die Form der Entscheidungsgrenze kann dabei mittels der beschriebenen radialen Basisfunktionen besonders flexibel angepasst werden, wodurch Fehlalarme bei der Fehlerdetektion verringert werden können.The following development has proven to be a particularly reliable automatic tolerance setting. It has the additional advantage that a user can use a graphic display to check whether the tolerance range has been set appropriately. In the development, the feature values of at least second reference signals are used or interpreted as coordinates of a data point. In other words, the feature values of the reference signals are used as coordinates for a given frame (or, in the case of interpolation, at a given point in time) interpreted. If, for example, two reference signals are used, one data point in a two-dimensional coordinate system results per point in time. If this is carried out for all times or sampling times of the reference signals, a point cloud results. From this point cloud, ie from the data points of the reference signals, the tolerance range is determined as a so-called decision boundary, for example by means of radial base functions (RBF - Radial Base Function). The decision boundary is the line that encloses the data points or at least most of the data points. The course or the shape of the decision limit can be adapted particularly flexibly by means of the radial basic functions described, as a result of which false alarms during error detection can be reduced.
Zu der Erfindung gehört auch die beschriebene Testvorrichtung für ein Navigationssystem eines Kraftfahrzeugs. Die Testvorrichtung ist dazu eingerichtet, eine Ausführungsform des erfindungsgemäßen Verfahrens durchzuführen. Hierzu kann die Testvorrichtung eine Prozessoreinrichtung aufweisen, die beispielsweise auf der Grundlage eines oder mehrerer Mikroprozessoren realisiert sein kann. Die beschriebenen Komponenten der Testvorrichtung können somit jeweils als Programmmodule realisiert sein.The test device described for a navigation system of a motor vehicle also belongs to the invention. The test device is set up to carry out an embodiment of the method according to the invention. For this purpose, the test device can have a processor device that can be implemented, for example, on the basis of one or more microprocessors. The described components of the test device can thus each be implemented as program modules.
Im Folgenden ist ein Ausführungsbeispiel der Erfindung beschrieben. Hierzu zeigt:
-
1 eine Skizze zu einem Testdurchlauf für ein Navigationssystem, -
2 ein Flussschaudiagramm, welches verschiedene Ausführungsformen des erfindungsgemäßen Verfahrens veranschaulicht, -
3 eine Skizze zur Veranschaulichung einer Extraktion mehrerer Schlüsselobjekte aus einem Einzelbild, -
4 eine schematische Darstellung eines Zeitsignals eines Objektmerkmals eines der Schlüsselobjekte, -
5 eine schematische Darstellung zur Veranschaulichung einer Registrierung des Zeitsignals mit einem Referenzsignal, -
6 eine schematische Darstellung zur Veranschaulichung einer Überprüfung eines Fehlerkriteriums und -
7 eine schematische Darstellung zur Veranschaulichung einer automatischen Festlegung des Fehlerkriteriums mittels einer Methode des maschinellen Lernens.
-
1 a sketch for a test run for a navigation system, -
2 a flow chart illustrating various embodiments of the method according to the invention, -
3 a sketch to illustrate an extraction of several key objects from a single image, -
4th a schematic representation of a time signal of an object feature of one of the key objects, -
5 a schematic representation to illustrate a registration of the time signal with a reference signal, -
6 a schematic representation to illustrate a check of an error criterion and -
7th a schematic representation to illustrate an automatic determination of the error criterion by means of a method of machine learning.
Bei dem im Folgenden erläuterten Ausführungsbeispiel handelt es sich um eine bevorzugte Ausführungsform der Erfindung. Bei dem Ausführungsbeispiel stellen die beschriebenen Komponenten der Ausführungsform jeweils einzelne, unabhängig voneinander zu betrachtende Merkmale der Erfindung dar, welche die Erfindung jeweils auch unabhängig voneinander weiterbilden und damit auch einzeln oder in einer anderen als der gezeigten Kombination als Bestandteil der Erfindung anzusehen sind. Des Weiteren ist die beschriebene Ausführungsform auch durch weitere der bereits beschriebenen Merkmale der Erfindung ergänzbar.The exemplary embodiment explained below is a preferred embodiment of the invention. In the exemplary embodiment, the described components of the embodiment each represent individual features of the invention that are to be considered independently of one another, which also develop the invention independently of one another and are therefore to be regarded as part of the invention individually or in a combination other than the one shown. Furthermore, the described embodiment can also be supplemented by further features of the invention already described.
In den Figuren sind funktionsgleiche Elemente jeweils mit denselben Bezugszeichen versehen.In the figures, functionally identical elements are each provided with the same reference symbols.
In
Die Testvorrichtung
Insgesamt ergibt sich hieraus ein Testdurchlauf
In den Einzelbildern
Verzichtet man auf die Referenzsequenz REF, so kann jedes Testsignal
Speichert man das Referenzsignal
Der beschriebene schwellwertbasierte Vergleich im Test
Das Fehlerkriterium
In dem Test
Die anhand des Ausführungsspeispiels konkret beschriebenen Ausführungsformen des erfindungsgemäßen Verfahrens können abgewandelt werden, um den Test des Navigationssystems
Das vorgestellte Konzept basiert auf der wiederholten Aufnahme des Navigation-Bildschirminhalts bei gleichbleibender Strecke. Neben dem bekannten Demo-Modus der Navigation ist dies insbesondere durch die seit kurzem verfügbare Technologie des Sensordatenreplays möglich: die Sensordaten einer mehrstündigen, realen Fahrt werden im Labor erneut in die Navigation eingespielt. Der Aufnahme des ersten Laufs wird im Folgenden als Referenz-Sequenz bezeichnet, die Aufnahmen aller nachfolgenden Aufnahmen als Test-Sequenzen.The concept presented is based on the repeated recording of the navigation screen content with the same route. In addition to the well-known demo mode of the navigation, this is particularly possible thanks to the recently available technology of the sensor data replay: the sensor data from a real trip lasting several hours are re-imported into the navigation in the laboratory. The recording of the first run is referred to below as the reference sequence, the recordings of all subsequent recordings as test sequences.
Das Verfahren umfasst grundsätzlich drei Komponenten:
- 1. Berechnung von Schlüsselobjekt-Merkmalsverläufen
- 2. Synchronisierung der Sequenzen, sowie
- 3. Fehlererkennung mit/ohne maschinellem Lernen
- 1. Calculation of key object characteristic courses
- 2. Synchronizing the sequences as well
- 3. Error detection with / without machine learning
In Kombination miteinander erlauben diese drei Komponenten eine referenzbasierte, automatisierte Erprobung der Navigation, welche die vier beschriebenen Nachteile behebt bzw. deutlich reduziert. Zudem können seltene, noch unbekannte Navigationsfehler ohne explizite Modellierung des Fehlers automatisiert erkannt werden.
Die Grundlage bildet die Definition von elementaren Objekten der Navigation, hier Schlüsselobjekte genannt. Diese Schlüsselobjekte erlauben eine einfache Charakterisierung des Verhaltens wichtiger Navigationselemente sowie einen Verzicht auf traditionelle Mustererkennung (=„Pattern Matching“, Vergleich von Texturinhalten).
Es sei angemerkt, dass dieses Konzept beliebig anpassbar/erweiterbar ist. Beispiele einer möglichen Anpassung/Erweiterung wären:
- 1. Definition zeitlicher Schlüsselobjekt-Merkmale, beispielsweise von affinen Bewegungsparametersätzen zwischen Einzelbildern oder Frames,
- 2. Extrahierung der Schlüsselobjekte nicht aufgrund der Farbe, sondern aufgrund (einfacher) Mustererkennungsalgorithmen,
- 3. Berechnung eines Schlüsselobjekt-Merkmalstupels, also eines mehrdimensionalen Merkmals (siehe Bewegungsparametersatz),
- 4. Einbeziehung von Kontexten und Korrelationen bei der Berechnung und Verarbeitung von Schlüsselobjekt-Merkmalen und Schlüsselobjekt-Merkmalsverläufen (z.B. Einbeziehung von Bewegungsparametersätzen bei der Threshold- oder ML-basierten Fehlererkennung, Threshold - Schwellwert).
- 1. Definition of temporal key object features, for example of affine movement parameter sets between individual images or frames,
- 2. Extraction of the key objects not based on color, but based on (simple) pattern recognition algorithms,
- 3. Calculation of a key object feature tuple, i.e. a multi-dimensional feature (see movement parameter set),
- 4. Inclusion of contexts and correlations in the calculation and processing of key object features and key object feature progressions (eg inclusion of movement parameter sets in the threshold or ML-based error detection, threshold value).
Die Verfügbarkeit einer Referenzsequenz (
Dies ermöglicht, eine beliebige Anzahl an Test-Wiederholungen (=Test-Sequenzen) automatisiert in den so erlernten Klassifizierer zu geben und seltene Fehler anhand möglichem „unerwartetem“ Verhalten zu identifizieren. Im Vergleich mit schwellwertbasierten oder threshold-basierten Fehlererkennungsmechanismen vereinfacht sich die Auswertung durch den Menschen zusätzlich, da der Rechner das zu erwartende Verhalten der Schlüsselobjekte erlernt hat, dieses Wissen mittels Klassifizierer abbildet und damit aus hunderten Stunden Test-Wiederholungen lediglich ungewöhnliche Ereignisse an den Tester (Mensch) weitergibt. Dies entspricht im Grunde einer referenzbasierten Aufbereitung und Filterung vorhandener Schlüsselobjekt-Information.This enables any number of test repetitions (= test sequences) to be automatically entered into the classifier learned in this way and rare errors to be identified on the basis of possible "unexpected" behavior. In comparison with threshold-based or threshold-based error detection mechanisms, the evaluation by humans is additionally simplified, because the computer has learned the expected behavior of the key objects, maps this knowledge using classifiers and thus only unusual events to the tester from hundreds of hours of test repetitions ( Human). This basically corresponds to a reference-based preparation and filtering of existing key object information.
In Kombination miteinander erlauben die drei KomponentenIn combination with each other, the three components allow
- 1. Berechnung von Schlüsselobjekt-Merkmalsverläufen1. Calculation of key object characteristic courses
- 2. Synchronisierung der Sequenzen, sowie2. Synchronizing the sequences as well
- 3. Fehlererkennung mit/ohne maschinellem Lernen eine Erprobung der Navigation in automatisierter Form. Zusammengefasst weist die vorgestellte Idee folgende Vorteile auf:3. Error detection with / without machine learning a test of the navigation in an automated form. In summary, the idea presented has the following advantages:
Geringer ModellierungsaufwandLittle modeling effort
Die Notwendigkeit zur Modellierung von Fehlerverhalten (explizit oder implizit) entfällt größtenteils, da eine Referenzsequenz für einen rechnergestützten Vergleich zur Verfügung steht und der Vergleich mittels der vorgestellten Synchronisierung zuverlässig durchgeführt werden kann.The need to model error behavior (explicitly or implicitly) is largely eliminated, since a reference sequence is available for a computer-aided comparison and the comparison can be carried out reliably using the synchronization presented.
Reduzierte RechenkomplexitätReduced computational complexity
Der Rechenaufwand für komplexe Mustererkennung entfällt, die Berechnung kann in annähernd Echtzeit durchgeführt werden. Der Großteil des nötigen Aufwands setzt sich aus logische Indizierung, Kurveninterpolation sowie, falls gewünscht, dem Erlernen der Decision Boundary zusammen (einmalig).The computing effort for complex pattern recognition is eliminated, the calculation can be carried out in almost real time. The majority of the necessary effort consists of logical indexing, curve interpolation and, if desired, learning the decision boundary (once).
Reduzierter AuswerteaufwandReduced evaluation effort
Die Abbildung elementarer Schlüsselobjekte der Navigation als einfache Kurvenverläufe sowie deren Differenzwertbildung nach erfolgter Synchronisation erlauben erstmals eine zeitliche Aufbereitung des Bildinhalts ganzer Testläufe in Plot-Form. Gängige Auswerte-Softwarewerkzeuge wie EXAM unterstützen dies nicht: die Sequenz muss stets in einem Videoplayer oder Einzelbild-Browser („Picture Browser“) in ganzer Länge mit dem Auge geprüft werden. Durch die Repräsentation des Navigations-Bildinhalts in Kurvenform wird eine schnelle, unkomplizierte Bewertung des jeweiligen Testlaufs durch den Tester (Mensch) möglich.The mapping of elementary key objects of the navigation as simple curve progressions as well as their difference value formation after synchronization allow for the first time a temporal processing of the image content of entire test runs in plot form. Common evaluation software tools such as EXAM do not support this: the sequence must always be checked with the eye in its entire length in a video player or single-image browser ("Picture Browser"). The representation of the navigation image content in the form of a curve enables the tester (human) to evaluate the respective test run quickly and easily.
Nutzung von Referenz-InformationUse of reference information
Durch das beschriebene Konzept der Merkmale und Merkmalsverläufe von Schlüsselobjekten, kombiniert mit der vorgestellten Synchronisierung, besteht nun erstmals die Möglichkeit, mit geringem Aufwand einen rechnergestützten Vergleich gegen eine fehlerfreie Referenzsequenz durchzuführen. Der Tester hat damit die Möglichkeit, den ersten Lauf (=Referenzsequenz REF) mit dem Auge auf Fehlerfreiheit zu prüfen, und den Test anschließend bei minimalem Auswerteaufwand beliebig oft zu wiederholen (automatisierte Prüfung der Testsequenzen TEST).The described concept of the features and feature profiles of key objects, combined with the synchronization presented, now makes it possible for the first time to carry out a computer-aided comparison against an error-free reference sequence with little effort. Of the This gives the tester the opportunity to visually check the first run (= reference sequence REF) for defects and then to repeat the test as often as required with minimal evaluation effort (automated test of the test sequences TEST).
Erkennung seltener und unbekannter FehlerDetection of rare and unknown errors
Die Nutzbarkeit einer Referenz-Sequenz kann als implizite Modellierung unbekannter Fehler (bzw. als explizite Modellierung des zu erwartenden Verhaltens) interpretiert werden. Dies wiederum ermöglicht, unbekannte Fehler anhand ihres unerwarteten Schlüsselobjekt-Verhaltens zu identifizieren, ohne mit massivem Aufwand implizite Modelle zu erstellen und zu pflegen. Die Identifikation seltener, unbekannter Fehler ist eine große Herausforderung im Bereich der automatisierten Navigationserprobung.The usability of a reference sequence can be interpreted as implicit modeling of unknown errors (or as explicit modeling of the expected behavior). This in turn makes it possible to identify unknown errors based on their unexpected key object behavior without creating and maintaining implicit models with massive effort. The identification of rare, unknown errors is a major challenge in the area of automated navigation testing.
Machine Learning MLMachine learning ML
Durch das beschriebene Konzept der Merkmale bzw. Merkmalsverläufe von Schlüsselobjekten können erwartete Eigenschaften bzw. erwartetes Verhalten als Merkmals-Tupel interpretiert werden. Im Machine Learning bilden diese Merkmals-Tupel (auch genannt „Features“) die Grundlage für die Berechnung eines beschreibenden Modells (= Training eines Modells). Das Modell (oft ein Parametersatz eines „Kernels“, wie beispielsweise des RBF-Kernels) kann anschließend zur Klassifizierung von Features unbekannter Klassen genutzt werden. Das vorgestellte Konzept erschließt somit das Feld des Machine Learnings für zukünftige Ansätze.The described concept of the features or feature profiles of key objects enables expected properties or expected behavior to be interpreted as feature tuples. In machine learning, these feature tuples (also called "features") form the basis for calculating a descriptive model (= training a model). The model (often a set of parameters of a “kernel” such as the RBF kernel) can then be used to classify features of unknown classes. The concept presented thus opens up the field of machine learning for future approaches.
Zeitliche Merkmale, Berechnung eines KontextesTemporal characteristics, calculation of a context
Das vorgestellte Konzept der Merkmale bzw. Merkmalsverläufe von Schlüsselobjekten nutzt momentan „örtliche Merkmale“ (-> Pixelanzahl von extrahierten Schlüsselobjekten). „Zeitliche Merkmale“ wie beispielsweise die Bewegung zwischen Frames können in Zukunft ebenfalls Betrachtung finden. Ebenso ist die Einführung eines „Kontextes“ möglich, also einer Fehlererkennung auf Basis der näheren Vergangenheit des betrachteten Merkmalsverlaufs sowie in Korrelation mit anderen Merkmalsverläufen. Es ist wahrscheinlich, dass ein automatisches „Erlernen“ dieser Netzwerke (Bayes-Netzwerke) anhand der Referenzsequenz eine einfache Lösung für eine unkomplizierte, wartungsarme Erprobung der Navigation darstellt.The presented concept of the features or feature profiles of key objects currently uses "local features" (-> number of pixels from extracted key objects). “Temporal characteristics” such as movement between frames can also be considered in the future. It is also possible to introduce a “context”, that is, error detection on the basis of the recent past of the characteristic curve under consideration and in correlation with other characteristic curves. It is likely that an automatic “learning” of these networks (Bayesian networks) using the reference sequence represents a simple solution for an uncomplicated, low-maintenance testing of the navigation.
Nachfolgend wird die technische Umsetzung der vorgestellten Idee im Prinzip beschrieben.The technical implementation of the presented idea is described in principle below.
Berechnung von Schlüsselobjekt-MerkmalsverläufenCalculation of key object characteristic courses
Statt der Suche nach Texturähnlichkeiten (Pattern Matching, Mustererkennung) erfolgt die Identifikation von elementaren Navigationselementen mittels einer farbbasierten Extraktion. Diese elementaren Objekte werden nachfolgend als Schlüsselobjekte bezeichnet. Weitere wichtige Begriffe sind im Folgenden zudem Schlüsselobjekt-Merkmal sowie Schlüsselobjekt-Merkmalsverlauf.Instead of searching for texture similarities (pattern matching, pattern recognition), elementary navigation elements are identified using color-based extraction. These elementary objects are referred to below as key objects. In the following, further important terms are also key object characteristics and key object characteristics history.
Je nach Zielsetzung der automatisierten Tests können die Schlüsselobjekte unterschiedlich gewählt werden. Beispiele für Schlüsselobjekte sind Straßen, Route, Speed & Flow, Fahrzeugsymbol oder andere (siehe beispielhaft
Aus diesen Verläufen kann gezielt auf die korrekte Funktion der einzelnen Schlüsselobjekte der Navigation geschlossen werden (mehr dazu unter Fehlererkennung mit/ohne maschinellem Lernen). Sie sind zudem essentiell für die Behebung der Nachteile Modellierungsaufwand und Rechenkomplexität: In ihnen ist implizit das erwartete Verhalten modelliert, die Komplexität beschränkt sich auf eine logische Indizierung und eine Merkmalsberechnung (hier: Summe der Schlüsselobjektpixel). Die Schlüsselobjekt-Merkmalsverläufe schaffen zudem die Grundvoraussetzung für die Nutzbarkeit einer Referenzsequenz, was die Suche nach seltenen Fehlern erheblich vereinfacht.The correct functioning of the individual key objects of the navigation can be specifically deduced from these courses (more on this under Error detection with / without machine learning). They are also essential for eliminating the disadvantages of modeling effort and computational complexity: they implicitly model the expected behavior, the complexity is limited to a logical indexing and a feature calculation (here: sum of the key object pixels). The key object characteristic curves also create the basic requirements for the usability of a reference sequence, which considerably simplifies the search for rare errors.
Synchronisierung der SequenzenSynchronization of the sequences
Der Komponente Synchronisierung ist essentiell, um die Schlüsselobjekt-Merkmalsverläufe einer Test-Sequenz mit einer bereits geprüften, fehlerfreien Referenz-Sequenz automatisiert vergleichen zu können. Dieser Referenzvergleich ist hochgradig interessant, da er ein wirkungsvolles Werkzeug zur Erkennung bisher unbekannter Fehler darstellt (explizite Modellierung des Fehlers nicht möglich, implizite Modellierung mit hohem Aufwand verbunden). Dieser Referenzvergleich kann nur durchgeführt werden, falls für den zu vergleichenden Zeitabschnitt annähernde Synchronität der beiden Zeitachsen sichergestellt ist. Angesichts der variierenden Frameraten, der asynchronen, internen Clocks der Framegrabber sowie der Auslastung der Prüfstands-PCs ist dies nicht trivial. Die Synchronisierung setzt sich aus zwei einfachen Schritten zusammen:
- 1. Interpolationsschritt: Die Schlüsselobjekt-Merkmale aller Frames einer Sequenz stellen eine Serie an Einzelwerten dar (-> Merkmalsverlauf). Diese Einzelwerte sind als Abtastwerte zu gewissen Zeitpunkten anzusehen. Die Abtastung besitzt eine variierende Abtastrate. Es ist daher nötig, diese unregelmäßige Abtastung so zu interpolieren, dass zu jedem regulären Zeitschritt (z.B. jede Sekunde) ein Abtastwert (=Schlüsselobjekt-Merkmal) existiert.
- 2. Registrierungsschritt: Der Registrierungsschritt beinhaltet einen fensterbasierten Vergleich der interpolierten Merkmalsverläufe von Referenz-Sequenz und Test-Sequenz. Dabei wird für jede Position der SAD (Summe der Absoluten Differenzen) der Schlüsselobjekt-Merkmale berechnet und jene Position für die Registrierung verwendet, die den minimalen SAD aufweist.
- 1st interpolation step: The key object features of all frames in a sequence represent a series of individual values (-> feature profile). These individual values are to be viewed as samples at certain times. The sampling has a varying sampling rate. It is therefore necessary to interpolate this irregular sampling in such a way that a sampling value (= key object feature) exists for every regular time step (eg every second).
- 2. Registration step: The registration step contains a window-based comparison of the interpolated characteristic curves of the reference sequence and the test sequence. The key object characteristics are calculated for each position of the SAD (sum of the absolute differences) and that position is used for the registration that has the minimum SAD.
Mittels dieser Synchronisierung kann ein Abschnitt in der Test-Sequenz eindeutig dem entsprechenden Abschnitt in der Referenz-Sequenz zugeordnet werden. Die Synchronisierung macht einen zuverlässigen, aussagekräftigen Vergleich zweier Sequenzen möglich, selbst bei langen Aufnahmezeiten.By means of this synchronization, a section in the test sequence can be clearly assigned to the corresponding section in the reference sequence. The synchronization makes a reliable, meaningful comparison of two sequences possible, even with long recording times.
Fehlererkennung mit/ohne maschinellem LernenError detection with / without machine learning
Die Fehlererkennung dient dem Zweck, ein oder mehrere fehlerhafte Frames (in Serie oder verteilt über die Sequenz) als fehlerhaft zu erkennen und dem Tester (Mensch) zur finalen Begutachtung weiterzureichen. Dabei ist eine hohe Zahl an falsch gemeldeten Fehlern (False Positives, Fehler existiert nicht in Realität) zu vermeiden, das sonst die finale Auswertung durch den Tester erheblich erschwert wird. Grundsätzlich sind drei unterschiedliche Vorgehensweisen zur automatisierten Fehlererkennung mittels des in dieser Erfindungsmeldung beschriebenen Verfahrens möglich (vergleiche
- 1. Threshold-basierte Fehlererkennung, ohne Referenz (Test
T1 ) - 2. Threshold-basierte Fehlererkennung, mit Referenz (Test
T2 ) - 3. Machine-Learning-basierte Fehlererkennung, mit Referenz (Test
T3 )
- 1. Threshold-based error detection, without reference (test
T1 ) - 2. Threshold-based error detection, with reference (test
T2 ) - 3. Machine learning-based error detection, with reference (test
T3 )
T1: Threshold-basierte Fehlererkennung, ohne ReferenzT1: Threshold-based error detection, without reference
Dies ist der einfachste Ansatz, allerdings mit einer signifikanten Zahl an False-Positives, und nur geeignet für einige Schlüsselobjekte. Ein Algorithmus prüft die Maximal-/Minimalwerte eines Merkmalsverlaufs und entscheidet, ob sie einen definierten Threshold über-/unterschreiten. Auch das Sprungverhalten des Merkmalsverlaufs kann geprüft werden (via Differenzen, z.B. interessant bei blauer Route oder Straßennetz).
T2: Threshold-basierte Fehlererkennung, mit ReferenzT2: Threshold-based error detection, with reference
Durch Synchronisierung und Referenzsequenz-Vergleich existiert erheblich mehr Information über den erwarteten Schlüsselobjekt-Merkmalsverlauf als bei einem referenzlosen Vergleich. Für jedes Schlüsselobjekt ist somit eine präzise Differenzwertberechnung zwischen Referenz- und Test-Merkmalsverlauf möglich. Für manche Schlüsselobjekte ist eine Glättung des Differenzverlaufs (z.B. Faltung mit Gauß-Kurve) vor einer nachfolgenden Threshold-Berechnung sinnvoll.By means of synchronization and reference sequence comparison, there is considerably more information about the expected key object characteristic curve than with a referenceless comparison. For each key object, a precise calculation of the difference between the reference and test features is possible. For some key objects, it makes sense to smooth the difference curve (e.g. convolution with a Gaussian curve) before a subsequent threshold calculation.
T3: Machine-Learning-basierte Fehlererkennung, mit ReferenzT3: Machine learning based error detection, with reference
Es hat sich gezeigt, dass sich bestimmte Schlüsselobjekt-Merkmale für eine Auswertung durch statistische Klassifizierungsmethoden eignen. Es ist damit möglich, Ansätze des maschinellen Lernens (Machine Learning, ML) auf die berechneten Schlüsselobjekt-Merkmale und Schlüsselobjekt-Merkmalsverläufe anzuwenden. Zum Zwecke der Untersuchung dieser Möglichkeit wurde das sog. Novelty-Detection-Verfahren auf die Merkmale Speed & Flow sowie Street Network angewendet.It has been shown that certain key object features are suitable for an evaluation using statistical classification methods. It is thus possible to apply machine learning (ML) approaches to the calculated key object features and key object feature courses. To investigate this possibility, the so-called novelty detection method was applied to the features of Speed & Flow and Street Network.
Es sei angemerkt, dass auch mehr als zwei Schlüsselobjekt-Merkmale in ihrer Korrelation erlernt werden können. Der höherdimensionale Merkmalsraum macht allerdings eine einfache Visualisierung der Ergebnisse schwierig.It should be noted that more than two key object features can also be learned in terms of their correlation. The higher-dimensional feature space, however, makes simple visualization of the results difficult.
Das prinzipielle Vorgehen lässt sich anhand des obigen Speed-and-Flow-Beispiels (
Training mittels Referenz-SequenzTraining using a reference sequence
Anhand der Referenz-Sequenz wird z.B. die Korrelation „gewöhnlicher“ Speed & Flow-Merkmale zu Street-Network-Merkmalen (SF-vs-SN) erlernt. Jeder verarbeitete Frame ergibt einen Datenpunkt
Verarbeitung einer Test-SequenzProcessing of a test sequence
Dies sei an zwei Beispielen verdeutlicht. Beispiel 1: Verarbeitung einer fehlerfreien Test-Sequenz. Die SF-vs-SN Datenpunkte betten sich erwartungsgemäß im Bereich fehlerfreier SF-vs-SN Datenpunkte ein, d.h. innerhalb der Decision Boundary
Fehlererkennung mittels Decision Boundary 38Error detection using Decision Boundary 38
Die Fehlererkennung
Bei der in Schritt
Insgesamt zeigt das Beispiel, wie durch die Erfindung Navigationsfehler mittels Schlüsselobjekt-Analyse und Referenzsequenz-Vergleich erkannt werden können.Overall, the example shows how navigation errors can be recognized by means of key object analysis and reference sequence comparison using the invention.
Claims (9)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE102015013943.6A DE102015013943B4 (en) | 2015-10-28 | 2015-10-28 | Testing a navigation system of a motor vehicle |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE102015013943.6A DE102015013943B4 (en) | 2015-10-28 | 2015-10-28 | Testing a navigation system of a motor vehicle |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| DE102015013943A1 DE102015013943A1 (en) | 2017-05-04 |
| DE102015013943B4 true DE102015013943B4 (en) | 2020-10-22 |
Family
ID=58545742
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE102015013943.6A Expired - Fee Related DE102015013943B4 (en) | 2015-10-28 | 2015-10-28 | Testing a navigation system of a motor vehicle |
Country Status (1)
| Country | Link |
|---|---|
| DE (1) | DE102015013943B4 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN111123740B (en) * | 2019-12-19 | 2024-04-16 | 北京经纬恒润科技股份有限公司 | Hardware-in-loop test method and device |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5099322A (en) * | 1990-02-27 | 1992-03-24 | Texas Instruments Incorporated | Scene change detection system and method |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE102008012697A1 (en) | 2007-12-12 | 2009-06-18 | Daimler Ag | Method for operating a navigation system and navigation system |
| DE102012009876A1 (en) | 2011-11-10 | 2013-05-16 | Audi Ag | Method for processing an image sequence and test device for a motor vehicle |
| DE102013015145B4 (en) | 2013-09-13 | 2015-06-11 | Iav Gmbh Ingenieurgesellschaft Auto Und Verkehr | Method for testing and evaluating the quality of digital cards |
-
2015
- 2015-10-28 DE DE102015013943.6A patent/DE102015013943B4/en not_active Expired - Fee Related
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5099322A (en) * | 1990-02-27 | 1992-03-24 | Texas Instruments Incorporated | Scene change detection system and method |
Non-Patent Citations (1)
| Title |
|---|
| PIMENTEL, Marco A. F. [et al.]: A review of novelty detection. In: Signal Processing, Vol. 99, 2014, S. 215-249. – ISSN 0165-1684 * |
Also Published As
| Publication number | Publication date |
|---|---|
| DE102015013943A1 (en) | 2017-05-04 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE112013006312B4 (en) | Methods and systems for improved automated visual inspection of a physical asset | |
| DE112012001984B4 (en) | Integrate video metadata into 3D models | |
| DE112018004797T5 (en) | VIEWPOINT INVARIANT OBJECT DETECTION THROUGH SYNTHETIZING AND DOMAIN ADAPTATION | |
| DE112020007035T5 (en) | Learning device, learning method, inference device, program and storage medium | |
| EP3438901A1 (en) | Test drive scenario database system for realistic virtual test drive scenarios | |
| DE102018128158A1 (en) | DEVICE FOR INSPECTION OF THE APPEARANCE PICTURE | |
| EP3729213B1 (en) | Behaviour model of an environment sensor | |
| EP2034461A2 (en) | Method for detecting and/or tracking moved objects in a monitoring zone with stoppers, device and computer program | |
| DE112016001829T5 (en) | Automatically associate images using visual property references to related applications | |
| EP3757792A2 (en) | Method and device for testing a system, for selecting real tests and for testing systems with machine learning components | |
| DE102019208735A1 (en) | Method for operating a driver assistance system for a vehicle and a driver assistance system for a vehicle | |
| DE102019208733A1 (en) | Method and generator for generating disturbed input data for a neural network | |
| WO2018077745A1 (en) | Method for analysing object labels in images on the basis of models | |
| DE102018205561A1 (en) | Device for classifying signals | |
| DE102015013943B4 (en) | Testing a navigation system of a motor vehicle | |
| EP4250246A1 (en) | Computer-implemented method for detecting an object in an interior of a public transportation vehicle | |
| DE102018114231A1 (en) | Method and system for capturing objects using at least one image of an area of interest (ROI) | |
| DE102017217063A1 (en) | A recognition system, method of operation and training method for generating a 3D model with reference data | |
| DE102015213463A1 (en) | Method for verifying network devices and network | |
| EP3754544A1 (en) | Detection system, work method and training method | |
| DE102018128640A1 (en) | Device for estimating a noise generation cause | |
| DE102023102196A1 (en) | COMPUTER-IMPLEMENTED METHOD AND DEVICE FOR CHECKING CORRECTNESS OF AN ASSEMBLY | |
| DE102014004553B4 (en) | Procedure for testing a control unit | |
| DE102009001870A1 (en) | Image processing device for monitoring system for processing of monitoring images of monitoring scene, has foreground image or actual moved foreground objects, and flow module, which is formed on basis of monitoring picture | |
| EP4296970A1 (en) | Computer-implemented method and system for creating a virtual vehicle environment |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| R012 | Request for examination validly filed | ||
| R016 | Response to examination communication | ||
| R081 | Change of applicant/patentee |
Owner name: AUDI AG, DE Free format text: FORMER OWNERS: AUDI AG, 85045 INGOLSTADT, DE; FRIEDRICH-ALEXANDER-UNIVERSITAET ERLANGEN-NUERNBERG, 91054 ERLANGEN, DE |
|
| R018 | Grant decision by examination section/examining division | ||
| R020 | Patent grant now final | ||
| R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |