A method for generating an oriented bounding box of obstacles based on an autonomous vehicle

Obstacle point cloud data is collected through vehicle-mounted lidar, and the obstacle directed enclosure box for unmanned vehicles is generated, which solves the problems of high computational complexity and over-enclosure in the prior art, and achieves efficient and accurate determination of obstacle enclosure space.

CN114779210BActive Publication Date: 2025-07-11SANY INTELLIGENT MINING TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210343880.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-04-02
Publication Date
2025-07-11
Estimated Expiration
2042-04-02

AI Technical Summary

Technical Problem

The existing obstacle enclosure box generation method of unmanned vehicles has high computational complexity, long calculation time and high hardware load. The enclosure box that does not consider the direction can easily cause overenclosure, resulting in unnecessary space in the enclosure box.

Method used

Obstruction point cloud data is collected through vehicle-mounted lidar, the target convex hull point cloud of the obstacle is determined, and the obstacle directed enclosure box is generated based on the convex hull point, including data acquisition, convex hull determination and enclosure box generation modules.

Benefits of technology

It effectively reduces computing resource consumption, shortens the time for generating a bounding box, and accurately determines the space occupied by obstacles, improving the efficiency of bounding box determination.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114779210B_ABST
    Figure CN114779210B_ABST
Patent Text Reader

Abstract

The present application discloses a method and device for generating an oriented bounding box of an obstacle based on an autonomous vehicle, a storage medium, and a computer device. The method includes: obtaining obstacle point cloud data collected by an on-vehicle lidar in the autonomous vehicle, where the obstacle point cloud is used to indicate the area of the obstacle facing the on-vehicle lidar, and wherein the obstacle point cloud includes a plurality of target points; determining a target convex hull point cloud corresponding to the obstacle based on the obstacle point cloud data, where a target convex hull formed by the target convex hull point cloud encloses the obstacle point cloud, and the target convex hull point cloud includes a plurality of convex hull points; generating the oriented bounding box of the obstacle of the autonomous vehicle according to the convex hull points in the target convex hull point cloud. The present application can effectively reduce the consumption of computing resources, the generation time of the oriented bounding box is short, and at the same time, the enclosed space of the obstacle can be determined relatively accurately.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer processing technologies, and in particular, to a method and device for generating a directed bounding box of an obstacle based on an autonomous vehicle, a storage medium, and a computer device. Background Art

[0002] In order to ensure the safe driving of an autonomous vehicle on the road, it is necessary to continuously analyze the obstacles in the surrounding environment during the driving process of the autonomous vehicle, and accurately and quickly calculate the bounding box of the obstacle, so that the autonomous vehicle can avoid colliding with the obstacle. Here, the bounding box refers to encapsulating a complex obstacle in a simple bounding box and approximately replacing the complex obstacle shape with the simple bounding box shape.

[0003] Currently, the generation methods of the bounding box mainly have the following problems: The calculation method of the bounding box considering direction has a high complexity, a long operation time, and a high hardware load; the calculation method of the bounding box without considering direction is prone to over-enclosing, resulting in a lot of unnecessary enclosed space in the bounding box. Summary of the Invention

[0004] In view of this, the present application provides a method and device for generating a directed bounding box of an obstacle based on an autonomous vehicle, a storage medium, and a computer device, which can effectively reduce the consumption of computing resources, have a short generation time of the directed bounding box, and can relatively accurately determine the enclosed space of the obstacle.

[0005] According to one aspect of the present application, there is provided a method for generating a directed bounding box of an obstacle based on an autonomous vehicle, including:

[0006] Obtaining obstacle point cloud data collected by an on-vehicle lidar in the autonomous vehicle, where the obstacle point cloud is used to indicate the area of the obstacle facing the on-vehicle lidar, and the obstacle point cloud includes a plurality of target points;

[0007] Based on the obstacle point cloud data, determining a target convex hull point cloud corresponding to the obstacle, where the target convex hull formed by the target convex hull point cloud encloses the obstacle point cloud, and the target convex hull point cloud includes a plurality of convex hull points;

[0008] Generating the directed bounding box of the obstacle of the autonomous vehicle according to the convex hull points in the target convex hull point cloud.

[0009] According to another aspect of the present application, there is provided a device for generating a directed bounding box of an obstacle based on an autonomous vehicle, including:

[0010] A data acquisition module, configured to acquire obstacle point cloud data collected by an on-vehicle lidar in the driverless vehicle, wherein the obstacle point cloud is used to indicate the area of the obstacle facing the on-vehicle lidar, and the obstacle point cloud includes a plurality of target points;

[0011] A convex hull determination module, configured to determine a target convex hull point cloud corresponding to the obstacle based on the obstacle point cloud data, wherein a target convex hull formed by the target convex hull point cloud encloses the obstacle point cloud, and the target convex hull point cloud includes a plurality of convex hull points;

[0012] An oriented bounding box generation module, configured to generate an oriented bounding box of the obstacle of the driverless vehicle according to the convex hull points in the target convex hull point cloud.

[0013] According to another aspect of the present application, there is provided a storage medium, on which a computer program is stored, and when the program is executed by a processor, the above method for generating an oriented bounding box of an obstacle based on a driverless vehicle is implemented.

