DE102016119538A1 - Low-latency test stand for an image processing system - Google Patents

Low-latency test stand for an image processing system Download PDF

Info

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
Application number
DE102016119538.3A
Other languages
German (de)
Inventor
Frank Schütte
Hagen Haupt
Carsten Grascher
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dspace GmbH
Dspace Digital Signal Processing and Control Engineering GmbH
Original Assignee
Dspace GmbH
Dspace Digital Signal Processing and Control Engineering GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dspace GmbH, Dspace Digital Signal Processing and Control Engineering GmbH filed Critical Dspace GmbH
Priority to DE102016119538.3A priority Critical patent/DE102016119538A1/en
Publication of DE102016119538A1 publication Critical patent/DE102016119538A1/en
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01MTESTING STATIC OR DYNAMIC BALANCE OF MACHINES OR STRUCTURES; TESTING OF STRUCTURES OR APPARATUS, NOT OTHERWISE PROVIDED FOR
    • G01M17/00Testing of vehicles
    • G01M17/007Wheeled 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.

Figure DE102016119538A1_0000
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.
Figure DE102016119538A1_0000

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 DE 20 2015 104 345 U1 beschreibt einen Prüfstand für ein bildverarbeitendes Steuergerät, der die Latenz der Bilddaten für das Steuergerät verringert durch ein Adaptermodul, das die Bilddaten unter Umgehung der bildgebenden Sensorik direkt in das Steuergerät einspeist und so einen verkürzten Datenweg für die Bilddaten bereitstellt. Die Latenz, die durch die Berechnung der Bilddaten entsteht, ist auf diese Weise allein aber nicht kompensierbar.The German Utility Model DE 20 2015 104 345 U1 describes a test bench for an image processing control unit, which reduces the latency of the image data for the control unit by an adapter module, which feeds the image data bypassing the imaging sensor directly into the controller, thus providing a shortened data path for the image data. The latency that results from the calculation of the image data, however, can not be compensated in this way alone.

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.
The invention will be explained in more detail with reference to FIGS. Show it
  • 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 1 dient der Veranschaulichung der grundlegenden Erfindungsidee und des durch die Erfindung gelösten Problems. Die Abbildung skizziert ein Testszenario mit einem Prüfstand, stellvertretend dargestellt durch einen Simulationsrechner SIM, und als Prüfling einem bildverarbeitenden System UUT. Das bildverarbeitende System UUT sei als Beispiel ein kamerabasierter Unfallassistent, der eingerichtet ist, um in einem Fahrzeug eine Gefahrensituation zu erkennen und ein automatisches Bremsmanöver einzuleiten.The picture of the 1 serves to illustrate the basic idea of the invention and the problem solved by the invention. The figure outlines a test scenario with a test bench represented by a simulation computer SIM , and as a test object an image processing system UUT , The image processing system UUT As an example, consider a camera-based accident assistant that is set up to detect a dangerous situation in a vehicle and initiate an automatic braking maneuver.

Auf dem Simulator SIM ist ein Umgebungsmodell MOD hinterlegt. Das Umgebungsmodell MOD ist eine Software, die durch einen ersten Prozessor C1 des Simulators SIM ausführbar ist, und die eingerichtet ist, um eine Umgebung des bildverarbeitenden Systems UUT sowie ein Testszenario für das bildverarbeitende System UUT zu simulieren. Das Umgebungsmodell MOD enthält eine Vielzahl virtueller Objekte, und eine Untermenge der virtuellen Objekte ist beweglich. Bewegliche virtuelle Objekte sind dadurch ausgezeichnet, dass ihnen in dem Umgebungsmodell neben einer (vektorwertigen) Position auch jeweils ein Geschwindigkeitsvektor zugeordnet ist und ihre Position innerhalb des Umgebungsmodells MOD in jedem Zeitschritt der Simulation veränderbar ist. Das dargestellte Umgebungsmodell MOD beinhaltet beispielhaft als erstes virtuelles Objekt ein erstes virtuelles Fahrzeug VEH1 und als zweites virtuelles Objekt ein zweites virtuelles Fahrzeug VEH2. Das dargestellte Testszenario ist eine Unfallsituation an einer Kreuzung. Beide Fahrzeuge sind bewegliche virtuelle Objekte. Somit sind dem ersten virtuellen Fahrzeug VEH1 eine zeitabhängige erste Position x(t) und ein zeitabhängiger erster Geschwindigkeitsvektor v(t) zugeordnet, und dem zweiten virtuellen Fahrzeug VEH2 sind eine zeitabhängige zweite Position x'(t) und ein zeitabhängiger zweiter Geschwindigkeitsvektor v'(t) zugeordnet.On the simulator SIM is an environment model MOD deposited. The environment model MOD is a software that comes through a first processor C1 of the simulator SIM is executable, and which is set up to be an environment of the image processing system UUT and a test scenario for the image processing system UUT to simulate. The environment model MOD contains a large number of virtual objects, and a subset of the virtual objects is movable. Mobile virtual objects are distinguished by the fact that they are assigned a velocity vector in addition to a (vector-valued) position in the environment model and their position within the environment model MOD in each time step of the simulation is changeable. The illustrated environment model MOD By way of example, the first virtual object includes a first virtual vehicle VEH 1 and as a second virtual object, a second virtual vehicle VEH2 , The test scenario shown is an accident situation at an intersection. Both vehicles are moving virtual objects. Thus, the first virtual vehicle VEH 1 a time-dependent first position x (t) and a time-dependent first speed vector v (t) associated with, and the second virtual vehicle VEH2 are assigned a time-dependent second position x '(t) and a time-dependent second velocity vector v' (t).

Der Zustand des Umgebungsmodells MOD zu einem Zeitpunkt t ist somit durch einen Zustandsvektor M(t) beschreibbar, der die Koordinaten der Positionen aller virtuellen Objekte und die Einträge der Geschwindigkeitsvektoren aller beweglichen virtuellen Objekte als Einträge enthält.The state of the environment model MOD at a time t is thus described by a state vector M (t), the coordinates of the positions of all virtual objects and the entries of Contains velocity vectors of all moving virtual objects as entries.

