Apparatus for controlling vehicle and method thereof

By converting bounding boxes into polygons through the LiDAR sensor and identifying overlapping situations, the accuracy problem of external object occlusion recognition is solved, and the safety and efficiency of the autonomous driving system are improved.

CN120663941APending Publication Date: 2025-09-19HYUNDAI MOTOR CO LTD +1
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202411606772.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2024-03-18
Filing Date
2024-11-12
Publication Date
2025-09-19

AI Technical Summary

Technical Problem

Existing technologies have difficulty accurately identifying the driving direction or type of external objects, especially in the case of occlusion, which limits the accuracy and safety of autonomous driving systems.

Method used

By using the LiDAR sensor to obtain multiple bounding boxes, converting them into polygons, and determining the polygon overlap in a second coordinate system, a signal is generated to control the vehicle's autonomous driving.

Benefits of technology

The accuracy and speed of identifying external object occlusions are improved, supporting the effective operation of the vehicle in autonomous driving mode.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120663941A_ABST
    Figure CN120663941A_ABST
Patent Text Reader

Abstract

A method for controlling automatic driving of a vehicle is provided. The method may include obtaining at least two polygons represented in a second coordinate system, where the at least two polygons correspond to at least two bounding boxes of the plurality of bounding boxes represented in the first coordinate system, and where each of the plurality of bounding boxes is associated with a respective one of the plurality of external objects, determining whether the at least two polygons overlap each other based on a plurality of vertices forming the at least two polygons, outputting at least one of the at least two bounding boxes based on a ratio at which the at least two polygons overlap each other, and determining whether the at least two polygons overlap each other based on the at least one of the output at least two bounding boxes. A signal indicating that the at least two polygons overlap each other is generated.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This application claims the benefit of priority from Korean Patent Application No. 10-2024-0037286 filed on March 18, 2024, in the Korean Intellectual Property Office, the entire contents of which are incorporated herein by reference. Technical Field

[0003] The present disclosure relates to a vehicle control apparatus and method thereof, and more particularly, to a technology for recognizing an external object by using Light Detection and Ranging (LiDAR). Background Art

[0004] The matters described in this background technology section are only for enhancing understanding of the background technology of the present disclosure and should not be regarded as an admission that they correspond to prior art known to those skilled in the art. Various studies are being conducted to assist in driving a host vehicle by recognizing external objects using various sensors.

[0005] In particular, when driving in a driving assistance device activation mode or an autonomous driving mode, the host vehicle may recognize external objects by using LiDAR.

[0006] LiDAR is required to accurately identify the driving direction or type of external objects. In addition, in order to accurately identify the direction of travel of external objects, various studies are required to accurately determine whether the bounding box corresponding to the external object is blocked. Summary of the Invention

[0007] According to the present disclosure, a device for controlling autonomous driving of a vehicle includes: a sensor configured to obtain multiple bounding boxes represented in a first coordinate system, wherein each of the multiple bounding boxes is associated with a corresponding one of a plurality of external objects; and a processor configured to obtain at least two polygons represented in a second coordinate system, wherein the at least two polygons correspond to at least two bounding boxes in the multiple bounding boxes represented in the first coordinate system, determine whether the at least two polygons overlap with each other based on multiple vertices forming the at least two polygons, output at least one of the at least two bounding boxes based on a ratio at which the at least two polygons overlap with each other, generate a signal indicating that the at least two polygons overlap with each other based on at least one of the outputted at least two bounding boxes, and operate the vehicle for autonomous driving based on the signal.

[0008] In the device of the present disclosure, the processor is configured to: obtain a first polygon and a second polygon expressed in the second coordinate system, wherein the first polygon and the second polygon respectively correspond to a first bounding box and a second bounding box in a plurality of bounding boxes expressed in the first coordinate system.

[0009] In the apparatus of the present disclosure, the processor is configured to determine whether the first polygon overlaps with the second polygon based on a plurality of first vertices forming the first polygon and a plurality of second vertices forming the second polygon.

[0010] In the apparatus of the present disclosure, the processor is configured to output at least one of the first bounding box or the second bounding box by assigning a ratio at which the first polygon overlaps the second polygon to at least one of the first bounding box or the second bounding box.

[0011] In the device of the present disclosure, the processor is configured to: represent the first bounding box and the second bounding box in a second coordinate system, obtain a first polygon by performing a cross product on first two adjacent line segments, wherein the first two adjacent line segments are from first line segments sequentially connecting a plurality of first vertices, and wherein the plurality of first vertices form the first polygon in a first specified direction starting from a first center point of the first bounding box, and obtain a second polygon by performing a cross product on second two adjacent line segments, wherein the second two adjacent line segments are from second line segments sequentially connecting a plurality of second vertices, and wherein the plurality of second vertices form the second polygon in the first specified direction starting from a second center point of the second bounding box.

[0012] In the device of the present disclosure, the second coordinate system includes: a distance value indicating a distance between the sensor and each of a plurality of external objects, a first angle value indicating a horizontal angle between the sensor and each of the plurality of external objects, and a second angle value indicating a vertical angle between the sensor and each of the plurality of external objects, and the processor is further configured to: generate a first figure from a first polygon formed by a plurality of first vertices based on a maximum value of the first angle value, a minimum value of the first angle value, a maximum value of the second angle value, and a minimum value of the second angle value, generate a second figure from a second polygon formed by a plurality of second vertices based on the maximum value of the first angle value, the minimum value of the first angle value, the maximum value of the second angle value, and the minimum value of the second angle value, and determine whether the first polygon overlaps with the second polygon based on determining whether the first figure overlaps with the second figure.

[0013] In the device of the present disclosure, the processor is configured to: determine at least one of a plurality of third vertices or a plurality of fourth vertices in the overlapping area based on the first figure overlapping with the second figure in the overlapping area, wherein the plurality of third vertices form the first figure and the plurality of third vertices form the second figure, identify a reference vertex, wherein the reference vertex is included in at least one of the plurality of first vertices or the plurality of second vertices, and wherein the reference vertex is closest to at least one of the plurality of third vertices or the plurality of fourth vertices in the overlapping area, and determine whether the first polygon overlaps with the second polygon based on the number of intersections of a half-straight line in a second specified direction starting from the reference vertex and overlapping at least one of the first polygon or the second polygon.

[0014] In the apparatus of the present disclosure, the processor is configured to determine that the first polygon overlaps with the second polygon based on the number of intersection points that meets a specified number.

[0015] In the apparatus of the present disclosure, the processor is configured to determine that the first polygon does not overlap with the second polygon based on the number of intersection points that does not satisfy a specified number.

[0016] In the device of the present disclosure, the processor is configured to determine an intersection between a first polygon and a second polygon based on a first overlapping vertex identified in an overlapping area among a plurality of first vertices and a different vertex connected to the first overlapping vertex, wherein at least one of the plurality of first vertices is identified in the overlapping area where the first polygon overlaps with the second polygon, and wherein the plurality of second vertices are not identified in the overlapping area.

[0017] In the device of the present disclosure, the processor is configured to determine the intersection between a first polygon and a second polygon based on a first overlapping vertex identified in an overlapping area among multiple first vertices, a different vertex connected to the first overlapping vertex, a second overlapping vertex identified in an overlapping area among multiple second vertices, and a different vertex connected to the second overlapping vertex, wherein at least one of the multiple first vertices and at least one of the multiple second vertices are identified in the overlapping area where the first polygon overlaps with the second polygon.

[0018] In the device of the present disclosure, the processor is configured to: determine a third polygon different from both the first polygon and the second polygon based on the first polygon overlapping the second polygon, and determine whether the third polygon overlaps at least one of the first polygon or the second polygon.

[0019] In the device of the present disclosure, the processor is configured to: determine a neighboring polygon corresponding to an external object based on an overlap between a first polygon and a second polygon, wherein the first polygon and the second polygon correspond to the first external object and the second external object, respectively, and wherein the external object is closer to the sensor than the first external object or the second external object, determine a first area of ​​the neighboring polygon and a second area of ​​an overlapping area where the first polygon overlaps with the second polygon, and determine a ratio of overlap between the first polygon and the second polygon based on the first area and the second area.

[0020] The device comprises at least one of a light detection and ranging (LiDAR), a time of flight (ToF) sensor, a structured light sensor, an ultrasonic sensor, an infrared sensor, or an optical distance sensor.

[0021] According to the present disclosure, a method for controlling autonomous driving of a vehicle, executed by a processor, includes: obtaining at least two polygons represented in a second coordinate system, wherein the at least two polygons correspond to at least two bounding boxes of a plurality of bounding boxes represented in a first coordinate system, and wherein each of the plurality of bounding boxes is associated with a corresponding one of a plurality of external objects, determining whether the at least two polygons overlap with each other based on a plurality of vertices forming the at least two polygons, outputting at least one of the at least two bounding boxes based on a ratio at which the at least two polygons overlap with each other, generating a signal indicating that the at least two polygons overlap with each other based on at least one of the outputted at least two bounding boxes, and operating the vehicle for autonomous driving based on the signal.

[0022] In the method of the present disclosure, it further includes: obtaining a first polygon and a second polygon expressed in the second coordinate system, wherein the first polygon and the second polygon respectively correspond to a first bounding box and a second bounding box in a plurality of bounding boxes expressed in the first coordinate system.

[0023] In the method of the present disclosure, it further includes: determining whether the first polygon overlaps with the second polygon based on a plurality of first vertices forming the first polygon and a plurality of second vertices forming the second polygon.

[0024] In the method of the present disclosure, it further includes: outputting at least one of the first bounding box or the second bounding box by assigning a ratio of overlap of the first polygon and the second polygon to at least one of the first bounding box or the second bounding box.

