DE102016119538A1 - Low-latency test stand for an image processing system - Google Patents
Low-latency test stand for an image processing system Download PDFInfo
- Publication number
- DE102016119538A1 DE102016119538A1 DE102016119538.3A DE102016119538A DE102016119538A1 DE 102016119538 A1 DE102016119538 A1 DE 102016119538A1 DE 102016119538 A DE102016119538 A DE 102016119538A DE 102016119538 A1 DE102016119538 A1 DE 102016119538A1
- Authority
- DE
- Germany
- Prior art keywords
- image data
- image
- time
- test bench
- processing system
- 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.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01M—TESTING STATIC OR DYNAMIC BALANCE OF MACHINES OR STRUCTURES; TESTING OF STRUCTURES OR APPARATUS, NOT OTHERWISE PROVIDED FOR
- G01M17/00—Testing of vehicles
- G01M17/007—Wheeled or endless-tracked vehicles
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Traffic Control Systems (AREA)
Abstract
Prüfstand für ein bildverarbeitendes System mit einer ersten Recheneinheit zur Abarbeitung eines Umgebungsmodells mit einem virtuellen Objekt, mit einer zweiten Recheneinheit zur Berechnung einer graphischen Projektion des Umgebungsmodells auf Basis einer Position des virtuellen Objekts, und mit einem Adaptermodul zur Verarbeitung der Bilddaten durch Emulation einer bildgebenden Sensorik eines bildverarbeitenden Systems und zur Einspeisung der Bilddaten in das bildverarbeitende System. Die erste Recheneinheit ist eingerichtet, um von dem bildverarbeitenden System auf Basis der ersten Bilddaten berechnete Steuerdaten einzulesen und unter Berücksichtigung der ersten Bilddaten dem virtuellen Objekt einen neuen Geschwindigkeitsvektor zuzuordnen. Der Prüfstand ist eingerichtet, um die Länge Δt des vom Beginn der Berechnung der Bilddaten durch die zweite Recheneinheit bis zum Abschluss der Verarbeitung der Bilddaten durch das Adaptermodul verstreichenden Zeitintervalls zu messen. Die erste Recheneinheit ist eingerichtet, um anhand der Länge Δt eine Latenz L der Bilddaten abzuschätzen, anhand der abgeschätzten Latenz L eine extrapolierte Position des virtuellen Objekts zu ermitteln und der zweiten Recheneinheit für die Berechnung der Bilddaten die extrapolierte Position des virtuellen Objekts zu übermitteln. Test bench for an image processing system with a first processor for processing an environment model with a virtual object, with a second processor for calculating a graphical projection of the environment model based on a position of the virtual object, and with an adapter module for processing the image data by emulation of an imaging sensor an image processing system and for feeding the image data in the image processing system. The first arithmetic unit is set up to read in control data calculated by the image processing system on the basis of the first image data and to assign a new velocity vector to the virtual object taking into account the first image data. The test stand is set up to measure the length .DELTA.t of the time interval elapsed from the beginning of the calculation of the image data by the second arithmetic unit until the completion of the processing of the image data by the adapter module. The first arithmetic unit is set up to use the length Δt to estimate a latency L of the image data, to determine an extrapolated position of the virtual object based on the estimated latency L, and to transmit the extrapolated position of the virtual object to the second arithmetic unit for the calculation of the image data.
Description
Die Erfindung betrifft Prüfstände für bildverarbeitende Systeme, insbesondere für bildverarbeitende Assistenzsysteme oder automatische Steuerungen von Vehikeln. Unter einem Vehikel ist eine beliebige zur Fortbewegung aus eigener Kraft ausgestaltete Vorrichtung zu verstehen, beispielsweise ein Landfahrzeug, ein Fluggerät, ein Boot oder ein Tauchboot.The invention relates to test stands for image processing systems, in particular for image-processing assistance systems or automatic control of vehicles. A vehicle is to be understood as any device designed to move on its own, for example a land vehicle, an aircraft, a boat or a submersible.
Als Teil der Entwicklungs- und Evaluierungskette sicherheitskritischer elektronischer Steuergeräte ist seit vielen Jahren die Hardware-in-the-Loop-Simulation etabliert. Dabei wird ein Prototyp des Steuergeräts mit einem Simulator verbunden, der die Umwelt des Steuergeräts anhand einer Software simuliert, dabei Daten für Dateneingänge des Steuergeräts erzeugt, beispielsweise durch Simulation von Sensoren, und in die Dateneingänge einspeist. Umgekehrt liest der Simulator Daten von Datenausgängen des Steuergeräts aus und berücksichtigt sie bei der Berechnung des nächsten Zeitschritts der Simulation, beispielsweise durch die Simulation von Aktoren. Ein derartiger Simulator kann auch als Prüfstand ausgestaltet sein und umfasst dann neben dem Steuergerät noch weitere physische Komponenten, die mit dem Steuergerät zusammenwirken und gleichermaßen in die Simulation eingebunden sind, im Fall eines automotiven Steuergeräts beispielsweise ein Lenksystem, ein Motor oder eine bildgebende Sensorik. Das Steuergerät arbeitet demnach in einer weitgehend virtuellen Umgebung und ist in dieser gefahrlos und reproduzierbar in unterschiedlichen Situationen testbar.As part of the development and evaluation chain of safety-critical electronic control units, hardware-in-the-loop simulation has been established for many years. In this case, a prototype of the controller is connected to a simulator that simulates the environment of the controller using software, thereby generating data for data inputs of the controller, for example by simulation of sensors, and fed into the data inputs. Conversely, the simulator reads data from data outputs of the controller and considers them in the calculation of the next time step of the simulation, for example by the simulation of actuators. Such a simulator can also be designed as a test stand and then comprises, in addition to the control unit, further physical components which cooperate with the control unit and are equally integrated in the simulation, for example a steering system, a motor or an imaging sensor in the case of an automotive control unit. The control unit thus operates in a largely virtual environment and can be tested safely and reproducibly in different situations.
Weil das Steuergerät für die Steuerung, Regelung oder Überwachung eines physischen Systems vorgesehen ist, arbeitet es in harter Echtzeit. Dementsprechend muss auch der Simulator in harter Echtzeit arbeiten, d.h. innerhalb eines festgelegten Zeitintervalls, beispielsweise 1ms, muss die Berechnung aller von dem Steuergerät benötigten Daten garantiert abgeschlossen sein.Because the controller is designed to control, control or monitor a physical system, it works in hard real time. Accordingly, the simulator must also work in hard real time, i. within a fixed time interval, for example 1 ms, the calculation of all data required by the control unit must be guaranteed to be completed.
In jüngerer Zeit hat die Automobilindustrie eine Vielzahl von Fahrassistenzsystemen entwickelt, die mittels bildgebender Sensoren unter Anwendung unterschiedlicher Techniken Bilder der Fahrzeugumgebung erstellen, beispielsweise RADAR-Bilder, LIDAR-Bilder oder linsenbasierte optische Bilder, die Bilder durch Steuergeräte einlesen, verwerten und interpretieren und auf Basis der eingelesenen Bilder in das Fahrverhalten eingreifen oder, im Falle experimenteller autonomer Fahrzeuge, das Fahrzeug sogar unabhängig von einem menschlichen Fahrer selbständig steuern. Beispiele sind radarbasierte adaptive Tempomaten, Fußgängererkennungen oder Verkehrsschilderkennungen.More recently, the automotive industry has developed a variety of driver assistance systems that use imaging techniques to create images of the vehicle environment using various techniques, such as RADAR images, LIDAR images, or lens-based optical images that are read, interpreted, and interpreted by ECUs The read images intervene in the driving behavior or, in the case of experimental autonomous vehicles, independently control the vehicle independently of a human driver. Examples are radar-based adaptive cruise control, pedestrian detection or traffic sign recognition.
Ein Prüfstand für derartige Assistenzsysteme muss demnach ausgestaltet sein, die vom Steuergerät erwarteten Bilder zu berechnen und dem Steuergerät zur Verfügung zu stellen. Dabei stellt sich das Problem, dass die Berechnung der Bilder sehr rechenaufwendig ist und entsprechend Zeit in Anspruch nimmt. Die Berechnung einer zweidimensionalen Projektion, wie sie ein bildgebender Sensor wahrnimmt, aus einem dreidimensionalen Umgebungsmodell, wie es in der Simulationssoftware hinterlegt ist, kann nach aktuellem Stand der Technik durchaus 50 bis 100ms in Anspruch nehmen. Eine derartig hohe Latenz ist mit den oben geschilderten Anforderungen an die Echtzeit eines Prüfstands nicht vereinbar und beeinträchtigt die Aussagekraft der Simulationsergebnisse.A test stand for such assistance systems must therefore be designed to calculate the images expected by the control unit and to make them available to the control unit. This raises the problem that the calculation of the images is very computationally intensive and takes time accordingly. The calculation of a two-dimensional projection, as perceived by an imaging sensor, from a three-dimensional environment model, as stored in the simulation software, can certainly take 50 to 100 ms according to the current state of the art. Such a high latency is incompatible with the above-described requirements for the real-time of a test bench and impairs the informative value of the simulation results.
Die deutsche Gebrauchsmusterschrift
Vor diesem Hintergrund ist es die Aufgabe der Erfindung, die Ungenauigkeiten durch die Latenz, die aufgrund der Berechnung von Bilddaten für ein bildverarbeitendes System in einem Prüfstand entsteht, zu verringern. Die Aufgabe wird durch einen Prüfstand mit den Merkmalen des Anspruchs 1 bzw. durch ein Verfahren mit den Merkmalen des Anspruchs 15 gelöst. Vorteilhafte Ausgestaltungen sind Gegenstände abhängiger Ansprüche.Against this background, it is the object of the invention to reduce the inaccuracies caused by the calculation of image data for an image processing system in a test bench due to the latency. The object is achieved by a test stand having the features of claim 1 or by a method having the features of claim 15. Advantageous embodiments are subject-dependent claims.
Im Kern beschreibt die Erfindung eine Methode zur zumindest teilweisen Kompensation der Latenz durch eine zeitliche Extrapolation des auf dem Simulator hinterlegten Umgebungsmodells, basierend auf einer Messung der Latenz. Im einzelnen ist die Erfindung ein Prüfstand mit einer ersten Recheneinheit, insbesondere einem Prozessor (CPU), die mit einer Simulationssoftware für ein Umgebungsmodell programmiert ist. Die Simulationssoftware ist zumindest eingerichtet, um für ein erstes virtuelles Objekt in dem Umgebungsmodell, beispielsweise ein virtuelles Fahrzeug, eine erste Position und einen ersten Geschwindigkeitsvektor zu berechnen, bevorzugt zyklisch und in harter Echtzeit, und dem ersten virtuellen Objekt zuzuordnen. Eine zweite Recheneinheit des Prüfstands, die bevorzugt einen Graphikprozessor (GPU) zumindest umfasst, ist eingerichtet, um erste Bilddaten zu berechnen, die eine zweidimensionale graphische erste Projektion des Umgebungsmodells repräsentieren und insbesondere ein Bild für einen bildgebenden Sensor des ersten virtuellen Objekts nachstellen. Dazu ist die zweite Recheneinheit eingerichtet, um zyklisch eine erste Position des ersten virtuellen Objekts einzulesen und die ersten Bilddaten basierend auf dieser Position zu berechnen.In essence, the invention describes a method for the at least partial compensation of the latency by a time extrapolation of the stored on the simulator environment model, based on a measurement of latency. In detail, the invention is a test stand having a first computing unit, in particular a processor (CPU), which is programmed with a simulation software for an environment model. The simulation software is at least configured to calculate a first position and a first velocity vector for a first virtual object in the environment model, for example a virtual vehicle, preferably cyclically and in hard real time, and to associate it with the first virtual object. A second processor unit of the test bench, which preferably comprises at least one graphics processor (GPU), is set up to calculate first image data representing a two-dimensional graphic first projection of the environment model and, in particular, readjust an image for an imaging sensor of the first virtual object. This is the second Arithmetic unit configured to cyclically read in a first position of the first virtual object and to calculate the first image data based on this position.
Der Prüfstand umfasst weiterhin ein Adaptermodul zur Einbindung des bildverarbeitenden Systems in den Prüfstand bzw. in die Simulation. Das Adaptermodul ist eingerichtet, um die ersten Bilddaten einzulesen, eine erste bildgebende Sensorik des bildverarbeitenden Systems zu emulieren, um die ersten Bilddaten zu verarbeiten, und die verarbeiteten ersten Bilddaten in das bildverarbeitende System einzuspeisen.The test bench also includes an adapter module for integrating the image processing system in the test bench or in the simulation. The adapter module is configured to read the first image data, to emulate a first imaging sensor of the image processing system to process the first image data, and to feed the processed first image data into the image processing system.
Würde also das bildverarbeitende System als Beispiel das Bild einer optischen, linsenbasierten Kamera verarbeiten, dann würde das Adaptermodul die ersten Bilddaten aufnehmen und verarbeiten, wobei die verarbeiteten ersten Bilddaten den Daten entsprechen, die der optische Sensor der Kamera in der durch die Simulationssoftware nachgestellten Situation in das bildverarbeitende System einspeisen würde. Das Adaptermodul wirkt während der Simulation also sozusagen als Ersatz für die bildgebende Sensorik des bildverarbeitenden Systems, wobei es die bildgebende Sensorik emuliert und das bildgebende System anstelle der bildgebenden Sensorik mit erwartungsgemäßen Bilddaten versorgt.Thus, if the image processing system were to process the image of an optical, lens-based camera as an example, then the adapter module would capture and process the first image data, the processed first image data corresponding to the data that the camera's optical sensor in the situation simulated by the simulation software would feed the image processing system. During the simulation, the adapter module thus acts as a replacement for the imaging sensor system of the image processing system, where it emulates the imaging sensor system and supplies the imaging system with expected image data instead of the imaging sensor system.
Weiterhin ist die erste Recheneinheit eingerichtet, um von dem bildverarbeitenden System auf Basis der verarbeiteten ersten Bilddaten berechnete Steuerdaten für eine Aktuatorik einzulesen und unter Berücksichtigung der Steuerdaten dem ersten virtuellen Objekt einen neuen Geschwindigkeitsvektor zuzuordnen. Wenn also beispielsweise das bildverarbeitende System ein Fahrassistenzsystem ist und aufgrund einer erkannten Gefahrensituation Steuerdaten ausgibt, um ein automatisches Bremsmanöver einzuleiten, dann ist die erste Recheneinheit eingerichtet, um das Bremsmanöver mit dem ersten virtuellen Objekt, in diesem Fall ein virtuelles Fahrzeug, in dem Umgebungsmodell nachzubilden.Furthermore, the first arithmetic unit is set up to read in control data calculated by the image processing system on the basis of the processed first image data for an actuator system and to assign a new velocity vector to the first virtual object taking into account the control data. Thus, for example, if the image processing system is a driver assistance system and outputs control data due to a detected hazard situation to initiate an automatic braking maneuver, then the first processing unit is configured to replicate the braking maneuver with the first virtual object, in this case a virtual vehicle, in the environment model ,
Um die durch die Berechnung der ersten Bilddaten auftretende Latenz zu kompensieren, ist der Prüfstand eingerichtet, um die Länge Δt des Zeitintervalls zu ermitteln, das vom Beginn der Berechnung der ersten Bilddaten durch die zweite Recheneinheit bis zum Abschluss der Verarbeitung der ersten Bilddaten durch das Adaptermodul verstreicht. Die gemessene Länge Δt wird an einer Speicheradresse hinterlegt, von der ersten Recheneinheit ausgelesen und genutzt, um die Latenz L der ersten Bilddaten abzuschätzen. Die abgeschätzte Latenz L wird von der ersten Recheneinheit bzw. der auf ihr laufenden Simulationssoftware genutzt, um unter Berücksichtigung der ersten Position x(t) des ersten virtuellen Objekts, dessen ersten Geschwindigkeitsvektors v(t) und der abgeschätzten Latenz L eine erste extrapolierte Position x(t + L) zu ermitteln.In order to compensate for the latency arising from the calculation of the first image data, the test stand is set up to determine the length .DELTA.t of the time interval from the start of the calculation of the first image data by the second arithmetic unit to the completion of the processing of the first image data by the adapter module elapses. The measured length .DELTA.t is stored at a memory address, read by the first processing unit and used to estimate the latency L of the first image data. The estimated latency L is used by the first computing unit or the simulation software running on it, in order to take into account the first position x (t) of the first virtual object, its first velocity vector v (t) and the estimated latency L, a first extrapolated position x (t + L) to determine.
Die erste extrapolierte Position x(t + L) ist demnach eine Abschätzung der zukünftigen Position des ersten virtuellen Objekts zum Zeitpunkt t + L, wobei t der gegenwärtige Zeitpunkt in der Systemzeit bzw. in der Simulation ist. (Da die Simulation in harter Echtzeit abläuft, ist das gleichbedeutend.) Die zweite Recheneinheit ist nun eingerichtet, um für die Berechnung der ersten Bilddaten nicht die aktuelle erste Position x(t) einzulesen, sondern die erste extrapolierte Position x(t + L). Die Latenz der ersten Bilddaten wird also zumindest teilweise kompensiert, indem die zweite Recheneinheit bei der Berechnung der ersten Bilddaten von vornherein von einem zukünftigen Zustand des simulierten Umgebungsmodells ausgeht. Wenn die so berechneten ersten Bilddaten schließlich in das bildverarbeitende System eingespeist werden, hat im Idealfall auch das Umgebungsmodell auf der ersten Recheneinheit diesen zukünftigen Zustand erreicht, sodass die ersten Bilddaten in dem bildverarbeitenden System zum aktuellen Zustand des Umgebungsmodells passen und der Prüfstand realistische Daten liefert.The first extrapolated position x (t + L) is therefore an estimate of the future position of the first virtual object at time t + L, where t is the current time in system time or simulation. (Since the simulation runs in hard real-time, this is synonymous.) The second arithmetic unit is now set up to read in the first extrapolated position x (t + L) instead of the current first position x (t) for the calculation of the first image data. , The latency of the first image data is thus at least partially compensated by the second computing unit emanating from a future state of the simulated environment model in the calculation of the first image data from the outset. If the first image data thus calculated are finally fed into the image processing system, ideally the environment model on the first computing unit has reached this future state, so that the first image data in the image processing system matches the current state of the environment model and the test bench provides realistic data.
Für die Ermittlung der ersten extrapolierten Position kann prinzipiell ein beliebiges Verfahren zur numerischen Integration verwendet werden, beispielsweise ein Runge-Kutta-Verfahren erster oder höherer Ordnung. Die Erfindung garantiert keine vollständige Kompensation der durch die Latenz der ersten Bilddaten entstehenden Ungenauigkeiten. Weil für die Abschätzung der ersten extrapolierten Position bevorzugt über die gesamte abgeschätzte Latenz L integriert wird und die Länge von L im Normalfall deutlich größer ist als ein Zeitschritt in der Simulation des Umgebungsmodells, ist nicht zu erwarten, dass die erste extrapolierte Position x(t + L) der tatsächlichen Position entspricht, die dem virtuellen Objekt zum Zeitpunkt t + L zugeordnet sein wird. Zudem ist es möglich, dass die abgeschätzte Latenz L geringfügig von der tatsächlichen Latenz der ersten Bilddaten abweicht, weil beispielsweise der Rechenaufwand zur Berechnung der ersten Bilddaten abhängig vom Zustand des Umgebungsmodells veränderlich ist. Die durch die genannten Effekte auftretenden Ungenauigkeiten sind aber kleiner als die Ungenauigkeiten, die die unkompensierte Latenz der ersten Bilddaten bewirken würde, sodass anhand der Erfindung zumindest eine Verbesserung der Simulationsergebnisse erzielbar ist.In principle, any method for numerical integration can be used to determine the first extrapolated position, for example a first-order or higher-order Runge-Kutta method. The invention does not guarantee complete compensation of the inaccuracies resulting from the latency of the first image data. Because the estimation of the first extrapolated position is preferably integrated over the entire estimated latency L and the length of L is normally significantly larger than a time step in the simulation of the environment model, it is not to be expected that the first extrapolated position x (t + L) corresponds to the actual position that will be assigned to the virtual object at time t + L. In addition, it is possible that the estimated latency L deviates slightly from the actual latency of the first image data because, for example, the computational effort for calculating the first image data is variable depending on the state of the environment model. However, the inaccuracies occurring due to the mentioned effects are smaller than the inaccuracies which the uncompensated latency of the first image data would cause, so that at least an improvement of the simulation results can be achieved by means of the invention.
Insbesondere kann das erste virtuelle Objekt als ein virtuelles Vehikel und das bildverarbeitende System als eine automatische Steuerung oder als ein Assistenzsystem für ein Vehikel ausgestaltet sein.In particular, the first virtual object may be configured as a virtual vehicle and the image processing system as an automatic control or as an assistance system for a vehicle.
Bevorzugt ist die zweite Recheneinheit ausgestaltet, die ersten Bilddaten derart zu berechnen, dass die erste Projektion ein Sichtfeld der ersten bildgebenden Sensorik nachbildet. Dazu erfolgt die Berechnung der ersten Bilddaten durch die zweite Recheneinheit unter der Annahme, dass das bildverarbeitende System ein bildverarbeitendes System des ersten virtuellen Objekts ist und das die erste bildgebende Sensorik an einer wohlbestimmten Stelle des ersten virtuellen Objekts verbaut ist. Um Rechenaufwand einzusparen und dadurch die Latenz der ersten Bilddaten von vornherein möglichst gering zu halten, ist die zweite Recheneinheit eingerichtet, für die Berechnung der ersten Bilddaten ausschließlich virtuelle Objekte des Umgebungsmodells zu berücksichtigen, die unter dieser Annahme innerhalb des Sichtfelds der ersten bildgebenden Sensorik liegen. In einer möglichen Ausgestaltung ist das bildverarbeitende System beispielsweise ein radarbasierter adaptiver Tempomat für ein Automobil, und die erste bildgebende Sensorik wird dementsprechend als Teil eines Radarsystems angenommen, das in dem Umgebungsmodell an der Frontseite des ersten virtuellen Objekts, in diesem Fall eines virtuellen Automobils, angeordnet ist. Wenn das Radarsystem technisch nur ausgestaltet ist, um Objekte innerhalb einer Reichweite von beispielsweise 200m zu erkennen, dann sollten für die Berechnung der ersten Bilddaten nur virtuelle Objekte in dem Umgebungsmodel berücksichtigt werden, die sich innerhalb der Reichweite von 200m und innerhalb des Sichtkegels des Radarsystems befinden.Preferably, the second arithmetic unit is configured to calculate the first image data in such a way that the first projection simulates a field of view of the first imaging sensor. For this purpose, the first image data is calculated by the second arithmetic unit on the assumption that the image processing system is an image processing system of the first virtual object and that the first imaging sensor is installed at a well-defined location of the first virtual object. In order to save computational effort and thereby keep the latency of the first image data from the outset as low as possible, the second arithmetic unit is set up to take into account exclusively virtual objects of the environment model for the calculation of the first image data, which under this assumption lie within the field of view of the first imaging sensor. For example, in one possible embodiment, the image processing system is a radar-based adaptive cruise control for an automobile and the first imaging sensor is accordingly assumed to be part of a radar system located in the environmental model on the front of the first virtual object, in this case a virtual automobile is. If the radar system is technically designed to detect objects within a range of, for example, 200m, then only the virtual objects in the environment model that are within the range of 200m and within the sight cone of the radar system should be considered for the calculation of the first image data ,
Verallgemeinert ist unter dem Sichtfeld einer bildgebenden Sensorik die Gesamtheit aller von der bildgebenden Sensorik zu einem gegebenen Zeitpunkt sichtbaren Objekte in der durch die bildgebende Sensorik wahrgenommenen Form zu verstehen, und die zweite Recheneinheit ist bevorzugt ausgestaltet, für die Berechnung der ersten Bilddaten von vornherein nur die Informationen zu berücksichtigen, die dem Sichtfeld der ersten bildgebenden Sensorik gemäß dieser Definition entnehmbar sind. Für das oben genannte Beispiel bedeutet das zum Beispiel weiterhin, dass die ersten Bilddaten für das Radarsystem keine Information über die Farbe der in der ersten Projektion sichtbaren virtuellen Objekte beinhalten sollten und dass besagte Informationen über Farben, selbst wenn sie in dem Umgebungsmodell vorhanden sind, bei der Berechnung der ersten Bilddaten von vornherein nicht berücksichtigt werden.Generally speaking, the entirety of all objects visible to the imaging sensor system at a given time in the form perceived by the imaging sensor system is to be understood under the field of vision of an imaging sensor, and the second arithmetic unit is preferably configured from the outset only for the calculation of the first image data To take into account information that can be removed from the field of view of the first imaging sensor according to this definition. For example, for the above example, this means that the first image data for the radar system should not contain information about the color of the virtual objects visible in the first projection, and that said information about colors, even if present in the environment model the calculation of the first image data from the outset are not taken into account.
Die Messung der Länge Δt des Zeitintervalls erfolgt in einer Ausführung derart, dass der Prüfstand, insbesondere die zweite Recheneinheit, zu Beginn der Berechnung der ersten Bilddaten eine Systemzeit des Prüfstands ausliest und die ersten Bilddaten mit einem Zeitstempel versieht, in dem die ausgelesene Systemzeit hinterlegt ist. Nachdem das Adaptermodul die ersten Bilddaten verarbeitet hat und bevor das Adaptermodul die ersten Bilddaten in das bildverarbeitende System einspeist, liest das Adaptermodul den Zeitstempel aus, vergleicht die in dem Zeitstempel hinterlegte Systemzeit mit einer aktuellen Systemzeit, ermittelt durch Subtraktion beider Systemzeiten die Länge Δt des Zeitintervalls und hinterlegt die ermittelte Länge Δt des Zeitintervalls an einer für die erste Recheneinheit zugänglichen Speicheradresse. Die erste Recheneinheit ist eingerichtet, um die ermittelte Länge Δt des Zeitintervalls an der Speicheradresse auszulesen.The measurement of the length .DELTA.t of the time interval is carried out in an embodiment such that the test stand, at the beginning of the calculation of the first image data reads out a system time of the test bench and provides the first image data with a time stamp in which the read system time is stored , After the adapter module has processed the first image data and before the adapter module feeds the first image data into the image processing system, the adapter module reads the time stamp, compares the system time stored in the time stamp with a current system time, determines by subtracting both system times the length Δt of the time interval and stores the determined length .DELTA.t of the time interval at a memory address accessible to the first arithmetic unit. The first arithmetic unit is set up to read out the determined length Δt of the time interval at the memory address.
In einer anderen Ausführung erfolgt die Zeitmessung anhand einer digitalen Identifikation, die der Prüfstand, insbesondere die erste Recheneinheit oder die zweite Recheneinheit, für die ersten Bilddaten erstellt. Die digitale Identifikation wird vor der Berechnung der ersten Bilddaten erstellt und zusammen mit einer ersten Systemzeit des Prüfstands dem Adaptermodul übermittelt. Die erste Systemzeit ist dabei die Systemzeit zum Zeitpunkt der Übermittlung der digitalen Identifikation. Nachdem die zweite Recheneinheit die ersten Bilddaten berechnet hat, versieht sie die zweiten Bilddaten mit der digitalen Identifikation und übermittelt sie, zusammen mit der digitalen Identifikation, dem Adaptermodul. Das Adaptermodul ist eingerichtet, um die digitale Identifikation aus den ersten Bilddaten auszulesen und die ersten Bilddaten anhand der digitalen Identifikation der ersten Systemzeit zuzuordnen. Nachdem das Adaptermodul die Verarbeitung der ersten Bilddaten abgeschlossen hat, vergleicht es die aktuelle Systemzeit des Prüfstands mit der ersten Systemzeit, um die Länge Δt des Zeitintervalls zu ermitteln, und hinterlegt die Länge Δt an einer Speicheradresse.In another embodiment, the time measurement takes place on the basis of a digital identification, which the test stand, in particular the first arithmetic unit or the second arithmetic unit, generates for the first image data. The digital identification is created before the calculation of the first image data and transmitted to the adapter module together with a first system time of the test bench. The first system time is the system time at the time of transmission of the digital identification. After the second computing unit has calculated the first image data, it provides the second image data with the digital identification and transmits it, together with the digital identification, the adapter module. The adapter module is set up to read the digital identification from the first image data and to assign the first image data based on the digital identification of the first system time. After the adapter module finishes processing the first image data, it compares the current system time of the test bench with the first system time to determine the length .DELTA.t of the time interval and stores the length .DELTA.t at a memory address.
Voraussetzung für beide Arten der Messung ist, dass der Prüfstand über eine hinreichend schnelle Synchronisation der Systemzeit zwischen den Komponenten des Prüfstands verfügt.Prerequisite for both types of measurement is that the test bench has a sufficiently fast synchronization of the system time between the components of the test bench.
Vorteilhaft sind die für die Erfindung wesentlichen Komponenten des Prüfstands jeweils durch eine echtzeitfähige Datenverbindung verbunden, die für das Streaming von Daten ausgestaltet ist, d.h. für die Übertragung eines kontinuierlichen Stroms großer Datenmengen in Echtzeit. Konkret ist demnach zwischen der ersten Recheneinheit und der zweiten Recheneinheit eine echtzeitfähige erste Datenverbindung eingerichtet, zwischen der zweiten Recheneinheit und dem Adaptermodul eine echtzeitfähige zweite Datenverbindung eingerichtet, bevorzugt eine HDMI-Verbindung, und zwischen dem Adaptermodul und der ersten Recheneinheit eine echtzeitfähige dritte Datenverbindung eingerichtet, bevorzugt eine Ethernet-Verbindung.Advantageously, the test bench components essential to the invention are each connected by a real-time data link designed to stream data, i. for the transmission of a continuous stream of large amounts of data in real time. Specifically, therefore, a real-time capable first data connection is set up between the first processing unit and the second processing unit, a real-time capable second data connection is established between the second processing unit and the adapter module, preferably an HDMI connection, and a real-time capable third data connection is set up between the adapter module and the first processing unit. preferably an Ethernet connection.
Besonders bevorzugt ist die erste Datenverbindung durch einen echtzeitfähigen Bus des Prüfstands bereitgestellt. Diese Ausgestaltung ist insofern vorteilhaft, dass sie eine Ausgestaltung der zweiten Recheneinheit als integralen Bestandteil des Prüfstands erlaubt und sich dadurch günstig auf die Latenz auswirkt, weil der interne Bus eines typischen Hardware-in-the-Loop-Simulators auf Echtzeittauglichkeit, d.h. geringe Latenz und geringen Jitter, optimiert ist.Particularly preferably, the first data connection is provided by a real-time capable bus of the test bench. This embodiment is advantageous in that it is an embodiment of the second arithmetic unit as an integral part of Allows test rigs and thus has a favorable effect on the latency, because the internal bus of a typical hardware-in-the-loop simulator is optimized for real-time performance, ie low latency and low jitter.
Weiterhin vorteilhaft ist die zweite Recheneinheit eingerichtet, um optional neben der ersten bildgebenden Sensorik zumindest auch eine zweite bildgebende Sensorik zu bedienen. Zum Beispiel kann das bildverarbeitende System eine Stereokamera beinhalten, sodass die zweite Recheneinheit zwei optische Bilder berechnen und das Adaptermodul entsprechend zwei optische Bilder in das bildverarbeitende System einspeisen muss. In einem weiteren Beispiel kann das bildverarbeitende System mehrere Steuergeräte mit mehreren bildgebenden Sensoriken beinhalten. Darum ist in einer vorteilhaften Ausgestaltung die zweite Recheneinheit eingerichtet, um parallel zur Berechnung der ersten Bilddaten oder nach der Berechnung der ersten Bilddaten zumindest zweite Bilddaten zu berechnen, die eine zweidimensionale graphische zweite Projektion des Umgebungsmodells für eine zweite bildgebende Sensorik des bildverarbeitenden Systems repräsentieren. Die Gesamtheit der Bilddaten wird dann bevorzugt gebündelt übertragen. Dazu ist die zweite Recheneinheit ausgestaltet, um ein Datenpaket zu erstellen, das die ersten Bilddaten, die zweiten Bilddaten und, sofern vorhanden, weitere Bilddaten enthält. Wenn die Messung des Zeitintervalls Δt mittels eines Zeitstempels erfolgt, wird das Datenpaket mit dem Zeitstempel versehen. Das Adaptermodul ist eingerichtet, um das Datenpaket einzulesen und zusätzlich zu der bereits beschriebenen Verarbeitung der ersten Bilddaten auch die zweiten Bilddaten durch Emulation der zweiten bildgebenden Sensorik zu verarbeiten und die verarbeiteten zweiten Bilddaten in das bildverarbeitende System einzuspeisen.Further advantageously, the second arithmetic unit is set up to optionally operate at least one second imaging sensor in addition to the first imaging sensor. For example, the image processing system may include a stereo camera such that the second processing unit calculates two optical images and the adapter module must feed two optical images into the image processing system accordingly. In another example, the image processing system may include multiple controllers with multiple imaging sensors. Therefore, in an advantageous embodiment, the second arithmetic unit is configured to calculate at least second image data parallel to the calculation of the first image data or after the calculation of the first image data, which represent a two-dimensional graphic second projection of the environment model for a second imaging sensor of the image processing system. The entirety of the image data is then preferably transmitted bundled. For this purpose, the second arithmetic unit is designed to create a data packet containing the first image data, the second image data and, if present, further image data. If the measurement of the time interval .DELTA.t by means of a time stamp, the data packet is provided with the time stamp. The adapter module is set up to read in the data packet and, in addition to the already described processing of the first image data, also to process the second image data by emulation of the second imaging sensor system and to feed the processed second image data into the image processing system.
Bevorzugt ist die abgeschätzte Latenz L keine einmalig ausgemessene statische Größe, sondern die erste Recheneinheit ist eingerichtet, um den Wert der abgeschätzten Latenz L während der laufenden Simulation dynamisch anzupassen. Das heißt, der Prüfstand ist eingerichtet, um die Länge Δt des Zeitintervalls zyklisch zu ermitteln und mittels der ersten Recheneinheit zyklisch einzulesen, um den Wert von L während der Simulation dynamisch an die aktuelle Latenz der ersten Bilddaten anzupassen.Preferably, the estimated latency L is not a once measured static quantity, but the first arithmetic unit is set up to dynamically adjust the value of the estimated latency L during the current simulation. That is, the test stand is set up to cyclically determine the length .DELTA.t of the time interval and cyclically read in by means of the first arithmetic unit to dynamically adapt the value of L to the current latency of the first image data during the simulation.
In einer einfachen Ausführung geschieht das derart, dass die erste Recheneinheit die abgeschätzte Latenz L zyklisch mit dem aktuellen Wert der Länge Δt des Zeitintervalls gleichsetzt, also L = Δt setzt. In einer anderen Ausführung ist die erste Recheneinheit eingerichtet, eine Vielzahl von in der Vergangenheit gemessenen Werten für Δt zu speichern und aus der Vielzahl von Werten für Δt die Latenz L zu berechnen, insbesondere als einen Mittelwert, einen gewichteten Mittelwert oder einen Median der Vielzahl von Werten für Δt.In a simple embodiment, this is done in such a way that the first arithmetic unit equates the estimated latency L cyclically with the current value of the length Δt of the time interval, ie sets L = Δt. In another embodiment, the first arithmetic unit is configured to store a plurality of historically measured values for Δt and to calculate the latency L from the plurality of Δt values, particularly as an average, weighted average or median of the plurality of Values for Δt.
Die Erfindung wird nachfolgend anhand der Figuren näher erläutert. Es zeigen
-
1 eine schematische und stark vereinfachte Darstellung eines aus dem Stand der Technik bekannten Prüfstands für ein bildverarbeitendes System und -
2 eine schematische Darstellung eines Prüfstands gemäß Erfindung in einer bevorzugten Ausführung.
-
1 a schematic and highly simplified representation of a known from the prior art test stand for an image processing system and -
2 a schematic representation of a test stand according to the invention in a preferred embodiment.
Die Abbildung der
Auf dem Simulator
Der Zustand des Umgebungsmodells
Der Simulator
Vom Beginn der Berechnung der Bilddaten
Die Bilddaten SE repräsentieren ein Sichtfeld einer ersten bildgebenden Sensorik, die an einer Stelle des ersten virtuellen Fahrzeugs
Grundsätzlich ist der zukünftige Zustand M(t + Δt) des Umgebungsmodells
Eine schematische Ansicht eines dazu eingerichteten Prüfstands zeigt die Abbildung der
Der Simulator
Die erste Recheneinheit
Dazu ist in der Rendering-Software eine Vielzahl von Shadern implementiert. Ein erster Shader berechnet erste Bilddaten. Die ersten Bilddaten repräsentieren eine erste graphische Projektion des Umgebungsmodells
Simultan zur Übermittlung der ersten Position x(t) und der zweiten Position x'(t) übermittelt die erste Recheneinheit
Das Adaptermodul
Die verarbeiteten ersten Bilddaten werden von dem Adaptermodul
Das erste Steuergerät
Das Adaptermodul
Um die Messung durchführen zu können, benötigt das Adaptemodul Zugriff auf die Systemzeit des Prüfstands. Da in dem dargestellten Ausführungsbeispiel das Adaptermodul nicht an den ersten Bus
Grundsätzlich ist die digitale Identifikation verzichtbar. In einer alternativen Ausführung geschieht die Messung der Länge Δt anhand eines Zeitstempels, mit dem die zweite Recheneinheit
Die erste Recheneinheit
Die Kompensation der Latenz geschieht nun derart, dass die erste Recheneinheit für alle beweglichen virtuellen Objekte in dem Umgebungsmodell, oder zumindest für eine Auswahl relevanter beweglicher virtueller Objekte, in dem dargestellten Ausführungsbeispiel also konkret für das erste virtuelle Vehikel
Statt der tatsächlich aktuellen ersten Positionen x(t) und zweiten Position x'(t) übermittelt die erste Recheneinheit
ZITATE ENTHALTEN IN DER BESCHREIBUNG QUOTES INCLUDE IN THE DESCRIPTION
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of the documents listed by the applicant has been generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.
Zitierte PatentliteraturCited patent literature
- DE 202015104345 U1 [0006]DE 202015104345 U1 [0006]
Claims (15)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102016119538.3A DE102016119538A1 (en) | 2016-10-13 | 2016-10-13 | Low-latency test stand for an image processing system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102016119538.3A DE102016119538A1 (en) | 2016-10-13 | 2016-10-13 | Low-latency test stand for an image processing system |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102016119538A1 true DE102016119538A1 (en) | 2018-04-19 |
Family
ID=61764670
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102016119538.3A Withdrawn DE102016119538A1 (en) | 2016-10-13 | 2016-10-13 | Low-latency test stand for an image processing system |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102016119538A1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102019120519A1 (en) * | 2019-07-30 | 2021-02-04 | Dspace Digital Signal Processing And Control Engineering Gmbh | Computer-implemented method and computer program product for testing real or virtual control devices |
DE102020215657A1 (en) | 2020-12-10 | 2022-06-15 | Robert Bosch Gesellschaft mit beschränkter Haftung | Method and system for testing a control unit of a vehicle |
CN115268395A (en) * | 2022-07-15 | 2022-11-01 | 大连海事大学 | Method and system for testing autonomous navigation capability of unmanned ship formation |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE202015104345U1 (en) | 2015-08-18 | 2015-10-26 | Dspace Digital Signal Processing And Control Engineering Gmbh | Adapter for feeding video signals into a control unit |
-
2016
- 2016-10-13 DE DE102016119538.3A patent/DE102016119538A1/en not_active Withdrawn
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE202015104345U1 (en) | 2015-08-18 | 2015-10-26 | Dspace Digital Signal Processing And Control Engineering Gmbh | Adapter for feeding video signals into a control unit |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102019120519A1 (en) * | 2019-07-30 | 2021-02-04 | Dspace Digital Signal Processing And Control Engineering Gmbh | Computer-implemented method and computer program product for testing real or virtual control devices |
DE102020215657A1 (en) | 2020-12-10 | 2022-06-15 | Robert Bosch Gesellschaft mit beschränkter Haftung | Method and system for testing a control unit of a vehicle |
CN115268395A (en) * | 2022-07-15 | 2022-11-01 | 大连海事大学 | Method and system for testing autonomous navigation capability of unmanned ship formation |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102017107396B4 (en) | Test procedure and test device for driver assistance systems | |
EP3571553B1 (en) | Method for testing a control function of a control device of a vehicle | |
DE102010013943B4 (en) | Method and device for a functional test of an object recognition device of a motor vehicle | |
DE102016225915A1 (en) | System and method for detecting the surroundings of a vehicle | |
DE102015208429A1 (en) | Method and device for detecting and evaluating road reflections | |
AT519538B1 (en) | Method and system for the simulation-based determination of echo points as well as methods for emulation and emulation device | |
DE102012203909A1 (en) | Filter method and filter device for sensor data | |
DE102020200911B3 (en) | Method for recognizing objects in the surroundings of a vehicle | |
DE102016119538A1 (en) | Low-latency test stand for an image processing system | |
DE102015122172A1 (en) | Headlamp based projection of patterns to measure spatial characteristics of a vehicle environment | |
DE102011107458A1 (en) | Method for evaluating an object recognition device of a motor vehicle | |
DE102014204383A1 (en) | Driver assistance system for object recognition and procedures | |
US10404565B2 (en) | Simulation latency indication | |
EP3729213A1 (en) | Behaviour model of an environment sensor | |
DE102016205806A1 (en) | Method for optimizing a function in a vehicle | |
DE102019132996A1 (en) | Estimating a three-dimensional position of an object | |
DE202015104345U1 (en) | Adapter for feeding video signals into a control unit | |
DE102013206292A1 (en) | Method and device for creating a data-based function model | |
DE102020214596A1 (en) | Method for generating training data for a recognition model for recognizing objects in sensor data of an environment sensor system of a vehicle, method for generating such a recognition model and method for controlling an actuator system of a vehicle | |
DE102017201796A1 (en) | Control device for determining a self-motion of a motor vehicle and motor vehicle and method for providing the control device | |
WO2023083620A1 (en) | Testing the environment sensor system and/or environment perception of a vehicle | |
US20190152486A1 (en) | Low-latency test bed for an image- processing system | |
AT525369B1 (en) | Test environment for urban human-machine interaction | |
WO2017129306A1 (en) | Method and device for locating a head of a driver in a vehicle and head localization system | |
DE102014202639A1 (en) | Method for determining movement of vehicle, involves outputting movement of vehicle when quality value formed for evaluating detected vehicle movement estimate is available in predetermined relationship to reference value |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R012 | Request for examination validly filed | ||
R079 | Amendment of ipc main class |
Free format text: PREVIOUS MAIN CLASS: G06F0019000000 Ipc: G16Z0099000000 |
|
R120 | Application withdrawn or ip right abandoned |