DE102018111390A1 - A method for rapid estimation of perspective occlusion in a simulation of an imaging sensor - Google Patents

A method for rapid estimation of perspective occlusion in a simulation of an imaging sensor Download PDF

Info

Publication number
DE102018111390A1
DE102018111390A1 DE102018111390.0A DE102018111390A DE102018111390A1 DE 102018111390 A1 DE102018111390 A1 DE 102018111390A1 DE 102018111390 A DE102018111390 A DE 102018111390A DE 102018111390 A1 DE102018111390 A1 DE 102018111390A1
Authority
DE
Germany
Prior art keywords
sensor
virtual
virtual object
image
projection
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.)
Pending
Application number
DE102018111390.0A
Other languages
German (de)
Inventor
Kusnadi LIEM
Michael PEPERHOWE
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
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 DE102018111390.0A priority Critical patent/DE102018111390A1/en
Publication of DE102018111390A1 publication Critical patent/DE102018111390A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/88Radar or analogous systems specially adapted for specific applications
    • G01S13/93Radar or analogous systems specially adapted for specific applications for anti-collision purposes
    • G01S13/931Radar or analogous systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/02Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S13/00
    • G01S7/40Means for monitoring or calibrating
    • G01S7/4052Means for monitoring or calibrating by simulation of echoes
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B9/00Simulators for teaching or training purposes
    • G09B9/54Simulation of radar
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/66Radar-tracking systems; Analogous systems
    • G01S13/72Radar-tracking systems; Analogous systems for two-dimensional tracking, e.g. combination of angle and range tracking, track-while-scan radar
    • G01S13/723Radar-tracking systems; Analogous systems for two-dimensional tracking, e.g. combination of angle and range tracking, track-while-scan radar by using numerical data
    • G01S13/726Multiple target tracking
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/88Radar or analogous systems specially adapted for specific applications
    • G01S13/89Radar or analogous systems specially adapted for specific applications for mapping or imaging
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/88Radar or analogous systems specially adapted for specific applications
    • G01S13/93Radar or analogous systems specially adapted for specific applications for anti-collision purposes
    • G01S13/931Radar or analogous systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • G01S2013/9323Alternative operation using light waves
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/88Radar or analogous systems specially adapted for specific applications
    • G01S13/93Radar or analogous systems specially adapted for specific applications for anti-collision purposes
    • G01S13/931Radar or analogous systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • G01S2013/9324Alternative operation using ultrasonic waves
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/02Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S13/00
    • G01S7/40Means for monitoring or calibrating
    • G01S7/4004Means for monitoring or calibrating of parts of a radar system
    • G01S7/4039Means for monitoring or calibrating of parts of a radar system of sensor or antenna obstruction, e.g. dirt- or ice-coating

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Business, Economics & Management (AREA)
  • Educational Administration (AREA)
  • Educational Technology (AREA)
  • Electromagnetism (AREA)
  • Computer Hardware Design (AREA)
  • Processing Or Creating Images (AREA)

Abstract

Verfahren zur Simulation eines Sensorsystems mit einem bildgebenden Sensor und einer Bildverarbeitungseinheit. Eine virtuelle Testumgebung umfasst den Sensor und eine Vielzahl virtueller Objekte, von denen eine Anzahl durch die Bildverarbeitungseinheit erkennbar ist. Wenn ein erstes virtuelles Objekt und ein durch die Bildverarbeitungseinheit erkennbares zweites virtuelles Objekt durch ein Sensorsichtfeld des Sensors erfasst sind, wird eine Projektionsebene aufgespannt. Ein mit dem ersten virtuellen Objekt ortsgleicher erster geometrischer Körper, dessen Abmessungen zumindest näherungsweise mit den Abmessungen des ersten virtuellen Objekts übereinstimmen, und ein mit dem zweiten virtuellen Objekt ortsgleicher zweiter geometrischer Körper, dessen Abmessungen zumindest näherungsweise mit den Abmessungen des zweiten virtuellen Objekts übereinstimmen, werden in einer Zentralprojektion mit den Ortskoordinaten des Sensors als Augpunkt auf die Projektionsebene projiziert. Wenn eine Schnittmenge der Abbilder des ersten geometrischen Körpers und des zweiten geometrischen Körpers existiert, der euklidische Abstand zwischen Sensor und erstem virtuellem Objekt geringer als der euklidische Abstand zwischen Sensor und zweitem virtuellem Objekt ist und die Größe der Schnittmenge einen vordefinierten Schwellwert überschreitet, wird das zweite virtuelle Objekt als perspektivisch verdeckt angenommen. Andernfalls wird das zweite virtuelle Objekt als perspektivisch nicht verdeckt angenommen.

Figure DE102018111390A1_0000
Method for simulating a sensor system with an imaging sensor and an image processing unit. A virtual test environment includes the sensor and a plurality of virtual objects, a number of which is recognizable by the image processing unit. When a first virtual object and a second virtual object recognizable by the image processing unit are detected by a sensor field of view of the sensor, a projection plane is spanned. A first geometric body resembling the first virtual object, the dimensions of which at least approximately coincide with the dimensions of the first virtual object, and a second geometric body having the same size as the second virtual object whose dimensions at least approximately coincide with the dimensions of the second virtual object projected in a central projection with the spatial coordinates of the sensor as an eye point on the projection plane. If an intersection of the images of the first geometric body and the second geometric body exists, the Euclidean distance between the sensor and the first virtual object is less than the Euclidean distance between the sensor and the second virtual object and the size of the intersection exceeds a predefined threshold, the second virtual object assumed to be hidden in perspective. Otherwise, the second virtual object is assumed to be unobstructed in perspective.
Figure DE102018111390A1_0000

Description

Die Erfindung betrifft Sensorsimulation und virtuelles Testen.The invention relates to sensor simulation and virtual testing.

In der Entwicklung sicherheitskritischer eingebetteter Systeme ist es bekannt, diese Systeme in einer virtuellen Testumgebung auf korrekte Funktion zu überprüfen. In einem als Hardware in the Loop (HIL) bekannten Verfahren ist ein Prototyp eines eingebetteten Systems mit einem Simulationsrechner verbunden, der eine größtenteils virtuelle Testumgebung bereitstellt und das eingebettete Systems in harter Echtzeit mit mittels der virtuellen Testumgebung erzeugten Eingangsdaten versorgt. Umgekehrt kann der Simulationsrechner Steuersignale des eingebetteten Systems auslesen und diese bei der Berechnung des Zustands der virtuellen Testumgebung im jeweils nächsten Simulationszeitschritt berücksichtigen. In früheren Entwicklungsstadien ist es auch bekannt, statt eines prototypischen eingebetteten Systems nur dessen Software oder deren Programmlogik in eine virtuelle Testumgebung einzubinden. Solche vollständig virtuellen Testverfahren sind als Software in the Loop (SIL) oder Model in the Loop (MIL) bekannt und müssen nicht zwangsläufig in Echtzeit ablaufen. In der Automobilindustrie ist weiterhin ein Vehicle in the Loop (VIL) genanntes Verfahren bekannt, bei dem ein Prototyp des eingebetteten Systems in einem physischen Testfahrzeug verbaut auf einer Teststrecke oder einem Rollenprüfstand getestet wird, wobei das eingebettete System in harter Echtzeit mit mittels einer virtuellen Testumgebung erzeugten synthetischen Sensordaten versorgt wird.In the development of safety-critical embedded systems, it is known to check these systems for correct functioning in a virtual test environment. In a method known as Hardware in the Loop (HIL), an embedded system prototype is connected to a simulation computer that provides a largely virtual test environment and provides the embedded system with hard real-time input data generated by the virtual test environment. Conversely, the simulation computer can read control signals of the embedded system and take them into account in the calculation of the state of the virtual test environment in the respective next simulation time step. In earlier stages of development, it is also known to integrate only its software or its program logic in a virtual test environment instead of a prototypical embedded system. Such fully virtual test methods are known as Software in the Loop (SIL) or Model in the Loop (MIL) and do not necessarily have to be performed in real time. Also known in the automotive industry is a method called Vehicle in the Loop (VIL) in which a prototype of the embedded system is tested in a physical test vehicle mounted on a test track or chassis dynamometer, the embedded system in hard real-time using a virtual test environment supplied synthetic sensor data is supplied.

Einige eingebettete Systeme werten Sensordaten aus, die von Sensorsystemen mit bildgebenden Sensoren zugeliefert werden. Besondere Bedeutung haben derartige eingebettete Systeme in der Automobilindustrie im Zusammenhang fortgeschrittener Fahrassistenzsysteme (ADAS, Advanced Driving Assistance Systems) und des hochautomatisierten Fahrens (HAF). Unter bildgebenden Sensoren werden alle Sensoren verstanden, aus deren Sensordaten ein Bild der Umgebung des Sensors reproduzierbar ist, insbesondere RADAR-, LIDAR- und Ultraschallsensoren und weiterhin die optischen Sensoren von Kamerasystemen zur passiven Bilderfassung im sichtbaren oder nicht sichtbaren Lichtspektrum. Derartige Sensorsysteme können neben dem Sensor selbst auch eine Bildverarbeitungseinheit zur Auswertung der von dem Sensor zugelieferten Bilddaten umfassen. Die Bildverarbeitungseinheit kann als autonomes eingebettetes System ausgestaltet sein oder in das zu prüfende eingebettete System integriert sein.Some embedded systems evaluate sensor data that is supplied by sensor systems with imaging sensors. Of particular importance are such embedded systems in the automotive industry in the context of Advanced Driving Assistance Systems (ADAS) and Highly Automated Driving (HAF). Imaging sensors are understood to mean all sensors from whose sensor data an image of the environment of the sensor is reproducible, in particular RADAR, LIDAR and ultrasound sensors and also the optical sensors of camera systems for passive image acquisition in the visible or non-visible light spectrum. Such sensor systems may include not only the sensor itself but also an image processing unit for evaluating the image data supplied by the sensor. The image processing unit can be designed as an autonomous embedded system or integrated into the embedded system to be tested.

Wenn eine virtuelle Testumgebung für die Prüfung eines eingebetteten Systems vorgesehen ist, das Eingangsdaten von einem Sensorsystem mit einem bildgebenden Sensor erwartet, muss die virtuelle Testumgebung eine Simulation des Sensorsystems umfassen. In einigen Anwendungsfällen, beispielsweise wenn die Bildverarbeitungseinheit kein Prüfling bzw. kein Teil des Prüflings ist, ist es zur Einsparung von Rechenaufwand sinnvoll, auf eine detaillierte Simulation des Sensors zu verzichten. Statt aus der virtuellen Testumgebung Bilddaten des Sensors zu berechnen, wird dem simulierten Sensor ein Sensorsichtfeld zugeordnet, beispielsweise ein vom Sensor ausgehendes kegelförmiges Sichtfeld mit begrenzter Reichweite, und aus einer Vielzahl von der virtuellen Testumgebung umfasster virtueller Objekte wird eine Anzahl virtueller Objekte als durch das Sensorsystem erkennbare virtuelle Objekte bestimmt. Wenn die Sensorsimulation beispielsweise für die Simulation einer Verkehrsschilderkennung vorgesehen ist, können alle der virtuellen Testumgebung zufügbaren virtuellen Verkehrsschilder als durch das Sensorsystem erkennbare virtuelle Objekte bestimmt werden. In einem Simulationslauf in der virtuellen Testumgebung würden dann in einer beispielhaften Anwendung alle virtuellen Verkehrsschilder, die von dem Sensorsichtfeld erfasst sind, in eine vorläufige Liste erkannter virtueller Objekte aufgenommen werden, während alle übrigen von dem Sensorsichtfeld erfassten virtuellen Objekte, beispielsweise Personen, Bäume, Gebäude, Fahrzeuge und Ampeln, von dem simulierten Sensorsystem grundsätzlich nicht erkannt werden, d.h. grundsätzlich nicht in die vorläufige Liste erkannter virtueller Objekte aufgenommen werden. If a virtual test environment is envisioned for testing an embedded system that expects input data from a sensor system with an imaging sensor, the virtual test environment must include a simulation of the sensor system. In some applications, for example, if the image processing unit is not a test piece or no part of the test object, it makes sense to save on computational effort to dispense with a detailed simulation of the sensor. Instead of computing image data from the sensor from the virtual test environment, a sensor field of view is associated with the simulated sensor, such as a limited range conical field of view from the sensor, and a plurality of virtual objects included in the virtual test environment become a number of virtual objects than by the sensor system identifiable virtual objects. If the sensor simulation is intended, for example, for the simulation of a traffic sign recognition, all the virtual traffic signs that can be added to the virtual test environment can be determined as virtual objects recognizable by the sensor system. In one simulation run in the virtual test environment, in one example application, all virtual road signs captured by the sensor field of view would then be included in a preliminary list of detected virtual objects, while all other virtual objects captured by the sensor field of view, such as persons, trees, buildings , Vehicles and traffic lights, are basically not recognized by the simulated sensor system, ie basically not included in the preliminary list of detected virtual objects.

In der vorliegenden Beschreibung der Erfindung ist demnach mit einer Simulation eines Sensorsystems bevorzugt eine Simulation anhand eines einfachen Sensorsystemmodells gemeint, das lediglich das Verhalten des Sensorsystems oberflächlich imitiert, aber allenfalls in geringem Umfang physikalische oder technische Abläufe eines physischen Sensorsystems simuliert und insbesondere keine Berechnung synthetischer Bilddaten, die beispielsweise die von einem echten bildgebenden Sensor erzeugten Bilddaten nachbilden, umfasst. Derartige einfache Sensorsystemmodelle sind auch als Ground-Truth-Sensoren bekannt. Ein Vorteil dieser ist der geringe Rechenaufwand, der zu ihrer Ausführung nötig ist. Dadurch eignen sich Ground-Truth-Sensoren besonders zur Anwendung auf virtuelle Tests, die in harter Echtzeit durchgeführt werden, beispielsweise auf Hardware-in-the-Loop-Verfahren.In the present description of the invention, a simulation of a sensor system therefore preferably means a simulation based on a simple sensor system model which only superficially imitates the behavior of the sensor system, but at most simulates to a limited extent physical or technical processes of a physical sensor system and in particular no calculation of synthetic image data which, for example, emulate the image data generated by a real imaging sensor. Such simple sensor system models are also known as ground truth sensors. One advantage of this is the low computational effort that is necessary for their execution. This makes ground-truth sensors particularly suitable for use in virtual tests that are performed in hard real-time, such as hardware-in-the-loop techniques.

Ein grundsätzliches Problem bei der Implementierung von Ground-Truth-Sensoren ist die Berücksichtigung einer perspektivischen Verdeckung von durch das Sensorsystem erkennbaren virtuellen Objekten. Wie vorhergehend beschrieben bewertet ein Ground-Truth-Sensor zunächst alle virtuellen Objekte als erkannt, die von dem Sensorsichtfeld erfasst und als durch das Sensorsystem erkennbare Objekte bestimmt sind. Um das Sensorsystem realistisch zu simulieren, muss aber nachträglich geprüft werden, ob ein als erkannt gewertetes virtuelles Objekt für den Sensor tatsächlich sichtbar ist oder ob das virtuelle Objekt aus Sicht des Sensors zumindest teilweise durch ein anderes virtuelles Objekt verdeckt ist. Wenn das der Fall ist und die perspektivische Verdeckung ein gewisses Maß überschreitet, muss das virtuelle Objekt aus der vorläufigen Liste erkannter virtueller Objekte entfernt werden.A fundamental problem with the implementation of ground truth sensors is the consideration of a perspective concealment of virtual objects detectable by the sensor system. As previously described, a ground truth sensor first evaluates as all detected virtual objects detected by the sensor field of view and determined as objects recognizable by the sensor system. To make the sensor system realistic However, it must be subsequently verified whether a virtual object deemed to be recognized is actually visible to the sensor or whether the virtual object is at least partially concealed by another virtual object from the perspective of the sensor. If this is the case and the perspective occlusion exceeds a certain extent, the virtual object must be removed from the preliminary list of detected virtual objects.