[0025] In the method of the present disclosure, it also includes: expressing the first bounding box and the second bounding box in a second coordinate system, obtaining a first polygon by performing a cross product on first two adjacent line segments, wherein the first two adjacent line segments are from a first line segment sequentially connecting a plurality of first vertices, wherein the plurality of first vertices form the first polygon in a first specified direction starting from a first center point of the first bounding box, and obtaining a second polygon by performing a cross product on second two adjacent line segments, wherein the second two adjacent line segments are from a second line segment sequentially connecting a plurality of second vertices, and wherein the plurality of second vertices form the second polygon in the first specified direction starting from a second center point of the second bounding box.

[0026] In the method of the present disclosure, wherein the second coordinate system includes a distance value indicating a distance between the sensor and each of a plurality of external objects, a first angle value indicating a horizontal angle between the sensor and each of the plurality of external objects, and a second angle value indicating a vertical angle between the sensor and each of the plurality of external objects, the method further includes: generating a first figure from a first polygon formed by a plurality of first vertices based on a maximum value of the first angle value, a minimum value of the first angle value, a maximum value of the second angle value, and a minimum value of the second angle value, generating a second figure from a second polygon formed by a plurality of second vertices based on the maximum value of the first angle value, the minimum value of the first angle value, the maximum value of the second angle value, and the minimum value of the second angle value, and determining whether the first polygon overlaps with the second polygon based on determining whether the first figure overlaps with the second figure. BRIEF DESCRIPTION OF THE DRAWINGS

[0027] The above and other objects, features and advantages of the present disclosure will become more apparent from the following detailed description in conjunction with the accompanying drawings:

[0028] Figure 1 shows an example of a block diagram associated with a vehicle control device according to an example of the present disclosure;

[0029] Figure 2 shows an example of a flowchart associated with a vehicle control method according to an example of the present disclosure;

[0030] Figure 3 An example of converting a bounding box represented in three dimensions into a polygon represented in two dimensions is shown in the examples of the present disclosure;

[0031] Figure 4 An example of identifying polygons included in overlapping candidates in an example of the present disclosure is shown;

[0032] Figure 5 An example of identifying overlapping polygons among overlapping candidates in an example of the present disclosure is shown;

[0033] Figure 6An example of identifying vertices of overlapping regions formed by overlapping polygons in an example of the present disclosure is shown;

[0034] Figure 7 An example in which three or more polygons overlap each other is shown in the examples of the present disclosure;

[0035] Figure 8 An example of calculating the area of ​​an overlapping region in an example of the present disclosure is shown;

[0036] Figure 9 shows an example of a flowchart associated with a vehicle control method according to an example of the present disclosure; and

[0037] Figure 10 A computing system associated with a vehicle control apparatus or a vehicle control method according to an example of the present disclosure is shown.

[0038] Reference Signs List

[0039] 100: Vehicle control equipment

[0040] 110: Processor

[0041] 120: Sensor

[0042] 301: First Example

[0043] 302: Second Example

[0044] 303: Third Example

[0045] 310: Bounding Box

[0046] 310-1: Center Point

[0047] 310-2: Reference Line

[0048] 310-3: Polygon

[0049] 311: Vertex

[0050] 312: Vertex

[0051] 313: Vertex

[0052] 314: Vertex

[0053] 315: Vertex

[0054] 316: Vertex

[0055] 317: Vertex

[0056] 318: Vertex

[0057] 320: Bounding box

[0058] 320-1: Center Point

[0059] 320-2: Reference Line

[0060] 320-3: Polygon

[0061] 321: Vertex

[0062] 322: Vertex

[0063] 323: Vertex

[0064] 324: Vertex

[0065] 325: Vertex

[0066] 326: Vertex

[0067] 327: Vertex

[0068] 328: Vertex

[0069] 330: Bounding Box

[0070] 330-1: Center Point

[0071] 330-2: Reference Line

[0072] 330-3: Polygon

[0073] 331: Vertex

[0074] 332: Vertex

[0075] 333: Vertex

[0076] 334: Vertex

[0077] 335: Vertex

[0078] 336: Vertex

[0079] 337: Vertex

[0080] 338: Vertex

[0081] 401: First Example

[0082] 402: Second Example

[0083] 403: Third Example

[0084] 410: Graphics

[0085] 411: Vertex

[0086] 412: Vertex

[0087] 413: Vertex

[0088] 414: Vertex

[0089] 415: Graphics

[0090] 416: Vertex

[0091] 417: Vertex

[0092] 418: Vertex

[0093] 419: Vertex

[0094] 420: Graphics

[0095] 421: Vertex

[0096] 422: Vertex

[0097] 423: Vertex

[0098] 424: Vertex

[0099] 425: Graphics

[0100] 426: Vertex

[0101] 427: Vertex

[0102] 428: Vertex

[0103] 429: Vertex

[0104] 430: Graphics

[0105] 431: Vertex

[0106] 432: Vertex

[0107] 433: Vertex

[0108] 434: Vertex

[0109] 435: Graphics

[0110] 436: Vertex

[0111] 437: Vertex

[0112] 438: Vertex

[0113] 439: Vertex

[0114] 501: First Example

[0115] 502: Second Example

[0116] 503: Third Example

[0117] 510: Polygon

[0118] 515: Polygon

[0119] 520: Polygon

[0120] 521: Vertex

[0121] 525: Polygon

[0122] 530: Polygon

[0123] 531: Vertex

[0124] 535: Polygon

[0125] 536: Vertex

[0126] 540: Polygon

[0127] 541: Vertex

[0128] 542: Vertex

[0129] 543: Vertex

[0130] 601: First Example

[0131] 602: Second Example

[0132] 603: Third Example

[0133] 610-1: First polygon

[0134] 610-2: Second polygon

[0135] 611: Vertex

[0136] 612: First intersection

[0137] 613: Second Intersection

[0138] 620-1: First polygon

[0139] 620-2: Second polygon

[0140] 621: Vertex

[0141] 622: Intersection

[0142] 623: Intersection

[0143] 625: Vertex

[0144] 630-1: First polygon

[0145] 630-2: Second polygon

[0146] 631: Vertex

[0147] 632: Intersection

[0148] 633: Intersection

[0149] 635: Vertex

[0150] 636: Vertex

[0151] 701: First Example

[0152] 702: Second example

[0153] 711: First polygon

[0154] 713: Second polygon

[0155] 715: Third polygon

[0156] 721: First polygon

[0157] 723: Second polygon

[0158] 725: Third polygon

[0159] 727: Area

[0160] 800: Center point

[0161] 811: Triangle

[0162] 812: Triangle

[0163] 813: Triangle

[0164] 814: Triangle

[0165] 815: Triangle

[0166] 816: Triangle

[0167] 817: Triangle

[0168] 1100: Processor

[0169] 1300: Memory

[0170] 1400: User interface input device

[0171] 1500: User interface output device

[0172] 1600: Storage device

[0173] 1700: Network interface DETAILED DESCRIPTION

[0174] Hereinafter, some examples of the present disclosure will be described in detail with reference to the accompanying drawings. When adding reference numerals to the components of each figure, it should be noted that the same components include the same reference numerals even though they are indicated in another figure. In addition, when describing examples of the present disclosure, if detailed descriptions associated with well-known functions or configurations may make the subject matter of the present disclosure unnecessarily obscure, such detailed descriptions will be omitted.

[0175] When describing the elements of the examples of the present disclosure, the terms first, second, A, B, (a), (b) etc. can be used herein. These terms are only used to distinguish one element from another element, but do not limit the corresponding elements, regardless of the nature, order or priority of the corresponding elements. In addition, unless otherwise defined, all terms including technical or scientific terms used herein should be interpreted as the conventions of the field to which the present disclosure belongs. It should be understood that the terms used herein should be interpreted as including the meaning consistent with their meaning in the context of the present disclosure and the related art, and unless so clearly defined herein, should not be interpreted in an ideal or overly formal sense.

[0176] In the following, reference will be made to Figures 1 to 10 Examples of the present disclosure are described in detail.

[0177] Figure 1 An example of a block diagram associated with a vehicle control device according to an example of the present disclosure is shown.

[0178] refer to Figure 1 The vehicle control device 100 according to the example of the present disclosure can be implemented inside or outside the vehicle, and some of the components included in the vehicle control device 100 can be implemented inside or outside the vehicle. In this case, the vehicle control device 100 can be integrated with the internal control unit of the vehicle, and can be implemented using a separate device so as to be coupled with the control unit of the vehicle by means of a separate connection device. For example, the vehicle control device 100 may further include Figure 1 Parts not shown in FIG.

[0179] refer to Figure 1 , the vehicle control apparatus 100 according to an example may include a processor 110 and a sensor 120. The processor 110 or the sensor 120 may be electrically and / or operatively coupled to each other through electronic components including a communication bus.

[0180] For example, the sensor 120 may obtain bounding boxes represented in a first coordinate system and corresponding to respective external objects. For example, the first coordinate system may include an orthogonal coordinate system. For example, the first coordinate system may include a three-dimensional (3D) orthogonal coordinate system. A 3D orthogonal coordinate system may use three perpendicular axes (x, y, z) to define a point in 3D space.

[0181] Hereinafter, the fact that hardware is operatively coupled may include establishing a direct and / or indirect connection between the hardware in a wired and / or wireless manner, such that the first hardware in the hardware controls the second hardware. Although different blocks are shown, the examples are not limited thereto. Figure 1 Some of the multiple hardware in the vehicle control device 100 may be included in a single integrated circuit including a system on a chip (SoC). The type and / or number of hardware included in the vehicle control device 100 is not limited to Figure 1 For example, the vehicle control device 100 may only include Figure 1 Some of the multiple hardware shown in .

[0182] The vehicle control device 100 according to an example may include hardware for processing data based on one or more instructions. The hardware for processing data may include a processor 110.

[0183] For example, the hardware for processing data may include an arithmetic and logic unit (ALU), a floating point unit (FPU), a field programmable gate array (FPGA), a central processing unit (CPU), and / or an application processor (AP). The processor 110 may include a single-core processor structure, or may include a multi-core processor structure including a dual-core, quad-core, hexa-core, or octa-core processor structure.