[0014] According to still another aspect of the present application, there is provided a computer device, including a storage medium, a processor, and a computer program stored on the storage medium and executable on the processor, and when the processor executes the program, the above method for generating an oriented bounding box of an obstacle based on a driverless vehicle is implemented.

[0015] By means of the above technical solutions, a method and device, a storage medium, and a computer device for generating an oriented bounding box of an obstacle based on a driverless vehicle provided by the present application can collect obstacle point cloud data through an on-vehicle lidar in the driverless vehicle, and the obstacle point cloud may include a plurality of target points. After the on-vehicle lidar collects the obstacle point cloud data, these obstacle point cloud data can be obtained, and based on these obstacle point cloud data, a target convex hull point cloud corresponding to the obstacle can be determined. Each target convex hull point cloud may include a plurality of convex hull points, and each convex hull point is actually a target point in the obstacle point cloud. Based on the convex hull points in the target convex hull point cloud, an oriented bounding box of the obstacle of the driverless vehicle is determined through these convex hull points. By determining the oriented bounding box of the obstacle of the driverless vehicle through the convex hull points in the target convex hull point cloud, the present application embodiment can effectively reduce the occupation of computing resources when determining the oriented bounding box, improve the determination efficiency of the oriented bounding box, and at the same time can more accurately determine the occupied space of the obstacle.

[0016] The above description is only an overview of the technical solutions of the present application. In order to be able to understand the technical means of the present application more clearly, it can be implemented according to the content of the specification. And in order to make the above and other purposes, features and advantages of the present application more obvious and understandable, the specific embodiments of the present application are hereinafter specifically described. Description of the Drawings

[0017] The accompanying drawings described herein are used to provide a further understanding of the present application and form a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application and do not constitute an improper limitation of the present application. In the drawings:

[0018] Figure 1 A schematic flowchart of a method for generating an oriented bounding box of an obstacle based on an autonomous vehicle provided by an embodiment of the present application is shown;

[0019] Figure 2 A schematic flowchart of another method for generating an oriented bounding box of an obstacle based on an autonomous vehicle provided by an embodiment of the present application is shown;

[0020] Figure 3 A schematic structural diagram of another device for generating an oriented bounding box of an obstacle based on an autonomous vehicle provided by an embodiment of the present application is shown. Detailed implementation manners

[0021] The present application will be described in detail below with reference to the accompanying drawings and in combination with embodiments. It should be noted that, without conflict, the embodiments in the present application and the features in the embodiments may be combined with each other.

[0022] In this embodiment, a method for generating an oriented bounding box of an obstacle based on an autonomous vehicle is provided. As Figure 1 shown, the method includes:

[0023] Step 101, obtaining obstacle point cloud data collected by an on-vehicle lidar in the autonomous vehicle, where the obstacle point cloud is used to indicate the area of the obstacle facing the on-vehicle lidar, and the obstacle point cloud includes a plurality of target points;

[0024] The method for generating an oriented bounding box of an obstacle based on an autonomous vehicle provided by an embodiment of the present application can be applied to the scenario of determining an oriented bounding box of an obstacle in an autonomous vehicle, and specifically can be applied to the scenario of determining an oriented bounding box of an obstacle in an autonomous mining vehicle in a mining area. First, obstacle point cloud data can be collected by an on-vehicle lidar in the autonomous vehicle. Specifically, the on-vehicle lidar can use lasers to scan the surrounding environment of the autonomous vehicle and generate point cloud data, and the collected data can be point cloud data for each frame. Here, the obstacle can be an obstacle within a preset range during the driving of the autonomous vehicle, and the obstacle point cloud can include a plurality of target points. The area of the obstacle facing the on-vehicle lidar can be roughly determined from the obstacle point cloud. After the on-vehicle lidar collects the obstacle point cloud data, these obstacle point cloud data can be obtained.

[0025] Step 102: Based on the obstacle point cloud data, determine the target convex hull point cloud corresponding to the obstacle, where the target convex hull formed by the target convex hull point cloud encloses the obstacle point cloud, and the target convex hull point cloud includes a plurality of convex hull points.

[0026] In this embodiment, after obtaining the obstacle point cloud data, the target convex hull point cloud corresponding to the obstacle can be determined according to the obstacle point cloud data. The target convex hull refers to a convex surrounding polyline formed by target points in the obstacle point cloud that encloses the obstacle point cloud. Each target convex hull point cloud may include a plurality of convex hull points, and each convex hull point is actually a target point in the obstacle point cloud.

[0027] Step 103: Generate the oriented bounding box of the obstacle for the driverless vehicle based on the convex hull points in the target convex hull point cloud.

[0028] In this embodiment, based on the convex hull points in the target convex hull point cloud, the oriented bounding box of the obstacle for the driverless vehicle is determined through these convex hull points. For example, if there are 100 target points in the obstacle point cloud and 10 of them form the target convex hull point cloud, then the oriented bounding box of the obstacle for the driverless vehicle is determined according to these 10 target points.

[0029] In the embodiment of the present application, optionally, before step 102, the method further includes: determining the relationship between the number of target points in the obstacle point cloud and a preset threshold, and when the number of target points is less than the preset threshold, deleting the obstacle point cloud.