Aus dem Fachgebiet der Computergraphik sind zahlreiche Verfahren zur Erkennung perspektivisch verdeckter Flächen bekannt. Eine Auswahl ist beispielsweise in der Präsentation „Visibility and Hidden Surface Removal“ von Torsten Möller offenbart (Teil der Vorlesung „CMPT 361: Introduction to Computer Graphics“ der Simon Fräser University, Kanada, abrufbar im Internet). Einige davon beinhalten auch die Projektion einer dreidimensionalen Szene auf eine Projektionsebene. Ziel dieser bekannten Verfahren ist aber die Berechnung eines realistischen Bildes, und ihr hoher Rechenaufwand macht sie für Echtzeitanwendungen problematisch, zumal nach der Berechnung eines Sensorbildes gemäß einem der bekannten Verfahren noch evaluiert werden müsste, ob eine ermittelte perspektivische Verdeckung noch eine Erkennung des verdeckten Objekts durch das simulierte Sensorsystem zulassen würde.From the field of computer graphics, numerous methods for detecting perspective hidden surfaces are known. A selection is, for example, disclosed in the presentation "Visibility and Hidden Surface Removal" by Torsten Möller (part of the lecture "CMPT 361: Introduction to Computer Graphics" by Simon Fraser University, Canada, available on the Internet). Some of them also involve the projection of a three-dimensional scene onto a projection plane. The aim of these known methods, however, is the calculation of a realistic image, and their high computational complexity makes them problematic for real-time applications, especially after the calculation of a sensor image according to one of the known methods would still be evaluated whether a detected perspective occlusion nor a recognition of the hidden object by would allow the simulated sensor system.

Der Artikel „Fast Collision Detection Based on Projection Parallel Algorithm“ von Xue-Ii Shen und Tao Li (2nd International Conference on Future Computer und Communication, IEEE, 2010) beschreibt ein Verfahren zur Kollisionserkennung zweier Körper in einem dreidimensionalen Raum durch Projektion auf drei orthogonale Projektionsebenen und Durchführung einer Kollisionserkennung auf jeder Projektionsebene.Xue-Ii Shen and Tao Li (2nd International Conference on Future Computer and Communication, IEEE, 2010) describe a method for collision detection of two bodies in a three-dimensional space by projection onto three orthogonal spaces Projection levels and collision detection on each projection level.

Die EP 0 620 409 B1 offenbart eine Simulationsumgebung für die Entwicklung und den Test zielsuchender Raketen. Die Simulationsumgebung berechnet in harter Echtzeit ein synthetisches Bild für die bildgebenden Sensoren einer Rakete, und die Offenbarung umfasst ein Verfahren zur Erkennung perspektivisch verdeckter Flächen.The EP 0 620 409 B1 discloses a simulation environment for the development and testing of target seeking missiles. The simulation environment computes in hard real time a synthetic image for the imaging sensors of a missile, and the disclosure includes a method for detecting perspective hidden surfaces.

Vor diesem Hintergrund ist die Aufgabe der Erfindung, die Erkennung einer perspektivischen Verdeckung in einer Simulation eines Sensorsystems mit einem bildgebenden Sensor in einer virtuellen Testumgebung zu beschleunigen.Against this background, the object of the invention is to accelerate the detection of a perspective occlusion in a simulation of a sensor system with an imaging sensor in a virtual test environment.

Zur Lösung der Aufgabe wird ein nachfolgend beschriebenes Verfahren zur Simulation eines Sensorsystems vorgeschlagen. Das simulierte Sensorsystem umfasst dabei einen bildgebenden Sensor und eine Bildverarbeitungseinheit zur Erkennung von Objekten in dem von dem Sensor ausgegebenen Sensorbild. Die Simulation des Sensorsystems selbst ist bevorzugt ein Ground-Truth-Sensor und umfasst den bildgebenden Sensor und die Bildverarbeitungseinheit nur implizit.To solve the problem, a method described below for simulating a sensor system is proposed. The simulated sensor system comprises an imaging sensor and an image processing unit for detecting objects in the sensor image output by the sensor. The simulation of the sensor system itself is preferably a ground truth sensor and includes the imaging sensor and the image processing unit only implicitly.

Zur Anwendung des Verfahrens wird eine virtuelle Testumgebung eingesetzt, die eine Vielzahl virtueller Objekte umfasst und in der dem Sensor und jedem virtuellen Objekt jeweils Ortskoordinaten zugeordnet werden. For the application of the method, a virtual test environment is used, which comprises a plurality of virtual objects and in which the sensor and each virtual object are each assigned location coordinates.

Dem Sensor wird in der virtuellen Testumgebung ein Sensorsichtfeld zugeordnet, und eine Anzahl von Objekten aus der Vielzahl virtueller Objekte wird als durch das Sensorsystem erkennbare virtuelle Objekte bestimmt.The sensor is assigned a sensor field of view in the virtual test environment, and a number of objects of the plurality of virtual objects are determined as virtual objects detectable by the sensor system.

Auf der virtuellen Testumgebung wird ein Simulationslauf gestartet, in dessen Verlauf dem Sensor oder mindestens einem virtuellen Objekt zyklisch neue Ortskoordinaten in der virtuellen Testumgebung zugeordnet werden, und es wird zyklisch überprüft, ob zumindest ein virtuelles Objekt durch das Sensorsichtfeld erfasst ist.In the virtual test environment, a simulation run is started, in the course of which the sensor or at least one virtual object is cyclically assigned new location coordinates in the virtual test environment, and it is cyclically checked whether at least one virtual object is detected by the sensor field of view.

Wenn zumindest ein erstes virtuelles Objekt und ein zweites virtuelles Objekt durch das Sensorsichtfeld erfasst sind und das zweite virtuelle Objekt durch das Sensorsystem erkennbar ist, wird auf die nachfolgend beschriebene Weise eine Abschätzung der perspektivischen Verdeckung des zweiten Objekts durch das erste Objekt durchgeführt. Dazu wird in der virtuellen Testumgebung zunächst eine Projektionsebene aufgespannt, deren räumliche Orientierung so gewählt ist, dass sie für eine Zentralprojektion des ersten Objekts und des zweiten Objekts geeignet ist, wenn die Ortskoordinaten des Sensors als Augpunkt der Zentralprojektion verwendet werden. Eine Zentralprojektion ist als Projektion mit vom Augpunkt ausgehendem fächerförmigem Strahlengang zu verstehen, die auf der Projektionsebene ein Bild der projizierten Punkte erzeugt, wie sie ein am Augpunkt stehender Beobachter, konkret der Sensor, wahrnehmen würde.When at least a first virtual object and a second virtual object are detected by the sensor field of view and the second virtual object is recognizable by the sensor system, an estimation of the perspective obscuration of the second object by the first object is performed in the manner described below. For this purpose, in the virtual test environment, first a projection plane is spanned whose spatial orientation is selected such that it is suitable for a central projection of the first object and the second object if the spatial coordinates of the sensor are used as the eye point of the central projection. A central projection is to be understood as a projection with a fan-shaped beam path emanating from the eye point, which generates an image of the projected points on the projection plane, as would be perceived by an observer standing at the point of view, specifically the sensor.

Auf die Projektionsebene wird eine zumindest teilweise Zentralprojektion eines mit dem ersten Objekt ortsgleichen geometrischen Körpers mit den Ortskoordinaten des Sensors als Augpunkt durchgeführt, wobei die Abmessungen des unskalierten ersten geometrischen Körpers vollständig oder zumindest näherungsweise mit den Abmessungen des ersten Objekts übereinstimmen. Es ist unerheblich, ob der erste geometrische Körper in der virtuellen Testumgebung nativ vorhanden ist oder zur Durchführung der Zentralprojektion nach Bedarf erzeugt wird. Bei vollständiger Übereinstimmung der Abmessungen des ersten geometrischen Körpers und des ersten Objekts kann der erste geometrische Körper auch mit dem ersten Objekt identisch sein, also nur implizit in der virtuellen Testumgebung vorhanden sein. Bevorzugt ist der erste geometrische Körper ein Hüllkörper oder ein skalierter Hüllkörper des ersten Objekts. Unter einem Hüllkörper eines Objekts ist ein das Objekt vollständig umfassender geometrischer Körper mit gegenüber dem umfassten Objekt vereinfachter Geometrie zu verstehen, insbesondere ein Polyeder mit wenigen Vertices oder ein auf einfache Weise analytisch beschreibbarer Körper, beispielsweise eine Kugel oder ein Zylinder.An at least partial central projection of a geometrical body which is the same as the first object with the spatial coordinates of the sensor as eye point is performed on the projection plane, the dimensions of the unscaled first geometric body completely or at least approximately coinciding with the dimensions of the first object. It does not matter if the first geometric body is natively present in the virtual test environment or is generated to perform central projection as needed. If the dimensions of the first geometric body and the first object are completely identical, the first geometric body can also be identical to the first object, ie only implicitly be present in the virtual test environment. The first geometric body is preferably an enveloping body or a scaled enveloping body of the first object. An enveloping body of an object is to be understood as meaning a geometrical body completely encompassing the object with a simplified geometry relative to the encompassed object, in particular a polyhedron with few vertices or a body which can be analytically described in a simple manner, for example a sphere or a cylinder.

Wie viele Vertices ein Hüllkörper höchstens umfassen sollte bzw. wie einfach dessen Geometrie sein sollte, ist vom Anwendungsfall abhängig und kaum allgemeingültig festlegbar. Sofern das Verfahren zur Ausführung in Echtzeit vorgesehen ist, sollte die Geometrie der geometrischen Körper grundsätzlich derart gewählt sein, dass ein vollständiger Durchlauf einer Softwareimplementierung des Verfahrens innerhalb einer durch den Anwendungsfall vorgegebenen Zeitspanne, insbesondere innerhalb eines Simulationszeitschritts, so sicher gewährleistet ist, dass innerhalb eines vollständigen Simulationslaufs keine Übertretung der vorgegebenen Zeitspanne durch die Softwareimplementierung zu erwarten ist. Welche Geometrien der geometrischen Körper bzw. welche Anzahl von Vertices vertretbar sind, ist insbesondere von der Implementierung des Verfahrens, der Komplexität der virtuellen Testumgebung und der Simulation und von der Hardwareausstattung des das Verfahren durchführenden Computersystems abhängig.How many vertices an enveloping body should at most include, or how simple its geometry should be, depends on the application and is hardly universally determinable. If the method is provided for real-time execution, the geometry of the geometric bodies should in principle be selected such that a complete run of a software implementation of the method within a period of time specified by the application, in particular within a simulation time step, is so assured that within one complete simulation run, no violation of the predetermined time span by the software implementation is to be expected. Which geometries of the geometric bodies or which number of vertices are acceptable depends in particular on the implementation of the method, the complexity of the virtual test environment and the simulation, and on the hardware configuration of the computer system performing the method.

Unter einer teilweisen Zentralprojektion bzw. einer teilweise durchgeführten Zentralprojektion eines Objekts ist zu verstehen, dass nur eine unvollständige Auswahl von Punkten des Objekts in einer Zentralprojektion auf die Projektionsebene projiziert wird. In einigen Ausführungsformen wird aus den projizierten Punkten eine Menge auf der Projektionsebene gebildet, die näherungsweise mit einem aus einer vollständig durchgeführten Zentralprojektion des Objekts resultierenden Abbild übereinstimmt.A partial central projection or a partially performed central projection of an object means that only an incomplete selection of points of the object in a central projection is projected onto the projection plane. In some embodiments, from the projected points, an amount is formed on the projection plane that approximates an image resulting from a complete central projection of the object.

Auf zur Durchführung der Zentralprojektion des ersten geometrischen Körpers analoge Weise wird eine zumindest teilweise Zentralprojektion eines mit dem zweiten Objekt ortsgleichen zweiten geometrischen Körpers auf die Projektionsebene mit den Ortskoordinaten des Sensors als Augpunkt durchgeführt, wobei die Abmessungen des unskalierten zweiten geometrischen Körpers vollständig oder zumindest näherungsweise mit den Abmessungen des zweiten Objekts übereinstimmen.In an analogous manner for carrying out the central projection of the first geometric body, an at least partial central projection of a second geometric body which is the same with the second object is carried out on the projection plane with the spatial coordinates of the sensor as an eye point, the dimensions of the unscaled second geometric body being completely or at least approximately match the dimensions of the second object.

Die Projektion des ersten geometrischen Körpers erzeugt ein erstes Abbild auf der Projektionsebene, die Projektion des zweiten geometrischen Körpers erzeugt ein zweites Abbild auf der Projektionsebene. Nachfolgend wird geprüft, ob eine Schnittmenge des ersten Abbilds und des zweiten Abbilds existiert. In dem Fall, dass erstens eine Schnittmenge existiert, zweitens der euklidische Abstand zwischen Sensor und erstem Objekt geringer als der euklidische Abstand zwischen Sensor und zweitem Objekt ist und drittens die Größe der Schnittmenge in Relation zur Größe des zweiten Abbilds einen vordefinierten Schwellwert überschreitet, wird das zweite Objekt als geometrisch verdeckt gewertet, d.h. es wird davon ausgegangen, dass die Bildverarbeitungseinheit das zweite Objekt nicht erkennt, auch dann nicht, wenn das zweite Objekt aus Sicht des Sensors teilweise sichtbar ist, weil der Grad der perspektivischen Verdeckung für eine Erkennung des zweiten Objekts durch die Bildverarbeitungseinheit zu hoch ist. Eine Ermittlung der euklidischen Abstände erfolgt bevorzugt anhand der Ortskoordinaten des Sensors, des ersten Objekts und des zweiten Objekts.The projection of the first geometric body produces a first image on the projection plane, the projection of the second geometric body produces a second image on the projection plane. Subsequently, it is checked whether an intersection of the first image and the second image exists. Secondly, in the case where there exists an intersection, secondly the Euclidean distance between sensor and first object is less than the Euclidean distance between sensor and second object and thirdly the size of the intersection in relation to the size of the second image exceeds a predefined threshold value second object scored as geometrically obscured, ie it is assumed that the image processing unit does not recognize the second object, even if the second object is partially visible from the sensor's point of view, because the degree of perspective occlusion is too high for recognition of the second object by the image processing unit. A determination of the Euclidean distances is preferably based on the location coordinates of the sensor, the first object and the second object.

Ein euklidischer Abstand zwischen dem Sensor und einem Objekt kann anhand der Ortskoordinaten des Sensors und eines festgelegten Punktes des Objekts ermittelt werden, beispielsweise anhand des dem Sensor nächstliegenden Punktes des Objekts oder der Ortskoordinaten des Objekts.A Euclidean distance between the sensor and an object can be determined on the basis of the spatial coordinates of the sensor and a defined point of the object, for example based on the point of the object closest to the sensor or the spatial coordinates of the object.

In dem Fall, dass mindestens eine der vorgenannten Bedingungen nicht erfüllt ist, dass also entweder keine Schnittmenge existiert oder der euklidische Abstand zwischen Sensor und erstem Objekt größer oder gleich dem euklidischen Abstand zwischen Sensor und zweitem Objekt ist oder die Größe der Schnittmenge in Relation zur Größe des zweiten Abbilds den vordefinierten Schwellwert nicht überschreitet, wird das zweite Objekt als perspektivisch nicht verdeckt gewertet, d.h. es wird davon ausgegangen, dass die Bildverarbeitungseinheit das zweite Objekt erkennt, auch dann, wenn das zweite Objekt teilweise durch das erste Objekt perspektivisch verdeckt ist, weil der Grad der perspektivischen Verdeckung für eine Erkennung des zweiten Objekts durch die Bildverarbeitungseinheit hinreichend niedrig ist.In the event that at least one of the aforementioned conditions is not met, that is either no intersection exists or the Euclidean distance between the sensor and the first object is greater than or equal to the Euclidean distance between the sensor and the second object or the size of the intersection in relation to the size of the second image does not exceed the predefined threshold value, the second object is evaluated as being perspectively unobscured, ie it is assumed that the image processing unit recognizes the second object even if the second object is partly hidden in perspective by the first object because the degree of perspective occlusion for recognition of the second object by the image processing unit is sufficiently low.