Der Simulator SIM und das bildverarbeitende System UUT spannen gemeinsam einen simulierten Regelkreis auf. Der Simulator SIM beliefert das bildverarbeitende System UUT kontinuierlich mit emulierten Bilddaten SE, die das bildverarbeitende System UUT als echte, d.h. von einer physischen bildgebenden Sensorik zugelieferte, Bilddaten interpretiert. Auf Basis dieser Bilddaten liefert das bildverarbeitende System UUT Steuerdaten AC an den Simulator zurück und beeinflusst damit den Zustand M des Umgebungsmodells MOD, indem der Simulator am ersten virtuellen Fahrzeug VEH1 die Reaktion eines physischen Fahrzeugs auf die Steuerdaten AC nachbildet.The simulator SIM and the image processing system UUT together build up a simulated control loop. The simulator SIM supplies the image processing system UUT continuously with emulated image data SE, which is the image processing system UUT as real, ie, delivered by a physical imaging sensor, image data interpreted. Based on this image data provides the image processing system UUT control data AC back to the simulator, affecting the state M of the environment model MOD by putting the simulator on the first virtual vehicle VEH 1 the reaction of a physical vehicle to the control data AC replicates.

Vom Beginn der Berechnung der Bilddaten SE bis zur Einspeisung der Bilddaten SE in das bildverarbeitende System UUT verstreicht ein Zeitintervall der Länge Δt, das im wesentlichen durch die Berechnung und Aufbereitung der Bilddaten SE entsteht. Die Länge Δt entspricht demnach einer Latenz der Bilddaten. Angenommen, die Latenz betrage Δt = 50ms, dann bedeutet dass, das der beispielhafte Unfallassistent in der Simulation erst mit einer Verzögerung von 50ms die Gefahrensituation erkennt und entsprechend reagiert. Für das dargestellte Testszenario wäre ein solcher Wert nicht akzeptabel, und die Ergebnisse der Simulation wären nur eingeschränkt brauchbar.From the beginning of the calculation of the image data SE until the input of the image data SE in the image processing system UUT A time interval of Δt, which essentially results from the calculation and processing of the image data, passes through a time interval SE arises. The length Δt accordingly corresponds to a latency of the image data. Assuming that the latency amounts to Δt = 50ms, this means that the exemplary accident assistant in the simulation only recognizes the dangerous situation with a delay of 50ms and reacts accordingly. For the illustrated test scenario such a value would not be acceptable and the results of the simulation would be of limited use.

Die Bilddaten SE repräsentieren ein Sichtfeld einer ersten bildgebenden Sensorik, die an einer Stelle des ersten virtuellen Fahrzeugs VEH1 verbaut ist, also eine zweidimensionale graphische Projektion des Umgebungsmodells MOD. Die Bilddaten SE sind insofern als eine Funktion D[M(t)] des Zustandsvektors M(t) zu verstehen. Die schließlich in das bildverarbeitende System UUT eingespeisten, aufbereiteten Bilddaten sind demnach definiert durch die Funktion D[M(t - Δt)]. Durch die Substitution t → t + Δt ist unmittelbar einsichtig, dass die Latenz prinzipiell kompensierbar ist, indem dem bildverarbeitenden System UUT von dem Simulator SIM zukünftige Bilddaten SE, beschrieben durch die Funktion D[M(t + Δt)], zugeliefert werden. Die in das bildverarbeitende System eingespeisten Bilddaten sind dann durch die Funktion D[M(t + Δt - Δt)] = D[M(t)] beschrieben, passen also zum aktuellen Zustand M(t) des Umgebungsmodells MOD.The image data SE represent a field of view of a first imaging sensor that is at a location of the first virtual vehicle VEH 1 is built, so a two-dimensional graphical projection of the environment model MOD , The image data SE are to be understood as a function D [M (t)] of the state vector M (t). The finally in the image processing system UUT input, processed image data are thus defined by the function D [M (t - Δt)]. The substitution t → t + Δt makes it immediately obvious that the latency can be compensated in principle by the image-processing system UUT from the simulator SIM future image data SE , described by the function D [M (t + Δt)]. The image data fed into the image processing system are then described by the function D [M (t + Δt-Δt)] = D [M (t)], thus matching the current state M (t) of the environment model MOD ,

Grundsätzlich ist der zukünftige Zustand M(t + Δt) des Umgebungsmodells MOD nicht bekannt. Wenn die Latenz Δt aber in Erfahrung gebracht wird, beispielsweise durch eine Messung, dann ist er durch Extrapolation des aktuellen Zustands M(t) über die Länge Δt zumindest abschätzbar und die Genauigkeit der Simulation verbesserbar.Basically, the future state is M (t + Δt) of the environment model MOD not known. However, if the latency .DELTA.t is learned, for example by a measurement, then it can be estimated at least by extrapolation of the current state M (t) over the length .DELTA.t and the accuracy of the simulation can be improved.

Eine schematische Ansicht eines dazu eingerichteten Prüfstands zeigt die Abbildung der 2. Der Prüfstand umfasst einen Host-Rechner HST, einen Simulator SIM und ein Adaptermodul AD, das bildverarbeitende System UUT umfasst ein erstes Steuergerät ECU1 für ein Radarsystem und ein zweites Steuergerät ECU2 für eine Stereokamera.A schematic view of a test bench set up for this purpose shows the illustration of the 2 , The test bench includes a host computer HST , a simulator SIM and an adapter module AD , the image processing system UUT includes a first controller ECU1 for a radar system and a second controller ECU 2 for a stereo camera.

