A method of adjusting a grid spacing of an elevation map for autonomous driving
By adjusting the grid spacing of the height map and combining it with vehicle status recognition of dynamic obstacles, the contradiction between object recognition accuracy and system computing speed in existing technologies has been resolved, achieving efficient object recognition and reliability in autonomous driving systems.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- HYUNDAI MOTOR CO LTD
- Filing Date
- 2021-08-25
- Publication Date
- 2026-07-21
AI Technical Summary
In existing autonomous driving technologies, the grid spacing of heightmaps cannot improve the accuracy of object recognition without reducing the system's computing speed, leading to a decrease in the reliability of autonomous driving control.
By acquiring 2D images of the area in front of the vehicle, a depth map is generated and converted into a 3D point cloud. The grid spacing of the height map is adjusted in combination with the driving status of the vehicle and objects. The height map is generated using sensors and an image processor, and the grid spacing is adjusted according to the vehicle status by a grid spacing adjuster to identify dynamic obstacles.
This improved the accuracy of object recognition, reduced the amount of computation, and ensured the computing speed and reliability of the autonomous driving system.
Smart Images

Figure CN114119724B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to a method for adjusting the grid spacing of a height map used for autonomous driving. Background Technology
[0002] Recently, autonomous vehicles have been using a technique to identify objects by converting two-dimensional (2D) images into three-dimensional (3D) height maps based on occupancy grids through the fusion of various information output from sensors. This height map identifies objects by dividing the space into the vehicle's free space region and the space occupied by the object, based on height information associated with each cell of an occupancy grid of a predetermined size.
[0003] In this heightmap, the accuracy of object recognition is determined by the spacing of the occupied grid. A larger grid spacing results in lower disparity resolution, leading to inaccurate information about the 3D position of distant objects. This, in turn, reduces the reliability of autonomous driving control that relies on this information.
[0004] Conversely, the smaller the grid spacing, the higher the accuracy of object recognition. However, due to the limited data throughput of vehicle software that needs to perform real-time calculations, the resolution of parallax cannot be increased indefinitely. When there are processing delays during autonomous driving, judgments and controls may not be executed in a timely manner, potentially leading to accidents.
[0005] Therefore, it is necessary to develop a method for adjusting the grid spacing of the height map to improve the accuracy of object recognition without reducing the system's computing speed.
[0006] The information included in the background section of this invention is only intended to enhance the understanding of the general background of the invention and should not be construed as an admission that such information constitutes prior art known to those skilled in the art or any form of implication. Summary of the Invention
[0007] Various aspects of the present invention aim to provide a method for adjusting the grid spacing of a heightmap for autonomous driving, which substantially eliminates one or more problems caused by the limitations and disadvantages of the prior art.
[0008] The embodiment provides a method for adjusting the grid spacing of a heightmap for autonomous driving, which appropriately adjusts the grid spacing of the heightmap according to the vehicle's driving status, thereby accurately identifying the movement of objects within the target area and improving the system's calculation speed.
[0009] However, the objectives to be achieved by the exemplary embodiments are not limited to those described above, and other objectives not mentioned herein will be clearly understood by those skilled in the art through the following description.
[0010] A method for adjusting the grid spacing of a height map for autonomous driving according to various exemplary embodiments of the present invention may include the following steps: acquiring a 2D image of a region in front of a vehicle; generating a depth map using depth information of objects present in the 2D image; converting the generated depth map into a 3D point cloud; generating a height map by mapping the 3D point cloud onto a grid of a predetermined size; and adjusting the grid spacing of the height map taking into account the driving state between the vehicle and the objects.
[0011] The generation step may include the following steps: calculating the average height using the number of 3D point clouds mapped to each grid of the height map and the height information.
[0012] The method may further include the following steps: determining whether an object is a dynamic obstacle by accumulating the previous frame on the current frame of the height map based on the vehicle's motion information.
[0013] The determination step may include the following steps: performing random variable standardization on the average height of each cell forming the grid, and comparing the standardized value of the random variable with the boundary value of a specific standard deviation to detect the cell where the dynamic obstacle is located.
[0014] The method may further include the following steps: calculating at least one of the relative distance between the dynamic obstacle and the vehicle and the collision time between the vehicle and the dynamic obstacle.
[0015] The adjustment step may include the following steps: when the relative distance is less than or equal to a predetermined first threshold, adjust the grid spacing of the cell containing the dynamic obstacle and the grid spacing of the adjacent cells adjacent to that cell in a first grid adjustment phase.
[0016] The adjustment step may further include the following steps: when the collision time is less than or equal to a predetermined second threshold, the grid spacing of the cell containing the dynamic obstacle and the grid spacing of the adjacent cells adjacent to that cell are adjusted in a second grid adjustment phase.
[0017] The grid spacing in the first grid adjustment stage can be different from that in the second grid adjustment stage.
[0018] When there are multiple dynamic obstacles, i.e., when there are multiple dynamic obstacles, the adjustment step may include: considering each direction of movement of the dynamic obstacles to determine the priority of each of the dynamic obstacles; and adjusting the grid spacing of each of the cells in different ways according to the determined priority.
[0019] An apparatus for adjusting the grid spacing of a height map according to various exemplary embodiments of the present invention may include: a sensor configured to acquire a 2D image of a region in front of a vehicle; an image processor configured to generate a depth map using depth information of objects present in the 2D image, convert the generated depth map into a 3D point cloud, and generate a height map by mapping the 3D point cloud onto a grid of a predetermined size; and a grid spacing adjuster configured to adjust the grid spacing of the height map taking into account the driving state between the vehicle and the objects.
[0020] The methods and apparatus of the present invention have other features and advantages, which will become apparent from or are set forth in more detail in the accompanying drawings, which are incorporated herein and, together with the following detailed description, serve to explain certain principles of the invention. Attached Figure Description
[0021] Figure 1 This is a block diagram illustrating a device for adjusting the grid spacing of a height map according to various exemplary embodiments of the present invention;
[0022] Figure 2 This is a diagram illustrating the process of detecting depth information of an object present in a 2D image using a stereo triangulation scheme according to various exemplary embodiments of the present invention;
[0023] Figure 3 and Figure 4 This is a diagram illustrating the process of generating a height map according to various exemplary embodiments of the present invention;
[0024] Figure 5 This is a diagram illustrating the process of identifying objects using height maps according to various exemplary embodiments of the present invention;
[0025] Figure 6 This is a diagram illustrating the standard normal distribution of accumulated height information in each cell of a height map, used to explain various exemplary embodiments of the present invention;
[0026] Figure 7 This is a diagram illustrating the process of adjusting the grid spacing of a height map according to various exemplary embodiments of the present invention;
[0027] Figure 8 This is a diagram illustrating the process of adjusting the grid spacing of a height map according to another exemplary embodiment of the present invention; and
[0028] Figure 9 This is a flowchart of a method for adjusting the grid spacing of a height map according to various exemplary embodiments of the present invention.
[0029] It is understood that the accompanying drawings are not necessarily drawn to scale, and to some extent simplify the representation of various features illustrating the basic principles of the invention. Specific design features of the invention as included herein, including, for example, specific sizes, orientations, positions, and shapes, will be determined in part by the particular intended application and environment of use.
[0030] In the accompanying drawings, reference numerals refer to the same or equivalent parts of the invention throughout the drawings. Detailed Implementation
[0031] Reference will now be made in detail to various embodiments of the invention, examples of which are shown in the accompanying drawings and described below. While the invention will be described in conjunction with exemplary embodiments thereof, it should be understood that this description is not intended to limit the invention to those exemplary embodiments. On the other hand, the invention is intended to cover not only the exemplary embodiments thereof, but also various alternatives, modifications, equivalents, and other embodiments that may be included within the spirit and scope of the invention as defined in the appended claims.
[0032] Reference will now be made in detail to embodiments, examples of which are illustrated in the accompanying drawings. While the invention is readily adaptable to various modifications and alternatives, specific embodiments thereof are shown by way of example in the drawings. However, the invention should not be construed as limited to the exemplary embodiments set forth herein, but rather, the invention is intended to encompass all modifications, equivalents, and alternatives falling within the spirit and scope of the embodiments.
[0033] It is understood that although the terms "first," "second," etc., may be used herein to describe various elements, these elements are not limited by these terms. These terms are generally used only to distinguish one element from another. Furthermore, the terms defined in consideration of the construction and operation of exemplary embodiments are used only to describe embodiments and not to define the scope of embodiments.
[0034] The terminology used herein is for the purpose of describing the various exemplary embodiments only and is not intended to limit the exemplary embodiments. Unless the context clearly indicates otherwise, the singular forms “a,” “an,” and “the” are intended to include the plural forms as used herein. It will be further understood that when the terms “comprising,” “including,” “containing,” and / or “comprising” are used herein, they specify the presence of the said feature, integer, step, operation, element, component, or combination thereof, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.
[0035] Unless otherwise defined, all terms used herein, including technical or scientific terms, shall have the same meaning as commonly understood by one of ordinary skill in the art. Terms (e.g., terms as defined in common dictionaries) shall be interpreted as having the same meaning as the term in the relevant technical context and shall not be interpreted as having an idealized or overly formal meaning unless expressly defined in the specification.
[0036] In the following description, a device for adjusting the grid spacing of a height map according to an exemplary embodiment will be described with reference to the accompanying drawings.
[0037] Figure 1 This is a block diagram illustrating a device for adjusting the grid spacing of a height map according to various exemplary embodiments of the present invention.
[0038] Reference Figure 1 The device 100 for adjusting the grid spacing of a height map may include a sensor 110, an image processor 120, a map analyzer 130, a calculator 140, and a grid spacing adjuster 150.
[0039] Sensor 110 may include an external sensor for detecting objects present near the vehicle and measuring the distance to the objects, and an internal sensor for measuring the vehicle's driving status in real time.
[0040] External sensors may include a camera for measuring depth information about an object and a range sensor. Exemplary embodiments are not limited to any particular type of external sensor when the external sensors are configured to detect objects and measure distances.
[0041] A camera is a device used to capture images of the area around a vehicle. For example, a camera could be a stereoscopic vision sensor positioned at the front of the vehicle. The camera can transmit stereoscopic images of the area in front of the vehicle to an image processor 120. The image processor 120 can then transmit the stereoscopic images from the camera to a map analyzer 130.
[0042] Ranging sensors measure the distance between a vehicle and an object, or the relative speed between them, and can be implemented as radar sensors or LiDAR (Light Detection and Ranging) sensors. Radar sensors use electromagnetic waves to measure the distance to objects near a vehicle, the object's heading, relative speed, and altitude, enabling long-range identification and operation in adverse weather conditions. LiDAR sensors emit laser pulses onto the area in front of the vehicle on the road and generate point-like LiDAR data based on the laser pulses reflected from objects. These LiDAR radar sensors have precise resolution and are therefore primarily used for detecting objects near vehicles.
[0043] The internal sensors may include a speed sensor, an acceleration sensor, and a steering angle sensor, respectively, for collecting information about the vehicle's speed, acceleration, and steering angle, and may periodically measure information about the state of various actuators.
[0044] The internal sensors may include a speed sensor for measuring vehicle speed, and may further include accelerometers and gyroscopes for detecting motion information in six degrees of freedom. The internal sensors can periodically detect information about the state of the various actuators. The accelerometers can measure the vehicle's motion displacement associated with the translational degrees of freedom on the X, Y, and Z axes. The gyroscopes can detect roll, pitch, and yaw rates associated with the rotational degrees of freedom on the three axes. Accelerometers can be mounted on each of the three axes, and gyroscopes can also be mounted on each of the three axes.
[0045] Image processor 120 can obtain 2D images of the area in front of the vehicle from the camera of sensor 110, and can use information about objects in front obtained from the camera or range sensor to generate a depth map.
[0046] Here, the image processor 120 can use position and depth information about the object in front to convert the depth map into a height map. The image processor 120 can convert a 2D image of the foreground region into a depth map based on the depth information of the object in front detected by a camera or range sensor, and can further use 2D position and depth information about the object in front to convert the depth map into a 3D height map.
[0047] Here, the image processor 120 can convert the depth map into a 3D point cloud, and can further convert the 3D point cloud into a height map.
[0048] In other words, the image processor 120 can detect 3D position information about the object in front based on a 2D image of the area in front and depth information about the object in front, and can convert the depth map into a 3D point cloud based on the detected 3D position information.
[0049] At this point, the image processor 120 can use a stereo triangulation scheme to detect the depth information of objects existing in the 2D image. This will refer to... Figure 2 Describe it.
[0050] Figure 2 This is a diagram illustrating the process of using a stereo triangulation scheme to detect depth information of an object present in a 2D image according to various exemplary embodiments of the present invention.
[0051] like Figure 2As shown, the stereo triangulation method can detect the image center point C of a stereo image. l and C r (i.e., left image I) left And right image I right ), respectively corresponding to the image center point C l and C r The center point O of the camera l and O r and respectively the center point O of the camera l and O r Connect to left image I left And right image I right The corresponding point P l and P r Point P, where the line segments intersect, is taken as the corresponding point.
[0052] In this scenario, the image processor 120 can extract the vertical distance from point P to each camera as depth information Z. Figure 2 In this equation, the depth information Z can be defined as follows: Equation 1.
[0053] [Equation 1]
[0054]
[0055] In Equation 1, f represents the focal length of each camera, b represents the distance between the left and right cameras, and d represents the parallax between the left and right cameras.
[0056] According to this method, the image processor 160 can convert a depth map into a 3D point cloud based on 3D position information detected by depth information obtained from a 2D image.
[0057] Furthermore, the image processor 120 can map the 3D point cloud onto a grid of predetermined size, calculate the average height value of the 3D point cloud, and add the average height value as height information to the grid, thereby generating a height map. In the following text, reference will be made to... Figure 3 and Figure 4 Describe the process of generating a height map from a 3D point cloud.
[0058] Figure 3 and Figure 4 This is a diagram illustrating the process of generating a height map according to various exemplary embodiments of the present invention.
[0059] Reference Figure 3The image processor 120 generates a height map by mapping points corresponding to the coordinates (X, Y) of the 3D point cloud to coordinates (I, J) on a grid of predetermined size. Here, I represents the X-axis coordinate of the height map, and J represents the Y-axis coordinate of the height map. I and J can be defined as shown in Equations 2 and 3 below.
[0060] [Equation 2]
[0061] I=Floor(PointCloud(X)-HeightMap(X range min ))×Grid Size
[0062] [Equation 3]
[0063] J=Floor(PointCloud(Y)-HeightMap(Y range min ))×Grid Size
[0064] In equations 2 and 3, Point Cloud represents the coordinates of the 3D point cloud, X... range min Represents the minimum value of the X-coordinate region, Y range min Represents the minimum value of the Y-coordinate region, and Grid Size represents the size of each cell in the heightmap grid.
[0065] When a 3D point cloud is mapped onto a heightmap, some coordinates may not be mapped to integer coordinates on the heightmap. In this case, these coordinates can be mapped to integer coordinates on the heightmap by rounding down (see [reference]). Figure 3 The term "floor point" in the context of flooring.
[0066] Meanwhile, when a 3D point cloud is mapped onto a height map, the height information existing on the Z-axis of the 3D point cloud can be represented as average height information.
[0067] Reference Figure 4 As shown in Equation 4 below, the image processor 120 can use the number of 3D point clouds mapped onto the grid of the height map and their height information to calculate the average height.
[0068] [Equation 4]
[0069]
[0070] In Equation 4, K represents the Z-axis coordinate of the height map, Number of Points represents the number of 3D point clouds, and PointCloud(Z) represents the height information of the 3D point cloud.
[0071] Map analyzer 130 analyzes the height map generated by image processor 120 to identify drivable areas and objects. This will refer to... Figure 5 Describe it.
[0072] Figure 5 This is a diagram illustrating the process of identifying objects using height maps according to various exemplary embodiments of the present invention.
[0073] Reference Figure 5 The map analyzer 130 can estimate roads by extracting points located at the lowest points in the height map. If the roads are flat, the map analyzer 130 can use the Random Sample Consensus (RANSAC) algorithm to derive an equation representing the plane containing points at the lowest points in the height map.
[0074] Map analyzer 130 identifies drivable areas based on roads estimated from a height map and identifies points located above the roads as objects. Here, map analyzer 130 can display drivable areas and objects on a height map associated with an image of the area ahead.
[0075] Furthermore, the map analyzer 130 can determine the dynamic characteristics of objects by using the vehicle's motion information to accumulate the previous frame onto the current frame of the height map. For example, if the height map is viewed while accumulating the previous frame onto the current frame, static obstacles are always located in the same position, whereas dynamic obstacles are not in the same position.
[0076] The map analyzer 130 can detect vehicle motion information in six degrees of freedom using internal sensors, and can accumulate the previous frame on the current frame of the height map using a rotation / motion transformation matrix [R|t]. Here, the rotation / motion transformation matrix [R|t] can be defined as follows: Equation 5.
[0077] [Equation 5]
[0078]
[0079] In Equation 5, (X′, Y′, Z′) represents the position of the vehicle in the 3D orthogonal coordinate system in the current frame, (X, Y, Z) represents the position of the vehicle in the 3D orthogonal coordinate system in the previous frame, R represents the rotational degrees of freedom on the three axes (roll, pitch, and yaw), and t represents the translational degrees of freedom (motion displacement) on the three axes.
[0080] The map analyzer 130 can generate a standard normal distribution of the height information of each cell in the height map, accumulated from the previous and current frames, and determine the presence of dynamic obstacles in the corresponding cell when height information outside a certain standard deviation range is input. This will refer to... Figure 6 Describe it.
[0081] Figure 6 This is a diagram illustrating the standard normal distribution of accumulated height information in each cell of a height map, as used to explain various exemplary embodiments of the invention.
[0082] Reference Figure 6 The map analyzer 130 generates a standard normal distribution of the accumulated height information in each cell of the height map, and determines that there are dynamic obstacles in the corresponding cell when height information that exists outside a specific standard deviation range Nσ is input.
[0083] Typically, since objects exist on the road surface, their height is greater than the height of the drivable area. When observing the cumulative height map of the previous and current frames, if a drivable area in the previous frame becomes a non-drivable area in the current frame due to a dynamic obstacle, the average cumulative height in the corresponding cell will increase. Therefore, when generating a standard normal distribution of the cumulative height information in each cell of the height map, the height information of the cell where the dynamic obstacle is currently located lies in a standard normal distribution with a larger standard deviation σ.
[0084] Map analyzer 130 can perform random variable standardization Z on the height information of each cell forming the height map and detect cells that satisfy the following equation 6.
[0085] [Equation 6]
[0086]
[0087] In Equation 6, Z represents the standardized value of the random variable, X represents the random variable, μ represents the mean value of the height information of the drivable area or static obstacle, σ represents the standard deviation of the height information of the drivable area or static obstacle, and N represents the boundary value of the standard deviation. Here, the boundary value N of the standard deviation for detecting dynamic obstacles is set experimentally.
[0088] As shown in the figure, the height information of units corresponding to drivable areas or static obstacles is distributed around the average value, while the height information of units corresponding to dynamic obstacles is located in specific areas with larger standard deviations. Figure 6 (Shaded area in the lower right corner). The map analyzer 130 can detect dynamic obstacles by following the standard normal distribution of height information on each cell.
[0089] Simultaneously, the calculator 140 can calculate the distance between the dynamic obstacle and the vehicle, as well as the time of collision (TTC), detected by the map analyzer 130. Here, TTC can be defined as follows: Equation 7.
[0090] [Equation 7]
[0091]
[0092] In Equation 7, d represents the relative distance, and V ego V represents the speed of the vehicle. object This represents the speed of the detected dynamic obstacle.
[0093] The grid spacing adjuster 150 can adjust the grid spacing of the heightmap taking into account the vehicle's driving state. Reducing the grid spacing of the heightmap increases resolution, thereby improving the detection accuracy of dynamic obstacles with less movement, but increases computational load. Therefore, the grid spacing adjuster 150 appropriately adjusts the grid spacing of adjacent cells containing dynamic obstacles based on the vehicle's driving state, rather than reducing the grid spacing of each cell in the heightmap. This will refer to... Figure 7 and Figure 8 Describe it.
[0094] Figure 7 This is a diagram illustrating the process of adjusting the grid spacing of a height map according to various exemplary embodiments of the present invention.
[0095] Reference Figure 7 The grid spacing adjuster 150 receives information from the map analyzer 130 regarding the height map accumulated from multiple frames and the cell containing the dynamic obstacle. Furthermore, the grid spacing adjuster 150 receives calculation information from the calculator 140 related to the distance to the dynamic obstacle and the time-to-collision (TTC). The grid spacing adjuster 150 can variably adjust the grid spacing of the cell containing the dynamic obstacle and the grid spacing of adjacent cells adjacent to the corresponding cell.
[0096] At this point, the grid adjustment phase (Grid Status) comprises a total of n phases (where n is an integer of 2 or greater). The grid spacing and grid adjustment range of each phase can be defined according to the following equation 8.
[0097] [Equation 8]
[0098] Grid Size adj =Grid Size int / n
[0099] Grid Range = n 2 ×9
[0100] Here, Grid Size adj Represents the adjusted grid spacing, Grid Size intGridRange represents the initial grid spacing, GridRange represents the grid adjustment range, and n represents the upper limit of the number of grid adjustment stages (i.e., the number of grid adjustment stages). The upper limit n of the grid adjustment stages can be directly determined by the system designer through experiments, and the grid spacing adjuster 150 can take into account the estimation error of the sensor and the amount of information simplified to the height map, and set the grid adjustment range (GridRange) based on the corresponding cells.
[0101] like Figure 7 As shown, as the grid adjustment stage is set higher, the grid adjustment range increases, and the adjusted grid spacing (Grid Size) increases. adj The grid adjustment range is reduced, thereby improving the accuracy or resolution of dynamic obstacle detection. For example, when the grid adjustment stage is set to 2 (Grid Status = 2), the grid adjustment range is 36. On the other hand, when the grid adjustment stage is set to 4 (Grid Status = 4), the grid adjustment range increases significantly to 144.
[0102] Therefore, the grid spacing adjuster 150 can increase resolution by setting the grid status of the grid adjustment stage to a higher level as the risk of collision with dynamic obstacles increases. This will refer to... Figure 8 Describe it.
[0103] Figure 8 This is a diagram illustrating the process of adjusting the grid spacing of a height map according to another exemplary embodiment of the present invention.
[0104] Reference Figure 8 The grid spacing adjuster 150 can estimate the direction of motion of dynamic obstacles by accumulating the previous frame on the current frame of the height map, and can take the direction of motion of dynamic obstacles into account to variably adjust the grid adjustment stage according to the risk of collision.
[0105] The grid spacing adjuster 150 can set the grid adjustment stage for predicting the future movement of a dynamic obstacle from its current cell to a cell it will move to, to "n". It can also apply a grid adjustment stage of n-1 or lower to cells the dynamic obstacle has already passed through. In other words, the grid spacing adjuster 150 can appropriately adjust the grid spacing of the height map according to the vehicle's driving status, in order to accurately identify the movement of objects within the target area and reduce computational load, thereby improving the system's computational speed.
[0106] On the other hand, when there are multiple dynamic obstacles in front of the vehicle, the grid spacing adjuster 150 determines the priority by taking into account the distance between the vehicle and each dynamic obstacle and the collision time between the vehicle and the dynamic obstacle. A higher grid adjustment stage is set for dynamic obstacles with higher priority, and a lower grid adjustment stage is set for dynamic obstacles with lower priority.
[0107] In the following text, reference will be made to Figure 9 Describe a method for adjusting the grid spacing of a heightmap.
[0108] Figure 9 This is a flowchart of a method for adjusting the grid spacing of a height map according to various exemplary embodiments of the present invention.
[0109] Reference Figure 9 Sensor 110 can be used to acquire a 2D image of the area in front of the vehicle (S910).
[0110] Subsequently, depth information of objects existing in a 2D image can be used to generate a depth map, and the depth map can be converted into a 3D point cloud (S920).
[0111] Subsequently, the 3D point cloud can be mapped onto a grid of a predetermined size to generate a height map (S930).
[0112] Subsequently, the previous frame can be accumulated on the current frame of the generated height map to determine whether the object is a dynamic obstacle (S940).
[0113] When the object is a static obstacle ("No" in S940), the grid spacing of the height map can be maintained in the initial state (S942).
[0114] On the other hand, when the object is a dynamic obstacle ("yes" in S940), the relative distance between the vehicle and the dynamic obstacle can be calculated, and it can be determined whether the relative distance is less than or equal to the first threshold (S950).
[0115] When the relative distance is greater than the first threshold ("No" in S950), the height map grid adjustment stage can be set to "n-2", and the grid spacing can be adjusted based on the cell where the dynamic obstacle is located (S952). Here, n represents the upper limit of the grid adjustment stage.
[0116] On the other hand, when the relative distance is less than or equal to the first threshold ("yes" in S950), the collision time (TTC) between the vehicle and the dynamic obstacle can be calculated, and it can be determined whether the collision time is less than or equal to the second threshold (S960).
[0117] When the collision time is greater than the second threshold ("No" in S950), the height map grid adjustment stage can be set to "n-1", and the grid spacing can be adjusted based on the cell where the dynamic obstacle is located (S962).
[0118] On the other hand, when the collision time is less than or equal to the second threshold ("yes" in S950), the height map grid adjustment stage can be set to "n", and the grid spacing can be adjusted based on the cell where the dynamic obstacle is located (S964).
[0119] The first and second thresholds mentioned above, as well as the upper limit n of the grid adjustment stage, can be directly determined by the system designer through experiments.
[0120] In an exemplary embodiment of the present invention, the image processor 120, map analyzer 130, calculator 140, and grid spacing adjuster 150 may be integrated into a single controller.
[0121] The method for adjusting the grid spacing of a height map according to the above embodiments can be implemented as a program running in a computer and can be stored in a computer-readable recording medium, examples of which may include read-only memory (ROM), random access memory (RAM), optical disc ROM (CD-ROM), magnetic tape, floppy disk, and optical data storage device.
[0122] Computer-readable recording media can also be distributed across networked computer systems, thereby storing and running computer-readable code in a distributed manner. Furthermore, programmers in the art to which these exemplary embodiments pertain can readily design functional programs, code, and code segments to perform the methods described above.
[0123] As can be clearly seen from the above description, according to the exemplary embodiment configured at least as described above, the grid spacing of the height map can be appropriately adjusted according to the vehicle's driving state in order to accurately identify the movement of objects within the target area and reduce the amount of computation, thereby improving the system's computational speed.
[0124] However, the effects achievable by the present invention are not limited to those described above, and those skilled in the art will clearly understand other effects not mentioned herein through the above description.
[0125] Although only a limited number of embodiments have been described above, various other embodiments are possible. The technical content of the above embodiments can be combined in various forms as long as they are not incompatible with each other, and therefore can be implemented in new embodiments.
[0126] Furthermore, terms related to control devices, such as "controller," "control unit," "control device," or "control module," refer to hardware devices including a memory and a processor, configured to run one or more steps interpreted as an algorithmic structure. The memory stores the algorithmic steps, and the processor runs the algorithmic steps to perform one or more processes of the methods according to various exemplary embodiments of the present invention. A control device according to exemplary embodiments of the present invention can be implemented using a non-volatile memory and a processor configured to store algorithms for controlling the operation of various components of a vehicle or to store data regarding software commands for running algorithms, and the processor is configured to perform the aforementioned operations using the data stored in the memory. The memory and processor can be separate chips. Alternatively, the memory and processor can be integrated into a single chip. The processor can be implemented as one or more processors. The processor can include various logic circuits and arithmetic circuits, can process data according to a program provided from the memory, and can generate control signals based on the processing results.
[0127] The control device may be at least one microprocessor operated by a predetermined program, which may include a series of commands for performing the methods included in the above-described exemplary embodiments of the present invention.
[0128] The invention described above can also be implemented as computer-readable code on a computer-readable recording medium. A computer-readable recording medium is any data storage device that can store data that can subsequently be read by a computer system. Examples of computer-readable recording media include hard disk drives (HDDs), solid-state drives (SSDs), solid-state drives (SDDs), read-only memory (ROM), random access memory (RAM), CD-ROMs, magnetic tapes, floppy disks, optical data storage devices, and embodiments as carrier waves (e.g., transmitted over the Internet).
[0129] In various exemplary embodiments of the present invention, each of the above operations may be performed by a control device, and the control device may be configured by multiple control devices or a single integrated control device.
[0130] In various exemplary embodiments of the present invention, the control device may be implemented in hardware or software form, or in a combination of hardware and software.
[0131] For ease of interpretation and precise definition of the appended claims, the terms “upper,” “lower,” “inner,” “outer,” “above,” “below,” “upward,” “downward,” “front,” “back,” “behind,” “inner,” “external,” “inland,” “outer,” “internal,” “external,” “built-in,” “external,” “forward,” and “backward” are used to describe features of exemplary embodiments with reference to the positions of these features shown in the accompanying drawings. It will be further understood that the term “connection” or its derivatives refer to both direct and indirect connections.
[0132] For purposes of illustration and description, the foregoing description has shown specific exemplary embodiments of the invention. These are not intended to be exhaustive or to limit the invention to the precise forms disclosed, and many modifications and variations will be apparent from the foregoing teachings. The exemplary embodiments were chosen and described to explain certain principles of the invention and its practical application, enabling others skilled in the art to implement and utilize the various exemplary embodiments of the invention, as well as their various alternatives and modifications. The scope of the invention is intended to be defined by the appended claims and their equivalents.
Claims
1. A method for adjusting the grid spacing of a heightmap used for autonomous driving, the method comprising the following steps: Acquire a 2D image of the area in front of the vehicle; A depth map is generated using the depth information of objects present in the 2D image, and the generated depth map is converted into a 3D point cloud. A height map is generated by mapping the 3D point cloud onto a grid of predetermined size; and The grid spacing of the height map is adjusted according to the driving status between the vehicle and the object. in: The step of generating the height map includes calculating the average height using the number of 3D point clouds mapped to each grid of the height map and height information; The method further includes determining whether the object is a dynamic obstacle by accumulating the previous frame onto the current frame of the height map based on the vehicle's motion information. The steps for determining whether the object is a dynamic obstacle include the following: Perform standardization on the random variable representing the average height of each cell forming the grid; and The standardized value of the random variable is compared with the boundary value of a specific standard deviation to detect the cell containing the dynamic obstacle. The dynamic obstacles are multiple, including multiple dynamic obstacles, and The steps for adjusting the grid spacing of the heightmap include: Considering each direction of motion of the dynamic obstacle, determine the priority of each of the dynamic obstacles; and The grid spacing of each cell is adjusted differently based on the determined priority.
2. The method according to claim 1, further comprising the following steps: Calculate at least one of the relative distance between the dynamic obstacle and the vehicle and the collision time between the vehicle and the dynamic obstacle.
3. The method according to claim 2, wherein, The steps for adjusting the grid spacing of the heightmap include the following: When the relative distance is less than or equal to a predetermined first threshold, the grid spacing of the unit containing the dynamic obstacle and the grid spacing of the adjacent units are adjusted in the first grid adjustment phase.
4. The method according to claim 3, wherein, The step of adjusting the grid spacing of the heightmap further includes the following steps: When the collision time is less than or equal to a predetermined second threshold, the grid spacing of the unit containing the dynamic obstacle and the grid spacing of the adjacent units are adjusted in the second grid adjustment phase.
5. The method according to claim 4, wherein, The grid spacing in the first grid adjustment stage is different from the grid spacing in the second grid adjustment stage.
6. A non-transitory computer-readable recording medium having a program recorded therein for execution by a processor to perform the method of claim 1.
7. A device for adjusting the grid spacing of a heightmap, the device comprising: Sensors acquire 2D images of the area in front of the vehicle; An image processor generates a depth map using depth information of objects present in the 2D image, converts the generated depth map into a 3D point cloud, and generates a height map by mapping the 3D point cloud onto a grid of a predetermined size. as well as The grid spacing adjuster adjusts the grid spacing of the height map based on the driving status between the vehicle and the object. in: The image processor uses the number of 3D point clouds mapped to each grid of the height map, along with height information, to calculate the average height. The device further includes a map analyzer that determines whether the object is a dynamic obstacle by accumulating the previous frame onto the current frame of the height map based on the vehicle's motion information. The map analyzer performs random variable standardization on the average height of each cell forming the grid, and compares the standardized value of the random variable with a boundary value of a specific standard deviation to detect the cell containing the dynamic obstacle. The dynamic obstacles are multiple, including multiple dynamic obstacles, and The grid spacing adjuster considers each direction of movement of the dynamic obstacle to determine the priority of each of the dynamic obstacles, and adjusts the grid spacing of each of the units differently according to the determined priority.
8. The device according to claim 7, further comprising: A calculator that calculates at least one of the relative distance between the dynamic obstacle and the vehicle and the collision time between the vehicle and the dynamic obstacle.
9. The device according to claim 8, wherein, When the relative distance is less than or equal to a predetermined first threshold, the grid spacing adjuster adjusts the grid spacing of the unit containing the dynamic obstacle and the grid spacing of adjacent units in the unit during a first grid adjustment phase.
10. The device according to claim 9, wherein, When the collision time is less than or equal to a predetermined second threshold, the grid spacing adjuster adjusts the grid spacing of the unit containing the dynamic obstacle and the grid spacing of adjacent units in the unit during the second grid adjustment phase.
11. The device according to claim 10, wherein, The grid spacing in the first grid adjustment stage is different from the grid spacing in the second grid adjustment stage.