[0184] The vehicle control device 100 according to the example may include a sensor 120 for measuring the distance between the vehicle including the vehicle control device 100 and an external object. For example, the sensor 120 may include a depth sensor. For example, the depth sensor may include at least one of a LiDAR, a time-of-flight (ToF) sensor, a structured light sensor, an ultrasonic sensor, an infrared sensor, an optical distance sensor, or a combination thereof.

[0185] For example, the processor 110 may perform the following process based on obtaining a bounding box corresponding to an external object by using the sensor 120 having a specified resolution or higher.

[0186] The processor 110 of the vehicle control apparatus 100 according to an example may obtain bounding boxes respectively corresponding to external objects through the sensor 120 .

[0187] In one example, the processor 110 may obtain at least two polygons corresponding to at least two bounding boxes based on at least two bounding boxes represented in a first coordinate system (e.g., a three-dimensional (3D) orthogonal coordinate system, a spherical coordinate system, a cylindrical coordinate system, a polar coordinate system, a homogeneous coordinate system, a barycentric coordinate system, an affine coordinate system, an ellipsoidal coordinate system, a curvilinear coordinate system, or a rectangular coordinate system, etc.) in the bounding boxes respectively corresponding to the external objects represented in the second coordinate system.

[0188] In one example, the processor 110 may obtain a first polygon (e.g., a triangle, a quadrilateral, a pentagon, a hexagon, etc.) corresponding to the first bounding box and a second polygon (e.g., a triangle, a quadrilateral, a pentagon, a hexagon, etc.) corresponding to the second bounding box based on a first bounding box corresponding to the first external object and a second bounding box corresponding to the second external object in a bounding box represented in the first coordinate system in a second coordinate system (e.g., a spherical coordinate system, a cylindrical coordinate system, a polar coordinate system, a homogeneous coordinate system, a barycentric coordinate system, an affine coordinate system, an ellipsoidal coordinate system, a curvilinear coordinate system, or a rectangular coordinate system, etc.).

[0189] For example, the second coordinate system may represent a spherical coordinate system. A spherical coordinate system may use three parameters: radial distance (r), polar angle (θ), and azimuth angle To define a point in 3D space, it is typically used in situations involving a sphere. For example, the second coordinate system and / or the spherical coordinate system may include a distance value indicating the distance between the sensor 120 and each external object, a first angle value indicating the horizontal angle between the sensor 120 and each external object, and a second angle value indicating the vertical angle between the sensor 120 and each external object.

[0190] For example, processor 110 may represent the first and second bounding boxes in a second coordinate system. For example, based on a plurality of first vertices sequentially connected in a first specified direction starting from a first center point of the first bounding box to form a first polygon (e.g., a triangle, a quadrilateral, a pentagon, a hexagon, etc.), processor 110 may obtain the first polygon by performing a cross product on two adjacent line segments of the first line segments sequentially connecting the plurality of first vertices. For example, based on a plurality of second vertices sequentially connected in a first specified direction starting from a second center point of the second bounding box to form a second polygon (e.g., a triangle, a quadrilateral, a pentagon, a hexagon, etc.), processor 110 may obtain the second polygon by performing a cross product on two adjacent line segments of the second line segments sequentially connecting the plurality of second vertices.

[0191] For example, the processor 110 may perform a cross product on two line segments by using a vector created by a plurality of sequentially identified vertices (eg, a plurality of first vertices and / or a plurality of second vertices).

[0192] For example, the first designated direction may include a clockwise direction and / or a counterclockwise direction.

[0193] In one example, the processor 110 may determine whether at least two polygons (e.g., triangles, quadrilaterals, pentagons, hexagons, etc.) overlap each other based on a plurality of vertices forming the at least two polygons. A polygon is a two-dimensional (2D) geometric figure that is formed by connecting a finite number of straight line segments end-to-end to form a closed shape. Key features of a polygon may include sides (edges) (straight line segments forming the boundary of the polygon), vertices (corners) (points where two sides intersect), interiors (space inside the boundary formed by the sides of the polygon), and exteriors (space outside the boundary of the polygon).

[0194] For example, the processor 110 may determine whether the first polygon overlaps with the second polygon based on a plurality of first vertices forming the first polygon and a plurality of second vertices forming the second polygon.

[0195] For example, the first polygon and / or the second polygon may be represented in a second coordinate system (e.g., a spherical coordinate system) based on a distance value indicating the distance between the sensor 120 and each external object, a first angle value indicating the horizontal angle between the sensor 120 and each external object, and a second angle value indicating the vertical angle between the sensor 120 and each external object.

[0196] For example, the processor 110 may generate a first figure from the first polygon based on the maximum first angle value, the minimum first angle value, the maximum second angle value, and the minimum second angle value among the plurality of first vertices.

[0197] For example, the processor 110 may generate a second figure from the second polygon based on the maximum first angle value, the minimum first angle value, the maximum second angle value, and the minimum second angle value among the plurality of second vertices.

[0198] For example, the first graphic and / or the second graphic may include a rectangle.

[0199] For example, the processor 110 may determine whether the first graphic overlaps with the second graphic.

[0200] For example, the processor 110 may determine whether the first graphic overlaps with the second graphic based on at least one of vertices of the first graphic or vertices of the second graphic, or any combination thereof. For example, the processor 110 may identify that the first graphic overlaps with the second graphic based on identifying vertices of the first graphic within the second graphic, or identifying vertices of the second graphic within the first graphic.

[0201] For example, the processor 110 may identify at least one of multiple third vertices forming the first figure, or multiple fourth vertices forming the second figure, or any combination thereof, in the area where the first figure overlaps with the second figure based on the fact that the first figure overlaps with the second figure.

[0202] For example, the processor 110 may identify a reference vertex that is included in at least one of the plurality of first vertices or the plurality of second vertices, or any combination thereof, and is relatively closest to at least one of the plurality of third vertices or the plurality of fourth vertices, or any combination thereof, identified in an area where the first figure overlaps with the second figure.

[0203] For example, the processor 110 may determine whether the first polygon overlaps the second polygon based on the number of intersections where a half-line in a second designated direction from the reference vertex overlaps at least one of the first polygon or the second polygon, or any combination thereof.

[0204] For example, the second designated direction may include at least one of a positive direction of the x-axis, a negative direction of the x-axis, a positive direction of the y-axis, or a negative direction of the y-axis, or any combination thereof.

[0205] For example, the processor 110 may identify that the first polygon overlaps the second polygon based on the fact that the number of intersection points where a half-line in a second specified direction starting from the reference vertex overlaps with at least one of the first polygon or the second polygon or any combination thereof is a specified number.

[0206] For example, the processor 110 may identify that the first polygon does not overlap with the second polygon based on the fact that the number of intersections at which a half-line in a second specified direction starting from the reference vertex overlaps with at least one of the first polygon or the second polygon or any combination thereof is different from a specified number.

[0207] For example, if at least one of multiple first vertices is identified in an area where the first polygon overlaps with the second polygon, and multiple second vertices are not identified in the overlapping area, then the processor 110 may identify the intersection between the first polygon and the second polygon based on the first overlapping vertex identified in the overlapping area among the multiple first vertices and different vertices connected to the first overlapping vertex.

[0208] For example, if at least one of a plurality of first vertices and at least one of a plurality of second vertices are identified in an area where the first polygon overlaps with the second polygon, the processor 110 may identify an intersection between the first polygon and the second polygon based on the first overlapping vertex identified in the overlapping area among the plurality of first vertices, a different vertex connected to the first overlapping vertex, a second overlapping vertex identified in the overlapping area among the plurality of second vertices, and a different vertex connected to the second overlapping vertex.

[0209] In one example, the processor 110 may identify a third polygon that is different from both the first polygon and the second polygon based on identifying that the first polygon overlaps with the second polygon.

[0210] For example, the processor 110 may determine whether the third polygon overlaps with at least one of the first polygon or the second polygon, or any combination thereof.

[0211] For example, the processor 110 may determine whether the third polygon overlaps with at least one of the first polygon or the second polygon, or any combination thereof, by repeatedly performing the above operations.

[0212] In one example, the processor 110 may identify a neighboring polygon corresponding to an external object relatively close to the sensor 120 from among the first polygon and the second polygon based on the fact that the first polygon overlaps with the second polygon.

[0213] For example, the processor 110 may calculate a first area of ​​a neighboring polygon and a second area of ​​a region where the first polygon overlaps with the second polygon.

[0214] For example, the processor 110 may identify a ratio at which the first polygon overlaps the second polygon based on the first area and the second area.

[0215] In one example, the processor 110 may output at least one of at least two bounding boxes based on a plurality of vertices forming at least two polygons, and a ratio at which the at least two polygons overlap each other is assigned to the at least two bounding boxes.

[0216] For example, the processor 110 may output at least one of at least two bounding boxes based on a plurality of vertices forming at least two polygons, to which occlusion information indicating a ratio in which the at least two polygons overlap each other is assigned.

[0217] For example, the processor 110 may output at least one of the first bounding box or the second bounding box or any combination thereof by assigning a ratio at which the first polygon overlaps the second polygon to at least one of the first bounding box or the second bounding box or any combination thereof.

[0218] In one example, the processor 110 may generate a dataset for training a neural network model by using at least one of a first bounding box or a second bounding box, or any combination thereof, to which a ratio of overlap between a first polygon and a second polygon is assigned.

[0219] As described above, the vehicle control device 100 according to the example can reduce the amount of calculation of the processor 110 by determining whether the first polygon overlaps with the second polygon through the above process. In addition, the vehicle control device 100 can relatively accurately and quickly identify the obstructing object by performing the above operation. The vehicle control device 100 can effectively perform automatic driving or driving assistance of the vehicle including the vehicle control device 100 by relatively accurately and quickly identifying the obstructing object. For example, the processor 110 can determine whether the external object is obscured by using data indicating the distance between the vehicle and the external object. If the external object is obscured, then the ratio of the external object relatively far from the vehicle to the external object relatively close to the vehicle can be determined, and by using the obstruction ratio, a data set for training a neural network model operating in the automatic driving mode or driving assistance mode of the vehicle can be generated.