Der Simulator SIM umfasst eine erste Recheneinheit CPU mit einem ersten Prozessor C1, und der Simulator SIM umfasst eine zweite Recheneinheit GPU mit einem zweiten Prozessor C2 und einem Graphikprozessor (Graphics Processing Unit) C3. Der Host-Rechner HST ist eingerichtet, um mittels einer fünften Datenverbindung DL das Umgebungsmodell MOD auf der ersten Recheneinheit CPU zu hinterlegen, und der erste Prozessor C1 ist eingerichtet, um das Umgebungsmodell auszuführen. (Die in der 1 und in der 2 dargestellten Umgebungsmodelle MOD werden im folgenden als identisch angenommen.) Die erste Recheneinheit CPU und die zweite Recheneinheit GPU sind gemeinsam an einen echtzeitfähigen ersten Bus BS des Prüfstands angeschlossen, der somit eine erste Datenverbindung zwischen der ersten Recheneinheit CPU und der zweiten Recheneinheit GPU bereitstellt. Der erste Bus BS ist technisch auf Echtzeittauglichkeit optimiert und garantiert somit eine latenzarme erste Datenverbindung.The simulator SIM comprises a first arithmetic unit CPU with a first processor C1 , and the simulator SIM includes a second arithmetic unit GPU with a second processor C2 and a graphics processor (Graphics Processing Unit) C3. The host machine HST is set up by means of a fifth data connection DL the environment model MOD on the first arithmetic unit CPU deposit, and the first processor C1 is set up to run the environment model. (The in the 1 and in the 2 presented environment models MOD are assumed to be identical in the following.) The first arithmetic unit CPU and the second arithmetic unit GPU are connected together to a real-time capable first bus BS of the test bench, which thus has a first data connection between the first arithmetic unit CPU and the second arithmetic unit GPU provides. The first bus BS is technically optimized for real-time performance and thus guarantees a low-latency first data connection.

Die erste Recheneinheit CPU ist eingerichtet, um mittels der ersten Datenverbindung BS der zweiten Recheneinheit GPU zyklisch Positionen der virtuellen Objekte im Umgebungsmodell zu übermitteln. Die zweite Recheneinheit GPU ist eingerichtet, die übermittelten Positionen auszulesen und mittels einer auf der zweiten Recheneinheit GPU hinterlegten Rendering-Software REN erste Bilddaten, zweite Bilddaten und dritte Bilddaten als Funktionen zumindest der übermittelten Positionen, insbesondere der ersten Position x(t) und der zweiten Position x'(t), zu berechnen.The first arithmetic unit CPU is set up by means of the first data connection BS the second arithmetic unit GPU cyclically transmit positions of the virtual objects in the environment model. The second arithmetic unit GPU is set up to read the transmitted positions and by means of a second processing unit GPU deposited rendering software REN first image data, second image data and third image data as functions of at least the transmitted positions, in particular the first position x (t) and the second position x '(t) to calculate.

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 MOD, die das Sichtfeld eines am ersten virtuellen Fahrzeug VEH1 verbauten Radarsensors nachbildet. Ein zweiter Shader berechnet zweite Bilddaten und dritte Bilddaten. Die zweiten Bilddaten repräsentieren eine zweite graphische Projektion und die dritten Bilddaten eine dritte graphische Projektion des Umgebungsmodells. Die zweite und die dritte graphische Projektion bilden jeweils das Sichtfeld eines ersten und eines zweiten Fotosensors einer an dem virtuellen Fahrzeug VEH1 verbauten Kameraoptik nach. Dazu ist der zweite Shader insbesondere auch ausgestaltet, um die Optik eines Linsensystems der Stereokamera zu simulieren.For this purpose, a large number of shaders is implemented in the rendering software. A first shader computes first image data. The first image data represents a first graphical projection of the environment model MOD that the field of view of a first virtual vehicle VEH 1 built-in radar sensor simulates. A second shader computes second image data and third image data. The second image data represents a second graphical projection and the third image data represents a third graphical projection of the environment model. The second and third graphical projections each form the field of view of a first and a second photosensor one on the virtual vehicle VEH 1 installed camera optics. For this purpose, the second shader is in particular also designed to simulate the optics of a lens system of the stereo camera.

Simultan zur Übermittlung der ersten Position x(t) und der zweiten Position x'(t) übermittelt die erste Recheneinheit CPU eine digitale Identifikation sowie eine erste Systemzeit des Prüfstands über eine als Ethernet-Verbindung ausgestaltete echtzeitfähige dritte Datenverbindung ETH und übermittelt die digitale Identifikation weiterhin über die erste Datenverbindung BS an die zweite Recheneinheit GPU. Die zweite Recheneinheit GPU erstellt ein Datenpaket, das die ersten Bilddaten, die zweiten Bilddaten, die dritten Bilddaten sowie die digitale Identifikation enthält. Über eine als HDMI-Verbindung ausgestaltete zweite echtzeitfähige Datenverbindung HDMI übermittelt der Graphikprozessor C3 das Datenpaket an das Adaptermodul AD. Simultaneously with the transmission of the first position x (t) and the second position x '(t), the first arithmetic unit transmits CPU a digital identification and a first system time of the test bench via a configured as an Ethernet connection real-time capable third data connection ETH and continues to transmit the digital identification via the first data connection BS to the second processing unit GPU , The second arithmetic unit GPU creates a data packet containing the first image data, the second image data, the third image data and the digital identification. The graphics processor transmits via a second real-time-capable data connection HDMI configured as an HDMI connection C3 the data packet to the adapter module AD ,

Das Adaptermodul AD umfasst ein FPGA F. Auf dem FPGA F sind drei parallele Emulationslogiken implementiert. Eine erste Emulationslogik EM1 ist eingerichtet, um eine erste bildgebende Sensorik eines Radarsystems zu emulieren, d.h. die ersten Bilddaten aufzunehmen und derart zu verarbeiten, dass die ersten Bilddaten nach der Verarbeitung den von dem ersten Steuergerät ECU1 erwarteten Bilddaten entsprechen. Entsprechend sind eine zweite Emulationslogik EM2 und eine dritte Emulationslogik EM3 eingerichtet, um die zweiten Bilddaten bzw. die dritten Bilddaten aufzunehmen und eine zweite bildgebende Sensorik bzw. eine dritte bildgebende Sensorik einer linsenbasierten optischen Stereokamera zu emulieren.The adapter module AD includes an FPGA F. Three parallel emulation logics are implemented on the FPGA F. A first emulation logic EM1 is set up to emulate a first imaging sensor system of a radar system, ie to record the first image data and to process it in such a way that the first image data after processing corresponds to that of the first control device ECU1 expected image data correspond. Accordingly, a second emulation logic EM2 and a third emulation logic EM3 arranged to receive the second image data and the third image data and to emulate a second imaging sensor or a third imaging sensor of a lens-based stereo optical camera.

