Simulation device, simulation method, and simulation program
The simulation device and method improve the accuracy of wave collision calculations in computer simulations by using polygon identification and collision position correction, specifically for curved surfaces, addressing the phase discrepancies in wave interactions, thus enhancing the simulation's fidelity in representing real-world scenarios.
Patent Information
- Application Number
- PCT/JP2024/024439
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-07-14
- Filing Date
- 2024-07-05
- Publication Date
- 2025-01-23
AI Technical Summary
Current computer simulations for advanced safety features in automobiles, such as those using radar and ultrasonic waves, face inaccuracies in calculating received power due to discrepancies in wave phase changes between real and simulated environments, particularly for curved objects where small errors in propagation distance lead to significant power variations.
A simulation device and method that includes a polygon identification section and a collision position correction section, where waves collide with polygons represented by three-dimensional coordinate points, and a collision point is calculated using curved surface interpolation to accurately determine the collision point on a target curved surface, reducing the difference between real and simulated collision positions.
This approach enhances the accuracy of simulation reproducibility by accurately calculating the collision point of waves with curved surfaces, thereby improving the simulation's accuracy in representing the real-world interaction of radar and ultrasonic waves with objects.
Smart Images

Figure JP2024024439_23012025_PF_FP_ABST
Abstract
Description
Simulation device, simulation method, and simulation program CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This international application claims the benefit of Japanese Patent Application No. 2023-116002, filed with the Japan Patent Office on July 14, 2023, the entire disclosure of which is incorporated herein by reference.
[0002] The present disclosure relates to a simulation device, a simulation method, and a simulation program for forming waves through simulation.
[0003] Patent Document 1 describes a method for performing tessellation in a computer graphics system. Tessellation is a technique for further dividing a large number of polygons (e.g., triangular polygons) used to represent a three-dimensional solid, for example.
[0004] Japanese Patent Application Laid-Open No. 2017-4516
[0005] In recent years, advanced safety features for automobiles have been expanding. To streamline the development process, in addition to performance verification using test equipment, computer simulations are increasingly being used to reproduce driving environments and verify performance, and there is a demand for improved accuracy.
[0006] Advanced safety features are realized using external recognition sensors for recognizing the environment outside the vehicle. External recognition sensors include active sensors and passive sensors. Active sensors include radar, sonar, and LiDAR. Passive sensors include cameras.
[0007] An active sensor recognizes external objects by emitting radio waves, ultrasonic waves, or light and receiving the power reflected by the external objects.
[0008] The computer simulation calculates how much power is returned when the radio waves, ultrasound waves or light emitted by the sensor hits objects around the vehicle, such as people, cars and roads.
[0009] In particular, for radio wave and ultrasonic power, not only the magnitude of the power but also the phase (i.e., the amount of time shift between the power waves) is an important factor in accurately calculating the received power.
[0010] Regarding specific phenomena related to phase, for example, when two powers are received simultaneously, if they are received with the same phase, the powers are amplified, but if they are received with opposite phases, the powers cancel each other out and disappear.
[0011] This phase fluctuates at the moment of reflection from the surface of an object, and fluctuates as the wave travels through space. In order to reproduce the portion that fluctuates as the wave propagates through space, it is important that the shape of the object is accurately represented. In the case of millimeter-wave radar, the wavelength is on the order of a few millimeters, and a deviation of just 1 mm in the propagation distance can result in a very large error in the received power.
[0012] In computer simulations, the shape of an object is often expressed by connecting polygons, but when it comes to objects with curved surfaces, it is impossible to make them match the ideal shape.
[0013] As a result of detailed investigation by the inventors, it was discovered that the phase of the waves colliding with an object can differ between reality and simulation, which can cause significant errors in the calculation of received power in the simulation.
[0014] The present disclosure improves the accuracy of simulation reproduction.
[0015] One aspect of the present disclosure is a simulation device including a polygon identification unit and a collision position correction unit.
[0016] The polygon identification unit is configured to identify, as a target polygon, a polygon with which a wave formed by simulation collides, from among a plurality of polygons whose vertices are a group of three-dimensional coordinate points that indicate the three-dimensional shape of the object surface by a collection of three-dimensional coordinate points represented by three-dimensional coordinates.
[0017] The collision position correction unit is configured to calculate a collision point at which the wave collides with the target curved surface, based on the target curved surface, which is a curved surface calculated by performing surface interpolation on a plane of the target polygon.
[0018] The simulation device of the present disclosure configured in this manner can reduce the difference between the position where a wave collides with a real object and the position where a wave collides with an object reproduced in the simulation, thereby improving the reproduction accuracy of the simulation.
[0019] Another aspect of the present disclosure is a simulation method in which a simulation device identifies, as a target polygon, a polygon with which a wave formed by simulation collides, from among a plurality of polygons whose vertices are a group of three-dimensional coordinate points that indicate the three-dimensional shape of an object surface by a collection of three-dimensional coordinate points expressed in three-dimensional coordinates, and the simulation device calculates the collision point at which the wave collides with the target curved surface, based on the target curved surface, which is a curved surface calculated by performing surface interpolation on the plane of the target polygon.
[0020] The simulation method of the present disclosure configured in this manner is a method executed by the simulation device of the present disclosure, and by executing this method, it is possible to obtain the same effects as the simulation device of the present disclosure.
[0021] Yet another aspect of the present disclosure is a simulation program for causing a computer to function as a polygon specifying unit and a collision position correcting unit.
[0022] A computer controlled by the simulation program of the present disclosure can constitute a part of the simulation device of the present disclosure, and can obtain the same effects as the simulation device of the present disclosure.
[0023] It is a block diagram showing the configuration of a radar simulator. It is a flowchart showing a collision position correction process. It is a diagram explaining the setting and movement of control points. It is a diagram showing collision points on a polygon and collision points on a Bezier surface.
[0024] Hereinafter, embodiments of the present disclosure will be described with reference to the drawings.
[0025] As shown in FIG. 1, the radar simulator 1 of this embodiment includes a display unit 11, an operation input unit 12, a data storage unit 13, a data input / output unit 14, and a control unit 15.
[0026] The display unit 11 includes a display device (not shown) and displays various images on the display screen of the display device.
[0027] The operation input unit 12 outputs input operation information for identifying an input operation performed by a user via a keyboard and a mouse (not shown).
[0028] The data storage unit 13 is a storage device for storing various data.
[0029] The data input / output unit 14 inputs and outputs data to and from an external device connected by wire or wirelessly.
[0030] The control unit 15 is mainly composed of a microcomputer including a CPU 21, a ROM 22, a RAM 23, etc. Various functions of the microcomputer are realized by the CPU 21 executing a program stored in a non-transitory tangible recording medium. In this example, the ROM 22 corresponds to the non-transitory tangible recording medium storing the program. Furthermore, the execution of this program results in the execution of a method corresponding to the program. Note that some or all of the functions executed by the CPU 21 may be configured as hardware using one or more ICs, etc. Furthermore, the number of microcomputers constituting the control unit 15 may be one or more.
[0031] The ROM 22 stores a simulation program 24. The simulation program 24 may be pre-installed in the radar simulator 1, or may be installed from a recording medium or via a network. Examples of recording media include optical disks, magnetic disks, and semiconductor memories.
[0032] The simulation program 24 is configured to use highly accurate three-dimensional map data to reproduce the three-dimensional shape of the road and the three-dimensional shape of the area around the road in a virtual space, and to run a vehicle on the road reproduced in this virtual space.
[0033] In this embodiment, the three-dimensional map data is a three-dimensional coordinate point cloud that indicates the three-dimensional shape of the surface of an object using a set of coordinate points expressed in three-dimensional coordinates. The simulation program 24 is configured to reproduce the three-dimensional shape in virtual space by generating a large number of polygons (triangular polygons in this embodiment) with each of the multiple three-dimensional coordinate points that make up the three-dimensional coordinate point cloud as a vertex.
[0034] Furthermore, the simulation program 24 is configured to simulate the transmission and reception of radar waves by a radar device mounted on a vehicle traveling in a virtual space.
[0035] By starting the simulation program 24 stored in the ROM 22, a radar simulation is executed that simulates the running of a vehicle and the transmission and reception of radar waves by the radar device.
[0036] Next, a procedure for correcting the collision position where the radar wave collides with the object in the radar simulation will be described.
[0037] The collision position correction process is started after the completion of a transmission wave generation process for generating radar waves (hereinafter referred to as transmission waves) transmitted by a radar device in a radar simulation. The transmission wave generation process is executed every time a preset radar wave transmission period elapses in a virtual space formed by the radar simulation.
[0038] When the collision position correction process is executed, the CPU 21 of the control unit 15 calculates the collision position where the radar wave collides with the polygon in S10, as shown in Fig. 2. The collision position is calculated based on the propagation path of the radar wave and the positions of the three-dimensional coordinate point cloud. This identifies the polygon where the radar wave collides (hereinafter, the target polygon).
[0039] In step S20, the CPU 21 calculates the control point b i,j,k Set the initial position of
[0040] As shown in FIG. 3, the control point b i,j,kThe initial positions of the control points b are set to the vertices of the triangle, the positions that divide each side of the triangle into three equal parts, and the center of gravity of the triangle face. i,j,k Control point b i It is sometimes written as follows.
[0041] b i,j,k In the case of Bezier interpolation used in this embodiment, "i+j+k=3" is used, where the control points are represented by i, j, and k.
[0042] Control point b on triangle ABC i is expressed by the formula (1). A, B, and C in the formula (1) are vectors indicating the coordinate positions of the vertices A, B, and C of the triangle ABC. In this embodiment, since the order is 3 (i.e., n=3), the control point b i is expressed by equation (2).
[0043]
[0044] As shown in FIG. 2, in S30, the CPU 21 calculates normal vectors n at three vertices constituting the target polygon in order to generate a curved surface from the target polygon. 0 , n 1 , n 2 (Hereinafter, the vertex normal vector n 0 , n 1 , n 2 ) and calculate the control point b i Move the control point b'. i is calculated by the formulas (3) to (12) as the control point b i The vector v in equations (3) to (12) is 0 , v 1 , v 2 are the control points b 3,0,0 , b 0,3,0 , b 0,0,3 is a vector indicating the position of
[0045]
[0046] As shown in FIG. 3, the normal vector n 0 , n 1 , n 2are the normal vectors at vertices A, B, and C, respectively.
[0047] Formulas (3) to (11) are the control points b closest to the vertex. i The edge extending to the control point b is perpendicular to the vertex normal vector. i However, the control point b 3,0,0 , b 0,3,0 , b 0,0,3 is a vertex. Therefore, the control point b 3,0,0 , b 0,3,0 , b 0,0,3 The position of does not change.
[0048] Equation (12) is the control point b 1,1,1 is another control point b i,j,k This is a formula for making the amount of movement larger than
[0049] As shown in FIG. 2, in S40, the CPU 21 calculates the control point b' that was moved in S30. i Based on the position of the radar wave and the collision position calculated in S10, the collision position on the Bezier surface where the radar wave collided is calculated, and the collision position correction process is completed.
[0050] The impact position where the radar wave hits the target polygon and the position of the control point are expressed by barycentric coordinates. Barycentric coordinates are expressed as a three-component vector u = (u, v, w). Barycentric coordinates indicate how close an arbitrary point on a triangle is to each vertex of the triangle. The sum of u, v, and w is always 1, and the position vector p indicating the position of an arbitrary point on triangle ABC is expressed by equation (13). In equation (13), the order of u, v, and w is w, u, and v from left to right for ease of calculation.
[0051]
[0052] The Bezier surface is expressed by equations (14) and (15).
[0053] In equation (14), n is the degree of the Bezier surface. The vector u is the collision position. B(u) is the Bernstein coefficient. i, j, and k are the control point numbers. b n (u) is the position on the Bezier surface corresponding to the collision position. iis the control point b' moved in S30 i This is the position.
[0054]
[0055] In this embodiment, the degree (i.e., n) of the Bezier surface is 3. Therefore, the CPU 21 calculates the collision position b on the Bezier surface where the radar wave collides, using equations (16) and (17). 3 (u) is calculated.
[0056]
[0057] The radar simulation executes a collision position correction process every time a radar wave is generated, thereby calculating the collision position on the Bezier surface where the radar wave collides.
[0058] 4, the radar simulation calculates, for example, the position of a collision point IP1 where a radar wave W1 collides with a polygon PG1, and then calculates a position on a Bezier surface BC1 of the polygon PG1 that corresponds to the collision point IP1 as a corrected collision point CIP1.
[0059] Similarly, the radar simulation calculates, for example, the position of a collision point IP2 where the radar wave W2 collides with the polygon PG2, and then calculates the position on the Bezier surface BC2 of the polygon PG2 that corresponds to the collision point IP2 as a corrected collision point CIP2.
[0060] The radar simulation then calculates the timing at which the radar device receives the radar waves, the received power, and other information based on the radar waves reflected at the corrected collision points CIP1 and CIP2.
[0061] The radar simulator 1 configured in this manner is configured to identify, as the target polygon, a polygon on which the radar wave formed by the simulation collides, among a plurality of polygons whose vertices are a group of three-dimensional coordinate points that indicate the three-dimensional shape of the object surface by a collection of three-dimensional coordinate points expressed in three-dimensional coordinates.
[0062] The radar simulator 1 is also configured to calculate the collision points where the radar waves collide with the Bezier surface, based on the Bezier surface calculated by performing surface interpolation on the plane of the target polygon.
[0063] Such a radar simulator 1 can reduce the difference between the position where the radar wave collides with a real object and the position where the radar wave collides with an object reproduced in the simulation, thereby improving the reproduction accuracy of the simulation.
[0064] In the embodiment described above, the radar simulator 1 corresponds to a simulation device, the radar wave corresponds to a wave motion, S10 corresponds to processing as a polygon identification unit, the Bezier surface corresponds to a target surface, and S20 to S40 correspond to processing as a collision position correction unit.
[0065] Although one embodiment of the present disclosure has been described above, the present disclosure is not limited to the above embodiment and can be implemented in various modifications.
[0066] [Modification 1] In the above embodiment, radar waves are formed as waves by simulation, but electromagnetic waves, ultrasonic waves, or light may be formed as waves.
[0067] [Modification 2] In the above embodiment, the three-dimensional shape of the object surface is reproduced using triangular polygons, but the three-dimensional shape of the object surface may be reproduced using polygons with polygonal shapes other than triangles.
[0068] [Variation 3] In the above embodiment, a form in which a Bézier surface is calculated by performing surface interpolation was described, but the method of converting a planar polygon into a curved surface is not limited to the method of calculating a Bézier surface, and any method may be used.
[0069] In the above embodiment, the position on the Bézier surface corresponding to the collision position on the triangular polygon is calculated as the position where the radar wave collides with the Bézier surface. However, it is also possible to calculate the position of the intersection between the target surface, which is a curved surface calculated by performing surface interpolation on the plane of the target polygon, and the propagation path of the radar wave formed by simulation as the position of the collision point where the radar wave collides with the target surface.
[0070] The control unit 15 and the method described herein may be implemented by a special-purpose computer configured by configuring a processor and memory programmed to execute one or more functions embodied in a computer program. Alternatively, the control unit 15 and the method described herein may be implemented by a special-purpose computer configured by configuring a processor with one or more dedicated hardware logic circuits. Alternatively, the control unit 15 and the method described herein may be implemented by one or more special-purpose computers configured by combining a processor and memory programmed to execute one or more functions with a processor configured with one or more hardware logic circuits. Furthermore, the computer program may be stored as instructions executed by a computer on a computer-readable non-transitory tangible recording medium. The method for implementing the functions of each unit included in the control unit 15 does not necessarily need to include software; all of the functions may be implemented using one or more hardware components.
[0071] In the above embodiments, multiple functions of one component may be realized by multiple components, or one function of one component may be realized by multiple components. Furthermore, multiple functions of multiple components may be realized by one component, or one function realized by multiple components may be realized by one component. Furthermore, part of the configuration of the above embodiments may be omitted. Furthermore, at least part of the configuration of the above embodiments may be added to or substituted for the configuration of another of the above embodiments.
[0072] In addition to the above-described radar simulator 1, the present disclosure can also be realized in various forms, such as a system including the radar simulator 1 as a component, a program for causing a computer to function as the radar simulator 1, a non-transient physical recording medium such as a semiconductor memory on which this program is recorded, and a simulation method.
Claims
1. A simulation device (1) comprising: a polygon identification unit (S10) configured to identify, as a target polygon, a polygon with which a wave formed by simulation collides, among a plurality of polygons whose vertices are a group of three-dimensional coordinate points that indicate the three-dimensional shape of an object surface by a collection of three-dimensional coordinate points represented by three-dimensional coordinates; and a collision position correction unit (S20 to S40) configured to calculate a collision point at which the wave collides with the target curved surface, based on the target curved surface, which is a curved surface calculated by performing surface interpolation on the plane of the target polygon.
2. A simulation device as described in claim 1, wherein the collision position correction unit sets a plurality of control points inside the plane of the target polygon formed by connecting three or more of the vertices with straight lines, and uses a vertex normal, which is the normal at the vertex, to move the control point so that the edge extending from the vertex to the nearest control point is perpendicular to the vertex normal, and performs surface interpolation on the plane of the target polygon based on the position of the moved control point.
3. A simulation method in which a simulation device identifies, among a plurality of polygons whose vertices are three-dimensional coordinate points that indicate the three-dimensional shape of an object surface by a collection of three-dimensional coordinate points represented in three-dimensional coordinates, a polygon with which a wave formed by simulation collides as a target polygon, and the simulation device calculates the collision point at which the wave collides with the target curved surface, based on the target curved surface, which is a curved surface calculated by performing surface interpolation on the plane of the target polygon.
4. A simulation program (24) for causing a computer to function as: a polygon identification unit (S10) configured to identify, as a target polygon, a polygon with which a wave formed by simulation collides, among a plurality of polygons whose vertices are a group of three-dimensional coordinate points that indicate the three-dimensional shape of an object surface by a collection of three-dimensional coordinate points represented by three-dimensional coordinates; and a collision position correction unit (S20 to S40) configured to calculate the collision point at which the wave collides with the target curved surface, based on the target curved surface, which is a curved surface calculated by performing surface interpolation on the plane of the target polygon.
Citation Information
Patent Citations
Radio wave propagation simulation apparatus and radio wave propagation simulation method
JP2005072654A
Image generation device and image generation method
WO2019049289A1
Signal generation device, signal generation program, and signal generation method
WO2023017792A1