Die vorhergehend beschriebene Abschätzung einer perspektivischen Verdeckung kann bei Bedarf mehrfach auf jeweils unterschiedliche virtuelle Objekte durchgeführt werden, wenn neben dem ersten Objekt und dem zweiten Objekt weitere virtuelle Objekte durch das Sensorsichtfeld erfasst sind. Zur Auswertung durch den Prüfling oder durch das die virtuelle Testumgebung betreibende Computersystem wird ein Signal des Sensorsystems erzeugt, dem die Information entnehmbar ist, dass alle durch das Sensorsichtfeld erfassten und durch das Sensorsystem erkennbaren virtuellen Objekte, die als perspektivisch nicht verdeckt gewertet sind, von der Bildverarbeitungseinheit erkannt wurden und alle durch das Sensorsichtfeld erfassten und durch das Sensorsystem erkennbaren virtuellen Objekte, die als perspektivisch verdeckt gewertet sind, von der Bildverarbeitungseinheit nicht erkannt wurden.If necessary, the previously described estimation of a perspective occlusion can be performed multiple times on respectively different virtual objects if, in addition to the first object and the second object, further virtual objects are detected by the sensor field of view. For evaluation by the device under test or by the virtual test environment operating computer system, a signal of the sensor system is generated to which the information is removable, that all detected by the sensor field of view and detectable by the sensor system virtual objects that are not considered to be hidden from the perspective of the Image processing unit were detected and all detected by the sensor field of view and recognizable by the sensor system virtual objects that perspective are hidden, were not recognized by the image processing unit.

In einem möglichen Anwendungsfall bildet das Signal ein mögliches Signal eines realen Sensorsystems nach, insbesondere eines in Serie produzierten oder prototypischen Sensorsystems. In einem anderen möglichen Anwendungsfall bildet das Signal kein mögliches Signal eines realen Sensorsystems nach und wird beispielsweise zur Ansteuerung eines Prüfstands verwendet, der eingerichtet ist, einem realen bildgebenden Sensor die Existenz von Objekten innerhalb seines Sensorsichtfelds vorzutäuschen.In one possible application, the signal simulates a possible signal of a real sensor system, in particular a series-produced or prototype sensor system. In another possible application, the signal does not simulate a possible signal from a real sensor system and is used, for example, to drive a test bench that is set up to simulate the existence of objects within its sensor field of view to a real imaging sensor.

Ein Vorteil der Erfindung ist, dass sie eine schnelle und verlässliche Abschätzung der Erkennbarkeit eines virtuellen Objekts für ein bildverarbeitendes Sensorsystem ermöglicht, ohne dabei auf rechenaufwendige Verfahren aus der Computergraphik, beispielsweise Raytracing oder Z-Buffering, zurückzugreifen. Dadurch verringert das Verfahren auch den Hardwareaufwand für eine Simulation eines entsprechenden Sensorsystems, weil es ohne Anwendung eines Graphikprozessors (GPU, Graphics Processing Unit) durchführbar ist. Untersuchungen der Anmelderin haben ergeben, dass eine Softwareimplementierung eines erfindungsgemäßen Verfahrens verlässlich innerhalb einer Millisekunde durchlaufen kann. Das bedeutet, dass die Erfindung sich zur Anwendung auf ein Hardware-in-the-Loop-Verfahren eignet und das erfindungsgemäße Verfahren im Sinne eines Hardware-in-the-Loop-Verfahrens echtzeittauglich ist.An advantage of the invention is that it enables a fast and reliable estimation of the visibility of a virtual object for an image processing sensor system, without resorting to computationally expensive methods from computer graphics, for example ray tracing or Z-buffering. As a result, the method also reduces the hardware expenditure for a simulation of a corresponding sensor system because it can be carried out without the use of a graphics processor (GPU). Investigations by the Applicant have shown that a software implementation of a method according to the invention can reliably run through within a millisecond. This means that the invention is suitable for application to a hardware-in-the-loop method and the method according to the invention is real-time capable in the sense of a hardware-in-the-loop method.

Vorteilhaft ist der Sensor in der virtuellen Testumgebung an einem virtuellen Automaten aufgehängt, wobei das Signal des Sensorsystems von einem zur Ansteuerung des virtuellen Automaten eingerichteten Steuersystem oder von einer zur Ansteuerung des virtuellen Automaten eingerichteten Steuersoftware überwacht wird. Das Steuersystem kann insbesondere ein Prüfling sein, beispielsweise ein prototypisches eingebettetes System zur Steuerung eines physischen Automaten, das anhand eines Sensorbildes Entscheidungen über die Steuerung des Automaten trifft. Entsprechend kann die Steuersoftware insbesondere eine prototypische, für die Installation auf einem Steuersystem zur Steuerung eines physischen Automaten vorgesehene Steuersoftware sein, oder eine in der Entwicklung befindliche Programmlogik, die für die spätere Aufbereitung zur Installation auf einem entsprechenden Steuersystem vorgesehen ist. Der virtuelle Automat ist besonders bevorzugt ein virtuelles automatisiertes Vehikel, wobei unter einem Vehikel ein beliebiges zur Fortbewegung aus eigener Kraft eingerichtetes technisches System zu verstehen ist. Unter einer Aufhängung des Sensors an einem virtuellen Automaten ist insbesondere zu verstehen, dass die Ortskoordinaten des Sensors und die räumliche Orientierung des Sensorsichtfelds durch die Ortskoordinaten und/oder die räumliche Orientierung und/oder einen Zustand des virtuellen Automaten eindeutig vorgegeben sind.Advantageously, the sensor is suspended in the virtual test environment on a virtual machine, wherein the signal of the sensor system is monitored by a control system set up to control the virtual machine or by a control software set up to control the virtual machine. In particular, the control system may be a device under test, for example a prototype embedded system for controlling a physical machine, which makes decisions about the control of the machine on the basis of a sensor image. Accordingly, the control software may be, in particular, a prototypical control software intended for installation on a control system for controlling a physical machine or a program logic under development intended for later preparation for installation on a corresponding control system. The virtual vending machine is particularly preferably a virtual automated vehicle, wherein a vehicle is to be understood as meaning any technical system set up to move on its own power. A suspension of the sensor on a virtual machine is to be understood in particular that the location coordinates of the sensor and the spatial orientation of the sensor field of view by the location coordinates and / or the spatial orientation and / or state of the virtual machine are clearly specified.

Zur weiteren Reduktion des Rechenaufwands ist es vorteilhaft, keine vollständige Projektion eines geometrischen Körpers auf die Projektionsebene durchzuführen, sondern nur eine Auswahl von Punkten des geometrischen Körpers auf die Projektionsebene zu projizieren und aus der von den Abbildem der ausgewählten Punkte gebildeten Punktwolke eine zweidimensionale Menge auf der Projektionsebene zu bilden, die näherungsweise dem Abbild des vollständig projizierten geometrischen Körpers entspricht und bevorzugt alle Punkte der Punktwolke umfasst, beispielsweise durch Bildung der konvexen Hülle der Punktwolke. Zur Projektion eines polyedrischen geometrischen Körpers wäre es beispielsweise möglich, alle Vertices oder eine Auswahl von Vertices des geometrischen Körpers zu projizieren. Besonders vorteilhaft werden ausschließlich Punkte eines geometrischen Körpers projiziert, deren Abbilder Elemente der konvexen Hülle des aus einer vollständigen Projektion des geometrischen Körpers resultierenden Abbilds sind. Ein numerisches Verfahren zur Ermittlung einer solchen Auswahl von Punkten ist in der Beschreibung der 4 bis 6 offenbart.To further reduce the computational effort, it is advantageous not to perform a complete projection of a geometric body on the projection plane, but to project only a selection of points of the geometric body on the projection plane and from the point cloud formed by the images of the selected points a two-dimensional set on the Forming projection plane that corresponds approximately to the image of the fully projected geometric body and preferably includes all points of the point cloud, for example, by forming the convex hull of the point cloud. For example, to project a polyhedral geometric body, it would be possible to project all vertices or a selection of vertices of the geometric body. Particularly advantageous only points of a geometric body are projected, whose images are elements of the convex hull of resulting from a complete projection of the geometric body image. A numerical method for determining such a selection of points is in the description of FIG 4 to 6 disclosed.

Die konvexe Hülle einer Menge von Punkten ist die kleinste konvexe Menge, die alle Punkte aus der Menge von Punkten umfasst. Eine Menge heißt konvex, wenn jede zwischen zwei Punkten der Menge gezogene Verbindungsgerade vollständig in der Menge enthalten ist. Ein Körper heißt konvex, wenn eine mit dem Körper deckungsgleiche Menge von Raumpunkten konvex ist.The convex hull of a set of points is the smallest convex set that includes all points from the set of points. A set is called convex if every connecting line drawn between two points of the set is completely contained in the set. A body is called convex if a set of spatial points congruent with the body is convex.

Zur Prüfung der Existenz einer Schnittmenge und zur Ermittlung der Größe der Schnittmenge in Relation zur Größe des zweiten Abbilds kann in einer Ausgestaltung der Erfindung ein bekanntes numerisches Verfahren zur Ausmessung von Flächen angewandt werden. Beispielsweise kann die Projektionsebene in hinreichend kleine Felder unterteilt werden, beispielsweise in Quadrate, Dreiecke oder Sechsecke. Die Erkennung der Existenz einer Schnittmenge und der Größenvergleich zum zweiten Abbild kann dann durch Zählung der Felder erfolgen, die zumindest teilweise sowohl innerhalb des ersten Abbilds als auch innerhalb des zweiten Abbilds bzw. die zumindest teilweise innerhalb des zweiten Abbilds liegen, und durch Vergleich der ermittelten Felderanzahlen.In order to test the existence of an intersection and to determine the size of the intersection in relation to the size of the second image, a known numerical method for the measurement of areas can be used in one embodiment of the invention. For example, the projection plane can be subdivided into sufficiently small fields, for example in squares, triangles or hexagons. The detection of the existence of an intersection and the size comparison to the second image can then take place by counting the fields that lie at least partially both within the first image and within the second image or at least partially within the second image, and by comparing the determined fields numbers.

Vorteilhaft wird auf eine Ausmessung von Flächen aber verzichtet, indem der Schwellwert für die Größe der Schnittmenge gleich null gesetzt ist und die Prüfung der Existenz einer Schnittmenge anhand einer Kollisionserkennung des ersten Abbilds und des zweiten Abbilds auf der Projektionsebene durchgeführt wird. In diesem letztgenannten Ausführungsbeispiel genügt also der bloße Nachweis der Existenz einer Schnittmenge des ersten Abbilds und des zweiten Abbilds, um den zweiten virtuellen Körper als verdeckt zu werten, gesetzt den Fall, der euklidische Abstand des ersten virtuellen Objekts zum Sensor ist geringer als der euklidische Abstand des zweiten virtuellen Objekts zum Sensor. Die Größe der Schnittmenge ist unerheblich. Das Verfahren wird dadurch erheblich beschleunigt, weil der bloße Nachweis der Existenz oder Nichtexistenz einer Schnittmenge bei entsprechend geschickter Implementierung des Verfahrens weniger Rechenschritte in Anspruch nimmt als die Ausmessung einer Fläche.Advantageously, however, a measurement of areas is dispensed with by setting the threshold value for the size of the intersection to zero and carrying out the check of the existence of an intersection on the basis of collision detection of the first image and of the second image on the projection plane. In this latter Thus, the mere proof of the existence of an intersection of the first image and the second image in order to evaluate the second virtual body as obscured sets the case, the Euclidean distance of the first virtual object to the sensor is less than the Euclidean distance of the second virtual one Object to the sensor. The size of the intersection is insignificant. The method is considerably accelerated because the mere verification of the existence or nonexistence of an intersection with correspondingly clever implementation of the method requires fewer calculation steps than the measurement of an area.

Zur Kollisionserkennung des ersten Abbilds und des zweiten Abbilds ist die Anwendung eines Gilbert-Johnson-Keerthi-Algorithmus, nachfolgend GJK-Algorithmus, vorteilhaft, wie er beispielsweise in dem Fachartikel „The Gilbert-Johnson-Keerthi Distance Algorithm“ von Patrick Lindemann (geschrieben für das Media Informatics Proseminar on „Algorithms on Media Informatics“, 2009) beschrieben ist.For collision detection of the first image and the second image, the application of a Gilbert-Johnson-Keerthi algorithm, hereinafter GJK algorithm, advantageous, as for example in the article "The Gilbert Johnson Keerthi Distance Algorithm" by Patrick Lindemann (written for the Media Informatics Proseminar on "Algorithms on Media Informatics", 2009).

Das erste und das zweite Abbild kollidieren genau dann, wenn ihre Minkowski-Differenz den Ursprung eines auf der Projektionsebene definierten kartesischen Koordinatensystems umfasst. Der GJK-Algorithmus sieht vor, die Minkowski-Differenz des ersten Abbilds und des zweiten Abbilds zu bilden und durch wiederholte Definition eines Dreiecks in der Minkowski-Differenz, wobei sich das Dreieck in jedem Iterationsschritt mehr dem Ursprung annähert, zu überprüfen, ob die Minkowski-Differenz den Ursprung umfasst. Der GJK-Algorithmus ist ausschließlich auf konvexe Mengen anwendbar.The first and the second image collide if and only if their Minkowski difference comprises the origin of a Cartesian coordinate system defined on the projection plane. The GJK algorithm proposes to construct the Minkowski difference of the first image and the second image, and to check whether the Minkowski is repeated by defining a triangle in the Minkowski difference, with the triangle approximating the origin in each iteration step Difference includes the origin. The GJK algorithm is applicable only to convex sets.

Für einen schnellen Durchlauf des GJK-Algorithmus ist es vorteilhaft, wenn das erste Abbild und das zweite Abbild konvexe geschlossene Polygonzüge mit wenigen Vertices sind, sodass das erste Abbild und das zweite Abbild - und in der Folge deren Minkowski-Differenz - jeweils in eine kleine Anzahl von Dreiecken unterteilbar sind. Das kann dadurch sichergestellt werden, dass die geometrischen Körper als konvexe Polyeder mit wenigen Vertices ausgestaltet sind, wobei insbesondere vor der Durchführung der Projektion eines geometrischen Körpers eine Auswahl von Vertices des geometrischen Körper ermittelt wird, deren Abbilder Elemente der konvexen Hülle des Abbilds des geometrischen Körpers sind. Dabei wird jeweils nur die Auswahl von Vertices projiziert.For a fast pass of the GJK algorithm, it is advantageous if the first image and the second image are convex closed polygons with few vertices, so that the first image and the second image - and consequently their Minkowski difference - each into a small Number of triangles are divisible. This can be ensured by configuring the geometric bodies as convex polyhedra having few vertices, wherein, in particular, before performing the projection of a geometric body, a selection of vertices of the geometric body is determined whose images are elements of the convex hull of the image of the geometric body are. Only the selection of vertices is projected.

Mittels einer Kollisionserkennung, beispielsweise des GJK-Algorithmus, ist die Existenz bzw. Nichtexistenz einer Schnittmenge des ersten Abbilds und des zweiten Abbilds nachweisbar. Eine Kollisionserkennung liefert aber im allgemeinen keine Information über die Größe einer existierenden Schnittmenge. Wenn, wie in den vorhergehend beschriebenen Ausführungsformen der Erfindung, der Schwellwert für die Größe der Schnittmenge gleich null gesetzt ist und für die Prüfung der Existenz einer Schnittmenge eine Kollisionserkennung angewandt wird, bewirkt jede perspektivische Verdeckung des zweiten Objekts durch das erste Objekt eine Bewertung des zweiten Objekts als perspektivisch verdeckt, unabhängig von dem Grad der perspektivischen Verdeckung.By means of collision detection, for example of the GJK algorithm, the existence or non-existence of an intersection of the first image and the second image can be detected. However, collision detection generally does not provide information about the size of an existing intersection. If, as in the previously described embodiments of the invention, the threshold for the size of the intersection is set equal to zero and collision detection is used for the existence of an intersection check, each perspective obscuration of the second object by the first object results in an evaluation of the second Object as perspective concealed, regardless of the degree of perspective occlusion.