[0030] In this embodiment, before determining the target convex hull point cloud corresponding to the obstacle, the size relationship between the number of target points in the obstacle point cloud and the preset threshold can be determined first. The preset threshold can be set according to the experience of relevant staff. If the number of target points in the obstacle point cloud is less than the preset threshold, it means that the obstacle point cloud may be dust, or the object is too small to affect the safe driving of the driverless vehicle, or it may be a false detection of the vehicle-mounted lidar. Therefore, this part of the obstacle point cloud can be deleted and no subsequent determination of the oriented bounding box is performed. In the embodiment of the present application, before determining the target convex hull point cloud and the oriented bounding box of the obstacle, first determining whether the number of target points in the obstacle point cloud meets the preset threshold and directly deleting the obstacle point cloud when it does not meet the threshold can effectively reduce the amount of invalid calculations and improve the determination efficiency of the effective oriented bounding box during the driving of the driverless vehicle.

[0031] By applying the technical solution of this embodiment, the on-vehicle lidar in the driverless vehicle can be used to collect obstacle point cloud data, and the obstacle point cloud can include multiple target points. After the on-vehicle lidar collects the obstacle point cloud data, the obstacle point cloud data can be obtained, and based on the obstacle point cloud data, the target convex hull point cloud corresponding to the obstacle can be determined. Each target convex hull point cloud can include multiple convex hull points, and each convex hull point is actually a target point in the obstacle point cloud. Based on the convex hull points in the target convex hull point cloud, the oriented bounding box of the obstacle of the driverless vehicle is determined through these convex hull points. By determining the oriented bounding box of the obstacle of the driverless vehicle through the convex hull points in the target convex hull point cloud, the present application embodiment can effectively reduce the occupation of computing resources when determining the oriented bounding box, improve the determination efficiency of the oriented bounding box, and at the same time can more accurately determine the occupied space of the obstacle.

[0032] Further, as a refinement and extension of the specific implementation manner of the above embodiment, in order to fully illustrate the specific implementation process of this embodiment, another method for generating the oriented bounding box of the obstacle based on the driverless vehicle is provided, as Figure 2 shown, the method includes:

[0033] Step 201, obtain the obstacle point cloud data collected by the on-vehicle lidar in the driverless vehicle, where the obstacle point cloud is used to indicate the area of the obstacle facing the on-vehicle lidar, and the obstacle point cloud includes multiple target points;

[0034] In this embodiment, first, the obstacle point cloud data can be collected by the on-vehicle lidar in the driverless vehicle. Specifically, the on-vehicle lidar can use the laser to scan the surrounding environment of the driverless vehicle and generate point cloud data, and the collected data can be each frame of point cloud data. Here, the obstacle can be an obstacle within a preset range during the driving of the driverless vehicle, and the obstacle point cloud can include multiple target points. The area of the obstacle facing the on-vehicle lidar can be roughly determined from the obstacle point cloud. After the on-vehicle lidar collects the obstacle point cloud data, the obstacle point cloud data can be obtained.

[0035] Step 202, based on the obstacle point cloud data, number the target points in the obstacle point cloud in sequence to obtain the numbered obstacle point cloud;