[0220] According to the Society of Automotive Engineers (SAE), the levels of automation of autonomous vehicles can be categorized as follows. At Level 0, the SAE classification standard may correspond to "no automation," in which the autonomous driving system temporarily addresses emergency situations (e.g., automatic emergency braking) and / or only provides warnings (e.g., blind spot warnings, lane departure warnings, etc.), and the driver is expected to operate the vehicle. At Level 1, the SAE classification standard may correspond to "driver assistance," in which the system performs some driving functions (e.g., steering, acceleration, braking, lane centering, adaptive cruise control, etc.) while the driver operates the vehicle on normal operating routes, and the driver is expected to determine the operating state and / or timing of the system, perform other driving functions, and respond to (e.g., resolve) emergency situations. At Level 2, the SAE classification standard may correspond to "partial automation," in which the system performs steering, acceleration, and / or braking under the driver's supervision, and the driver is expected to determine the operating state and / or timing of the system, perform other driving functions, and respond to (e.g., resolve) emergency situations. At Automated Driving Level 3, the SAE classification standard may correspond to "conditional automation," in which the system drives the vehicle under limited conditions (e.g., performs driving functions such as steering, acceleration, and / or braking), but transfers driving control to the driver when required conditions are not met. The driver is expected to determine the operating state and / or timing of the system and take over control in emergency situations, but does not otherwise operate the vehicle (e.g., steering, acceleration, and / or braking). At Automated Driving Level 4, the SAE classification standard may correspond to "high automation," in which the system performs all driving functions, and the driver is expected to control the vehicle only in emergency situations. At Automated Driving Level 5, the SAE classification standard may correspond to "full automation," in which the system performs all driving functions without any driver assistance (including in emergency situations), and the driver is not expected to perform any driving functions other than determining the operating state of the system. While the present disclosure may apply the SAE classification standard to automated driving classification, other classification methods and / or algorithms may be used in one or more of the configurations described herein. One or more features associated with automated driving control may be activated based on a configured automated driving control setting (e.g., based on at least one of the following: automated driving classification, selection of an automated driving level for the vehicle, etc.).

[0221] Figure 2 An example of a flow chart associated with a vehicle control method according to an example of the present disclosure is shown. For convenience, Figure 2 The description is by way of example, where the steps are performed by a processor (eg, circuit). Figure 2 One, some, or all steps of the example method, or portions thereof, may be performed by one or more other circuits. Figure 2One or some of the steps of the example methods may be omitted, performed in another order, and / or modified in other ways, and / or one or more additional steps may be added.

[0222] In the following, it is assumed that Figure 1 The vehicle control device 100 performs Figure 2 Additionally or alternatively, in Figure 2 In the description, it can be understood that the operations described as being performed by the device are controlled by the processor 110 of the vehicle control device 100.

[0223] Figure 2 At least one of the operations may be Figure 1 The vehicle control device 100 executes. Figure 2 At least one of the operations may be Figure 1 Executed by the processor 110. Figure 2 Each of the operations in the embodiment of the present invention may be performed sequentially, but not necessarily sequentially. For example, the order of the operations may be changed, and at least two operations may be performed in parallel.

[0224] refer to Figure 2 , in S201 , the vehicle control method according to an example may include an operation of converting a 3D bounding box into a 2D convex polygon based on a range view.

[0225] For example, the vehicle control method may include an operation of calculating vertices of the 3D bounding box based on at least one of a center point, a size, or a heading of the 3D bounding box, or any combination thereof.

[0226] For example, the vehicle control method may include operations to convert the center point and vertices of a 3D bounding box to a spherical coordinate system based on a sensor representation.

[0227] For example, the vehicle control method may include an operation of arranging vertices of the converted 3D bounding box in angular order based on a center point of the 3D bounding box converted to a point (or coordinate value) expressed in a spherical coordinate system.

[0228] For example, the vehicle control method may include an operation of creating a projected polygon by sequentially connecting sequentially aligned vertices and excluding concave vertices.

[0229] In S203 , the vehicle control method according to an example may include the following operation: extracting an overlapping area of ​​two combinations of projected polygons.

[0230] For example, a vehicle control method may include selecting overlapping projected polygon candidates based on a minimum-maximum box. For example, the minimum-maximum box may be identified based on coordinate values ​​expressed in a spherical coordinate system. For example, the minimum-maximum box may be formed into a square. For example, the minimum-maximum box may be formed based on the minimum and maximum values ​​of coordinate values ​​representing angles.

[0231] For example, if there are 'n' projected polygons, the vehicle control method may operate "(n-2)(n-1) / 2" times to identify overlapping projected polygon candidates.

[0232] For example, the vehicle control method may include an operation of determining whether the projected polygon candidates actually overlap with each other.

[0233] For example, the vehicle control method may include an operation of identifying vertices in an overlapping area of ​​a pair of projected polygons that are determined to overlap each other.

[0234] In S205 , the vehicle control method according to an example may include the following operation: extracting a partial area based on an overlapping area between tag frames.

[0235] The overlapping area of ​​S205 may include the overlapping area of ​​S203.

[0236] For example, the vehicle control method may include the following operation: obtaining an overlapping area of ​​a combination of three or more projected polygons.

[0237] For example, the vehicle control method may include the following operations: based on recognizing that the two projected polygons overlap, determining whether the two projected polygons overlap with different polygons, and obtaining a list of recognition results.

[0238] In S207 , the vehicle control method according to an example may include the following operations: calculating an occlusion ratio, and then assigning an attribute in the form of a flag.

[0239] For example, the vehicle control method may include an operation of obtaining midpoints of vertices of an overlapping area of ​​a combination of 'n' projected polygons that are determined to be overlapping.

[0240] For example, the vehicle control method may include an operation of obtaining a distance from the sensor to an external object corresponding to each of the projected polygons based on the obtained midpoint.

[0241] For example, the vehicle control method may include the following operation: obtaining the area of ​​a region overlapping with the projected polygon.

[0242] For example, the vehicle control method may include an operation of identifying an overlap ratio based on an area of ​​a region overlapping with the projected polygon.

[0243] Figure 3 An example of converting a bounding box represented in three dimensions into a polygon represented in two dimensions is shown in the examples of the present disclosure.