In einigen Fällen entspricht das nicht dem Verhalten realer bildverarbeitender Sensorsysteme. Im allgemeinen ist damit zu rechnen, dass ein reales Sensorsystem, das zur Identifikation von Objekten in einem Sensorbild eingerichtet ist, ein für das Sensorsystem erkennbares, aber perspektivisch verdecktes Objekt erkennt, sofern der Grad der perspektivischen Verdeckung einen gewissen Toleranzwert nicht überschreitet, und dass das Sensorsystem das perspektivisch verdeckte Objekt nicht erkennt, wenn der Grad der perspektivischen Verdeckung den Toleranzwert überschreitet.In some cases this does not match the behavior of real image processing sensor systems. In general, it is to be expected that a real sensor system, which is set up for the identification of objects in a sensor image, detects an object that is recognizable but perspectively concealed for the sensor system, provided that the degree of perspective concealment does not exceed a certain tolerance value, and that Sensor system does not recognize the perspective hidden object when the degree of perspective occlusion exceeds the tolerance value.

Um dieses Verhalten bei Anwendung einer Kollisionserkennung nachzubilden, ist in einer Ausgestaltung der Erfindung vorgesehen, einen Toleranzwert für eine perspektivische Verdeckung eines für das Sensorsystem erkennbaren Objekts festzulegen, aus dem Toleranzwert einen Skalierungsfaktor zu berechnen und vor der Durchführung der Projektion zumindest den ersten geometrischen Körper oder den zweiten geometrischen Körper um den Skalierungsfaktor kleiner zu skalieren oder vor der Durchführung der Kollisionserkennung zumindest das erste Abbild oder das zweite Abbild um den Skalierungsfaktor kleiner zu skalieren. In der Beschreibung der 7 ist ein beispielhafter Algorithmus zur Berechnung von Skalierungsfaktoren offenbart.In order to simulate this behavior when using a collision detection, it is provided in one embodiment of the invention to determine a tolerance value for a perspective masking of an object recognizable for the sensor system, to calculate a scaling factor from the tolerance value, and at least the first geometric body before the projection to scale the second geometric body smaller by the scaling factor, or to scale down at least the first image or the second image by the scaling factor before performing the collision detection. In the description of 7 an exemplary algorithm for calculating scaling factors is disclosed.

Im allgemeinen, insbesondere bei entsprechend geschickter Programmierung des Projektionsvorgangs oder der Kollisionserkennung, ist es nicht grundsätzlich notwendig, den Projektionsvorgang abzuschließen. Zwecks einer weiteren Beschleunigung des erfindungsgemäßen Verfahrens ist es in einer besonders vorteilhaften Ausgestaltung vorgesehen, schon während eines laufenden Projektionsvorgangs des ersten geometrischen Körpers oder des zweiten geometrischen Körpers, insbesondere wobei die Projektionen des ersten geometrischen Körpers und des zweiten geometrischen Körpers parallel durchgeführt werden, eine Kollisionserkennung anhand der Abbilder der bereits auf die Projektionsebene projizierten Punkte des ersten geometrischen Körpers und des zweiten geometrischen Körpers durchzuführen und die noch nicht abgeschlossenen Projektionen abzubrechen, wenn anhand der Abbilder der bereits projizierten Punkte eine Kollision erkannt wird oder eine Kollision ausgeschlossen wird.In general, especially with appropriately skilled programming of the projection process or the collision detection, it is not always necessary to complete the projection process. For a further acceleration of the method according to the invention, it is provided in a particularly advantageous embodiment, already during a current projection operation of the first geometric body or the second geometric body, in particular wherein the projections of the first geometric body and the second geometric body are performed in parallel, a collision detection perform on the basis of the images of the already projected on the projection plane points of the first geometric body and the second geometric body and abort the incomplete projections when based on the images of the already projected points a collision is detected or a collision is excluded.

Die beanspruchte Erfindung umfasst auch ein zur Durchführung eines erfindungsgemäßen Verfahrens eingerichtetes Computersystem sowie ein Computerprogrammprodukt zur Einrichtung eines Computersystems zur Durchführung eines erfindungsgemäßen Verfahrens. The claimed invention also encompasses a computer system configured to carry out a method according to the invention and a computer program product for setting up a computer system for carrying out a method according to the invention.

Nachfolgend wird anhand der Figuren ein vorteilhaftes Ausführungsbeispiel beschrieben, das die Erfindung näher erläutert. Es zeigen

  • 1 ein zur Durchführung eines erfindungsgemäßen Verfahrens eingerichtetes Computersystem;
  • 2 eine auf dem Computersystem hinterlegte virtuelle Testumgebung;
  • 3 einen beispielhaften Projektionsvorgang eines ersten geometrischen Körpers und eines zweiten geometrischen Körpers;
  • 4 ein Verfahren zur Auswahl eines zur Projektion vorgesehenen Punktes eines geometrischen Körpers;
  • 5 ein erstes Beispiel für einen Abbruch eines Projektionsvorgangs nach Ausschluss einer Kollision;
  • 6 ein zweites Beispiel für einen Abbruch eines Projektionsvorgangs nach Erkennung einer Kollision; und
  • 7 beispielhafte Skalierungen des ersten oder des zweiten geometrischen Körpers.
Hereinafter, an advantageous embodiment will be described with reference to the figures, which explains the invention in more detail. Show it
  • 1 a computer system configured to carry out a method according to the invention;
  • 2 a virtual test environment stored on the computer system;
  • 3 an exemplary projection process of a first geometric body and a second geometric body;
  • 4 a method for selecting a point of projection of a geometric body;
  • 5 a first example of a termination of a projection process after exclusion of a collision;
  • 6 a second example of a termination of a projection process after detection of a collision; and
  • 7 exemplary scalings of the first or the second geometric body.

Die Abbildung der 1 zeigt ein als Prüfstand eingerichtetes Computersystem TB für einen virtuellen Test eines als Fahrassistenzsystems ausgestalteten radargestützten Steuersystems UUT. Das Computersystem TB umfasst einen Simulationsrechner SI, einen Radarprüfstand RD und einen Hostrechner H. Der Simulationsrechner SI umfasst eine Prozessoreinheit C, auf der ein Echtzeitbetriebssystem (nicht dargestellt) und eine virtuelle Testumgebung VT hinterlegt sind, und eine Schnittstelleneinheit IN für den Austausch von Daten zwischen der virtuellen Testumgebung VT und der Peripherie des Simulationsrechners SI. Auf dem Hostrechner H hinterlegt ist ein Computerprogrammprodukt zur Einrichtung der virtuellen Testumgebung VT und zur Hinterlegung der virtuellen Testumgebung VT auf der Prozessoreinheit C, außerdem eine Bediensoftware zur Überwachung und Ansteuerung der virtuellen Testumgebung VT auf der Prozessoreinheit C während eines Simulationslaufs der virtuellen Testumgebung VT.The picture of the 1 shows a set up as a test computer system TB for a virtual test of a radar-based control system designed as a driver assistance system UUT , The computer system TB includes a simulation computer SI , a radar tester RD and a host H , The simulation computer SI includes a processor unit C , on which a real-time operating system (not shown) and a virtual test environment VT are deposited, and an interface unit IN for the exchange of data between the virtual test environment VT and the periphery of the simulation computer SI , On the host H A computer program product for setting up the virtual test environment is deposited VT and to deposit the virtual test environment VT on the processor unit C , as well as operating software for monitoring and controlling the virtual test environment VT on the processor unit C during a simulation run of the virtual test environment VT ,

Das Computersystem TB umfasst als Prüfling das radargestützte Steuersystem UUT mit einer Sende-Empfangs-Einheit TR, einem ersten Steuergerät E1 und einem zweiten Steuergerät E2. Die Sende-Empfangs-Einheit TR ist eingerichtet, um einen Radarpuls RS auszusenden, mittels eines bildgebenden Radarsensors Radarechos RE des Radarpulses RS zu empfangen und anhand der Radarechos RE ein Sensorbild einer Umgebung der Sende-Empfangs-Einheit TR zu erstellen. Das erste Steuergerät E1 umfasst eine Bildverarbeitungseinheit zur Erkennung von Objekten in dem Sensorbild und ist außerdem eingerichtet, anhand der erkannten Objekte eine Beschreibung der Umgebung der Sende-Empfangs-Einheit zu erstellen. Das zweite Steuergerät E2 ist eingerichtet, die Beschreibung der Umgebung einzulesen, auszuwerten und anhand der Beschreibung der Umgebung ein virtuelles automatisiertes Vehikel VE in der virtuellen Testumgebung VT anzusteuern.The computer system TB includes as a candidate the radar-based control system UUT with a transceiver unit TR , a first controller E1 and a second controller E2 , The transceiver unit TR is set up to make a radar pulse RS Send by means of an imaging radar sensor radar echoes RE of the radar pulse RS to receive and based on the radar echoes RE a sensor image of an environment of the transceiver unit TR to create. The first controller E1 includes an image processing unit for detecting objects in the sensor image and is also configured to create a description of the surroundings of the transceiver unit based on the detected objects. The second control unit E2 is set up to read in the description of the environment, to evaluate and, based on the description of the environment, a virtual automated vehicle VE in the virtual test environment VT head for.

Der Radarprüfstand RD umfasst eine Anzahl auf Kreisbögen bewegbarer Radarsender T, die zur Aussendung von Radarpulsen zur Simulation von Radarechos RE eingerichtet sind. Der Simulationsrechner SI ist eingerichtet, um den Radarprüfstand RD anzusteuern. Der Simulationsrechner positioniert dabei die Radarsender T und stimmt die simulierten Radarechos RE zeitlich derart ab, dass der Radarprüfstand RD Radarechos RE von virtuellen Objekten in der virtuellen Testumgebung auf einen von der Sende-Empfangs-Einheit TR ausgesendeten Radarpuls nachbildet.The radar test bench RD includes a number of circular arcs of movable radar transmitters T for sending radar pulses to simulate radar echoes RE are set up. The simulation computer SI is set up to the radar test bench RD head for. The simulation computer positions the radar transmitter T and tune the simulated radar echoes RE time off so that the radar tester RD radar echoes RE from virtual objects in the virtual test environment to one from the transceiver unit TR emits emitted radar pulse.

Die Abbildung der 2 zeigt eine beispielhafte Momentaufnahme aus der virtuellen Testumgebung VT. Die virtuelle Testumgebung umfasst das von dem zweiten Steuergerät E2 angesteuerte virtuelle automatisierte Vehikel VE auf einer virtuellen Straße R und eine Vielzahl weiterer virtueller Objekte O3, ..., O10. Die virtuellen Objekte umfassen beispielhaft Fahrzeuge O3, O4, O9, O10, Gebäude O5, Bäume O6, O7 und Verkehrsschilder O8. Jedem virtuellen Objekt O3, ..., O10 sind statische oder veränderliche Ortskoordinaten in der virtuellen Testumgebung VT zugeordnet.The picture of the 2 shows an example snapshot from the virtual test environment VT , The virtual test environment includes that of the second controller E2 driven virtual automated vehicles VE on a virtual street R and a variety of other virtual objects O3 , ..., O10 , The virtual objects include, for example, vehicles O3 . O4 . O9 . O10 , Building O5 , Trees O6 . O7 and traffic signs O8 , Every virtual object O3 , ..., O10 are static or variable location coordinates in the virtual test environment VT assigned.

Ein Sensor S (verdeckt) ist an der Frontseite des virtuellen automatisierten Vehikels VE aufgehängt. Der Sensor S ist Teil einer Simulation eines Sensorsystems, das neben dem Sensor S auch eine Bildverarbeitungseinheit zur Identifikation von Objekten umfasst. Dem Sensor S ist ein pyramidenförmiges, vom Sensor S ausgehendes Sensorsichtfeld FV zugeordnet, dessen räumliche Orientierung durch die Ortskoordinaten und die räumliche Orientierung des virtuellen automatisierten Vehikels VE vorgegeben ist. Zumindest eine Untermenge der in der virtuellen Testumgebung VT vorhandenen Objekte wird als durch das Sensorsystem erkennbare Objekte bestimmt. Alle durch das Sensorsystem erkennbaren Objekte O1, ..., O8, die durch das Sensorsichtfeld FV erfasst sind, werden in eine vorläufige Liste erkannter virtueller Objekte aufgenommen. Für alle in der vorläufigen Liste aufgelisteten Objekte wird eine Überprüfung auf perspektivische Verdeckung durchgeführt, und alle als perspektivisch verdeckt gewerteten Objekte werden aus der vorläufigen Liste entfernt. Die nach Abschluss der Überprüfungen auf perspektivische Verdeckung noch aufgelisteten Objekte bilden eine Liste erkannter Objekte, und die virtuelle Testumgebung VT erzeugt ein Signal des Sensorsystems, dem die in der Liste erkannter Objekte aufgelisteten Objekte entnehmbar sind.A sensor S (hidden) is at the front of the virtual automated vehicle VE suspended. The sensor S is part of a simulation of a sensor system next to the sensor S Also includes an image processing unit for identifying objects. The sensor S is a pyramidal, from the sensor S outgoing sensor field of view FV its spatial orientation by the location coordinates and the spatial orientation of the virtual automated vehicle VE is predetermined. At least a subset of those in the virtual test environment VT existing objects is determined as recognizable by the sensor system objects. All objects recognizable by the sensor system O1 , ..., O8 passing through the sensor field of view FV are included in a preliminary list of detected virtual objects. All objects listed in the preliminary list will be checked for perspective obscuration and all objects considered to be hidden in perspective are removed from the preliminary list. The objects still listed after the Perspective Overlap checks form a list of detected objects, and the virtual test environment VT generates a signal from the sensor system to which the objects listed in the list of detected objects are removable.

Die genaue Ausgestaltung des Signals des Sensorsystems kann je nach Anwendungsfall unterschiedlich sein. Das Signal kann weitere Informationen über die aufgelisteten Objekte tragen, beispielsweise deren absolute oder zum Sensor S relative Ortskoordinaten. Das Signal kann beispielsweise ein mögliches Signal eines echten Sensorsystems nachbilden und über eine Schnittstelleneinheit IN zur Auswertung durch ein Steuersystem UUT nach außen geführt werden. In dem in den 1 und 2 dargestellten Ausführungsbeispiel bildet das Signal kein Signal eines echten Sensorsystems nach und wird nicht nach außen geführt, sondern von dem Simulationsrechner SI zur Ansteuerung des Radarprüfstand RD ausgewertet.The exact configuration of the signal of the sensor system may vary depending on the application. The signal may carry further information about the listed objects, for example their absolute or relative to the sensor S location coordinates. The signal can emulate, for example, a possible signal of a real sensor system and via an interface unit IN for evaluation by a tax system UUT be led to the outside. In the in the 1 and 2 illustrated embodiment, the signal does not detect a signal of a real sensor system and is not led to the outside, but from the simulation computer SI for controlling the radar test bench RD evaluated.

In dem vorliegend beschriebenen Ausführungsbeispiel sind alle virtuellen Objekte O3, ..., O10 in der virtuellen Testumgebung VT durch das Sensorsystem erkennbar. In anderen Ausführungsbeispielen sind einige der in der virtuellen Testumgebung VT vorhandenen virtuellen Objekte durch das Sensorsystem nicht erkennbar. Grundsätzlich werden nur durch das Sensorsystem erkennbare Objekte in die vorläufige Liste erkennbarer Objekte aufgenommen. Vorteilhaft sind aber auch durch das Sensorsystem nicht erkennbare Objekte in der Lage, durch das Sensorsystem erkennbare Objekte perspektivisch zu verdecken.In the presently described embodiment, all virtual objects O3 , ..., O10 in the virtual test environment VT recognizable by the sensor system. In other embodiments, some are in the virtual test environment VT existing virtual objects are not recognizable by the sensor system. In principle, only objects recognizable by the sensor system are included in the preliminary list of recognizable objects. Advantageously, however, objects that can not be detected by the sensor system are also able to cover objects that can be recognized by the sensor system in a perspective manner.

Jedem Objekt O1, ..., O10 ist in der virtuellen Testumgebung VT als Hüllkörper ein Hüllquader B1, B2 zugeordnet, in der Fachwelt als Bounding Box bezeichnet.Every object O1 , ..., O10 is in the virtual test environment VT as envelope an envelope cuboid B1 . B2 assigned, referred to in the art as a bounding box.