Die verarbeiteten ersten Bilddaten werden von dem Adaptermodul AD in das erste Steuergerät ECU1 derart eingespeist, dass das erste Steuergerät ECU1 sie als echte Bilddaten einer physischen bildgebenden Sensorik interpretiert. Die dazu nötigen technischen Maßnahmen sind im Stand der Technik bereits bekannt und dem Fachmann zugänglich. Spezielle Entwicklungssteuergeräte bieten dafür oftmals dedizierte Schnittstellen an.The processed first image data is from the adapter module AD in the first controller ECU1 fed in such a way that the first control unit ECU1 interpreted as true image data of a physical imaging sensor. The necessary technical measures are already known in the art and accessible to the skilled person. Special development control units often offer dedicated interfaces for this purpose.

Das erste Steuergerät ECU1 und das zweite Steuergerät ECU2 berechnen auf Basis der verarbeiteten ersten Bilddaten bzw. der verarbeiteten zweiten Bilddaten Steuersignale für eine Aktuatorik eines Vehikels, konkret eines Fahrzeugs. Die Steuersignale werden über einen außerhalb des Simulators SIM verlegten zweiten Bus XB, beispielsweise einen CAN-Bus, der mittels eines Gateways G mit dem ersten Bus BS verbunden ist, in die erste Recheneinheit CPU eingespeist, von dem ersten Prozessor C1 ausgelesen und bei der Berechnung des nachfolgenden Zeitschritts der Simulation derart berücksichtigt, dass die Reaktion eines physischen Fahrzeugs auf die Steuersignale am ersten virtuellen Fahrzeug VEH1 nachgestellt wird.The first controller ECU1 and the second controller ECU 2 On the basis of the processed first image data or the processed second image data, control signals for an actuator of a vehicle, specifically a vehicle. The control signals are sent via an outside of the simulator SIM relocated second bus XB , For example, a CAN bus, which is connected by means of a gateway G to the first bus BS, in the first processing unit CPU fed from the first processor C1 is read out and taken into account in the calculation of the subsequent time step of the simulation such that the reaction of a physical vehicle to the control signals on the first virtual vehicle VEH 1 is readjusted.

Das Adaptermodul AD ist weiterhin eingerichtet, um anhand der digitalen Identifikation das Datenpaket der von der ersten Recheneinheit erhaltenen ersten Systemzeit zuzuordnen. Konkret bedeutet das, dass das Adaptermodul AD die von der ersten Recheneinheit CPU mittels der dritten Datenverbindung ETH übermittelte digitale Identifikation zusammen mit der ersten Systemzeit ausliest, dass das Adaptermodul zusätzlich die in dem Datenpaket hinterlegte digitale Identifikation ausliest, die beiden ausgelesenen digitalen Identifikationen abgleicht und als identisch erkennt und anhand des Abgleichs die erste Systemzeit dem Datenpaket zuordnet. Unmittelbar nach der Verarbeitung zumindest der ersten Bilddaten vergleicht das Adaptermodul AD die erste Systemzeit mit einer aktuellen Systemzeit des Prüfstands, ermittelt durch Differenzbildung die Länge Δt des Zeitintervalls und übermittelt mittels der dritten Datenverbindung ETH den Wert von Δt an die erste Recheneinheit CPU. Bevorzugt geschieht dies nicht einmalig, sondern das Adaptermodul AD berechnet zyklisch und kontinuierlich aktuelle Werte für Δt und übermittelt den jeweils aktuellen Wert von Δt kontinuierlich an die erste Recheneinheit CPU.The adapter module AD is also set up to use the digital identification to associate the data packet with the first system time obtained by the first processing unit. Specifically, this means that the adapter module AD that of the first arithmetic unit CPU by means of the third data connection ETH transmitted digital identification along with the first system time reads out that the adapter module additionally reads out the stored in the data packet digital identification, the two read digital identifications matches and identifies as identical and assigns the first system time to the data packet based on the comparison. Immediately after processing at least the first image data, the adapter module compares AD the first system time with a current system time of the test bench, determined by subtraction the length .DELTA.t of the time interval and transmitted by means of the third data connection ETH the value of Δt to the first arithmetic unit CPU , Preferably, this does not happen once, but the adapter module AD calculates cyclically and continuously current values for .DELTA.t and transmits the respective current value of .DELTA.t continuously to the first arithmetic unit CPU ,

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 BS des Prüfstands angeschlossen ist, kann beispielsweise die Systemzeit mittels der dritten Datenverbindung ETH kontinuierlich an das Adaptermodul AD übertragen werden, und das Adaptermodul AD synchronisiert entweder eine lokale Uhr mit der Systemzeit oder es liest die über die dritte Datenverbindung ETH übertragene Systemzeit bei Bedarf direkt aus.In order to perform the measurement, the adapter module needs access to the system time of the test bench. As in the illustrated embodiment, the adapter module is not connected to the first bus BS the test bench is connected, for example, the system time using the third data connection ETH continuously to the adapter module AD be transferred, and the adapter module AD either synchronizes a local clock with the system time or it reads over the third data connection ETH transferred system time directly if required.

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 GPU das Datenpaket versieht und in dem sie eine erste Systemzeit des Prüfstands zu einem Zeitpunkt vor Beginn der Berechnung der ersten Bilddaten hinterlegt, wobei das Adaptermodul die erste Systemzeit aus dem Zeitstempel ausliest.Basically, the digital identification is dispensable. In an alternative embodiment, the measurement of the length .DELTA.t occurs on the basis of a time stamp with which the second arithmetic unit GPU provides the data packet and in which it deposits a first system time of the test bench at a time before the start of the calculation of the first image data, wherein the adapter module reads out the first system time from the time stamp.