[0036] In this embodiment, after obtaining the obstacle point cloud data, each target point included in the obstacle point cloud can be numbered, and then the numbered obstacle point cloud can be obtained. For example, if the obstacle point cloud includes 100 target points, then these 100 target points can be numbered in sequence respectively. Specifically, the numbers can be set as D 001 ~D 100, so that the obstacle point cloud can be denoted as [D 001 , D 002 , ……, D 099 , D 100 . In addition, the obstacle point cloud data may include the proximity relationships between the respective target points. Therefore, based on the obstacle point cloud data, the respective target points can be numbered according to the positional relationships between the respective target points shown in the obstacle point cloud data, such that the numbers between the target points with similar positions are similar.

[0037] Step 203: Based on the numbered obstacle point cloud, determine an initial convex hull point cloud, where the initial convex hull point cloud includes a preset number of adjacent target points;

[0038] In this embodiment, it is possible to use the numbered obstacle point cloud as a basis. Specifically, a preset number of adjacent target points can be selected from the obstacle point cloud as the initial convex hull point cloud. For example, the obstacle point cloud is [D 001 , D 002 , ……, D 099 , D 100 , and the obstacle point cloud includes 100 target points. Assuming that the preset number is 3, then [D 001 , D 002 , D 003 can be used as the initial convex hull point cloud.

[0039] Step 204: Based on the initial convex hull point cloud and the remaining point cloud, determine the target convex hull point cloud corresponding to the obstacle, where the remaining point cloud includes the target points in the obstacle point cloud other than the preset number of adjacent target points;

[0040] In this embodiment, further, the target points in the obstacle point cloud other than the convex hull points in the initial convex hull point cloud can be used as the remaining point cloud. For example, the obstacle point cloud is [D 001 , D 002 , ……, D 099 , D 100 , [D 001 , D 002 , D 003 is the initial convex hull point cloud, then [D 004 , D 005 , ……, D 099 , D 100 is used as the remaining point cloud. Then, based on the initial convex hull point cloud and the remaining point cloud, the target convex hull point cloud corresponding to the obstacle in the unmanned vehicle scenario can be determined, that is, the target points in the multi-segment line that can enclose all the target points and whose connected shape is convex are found to form the target convex hull.

[0041] Step 205: Determine the target coordinate axis and the target origin based on the driverless vehicle, and determine each target angle on the target coordinate axis based on the target origin and a preset angle change value, where each of the target angles is less than a preset angle range.

[0042] In this embodiment, based on the driverless vehicle, the corresponding target coordinate axis and the target origin of the driverless vehicle can be determined. Specifically, the right side of the driverless vehicle can be used as the x-axis, and the head position can be used as the target origin on the x-axis. Then, according to the target origin and the preset angle change value, each target angle can be determined on the target coordinate axis. For example, the preset angle change value can be 10°, and the preset angle range can be 0° to 90°. Then the target angles can be 0°, 10°, 20°, 30°, 40°, 50°, 60°, 70°, 80°, 90°. Each target angle can be reflected on the target coordinate axis through the target origin.

[0043] Step 206: Generate an initial oriented bounding box corresponding to each target angle based on each target angle and the convex hull points in the target convex hull point cloud, and determine the oriented bounding box of the obstacle of the driverless vehicle based on the initial oriented bounding box.

[0044] In this embodiment, after each target angle is determined on the target coordinate axis, based on each target angle on the target coordinate axis and the convex hull points in the target convex hull point cloud, for each target angle, a corresponding initial oriented bounding box can be determined. For example, if there are 10 target angles, then there are also 10 corresponding initial oriented bounding boxes. These 10 initial oriented bounding boxes are all the oriented bounding boxes of the same obstacle. Then, the oriented bounding box of the obstacle of the driverless vehicle, that is, the final oriented bounding box, can be determined from the initial oriented bounding boxes of the same obstacle. The driverless vehicle finally avoids obstacles according to the oriented bounding box of the obstacle to ensure the safety of autonomous driving.

[0045] In an embodiment of the present application, optionally, the "generating an initial oriented bounding box corresponding to each target angle based on each target angle and the convex hull points in the target convex hull point cloud" in step 206 specifically includes: determining the slope of each bounding edge in the initial oriented bounding box according to any one of the target angles, where the initial oriented bounding box is a rectangular bounding box; generating the initial oriented bounding box corresponding to any one of the target angles based on the slope of each bounding edge in the initial oriented bounding box and four convex hull points in the target convex hull point cloud that satisfy the slope.

[0046] In this embodiment, the initial oriented bounding box may specifically be a rectangular bounding box. After determining each target angle on the target coordinate axis, the slope of each bounding edge in the corresponding initial oriented bounding box can be determined according to each target angle. For example, if a target angle of 30° is determined on the target coordinate axis based on the target origin, the slopes of the four bounding edges of the rectangular bounding box are then fixed. After determining the slopes of the four bounding edges of the rectangular bounding box, four convex hull points that satisfy the slopes are determined from the convex hull points of the target convex hull point cloud, and the initial oriented bounding box corresponding to the target angle can be quickly determined.

[0047] In an embodiment of the present application, optionally, the step 206 of "determining the obstacle oriented bounding box of the driverless vehicle based on the initial oriented bounding box" specifically includes: based on any one of the initial oriented bounding boxes, determining the bounding edge in the obstacle point cloud that is closest to each target point, and determining the vertical distance between each target point and the closest bounding edge; calculating the sum value of the vertical distances corresponding to each target point, and using the sum value as the target distance of any one of the initial oriented bounding boxes; using the initial oriented bounding box with the smallest target distance as the obstacle oriented bounding box of the driverless vehicle.

[0048] In this embodiment, after determining the initial oriented bounding boxes corresponding to each target angle, the obstacle oriented bounding box of the driverless vehicle can be further determined from multiple initial oriented bounding boxes. First, the bounding edge in the obstacle point cloud that is closest to each target point in each initial oriented bounding box can be determined. For example, if the initial oriented bounding box is a rectangular bounding box, and the rectangular bounding box includes four bounding edges, the bounding edge closest to each target point can be found from these four bounding edges. Then, the vertical distance between each target point and the corresponding closest bounding edge is determined, and the vertical distances corresponding to all the target points in the obstacle point cloud are added together to obtain the sum value of the vertical distances corresponding to all the target points. Further, this sum value can be used as the target distance of the initial oriented bounding box. After that, the initial oriented bounding box with the smallest target distance is determined from the target distances corresponding to each initial oriented bounding box, and this initial oriented bounding box is used as the obstacle oriented bounding box of the driverless vehicle.

[0049] In an embodiment of the present application, optionally, step 204 specifically includes:

[0050] Step 204-1, storing the initial convex hull point cloud into a preset double-ended queue, where the preset double-ended queue includes a queue head and a queue tail;

[0051] In this embodiment, after determining the initial convex hull point cloud, the initial convex hull point cloud can be stored in a preset deque. The preset deque can include a queue head and a queue tail. Among them, the queue head can be set with a top tag, and the queue tail can be set with a bot tag. In the preset deque, both the queue head and the queue tail can add or delete target points.

[0052] Step 204-2: Determine the target number of the target point at the queue tail, and use the next target point corresponding to the target number in the remaining point cloud as the target point to be judged;

[0053] In this embodiment, after storing the initial convex hull point cloud in the preset deque, since each target point corresponds to its own number, the target number of the target point at the queue tail in the preset deque can be determined. Here, the target point at the queue tail is the last target point in the preset deque, and the target point at the queue head is the first target point in the preset deque. Then, find the next target point of the target number from the remaining point cloud as the target point to be judged. For example, the initial convex hull point cloud is [D 001 , D 002 , D 003 , the target number of the target point at the queue tail is D 003 , the remaining point cloud is [D 004 , D 005 , ……, D 099 , D 100 , then determine the next target point of D 003 from the remaining point cloud, that is, D 004 , and use D 004 as the target point to be judged. In addition, when the target number of the target point at the queue tail is the target point with the last number in the obstacle point cloud, the target point corresponding to the first number in the obstacle point cloud can be used as the target point to be judged. For example, the initial convex hull point cloud is [D 098 , D 099 , D 100 , the target number of the target point at the queue tail is D 100 , the remaining point cloud is [D 001 , D 002 , ……, D 096 , D 097 , then determine the next target point of D 100 from the remaining point cloud, that is, D 001 , and use D 001 as the target point to be judged.

[0054] Step 204-3: Connect two adjacent target points at the head of the queue to determine the first connection line, and connect two adjacent target points at the tail of the queue to determine the second connection line;

[0055] In this embodiment, further, in the preset double-ended queue, two adjacent target points at the head of the queue can be connected together, that is, the first target point and the second target point are connected together, so as to determine the first connection line. In addition, two adjacent target points at the tail of the queue can also be connected together, that is, the last target point and the second last target point are connected together, so as to determine the second connection line. For example, the initial convex hull point cloud stored in the preset double-ended queue is [D 001 , D 002 , D 003 , where the two adjacent target points at the head of the queue are D 001 and D 002 , then the first connection line is the connection line passing through the two target points D 001 , D 002 . The two adjacent target points at the tail of the queue are D 003 , D 002 , then the second connection line is the connection line passing through the two target points D 002 , D 003 .

[0056] Step 204-4: Judge the positional relationship between the target point to be judged and the first connection line. When the target point to be judged is on the right side of the first connection line, delete the target point at the head of the queue, and update the first connection line based on the two new adjacent target points at the head of the queue. Then judge the positional relationship between the target point to be judged and the updated first connection line again until the target point to be judged is on the left side of the first connection line, and store the target point to be judged at the head of the queue;

[0057] In this embodiment, after determining the first connection line and the second connection line, the positional relationship between the target point to be judged and the first connection line can be further judged. If the target point to be judged is on the right side of the first connection line, it means that the first target point in the preset double-ended queue fails, that is, the first convex hull point in the initial convex hull point cloud fails. Therefore, this first convex hull point can be deleted from the preset double-ended queue, that is, this convex hull point is removed from the head of the queue. After deleting the convex hull point at the head of the queue, a new target point appears at the head of the preset double-ended queue. For example, the initial convex hull point cloud stored in the preset double-ended queue is [D 001 , D 002 , D 003 , the target point at the head of the queue is D 001 . After deleting D 001 , the target point at the head of the queue will become D002 Next, based on the two new adjacent target points at the head of the queue, a new first connection line is determined, and the positional relationship between the to-be-judged target point and the new first connection line is determined again. If the to-be-judged target point is still on the right side of the new first connection line, the target point at the head of the queue is deleted again, and a new first connection line is determined... until the to-be-judged target point is on the left side of the first connection line. At this time, the to-be-judged target point can be stored at the head of the preset double-ended queue, and the convex hull points in the initial convex hull point cloud are updated.

[0058] Step 204-5: Judge the positional relationship between the to-be-judged target point and the second connection line. When the to-be-judged target point is on the right side of the second connection line, delete the target point at the tail of the queue, update the second connection line based on the two new adjacent target points at the tail of the queue, and judge the positional relationship between the to-be-judged target point and the updated second connection line again until the to-be-judged target point is on the left side of the second connection line, and store the to-be-judged target point at the tail of the queue.

[0059] In this embodiment, after the to-be-judged target point is on the left side of the first connection line and is stored at the head of the queue, the positional relationship between the to-be-judged target point and the second connection line can be judged next. Similarly, if the to-be-judged target point is on the right side of the second connection line, the target point at the tail of the queue is also deleted, and the second connection line is updated until the to-be-judged target point is on the left side of the second connection line. When the to-be-judged target point is on the left side of the second connection line, the to-be-judged target point can be stored at the tail of the preset double-ended queue, and the convex hull points in the initial convex hull point cloud are updated.

[0060] Step 204-6: When any target point in the remaining point cloud is used as the to-be-judged target point, and the positional relationships with the first connection line and the second connection line are judged, the target convex hull point cloud corresponding to the obstacle is obtained.

[0061] In this embodiment, after the to-be-judged target point is stored at the head and the tail of the preset double-ended queue respectively, the next numbered target point in the remaining point cloud can be used as the to-be-judged target point for judgment by the above method. For example, assume the initial convex hull point cloud is [D 001 , D 002 , D 003 , and the updated initial convex hull point cloud is [D 004 , D 002 , D 004 , then the next numbered target point is D 005 , that is, D 005As the target point to be judged. Until each target point in the remaining point cloud has been used as the target point to be judged at least once, the target convex hull point cloud corresponding to the obstacle can be obtained accordingly.

[0062] Further, as Figure 1 For the specific implementation of the method, an embodiment of the present application provides a device for generating an oriented bounding box of an obstacle based on an autonomous vehicle, as Figure 3 shown. The device includes:

[0063] A data acquisition module, configured to acquire the obstacle point cloud data collected by the on-vehicle lidar in the autonomous vehicle, where the obstacle point cloud is used to indicate the area of the obstacle facing the on-vehicle lidar, and the obstacle point cloud includes a plurality of target points;

[0064] A convex hull determination module, configured to determine the target convex hull point cloud corresponding to the obstacle based on the obstacle point cloud data, where the target convex hull formed by the target convex hull point cloud encloses the obstacle point cloud, and the target convex hull point cloud includes a plurality of convex hull points;

[0065] A bounding box generation module, configured to generate the oriented bounding box of the obstacle of the autonomous vehicle according to the convex hull points in the target convex hull point cloud.

[0066] Optionally, the bounding box generation module specifically includes:

[0067] A target angle determination unit, configured to determine each target angle on the target coordinate axis based on the target origin of the autonomous vehicle and a preset angle change value according to the determined target coordinate axis and target origin of the autonomous vehicle, where each of the target angles is less than a preset angle range;

[0068] A bounding box generation unit, configured to generate an initial oriented bounding box corresponding to each target angle according to each target angle and the convex hull points in the target convex hull point cloud, and determine the oriented bounding box of the obstacle of the autonomous vehicle based on the initial oriented bounding box.

[0069] Optionally, the bounding box generation unit is specifically configured to:

[0070] Determine the slope of each bounding edge in the initial oriented bounding box according to any one of the target angles, where the initial oriented bounding box is a rectangular bounding box; generate the initial oriented bounding box corresponding to any one of the target angles based on the slope of each bounding edge in the initial oriented bounding box and four of the convex hull points in the target convex hull point cloud that satisfy the slope.

[0071] Optionally, the bounding box generation unit is specifically further configured to:

[0072] Based on any one of the initial oriented bounding boxes, determine the bounding edge in the obstacle point cloud that is closest to each target point, and determine the perpendicular distance between each target point and the closest bounding edge; calculate the sum of the perpendicular distances corresponding to each target point, and use the sum as the target distance of any one of the initial oriented bounding boxes; use the initial oriented bounding box with the minimum target distance as the obstacle oriented bounding box of the driverless vehicle.

[0073] Optionally, the device further includes:

[0074] A judgment module, configured to, before determining the target convex hull point cloud corresponding to the obstacle based on the obstacle point cloud data, judge the relationship between the number of target points in the obstacle point cloud and a preset threshold, and when the number of target points is less than the preset threshold, delete the obstacle point cloud.

[0075] Optionally, the convex hull determination module specifically includes:

[0076] A numbering unit, configured to number the target points in the obstacle point cloud in sequence based on the obstacle point cloud data to obtain the numbered obstacle point cloud;

[0077] An initial convex hull point cloud determination unit, configured to determine an initial convex hull point cloud based on the numbered obstacle point cloud, where the initial convex hull point cloud includes a preset number of adjacent target points;

[0078] A target convex hull determination unit, configured to determine the target convex hull point cloud corresponding to the obstacle according to the initial convex hull point cloud and the remaining point cloud, where the remaining point cloud includes the target points in the obstacle point cloud except the preset number of adjacent target points.

[0079] Optionally, the target convex hull determination unit is specifically configured to:

[0080] Store the initial convex hull point cloud into a preset double-ended queue, where the preset double-ended queue includes a queue head and a queue tail; determine the target number of the target point at the queue tail, and use the next target point corresponding to the target number in the remaining point cloud as the target point to be judged; connect the two adjacent target points at the queue head to determine a first connection line, and connect the two adjacent target points at the queue tail to determine a second connection line; judge the positional relationship between the target point to be judged and the first connection line. When the target point to be judged is on the right side of the first connection line, delete the target point at the queue head, and update the first connection line based on the two new adjacent target points at the queue head, and judge the positional relationship between the target point to be judged and the updated first connection line again until the target point to be judged is on the left side of the first connection line, and store the target point to be judged into the queue head; judge the positional relationship between the target point to be judged and the second connection line. When the target point to be judged is on the right side of the second connection line, delete the target point at the queue tail, and update the second connection line based on the two new adjacent target points at the queue tail, and judge the positional relationship between the target point to be judged and the updated second connection line again until the target point to be judged is on the left side of the second connection line, and store the target point to be judged into the queue tail; when any target point in the remaining point cloud is used as the target point to be judged, and the positional relationships with the first connection line and the second connection line are judged, the target convex hull point cloud corresponding to the obstacle is obtained.

[0081] It should be noted that for other corresponding descriptions of each functional unit involved in a directed bounding box generation device provided in an embodiment of the present application, reference can be made to Figures 1 to 2 the corresponding description in the method, which will not be elaborated here.

[0082] Based on the above as Figures 1 to 2 shown in the method, correspondingly, an embodiment of the present application also provides a storage medium, on which a computer program is stored, and when the computer program is executed by a processor, it implements the above as Figures 1 to 2 shown in the directed bounding box generation method.

[0083] Based on such an understanding, the technical solution of the present application can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.), including several instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in various implementation scenarios of the present application.

[0084] Based on the above as Figures 1 to 2 shown in the method, and Figure 3The virtual device embodiment shown. To achieve the above object, an embodiment of the present application further provides a computer device, which may specifically be a personal computer, a server, a network device, etc. The computer device includes a storage medium and a processor; the storage medium is used to store a computer program; the processor is used to execute the computer program to implement the above-mentioned Figures 1 to 2 method for generating a directed bounding box as shown.

[0085] Optionally, the computer device may further include a user interface, a network interface, a camera, a radio frequency (RF) circuit, sensors, an audio circuit, a WI-FI module, and so on. The user interface may include a display screen (Display), an input unit such as a keyboard (Keyboard), etc. Optionally, the user interface may further include a USB interface, a card reader interface, etc. The network interface may optionally include a standard wired interface, a wireless interface (such as a Bluetooth interface, a WI-FI interface), etc.

[0086] Those skilled in the art can understand that the structure of a computer device provided in this embodiment does not limit the computer device, and it may include more or fewer components, or combine some components, or have different component arrangements.

[0087] The storage medium may further include an operating system and a network communication module. The operating system is a program for managing and saving the hardware and software resources of the computer device, and supports the operation of information processing programs and other software and / or programs. The network communication module is used to implement communication between components inside the storage medium, and communication between other hardware and software in the entity device.

[0088] Through the description of the above embodiments, those skilled in the art can clearly understand that the present application can be implemented by means of software plus a necessary general hardware platform, or by hardware. The obstacle point cloud data can be collected by the on-vehicle lidar in an unmanned vehicle, and the obstacle point cloud may include multiple target points. After the on-vehicle lidar collects the obstacle point cloud data, these obstacle point cloud data can be obtained, and based on these obstacle point cloud data, the target convex hull point cloud corresponding to the obstacle can be determined. Each target convex hull point cloud may include multiple convex hull points, and each convex hull point is actually a target point in the obstacle point cloud. Based on the convex hull points in the target convex hull point cloud, the directed bounding box of the obstacle of the unmanned vehicle is determined through these convex hull points. By determining the directed bounding box of the obstacle of the unmanned vehicle through the convex hull points in the target convex hull point cloud, the present application embodiment can effectively reduce the consumption of computing resources when determining the directed bounding box, improve the determination efficiency of the directed bounding box, and at the same time can more accurately determine the occupied space of the obstacle.

[0089] Those skilled in the art can understand that the accompanying drawings are only schematic diagrams of a preferred implementation scenario, and the modules or processes in the drawings are not necessarily essential for implementing the present application. Those skilled in the art can understand that the modules in the devices in the implementation scenario can be distributed in the devices in the implementation scenario according to the description of the implementation scenario, or can be correspondingly changed and located in one or more devices different from this implementation scenario. The modules in the above implementation scenario can be combined into one module, or can be further split into multiple sub-modules.

[0090] The above serial numbers of the present application are only for description and do not represent the advantages or disadvantages of the implementation scenario. The above-disclosed are only several specific implementation scenarios of the present application. However, the present application is not limited thereto, and any changes that can be conceived by those skilled in the art should fall within the protection scope of the present application.

Claims

1. A method for generating an oriented bounding box of obstacles based on a driverless vehicle, characterized in that, Including: Obtaining obstacle point cloud data collected by an on-vehicle lidar in the driverless vehicle, where the obstacle point cloud is used to indicate the area of the obstacle facing the on-vehicle lidar, and the obstacle point cloud includes a plurality of target points; Based on the obstacle point cloud data, determining a target convex hull point cloud corresponding to the obstacle, where a target convex hull formed by the target convex hull point cloud encloses the obstacle point cloud, and the target convex hull point cloud includes a plurality of convex hull points; Generating an oriented bounding box of the obstacle of the driverless vehicle according to the convex hull points in the target convex hull point cloud; The determining the target convex hull point cloud corresponding to the obstacle based on the obstacle point cloud data specifically includes: Based on the obstacle point cloud data, sequentially numbering the target points in the obstacle point cloud to obtain the numbered obstacle point cloud; Based on the numbered obstacle point cloud, determining an initial convex hull point cloud, where the initial convex hull point cloud includes a preset number of adjacent target points; Storing the initial convex hull point cloud into a preset double-ended queue, where the preset double-ended queue includes a queue head and a queue tail; Determining a target number of the target point at the queue tail, and using the next target point corresponding to the target number in the remaining point cloud as a to-be-judged target point, where the remaining point cloud includes the target points in the obstacle point cloud except the preset number of adjacent target points; Connecting two adjacent target points at the queue head to determine a first connection line, and connecting two adjacent target points at the queue tail to determine a second connection line; Judging the positional relationship between the to-be-judged target point and the first connection line. When the to-be-judged target point is on the right side of the first connection line, deleting the target point at the queue head, updating the first connection line based on the new two adjacent target points at the queue head, and judging the positional relationship between the to-be-judged target point and the updated first connection line again until the to-be-judged target point is on the left side of the first connection line, and storing the to-be-judged target point into the queue head; Judging the positional relationship between the to-be-judged target point and the second connection line. When the to-be-judged target point is on the right side of the second connection line, deleting the target point at the queue tail, updating the second connection line based on the new two adjacent target points at the queue tail, and judging the positional relationship between the to-be-judged target point and the updated second connection line again until the to-be-judged target point is on the left side of the second connection line, and storing the to-be-judged target point into the queue tail; When any target point in the remaining point cloud is used as the to-be-judged target point, and after judging the positional relationships with the first connection line and the second connection line, the target convex hull point cloud corresponding to the obstacle is obtained.

2. The method according to claim 1, characterized in that, The generating the oriented bounding box of the obstacle of the driverless vehicle according to the convex hull points in the target convex hull point cloud specifically includes: Determine a target coordinate axis and a target origin according to the driverless vehicle, and determine each target angle on the target coordinate axis based on the target origin and a preset angle change value, where each of the target angles is less than a preset angle range; Generate an initial oriented bounding box corresponding to each target angle according to each target angle and the convex hull points in the target convex hull point cloud, and determine the oriented bounding box of the obstacle of the driverless vehicle based on the initial oriented bounding box.

3. The method according to claim 2, wherein The generating an initial oriented bounding box corresponding to each target angle according to each target angle and the convex hull points in the target convex hull point cloud specifically includes: Determine the slope of each bounding edge in the initial oriented bounding box according to any one of the target angles, where the initial oriented bounding box is a rectangular bounding box; Generate the initial oriented bounding box corresponding to any one of the target angles based on the slope of each bounding edge in the initial oriented bounding box and four convex hull points in the target convex hull point cloud that satisfy the slope.

4. The method according to claim 2, characterized in that, The determining the oriented bounding box of the obstacle of the driverless vehicle based on the initial oriented bounding box specifically includes: Based on any one of the initial oriented bounding boxes, determine the bounding edge closest to each target point in the obstacle point cloud, and determine the vertical distance between each target point and the closest bounding edge; Calculate the sum value of the vertical distances corresponding to each target point, and use the sum value as the target distance of any one of the initial oriented bounding boxes; Use the initial oriented bounding box with the smallest target distance as the oriented bounding box of the obstacle of the driverless vehicle.

5. The method according to any one of claims 1 to 4, characterized in that, Before determining the target convex hull point cloud corresponding to the obstacle based on the obstacle point cloud data, the method further includes: Judge the relationship between the number of target points in the obstacle point cloud and a preset threshold, and when the number of target points is less than the preset threshold, delete the obstacle point cloud.

6. A generating device for an oriented bounding box of an obstacle based on an autonomous vehicle, characterized in that, including: A data acquisition module, configured to acquire obstacle point cloud data collected by a vehicle-mounted lidar in the driverless vehicle, where the obstacle point cloud is used to indicate the area of the obstacle facing the vehicle-mounted lidar, and the obstacle point cloud includes a plurality of target points; A convex hull determination module, configured to determine a target convex hull point cloud corresponding to the obstacle based on the obstacle point cloud data, where a target convex hull formed by the target convex hull point cloud surrounds the obstacle point cloud, and the target convex hull point cloud includes a plurality of convex hull points; An oriented bounding box generation module, configured to generate an oriented bounding box of the obstacle of the driverless vehicle according to the convex hull points in the target convex hull point cloud; Optionally, the convex hull determination module specifically includes: A numbering unit, configured to number the target points in the obstacle point cloud in sequence based on the obstacle point cloud data to obtain a numbered obstacle point cloud; An initial convex hull point cloud determination unit, configured to determine an initial convex hull point cloud based on the numbered obstacle point cloud, where the initial convex hull point cloud includes a preset number of adjacent target points; A target convex hull determination unit is configured to store the initial convex hull point cloud into a preset double-ended queue, where the preset double-ended queue includes a queue head end and a queue tail end; determine a target number of the target point at the queue tail end, and use the next target point corresponding to the target number in the remaining point cloud as a target point to be judged, where the remaining point cloud includes the target points in the obstacle point cloud except for the preset number of adjacent target points; connect two adjacent target points at the queue head end to determine a first connection line, and connect two adjacent target points at the queue tail end to determine a second connection line; judge the positional relationship between the target point to be judged and the first connection line. When the target point to be judged is located on the right side of the first connection line, delete the target point at the queue head end, update the first connection line based on the two new adjacent target points at the queue head end, and judge the positional relationship between the target point to be judged and the updated first connection line again until the target point to be judged is located on the left side of the first connection line, and store the target point to be judged into the queue head end; judge the positional relationship between the target point to be judged and the second connection line. When the target point to be judged is located on the right side of the second connection line, delete the target point at the queue tail end, update the second connection line based on the two new adjacent target points at the queue tail end, and judge the positional relationship between the target point to be judged and the updated second connection line again until the target point to be judged is located on the left side of the second connection line, and store the target point to be judged into the queue tail end; when any target point in the remaining point cloud is used as the target point to be judged and the positional relationships with the first connection line and the second connection line are judged, the target convex hull point cloud corresponding to the obstacle is obtained.

7. A storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, the method according to any one of claims 1 to 5 is implemented.

8. A computer device, comprising a storage medium, a processor, and a computer program stored on the storage medium and executable on the processor, characterized in that, When the processor executes the computer program, the method according to any one of claims 1 to 5 is implemented.

Citation Information

Patent Citations

  • Vehicle bounding box generation method, device and storage medium in unmanned scene

    CN109509236A

  • Target bounding box adjustment method and device, equipment and storage medium

    CN111507341A