Der Radarprüfstand RD soll nur Radarechos RE von Objekten O3, ..., O10 in der virtuellen Testumgebung VT nachbilden, die aus Sicht des Sensors S perspektivisch nicht verdeckt sind bzw. deren perspektivische Verdeckung einen Toleranzwert unterschreitet, sodass das erste Steuergerät E1 ein entsprechend perspektivisch verdecktes physisches Objekt als eigenständiges Objekt erkennen würde. In der Momentaufnahme, die in der 2 dargestellt ist, sind drei Fahrzeuge O3, O9, O10, ein Gebäude O5, ein Baum O7 und ein Verkehrsschild O8 durch das Sensorsichtfeld FV erfasst und deshalb in die vorläufige Liste erkannter Objekte aufgenommen. Das Fahrzeug O10 ist aber durch das Fahrzeug O9 perspektivisch verdeckt, das Verkehrsschild O8 ist durch das Fahrzeug O9 teilweise perspektivisch verdeckt und das Fahrzeug O3 ist durch das Gebäude O5 teilweise perspektivisch verdeckt.The radar test bench RD should only Radar echoes RE of objects O3 , ..., O10 in the virtual test environment VT emulate that from the perspective of the sensor S are not hidden in perspective or whose perspective concealment falls below a tolerance value, so that the first control unit E1 a corresponding perspectively hidden physical object would recognize as an independent object. In the snapshot taken in the 2 are shown are three vehicles O3 . O9 . O10 , a building O5 , a tree O7 and a road sign O8 detected by the sensor field of view FV and therefore included in the preliminary list of detected objects. The vehicle O10 but is through the vehicle O9 hidden in perspective, the road sign O8 is through the vehicle O9 partially hidden in perspective and the vehicle O3 is through the building O5 partially hidden in perspective.

Die nachfolgend beschriebenen Figuren stellen ein erfindungsgemäßes Verfahren zur Abschätzung einer perspektivischen Verdeckung dar.The figures described below represent a method according to the invention for estimating a perspective occlusion.

Die Abbildung der 3 zeigt eine dreidimensionale Szene in der virtuellen Testumgebung VT mit dem Sensor S, einem ersten Objekt 01 in einem ersten Hüllquader B1 und einem zweiten Objekt O2 in einem zweiten Hüllquader B2. Das erste Objekt 01 und das zweite Objekt O2 seien beide von dem Sensorsichtfeld FV erfasst und in die vorläufige Liste erkannter Objekte aufgenommen. Zunächst wird anhand der Ortskoordinaten des ersten Objekts 01 und der Ortskoordinaten des Sensors S1 der euklidische Abstand des ersten Objekts 01 zum Sensor ermittelt, und anhand der Ortskoordinaten des zweiten Objekts O2 und der Ortskoordinaten des Sensors S wird der euklidische Abstand des zweiten Objekts O2 zum Sensor ermittelt. Die euklidischen Abstände werden verglichen und für das weiter vom Sensor S entfernte Objekt wird eine perspektivische Verdeckung durch das näher am Sensor S liegende Objekt aus Sicht des Sensors S geprüft. Beispielhaft wird geprüft, ob das zweite Objekt O2 durch das erste Objekt 01 aus Sicht des Sensors S perspektivisch verdeckt ist.The picture of the 3 shows a three-dimensional scene in the virtual test environment VT with the sensor S , a first object 01 in a first envelope cuboid B1 and a second object O2 in a second envelope cuboid B2 , The first object 01 and the second object O2 be both from the sensor field of view FV recorded and included in the preliminary list of detected objects. First, based on the location coordinates of the first object 01 and the location coordinates of the sensor S1 the Euclidean distance of the first object 01 determined to the sensor, and based on the location coordinates of the second object O2 and the location coordinates of the sensor S becomes the Euclidean distance of the second object O2 determined to the sensor. The Euclidean distances are compared and for the farther from the sensor S A distant object becomes a perspective cover through the closer to the sensor S lying object from the perspective of the sensor S checked. By way of example, it is checked whether the second object O2 through the first object 01 from the perspective of the sensor S is hidden in perspective.

Dazu wird eine Projektionsebene P aufgespannt, auf der ein zweiachsiges lokales Koordinatensystem CS definiert ist, und der erste Hüllquader B1 und der zweite Hüllquader B2 werden zumindest teilweise auf die Projektionsebene P projiziert, wobei für die Projektion eine Zentralprojektion mit den Ortskoordinaten des Sensors S als Augpunkt angewandt wird. Da die Hüllquader B1, B2 konvexe Körper sind, sind auch deren Abbilder I1, I2 auf der Projektionsebene konvex. Die Projektion des ersten Hüllquader B1 geschieht derart, dass vor Durchführung der Projektion Vertices des ersten Hüllquaders B1 ermittelt werden, deren Abbilder auf der Projektionsebene P die Vertices des ersten Abbildes I1 des ersten Hüllquaders B1 sind. Ein numerisches Verfahren zur Ermittlung der entsprechenden Vertices ist nachfolgend in der Beschreibung der 4 offenbart. Die Projektion aller sechs aus Sicht des Sensors S sichtbaren Vertices des ersten Hüllquaders B1 und die Bildung der konvexen Hülle der Abbilder der projizierten Vertices würde ein exaktes Abbild I1 des ersten Hüllquaders B1 ergeben.This is a projection level P spanned, on which a biaxial local coordinate system CS is defined, and the first envelope cuboid B1 and the second envelope cuboid B2 be at least partially on the projection plane P projected, wherein for the projection, a central projection with the spatial coordinates of the sensor S is applied as an eye point. Since the Hüllquader B1 . B2 are convex bodies, are also their images I1 . I2 convex on the projection plane. The projection of the first envelope cuboid B1 happens such that before performing the projection vertices of the first Hüllquaders B1 whose images are at the projection level P the vertices of the first image I1 of the first Hüllquaders B1 are. A numerical method for determining the corresponding vertices is described below in the description of FIG 4 disclosed. The projection of all six from the perspective of the sensor S visible vertices of the first envelope square B1 and the formation of the convex hull of the images of the projected vertices would be an exact image I1 of the first Hüllquaders B1 result.

Auf gleiche Weise wird auf der Projektionsebene P ein zweites Abbild I2 des zweiten Hüllquaders B2 erstellt. Anstelle von Hüllquadern sind auch andere Hüllkörper mit anderer Geometrie verwendbar, deren Abbilder beispielsweise größere Übereinstimmung mit den Abbildern der durch die Hüllkörper eingehüllten virtuellen Objekte aufweisen.In the same way will be at the projection level P a second image I2 of the second Hüllquaders B2 created. Instead of Hüllquadern other enveloping bodies with different geometry can be used, the images of which, for example, have greater conformity with the images of the enveloped by the enveloping virtual objects.

Mittels eines GJK-Algorithmus wird eine Kollisionserkennung des ersten Abbilds I1 und des zweiten Abbilds I1 durchgeführt. Eine Kollision liegt genau dann vor, wenn eine Schnittmenge des ersten Abbilds I1 und des zweiten Abbilds I2 existiert, und die Existenz einer Schnittmenge wird als perspektivische Verdeckung des zweiten Objekts O2 durch das erste Objekts 01 gewertet. Der GJK-Algorithmus sieht vor, zunächst die Minkowski-Differenz des ersten Abbilds I1 und des zweiten Abbilds I2 in dem lokalen Koordinatensystem CS zu bilden. Die Minkowski-Differenz Σ zweier Mengen A, B ist die Menge ( A ,B ) = { a b | a A b B } ,

Figure DE102018111390A1_0001
also die Menge, die durch Subtraktion jedes Elements von B von jedem Element von A entsteht. Eine Schnittmenge von A und B existiert genau dann, wenn der Ursprung ein Element von Σ ist. Der GJK-Algorithmus sieht vor, durch eine Zerlegung der Minkowski-Differenz Σ in Dreiecke zu überprüfen, ob der Ursprung des lokalen Koordinatensystem CS ein Element der Minkowski-Differenz Σ des ersten Abbilds I1 und des zweiten Abbilds I2 ist. Durch die Verwendung polyedrischer Hüllkörper für das erste Objekt 01 und das zweite Objekt O2 mit nur wenigen Vertices sind das erste Abbild I1 und das zweite Abbild 12, und in der Folge auch deren Minkowski-Differenz Σ, Polygonzüge mit wenigen Vertices, sind also in eine geringe Anzahl von Dreiecken (Simplexe) zerlegbar. Dadurch ist ein schneller Durchlauf des GJK-Algorithmus begünstigt. By means of a GJK Algorithm becomes a collision detection of the first image I1 and the second image I1 carried out. A collision exists if and only if an intersection of the first image I1 and the second image I2 exists, and the existence of an intersection becomes a perspective obscuration of the second object O2 through the first object 01 scored. The GJK algorithm provides, first, the Minkowski difference of the first image I1 and the second image I2 in the local coordinate system CS to build. The Minkowski difference Σ of two sets A . B is the crowd Σ ( A , B ) = { a - b | a A . b B } .
Figure DE102018111390A1_0001
So the amount obtained by subtracting each element from B arises from every element of A. An intersection of A and B exists if and only if the origin is an element of Σ. The GJK algorithm proposes to check the origin of the local coordinate system by dividing the Minkowski difference Σ into triangles CS an element of the Minkowski difference Σ of the first image I1 and the second image I2 is. By using polyhedral enveloping bodies for the first object 01 and the second object O2 with only a few vertices are the first image I1 and the second image 12 , and subsequently also their Minkowski difference Σ, polygons with few vertices, are thus separable into a small number of triangles (simplexes). This promotes a faster run of the GJK algorithm.

Die Abbildung der 3 zeigt allein zur Veranschaulichung des Projektionsvorgangs jeweils eine vollständige Projektion des ersten Hüllquaders B1 und B2. Tatsächlich ist vorgesehen, beide Hüllquader B1, B2 parallel zu projizieren, schon während des Projektionsvorgangs die Minkowski-Differenz der bereits projizierten Punktwolken der Vertices beider Hüllkörper B1, B2 zu bilden oder teilweise zu bilden und den Projektionsvorgang abzubrechen, sobald anhand der Abbilder der bereits projizierten Vertices bzw. Punkte eine Kollision des ersten Abbilds I1 und des zweiten Abbilds I2 erkannt oder ausgeschlossen wird. Dieser Aspekt der Erfindung wird in den nachfolgenden Beschreibungen näher erläutert.The picture of the 3 only shows a complete projection of the first Hüllquaders only to illustrate the projection process B1 and B2 , Actual is provided, both Hüllquader B1 . B2 parallel to project, even during the projection process, the Minkowski difference of the already projected point clouds of the vertices of both enveloping bodies B1 . B2 form or partially form and abort the projection process, as soon as based on the images of the already projected vertices or points a collision of the first image I1 and the second image I2 is recognized or excluded. This aspect of the invention will be explained in more detail in the following descriptions.

Die Abbildung der 4 skizziert einen Suchalgorithmus zur Bestimmung einer zur Projektion vorgesehenen Auswahl von Punkten eines Hüllkörpers am Beispiel des zweiten Hüllquaders B2.The picture of the 4 outlines a search algorithm for determining a selection of points of an enveloping body provided for the projection, using the example of the second envelope quadrant B2 ,

Zunächst wird eine parallel zur Projektionsebene P liegende Initialsuchrichtung SD1 bestimmt (Regeln zur Auswahl der Initialsuchrichtung werden in den Beschreibungen der 5 und 6 vorgestellt) und anhand der Initialsuchrichtung SD1 eine Suchebene SP aufgespannt, die folgende Bedingungen erfüllt:

  • - Die Suchebene SP liegt orthogonal zur Projektionsebene P, und
  • - die Suchebene SP liegt parallel zur Suchrichtung SD1.
First, one becomes parallel to the projection plane P lying initial search direction SD1 determined (rules for selecting the initial search direction are described in the descriptions of 5 and 6 presented) and the initial search direction SD1 a search plane SP clamped, fulfilling the following conditions:
  • - The search level SP is orthogonal to the projection plane P , and
  • - the search level SP lies parallel to the search direction SD1 ,

Der Suchalgorithmus umfasst die folgenden Schritte:

  1. 1) Suche einen ersten Punkt P1 des zweiten Hüllquaders, der bezogen auf die Suchrichtung SD1 am weitesten außen liegt. Der erste Punkt P1 lässt sich gleichbedeutend auch als der Punkt definieren, auf dem eine Fläche, deren Normalenvektor parallel zur Suchrichtung SD1 liegt, aufliegen würde, sodass die Fläche nur einen einzigen Schnittpunkt mit dem zweiten Hüllquader B2 umfasst und nach einer beliebig kleinen Verschiebung in Suchrichtung SD1 keinen Schnittpunkt mit dem zweiten Hüllquader B2 mehr aufweisen würde.
  2. 2) Ermittle den Verbindungsvektor V vom Augpunkt, d.h. den Ortskoordinaten des Sensors S, zum ersten Punkt P1.
  3. 3) Bilde eine neue Suchrichtung SD2, die parallel zur Suchebene SP und orthogonal zum Verbindungsvektor V liegt und deren Skalarprodukt mit der alten Suchrichtung SD1 positiv ist, um einen zweiten Punkt P2 zu suchen, der bezogen auf die neue Suchrichtung SD2 am weitesten außen liegt.
  4. 4) Wiederhole die Schritte 1) bis 3), bis der Abstand zwischen dem im aktuellen Iterationsschritt gefundenen Punkt und dem im vorhergehenden Iterationsschritt gefundenen Punkt einen Toleranzwert unterschreitet.
The search algorithm includes the following steps:
  1. 1) Search for a first point P1 of the second Hüllquaders, based on the search direction SD1 outermost. The first point P1 can be synonymously defined as the point on which a surface whose normal vector is parallel to the search direction SD1 is lying, so that the surface only a single point of intersection with the second Hüllquader B2 includes and after any small shift in the search direction SD1 no intersection with the second envelope cuboid B2 would have more.
  2. 2) Determine the connection vector V from the eye point, ie the location coordinates of the sensor S , to the first point P1 ,
  3. 3) Create a new search direction SD2 parallel to the search plane SP and orthogonal to the connection vector V and its scalar product with the old search direction SD1 is positive to a second point P2 to search, related to the new search direction SD2 outermost.
  4. 4) Repeat steps 1) to 3) until the distance between the point found in the current iteration step and the point found in the previous iteration step falls below a tolerance value.

In dem in der 4 dargestellten Beispiel würde anhand des beschriebenen Suchalgorithmus der zweite Punkt P2 als zur Projektion vorgesehener Punkt des zweiten Hüllquaders B2 ermittelt werden. Ein nachfolgender Suchlauf mit in Gegenrichtung zur Suchrichtung SD1 liegender Initialsuchrichtung würde einen dritten Punkt P3 als zur Projektion vorgesehenen Punkt ermitteln. Grundsätzlich kann der Suchalgorithmus beliebig häufig mit wechselnden Suchrichtungen durchgeführt werden. Jeder Suchlauf führt zur Ermittlung eines Randpunktes des zweiten Hüllquaders B2, der aus Sicht des Sensors S perspektivisch weit außen liegt und bei einer vollständigen Zentralprojektion des zweiten Hüllquader B2 mit den Ortskoordinaten des Sensors S als Augpunkt zur konvexen Hülle des Abbildes des zweiten Hüllquaders B2 gehören würde.In the in the 4 Example shown would be based on the described search algorithm, the second point P2 as intended for projection point of the second Hüllquaders B2 be determined. A subsequent search with in the opposite direction to the search direction SD1 lying initial search direction would a third point P3 as projected point. In principle, the search algorithm can be performed as often as desired with changing search directions. Each search leads to the determination of a boundary point of the second envelope square B2 from the perspective of the sensor S in perspective far outward and in a complete central projection of the second Hüllquader B2 with the location coordinates of the sensor S as an eye point to the convex hull of the image of the second Hüllquaders B2 would belong.

Durch mehrfache Ausführung des Suchalgorithmus mit unterschiedlichen Initialsuchrichtungen wird eine Auswahl von Punkten P2, P3 des zweiten Hüllquaders B2 ermittelt, und die Projektion des zweiten Hüllquaders wird durchgeführt, indem die Auswahl von Punkten P2, P3 in einer Zentralprojektion mit den Ortskoordinaten des Sensors S als Augpunkt auf die Projektionsebene P projiziert wird.By multiple execution of the search algorithm with different initial search directions becomes a selection of points P2 . P3 of the second Hüllquaders B2 determines, and the projection of the second Hüllquaders is carried out by the selection of points P2 . P3 in a central projection with the location coordinates of the sensor S as an eye-point on the projection plane P is projected.