Die erste Recheneinheit CPU ist eingerichtet, um den Wert von Δt auszulesen und anhand des Wertes von Δt die Latenz L der ersten Bilddaten abzuschätzen. In einer einfachen Ausführung geschieht das derart, dass die erste Recheneinheit CPU für die abgeschätzte Latenz L einfach den jeweils aktuellen Wert von Δt verwendet. Diese Ausführung kann aber problematisch sein, wenn kurzfristige Schwankungen in der Latenz der Bilddaten auftreten. Vorteilhaft berechnet die erste Recheneinheit CPU einen Wert für die abgeschätzte Latenz L auf Basis einer Vielzahl von in der Vergangenheit gemessenen Werten von Δt. Beispielsweise kann die erste Recheneinheit CPU eingerichtet sein, um beispielsweise die jeweils letzten 100 Werte von Δt aufzubewahren und den Wert von L als einen Mittelwert, einen gewichteten Mittelwert oder einen Median der aufbewahrten Werte von Δt zu berechnen.The first arithmetic unit CPU is set up to read out the value of Δt and to estimate the latency L of the first image data based on the value of Δt. In a simple embodiment, this is done in such a way that the first arithmetic unit CPU for the estimated latency L simply uses the current value of Δt. However, this implementation can be problematic if short-term fluctuations in the latency of the image data occur. Advantageously, the first calculation unit calculates CPU a value for the estimated latency L based on a variety of values of Δt measured in the past. For example, the first arithmetic unit CPU be set up, for example, each to keep the last 100 values of Δt and calculate the value of L as an average, weighted average or median of the stored values of Δt.

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 VEH1 und für das zweite virtuelle Vehikel VEH2, unter Verwendung der abgeschätzten Latenz Leine extrapolierte Position berechnet. Die erste Recheneinheit CPU berechnet demnach für das erste virtuelle Fahrzeug VEH1 anhand der ersten Position x(t) und des ersten Geschwindigkeitsvektors v(t) eine erste extrapolierte Position x(t + L), und sie berechnet für das zweite virtuelle Fahrzeug VEH2 unter Verwendung der zweiten Position x'(t) und des zweiten Geschwindigkeitsvektors v'(t) eine zweite extrapolierte Position x'(t + L). Die Ermittlung der extrapolierten Positionen erfolgt beispielsweise anhand eines Runge-Kutta-Verfahrens, bevorzugt eines Euler-Verfahrens, und bevorzugt anhand eines einzigen Integrationsschritts über die gesamte abgeschätzte Latenz L. Sofern die extrapolierten Positionen zu sehr von den tatsächlichen Positionen zum Zeitpunkt t + L abweichen, ist zum Preis eines höheren Rechenaufwands auch eine prinzipiell beliebige genauere Integrationsmethode verwendbar, beispielsweise ein Integrationsverfahren höherer Ordnung oder eine mehrfache Integration über Teilintervalle der Latenz L.The compensation of the latency now takes place in such a way that the first arithmetic unit for all mobile virtual objects in the environment model, or at least for a selection of relevant mobile virtual objects, in the illustrated embodiment specifically for the first virtual vehicle VEH 1 and for the second virtual vehicle VEH2 , calculated using the estimated latency leash extrapolated position. The first arithmetic unit CPU calculated accordingly for the first virtual vehicle VEH 1 from the first position x (t) and the first velocity vector v (t), a first extrapolated position x (t + L), and it calculates for the second virtual vehicle VEH2 using the second position x '(t) and the second velocity vector v' (t), a second extrapolated position x '(t + L). The extrapolated positions are determined, for example, by a Runge-Kutta method, preferably an Euler method, and preferably by a single integration step over the entire estimated latency L. If the extrapolated positions deviate too much from the actual positions at time t + L , For the price of a higher computational effort, a principle any more precise integration method can be used, for example, a higher-order integration method or a multiple integration over subintervals of latency L ,

Statt der tatsächlich aktuellen ersten Positionen x(t) und zweiten Position x'(t) übermittelt die erste Recheneinheit CPU der zweiten Recheneinheit GPU die erste extrapolierte Position x(t + L) und die zweite extrapolierte Position x'(t + L). Auf die gleiche Weise wird statt der Positionen eventuell vorhandener weiterer beweglicher virtueller Objekte, zumindest solcher virtueller Objekte, die für das in dem Umgebungsmodell modellierte Szenario als relevant erkannt wurden, immer die extrapolierte Position des jeweiligen virtuellen Objekts übertragen. Die zweite Recheneinheit GPU geht bei der Berechnung der Bilddaten also von vornherein von einem abgeschätzten zukünftigen Zustand des Umgebungsmodells MOD nach Ablauf der Zeitspanne Δt aus. Wenn die so berechneten Bilddaten schließlich in das bildverarbeitende System CPU eingespeist werden, hat die Simulation auf der ersten Recheneinheit CPU diesen Zeitvorsprung der Bilddaten ungefähr aufgeholt. Die Steuerdaten aus dem bildverarbeitenden System CPU passen dadurch besser zum aktuellen Zustand M(t) des Umgebungsmodell MOD, was die Genauigkeit der Simulationsergebnisse gegenüber ähnlichen, aus dem Stand der Technik bekannten Prüfstanden verbessert.Instead of the actual current first positions x (t) and second position x '(t), the first arithmetic unit transmits CPU the second arithmetic unit GPU the first extrapolated position x (t + L) and the second extrapolated position x '(t + L). In the same way, instead of the positions of possibly existing further movable virtual objects, at least those virtual objects that were identified as being relevant for the scenario modeled in the environment model, the extrapolated position of the respective virtual object is always transmitted. The second arithmetic unit GPU In the calculation of the image data, therefore, a priori assumes an estimated future state of the environment model MOD after the expiration of the period .DELTA.t. When the image data so calculated finally into the image processing system CPU be fed, has the simulation on the first arithmetic unit CPU This time advantage of the image data approximately caught up. The control data from the image processing system CPU fit better to the current state M (t) of the environment model MOD which improves the accuracy of the simulation results over similar test stands known in the art.

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)