[0244] refer to Figure 3 , according to an example vehicle control device (e.g., Figure 1A processor (eg, Figure 1 The processor 110 in FIG. 1 may obtain bounding boxes 310 , 320 , and 330 corresponding to external objects.

[0245] refer to Figure 3 In the first example 301, the processor may identify a center point 310-1 of the bounding box 310 based on obtaining the bounding box 310. For example, the center point 310-1 may include a center of gravity of the bounding box 310.

[0246] For example, the processor may identify a reference line 310 - 2 based on the center point 310 - 1 and sequentially connect a plurality of vertices 311 , 312 , 313 , 314 , 315 , 316 , 317 , and 318 in a designated direction d1 starting from the reference line 310 - 2 .

[0247] For example, the processor may sequentially connect the plurality of vertices 311 , 312 , 313 , 314 , 315 , 316 , 317 , and 318 according to angles between the reference line 310 - 2 and the plurality of vertices 311 , 312 , 313 , 314 , 315 , 316 , 317 , and 318 .

[0248] For example, the processor may perform a cross product on two adjacent line segments among the line segments connecting the plurality of vertices 311 , 312 , 313 , 314 , 315 , 316 , 317 , and 318 .

[0249] For example, the processor may perform a cross product on a first line segment connecting the first vertex 311 and the second vertex 312 and a second line segment connecting the second vertex 312 and the third vertex 313. In this way, the processor may perform a cross product on two adjacent line segments.

[0250] For example, based on performing a cross product on two adjacent line segments, the processor may identify points forming the concave portion based on the sign of the cross product. In the first example 301 , the points forming the concave portion may include vertex 311 , vertex 313 , vertex 315 , and vertex 318 .

[0251] For example, the processor may obtain the polygon 310 - 3 by excluding points forming the concave portion from the plurality of vertices 311 , 312 , 313 , 314 , 315 , 316 , 317 , and 318 .

[0252] refer to Figure 3 In the second example 302, the processor can identify a center point 320-1 of the bounding box 320 based on obtaining the bounding box 320. For example, the center point 320-1 can include a center of gravity of the bounding box 320.

[0253] For example, the processor may identify a reference line 320-2 based on the center point 320-1 and sequentially connect the plurality of vertices 321, 322, 323, 324, 325, 326, 327, and 328 in a designated direction d1 starting from the reference line 320-2.

[0254] For example, the processor may sequentially connect the plurality of vertices 321 , 322 , 323 , 324 , 325 , 326 , 327 , and 328 according to angles between the reference line 320 - 2 and the plurality of vertices 321 , 322 , 323 , 324 , 325 , 326 , 327 , and 328 .

[0255] For example, the processor may perform a cross product on two adjacent line segments among the line segments connecting the plurality of vertices 321 , 322 , 323 , 324 , 325 , 326 , 327 , and 328 .

[0256] For example, based on performing a cross product on two adjacent line segments, the processor may identify the points forming the concave portion based on the sign of the cross product. In the second example 302 , the points forming the concave portion may include vertex 321 , vertex 325 , and vertex 328 .

[0257] For example, the processor may obtain the polygon 320 - 3 by excluding points forming the concave portion from the plurality of vertices 321 , 322 , 323 , 324 , 325 , 326 , 327 , and 328 .

[0258] refer to Figure 3 In the third example 303 , the processor may identify a center point 330 - 1 of the bounding box 330 based on obtaining the bounding box 330 . For example, the center point 330 - 1 may include a center of gravity of the bounding box 330 .

[0259] For example, the processor may identify a reference line 330-2 based on the center point 330-1 and sequentially connect the plurality of vertices 331, 332, 333, 334, 335, 336, 337, and 338 in a designated direction d1 starting from the reference line 330-2.

[0260] For example, the processor may sequentially connect the plurality of vertices 331 , 332 , 333 , 334 , 335 , 336 , 337 , and 338 according to angles between the reference line 330 - 2 and the plurality of vertices 331 , 332 , 333 , 334 , 335 , 336 , 337 , and 338 .

[0261] For example, the processor may perform a cross product on two adjacent line segments among the line segments connecting the plurality of vertices 331 , 332 , 333 , 334 , 335 , 336 , 337 , and 338 .

[0262] For example, based on performing a cross product on two adjacent line segments, the processor may identify the points forming the concave portion based on the sign of the cross product. In the third example 303 , the points forming the concave portion may include vertex 334 and vertex 336 .

[0263] For example, the processor may obtain the polygon 330 - 3 by excluding points forming the concave portion from the plurality of vertices 331 , 332 , 333 , 334 , 335 , 336 , 337 , and 338 .

[0264] Figure 4 An example of identifying polygons included in overlapping candidates in the example of the present disclosure is shown.

[0265] refer to Figure 4 , according to an example vehicle control device (e.g., Figure 1 A processor (eg, Figure 1 The processor 110 in FIG. 1 may obtain graphics 410 , 415 , 420 , 425 , 430 , and 435 based on polygons obtained by converting each of the bounding boxes.

[0266] For example, graphics 410 , 415 , 420 , 425 , 430 , and 435 may include rectangles.

[0267] refer to Figure 4 In the first example 401, the processor may determine whether vertices 411, 412, 413, and 414 forming the graph 410 exist inside the graph 415. The processor may determine whether vertices 416, 417, 418, and 419 forming the graph 415 exist inside the graph 410.

[0268] For example, if vertices 411 , 412 , 413 , and 414 forming graph 410 do not exist inside graph 415 , or vertices 416 , 417 , 418 , and 419 forming graph 415 do not exist inside graph 410 , the processor may exclude graph 410 and graph 415 from overlapping candidates.

[0269] refer to Figure 4 In the second example 402 , the processor may determine whether vertices 421 , 422 , 423 , and 424 forming the graph 420 exist inside the graph 425 . The processor may determine whether vertices 426 , 427 , 428 , and 429 forming the graph 425 exist inside the graph 420 .

[0270] refer to Figure 4In the third example 403 , the processor may determine whether vertices 431 , 432 , 433 , and 434 forming the graph 430 exist inside the graph 435 . The processor may determine whether vertices 436 , 437 , 438 , and 439 forming the graph 435 exist inside the graph 430 .

[0271] If the vertex exists inside the graphs 420 , 425 , 430 , and 435 , as in the second example 402 and the third example 403 , the processor may include the corresponding graph in the overlap candidates.

[0272] Figure 5 An example of identifying overlapping polygons among overlapping candidates in the examples of the present disclosure is shown.

[0273] refer to Figure 5 , according to an example vehicle control device (e.g., Figure 1 A processor (eg, Figure 1 The processor 110 in Figure 4 For example, an overlapping candidate may include two polygons.

[0274] like Figure 5 In the first example 501, the vertices of the figure (e.g., a square) may be inside, but the vertices of polygon 510 may not exist inside polygon 515. As in the second example 502, the vertices of the figure may be inside, and vertex 521 of polygon 530 may exist inside polygon 525. As in the third example 503, the vertices of the figure may be inside, vertex 531 of polygon 520 may exist inside polygon 535, and vertex 536 of polygon 535 may exist inside polygon 530.

[0275] The process of determining the vertex positions of the polygons included in the overlap candidates may include a process described later.

[0276] For example, the processor may identify vertices 541, 542, and 543. Vertices 541, 542, and 543 may be Figure 5 Simplified representation of Examples 501, 502, and 503 in FIG.

[0277] For example, polygon 540 may include polygon 515 , polygon 525 , and / or polygon 535 .

[0278] For example, the processor may generate a half-line in a specified direction d2 starting from the vertex 541. The processor may identify an intersection point between the polygon 540 and the half-line in the specified direction d2 starting from the vertex 541. The processor may identify the number of intersection points between the polygon 540 and the half-line in the specified direction d2 starting from the vertex 541. If the number of intersection points between the polygon 540 and the half-line in the specified direction d2 starting from the vertex 541 exceeds a specified number (e.g., 1), the processor may identify that the polygons do not overlap with each other.

[0279] For example, the processor may generate a half line in a designated direction d2 from the vertex 542. If the number of intersections between the polygon 540 and the half line in the designated direction d2 from the vertex 542 is a designated number, the processor may recognize that the polygons overlap each other.

[0280] For example, the processor may generate a half line in the designated direction d2 from the vertex 543. If the number of intersections between the polygon 540 and the half line in the designated direction d2 from the vertex 543 is less than a designated number, the processor may recognize that the polygons overlap each other.

[0281] Figure 6 An example of identifying vertices of an overlapping area formed by overlapping polygons in an example of the present disclosure is shown.

[0282] refer to Figure 6 , according to an example vehicle control device (e.g., Figure 1 A processor (eg, Figure 1 The processor 110 in the embodiment may identify that the first polygon overlaps with the second polygon.

[0283] For example, the first polygon may be obtained from a first bounding box corresponding to the first external object.For example, the second polygon may be obtained from a second bounding box corresponding to the second external object.

[0284] Figure 6 The first example 601 in FIG. 6 shows an example in which a vertex 611 among a plurality of first vertices forming a first polygon 610 - 1 exists inside a second polygon 610 - 2 .

[0285] Figure 6 The second example 602 in FIG. 6 shows an example in which a vertex 621 among a plurality of first vertices forming the first polygon 620 - 1 exists inside the second polygon 620 - 2 , and a vertex 625 among a plurality of second vertices forming the second polygon 620 - 2 exists inside the first polygon 620 - 1 .

[0286] Figure 6The third example 603 in FIG. 6 shows an example in which a vertex 631 of a plurality of first vertices forming a first polygon 630 - 1 exists inside a second polygon 630 - 2 , and a vertex 635 and a vertex 636 of a plurality of second vertices forming the second polygon 630 - 2 exist inside the first polygon 630 - 1 .

[0287] As in the first example 601, if vertices of different polygons (e.g., vertex 611) exist inside one polygon (e.g., the second polygon 610-2), the processor may identify a first intersection 612 and a second intersection 613 based on line segments connecting vertex 611 to other vertices.

[0288] As in the second example 602, if multiple vertices of different polygons (e.g., the first polygon 620-1 and / or the second polygon 620-2) exist inside other polygons, the processor may identify intersections 622 and 623 based on line segments connecting each of the vertices (e.g., vertex 621 and / or vertex 625) to the other vertices.

[0289] As in the third example 603, if multiple vertices of different polygons (e.g., the first polygon 630-1 and / or the second polygon 630-2) exist inside the other polygons, and multiple vertices of one of the polygons (e.g., vertex 635 and / or vertex 636) exist inside the other polygon, then the processor can identify intersections 632 and 633 based on the line segments connecting vertex 631 of the first polygon 630-1 to the other vertices, the line segments connecting vertex 635 of the second polygon 630-2 to the other vertices, and the line segments connecting vertex 636 of the second polygon 630-2 to the other vertices.

[0290] Figure 7 An example in which three or more polygons overlap each other is shown in the examples of the present disclosure.

[0291] refer to Figure 7 , according to an example vehicle control device (e.g., Figure 1 A processor (eg, Figure 1 The processor 110 in the embodiment can determine whether a third polygon different from both the first polygon (e.g., the first polygon 711 and the first polygon 721) and the second polygon (e.g., the second polygon 713 and the second polygon 723) overlaps with both the first polygon and the second polygon based on identifying that the first polygon overlaps with the second polygon.

[0292] Whether the third polygon overlaps with both the first polygon and the second polygon may be determined by repeatedly performing the above process.

[0293] Figure 7The first example 701 in FIG. 7 may include an example in which the first polygon 711 overlaps with the second polygon 713 , but the third polygon 715 does not overlap with the other polygons.

[0294] Figure 7 The second example 702 in FIG. 7 may include an example in which a first polygon 721 overlaps a second polygon 723 , and a third polygon 725 at least partially overlaps an area 727 in which the first polygon 721 and the second polygon 723 overlap.

[0295] refer to Figure 7 In the first example 701 , in one example, the processor may identify that at least one of the plurality of first vertices forming the first polygon 711 exists inside the second polygon 713 .

[0296] For example, the processor may determine whether at least one of the vertices of a figure (e.g., a square) corresponding to a third polygon 715 exists in an area where the first polygon 711 overlaps with the second polygon 713 based on identifying that at least one of the multiple first vertices forming the first polygon 711 exists inside the second polygon 713.

[0297] For example, the processor may determine whether a line segment connecting at least one of the vertices of the figure corresponding to the third polygon 715 in the area where the first polygon 711 overlaps with the second polygon 713 to other vertices exists in the area overlapping with both the first polygon 711 and the second polygon 713 based on identifying at least one of the vertices of the figure corresponding to the third polygon 715 in the area where the first polygon 711 overlaps with the second polygon 713.

[0298] refer to Figure 7 In the second example 702 , in one example, the processor may identify an area 727 where the first polygon 721 overlaps the second polygon 723 .

[0299] For example, the processor may identify that at least one of the plurality of vertices forming a figure corresponding to the third polygon 725 exists in the region 727 where the first polygon 721 overlaps with the second polygon 723. For example, the processor may identify the region where the first polygon 721, the second polygon 723, and the third polygon 725 overlap with each other based on the fact that at least one of the plurality of vertices forming a figure corresponding to the third polygon 725 exists in the region 727 where the first polygon 721 overlaps with the second polygon 723.

[0300] For example, the processor may repeatedly perform the above process until no overlapping polygons remain. For example, the processor may repeatedly determine whether two polygons overlap each other, whether three polygons overlap each other, or whether 'n' polygons overlap each other.

[0301] Figure 8 An example of calculating the area of ​​an overlapping region in an example of the present disclosure is shown.

[0302] refer to Figure 8 , according to an example vehicle control device (e.g., Figure 1 A processor (eg, Figure 1 The processor 110 in the embodiment may identify areas where multiple polygons overlap with each other.

[0303] For example, the processor of the vehicle control device may determine the order in which the polygons determined to overlap overlap.For example, the processor may determine the order in which the polygons overlap based on distance values ​​expressed in a spherical coordinate system.

[0304] The processor may calculate the area of ​​regions where the polygons overlap one another.

[0305] For example, the processor may identify a center point 800 of the overlapping region. The processor may generate triangles 811, 812, 813, 814, 815, 816, and 817 based on line segments connecting the center point 800 to a plurality of vertices forming the overlapping region. The processor may calculate the area of ​​each of the generated triangles 811, 812, 813, 814, 815, 816, and 817. The processor may calculate the area of ​​the overlapping region by calculating the area of ​​each of the generated triangles 811, 812, 813, 814, 815, 816, and 817 and summing the calculated areas.

[0306] An example of calculating the area of ​​an overlapping region is described. However, a method for calculating the area of ​​a polygon created from a bounding box corresponding to an external object may also be substantially the same as the above process.

[0307] In one example, the processor may determine a ratio of the area of ​​the overlapping region to the area of ​​the polygon. For example, the processor may calculate the area of ​​the figure obtained by the bounding box corresponding to the external object over the entire area. The processor may identify an occlusion ratio based on the area of ​​the figure and the area of ​​the region excluding at least a portion of the entire area.

[0308] For example, the processor may calculate the occlusion ratio by using polygons obtained from a bounding box corresponding to the external object and areas where the polygons overlap with each other.

[0309] Figure 9 An example of a flow chart associated with a vehicle control method according to an example of the present disclosure is shown. For convenience, Figure 9 The description is by way of example, where the steps are performed by a processor (eg, circuit). Figure 9 One, some, or all steps of the example method, or portions thereof, may be performed by one or more other circuits. Figure 9One or some of the steps of the example methods may be omitted, performed in another order, and / or modified in other ways, and / or one or more additional steps may be added.

[0310] In the following, it is assumed that Figure 1 The vehicle control device 100 performs Figure 9 Additionally or alternatively, in Figure 9 In the description, it can be understood that the operations described as being performed by the device are controlled by the processor 110 of the vehicle control device 100.

[0311] Figure 9 At least one of the operations may be Figure 1 The vehicle control device 100 executes. Figure 9 At least one of the operations may be Figure 1 Executed by the processor 110. Figure 9 Each of the operations in the embodiment of the present invention may be performed sequentially, but not necessarily sequentially. For example, the order of the operations may be changed, and at least two operations may be performed in parallel.

[0312] refer to Figure 9 In S901, the vehicle control method according to the example may include the following operations: obtaining at least two polygons corresponding to at least two bounding boxes based on at least two bounding boxes represented in the second coordinate system, wherein the at least two bounding boxes are represented in the first coordinate system in bounding boxes respectively corresponding to external objects.

[0313] For example, the vehicle control method may include the following operations: based on the Figure 1 The sensor 120 in the first coordinate system obtains bounding boxes represented in the first coordinate system and corresponding to external objects respectively, and represents at least two bounding boxes represented in the first coordinate system from the bounding boxes in the second coordinate system.

[0314] For example, the sensor may include at least one of a LiDAR, a ToF sensor, a structured light sensor, an ultrasonic sensor, an infrared sensor, or an optical distance sensor, or any combination thereof.

[0315] For example, the vehicle control method may include the following operation: obtaining a first polygon corresponding to the first bounding box and a second polygon corresponding to the second bounding box based on a first bounding box corresponding to the first external object and a second bounding box corresponding to the second external object represented in the bounding box in the second coordinate system, where the bounding box is represented in the first coordinate system.

[0316] For example, the vehicle control method may include the following operations: representing a first bounding box and a second bounding box in a second coordinate system. For example, the vehicle control method may include the following operations: based on sequentially connecting a plurality of first vertices forming a first polygon in a first specified direction starting from a first center point of the first bounding box, obtaining a first polygon by performing a cross product on two adjacent line segments among first line segments sequentially connecting the plurality of first vertices. For example, the vehicle control method may include the following operations: based on sequentially connecting a plurality of second vertices forming a second polygon in a first specified direction starting from a second center point of the second bounding box, obtaining a second polygon by performing a cross product on two adjacent line segments among second line segments sequentially connecting the plurality of second vertices.

[0317] In S903 , the vehicle control method according to an example may include an operation of determining whether at least two polygons overlap with each other based on a plurality of vertices forming the at least two polygons.

[0318] For example, the vehicle control method may include an operation of determining whether a first polygon overlaps with a second polygon based on a plurality of first vertices forming the first polygon and a plurality of second vertices forming the second polygon.

[0319] For example, the vehicle control method may include the following operation: generating a first figure from a first polygon based on the maximum value of the first angle, the minimum value of the first angle, the maximum value of the second angle, and the minimum value of the second angle among a plurality of first vertices. For example, the vehicle control method may include the following operation: generating a second figure from a second polygon based on the maximum value of the first angle, the minimum value of the first angle, the maximum value of the second angle, and the minimum value of the second angle among a plurality of second vertices.

[0320] For example, the first graphic and / or the second graphic may be a rectangle.

[0321] For example, the vehicle control method may include determining whether the first graphic overlaps the second graphic. For example, the vehicle control method may include determining whether the first polygon overlaps the second polygon based on determining whether the first graphic overlaps the second graphic.

[0322] For example, the vehicle control method may include the following operation: based on the fact that the first figure overlaps with the second figure, identifying at least one of the plurality of third vertices forming the first figure, or the plurality of fourth vertices forming the second figure, or any combination thereof, in the area where the first figure overlaps with the second figure. For example, the vehicle control method may include the following operation: identifying a reference vertex that is included in at least one of the plurality of first vertices or the plurality of second vertices, or any combination thereof, and that is relatively closest to at least one of the plurality of third vertices or the plurality of fourth vertices, or any combination thereof, identified in the area where the first figure overlaps with the second figure.

[0323] For example, the vehicle control method may include the following operation: determining whether the first polygon overlaps with the second polygon based on the number of intersections where a half-line in a second specified direction starting from the reference vertex overlaps with at least one of the first polygon or the second polygon or any combination thereof.

[0324] For example, the vehicle control method may include the following operations: identifying that the first polygon overlaps with the second polygon based on the fact that the number of intersections where a half-straight line in a second specified direction starting from a reference vertex overlaps with at least one of the first polygon or the second polygon or any combination thereof is less than a specified number.

[0325] For example, the vehicle control method may include the following operations: identifying that the first polygon does not overlap with the second polygon based on the fact that the number of intersections of a half-straight line in a second specified direction starting from a reference vertex and overlapping with at least one of the first polygon or the second polygon or any combination thereof is greater than a specified number.

[0326] For example, a vehicle control method may include the following operation: identifying an area where a first polygon overlaps with a second polygon. If at least one of a plurality of first vertices and at least one of a plurality of second vertices are identified in the area where the first polygon overlaps with the second polygon, the vehicle control method may include the following operation: identifying an intersection between the first polygon and the second polygon based on a first overlapping vertex identified in the overlapping area among the plurality of vertices, a different vertex connected to the first overlapping vertex, a second overlapping vertex identified in the overlapping area among the plurality of second vertices, and a different vertex connected to the second overlapping vertex.

[0327] For example, the vehicle control method may include the following operation: based on identifying that the first polygon overlaps with the second polygon, identifying a third polygon that is different from both the first polygon and the second polygon. For example, the vehicle control method may include the following operation: determining whether the third polygon overlaps with at least one of the first polygon or the second polygon, or any combination thereof.

[0328] In S905 , the vehicle control method according to an example may include outputting at least one of at least two bounding boxes based on a plurality of vertices forming at least two polygons, a ratio at which the at least two polygons overlap each other being assigned to the at least two bounding boxes.

[0329] For example, the vehicle control method may include outputting at least one of the first bounding box or the second bounding box or any combination thereof by assigning a ratio at which the first polygon overlaps the second polygon to at least one of the first bounding box or the second bounding box or any combination thereof.

[0330] For example, the vehicle control method may include an operation of storing the generated data set in a memory based on generating the data set including a ratio at which the first polygon overlaps the second polygon.

[0331] For example, the vehicle control method may include the following operation: based on the fact that the first polygon overlaps with the second polygon, identifying a neighboring polygon corresponding to an external object relatively close to the sensor from the first polygon and the second polygon. For example, the vehicle control method may include the following operation: calculating a first area of ​​the neighboring polygon and a second area of ​​the region where the first polygon and the second polygon overlap. For example, the vehicle control method may include the following operation: based on the first area and the second area, identifying the ratio of overlap between the first polygon and the second polygon.

[0332] Figure 10 A computing system associated with a vehicle control apparatus or a vehicle control method according to an example of the present disclosure is shown.

[0333] refer to Figure 10 , the computing system 1000 may include at least one processor 1100 , a memory 1300 , a user interface input device 1400 , a user interface output device 1500 , a storage device 1600 , and a network interface 1700 connected to each other via a bus 1200 .

[0334] The processor 1100 may be a central processing unit (CPU) or a semiconductor device that processes instructions stored in the memory 1300 and / or the storage device 1600. The memory 1300 and the storage device 1600 may include various types of volatile or non-volatile storage media. For example, the memory 1300 may include a ROM (Read Only Memory) 1310 and a RAM (Random Access Memory) 1320.

[0335] Therefore, the process of the method or algorithm described in the examples of the present disclosure can be directly implemented by hardware, software modules, or a combination thereof executed by the processor 1100. The software module may reside in a storage medium (i.e., memory 1300 and / or storage device 1600) such as RAM, flash memory, ROM, EPROM, EEPROM, registers, a hard disk, a solid-state drive (SSD), a removable disk, or a CD-ROM. An exemplary storage medium is coupled to the processor 1100, and the processor 1100 can read information from the storage medium and can write information to the storage medium. In another approach, the storage medium may be integrated with the processor 1100. The processor 1100 and the storage medium may reside in an application-specific integrated circuit (ASIC). The ASIC may reside in a user terminal. In another approach, the processor 1100 and the storage medium may reside in the user terminal as separate components.

[0336] The present disclosure aims to solve the above-mentioned problems arising in the prior art while maintaining the advantages achieved by the prior art.

[0337] An example of the present disclosure provides a vehicle control apparatus and a method thereof, the vehicle control apparatus being used to determine a ratio at which a second external object is blocked by a first external object.

[0338] An example of the present disclosure provides a vehicle control device and a method thereof, which is used to determine whether the external object is obscured by using data indicating the distance between the vehicle and the external object, and if the external object is obscured, determine the ratio of the external object relatively far from the vehicle to the external object relatively close to the vehicle, and generate a data set for training a neural network model operating in an autonomous driving mode or a driving assistance mode of the vehicle by using the obscuration ratio.

[0339] The technical problems to be solved by the present disclosure are not limited to the above-mentioned problems, and any other technical problems not mentioned herein will be clearly understood by those skilled in the art to which the present disclosure belongs from the following description.

[0340] According to an example of the present disclosure, a vehicle control device may include a processor and a sensor, wherein the sensor may obtain bounding boxes represented in a first coordinate system and corresponding to external objects, respectively. The processor may obtain at least two polygons corresponding to the at least two bounding boxes based on the representation of at least two bounding boxes in a second coordinate system, wherein the at least two bounding boxes are represented in the first coordinate system in the bounding boxes corresponding to the external objects, respectively. The processor may determine whether the at least two polygons overlap with each other based on a plurality of vertices forming the at least two polygons, and may output at least one of the at least two bounding boxes based on the plurality of vertices forming the at least two polygons, and assign a ratio of overlap of the at least two polygons to the at least two bounding boxes.

[0341] In one example, the processor may obtain a first polygon corresponding to the first bounding box and a second polygon corresponding to the second bounding box based on a first bounding box corresponding to the first external object and a second bounding box corresponding to the second external object represented in the bounding box in the second coordinate system, where the bounding box is represented in the first coordinate system.

[0342] In one example, the processor may determine whether the first polygon overlaps the second polygon based on a plurality of first vertices forming the first polygon and a plurality of second vertices forming the second polygon.

[0343] In one example, the processor may output at least one of the first bounding box or the second bounding box or any combination thereof by assigning a ratio at which the first polygon overlaps the second polygon to at least one of the first bounding box or the second bounding box or any combination thereof.

[0344] In one example, the processor may represent the first bounding box and the second bounding box in a second coordinate system, may obtain the first polygon by performing a cross product on two adjacent line segments among the first line segments sequentially connecting the plurality of first vertices in a first specified direction starting from a first center point of the first bounding box based on sequentially connecting the plurality of first vertices forming the first polygon, and may obtain the second polygon by performing a cross product on two adjacent line segments among the second line segments sequentially connecting the plurality of second vertices in a first specified direction starting from a second center point of the second bounding box based on sequentially connecting the plurality of second vertices forming the second polygon.

[0345] In one example, the second coordinate system may include a distance value indicating a distance between the sensor and each of the external objects, a first angle value indicating a horizontal angle between the sensor and each of the external objects, and a second angle value indicating a vertical angle between the sensor and each of the external objects. The processor may generate a first figure from the first polygon based on a maximum value of the first angle value, a minimum value of the first angle value, a maximum value of the second angle value, and a minimum value of the second angle value among the plurality of first vertices, may generate a second figure from the second polygon based on a maximum value of the first angle value, a minimum value of the first angle value, a maximum value of the second angle value, and a minimum value of the second angle value among the plurality of second vertices, and may determine whether the first polygon overlaps with the second polygon based on determining whether the first figure overlaps with the second figure.

[0346] In one example, the processor may identify at least one of the multiple third vertices forming the first figure, or the multiple fourth vertices forming the second figure, or any combination thereof, in the area where the first figure overlaps with the second figure based on the fact that the first figure overlaps with the second figure, may identify a reference vertex that is included in at least one of the multiple first vertices or the multiple second vertices, or any combination thereof, and the reference vertex is relatively closest to at least one of the multiple third vertices or the multiple fourth vertices, or any combination thereof, identified in the overlapping area, and may determine whether the first polygon overlaps with the second polygon based on the number of intersections of a half-straight line in a second specified direction starting from the reference vertex and overlapping at least one of the first polygon or the second polygon, or any combination thereof.

[0347] In one example, the processor may identify that the first polygon overlaps the second polygon based on the number of intersection points being less than or equal to a specified number.

[0348] In one example, the processor may identify that the first polygon does not overlap with the second polygon based on the number of intersection points being greater than a specified number.

[0349] In one example, if at least one of a plurality of first vertices is identified in an area where a first polygon overlaps with a second polygon, and a plurality of second vertices are not identified in the overlapping area, the processor may identify an intersection between the first polygon and the second polygon based on the first overlapping vertex identified in the overlapping area among the plurality of first vertices and a different vertex connected to the first overlapping vertex.

[0350] In one example, if at least one of a plurality of first vertices and at least one of a plurality of second vertices are identified in an area where the first polygon overlaps with the second polygon, the processor may identify an intersection between the first polygon and the second polygon based on the first overlapping vertex identified in the overlapping area among the plurality of first vertices, a different vertex connected to the first overlapping vertex, a second overlapping vertex identified in the overlapping area among the plurality of second vertices, and a different vertex connected to the second overlapping vertex.

[0351] In one example, the processor may identify a third polygon that is different from both the first polygon and the second polygon based on identifying that the first polygon overlaps with the second polygon, and may determine whether the third polygon overlaps with at least one of the first polygon or the second polygon or any combination thereof.

[0352] In one example, the processor may identify a neighboring polygon corresponding to an external object relatively close to the sensor from the first polygon and the second polygon based on identifying that the first polygon overlaps with the second polygon, may calculate a first area of ​​the neighboring polygon and a second area of ​​an area where the first polygon overlaps with the second polygon, and may identify a ratio of overlap between the first polygon and the second polygon based on the first area and the second area.

[0353] In one example, the sensor may include at least one of a light detection and ranging (LiDAR), a time of flight (ToF) sensor, a structured light sensor, an ultrasonic sensor, an infrared sensor, or an optical distance sensor, or a combination thereof.

[0354] According to an example of the present disclosure, a vehicle control method may include: obtaining, by a processor, at least two polygons corresponding to at least two bounding boxes based on representing at least two bounding boxes in a second coordinate system, the at least two bounding boxes being in a bounding box and represented in a first coordinate system, the bounding boxes respectively corresponding to bounding boxes of external objects and represented in the first coordinate system; determining whether the at least two polygons overlap with each other based on a plurality of vertices forming the at least two polygons, and outputting at least one of the at least two bounding boxes based on the plurality of vertices forming the at least two polygons, and assigning a ratio at which the at least two polygons overlap with each other to the at least two bounding boxes.

[0355] According to an example, the vehicle control method may further include: obtaining a first polygon corresponding to the first bounding box and a second polygon corresponding to the second bounding box based on a first bounding box corresponding to the first external object and a second bounding box corresponding to the second external object represented in the bounding box in the second coordinate system, where the bounding box is represented in the first coordinate system.

[0356] According to an example, the vehicle control method may further include determining whether the first polygon overlaps with the second polygon based on a plurality of first vertices forming the first polygon and a plurality of second vertices forming the second polygon.

[0357] According to an example, the vehicle control method may further include outputting at least one of the first bounding box or the second bounding box or any combination thereof by assigning a ratio at which the first polygon overlaps the second polygon to at least one of the first bounding box or the second bounding box or any combination thereof.

[0358] According to an example, the vehicle control method may also include: representing a first bounding box and a second bounding box in a second coordinate system, obtaining a first polygon by performing a cross product on two adjacent line segments in the first line segments sequentially connecting the multiple first vertices in a first specified direction starting from a first center point of the first bounding box, and obtaining a second polygon by performing a cross product on two adjacent line segments in the second line segments sequentially connecting the multiple second vertices in a first specified direction starting from a second center point of the second bounding box.

[0359] In one example, the second coordinate system may include a distance value indicating a distance between the sensor and each of the external objects, a first angle value indicating a horizontal angle between the sensor and each of the external objects, and a second angle value indicating a vertical angle between the sensor and each of the external objects. The vehicle control method may further include: generating a first figure from a first polygon based on a maximum value of the first angle value, a minimum value of the first angle value, a maximum value of the second angle value, and a minimum value of the second angle value among a plurality of first vertices; generating a second figure from a second polygon based on a maximum value of the first angle value, a minimum value of the first angle value, a maximum value of the second angle value, and a minimum value of the second angle value among a plurality of second vertices; and determining whether the first polygon overlaps with the second polygon based on determining whether the first figure overlaps with the second figure.

[0360] Although the present disclosure has been described above with reference to the examples and drawings, the present disclosure is not limited thereto, but various modifications and variations may be made by those skilled in the art without departing from the spirit and scope of the present disclosure as claimed in the following claims.

[0361] Therefore, the examples of the present disclosure are provided to explain the spirit and scope of the present disclosure, rather than to limit them, and therefore the spirit and scope of the present disclosure are not limited by the examples. The scope of the present disclosure should be interpreted based on the appended claims, and all technical ideas within the scope equivalent to the claims should be included in the scope of the present disclosure.

[0362] The above description is merely an example of the technical idea of ​​the present disclosure, and those skilled in the art can make various modifications and changes without departing from the essential characteristics of the present disclosure.

[0363] Therefore, the examples of the present disclosure are not intended to limit but to explain the technical ideas of the present disclosure, and the scope and spirit of the present disclosure are not limited by the above examples. The scope of protection of the present disclosure should be interpreted by the appended claims, and all equivalents thereof should be interpreted as included within the scope of the present disclosure.

[0364] The present technology may determine a ratio at which the second external object is obscured by the first external object.

[0365] In addition, the present technology can determine whether the external object is obscured by using data indicating the distance between the vehicle and the external object. If the external object is obscured, then the ratio of the external object relatively far from the vehicle to the external object relatively close to the vehicle can be determined, and the obscuration ratio can be used to generate a data set for training a neural network model operating in the vehicle's autonomous driving mode or driving assistance mode.

[0366] Furthermore, various effects directly or indirectly understood through the present disclosure can be provided.

[0367] Although the present disclosure is described above with reference to the examples and drawings, the present disclosure is not limited thereto, but various modifications and variations may be made by those skilled in the art without departing from the spirit and scope of the present disclosure as claimed in the following claims.

Claims

1. A device for controlling automatic driving of a vehicle, the device comprising: a sensor configured to: obtain a plurality of bounding boxes represented in a first coordinate system, wherein each of the plurality of bounding boxes is associated with a respective one of a plurality of external objects; and A processor configured to: Obtain at least two polygons expressed in a second coordinate system, wherein the at least two polygons correspond to at least two bounding boxes of a plurality of bounding boxes expressed in the first coordinate system; determining whether the at least two polygons overlap with each other based on a plurality of vertices forming the at least two polygons; outputting at least one of the at least two bounding boxes based on a ratio at which the at least two polygons overlap each other; as well as Based on the at least one of the outputted at least two bounding boxes, a signal is generated indicating that the at least two polygons overlap each other.

2. The apparatus of claim 1 , wherein the processor is configured to: A first polygon and a second polygon expressed in the second coordinate system are obtained, wherein the first polygon and the second polygon correspond to a first bounding box and a second bounding box, respectively, among the plurality of bounding boxes expressed in the first coordinate system.

3. The apparatus of claim 2, wherein the processor is configured to: Based on a plurality of first vertices forming the first polygon and a plurality of second vertices forming the second polygon, it is determined whether the first polygon overlaps with the second polygon.

4. The apparatus of claim 3, wherein the processor is configured to: At least one of the first bounding box or the second bounding box is output by assigning a ratio at which the first polygon overlaps with the second polygon to at least one of the first bounding box or the second bounding box.

5. The apparatus of claim 2, wherein the processor is configured to: expressing the first bounding box and the second bounding box in the second coordinate system; The first polygon is obtained by performing a cross product on first two adjacent line segments, wherein the first two adjacent line segments are from first line segments sequentially connecting a plurality of first vertices, and wherein, The plurality of first vertices form the first polygon in a first specified direction starting from a first center point of the first bounding box; and The second polygon is obtained by performing a cross product on second two adjacent line segments, wherein the second two adjacent line segments are from second line segments sequentially connecting a plurality of second vertices, and wherein the plurality of second vertices form the second polygon in a first specified direction starting from a second center point of the second bounding box.

6. The apparatus of claim 3, wherein the second coordinate system comprises: a distance value indicating a distance between the sensor and each of the plurality of external objects, a first angle value indicating a horizontal angle between the sensor and each of the plurality of external objects, and a second angle value indicating a vertical angle between the sensor and each of the plurality of external objects, and The processor is further configured to: generating a first figure from a first polygon formed by the plurality of first vertices based on a maximum value of the first angle value, a minimum value of the first angle value, a maximum value of the second angle value, and a minimum value of the second angle value; generating a second figure from a second polygon formed by the plurality of second vertices based on a maximum value of the first angle value, a minimum value of the first angle value, a maximum value of the second angle value, and a minimum value of the second angle value; as well as Based on determining whether the first graphic overlaps with the second graphic, determining whether the first polygon overlaps with the second polygon.

7. The apparatus of claim 6, wherein the processor is configured to: Based on the overlap of the first graphic and the second graphic in the overlap area, at least one of the plurality of third vertices or the plurality of fourth vertices in the overlap area is determined, wherein: The plurality of third vertices form the first figure, and the plurality of third vertices form the second figure; identifying a reference vertex, wherein the reference vertex is included in at least one of the plurality of first vertices or the plurality of second vertices, and wherein the reference vertex is closest to at least one of the plurality of third vertices or the plurality of fourth vertices in the overlap region; as well as Whether the first polygon overlaps with the second polygon is determined based on the number of intersection points where a half-line in a second specified direction from the reference vertex overlaps with at least one of the first polygon or the second polygon.

8. The apparatus of claim 7, wherein the processor is configured to: Based on the number of intersections meeting a specified number, it is determined that the first polygon overlaps with the second polygon.

9. The apparatus of claim 7, wherein the processor is configured to: Based on the number of intersections not satisfying a specified number, it is determined that the first polygon does not overlap with the second polygon.

10. The apparatus of claim 3, wherein the processor is configured to: An intersection point between the first polygon and the second polygon is determined based on a first overlapping vertex identified in an overlapping area among the plurality of first vertices and a different vertex connected to the first overlapping vertex, wherein At least one of the plurality of first vertices is identified in an overlapping region where the first polygon overlaps the second polygon, and wherein the plurality of second vertices are not identified in the overlapping region.

11. The apparatus of claim 3, wherein the processor is configured to: An intersection point between the first polygon and the second polygon is determined based on a first overlapping vertex identified in an overlapping region among the plurality of first vertices, a different vertex connected to the first overlapping vertex, a second overlapping vertex identified in an overlapping region among the plurality of second vertices, and a different vertex connected to the second overlapping vertex, wherein At least one of the plurality of first vertices and at least one of the plurality of second vertices are identified in an overlapping region where the first polygon overlaps the second polygon.

12. The apparatus of claim 3, wherein the processor is configured to: determining a third polygon different from both the first polygon and the second polygon based on the first polygon overlapping the second polygon; and A determination is made as to whether the third polygon overlaps with at least one of the first polygon or the second polygon.

13. The apparatus of claim 3 , wherein the processor is configured to: Based on the overlap between the first polygon and the second polygon, a neighboring polygon corresponding to the external object is determined, wherein, the first polygon and the second polygon correspond to a first external object and a second external object, respectively, and wherein the external object is closer to the sensor than the first external object or the second external object; determining a first area of ​​the adjacent polygon and a second area of ​​an overlapping region where the first polygon overlaps the second polygon; as well as Based on the first area and the second area, a ratio at which the first polygon overlaps the second polygon is determined.

14. The device of claim 1, wherein the sensor comprises at least one of a light detection and ranging (LiDAR), a time-of-flight (ToF) sensor, a structured light sensor, an ultrasonic sensor, an infrared sensor, or an optical distance sensor.

15. A method for controlling autonomous driving of a vehicle, executed by a processor, the method comprising the steps of: obtaining at least two polygons represented in a second coordinate system, wherein the at least two polygons correspond to at least two bounding boxes of a plurality of bounding boxes represented in the first coordinate system, and wherein each of the plurality of bounding boxes is associated with a respective one of a plurality of external objects; determining whether the at least two polygons overlap with each other based on a plurality of vertices forming the at least two polygons; outputting at least one of the at least two bounding boxes based on a ratio at which the at least two polygons overlap each other; as well as Based on at least one of the outputted at least two bounding boxes, a signal is generated indicating that the at least two polygons overlap each other.

16. The method according to claim 15, further comprising the steps of: A first polygon and a second polygon expressed in the second coordinate system are obtained, wherein the first polygon and the second polygon correspond to a first bounding box and a second bounding box, respectively, among the plurality of bounding boxes expressed in the first coordinate system.

17. The method according to claim 16, further comprising the steps of: Based on a plurality of first vertices forming the first polygon and a plurality of second vertices forming the second polygon, it is determined whether the first polygon overlaps with the second polygon.

18. The method according to claim 17, further comprising the steps of: At least one of the first bounding box or the second bounding box is output by assigning a ratio at which the first polygon overlaps with the second polygon to at least one of the first bounding box or the second bounding box.

19. The method according to claim 16, further comprising the steps of: expressing the first bounding box and the second bounding box in the second coordinate system; Obtaining the first polygon by performing a cross product on first two adjacent line segments, wherein the first two adjacent line segments are from first line segments sequentially connecting a plurality of first vertices, wherein the plurality of first vertices form the first polygon in a first specified direction starting from a first center point of the first bounding box; and The second polygon is obtained by performing a cross product on second two adjacent line segments, wherein the second two adjacent line segments are from second line segments sequentially connecting a plurality of second vertices, and wherein the plurality of second vertices form the second polygon in a first specified direction starting from a second center point of the second bounding box.

20. The method of claim 15, wherein the second coordinate system comprises: a distance value indicating a distance between the sensor and each of the plurality of external objects, a first angle value indicating a horizontal angle between the sensor and each of the plurality of external objects, and a second angle value indicating a vertical angle between the sensor and each of the plurality of external objects, the method further comprising the steps of: generating a first figure from a first polygon formed by a plurality of first vertices based on a maximum value of the first angle value, a minimum value of the first angle value, a maximum value of the second angle value, and a minimum value of the second angle value; generating a second figure from a second polygon formed by a plurality of second vertices based on a maximum value of the first angle value, a minimum value of the first angle value, a maximum value of the second angle value, and a minimum value of the second angle value; and Based on determining whether the first graphic overlaps with the second graphic, determining whether the first polygon overlaps with the second polygon.

Citation Information

Patent Citations

  • Communication methods and devices

    KR1020240037286A