Sofern die Auswahl von Punkten P2, P3 hinreichend umfangreich ist, entspricht das Abbild I2 exakt dem tatsächlichen Abbild des zweiten Hüllkörpers, wie es sich aus einer vollständig durchgeführten Zentralprojektion ergeben würde. Der Suchalgorithmus ist auf beliebige Hüllkörper anwendbar, auch auf nichtpolyedrische Hüllkörper, beispielsweise zylindrische Hüllkörper, wobei die Hüllkörper vorteilhaft konvexe Hüllkörper sind. Durch Ermittlung einer Auswahl von Punkten eines konvexen Hüllkörpers anhand des Suchalgorithmus und Bildung der konvexen Menge der Abbilder der Auswahl von Punkten ist immer ein Abbild des Hüllkörpers erstellbar, das näherungsweise dem aus einer vollständig durchgeführten Projektion des Hüllkörpers resultierenden Abbild entspricht.Unless the selection of points P2 . P3 is sufficiently extensive, corresponds to the image I2 exactly the actual image of the second envelope, as it would result from a fully performed central projection. The search algorithm can be applied to any enveloping body, including non-polyhedral enveloping bodies, for example cylindrical enveloping bodies, wherein the enveloping bodies are advantageously convex enveloping bodies. By determining a selection of points of a convex envelope on the basis of the search algorithm and forming the convex set of the images of the selection of points, it is always possible to create an image of the enveloping body which approximately corresponds to the image resulting from a complete projection of the enveloping body.

Die Bestimmung einer Auswahl von Punkten zur Projektion wird für den ersten Hüllquader B1 und für den zweiten Hüllquader B2 parallel durchgeführt, und die anhand des Suchalgorithmus bestimmten Punkte werden jeweils unmittelbar nach ihrer Bestimmung auf die Projektionsebene P projiziert. Auf der Projektionsebene P wird schon während des noch laufenden Projektionsvorgangs des ersten Hüllquaders B1 und des zweiten Hüllquaders B2 eine Kollisionserkennung anhand der Abbilder der bereits projizierten Punkte durchgeführt, und die Projektion wird abgebrochen, wenn anhand der Abbilder der bereits projizierten Punkte eine Kollision erkannt wird oder eine Kollision ausgeschlossen wird.The determination of a selection of points for projection becomes for the first envelope box B1 and for the second envelope cuboid B2 performed in parallel, and the points determined by the search algorithm are applied to the projection plane immediately after their determination P projected. At the projection level P Already during the still running projection process of the first Hüllquaders B1 and the second Hüllquaders B2 Collision detection is performed on the images of the points already projected, and the projection is aborted when a collision is detected from the images of the already projected points or a collision is excluded.

Die Abbildung der 5 illustriert ein erstes Beispiel für einen vorzeitigen Abbruch einer Projektion eines ersten Hüllkörpers B1 und eines zweiten Hüllkörpers B2. In dem Beispiel ist der erste Hüllkörper B1 als Würfel und der zweite Hüllkörper B2 als Kugel dargestellt. Zuerst wird eine erste Initialsuchrichtung SD1-A festgelegt, um anhand des in der 4 illustrierten Suchalgorithmus den aus Sicht des Sensors S am weitesten in Richtung der ersten Initialsuchrichtung SD1-A liegenden ersten Punkt P1-A des ersten Hüllkörpers B1 zu finden.The picture of the 5 illustrates a first example of premature termination of a projection of a first envelope B1 and a second enveloping body B2 , In the example, the first envelope is B1 as a cube and the second envelope B2 shown as a sphere. First, a first initial search direction SD1 -A set to using the in the 4 illustrated search algorithm from the perspective of the sensor S furthest in the direction of the first Initialsuchrichtung SD1 -A lying first point P1 -A of the first envelope B1 to find.

Zur Ermittlung der ersten Initialsuchrichtung SD1-A ist in dem beschriebenen Ausführungsbeispiel grundsätzlich vorgesehen, die Ortskoordinaten des ersten Hüllkörpers B1 von den Ortskoordinaten des zweiten Hüllkörpers B2 zu subtrahieren und den sich aus der Subtraktion ergebenden Verbindungsvektor auf die Projektionsebene P zu projizieren.To determine the first initial search direction SD1 -A is basically provided in the described embodiment, the location coordinates of the first envelope B1 from the location coordinates of the second envelope B2 to subtract and the resulting from the subtraction connection vector on the projection plane P to project.

Der erste Punkt P1-A wird unmittelbar nach seiner Ermittlung auf die Projektionsebene P projiziert, um ein Abbild I1-A des ersten Punktes zu erzeugen. Nachfolgend wird eine der ersten Initialsuchrichtung SD1-A entgegengesetzte zweite Initialsuchrichtung SD1-B festgelegt, um den aus Sicht des Sensors S am weitesten in Richtung der zweiten Initialsuchrichtung SD1-B liegenden zweiten Punkt P1-B des zweiten Hüllkörpers B2 zu finden. Der zweite Punkt P1-B wird unmittelbar nach seiner Ermittlung auf die Projektionsebene P projiziert, um ein Abbild I1-B des zweiten Punktes zu erzeugen.The first point P1-A becomes the projection level immediately after its determination P projected to an image I1-A of the first point. Below is one of the first initial search direction SD1-A opposite second initial search direction SD1-B set to the view from the sensor S furthest in the direction of the second initial search direction SD1-B lying second point P1-B of the second envelope B2 to find. The second point P1-B becomes the projection level immediately after its determination P projected to an image I1-B of the second point.

Unmittelbar nach Projektion des zweiten Punktes P1-B wird die Differenz D des Abbilds des ersten Punktes I1-A und des Abbilds des zweiten Punktes I1-B gebildet. Die Differenz D ist ein Punkt der Minkowski-Differenz Σ der Abbilder des ersten Hüllkörpers B1 und des zweiten Hüllkörpers B2. Aus dem negativen Skalarprodukt der ersten Initialsuchrichtung SD1-A und der Differenz D folgt, da sowohl der erste Hüllkörper B1 als auch der zweite Hüllkörper B2 konvexe Körper sind, dass das Abbild I1-A des ersten Punkts und das Abbild I1-B des zweiten Punkts die einander nächstliegenden Punkte der Abbilder des ersten Hüllkörpers B1 und des zweiten Hüllkörpers B2 sind und demnach die Differenz D der dem Ursprung des lokalen Koordinatensystems CS nächstliegende Punkt der Minkowski-Differenz Σ ist. Die Minkowski-Differenz Σ kann demnach nicht den Ursprung des lokalen Koordinatensystems CS umfassen. Die Projektion wird deshalb nach der Projektion des ersten Punkts P1-A und des zweiten Punkts P1-B abgebrochen, und das von dem zweiten Hüllkörper B2 eingehüllte zweite Objekt O2 wird als perspektivisch nicht verdeckt gewertet, sofern der zweite Hüllkörper B2 nicht von einem weiteren Hüllkörper außer dem ersten Hüllkörper B1 perspektivisch verdeckt ist.Immediately after projection of the second point P1-B will be the difference D the image of the first point I1-A and the image of the second point I1 -B formed. The difference D is a point of the Minkowski difference Σ of the images of the first envelope B1 and the second enveloping body B2 , From the negative scalar product of the first initial search direction SD1-A and the difference D follows since both the first envelope body B1 as well as the second envelope B2 convex bodies are that the image I1-A of the first point and the image I1-B of the second point, the closest points of the images of the first envelope B1 and the second enveloping body B2 and therefore the difference D the origin of the local coordinate system CS nearest point of the Minkowski difference Σ. The Minkowski difference Σ can not therefore be the origin of the local coordinate system CS include. The projection therefore becomes after the projection of the first point P1-A and the second point P1-B aborted, and that of the second envelope body B2 wrapped second object O2 is considered not to be hidden in perspective provided the second envelope B2 not of another enveloping body except the first enveloping body B1 is hidden in perspective.

Die Abbildung der 6 illustriert ein zweites Beispiel für einen vorzeitigen Abbruch einer Projektion und gleichzeitig eine vorteilhafte Ausgestaltung des Projektionsvorgangs. Grundsätzlich sind für die Erkennung einer perspektivischen Verdeckung des zweiten Hüllkörpers B2 durch den ersten Hüllkörper B1 die nachfolgend aufgelisteten Verfahrensschritte vorgesehen. Die Auswahl eines zur Projektion vorgesehenen Punktes geschieht dabei grundsätzlich wie in der Beschreibung der 4 beschrieben, unter Verwendung der aktuell gültigen Initialsuchrichtung. Nachfolgend wird angenommen, dass der euklidische Abstand des zweiten virtuellen Objekts O2 zum Sensor S größer ist als der euklidische Abstand des ersten virtuellen Objekts 01 zum Sensor S.The picture of the 6 illustrates a second example of premature termination of a projection and at the same time an advantageous embodiment of the projection process. Basically, for the detection of a perspective occlusion of the second envelope body B2 through the first envelope B1 the method steps listed below provided. The selection of a point provided for the projection happens basically as in the description of 4 described using the currently valid Initialsuchrichtung. It is assumed below that the Euclidean distance of the second virtual object O2 to the sensor S is greater than the Euclidean distance of the first virtual object 01 to the sensor S ,

Die Verfahrensschritte sind wie folgt:

  • 1.1) Definiere eine erste Initialsuchrichtung SD1-A durch Projektion des Vektors, der sich durch Subtraktion der Ortskoordinaten des ersten virtuellen Objekts O1 von den Ortskoordinaten des zweiten virtuellen Objekts O2 ergibt, auf die Projektionsebene P, und definiere eine der ersten Initialsuchrichtung SD1-A entgegengesetzte Initialsuchrichtung SD1-B.
  • 1.2) Wähle anhand der ersten Initialsuchrichtung SD1-A einen ersten Punkt P1-A des ersten Hüllkörpers B1 aus und projiziere ihn auf die Projektionsebene P, um ein Abbild I1-A des ersten Punktes P1-A des ersten Hüllkörpers B1 zu erzeugen. Wähle anhand der entgegengesetzten Initialsuchrichtung SD1-B einen ersten Punkt P1-B des zweiten Hüllkörpers B2 aus und projiziere ihn auf die Projektionsebene P, um ein Abbild I1-B des ersten Punktes P1-B des zweiten Hüllkörpers B2 zu erzeugen
  • 1.3) Bilde eine erste Differenz D1 der Abbilder I1-A und I1-B in dem lokalen Koordinatensystem CS.
  • 2.1) Definiere eine zweite Initialsuchrichtung SD2-A, die ausgehend von der ersten Differenz D1 in Richtung des Ursprungs des lokalen Koordinatensystems CS zeigt, wähle anhand der zweiten Initialsuchrichtung SD2-A einen zweiten Punkt P2-A des ersten Hüllkörpers B1 aus und projiziere ihn auf die Projektionsebene P, um ein Abbild I2-A des Punktes P2-A zu erzeugen.
  • 2.2) Wähle anhand einer der zweiten Initialsuchrichtung SD2-A entgegengesetzten Initialsuchrichtung SD2-B einen zweiten Punkt P2-B des zweiten Hüllkörpers B2 aus und projiziere ihn auf die Projektionsebene P, um ein Abbild I2-B des Punktes P2-B zu erzeugen.
  • 2.3) Bilde eine zweite Differenz D2 der zuletzt erzeugten Abbilder I2-A und I2-B im lokalen Koordinatensystem CS.
  • 3.1) Definiere eine dritte Initialsuchrichtung SD3-A, die senkrecht zur Verbindungslinie der ersten Differenz D1 und der zweiten Differenz liegt und in Richtung des Ursprungs des lokalen Koordinatensystems CS zeigt, wähle anhand der dritten Initialsuchrichtung SD3-A einen dritten Punkt P3-A des ersten Hüllkörpers B1 aus und projiziere ihn auf die Projektionsebene P, um ein Abbild I3-A des dritten Punktes P3-A des ersten Hüllkörpers B1 zu erzeugen.
  • 3.2) Wähle anhand einer der dritten Suchrichtung SD3-A entgegengesetzten Suchrichtung SD3-B einen dritten Punkt P3-B des zweiten Hüllkörpers B2 aus und projiziere ihn auf die Projektionsebene P, um ein Abbild I3-B des Punktes P3-B zu erzeugen.
  • 3.3) Bilde eine dritte Differenz D3 der zuletzt erzeugten Abbilder I3-A und I3-B im lokalen Koordinatensystem CS.
  • 4) Wenn das aus der ersten Differenz D1, der zweiten Differenz D2 und der dritten Differenz D3 aufgespannte Simplex der Minkowski-Differenz Σ den Ursprung des lokalen Koordinatensystems CS umfasst, brich den Projektionsvorgang ab und werte das zweite virtuelle Objekt O2 als perspektivisch verdeckt.
  • 5.1) Wenn das Simplex den Ursprung des lokalen Koordinatensystems CS nicht umfasst, verwirf den am weitesten vom Ursprung entfernten Eckpunkt des Simplex und definiere eine neue Initialsuchrichtung, die senkrecht zur Verbindungslinie der beiden verbleibenden Eckpunkte liegt und in Richtung des Ursprungs des lokalen Koordinatensystems CS zeigt. Wähle anhand der neuen Suchrichtung einen Punkt des ersten Hüllkörpers B1 aus und projiziere ihn auf die Projektionsebene P, um ein Abbild des Punktes zu erzeugen.
  • 5.2) Wähle anhand einer der neuen Initialsuchrichtung entgegengesetzten Suchrichtung einen Punkt des zweiten Hüllkörpers B2 aus und projiziere ihn auf die Projektionsebene P, um ein Abbild des Punktes zu erzeugen.
  • 5.3) Bilde die Differenz der zwei zuletzt erzeugten Abbilder im lokalen Koordinatensystem CS und verwende die Differenz als neuen Eckpunkt, um zusammen mit den zwei verbleibenden Eckpunkten ein neues Simplex aufzuspannen.
  • 6) Wiederhole die Schritte 5.1 bis 5.3, bis entweder das aktuelle Simplex den Ursprung des lokalen Koordinatensystems CS umfasst (Abbruchkriterium A) oder das Skalarprodukt der aktuellen für die Auswahl eines Punktes des ersten Hüllkörpers B1 verwendeten Initialsuchrichtung und des anhand der aktuellen Initialsuchrichtung gesetzten Eckpunkts negativ ist (Abbruchkriterium B).
The process steps are as follows:
  • 1.1) Define a first initial search direction SD1-A by projection of the vector obtained by subtracting the location coordinates of the first virtual object O1 from the location coordinates of the second virtual object O2 reveals on the projection level P , and define one of the first initial search direction SD1-A opposite initial search direction SD1-B ,
  • 1.2) Choose from the first initial search direction SD1-A a first point P1-A of the first envelope B1 and project it onto the projection plane P to an image I1-A the first point P1-A of the first envelope B1 to create. Choose by the opposite initial search direction SD1-B a first point P1-B of the second envelope B2 and project it onto the projection plane P to an image I1-B the first point P1-B of the second envelope B2 to create
  • 1.3) Make a first difference D1 the images I1-A and I1-B in the local coordinate system CS.
  • 2.1) Define a second initial search direction SD2-A , starting from the first difference D1 in the direction of the origin of the local coordinate system CS, select from the second initial search direction SD2-A a second point P2-A of the first envelope B1 and project it onto the projection plane P to an image I2-A of the point P2-A to create.
  • 2.2) Choose from one of the second initial search direction SD2-A opposite initial search direction SD2-B a second point P2-B of the second envelope B2 and project it onto the projection plane P to an image I2-B of the point P2-B to create.
  • 2.3) Make a second difference D2 the last generated images I2-A and I2-B in the local coordinate system CS.
  • 3.1) Define a third initial search direction SD3-A perpendicular to the connecting line of the first difference D1 and the second difference lies and towards the origin of the local coordinate system CS shows, choose from the third initial search direction SD3-A a third point P3 - A of the first envelope B1 and project it onto the projection plane P to an image I3-A of the third point P3-A of the first envelope B1 to create.
  • 3.2) Choose from one of the third search directions SD3-A opposite search direction SD3-B a third point P3-B of the second envelope B2 and project it onto the projection plane P to an image I3-B of the point P3-B to create.
  • 3.3) Make a third difference D3 the last generated images I3-A and I3-B in the local coordinate system CS ,
  • 4) If that's from the first difference D1 , the second difference D2 and the third difference D3 spanned simplex of the Minkowski difference Σ the origin of the local coordinate system CS includes, cancel the projection process and evaluate the second virtual object O2 as hidden in perspective.
  • 5.1) If the simplex is the origin of the local coordinate system CS does not include, discards the most distant vertex of the simplex and define a new initial seek direction that is perpendicular to the connecting line of the two remaining vertices and toward the origin of the local coordinate system CS shows. Choose a point from the first envelope using the new search direction B1 and project it onto the projection plane P to create an image of the point.
  • 5.2) Select a point of the second envelope using a search direction opposite to the new initial search direction B2 and project it onto the projection plane P to create an image of the point.
  • 5.3) Compute the difference of the two most recently generated images in the local coordinate system CS and use the difference as a new vertex to span a new simplex along with the two remaining vertices.
  • 6) Repeat the steps 5.1 to 5.3 until either the current simplex comprises the origin of the local coordinate system CS (abort criterion A ) or the scalar product of the current one for the selection of a point of the first envelope B1 The initial search direction used and the vertex set using the current initial search direction are negative (abort criterion B ).