Prüfstand für ein bildverarbeitendes System (UUT), wobei in dem Prüfstand eine erste Recheneinheit (CPU) angeordnet ist, die mit einer Simulationssoftware für ein Umgebungsmodell (MOD) programmiert ist, wobei die Simulationssoftware eingerichtet ist, um eine erste Position x(t) und einen ersten Geschwindigkeitsvektor v(t) zu berechnen und einem ersten virtuellen Objekt (VEH1) in dem Umgebungsmodell (MOD)die erste Position x(t) und den ersten Geschwindigkeitsvektor v(t) zuzuordnen, in dem Prüfstand eine zweite Recheneinheit (GPU) angeordnet und eingerichtet ist, um zyklisch eine Position des ersten virtuellen Objekts (VEH1) in dem Umgebungsmodell einzulesen und basierend auf zumindest der eingelesenen Position erste Bilddaten zu berechnen, die eine zweidimensionale graphische erste Projektion des Umgebungsmodells (MOD) repräsentieren, in dem Prüfstand ein Adaptermodul (AD) angeordnet und eingerichtet ist, um die ersten Bilddaten einzulesen, die ersten Bilddaten durch Emulation einer ersten bildgebenden Sensorik des bildverarbeitenden Systems (UUT) zu verarbeiten und die verarbeiteten ersten Bilddaten in das bildverarbeitende System (UUT) einzuspeisen, wobei die erste Recheneinheit (CPU) eingerichtet ist, um von dem bildverarbeitenden System (UUT) auf Basis der verarbeiteten ersten Bilddaten berechnete Steuerdaten für eine Aktuatorik einzulesen und unter Berücksichtigung der Steuerdaten dem ersten virtuellen Objekt (VEH1) einen neuen ersten Geschwindigkeitsvektor zuzuordnen, dadurch gekennzeichnet, dass der Prüfstand eingerichtet ist, um die Länge Δt des vom Beginn der Berechnung der ersten Bilddaten durch die zweite Recheneinheit (GPU) bis zum Abschluss der Verarbeitung der ersten Bilddaten durch das Adaptermodul (AD) verstreichenden Zeitintervalls zu messen, die erste Recheneinheit (CPU) eingerichtet ist, um die Länge Δt des Zeitintervalls einzulesen und anhand der Länge Δt des Zeitintervalls eine Latenz L der ersten Bilddaten abzuschätzen, die erste Recheneinheit (CPU) eingerichtet ist, unter Berücksichtigung der ersten Position x(t), des ersten Geschwindigkeitsvektors v(t) und der abgeschätzten Latenz L eine erste extrapolierte Position x(t + L) des ersten virtuellen Objekts zu ermitteln, sodass die erste extrapolierte Position x(t + L) eine Abschätzung der ersten Position des ersten virtuellen Objekts (VEH1) zum Zeitpunkt t + L ist, und die zweite Recheneinheit (GPU) eingerichtet ist, die erste extrapolierte Position x(t + L) einzulesen und basierend auf zumindest der ersten extrapolierten Position x(t + L) die ersten Bilddaten zu berechnen.Test facility for an image processing system (UUT), wherein in the test bench, a first processing unit (CPU) is arranged, which is programmed with a simulation model for an environment model (MOD), the simulation software is set to a first position x (t) and calculate a first velocity vector v (t) and associate a first virtual object (VEH1) in the environment model (MOD) with the first position x (t) and the first velocity vector v (t), in the test bench a second arithmetic unit (GPU) and arranged to cyclically read in a position of the first virtual object (VEH1) in the environment model and to calculate based on at least the read position first image data representing a two-dimensional graphical first projection of the environment model (MOD), in the test bench an adapter module ( AD) is arranged and set up to read in the first image data, the first image data by emulation ei The first image-processing sensor of the image processing system (UUT) and to feed the processed first image data into the image processing system (UUT), wherein the first processing unit (CPU) is set up by the image processing system (UUT) based on the processed first image data read in calculated control data for an actuator system and, taking into account the control data, assign the first virtual object (VEH1) a new first speed vector, characterized in that the test bench is set up by the second arithmetic unit (11) to calculate the length .DELTA.t of the start of the calculation of the first image data (FIG. GPU) until the completion of the processing of the first image data by the adapter module (AD) elapsed time interval, the first processing unit (CPU) is set to read the length .DELTA.t of the time interval and based on the length .DELTA.t of the time interval, a latency L of the first image data to estimate that he te computing unit (CPU) is arranged, taking into account the first position x (t), the first velocity vector v (t) and the estimated latency L a first extrapolated position x (t + L) of the first virtual object to determine, so that the first extrapolated position x (t + L) is an estimate of the first position of the first virtual object (VEH1) at time t + L, and the second arithmetic unit (GPU) is adapted to read in the first extrapolated position x (t + L) and based on at least the first extrapolated position x (t + L) calculate the first image data. Prüfstand nach Anspruch 1, wobei der Prüfstand eingerichtet ist, die erste Position x(t) und den ersten Geschwindigkeitsvektor v(t) in harter Echtzeit zyklisch zu berechnen.Test bench after Claim 1 wherein the test bench is arranged to cyclically calculate the first position x (t) and the first speed vector v (t) in hard real time. Prüfstand nach einem der vorhergehenden Ansprüche, wobei das erste virtuelle Objekt (VEH1) ein virtuelles Vehikel und das bildverarbeitende System (UUT) eine automatische Steuerung oder ein Assistenzsystem für ein Vehikel ist.Test stand according to one of the preceding claims, wherein the first virtual object (VEH1) is a virtual vehicle and the image processing system (UUT) is an automatic control or an assistance system for a vehicle. Prüfstand nach einem der vorhergehenden Ansprüche, wobei die erste Projektion ein Sichtfeld der ersten bildgebenden Sensorik nachbildet.Test stand according to one of the preceding claims, wherein the first projection simulates a field of view of the first imaging sensor. Prüfstand nach einem der vorhergehenden Ansprüche, wobei der Prüfstand, insbesondere die zweite Recheneinheit (GPU), eingerichtet ist, die ersten Bilddaten mit einem Zeitstempel zu versehen, in dem eine erste Systemzeit des Prüfstands zum Beginn der Berechnung der ersten Bilddaten hinterlegt ist, und das Adaptermodul (AD) eingerichtet ist, die in dem Zeitstempel hinterlegte erste Systemzeit auszulesen und nach Abschluss der Verarbeitung der ersten Bilddaten mit einer aktuellen Systemzeit zu vergleichen, um die Länge Δt des Zeitintervalls zu ermitteln, und die Länge Δt an einer Speicheradresse zu hinterlegen.Test stand according to one of the preceding claims, wherein the test stand, in particular the second arithmetic unit (GPU), is arranged to provide the first image data with a time stamp in which a first system time of the test bench is stored for starting the calculation of the first image data, and the adapter module (AD) is arranged to read out the first system time stored in the time stamp and, after completion of the processing, to compare the first image data with a current system time in order to determine the length Δt of the time interval and to store the length Δt at a memory address , Prüfstand nach einem der Ansprüche 1 bis 4, wobei der Prüfstand eingerichtet ist, vor der Berechnung der ersten Bilddaten eine digitale Identifikation für die ersten Bilddaten zu erstellen und die digitale Identifikation dem Adaptermodul zu übermitteln und dem Adaptermodul (AD) eine erste Systemzeit des Prüfstands zum Zeitpunkt der Übermittlung der digitalen Identifikation zu übermitteln, wobei der Prüfstand eingerichtet ist, die ersten Bilddaten mit der digitalen Identifikation zu versehen, das Adaptermodul (AD) eingerichtet ist, die ersten Bilddaten anhand der digitalen Identifikation der ersten Systemzeit zuzuordnen und nach Abschluss der Verarbeitung der ersten Bilddaten die aktuelle Systemzeit des Prüfstands mit der ersten Systemzeit zu vergleichen, um die Länge Δt des Zeitintervalls zu ermitteln, und die Länge Δt an einer Speicheradresse zu hinterlegen.Test bench after one of Claims 1 to 4 wherein the test bench is set up to generate a digital identification for the first image data and to transmit the digital identification to the adapter module before the first image data is calculated and to transmit to the adapter module (AD) a first system time of the test bench at the time of transmission of the digital identification wherein the test stand is adapted to provide the first image data with the digital identification, the adapter module (AD) is arranged to assign the first image data based on the digital identification of the first system time and after completion of the processing of the first image data with the current system time of the test bench to compare the first system time to determine the length .DELTA.t of the time interval, and to deposit the length At at a memory address. Prüfstand nach einem der vorhergehenden Ansprüche, wobei zwischen der ersten Recheneinheit (CPU) und der zweiten Recheneinheit (GPU) eine echtzeitfähige erste Datenverbindung (BS) eingerichtet ist, zwischen der zweiten Recheneinheit (GPU) und dem Adaptermodul (AD) eine echtzeitfähige zweite Datenverbindung (HDMI) eingerichtet ist und zwischen dem Adaptermodul (AD) und der ersten Recheneinheit eine echtzeitfähige dritte Datenverbindung (ETH) eingerichtet ist.Test stand according to one of the preceding claims, wherein a real-time capable first data connection (BS) is set up between the first processor unit (CPU) and the second processor unit (GPU), between the second processing unit (GPU) and the adapter module (AD) a real-time capable second data connection (HDMI) is set up and a real-time capable third data connection (ETH) is set up between the adapter module (AD) and the first processor. Prüfstand nach Anspruch 7, wobei die erste Datenverbindung durch einen Bus (BS) des Prüfstands bereitgestellt ist. Test bench after Claim 7 wherein the first data connection is provided by a bus (BS) of the test bench. Prüfstand nach einem der vorhergehenden Ansprüche, wobei die zweite Recheneinheit (GPU) eingerichtet ist, um parallel zur Berechnung der ersten Bilddaten oder nach 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 (UUT) repräsentieren, und um ein Datenpaket zu erstellen, das zumindest die ersten Bilddaten und die zweiten Bilddaten beinhaltet, wobei das Adaptermodul (AD) eingerichtet ist, um das Datenpaket einzulesen, die zweiten Bilddaten durch Emulation der zweiten bildgebenden Sensorik des bildverarbeitenden Systems (UUT) zu verarbeiten und die verarbeiteten zweiten Bilddaten in das bildverarbeitende System (UUT) einzuspeisen.Test stand according to one of the preceding claims, wherein the second arithmetic unit (GPU) is arranged to calculate at least second image data parallel to the calculation of the first image data or after calculation of the first image data, which is a two-dimensional graphic second projection of the environment model for a second imaging sensor representing the image processing system (UUT), and to create a data packet containing at least the first image data and the second image data, wherein the adapter module (AD) is arranged to read in the data packet, to process the second image data by emulation of the second imaging sensor of the image processing system (UUT) and to feed the processed second image data into the image processing system (UUT). Prüfstand nach einem der vorhergehenden Ansprüche, wobei der Prüfstand eingerichtet ist, um die Länge Δt des Zeitintervalls zyklisch zu ermitteln, und die erste Recheneinheit (CPU) eingerichtet ist, die Länge Δt des Zeitintervalls zyklisch einzulesen.Test stand according to one of the preceding claims, wherein the test stand is set up to determine the length .DELTA.t of the time interval cyclically, and the first computing unit (CPU) is arranged to read in the length .DELTA.t of the time interval cyclically. Prüfstand nach Anspruch 10, wobei die erste Recheneinheit (CPU) eingerichtet ist, um die abgeschätzte Latenz L dynamisch an das Zeitintervall Δt anzupassen, indem die erste Recheneinheit (CPU) zyklisch L = Δt setzt.Test bench after Claim 10 wherein the first processing unit (CPU) is arranged to dynamically adjust the estimated latency L to the time interval Δt by the first processing unit (CPU) setting L = Δt cyclically. Prüfstand nach Anspruch 10, wobei die erste Recheneinheit (CPU) eingerichtet ist, die abgeschätzte Latenz L dynamisch anzupassen, indem sie aus einer Vielzahl von in der Vergangenheit gemessenen Werten für Δt einen Wert für die Latenz L berechnet, insbesondere derart, dass die erste Recheneinheit (CPU) die Latenz L als einen Mittelwert, einen gewichteten Mittelwert oder einen Median der in der Vergangenheit gemessenen Werte für Δt berechnet.Test bench after Claim 10 in that the first processing unit (CPU) is arranged to dynamically adjust the estimated latency L by calculating a value for the latency L from a plurality of values measured in the past for Δt, in particular such that the first processing unit (CPU) stores the Calculates latency L as an average, weighted average or median of the values measured in the past for Δt. Prüfstand nach einem der vorhergehenden Ansprüche, wobei die zweite Recheneinheit (GPU) eingerichtet ist, wahlweise erste Bilddaten für mindestens zwei unterschiedliche bildgebende Sensoriken zu berechnen, insbesondere wobei die ersten Bilddaten wahlweise eine zweidimensionale graphische Projektion von mindestens zwei graphischen Projektionen aus folgender Liste repräsentieren: ein RADAR-Bild, ein LIDAR-Bild, ein optisches Bild, ein optisches Bild mit Linsenfehlern, ein optisches Bild mit Restlichtverstärkung, ein Infrarotbild, ein Ultraschallbild.Test bench according to one of the preceding claims, wherein the second arithmetic unit (GPU) is arranged to optionally calculate first image data for at least two different imaging sensors, in particular wherein the first image data optionally represent a two-dimensional graphical projection of at least two graphical projections from the following list RADAR image, a LIDAR image, an optical image, an optical image with lens aberrations, an optical image with residual light amplification, an infrared image, an ultrasound image. Prüfstand nach einem der vorhergehenden Ansprüche, wobei die Simulationssoftware eingerichtet ist, um eine zweite Position x'(t) und einen zweiten Geschwindigkeitsvektor v'(t) zu berechnen und einem zweiten virtuellen Objekt (VEH2) in dem Umgebungsmodell die zweite Position x'(t) und den zweiten Geschwindigkeitsvektor v'(t) zuzuordnen, die erste Recheneinheit eingerichtet ist, unter Berücksichtigung der zweiten Position x'(t), des zweiten Geschwindigkeitsvektors v'(t) und der abgeschätzten Latenz L eine zweite extrapolierte Position x'(t + L) des zweiten virtuellen Objekts (VEH2) zu ermitteln und die zweite Recheneinheit (GPU) eingerichtet ist, die zweite extrapolierte Position x'(t + L) einzulesen und basierend auf zumindest der ersten extrapolierten Position x(t + L) und der zweiten extrapolierten Position x'(t + L) die ersten Bilddaten zu berechnen.Test stand according to one of the preceding claims, wherein the simulation software is set up to calculate a second position x '(t) and a second velocity vector v' (t) and a second virtual object (VEH2) in the environment model the second position x '( t) and the second velocity vector v '(t), the first arithmetic unit is set up, taking into account the second position x '(t), the second velocity vector v' (t) and the estimated latency L, to determine a second extrapolated position x '(t + L) of the second virtual object (VEH2) and the second arithmetic unit (GPU) is arranged to read the second extrapolated position x '(t + L) and the first one based on at least the first extrapolated position x (t + L) and the second extrapolated position x' (t + L) To calculate image data. Verfahren zum Testen eines bildverarbeitenden Systems (UUT), insbesondere mittels eines Prüfstands nach einem der Ansprüche 1 bis 14, wobei eine erste Recheneinheit (CPU) eines Prüfstands mit einer Simulationssoftware für ein Umgebungsmodell programmiert wird und mittels der Simulationssoftware in harter Echtzeit zyklisch eine erste Position x(t) und ein erster Geschwindigkeitsvektor v(t) berechnet und einem ersten virtuellen Objekt (VEH1) in dem Umgebungsmodell zugeordnet werden, mittels einer zweiten Recheneinheit (GPU) des Prüfstands zyklisch eine Position des ersten virtuellen Objekts (VEH1) in dem Umgebungsmodell eingelesen wird und mittels der zweiten Recheneinheit (GPU) basierend auf der eingelesenen ersten Position x(t) erste Bilddaten berechnet werden, die eine zweidimensionale graphische erste Projektion des Umgebungsmodells repräsentieren, mittels eines Adaptermoduls (AD) die ersten Bilddaten eingelesen und durch Emulation einer ersten bildgebenden Sensorik des bildverarbeitenden Systems (UUT) verarbeitet werden, mittels des Adaptermoduls (AD) die verarbeiteten Bilddaten in das bildverarbeitende System (UUT) eingespeist werden, mittels der ersten Recheneinheit (CPU) von dem bildverarbeitenden System (UUT) auf Basis der verarbeiteten ersten Bilddaten berechnete Steuerdaten für eine Aktuatorik eingelesen werden und dem ersten virtuellen Objekt (VEH1) unter Berücksichtigung der Steuerdaten ein neuer erster Geschwindigkeitsvektor zugeordnet wird, dadurch gekennzeichnet, dass die Länge Δt des vom Beginn der Berechnung der ersten Bilddaten durch die zweite Recheneinheit (GPU) bis zum Abschluss der Verarbeitung der ersten Bilddaten durch das Adaptemodul (AD) verstreichenden Zeitintervalls gemessen wird, anhand der Länge Δt des Zeitintervalls eine Latenz L der ersten Bilddaten abgeschätzt wird, unter Berücksichtigung der ersten Position x(t), des ersten Geschwindigkeitsvektors v(t) und der abgeschätzten Latenz L eine erste extrapolierte Position x(t + L) ermittelt wird, sodass die erste extrapolierte Position x(t + L) eine Abschätzung der ersten Position des virtuellen Objekts (VEH) zum Zeitpunkt t + L ist, und mittels der zweiten Recheneinheit (GPU) basierend auf der ersten extrapolierten Position x(t + L) die ersten Bilddaten berechnet werden.Method for testing an image processing system (UUT), in particular by means of a test stand according to one of Claims 1 to 14 in which a first processor unit (CPU) of a test bench is programmed with simulation software for an environment model and cyclically calculates a first position x (t) and a first speed vector v (t) in hard real time by means of the simulation software and a first virtual object (VEH1) are assigned in the environment model, by means of a second processing unit (GPU) of the test bench cyclically a position of the first virtual object (VEH1) is read in the environment model and by means of the second processing unit (GPU) based on the read-in first position x (t) first image data are calculated, which represent a two-dimensional graphic first projection of the environment model, read the first image data by means of an adapter module (AD) and processed by emulation of a first imaging sensor of the image processing system (UUT), by means of the adapter module (AD), the processed image data in the image processing system em (UUT) are fed, by means of the first processing unit (CPU) of the image processing system (UUT) based on the processed first image data calculated control data for an actuator can be read and the first virtual object (VEH1) taking into account the control data, a new first velocity vector is assigned, characterized in that the length .DELTA.t of the time interval from the beginning of the calculation of the first image data by the second arithmetic unit (GPU) until the completion of the processing of the first image data by the adapter module (AD) is measured, based on the length .DELTA.t of the time interval estimating a latency L of the first image data, taking into account the first position x (t), the first velocity vector v (t) and the estimated latency L, a first extrapolated position x (t + L) is determined, such that the first extrapolated Position x (t + L) is an estimate of the first position of the virtual object (VEH) at time t + L, and the first image data is calculated by means of the second arithmetic unit (GPU) based on the first extrapolated position x (t + L) ,
DE102016119538.3A 2016-10-13 2016-10-13 Low-latency test stand for an image processing system Withdrawn DE102016119538A1 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (1)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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