Wenn Abbruchkriterium A eintritt, wird das zweite virtuelle Objekt O2 als perspektivisch verdeckt gewertet. Wenn Abbruchkriterium B eintritt, wird das zweite virtuelle Objekt O2 als perspektivisch nicht verdeckt gewertet. Die Prüfung und Anwendung des Abbruchkriteriums A ist naturgemäß erst dann möglich, wenn mindestens drei Eckpunkte D1, D2, D3 ermittelt wurden. Abbruchkriterium B ist schon nach Ermittlung eines einzigen Eckpunkts anwendbar. In dem in der 6 gezeigten Beispiel wird der Projektionsvorgang nach Ermittlung des dritten Eckpunkts D3 abgebrochen und das zweite virtuelle Objekt O2 als perspektivisch verdeckt gewertet, weil das durch die drei Eckpunkte D1, D2, D3 aufgespannte Simplex der Minkowski-Differenz Σ den Ursprung des lokalen Koordinatensystems CS umfasst und damit eine teilweise perspektivische Verdeckung des zweiten Hüllkörpers B2 durch den ersten Hüllkörper B1 nachgewiesen ist.When abort criterion A occurs, the second virtual object becomes O2 considered to be hidden in perspective. When abort criterion B occurs, the second virtual object becomes O2 as perspectively not covered. The testing and application of the termination criterion A is of course only possible if at least three vertices D1 . D2 . D3 were determined. Termination criterion B is already applicable after the determination of a single vertex. In the in the 6 As shown, the projection process becomes after detection of the third vertex D3 aborted and the second virtual object O2 as a perspective obscured, because that by the three vertices D1 . D2 . D3 spanned simplex of the Minkowski difference Σ the origin of the local coordinate system CS includes and thus a partial perspective occlusion of the second envelope body B2 through the first envelope B1 is proven.

Anhand des GJK-Algorithmus ist zwar die Existenz einer Schnittmenge zweier Mengen nachweisbar, aber nicht die Größe der Schnittmenge messbar. Demzufolge führt eine beliebig kleine perspektivische Verdeckung des zweiten Hüllkörpers B2 durch den ersten Hüllkörper dazu, dass der zweite Hüllkörper B2 als perspektivisch verdeckt und demnach als für das Sensorsystem nicht sichtbar gewertet wird. Von einem realen Sensorsystem mit einem bildgebenden Sensor S und einer Bildverarbeitungseinheit ist aber zu erwarten, dass die Bildverarbeitungseinheit auch perspektivisch teilweise verdeckte Objekte als solche erkennt, sofern die perspektivische Verdeckung einen Toleranzwert nicht überschreitet.Using the GJK algorithm, it is true that there is an intersection of two sets detectable, but not the size of the intersection measurable. As a result, any arbitrary small perspective occlusion of the second envelope body B2 by the first enveloping body for the second enveloping body B2 is hidden as a perspective and therefore as not visible to the sensor system. From a real sensor system with an imaging sensor S and an image processing unit is to be expected, however, that the image processing unit also recognizes perspectively partially hidden objects as such, provided that the perspective occlusion does not exceed a tolerance value.

Um dieses realistische Verhalten nachzubilden, ist ein Toleranzwert T für eine perspektivische Verdeckung eines virtuellen Objekts O1, ..., O8 festlegbar. Ein Toleranzwert von T = 0,25 bedeutet beispielsweise, dass ein sich im Sensorsichtfeld FV befindliches und durch das Sensorsystem erkennbares virtuelles Objekt durch das Sensorsystem erkannt werden soll, wenn aus Sicht des Sensors S nicht mehr als etwa ein Viertel des Fläche des virtuellen Objekts perspektivisch verdeckt ist. In Abhängigkeit von dem gewählten Toleranzwert wird zumindest der erste Hüllkörper B1 oder der zweite Hüllkörper B2 kleiner skaliert. Das zweite virtuelle Objekt O2 wird als perspektivisch verdeckt gewertet, wenn eine Schnittmenge der Abbilder I1, I2 der skalierten Hüllkörper existiert.To replicate this realistic behavior is a tolerance value T for a perspective occlusion of a virtual object O1 , ..., O8 fixable. A tolerance value of T = 0.25 means, for example, that in the sensor field of view FV located and recognizable by the sensor system virtual object is to be detected by the sensor system, if from the perspective of the sensor S no more than about a quarter of the area of the virtual object is hidden in perspective. Depending on the selected tolerance value, at least the first enveloping body B1 or the second enveloping body B2 scaled smaller. The second virtual object O2 is considered to be hidden in perspective, if an intersection of the images I1 . I2 the scaled envelope exists.

Für den ersten Hüllkörper B1 wird ein erster Skalierungsfaktor S1 eingeführt. Für den zweiten Hüllkörper B2 wird ein zweiter Skalierungsfaktor S2 eingeführt. Für Toleranzwerte im Bereich von 0 T 0,5

Figure DE102018111390A1_0002
werden die Skalierungsfaktoren wie folgt festgelegt: s 1 = 1
Figure DE102018111390A1_0003
s 2 = 2 ( 0,5 T )
Figure DE102018111390A1_0004
For the first envelope B1 becomes a first scaling factor S 1 introduced. For the second envelope B2 becomes a second scaling factor S 2 introduced. For tolerance values in the range of 0 T 0.5
Figure DE102018111390A1_0002
the scaling factors are set as follows: s 1 = 1
Figure DE102018111390A1_0003
s 2 = 2 ( 0.5 - T )
Figure DE102018111390A1_0004

Für Toleranzwerte im Bereich von 0,5 < T 1

Figure DE102018111390A1_0005
werden die Skalierungsfaktoren wie folgt festgelegt: s 1 = 1 2 ( A 2 A 1 ) ( T 0,5 )
Figure DE102018111390A1_0006
s 2 = 0
Figure DE102018111390A1_0007
For tolerance values in the range of 0.5 < T 1
Figure DE102018111390A1_0005
the scaling factors are set as follows: s 1 = 1 - 2 ( A 2 A 1 ) ( T - 0.5 )
Figure DE102018111390A1_0006
s 2 = 0
Figure DE102018111390A1_0007

A1 ist ein exakter oder abgeschätzter Wert für die Fläche des ersten Abbilds I1 des ersten Hüllkörpers B1 unter der Annahme einer vollständig durchgeführten Projektion, und A2 ist ein exakter oder abgeschätzter Wert für die Fläche des zweiten Abbilds I2 des zweiten Hüllkörpers B2. Die Fläche A1 des Abbilds eines quaderförmigen Hüllkörpers wird anhand folgender Formel abgeschätzt: A 1 = 1 L 2 i = 1 3 D i e s e n , i

Figure DE102018111390A1_0008
A 1 is an exact or estimated value for the area of the first image I1 of the first envelope B1 assuming a full projection, and A 2 is an exact or estimated value for the area of the second image I2 of the second envelope B2 , The area A 1 of the image of a cuboid envelope is estimated using the following formula: A 1 = 1 L 2 Σ i = 1 3 D i e s e n . i
Figure DE102018111390A1_0008

Dabei sind L der euklidische Abstand zwischen Projektionsebene P und den Ortskoordinaten des von dem Hüllkörper eingehüllten virtuellen Objekts, D1 , D2 und D3 drei zueinander orthogonale Flächen des Quaders, es der Differenzvektor der Ortskoordinaten des von dem Hüllkörper eingehüllten virtuellen Objekts und des Sensors S, und en,1 , en,2 , und en,3 sind die Flächennormalen.Where L is the Euclidean distance between the projection plane P and the spatial coordinates of the virtual object enveloped by the enveloping body, D 1 . D 2 and D 3 three mutually orthogonal surfaces of the cuboid, it is the difference vector of the spatial coordinates of the enveloped by the enveloping virtual object and the sensor S , and e n, 1 . e n, 2 , and e n, 3 are the surface normals.

Die Abbildung der 7 zeigt Anwendungen dieser Skalierungsvorschrift für drei unterschiedliche Toleranzwerte. Der erste Hüllkörper B1 und der zweite Hüllkörper B2 sind in der Abbildung der Deutlichkeit halber als zweidimensionale Rechtecke der Kantenlängen 8cm x 6cm und 6cm x 4cm dargestellt. Gestrichelte Linien stellen jeweils den unskalierten Hüllkörper, durchgehende Linien den skalierten Hüllkörper dar.The picture of the 7 shows applications of this scaling rule for three different tolerance values. The first envelope B1 and the second enveloping body B2 are shown in the figure for clarity as two-dimensional rectangles of the edge lengths 8cm x 6cm and 6cm x 4cm. Dashed lines represent the unscaled envelope, while solid lines represent the scaled envelope.

Bei einem Toleranzwert T = 0,25 bleibt der erste Hüllkörper B1 unskaliert, und für den zweiten Hüllkörper ergibt sich ein Skalierungsfaktor von 0,5. Der erste Hüllkörper B1 muss etwa ein Viertel der sichtbaren Fläche des unskalierten zweiten Hüllkörpers B2 verdecken, bevor sich eine perspektivische Verdeckung des skalierten zweiten Hüllkörpers B2 einstellt.With a tolerance value T = 0.25, the first envelope remains B1 unscaled, and the second envelope has a scaling factor of 0.5. The first envelope B1 must be about one quarter of the visible surface of the unscaled second envelope B2 obscure before there is a perspective occlusion of the scaled second envelope B2 established.

Bei einem Toleranzwert von T = 0,5 bleibt der erste Hüllkörper B1 unskaliert, und der zweite Hüllkörper B2 wird auf Punktgröße skaliert. Der erste Hüllkörper B1 muss die sichtbare Fläche des unskalierten zweiten Hüllkörpers B2 etwa zur Hälfte verdecken, bevor sich eine perspektivische Verdeckung des skalierten zweiten Hüllkörpers B2 einstellt.With a tolerance value of T = 0.5, the first envelope remains B1 unscaled, and the second envelope B2 is scaled to point size. The first envelope B1 must be the visible surface of the unscaled second envelope B2 obscure about halfway before there is a perspective occlusion of the scaled second envelope B2 established.

Bei einem Toleranzwert von T = 1 ergibt sich für den ersten Hüllkörper B1 ein Skalierungsfaktor von s1 = 0,5, und der zweite Hüllkörper B2 wird auf Punktgröße skaliert. Der unskalierte erste Hüllkörper B1 muss den unskalierten zweiten Hüllkörper B2 näherungsweise vollständig bedecken, bevor sich eine perspektivische Verdeckung des skalierten zweiten Hüllkörpers B2 durch den skalierten ersten Hüllkörper B1 einstellt.With a tolerance value of T = 1, this results for the first envelope B1 a scaling factor of s 1 = 0.5, and the second envelope B2 is scaled to point size. The unscaled first envelope B1 must the unscaled second envelope B2 Cover approximately completely before there is a perspective occlusion of the scaled second envelope B2 through the scaled first envelope B1 established.

Das in der 7 illustrierte Skalierungsverfahren ist allgemeingültig anwendbar, wenn alle virtuellen Objekte O1, ..., O8 in der virtuellen Testumgebung VT ähnliche Abmessungen aufweisen. Andernfalls kann eine allgemeingültige Anwendung problematisch sein. Da der potentiell perspektivisch verdeckte zweite Hüllkörper B2 bis auf Punktgröße skaliert werden kann, kann sich eine perspektivische Verdeckung durch einen beliebig kleinen ersten Hüllkörper B1 ergeben, was kein realistisches Verhalten eines Sensorsystems gemäß Erfindung ist. Beispielsweise kann ein erfindungsgemäßes Verfahren in einer Situation, wie sie in der 3 dargestellt ist, zu dem Ergebnis kommen, dass das Fahrzeug 01 für das radargestützte Steuersystem UUT nicht sichtbar ist, weil es durch das Kind O2 verdeckt ist. That in the 7 illustrated scaling method is universally applicable if all virtual objects O1 , ..., O8 in the virtual test environment VT have similar dimensions. Otherwise, a universal application can be problematic. Since the potentially perspective hidden second envelope body B2 can be scaled to point size, can be a perspective occlusion by any small first envelope body B1 result, which is not a realistic behavior of a sensor system according to the invention. For example, a method according to the invention in a situation as described in the 3 is shown, come to the conclusion that the vehicle 01 for the radar-based control system UUT is not visible because it is through the child O2 is covered.

Im Falle stark voneinander abweichender Abmessungen der virtuellen Objekte O1, ..., O8 in der virtuellen Testumgebung VT ist es deshalb vorteilhaft, anhand der zuvor beschriebenen Abschätzungen der Flächen der Abbilder I1, I2 eine Vorbewertung der Plausibilität einer perspektivischen Verdeckung vorzunehmen. Beispielsweise kann das Verfahren derart erweitert werden, dass die Prüfung auf eine perspektivische Verdeckung nur durchgeführt wird, wenn die abgeschätzte Fläche des ersten Abbilds I1 in Relation zur abgeschätzten Fläche des zweiten Abbilds I2 einen vorgegebenen Wert überschreitet.In the case of strongly divergent dimensions of the virtual objects O1 , ..., O8 in the virtual test environment VT Therefore, it is advantageous, based on the previously described estimates of the areas of the images I1 . I2 to make a preliminary assessment of the plausibility of a perspective occlusion. For example, the method may be extended such that the check for perspective occlusion is performed only when the estimated area of the first image I1 in relation to the estimated area of the second image I2 exceeds a predetermined value.

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

  • EP 0620409 B1 [0009]EP 0620409 B1 [0009]

Claims (14)

Verfahren zur Simulation eines Sensorsystems, das einen bildgebenden Sensor (S) und eine Bildverarbeitungseinheit zur Erkennung von Objekten (O1, ..., O10) in dem von dem Sensor (S) ausgegebenen Sensorbild umfasst, wobei in einer eine Vielzahl virtueller Objekte (O1, ..., O10) umfassenden virtuellen Testumgebung (VT) dem Sensor (S) Ortskoordinaten zugeordnet werden und jedem virtuellen Objekt (O1, ..., O10) Ortskoordinaten zugeordnet werden; dem Sensor (S) ein Sensorsichtfeld (FV) in der virtuellen Testumgebung (VT) zugeordnet wird und eine Anzahl von Objekten aus der Vielzahl virtueller Objekte (O1, ..., O10) als durch das Sensorsystem erkennbare virtuelle Objekte bestimmt werden; ein Simulationslauf gestartet wird, in dessen Verlauf dem Sensor (S) oder mindestens einem virtuellen Objekt (O1, ..., O10) zyklisch neue Ortskoordinaten in der virtuellen Testumgebung (VT) zugewiesen werden, und zyklisch überprüft wird, ob zumindest ein virtuelles Objekt (O1, ..., O10) durch das Sensorsichtfeld (FV) erfasst ist; dadurch gekennzeichnet, dass in dem Fall, dass ein erstes virtuelles Objekt (O1) und ein durch das Sensorsystem erkennbares zweites virtuelles Objekt (O2) durch das Sensorsichtfeld (FV) erfasst ist, - eine für eine Zentralprojektion des ersten virtuellen Objekts (O1) und des zweiten virtuellen Objekts (O2) mit den Ortskoordinaten des Sensors (S) als Augpunkt geeignete Projektionsebene (P) aufgespannt wird; - auf der Projektionsebene (P) ein erstes Abbild (I1) gebildet wird, indem ein mit dem ersten virtuellen Objekt (O1) ortsgleicher erster geometrischer Körper (B1), dessen Abmessungen zumindest näherungsweise mit den Abmessungen des ersten virtuellen Objekts (O1) übereinstimmen, in einer Zentralprojektion mit den Ortskoordinaten des Sensors (S) als Augpunkt zumindest teilweise auf die Projektionsebene (P) projiziert wird; - auf der Projektionsebene (P) ein zweites Abbild (12) gebildet wird, indem ein mit dem zweiten virtuellen Objekt (O2) ortsgleicher zweiter geometrischer Körper (B2) , dessen Abmessungen zumindest näherungsweise mit den Abmessungen des zweiten virtuellen Objekts (O2) übereinstimmen, in einer Zentralprojektion mit den Ortskoordinaten des Sensors (S) als Augpunkt zumindest teilweise auf die Projektionsebene (P) projiziert wird; - geprüft wird, ob eine Schnittmenge des ersten Abbilds (I1) und des zweiten Abbilds (12) existiert; - in dem Fall, dass i. eine Schnittmenge existiert, ii. der euklidische Abstand zwischen Sensor (S) und erstem virtuellem Objekt (O1) geringer als der euklidische Abstand zwischen Sensor und zweitem virtuellem Objekt (O2) ist und iii. die Größe der Schnittmenge, insbesondere in Relation zur Größe des zweiten Abbilds (I2), einen vordefinierten Schwellwert überschreitet, das zweite virtuelle Objekt (O2) als perspektivisch verdeckt gewertet wird; - in dem Fall, dass mindestens eine der Bedingungen i., ii. oder iii. nicht erfüllt ist, das zweite virtuelle Objekt (O2) als perspektivisch nicht verdeckt gewertet wird; und - ein Signal des Sensorsystems erzeugt wird, dem entnehmbar ist, dass alle durch das Sensorsichtfeld (FV) erfassten und durch das Sensorsystem erkennbaren virtuellen Objekte (O1, ..., O10), die als perspektivisch nicht verdeckt gewertet sind, von der Bildverarbeitungseinheit erkannt wurden und alle durch das Sensorsichtfeld (FV) erfassten und durch das Sensorsystem erkennbaren virtuellen Objekte (O1, ..., O10), die als perspektivisch verdeckt gewertet sind, von der Bildverarbeitungseinheit nicht erkannt wurden.Method for simulating a sensor system comprising an imaging sensor (S) and an image processing unit for detecting objects (O1, ..., O10) in the sensor image output by the sensor (S), wherein a plurality of virtual objects (O1 , ..., O10) comprehensive virtual test environment (VT) are assigned to the sensor (S) spatial coordinates and each virtual object (O1, ..., O10) location coordinates are assigned; the sensor (S) is assigned a sensor field of view (FV) in the virtual test environment (VT) and a number of objects of the plurality of virtual objects (O1, ..., O10) are determined as virtual objects detectable by the sensor system; a simulation run is started, in the course of which the sensor (S) or at least one virtual object (O1,..., O10) is cyclically assigned new location coordinates in the virtual test environment (VT), and cyclically checked as to whether at least one virtual object (O1, ..., O10) is detected by the sensor field of view (FV); characterized in that, in the event that a first virtual object (O1) and a second virtual object (O2) detectable by the sensor system are detected by the sensor field of view (FV), one for a central projection of the first virtual object (O1) and the second virtual object (O2) is spanned with the spatial coordinates of the sensor (S) as an appropriate projection plane (P) as an eye point; a first image (I1) is formed on the projection plane (P) in that a first geometric body (B1) which is the same as the first virtual object (O1) and whose dimensions at least approximately coincide with the dimensions of the first virtual object (O1), is projected in a central projection with the spatial coordinates of the sensor (S) as an eye point at least partially on the projection plane (P); a second image (12) is formed on the projection plane (P) by a second geometric body (B2) having the same location as the second virtual object (O2) whose dimensions at least approximately coincide with the dimensions of the second virtual object (O2), is projected in a central projection with the spatial coordinates of the sensor (S) as an eye point at least partially on the projection plane (P); it is checked whether an intersection of the first image (I1) and the second image (12) exists; - in the case that i. an intersection exists, ii. the Euclidean distance between the sensor (S) and the first virtual object (O1) is less than the Euclidean distance between the sensor and the second virtual object (O2), and iii. the size of the intersection, in particular in relation to the size of the second image (I2), exceeds a predefined threshold value, the second virtual object (O2) is regarded as being perspectively obscured; - in the event that at least one of the conditions i., ii. or iii. is not satisfied, the second virtual object (O2) is considered as not being hidden in perspective; and - a signal of the sensor system is generated, from which it can be seen that all detected by the sensor field of view (FV) and recognizable by the sensor system virtual objects (O1, ..., O10), which are considered not to be hidden in perspective, from the image processing unit were recognized and detected by the sensor field of view (FV) and recognizable by the sensor system virtual objects (O1, ..., O10), which are considered to be hidden in perspective, were not recognized by the image processing unit. Verfahren nach Anspruch 1, wobei der Sensor (S) an einem virtuellen Automaten, insbesondere einem virtuellen automatisierten Vehikel (VE), in der virtuellen Testumgebung (VT) aufgehängt ist und das Signal des Sensorsystems von einem zur Ansteuerung des virtuellen Automaten eingerichteten Steuersystem (UUT) oder von einer zur Ansteuerung des virtuellen Automaten eingerichteten Steuersoftware überwacht wird.Method according to Claim 1 , wherein the sensor (S) to a virtual machine, in particular a virtual automated vehicle (VE), in the virtual test environment (VT) is suspended and the signal of the sensor system of a set up for driving the virtual machine control system (UUT) or of a to control the virtual machine installed control software is monitored. Verfahren nach Anspruch 1, wobei der erste geometrische Körper (B1) ein erster Hüllkörper des ersten Objekts (O1) ist und der zweite geometrische Körper (B2) ein zweiter Hüllkörper des zweiten Objekts (O2) ist.Method according to Claim 1 wherein the first geometric body (B1) is a first envelope body of the first object (O1) and the second geometric body (B2) is a second envelope body of the second object (O2). Verfahren nach einem der Ansprüche 1 bis 3, wobei eine Auswahl von Punkten (P1-A, P2-A, P1-B, ..., P3-B) eines geometrischen Körpers (B1, B2) projiziert wird und das Abbild (11, 12) des geometrischen Körpers (B1, B2) gebildet wird, indem aus der von den Abbildern (I1-A, I1-B, I2-A, ..., I2-B) der ausgewählten Punkte gebildeten Punktwolke auf der Projektionsebene (P) eine zweidimensionale Menge gebildet wird.Method according to one of Claims 1 to 3 in which a selection of points (P1-A, P2-A, P1-B,..., P3-B) of a geometric body (B1, B2) is projected and the image (11, 12) of the geometric body (B1 , B2) is formed by forming a two-dimensional set on the projection plane (P) from the point cloud formed by the images (I1-A, I1-B, I2-A, ..., I2-B) of the selected points. Verfahren nach Anspruch 4, wobei die zweidimensionale Menge die konvexe Hülle der Punktwolke ist.Method according to Claim 4 , where the two-dimensional set is the convex hull of the point cloud. Verfahren nach Anspruch 4 oder 5, wobei die Auswahl von Punkten (P1-A, P2-A, P1-B, ..., P3-B) ausschließlich Punkte enthält, deren Abbilder Elemente der konvexen Hülle eines aus einer vollständigen Projektion des geometrischen Körpers (B1, B2) resultierenden Abbilds des geometrischen Körpers (B1, B2) sind.Method according to Claim 4 or 5 in which the selection of points (P1-A, P2-A, P1-B,..., P3-B) contains exclusively points whose images are elements of the convex hull of one of a complete projection of the geometric body (B1, B2) resulting image of the geometric body (B1, B2) are. Verfahren nach einem der vorhergehenden Ansprüche, wobei zur Prüfung der Existenz einer Schnittmenge eine Kollisionserkennung für das erste Abbild (I1) und das zweite Abbild (12) durchgeführt wird und der Schwellwert für die Größe der Schnittmenge gleich null ist. Method according to one of the preceding claims, wherein for checking the existence of an intersection, a collision detection for the first image (I1) and the second image (12) is performed and the threshold value for the size of the intersection is zero. Verfahren nach Anspruch 7, wobei für die Kollisionserkennung ein Gilbert-Johnson-Keerthi-Algorithmus angewandt wird.Method according to Claim 7 in which a Gilbert-Johnson-Keerthi algorithm is used for collision detection. Verfahren nach Anspruch 7, wobei ein Toleranzwert für eine perspektivische Verdeckung eines für das Sensorsystem erkennbaren virtuellen Objekts (O1, ..., O10) festgelegt wird, aus dem Toleranzwert ein Skalierungsfaktor berechnet wird und der erste geometrische Körper (B1) oder der zweite geometrische Körper (B2) vor der Durchführung der Projektion um den Skalierungsfaktor kleiner skaliert wird.Method according to Claim 7 in which a tolerance value for a perspective concealment of a virtual object (O1,..., O10) recognizable for the sensor system is determined, from which tolerance value a scaling factor is calculated and the first geometrical body (B1) or the second geometrical body (B2) is scaled down by the scaling factor before performing the projection. Verfahren nach Anspruch 7, wobei ein Toleranzwert für eine perspektivische Verdeckung eines für das Sensorsystem erkennbaren virtuellen Objekts (O1, ..., O10) festgelegt wird, aus dem Toleranzwert ein Skalierungsfaktor berechnet wird und das erste Abbild (I1) oder das zweite Abbild (12) vor der Durchführung der Kollisionserkennung kleiner skaliert wird.Method according to Claim 7 , wherein a tolerance value for a perspective masking of a recognizable for the sensor system virtual object (O1, ..., O10) is determined from the tolerance value, a scaling factor is calculated and the first image (I1) or the second image (12) before Performing the collision detection is scaled smaller. Verfahren nach einem der Ansprüche 7 bis 9, wobei während der Durchführung der Projektion des ersten geometrischen Körpers (B1) oder des zweiten geometrischen Körpers (B2) eine Kollisionserkennung anhand der Abbilder (I1-A, I2-A, I1-B, ..., I3-B) der bereits auf die Projektionsebene (P) projizierten Punkte (P1-A, P2-A, P1-B, ..., P3-B) des ersten geometrischen Körpers (B1) und des zweiten geometrischen Körpers (B2) durchgeführt wird und die noch nicht abgeschlossenen Projektionen abgebrochen werden, wenn anhand der Abbilder (I1-A, I2-A, I1-B, ..., I3-B) der bereits projizierten Punkte (P1-A, P2-A, P1-B, ..., P3-B) eine Kollision erkannt wird oder eine Kollision ausgeschlossen wird.Method according to one of Claims 7 to 9 , wherein during the implementation of the projection of the first geometric body (B1) or the second geometric body (B2) collision detection on the basis of the images (I1-A, I2-A, I1-B, ..., I3-B) already on the projection plane (P) projected points (P1-A, P2-A, P1-B, ..., P3-B) of the first geometric body (B1) and the second geometric body (B2) is performed and not yet completed projections are aborted when using the images (I1-A, I2-A, I1-B, ..., I3-B) of the already projected points (P1-A, P2-A, P1-B, ... , P3-B) a collision is detected or a collision is excluded. Verfahren nach einem der Ansprüche 1 bis 11, wobei die euklidischen Abstände des ersten geometrischen Körpers (B1) und des zweiten geometrischen Körpers (B2) zum Sensor (S) ermittelt werden, insbesondere anhand der Ortskoordinaten des ersten virtuellen Objekts (O1), des zweiten virtuellen Objekts (O2) und des Sensors (S).Method according to one of Claims 1 to 11 , wherein the Euclidean distances of the first geometric body (B1) and the second geometric body (B2) to the sensor (S) are determined, in particular based on the location coordinates of the first virtual object (O1), the second virtual object (O2) and the sensor (S). Zur Durchführung eines Verfahrens nach einem der Ansprüche 1 bis 12 eingerichtetes Computersystem (TB).To carry out a method according to one of Claims 1 to 12 equipped computer system (TB). Computerprogrammprodukt zur Einrichtung eines Computersystems (TB) zur Durchführung eines Verfahrens nach einem der Ansprüche 1 bis 12.Computer program product for setting up a computer system (TB) for carrying out a method according to one of Claims 1 to 12 ,
DE102018111390.0A 2018-05-14 2018-05-14 A method for rapid estimation of perspective occlusion in a simulation of an imaging sensor Pending DE102018111390A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102018111390.0A DE102018111390A1 (en) 2018-05-14 2018-05-14 A method for rapid estimation of perspective occlusion in a simulation of an imaging sensor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102018111390.0A DE102018111390A1 (en) 2018-05-14 2018-05-14 A method for rapid estimation of perspective occlusion in a simulation of an imaging sensor

Publications (1)

Publication Number Publication Date
DE102018111390A1 true DE102018111390A1 (en) 2019-11-14

Family

ID=68336726

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102018111390.0A Pending DE102018111390A1 (en) 2018-05-14 2018-05-14 A method for rapid estimation of perspective occlusion in a simulation of an imaging sensor

Country Status (1)

Country Link
DE (1) DE102018111390A1 (en)

Similar Documents

Publication Publication Date Title
EP3570063B1 (en) Method for quick estimation of a perspective concealment in a simulation of an imaging sensor
DE102020112314A1 (en) VERIFICATION OF VEHICLE IMAGES
DE102018128289B4 (en) METHOD AND DEVICE FOR AUTONOMOUS SYSTEM PERFORMANCE AND CLASSIFICATION
WO2019179946A1 (en) Generation of synthetic radar signals
DE102018121018A1 (en) EXPAND REAL SENSOR RECORDINGS WITH SIMULATED SENSOR DATA BACKGROUND
DE102015214338A1 (en) Determining an arrangement information for a vehicle
DE102014208009A1 (en) Capture static and dynamic objects
DE102011107458A1 (en) Method for evaluating an object recognition device of a motor vehicle
AT519538B1 (en) Method and system for the simulation-based determination of echo points as well as methods for emulation and emulation device
DE102010013943A1 (en) Method and device for a functional test of an object recognition device of a motor vehicle
DE102020124236A1 (en) REUSABLE GHOST IMAGE IN THE VEHICLE RADAR SYSTEM
DE102020127107A1 (en) METHOD AND DEVICE FOR DETERMINING A CONFIGURATION FOR AN AUTONOMOUS VEHICLE
DE202022106107U1 (en) System for testing level 3 automated driving systems (ADS)
DE102019130096A1 (en) Method for determining radar information, simulation method, classification method, computer program and calculation system
WO2019162317A1 (en) Method for generating sensor data for safety-critical automobile control devices
DE102018111390A1 (en) A method for rapid estimation of perspective occlusion in a simulation of an imaging sensor
DE102017201796A1 (en) Control device for determining a self-motion of a motor vehicle and motor vehicle and method for providing the control device
DE102019220069A1 (en) More reliable classification of radar data from dynamic scenarios
DE102020206641B4 (en) Method and device for providing a high-resolution digital map
DE102008055932A1 (en) Man-made sensor e.g. environment sensor, performance model-based simulation method for car, involves modifying parameters of polygons and reference points, and generating sensor data by environment including parameter-modified polygons
DE102021212632A1 (en) Testing of the environment sensors and/or environment perception of a vehicle
EP4107654A1 (en) Method and device for generating combined scenarios
DE102020212921A1 (en) Method, computer program and device for evaluating a usability of simulation data
DE102019116919A1 (en) Method for the rapid assessment of the visibility of a virtual object using a sensor system
DE102021204790A1 (en) Quantitative evaluation of models to describe real scenarios

Legal Events

Date Code Title Description
R081 Change of applicant/patentee

Owner name: DSPACE GMBH, DE

Free format text: FORMER OWNER: DSPACE DIGITAL SIGNAL PROCESSING AND CONTROL ENGINEERING GMBH, 33102 PADERBORN, DE

R012 Request for examination validly filed