Device for controlling a vehicle and a corresponding method

The vehicle control system addresses the issue of mismatched lidar data points by using a processor to project and match points between sensors, ensuring accurate object identification and preventing accidents.

DE102024105243A1Pending Publication Date: 2025-03-13HYUNDAI MOTOR CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
DE102024105243
Authority / Receiving Office
DE · DE
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-09-13
Filing Date
2024-02-26
Publication Date
2025-03-13

AI Technical Summary

Technical Problem

Existing vehicle control systems using multiple lidars struggle to accurately identify external objects due to mismatched data points from different sensors, leading to incorrect object size, direction, or route determination, which can result in accidents.

Method used

A device comprising a first sensor, a second sensor, and a processor that projects data points from both sensors onto a defined axis system, determines subsets of points, forms polygons, and calculates a vector to assess matching points between sensors, thereby adjusting the distance measurements and outputting a signal for accurate object identification.

Benefits of technology

The solution ensures accurate identification of external objects by matching data points from multiple lidars, preventing accidents and ensuring precise route determination for autonomous driving systems.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

A device may include a first sensor; a second sensor; and a processor configured to: obtain data related to a moving object in front of the vehicle traveling along a first axis; project points from the data onto a plane formed by a second axis perpendicular to the first axis and a third axis perpendicular to the first and second axes; determine first points obtained from the first sensor and second points obtained from the second sensor; obtain a vector indicative of a distance between the first subset of the first points and the second subset of the second points; determine, based on the vector, whether the first points match the second points; adjust a distance between the plurality of first points and the plurality of second points based on the determination of whether the first points match the second points;and output a signal indicating the set distance.;
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present invention relates to a vehicle control device and method, and more particularly to a technology for detecting an external object using a plurality of sensors (e.g., LiDARs). BACKGROUND

[0002] Various studies are being and have been conducted to identify an external object using various sensors to assist a host vehicle in driving.

[0003] In particular, the external object can be identified using sensors (e.g., Light Detection and Ranging (LiDAR)) while the host vehicle is driving in an active mode for driver assistance systems or in an autonomous driving mode.

[0004] However, it is assumed that the host vehicle includes a plurality of sensors (e.g., LiDARs). However, if a plurality of points obtained by the plurality of LiDARs do not match with each other, the external object may be misidentified. If the external object is misidentified, the direction of travel of the external object or the size of the external object may be misidentified, resulting in the host vehicle's travel route being incorrectly determined or an accident occurring. SUMMARY

[0005] According to the present invention, an apparatus for controlling a vehicle may comprise a first sensor; a second sensor; and a processor, the processor being configured to: obtain data sets from the first sensor and the second sensor relating to a moving object in front of the vehicle traveling along a first axis; project a plurality of points included in the data sets onto a plane formed by a second axis and a third axis, the plurality of points indicating a rear side of the moving object, the second axis perpendicular to the first axis lying in a horizontal plane, and the third axis perpendicular to the first axis and the second axis lying in a vertical plane;based on the projection, determine a plurality of first points from the plurality of points obtained by the first sensor and a plurality of second points from the plurality of points obtained by the second sensor; determine a first subset of points included in the plurality of first points and a second subset of points included in the plurality of second points; obtain a first polygon based on the first subset; obtain a second polygon based on the second subset; obtain a vector indicating a distance between the first subset and the second subset based on the points of the first polygon and the second polygon; determine, based on the vector, whether the plurality of first points coincide with the plurality of second points;based on the determination of whether the plurality of first points agree with the plurality of second points, adjust a distance between the plurality of first points and the plurality of second points; and output a signal indicating the adjusted distance.;

[0006] The apparatus, wherein the processor is configured to obtain the first polygon and the second polygon based on the moving object identified at a distance from the vehicle, the distance being greater than or equal to a first threshold distance and less than or equal to a second threshold distance that exceeds the first threshold distance.

[0007] The device, wherein the first sensor is configured to detect an external object in a first area, wherein the second sensor is configured to detect the external object in a second area different from the first area, and wherein the processor is configured to obtain the first polygon and the second polygon based on the moving object identified in an area overlapping the first area and the second area.

[0008] The apparatus, wherein the processor is configured to obtain the first polygon and the second polygon based on the moving object moving in front of the vehicle.

[0009] The apparatus of claim 1, wherein the processor is configured to identify the plurality of first points and the plurality of second points based on the examination of the plurality of points.

[0010] The apparatus of claim 1, wherein the processor is configured to: determine first minimum values ​​and first maximum values ​​of first points on first layers, each layer of the first layers being formed from a subset of points of the plurality of first points along the second axis; determine first intermediate values ​​of first intermediate points on a topmost layer of the first layers and a bottommost layer of the first layers; obtain the first polygon by connecting the first minimum values, the first maximum values, and the first intermediate values; determine second minimum values ​​and second maximum values ​​of second points on second layers, each layer of the second layers being formed from a subset of points of the plurality of second points along the second axis;determining second intermediate values ​​of second intermediate points on a topmost layer of the second layers and a bottommost layer of the second layers; and obtaining the second polygon by connecting the second minimum values, the second maximum values, and the second intermediate values;

[0011] The apparatus, wherein the processor is configured to: obtain the vector based on one of the first minimum values ​​of the first points on a first of the first layers, and one of the second minimum values ​​of the second points on a first of the second layers, wherein the first of the second layers has the same order as the first of the first layers; obtain the vector based on one of the first maximum values ​​of the first points on a second of the first layers, and one of the second maximum values ​​of the second points on a second of the second layers, wherein the second of the second layers has the same order as the second of the first layers; obtain the vector based on one of the first intermediate values ​​of the first intermediate points on the topmost layer of the first layers, and one of the second intermediate values ​​of the second intermediate points on the topmost layer of the second layers;or to obtain the vector based on one of the first intermediate values ​​of the first intermediate points on the lowest layer of the first layers, and one of the second intermediate values ​​of the second intermediate points on the lowest layer of the second layers.;

[0012] The apparatus, wherein the processor is configured to: determine that the plurality of first points do not coincide with the plurality of second points in a yaw direction based on identifying a second axis component in the obtained vector; and adjust the distance between the plurality of first points and the plurality of second points based on the second axis component in the obtained vector.

[0013] The apparatus, wherein the processor is configured to: determine that the plurality of first points do not coincide with the plurality of second points in a tilt direction based on identifying a third axis component in the obtained vector; and adjust the distance between the plurality of first points and the plurality of second points based on the third axis component in the obtained vector.

[0014] The device, wherein the plane comprises a first plane, and wherein the processor is configured to: obtain, based on sensor data from the first sensor and the second sensor, a top point and a bottom point on a second plane formed by the first axis and the third axis and different from the first plane; determine that the plurality of first points do not coincide with the plurality of second points in a slope direction based on identifying at least one of the top point, the bottom point, or a third axis component of the obtained vector; and adjust the distance between the plurality of first points and the plurality of second points based on at least one of the top point, the bottom point, or the third axis component of the obtained vector.

[0015] According to the present invention, a method for controlling a vehicle may comprise obtaining data sets from a first sensor and a second sensor relating to a moving object in front of the vehicle traveling along a first axis; projecting a plurality of points included in the data sets onto a plane formed by a second axis and a third axis, the plurality of points indicating a rear side of the moving object, the second axis perpendicular to the first axis lying in a horizontal plane, and the third axis perpendicular to the first axis and the second axis lying in a vertical plane; determining a plurality of first points of the plurality of points obtained from the first sensor based on the projection and a plurality of second points of the plurality of points obtained from the second sensor;determining a first subset of points included in the plurality of first points and a second subset of points included in the plurality of second points; obtaining a first polygon based on the first subset; obtaining a second polygon based on the second subset; obtaining a vector based on points of the first polygon and the second polygon that indicates a distance between the first subset and the second subset; determining, based on the vector, whether the plurality of first points match the plurality of second points; adjusting a distance between the plurality of first points and the plurality of second points based on the determination of whether the plurality of first points match the plurality of second points; and outputting a signal that indicates the adjusted distance.

[0016] The method may further comprise obtaining the first polygon and the second polygon based on the moving object identified at a distance from the vehicle, the distance being greater than or equal to a first threshold distance and less than or equal to a second threshold distance that exceeds the first threshold distance.

[0017] The method may further comprise detecting an external object using the first sensor in a first area; detecting the external object using the second sensor in a second area different from the first area; and obtaining the first polygon and the second polygon based on the moving object identified in an area overlapping the first area and the second area.

[0018] The method may further comprise obtaining the first polygon and the second polygon based on the moving object moving in front of the vehicle.

[0019] The method may further comprise identifying the plurality of first points and the plurality of second points based on the examination of the plurality of points.

[0020] The method may further comprise determining first minimum values ​​and first maximum values ​​of first points on first layers, each layer of the first layers being formed from a subset of points of the plurality of first points along the second axis; determining first intermediate values ​​of first intermediate points on a topmost layer of the first layers and a bottommost layer of the first layers; obtaining the first polygon by connecting the first minimum values, the first maximum values, and the first intermediate values; determining second minimum values ​​and second maximum values ​​of second points on second layers, each layer of the second layers being formed from a subset of points of the plurality of second points along the second axis; determining second intermediate values ​​of second intermediate points on a topmost layer of the second layers and a bottommost layer of the second layers;and obtaining the second polygon by connecting the second minimum values, the second maximum values ​​and the second intermediate values;

[0021] The method may further comprise obtaining the vector based on one of the first minimum values ​​of the first points on a first of the first layers and one of the second minimum values ​​of the second points on a first of the second layers, wherein the first of the second layers has the same order as the first of the first layers; obtaining the vector based on one of the first maximum values ​​of the first points on a second of the first layers and one of the second maximum values ​​of the second points on a second of the second layers, wherein the second of the second layers has the same order as the second of the first layers; obtaining the vector based on one of the first intermediate values ​​of the first intermediate points on the topmost layer of the first layers and one of the second intermediate values ​​of the second intermediate points on the topmost layer of the second layers;or obtaining the vector based on one of the first intermediate values ​​of the first intermediate points on the lowest layer of the first layers and one of the second intermediate values ​​of the second intermediate points on the lowest layer of the second layers;

[0022] The method may further comprise determining that the plurality of first points do not coincide with the plurality of second points in a yaw direction based on identifying a second axis component in the obtained vector; and adjusting the distance between the plurality of first points and the plurality of second points based on the second axis component in the obtained vector.

[0023] The method may further comprise determining that the plurality of first points do not coincide with the plurality of second points in a tilt direction based on identifying a third-axis component in the obtained vector; and adjusting the distance between the plurality of first points and the plurality of second points based on the third-axis component in the obtained vector.

[0024] The method, wherein the plane comprises a first plane, and wherein the method may further comprise obtaining a top point and a bottom point on a second plane formed by the first axis and the third axis and different from the first plane based on sensor data of the first sensor and the second sensor; determining that the plurality of first points do not coincide with the plurality of second points in a tilt direction based on identifying at least one of the top point, the bottom point, or a third axis component of the obtained vector; and adjusting the distance between the plurality of first points and the plurality of second points based on at least one of the top point, the bottom point, or the third axis component of the obtained vector. BRIEF DESCRIPTION OF THE DRAWINGS

[0025] The above and other objects, features and advantages of the present invention will become more apparent from the following detailed description taken in conjunction with the accompanying drawings. Fig. 1 shows an example of a block diagram of a vehicle control device according to an example of the present invention; Fig. 2 shows an example in which an external vehicle is identified by LiDAR included in a vehicle control device according to an example of the present invention; Fig. 3 shows an example of a plurality of points representing the rear back of an external vehicle according to an example of the present invention; Fig. 4 shows an example of determining a representative point from a plurality of points showing a rear side of an external vehicle according to an example of the present invention; Fig. 5 shows an example of obtaining a vector by determining whether representative points coincide with each other according to an example of the present invention; Fig. 6 shows an example of determining whether the inclination directions between a plurality of points match, according to an example of the present invention; Fig. 7 shows an example of a flowchart for a vehicle control method according to an example of the present invention; Fig. 8 shows an example of a flowchart for a vehicle control method according to an example of the present invention; and Fig. 9 shows an example of a computer system including a vehicle control device according to an example of the present invention. DETAILED DESCRIPTION

[0026] Hereinafter, some examples of the present invention will be described in detail with reference to the accompanying drawings. Regarding the reference numerals of components in each drawing, it should be noted that the same components have the same reference numerals even if they are shown in a different drawing. Furthermore, in describing the examples of the present invention, detailed descriptions associated with well-known functions or configurations will be omitted if they might unnecessarily obscure the subject matter of the present invention.

[0027] In describing elements of an example of the present invention, terms such as first, second, A, B, (a), or (b) may be used herein. These terms are used only to distinguish one element from another and do not limit the corresponding elements, regardless of their type, order, or priority. Furthermore, unless otherwise defined, all terms used herein, including technical and scientific terms, are to be interpreted as is customary in the relevant art to which the present invention belongs.It is to be understood that the terms used herein should be construed to have a meaning consistent with their meaning in the context of the present invention and the relevant prior art, and that they should not be construed in an idealized or overly formal sense unless expressly so defined herein.

[0028] In the following, various examples of the present invention are described with reference to the Fig. 1 to 9 described in detail.

[0029] Fig. 1 shows an example of a block diagram of a vehicle control device according to an example of the present invention.

[0030] Referring to Fig. 1, a vehicle control device 100 according to an example of the present invention can be implemented inside or outside a vehicle, and some of the components included in the vehicle control device 100 can be implemented inside or outside the vehicle. The vehicle control device 100 can be integrated into internal control units of a vehicle and can be implemented with a separate device for connecting to control units of the vehicle by means of a separate connection device. The vehicle control device 100 can also include further Fig. 1 may include components not shown.

[0031] According to one example of the present invention, the vehicle control device 100 may include a processor 110, a first LiDAR 121, and a second LiDAR 123. The processor 110, the first LiDAR 121, or the second LiDAR 123 may be electrically or operatively connected to each other by an electronic component including a bus system.

[0032] According to one example, the vehicle control device 100 may further include a memory 130. The processor 110, the first LiDAR 121, the second LiDAR 123, or the memory 130 may be electrically or operatively connected to each other by electronic components, including a bus system.

[0033] Hereinafter, the fact that pieces of hardware are operatively coupled may include the fact that a direct or indirect connection is established between the pieces of hardware, either wired or wireless, such that the second hardware is controlled by the first hardware through pieces of the first hardware. Although various blocks are shown, an example is not limited to these.

[0034] Some of the Fig. 1 may be included in a single integrated circuit, including a system-on-a-chip (SoC). The type or number of hardware included in the vehicle control device 100 is not limited to the hardware shown in Fig. 1. For example, the vehicle control device 100 may only include some of the Fig. 1 include parts of the hardware shown.

[0035] According to one example, the vehicle control device 100 may include hardware for processing data based on one or a plurality of instructions. The data processing hardware may include the processor 110. The data processing hardware may include, for example, an arithmetic logic unit (ALE), a floating-point unit (GKE), a field-programmable gate array (FPGA), a central processing unit (CPU), and / or an application processor (AP). The processor 110 may have the structure of a single-core processor or the structure of a multi-core processor with a dual-core, quad-core, sextuple-core, or octuple-core.

[0036] According to one example, the vehicle control device 100 may include a plurality of LiDARs 120, including at least one of the first LiDAR 121, the second LiDAR 123, or any combination thereof. For example, the first LiDAR 121 may obtain data sets from identifying objects in the environment of the vehicle control device 100.

[0037] For example, the first LiDAR 121 may identify at least a location of a surrounding object, a direction of movement of the surrounding object, a speed of the surrounding object, or any combination thereof based on a laser pulse signal emitted by the first LiDAR 121, reflected by the surrounding object, and returned. For example, the first LiDAR 121 may be positioned in front of a host vehicle facing to the right and may identify an external object within a first specific area.

[0038] For example, the second LiDAR 123 may identify at least a location of the surrounding object, a direction of movement of the surrounding object, a speed of the surrounding object, or any combination thereof based on a laser pulse signal emitted by the second LiDAR 123, reflected by the surrounding object, and returned. For example, the second LiDAR 123 may be positioned in front of the host vehicle facing to the left and may identify an external object in a second specific area.

[0039] For ease of description, the plurality of LiDARs 120 include the first LiDAR 121 and the second LiDAR 123, but an example is not limited thereto. For example, the plurality of LiDARs 120 may include another LiDAR in addition to or alternatively to the first LiDAR 121 and the second LiDAR 123.

[0040] According to one example, the vehicle control device 100 may include a memory 130. The memory 130 may, for example, include a hardware component for storing data or instructions to be input or output to the processor 110 of the vehicle control device 100. The memory 130 may, for example, include volatile memory, including random access memory (RAM), or non-volatile memory, including read-only memory (ROM).

[0041] The volatile memory may, for example, comprise at least one of dynamic RAM (DRAM), static RAM (SRAM), cache RAM, pseudo-SRAM (PSRAM), or any combination thereof. The non-volatile memory may, for example, comprise at least one of programmable ROM (PROM), erasable PROM (EPROM), electrically erasable PROM (EEPROM), flash memory, a hard disk, a compact disk, a solid-state drive (SSD), an embedded multimedia card (eMMC), or any combination thereof.

[0042] According to one example, during travel of the host vehicle, the processor 110 may obtain data sets related to an external vehicle different from the host vehicle and traveling in front of the host vehicle based on the plurality of LiDARs 120, including the first LiDAR 121 and the second LiDAR 123. For example, the processor 110 may obtain data sets related to an external vehicle based on identifying an external vehicle traveling directly in front of the host vehicle. The data sets may include a plurality of points based on light reflected from an external vehicle in a three-dimensional virtual coordinate system based on an x-axis, a y-axis, and a z-axis.

[0043] According to one example, processor 110 may project a plurality of points included in the data sets onto a plane formed by the second axis and the third axis between the first axis, the second axis, and the third axis. For example, a plurality of points may include a plurality of points corresponding to the rear of an external vehicle traveling just in front of the host vehicle.

[0044] The first axis may, for example, include the x-axis. The second axis may, for example, include the y-axis. The third axis may, for example, include the z-axis. The first axis, the second axis, and the third axis may, for example, be perpendicular to each other and intersect each other starting from an origin point. The first axis, the second axis, and the third axis are not limited to the examples above. For ease of description, the first axis is referred to as the x-axis, the second axis as the y-axis, and the third axis as the z-axis.

[0045] According to one example, the processor 110 may obtain the plurality of points corresponding to the rear of the external vehicle based on the fact that the external vehicle is identified at a distance from the host vehicle that is greater than or equal to a first determined distance and less than or equal to a second determined distance that exceeds the first determined distance.

[0046] According to one example, the processor 110 may obtain the plurality of points corresponding to the rear of the external vehicle based on identifying the external vehicle in an area where a first specific area in which the external object is identified by the first LiDAR 121 and a second specific area in which the external object is identified by the second LiDAR 123 overlap each other.

[0047] According to an example where the external vehicle is traveling just in front of the host vehicle, the processor 110 may obtain a plurality of points corresponding to the rear of the external vehicle.

[0048] According to one example, the processor 110 may perform at least one of the following operations: a representative point obtaining operation, a polygon obtaining operation, a vector obtaining operation, or any combination thereof based on obtaining the plurality of points corresponding to the rear of the external vehicle.

[0049] According to one example, the processor 110 may obtain the plurality of points corresponding to the rear of the external vehicle based on the fact that the external vehicle is currently traveling in front of the host vehicle at a distance from the host vehicle between the first predetermined distance and the second predetermined distance while the host vehicle is currently traveling on a flat road on a sunny day, and the external object is identified in the overlapping area in which both the first LiDAR 121 and the second LiDAR 123 identify the external object.

[0050] According to one example, the processor 110 may sample the plurality of points. For example, the processor 110 may separate and identify a plurality of first points obtained from the first LiDAR 121 and a plurality of second points obtained from the second LiDAR 123 based on the inspection of the plurality of points.

[0051] For example, the processor 110 may identify at least one of the plurality of first points obtained by the first LiDAR 121, the plurality of second points obtained by the second LiDAR 123, or any combination thereof among the plurality of points corresponding to the rear of an external vehicle based on the projection of the plurality of points included in the data sets onto a plane formed by the y-axis and the z-axis from the x-axis, the y-axis, and the z-axis. For example, the processor 110 may identify the plurality of first points obtained by the first LiDAR 121 and the plurality of second points obtained by the second LiDAR 123.

[0052] According to one example, processor 110 may identify first representative points based on the plurality of first points. For example, processor 110 may obtain the first representative points corresponding to the outermost points included in the plurality of first points. Processor 110 may create a first polygon from the connection of the first representative points.

[0053] For example, in layers at each of which the plurality of first points are identified, the processor 110 may identify at least one of the first minimum values ​​on the y-axis, the first maximum values ​​on the y-axis, or any combination thereof. For example, in at least one of an upper layer, a lower layer, or any combination thereof at each of which the plurality of first points are identified, the processor 110 may identify first intermediate values ​​of the plurality of first points. The processor 110 may obtain the first polygon based on the first minimum values ​​based on the y-axis, the first maximum values ​​based on the y-axis, and the first intermediate values ​​of the upper layer and the lower layer.For example, the processor 110 may obtain the first polygon from connecting the first minimum values ​​of the y-axis, the first maximum values ​​of the y-axis, and the first intermediate values ​​of the upper layer and the lower layer.

[0054] According to one example, processor 110 may identify second representative points based on the plurality of second points. For example, processor 110 may obtain the second representative points corresponding to the outermost points included in the plurality of second points. Processor 110 may obtain a second polygon from the connection of the second representative points.

[0055] For example, in layers at each of which the plurality of second points are identified, the processor 110 may identify at least one of the following values: second minimum values ​​on the y-axis, second maximum values ​​on the y-axis, or any combination thereof. For example, in at least one layer of an upper layer, a lower layer, or any combination thereof at each of which the plurality of second points are identified, the processor 110 may identify second intermediate values ​​of the plurality of second points. The processor 110 may obtain the second polygon based on the second minimum values ​​based on the y-axis, the second maximum values ​​based on the y-axis, and the second intermediate values ​​of the upper layer and the lower layer.For example, the processor 110 may obtain the second polygon from connecting the second minimum values ​​on the y-axis, the second maximum values ​​on the y-axis, and the second intermediate values ​​of the upper layer and the lower layer.

[0056] According to one example, the processor 110 may obtain the first polygon corresponding to the first representative points and the second polygon corresponding to the second representative points by the first representative points corresponding to the outermost points of the plurality of first points and the second representative points corresponding to the outermost points of the plurality of second points. Based on obtaining the first polygon and the second polygon, the processor 110 may determine a vector indicating the distance between the first representative points and the second representative points by using all or part of the first representative points and the second representative points included in the first polygon and the second polygon.

[0057] For example, the processor 110 may apply an iterative closest point (ICP) algorithm to the first representative points and the second representative points. The processor 110 may obtain a vector indicating the distance between the first representative points and the second representative points by applying the ICP algorithm to the first representative points and the second representative points included in the first polygon and the second polygon.

[0058] According to one example, the processor 110 may identify one of the first minimum values ​​included in one of the layers including the plurality of first points. The processor 110 may obtain the vector indicating the distance between the first representative points and the second representative points based on the one of the first minimum values ​​included in one of the layers including the plurality of first points and one of the second maximum values ​​included in a layer of the same order.

[0059] According to one example, the processor 110 may identify one of the first maximum values ​​included in one of the layers including the plurality of first points. The processor 110 may obtain a vector indicating the distance between the first representative points and the second representative points based on one of the first maximum values ​​included in one of the layers including the plurality of first points and one of the second maximum values ​​included in a layer of the same order.

[0060] According to one example, the processor 110 may obtain the vector indicating the distance between first representative points and second representative points based on one of the first intermediate values ​​included in the upper layer on which the plurality of first points are identified and one of the second intermediate values ​​included in the upper layer on which the plurality of second points are identified.

[0061] According to one example, the processor 110 may obtain the vector indicating the distance between first representative points and second representative points based on one of the first intermediate values ​​included in the lower layer on which the plurality of first points are identified and one of the second intermediate values ​​included in the lower layer on which the plurality of second points are identified.

[0062] According to one example, processor 110 may determine from the obtained vector whether the plurality of first points coincide with the plurality of second points. Based on identifying a y-axis component in the obtained vector, processor 110 may identify that the plurality of first points and the plurality of second points do not coincide in a yaw direction. Processor 110 may correct the distance between the plurality of first points and the plurality of second points based on the y-axis component in the obtained vector.

[0063] According to one example, based on the obtained vector including the y-axis component, the processor 110 may determine that a mounting angle of at least one of the first LiDAR 121, the second LiDAR 123, or any combination thereof has been changed. Based on the obtained vector including the y-axis component, the processor 110 may determine that at least one of the first LiDAR 121, the second LiDAR 123, or any combination thereof is distorted in the yaw direction. The processor 110 may correct the distance between the plurality of first points and the plurality of second points based on the fact that at least one of the first LiDAR 121, the second LiDAR 123, or any combination thereof is distorted in the yaw direction.Alternatively or additionally, the processor 110 may reduce the credibility of data sets obtained from at least one of the first LiDAR 121, the second LiDAR 123, or any combination thereof based on the fact that at least one of the first LiDAR 121, the second LiDAR 123, or any combination thereof is distorted in the yaw direction.

[0064] According to one example, processor 110 may identify that the plurality of first points and the plurality of second points do not match each other in a tilt direction based on identifying a z-axis component in the obtained vector. Processor 110 may correct the distance between the plurality of first points and the plurality of second points based on a z-axis component in the obtained vector.

[0065] According to one example, based on the obtained vector including the z-axis component, the processor 110 may determine that the mounting angle of the first LiDAR 121, the second LiDAR 123, or any combination thereof has been changed. Based on the obtained vector including the z-axis component, the processor 110 may determine that at least one of the first LiDAR 121, the second LiDAR 123, or any combination thereof is distorted in the tilt direction. The processor 110 may correct the distance between the plurality of first points and the plurality of second points based on the fact that at least one of the first LiDAR 121, the second LiDAR 123, or any combination thereof is distorted in the tilt direction.Alternatively or additionally, the processor 110 may reduce the credibility of data sets obtained from at least one of the first LiDAR 121, the second LiDAR 123, or any combination thereof based on the fact that at least one of the first LiDAR 121, the second LiDAR 123, or any combination thereof is distorted in the tilt direction.

[0066] Fig. 2 shows an example in which an external vehicle is identified by LiDAR included in a vehicle control device according to an example of the present invention.

[0067] The operations from Fig. 2 can be controlled by the vehicle control device 100 Fig. 1 or from the vehicle control device 100 Fig. 1 contained processor 110.

[0068] Referring to Fig. 2, a vehicle control device according to an example may be included in a host vehicle 200. For example, a plurality of LiDARs in the vehicle control device included in the host vehicle 200 may identify an external object. For example, the first LiDAR of the plurality of LiDARs may be arranged on the right side of the host vehicle 200. For example, the second LiDAR of the plurality of LiDARs may be arranged on the left side of the host vehicle 200. However, an example is not limited thereto.

[0069] For example, a first LiDAR may be mounted on the front of the host vehicle 200 toward the right side of the host vehicle 200. For example, a second LiDAR may be mounted on the front of the host vehicle 200 toward the left side of the host vehicle 200.

[0070] For example, the first LiDAR may be mounted toward the right side of the host vehicle 200 to identify external objects 241, 243, and 245 in a first specific area 210. For example, the second LiDAR may be mounted toward the left side of the host vehicle 200 to identify external objects 241, 243, and 245 in a second specific area 220.

[0071] According to one example, a processor may identify at least one of the external objects 241, 243, and 245 using at least one of the first LiDAR, the second LiDAR, or any combination thereof.

[0072] For example, the processor may identify at least one of the external objects 241, 243, and 245 based on data sets obtained using the first LiDAR, the second LiDAR, or any combination thereof. The processor may identify at least one of the external objects 241, 243, and 245 based on data sets comprising a three-dimensional virtual coordinate system based on an x-axis, a y-axis, and a z-axis.

[0073] According to one example, the processor may project a plurality of points represented on the x-axis, the y-axis, and the z-axis onto a plane formed by the y-axis and the z-axis. The plurality of points described below may include a plurality of points projected onto a plane formed by the y-axis and the z-axis.

[0074] According to one example, the processor may identify the external vehicle 241 among the external objects 241, 243, and 245 in an area 230 where the first specific area 210 and the second specific area 220 overlap each other. The processor may identify a plurality of points corresponding to the rear of the external vehicle 241 based on identifying the external vehicle 241 in the area 230 where the first specific area 210 and the second specific area 220 overlap each other.

[0075] According to one example, the processor may identify the plurality of points based on a distance 250 between the external vehicle 241 and the host vehicle 200. For example, the processor may obtain polygons using the plurality of points corresponding to the rear of the external vehicle 241 based on the external vehicle 241 being identified at a distance from the host vehicle 200 that is greater than or equal to a first determined distance and less than or equal to a second determined distance that exceeds the first determined distance. The first determined distance may be, for example, approximately 40 m. The second determined distance may be, for example, approximately 60 m.

[0076] According to one example, the processor may identify the plurality of points corresponding to the rear of the external vehicle 241 based on the fact that the external vehicle 241 is traveling straight, the distance 250 between the host vehicle 200 and the external vehicle 241 is greater than or equal to the first determined distance and less than or equal to the second determined distance, and the external vehicle 241 is identified in the area 230 where the first determined area 210 and the second determined area 220 overlap. The processor may identify a plurality of first points obtained from the first LiDAR and a plurality of second points obtained from the second LiDAR among the plurality of points.

[0077] According to one example, the processor may correct the distance between the plurality of first points and the plurality of second points based on whether the plurality of first points and the plurality of second points match each other. To correct the distance between the plurality of first points and the plurality of second points, the following descriptions may include operations for determining whether the plurality of first points and the plurality of second points are spaced apart or match each other.

[0078] Fig. 3 shows an example of a plurality of points representing the rear back of an external vehicle according to an example of the present invention.

[0079] The events from Fig. 3 can be controlled by the vehicle control device 100 Fig. 1 or from the vehicle control device 100 Fig. 1 contained processor 110.

[0080] A processor of the vehicle control device according to one example may obtain a plurality of points 300 based on the satisfaction of at least one of a first condition, a second condition, a third condition, or any combination thereof. The first condition may, for example, relate to whether an external vehicle is currently traveling in front of a host vehicle. The second condition may, for example, relate to whether the distance between the host vehicle and the external vehicle is greater than or equal to a first specified distance and whether the external vehicle is within a second specified distance that exceeds the first specified distance.For example, the third condition may relate to whether the external vehicle identified by a first LiDAR for identifying an external object in a first specific area and a second LiDAR for identifying an external object in a second specific area is identified in an area where the first specific area and the second specific area overlap.

[0081] For example, a case may occur where the first condition is met when the external vehicle is traveling directly in front of the host vehicle. For example, a case may occur where the second condition is met when the distance between the host vehicle and the external vehicle is greater than or equal to the first specified distance and the external vehicle is within the second specified distance or at a distance less than the first specified distance. For example, a case may occur where the third condition is met when the external vehicle is identified in an area where the first specified area and the second specified area overlap.

[0082] For example, if the first condition, the second condition, and the third condition are satisfied, the processor can obtain polygons by using the plurality of points 300 corresponding to the rear of the external vehicle.

[0083] According to one example, the processor may obtain a plurality of first points 310 using the first LiDAR. According to one example, the processor may obtain a plurality of second points 320 using the second LiDAR. For example, the processor may determine the plurality of first points 310 using the first LiDAR and the plurality of second points 320 using the second LiDAR.

[0084] According to one example, the processor may separate the plurality of first points 310 obtained using the first LiDAR and the plurality of second points 320 obtained using the second LiDAR, and store the plurality of first points 310 and the plurality of second points 320 in a memory.

[0085] According to one example, the processor may project the plurality of points 300 onto a plane consisting of a y-axis and a z-axis based on an x-axis, the y-axis, and the z-axis. For example, the processor may project the plurality of first points 310 and the plurality of second points 320 onto the plane consisting of the y-axis and the z-axis based on the x-axis, the y-axis, and the z-axis.

[0086] For example, the processor may group the plurality of first points 310 projected onto a plane based on a slice. For example, the processor may group the plurality of first points 310 based on slices formed based on the z-axis. The processor may store the grouped plurality of first points 310 in a first region of memory.

[0087] For example, the processor may group the plurality of second points 320 projected onto a plane based on a layer. For example, the processor may group the plurality of second points 320 based on the formed layers based on the z-axis. The processor may store the grouped plurality of second points 320 in a second area of ​​memory.

[0088] As described above, according to one example, to use the plurality of first points 310 and the plurality of second points 320 as inputs to an ICP algorithm, the processor may separate the plurality of first points 310 and the plurality of second points 320 and store the plurality of first points 310 and the plurality of second points 320 in memory.

[0089] Fig. 4 shows an example of determining a representative point from a plurality of points showing a rear side of an external vehicle according to an example of the present invention.

[0090] The operations from Fig. 4 can be controlled by the vehicle control device 100 Fig. 1 or from the vehicle control device 100 Fig. 1 contained processor 110.

[0091] Referring to Fig. 4, according to one example, a processor of a vehicle control device may obtain a plurality of first points 410 based on a first LiDAR. According to one example, the processor may obtain a plurality of second points 460 based on a second LiDAR.

[0092] For example, the processor may obtain the plurality of first points 410 using the first LiDAR mounted on the right side of a host vehicle. For example, the processor may obtain the plurality of second points 460 using the second LiDAR mounted on the left side of the host vehicle.

[0093] The plurality of first points 410 and the plurality of second points 460 in Fig. 4 may include an example of a plurality of points projected onto a plane formed by a y-axis and a z-axis based on an x-axis, the y-axis, and the z-axis.

[0094] According to one example, the processor may separate the plurality of first points 410 and the plurality of second points 460 and store the plurality of first points 410 and the plurality of second points 420 in a memory. To use the plurality of first points 410 and the plurality of second points 460 as inputs to an ICP algorithm, the processor may separate the plurality of first points 410 and the plurality of second points 460 and store the plurality of first points 410 and the plurality of second points 420 in the memory.

[0095] According to one example, the processor may identify representative points from the plurality of first points 410. The processor may identify representative points based on at least one of first minimum values, first maximum values, or any combination thereof on each of the layers, each comprising the plurality of first points 410. For example, the processor may identify the representative points based on the first minimum values ​​411 and the first maximum values ​​412 in each of the layers, each comprising the plurality of first points 410.

[0096] The processor may identify intermediate values ​​in each of the upper and lower layers, each comprising the plurality of first points. For example, the processor may identify an intermediate value 413 in the upper layer and an intermediate value 414 in the lower layer. The processor may identify the intermediate value 413 in the uppermost layer and the intermediate value 414 in the lowermost layer as representative points.

[0097] According to one example, the processor may obtain a polygon 415 based on at least one of the first minimum values ​​411, the first maximum values ​​412, the first intermediate values ​​413 and 414, or any combination thereof. For example, the processor may obtain the polygon 415 from the conjunction of the first minimum values ​​411, the first maximum values ​​412, and the first intermediate values ​​413 and 414.

[0098] According to one example, the processor may identify representative points from the plurality of second points 460. The processor may identify representative points based on at least one minimum value, one maximum value, or any combination thereof on each of the layers, each comprising the plurality of second points 460. For example, the processor may identify the representative points based on minimum values ​​461 and maximum values ​​462 in each of the layers, each comprising the plurality of second points 460.

[0099] The processor may identify intermediate values ​​in each of the upper and lower layers, each comprising the plurality of second points 460. For example, the processor may identify an intermediate value 463 in the upper layer and an intermediate value 464 in the lower layer. The processor may identify the intermediate value 463 in the upper layer and the intermediate value 464 in the lower layer as representative points.

[0100] According to one example, the processor may obtain a polygon 465 based on at least one of the minimum values ​​461, the maximum values ​​462, the intermediate values ​​463 and 464, or any combination thereof. For example, the processor may obtain the polygon 465 by connecting the minimum values ​​461, the maximum values ​​462, and the intermediate values ​​463 and 464 using a line.

[0101] According to one example, the processor may input the obtained polygons 415 and 465 into an ICP algorithm. Based on the input of the obtained polygons 415 and 465, the processor may determine with the ICP algorithm whether the polygons 415 and 465 coincide with each other. For example, the processor may obtain a vector based on the input of the obtained polygons 415 and 465 to the ICP algorithm. The processor may determine from the obtained vector whether the plurality of first points 410 and the plurality of second points 460 coincide with each other. The processor may correct the distance between the plurality of first points 410 and the plurality of second points 460 based on the fact that the plurality of first points 410 and the plurality of second points 460 do not coincide.

[0102] As described above, according to one example, the processor of the vehicle control device may determine whether the plurality of first points 410 and the plurality of second points 460 coincide with each other based on polygons formed by the plurality of first points 410 and the plurality of second points 460. The processor may match data sets obtained from a plurality of LiDARs (e.g., a first LiDAR and a second LiDAR) by correcting the distance between the plurality of first points 410 and the plurality of second points 460. The processor may assist the driving of a host vehicle by matching the data sets obtained from the plurality of LiDARs.

[0103] Fig. 5 shows an example of obtaining a vector by determining whether representative points coincide with each other according to an example of the present invention.

[0104] The operations from Fig. 5 can be controlled by the vehicle control device 100 Fig. 1 or from the vehicle control device 100 Fig. 1 contained processor 110.

[0105] Referring to Fig. 5, according to one example, a processor of the vehicle control device may identify at least one of a plurality of first points 510 obtained by a first LiDAR, a plurality of second points 560 obtained by a second LiDAR, or any combination thereof. For example, the processor may separate the plurality of first points 510 and the plurality of second points 560 and store the plurality of first points 410 and the plurality of second points 420 in a memory.

[0106] According to one example, the processor may input representative points included in the plurality of first points 510 and the plurality of second points 560 into an ICP algorithm. For example, the processor may obtain a vector 520 based on representative points of the plurality of first points 510 and representative points of the plurality of second points 560.

[0107] For example, the processor may use first representative points included in the plurality of first points 510 as the first input input to the ICP algorithm. For example, the processor may use second representative points included in the plurality of second points 560 as the second input input to the ICP algorithm.

[0108] According to one example, the processor may obtain vector 520 based on the input of the first representative points included in the plurality of first points 510 as the first input to the ICP algorithm and the input of the second representative points included in the plurality of second points 560 as the second input to the ICP algorithm. For example, vector 520 may represent a direction on a plane formed by a y-axis and a z-axis based on an x-axis, the y-axis, and the z-axis. For example, vector 520 may include at least one y-axis component corresponding to a y-axis direction, a z-axis component corresponding to the z-axis direction, or any combination thereof.

[0109] According to one example, the processor may identify whether the plurality of first points 510 matches the plurality of second points 560 based on the vector 520. The processor may correct the distance between the plurality of first points 510 and the plurality of second points 560 by determining whether the plurality of first points 510 matches the plurality of second points 560.

[0110] For example, the processor may identify that the plurality of first points 510 do not match the plurality of second points 560 based on obtaining the vector 520 using the ICP algorithm.

[0111] For example, the processor may identify at least one y-axis component 521 of vector 520, one z-axis component 523 of vector 520, or any combination thereof. For example, based on the y-axis component 521 of vector 520, the processor may determine that at least one of the first LiDAR, the second LiDAR, or any combination thereof is distorted in a yaw direction. For example, based on the z-axis component 523 of vector 523, the processor may determine that at least one of the first LiDAR, the second LiDAR, or any combination thereof is distorted in a pitch direction.

[0112] According to one example, the processor may correct the distance between the plurality of first points 510 and the plurality of second points 560 by identifying, based on the vector 520, that the plurality of first points 510 do not match the plurality of second points 560. According to another example, the processor may reduce the reliability of a plurality of points obtained from the first LiDAR and the second LiDAR based on identifying that the plurality of first points 510 do not match the plurality of second points 560.

[0113] Fig. 6 shows an example of determining whether the inclination directions between a plurality of points match according to an example of the present invention.

[0114] The events from Fig. 6 can be controlled by the vehicle control device 100 Fig. 1 or from the vehicle control device 100 Fig. 1 contained processor 110.

[0115] In the following, Fig. 6, to simplify the description of the field of view (FV), the FV is described based on a plane formed by an x-axis and a z-axis, based on the x-axis, a y-axis, and the z-axis. However, a vector 610 may correspond to the vector 610 obtained by applying the operations from Fig. 1 to 5, and may include the vector 610 based on the y-axis and the z-axis.

[0116] Referring to Fig. 6, according to one example, a processor of the vehicle control device may compare a first SF 601 based on surrounding objects of the host vehicle 200 with a second SF 603 stored in a memory.

[0117] For example, the first SF 601 may include an SF based on at least a first LiDAR, a second LiDAR, or any combination thereof. For example, the second SF 603 may include an SF at a time when at least one of the first LiDAR, the second LiDAR, or any combination thereof is mounted on a host vehicle 600. For example, the processor may store the SF in memory at a time when at least one of the first LiDAR, the second LiDAR, or any combination thereof is mounted on the host vehicle 600.

[0118] To obtain the first SF 601, the processor may, for example, identify a maximum angle point 641 corresponding to an external object located above the host vehicle 600. To obtain the first SF 601, the processor may, for example, identify a minimum angle point 631 based on ground points.

[0119] The processor may obtain the first SF 601 based on the maximum angle point 641 and the minimum angle point 631.

[0120] For example, the processor may determine whether the first SF 601 matches the second SF 603. Based on identifying that the first SF 601 does not match the second SF 603, the processor may identify that at least one of the first LiDAR, the second LiDAR, or any combination thereof included in the host vehicle 200 is distorted.

[0121] For example, the first SF 601 and the second SF 603 may include at least one vertical SF (VSF) of the first LiDAR, the second LiDAR, or any combination thereof.

[0122] According to one example, the processor may generate the vector 610 based on a plurality of first points and a plurality of second points included in the Fig. 1 through 5. The processor may identify a y-axis component 611 and a z-axis component 613 from the vector 610 based on the y-axis and the z-axis. The processor may identify at least one of the y-axis component 611, the z-axis component 613, or any combination thereof.

[0123] According to one example, the processor may identify that at least one of the first LiDAR, the second LiDAR, or any combination thereof is distorted in a tilt direction by using the z-axis component 613 of vector 610 from the y-axis component 611 of vector 610 and the z-axis component 613 of vector 610.

[0124] For example, the processor may detect that a mounting angle of the first LiDAR, the second LiDAR, or any combination thereof has changed by using a difference between the first SF 601 and the second SF 603 and the z-axis component 613 of the vector 610. The processor may adjust at least one of a plurality of first points obtained by the first LiDAR, a plurality of second points obtained by the second LiDAR, or any combination thereof based on the fact that the mounting angle of at least one of the first LiDAR, the second LiDAR, or any combination thereof has changed.Alternatively or additionally, the processor may decrease the reliability of at least one of the plurality of first points obtained from the first LiDAR, the plurality of second points obtained from the second LiDAR, or any combination thereof based on the fact that the mounting angle of at least one of the first LiDAR, the second LiDAR, or any combination thereof has changed.

[0125] Fig. 7 shows an example of a flowchart for a vehicle control method according to an example of the present invention.

[0126] In the following, it is assumed that the vehicle control device 100 consists of Fig. 1 the process Fig. 7. Additionally or alternatively, a description of Fig. 7, it can be assumed that an operation described as being performed by a device is controlled by the processor 110 of the vehicle control device 100.

[0127] At least one of the operations in Fig. 7 can be from the vehicle control device 100 Fig. 1. Each of the operations in Fig. 7 may, but need not, be executed sequentially. For example, the order of operations can be changed, and at least two operations can be executed in parallel.

[0128] Referring to Fig. 7, a vehicle control method according to an example may include, in operation S701, a process of obtaining data sets of an external vehicle different from a host vehicle and traveling ahead of the host vehicle based on a plurality of LiDARs including a first LiDAR and a second LiDAR while a host vehicle is traveling.

[0129] In operation S703, according to an example, the vehicle control method may include an operation of projecting a plurality of points included in data sets onto a plane formed by a y-axis and a z-axis based on an x-axis, the y-axis, and the z-axis. The vehicle control method may include an operation of identifying a plurality of first points obtained by the first LiDAR and a plurality of second points obtained by the second LiDAR among a plurality of points indicating the rear of the external vehicle based on projecting the plurality of points included in the data sets onto a plane formed by the y-axis and the z-axis.

[0130] For example, the vehicle control method may include an operation of identifying the plurality of first points obtained by the first LiDAR and the plurality of second points obtained by the second LiDAR based on the inspection of the plurality of points.

[0131] In operation S705, the vehicle control method according to an example may include an operation of identifying first representative points corresponding to the outermost points in the plurality of first points and second representative points corresponding to the outermost points in the plurality of second points.

[0132] For example, the vehicle control method may include an operation for identifying first minimum values ​​based on the y-axis and first maximum values ​​based on the y-axis on layers on which the plurality of first points are identified, respectively. For example, the vehicle control method may include an operation for obtaining first intermediate values ​​of the plurality of first points on the upper layer and the lower layer on which the plurality of first points are identified, respectively.

[0133] For example, at least one of the first minimum values, the first maximum values, the first intermediate values, or any combination thereof may be referred to as the first representative value.

[0134] For example, the vehicle control method may include an operation for identifying second minimum values ​​based on the y-axis and second maximum values ​​based on the y-axis on layers on which a plurality of second points are identified, respectively. For example, the vehicle control method may include an operation for obtaining second intermediate values ​​of the plurality of second points on the upper layer and the lower layer on which the plurality of second points are identified, respectively.

[0135] For example, at least one of the second minimum values, the second maximum values, the second intermediate values, or any combination thereof may be referred to as the second representative value.

[0136] In operation S707, according to one example, the vehicle control method may include an operation of obtaining a first polygon corresponding to the first representative points and a second polygon corresponding to the second representative points. For example, the vehicle control method may include an operation of obtaining the first polygon by connecting the first representative points. For example, the vehicle control method may include an operation of obtaining the second polygon by connecting the second representative points.

[0137] The vehicle control method according to an example may include a process of obtaining a vector indicating the distance between the first representative points and the second representative points by using all or part of the first representative points included in the first polygon and the second representative points included in the second polygon.

[0138] In operation S709, according to one example, the vehicle control method may include an operation for determining whether the plurality of first points coincide with the plurality of second points based on the obtained vector. The vehicle control method may determine whether the plurality of first points coincide with the plurality of second points based on at least one of the y-axis component of the obtained vector, the z-axis component of the obtained vector, or any combination thereof.

[0139] The vehicle control method may include a process of determining whether a plurality of first points coincide with a plurality of second points based on the obtained vector, and correcting the distance between the plurality of first points and the plurality of second points.

[0140] Fig. 8 shows an example of a flowchart for a vehicle control method according to an example of the present invention.

[0141] In the following, it is assumed that the vehicle control device 100 consists of Fig. 1 the process Fig. 8. Additionally or alternatively, a description of Fig. 8, it can be assumed that an operation described as being performed by a device is controlled by the processor 110 of the vehicle control device 100.

[0142] At least one of the operations in Fig. 8 can be from the vehicle control device 100 Fig. 1. Each of the operations in Fig. 8 may, but need not, be executed sequentially. For example, the order of operations can be changed, and at least two operations can be executed in parallel.

[0143] Referring to Fig. 8, a vehicle control method according to an example may include, in operation S801, an operation for identifying an external vehicle tracked in front of a host vehicle using a plurality of LiDARs, including a first LiDAR and a second LiDAR.

[0144] For example, the vehicle control method may include an operation for selecting an external vehicle based on certain conditions and identifying a plurality of points corresponding to a rear side of the selected external vehicle. For example, the vehicle control method may include an operation for identifying a plurality of points corresponding to the rear side of an external vehicle based on identifying an external vehicle that satisfies at least one of a first condition, a second condition, a third condition, or any combination thereof.

[0145] The first condition may, for example, refer to a case in which the external vehicle is currently traveling in front of the host vehicle. The second condition may, for example, refer to a case in which the external vehicle is traveling in front of the host vehicle at a distance greater than or equal to a first specified distance and less than or equal to a second specified distance. The third condition may, for example, refer to an area determined by the first LiDAR and the second LiDAR in the host vehicle.

[0146] A case in which the first condition is met may, for example, occur when the external vehicle is traveling directly in front of the host vehicle. A case in which the second condition is met may, for example, occur when the external vehicle is traveling in front of the host vehicle at a distance that is greater than or equal to the first specified distance and less than or equal to the second specified distance. A case in which the third condition is met may, for example, occur when the external vehicle is identified in an area in which a first specified area identified by the first LiDAR in the host vehicle overlaps a second specified area identified by the second LiDAR in the host vehicle.

[0147] In operation S803, the vehicle control method according to an example may include an operation of projecting a plurality of points corresponding to the rear of the identified external vehicle onto a plane formed by the y-axis and the z-axis based on the x-axis, the y-axis, and the z-axis. The vehicle control method according to an example may include an operation of performing a check on the plurality of points based on projecting the plurality of points onto a plane formed by the y-axis and the z-axis.

[0148] The vehicle control method according to an example may include an operation of identifying a plurality of first points obtained by the first LiDAR and a plurality of second points obtained by the second LiDAR based on the inspection of the plurality of points.

[0149] For example, the vehicle control method may include an operation of identifying the plurality of first points obtained by the first LiDAR and identifying the plurality of second points obtained by the second LiDAR based on the inspection of the plurality of points.

[0150] For example, the vehicle control method may include an operation of separating and identifying the plurality of first points obtained by the first LiDAR and the plurality of second points obtained by the second LiDAR based on the inspection of the plurality of points.

[0151] In operation S805, according to one example, the vehicle control method may include an operation for identifying a representative point from the plurality of checked points. For example, the vehicle control method may include an operation for obtaining the plurality of first points obtained by the first LiDAR and obtaining the plurality of second points obtained by the second LiDAR based on the checking of the plurality of points.

[0152] The vehicle control method may include an operation for identifying first representative points from the plurality of first points and second representative points from the plurality of second points. The vehicle control method may include an operation for identifying the first representative points and the second representative points, and performing an ICP algorithm.

[0153] The vehicle control method according to an example may include an operation for determining whether the plurality of first points match the plurality of second points based on identifying representative points of a plurality of points and performing the ICP algorithm.

[0154] According to one example, the vehicle control method may include an operation for obtaining a vector indicating the distance between the first representative points and the second representative points by using the first representative points of the plurality of first points and the second representative points of the plurality of second points as a first input and a second input of the ICP algorithm, respectively.

[0155] For example, the vehicle control method may include an operation for identifying that the plurality of first points do not coincide with the plurality of second points in a yaw direction based on the y-axis component of the obtained vector. For example, the vehicle control method may include an operation for identifying that the plurality of first points do not coincide with the plurality of second points in a yaw direction based on the z-axis component of the obtained vector.

[0156] According to one example, the vehicle control method may include a corrective operation such that the plurality of first points are able to coincide with the plurality of second points based on the fact that the plurality of first points do not coincide with the plurality of second points in at least one of the yaw direction, the pitch direction, or a combination thereof.

[0157] According to another example, the vehicle control method may reduce the reliability of the plurality of first points and the plurality of second points based on the fact that the plurality of first points do not match the plurality of second points in at least one of the yaw direction, the pitch direction, or any combination thereof.

[0158] Fig. 9 shows an example of a computer system including a vehicle control device according to an example of the present invention.

[0159] Referring to Fig. 9, a computer system 1000 may include at least a processor 1100, a memory 1300, a user interface input device 1400, a user interface output device 1500, a memory 1600, and a network interface 1700 interconnected via a bus 1200.

[0160] Processor 1100 may be a central processing unit (CPU) or a semiconductor device that processes instructions stored in memory 1300 and / or memory 1600. Both memory 1300 and memory 1600 may include various types of volatile or non-volatile storage media. For example, memory 1300 may include read-only memory (ROM) and random access memory (RAM).

[0161] Accordingly, the operations of the method or algorithm described in connection with the description of the invention may be implemented directly with a hardware module, a software module, or a combination of the hardware module and the software module executed by the processor 1100. The software module may be located on a storage medium (i.e., the memory 1300 and / or the memory 1600), such as random access memory (RAM), flash memory, read-only memory (ROM), erasable programmable read-only memory (EPROM), electronic EPROM (EEPROM), a register, a hard disk drive, a removable disk, or a compact disc-ROM (CD-ROM).

[0162] The storage medium may be connected to the processor 1100. The processor 1100 may read information from the storage medium and write information to the storage medium. Alternatively or additionally, the storage medium may be integrated with the processor 1100. The processor and the storage medium may be implemented with an application-specific integrated circuit (ASIC). The ASIC may be provided in a user terminal. Alternatively or additionally, the processor and the storage medium may be implemented with separate components in the user terminal.

[0163] The present invention has been developed to solve the above-mentioned problems encountered in the prior art while maintaining the advantages achieved by the prior art.

[0164] An example of the present invention includes a vehicle control device that can determine whether a plurality of points obtained from a plurality of LiDARs coincide with each other and that can adjust the plurality of points when the plurality of points do not coincide with each other, and a corresponding method therefor.

[0165] An example of the present invention provides a vehicle control device that can obtain a vector based on the input of the plurality of points to a specified algorithm, identify the distortions of LiDARs using the obtained vector, and correct the distortions of the LiDARs, and a method therefor.

[0166] An example of the present invention provides a vehicle control device that can correct either a plurality of first points or a plurality of second points when the plurality of first points do not agree with the plurality of second points, and that can prevent the interruption of a vehicle control system including the vehicle control device, and a method thereof.

[0167] The technical problems to be solved by the present invention are not limited to the above-mentioned problems, and any other technical problems not mentioned here will be clearly understood by those skilled in the technical field of the present invention from the following description.

[0168] According to one example of the present invention, a vehicle control device may include a first light detection and ranging device (LiDAR), a second LiDAR, and a processor. The processor may: obtain data sets related to an external vehicle other than a host vehicle traveling in front of the host vehicle based on a plurality of LiDARs including the first LiDAR and the second LiDAR while the host vehicle is traveling;identify a plurality of first points obtained by the first LiDAR and a plurality of second points obtained by the second LiDAR among a plurality of points indicating a rear side of the external vehicle based on projecting the plurality of points included in the data sets onto a plane formed by a second axis and a third axis based on a first axis, the second axis, and the third axis; identify first representative points corresponding to the outermost points included in the plurality of first points and second representative points corresponding to the outermost points included in the plurality of second points;obtain a vector indicating a distance between the first representative points and the second representative points based on obtaining a first polygon corresponding to the first representative points and a second polygon corresponding to the second representative points using all or part of the first representative points and the second representative points included in the first polygon and the second polygon; and identify, based on the obtained vector, whether the plurality of first points coincide with the plurality of second points and correct a distance between the plurality of first points and the plurality of second points.

[0169] According to one example, the processor may obtain the first polygon and the second polygon based on the external vehicle being identified at a distance from the host vehicle that is greater than or equal to a first determined distance and less than or equal to a second determined distance that exceeds the first determined distance.

[0170] According to one example, the first LiDAR may identify an external object in a first specific area. The second LiDAR may identify an external object in a second specific area. The processor may obtain the first polygon and the second polygon based on the external vehicle identified in an area that overlaps the first specific area and the second specific area.

[0171] According to one example, the processor may obtain the first polygon and the second polygon while the external vehicle is traveling just in front of the host vehicle.

[0172] According to one example, the processor may separate and identify the plurality of first points and the plurality of second points based on the examination of the plurality of points.

[0173] According to one example, the processor may: identify first minimum values ​​and first maximum values ​​of the plurality of first points based on the second axis on layers on which the plurality of first points are identified; identify first intermediate values ​​of the plurality of first points on an upper layer and a lower layer on which the plurality of first points are identified; obtain the first polygon by connecting the first minimum values, the first maximum values, and the first intermediate values; identify second minimum values ​​and second maximum values ​​of the plurality of second points based on the second axis on layers on which the plurality of second points are respectively identified; identify second intermediate values ​​of the plurality of second points on an upper layer and a lower layer on which the plurality of second points are respectively identified;and obtain the second polygon by connecting the second minimum values, the second maximum values ​​and the second intermediate values.;

[0174] According to one example, the processor may: based on the input of the first representative points from the plurality of first points and the second representative points from the plurality of second points to an ICP algorithm, obtain the vector based on one of the first minimum values ​​contained in one of the layers; obtain the vector based on one of the first minimum values ​​contained in one of the layers and one of the second minimum values ​​contained in a layer of the same order; obtain the vector based on one of the first maximum values ​​contained in one of the layers and one of the second maximum values ​​contained in a layer of the same order;may obtain the vector based on one of the first intermediate values ​​included in the topmost layer on which the plurality of first points are identified and one of the second intermediate values ​​included in the topmost layer on which the plurality of second points are identified; or may obtain the vector based on one of the first intermediate values ​​included in the lower layer on which the plurality of first points are identified and one of the second intermediate values ​​included in the lower layer on which the plurality of second points are identified.;

[0175] According to one example, the processor may identify that the plurality of first points do not coincide with the plurality of second points in a yaw direction based on identifying a second axis component in the obtained vector, and may correct the separation between the plurality of first points and the plurality of second points based on the second axis component in the obtained vector.

[0176] According to one example, the processor may determine that the plurality of first points do not match the plurality of second points in a tilt direction based on identifying a third axis component in the obtained vector, and may correct the distance between the plurality of first points and the plurality of second points based on the third axis component in the obtained vector.

[0177] According to one example, the plane formed by the second axis and the third axis may include a first plane. The processor may: obtain a top point and a bottom point obtained by the plurality of LiDARs from a second plane formed by the first axis and the third axis and different from the first plane; identify that the plurality of first points do not match the plurality of second points in a tilt direction based on identifying at least one of the top point, the bottom point, a third-axis component of the obtained vector, or a combination thereof; and correct the distance between the plurality of first points and the plurality of second points based on at least one of the top point, the bottom point, the third-axis component of the obtained vector, or a combination thereof.

[0178] According to an example of the present invention, a vehicle control method may include: obtaining data sets related to an external vehicle different from a host vehicle and traveling ahead of the host vehicle based on a plurality of LiDARs including a first LiDAR and a second LiDAR while the host vehicle is traveling; identifying a plurality of first points obtained by the first LiDAR and a plurality of second points obtained by the second LiDAR among a plurality of points indicating a rear side of the external vehicle based on projecting the plurality of points included in the data sets onto a plane formed by a second axis and a third axis based on a first axis, the second axis, and the third axis;Identifying first representative points corresponding to the outermost points included in the plurality of first points and second representative points corresponding to the outermost points included in the plurality of second points; Obtaining a vector indicating a distance between the first representative points and the second representative points based on obtaining a first polygon corresponding to the first representative points and a second polygon corresponding to the second representative points by using all or part of the first representative points and the second representative points included in the first polygon and the second polygon;and identifying whether the plurality of first points coincide with the plurality of second points by the obtained vector, and correcting a distance between the plurality of first points and the plurality of second points;

[0179] According to one example, the vehicle control method may further include obtaining the first polygon and the second polygon based on the external vehicle identified at a distance from the host vehicle that is greater than or equal to a first determined distance and less than or equal to a second determined distance that exceeds the first determined distance.

[0180] According to one example, the first LiDAR may identify an external object in a first specific area. The second LiDAR may identify an external object in a second specific area. The vehicle control method may further include determining the first polygon and the second polygon based on the external vehicle identified in an area that overlaps the first specific area and the second specific area.

[0181] According to one example, the vehicle control method may further comprise obtaining the first polygon and the second polygon while the external vehicle is traveling just ahead of the host vehicle.

[0182] According to one example, the vehicle control method may further include separating and identifying the plurality of first points and the plurality of second points based on the examination of the plurality of points.

[0183] According to one example, the vehicle control method may further include: identifying first minimum values ​​and first maximum values ​​of the plurality of first points based on the second axis on layers on which the plurality of first points are identified; identifying first intermediate values ​​from the plurality of first points on an upper layer and a lower layer on which the plurality of first points are identified; obtaining the first polygon by connecting the first minimum values, the first maximum values, and the first intermediate values; identifying second minimum values ​​and second maximum values ​​of the plurality of second points based on the second axis on layers on which the plurality of second points are respectively identified;identifying second intermediate values ​​of the plurality of second points on an upper layer and a lower layer, on each of which the plurality of second points are identified; and obtaining the second polygon by connecting the second minimum values, the second maximum values, and the second intermediate values;

[0184] According to one example, the vehicle control method may further comprise: based on the input of the first representative points from the plurality of first points and the second representative points from the plurality of second points to an ICP algorithm, obtaining the vector based on one of the first minimum values ​​included in one of the layers and one of the second minimum values ​​included in a layer of the same order; obtaining the vector based on one of the first maximum values ​​included in one of the layers and one of the second maximum values ​​included in a layer of the same order;obtaining the vector based on one of the first intermediate values ​​contained in the topmost layer on which the plurality of first points are identified and one of the second intermediate values ​​contained in the topmost layer on which the plurality of second points are identified; or obtaining the vector based on one of the first intermediate values ​​contained in the lower layer on which the plurality of first points are identified and one of the second intermediate values ​​contained in the lower layer on which the plurality of second points are identified.

[0185] According to one example, the vehicle control method may further include identifying that the plurality of first points do not coincide with the plurality of second points in a yaw direction based on identifying a second axis component in the obtained vector; and correcting the separation between the plurality of first points and the plurality of second points based on the second axis component in the obtained vector.

[0186] According to one example, the vehicle control method may further include identifying that the plurality of first points do not coincide with the plurality of second points in a pitch direction based on identifying a third-axis component in the obtained vector; and correcting the distance between the plurality of first points and the plurality of second points based on the third-axis component in the obtained vector.

[0187] According to one example, the plane formed by the second axis and the third axis may comprise a first plane.The vehicle control method may further include: obtaining an upper point and a lower point obtained from the plurality of LiDARs from a second plane formed by the first axis and the third axis and different from the first plane; identifying that the plurality of first points do not coincide with the plurality of second points in a tilt direction based on identifying at least one of the upper point, the lower point, a third-axis component of the obtained vector, or a combination thereof; and correcting the distance between the plurality of first points and the plurality of second points based on at least one of the upper point, the lower point, the third-axis component of the obtained vector, or a combination thereof.

[0188] The above description is merely an example of the technical idea of ​​the present invention, and various modifications and changes can be made by a person skilled in the art without departing from the essential features of the present invention.

[0189] Accordingly, the examples of the present invention are intended to explain the technical idea of ​​the present invention, not to limit it, and the scope and spirit of the present invention are not limited by the above examples. The scope of the present invention is defined by the appended claims, and all equivalents thereof should be construed as being included within the scope of the present invention.

[0190] According to an example of the present invention, an apparatus may determine whether a plurality of points obtained from a plurality of LiDARs agree with each other, and may adjust the plurality of points when the plurality of points do not agree.

[0191] Furthermore, according to an example of the present invention, the apparatus may obtain a vector based on the input of the plurality of points to a specific algorithm, identify distortion of LiDARs by using the obtained vector, and correct the distortion of the LiDARs.

[0192] Furthermore, the apparatus according to an example of the present invention can correct either a plurality of first points or a plurality of second points when the plurality of first points and the plurality of second points do not agree with each other, and thus can prevent a possible interruption of a vehicle control system including the vehicle control apparatus.

[0193] In addition, a variety of effects directly or indirectly understood by this invention can be provided.

[0194] Although the present invention has been described with reference to examples and the accompanying drawings, the present invention is not limited thereto, but can be modified and changed in various ways by those skilled in the art to which the present invention relates without departing from the spirit and scope of the present invention as claimed in the following claims. FIG. 1 100 VEHICLE CONTROL DEVICE 110 PROCESSOR 120 VARIETY OF LIDARS 121 FIRST LIDAR 123 SECOND LIDAR 130 STORAGE 200 CARRIER VEHICLES 210 FIRST SPECIFIED AREA 220 SECOND SPECIFIED AREA 230 AREA 241 EXTERNAL VEHICLE 243 EXTERNAL OBJECT 250 EXTERNAL OBJECT 300 VARIETY OF POINTS 310 VARIETY OF FIRST POINTS 320 MULTIPLE SECOND POINTS 410 VARIETY OF FIRST POINTS 411 FIRST MINIMUM VALUES 412 FIRST MAXIMUM VALUES 413 INTERIM VALUE 414 INTERIM VALUE 415 POLYGON 460 MULTIPLE SECOND POINTS 461 MINIMUM VALUE 462 MAXIMUM VALUE 463 INTERIM VALUE 464 INTERIM VALUE 465 POLYGON 510 VARIETY OF FIRST POINTS 520 VECTOR 521 COMPONENT 523 COMPONENT 560 MULTIPLE SECOND POINTS 600 CARRIER VEHICLE 601 FIRST FIELD OF VISION 603 SECOND FIELD OF VIEW 610 VECTOR 611 COMPONENT 613 COMPONENT 631 MINIMUM ANGLE POINT 641 MAXIMUM ANGLE POINT 1100 PROCESSOR 1300 STORAGE 1400 User Interface Input Device 1500 User Interface Output Device 1600 STORAGE 1700 NETWORK INTERFACE

Claims

[1] A device for controlling a vehicle, the device comprising: a first sensor; a second sensor; and a processor, wherein the processor is configured to: obtain data sets from the first sensor and the second sensor relating to a moving object in front of the vehicle traveling along a first axis; to project a plurality of points contained in the data sets onto a plane formed by a second axis and a third axis, wherein: the plurality of dots indicate a back side of the moving object; the second axis, which is perpendicular to the first axis, lies in a horizontal plane; and the third axis, which is perpendicular to the first axis and the second axis, lies in a vertical plane; to determine the following based on the projection: a plurality of first points from the plurality of points obtained from the first sensor, and a plurality of second points from the plurality of points obtained by the second sensor; determining a first subset of points included in the plurality of first points and a second subset of points included in the plurality of second points; to obtain a first polygon based on the first subset; to obtain a second polygon based on the second subset; to obtain, based on the points of the first polygon and the second polygon, a vector indicating a distance between the first subset and the second subset; determine, based on the vector, whether the plurality of first points coincides with the plurality of second points; based on the determination of whether the plurality of first points matches the plurality of second points, adjusting a distance between the plurality of first points and the plurality of second points; and to output a signal indicating the set distance. [2] The apparatus of claim 1, wherein the processor is configured to: obtain the first polygon and the second polygon based on the moving object identified at a distance from the vehicle, the distance being greater than or equal to a first threshold distance and less than or equal to a second threshold distance that exceeds the first threshold distance. [3] The device of claim 1, wherein the first sensor is configured to detect an external object in a first area, wherein the second sensor is configured to detect the external object in a second area different from the first area, and wherein the processor is configured to: to obtain the first polygon and the second polygon based on the moving object identified in an area overlapping the first area and the second area. [4] The apparatus of claim 1, wherein the processor is configured to: to obtain the first polygon and the second polygon based on the moving object moving in front of the vehicle. [5] The apparatus of claim 1, wherein the processor is configured to: to identify the plurality of first points and the plurality of second points based on the examination of the plurality of points. [6] The apparatus of claim 1, wherein the processor is configured to: to determine first minimum values and first maximum values of first points on first layers, each layer of the first layers being formed from a subset of points of the plurality of first points along the second axis; to determine first intermediate values of first intermediate points on a topmost layer of the first layers and a bottommost layer of the first layers; to obtain the first polygon by connecting the first minimum values, the first maximum values and the first intermediate values; to determine second minimum values and second maximum values of second points on second layers, each layer of the second layers being formed from a subset of points of the plurality of second points along the second axis; to determine second intermediate values of second intermediate points on a topmost layer of the second layers and a bottommost layer of the second layers; and to obtain the second polygon by connecting the second minimum values, the second maximum values and the second intermediate values. [7] The apparatus of claim 6, wherein the processor is configured to: to obtain the vector based on: one of the first minimum values of the first points on a first of the first layers, and one of the second minimum values of the second points on a first of the second layers, the first of the second layers having the same order as the first of the first layers; to obtain the vector based on: one of the first maximum values of the first points on a second of the first layers, and one of the second maximum values of the second points on a second of the second layers, the second of the second layers having the same order as the second of the first layers; to obtain the vector based on: one of the first intermediate values of the first intermediate points on the topmost layer of the first layers, and one of the second intermediate values of the second intermediate points on the topmost layer of the second layers; or to obtain the vector based on: one of the first intermediate values of the first intermediate points on the lowest layer of the first layers, and one of the second intermediate values of the second intermediate points on the lowest layer of the second layers. [8] The apparatus of claim 1, wherein the processor is configured to: determining that the plurality of first points do not coincide with the plurality of second points in a yaw direction based on identifying a component of the second axis in the obtained vector; and adjust the distance between the plurality of first points and the plurality of second points based on the second axis component in the obtained vector. [9] The apparatus of claim 1, wherein the processor is configured to: determining that the plurality of first points do not coincide with the plurality of second points in a tilt direction based on identifying a third axis component in the obtained vector; and adjust the distance between the plurality of first points and the plurality of second points based on the third axis component in the obtained vector. [10] The apparatus of claim 1, wherein the level comprises a first level, and wherein the processor is configured to: based on sensor data from the first sensor and the second sensor, to obtain an upper point and a lower point on a second plane formed by the first axis and the third axis and different from the first plane; to determine that the plurality of first points do not coincide with the plurality of second points in a tilt direction based on identifying at least one of: the upper point, the lower point, or a component of the third axis of the obtained vector; and adjust the distance between the plurality of first points and the plurality of second points based on at least one of the following: the upper point, the lower point, or the third axis component of the obtained vector. [11] A method of controlling a vehicle, the method comprising: Obtaining data sets from a first sensor and a second sensor relating to a moving object in front of the vehicle traveling along a first axis; Projecting a plurality of points contained in the data sets onto a plane formed by a second axis and a third axis, wherein: the plurality of dots indicate a back side of the moving object; the second axis, which is perpendicular to the first axis, lies in a horizontal plane; and the third axis, which is perpendicular to the first axis and the second axis, lies in a vertical plane; Determining a plurality of first points of the plurality of points obtained from the first sensor based on the projection and a plurality of second points of the plurality of points obtained from the second sensor; Determining a first subset of points included in the plurality of first points and a second subset of points included in the plurality of second points; Obtaining a first polygon based on the first subset; Obtaining a second polygon based on the second subset; Obtaining a vector based on points of the first polygon and the second polygon indicating a distance between the first subset and the second subset; Determining, based on the vector, whether the plurality of first points coincides with the plurality of second points; Adjusting a distance between the plurality of first points and the plurality of second points based on the determination of whether the plurality of first points matches the plurality of second points; and Output a signal indicating the set distance. [12] The method of claim 11, further comprising: Obtaining the first polygon and the second polygon based on the moving object identified at a distance from the vehicle, the distance being greater than or equal to a first threshold distance and less than or equal to a second threshold distance that exceeds the first threshold distance. [13] The method of claim 11, further comprising: Detecting an external object using the first sensor in a first area; Detecting the external object using the second sensor in a second area different from the first area; and Obtaining the first polygon and the second polygon based on the moving object identified in an area overlapping the first area and the second area. [14] The method of claim 11, further comprising: Obtaining the first polygon and the second polygon based on the moving object moving in front of the vehicle. [15] The method of claim 11, further comprising: Identifying the plurality of first points and the plurality of second points based on the inspection of the plurality of points. [16] The method of claim 11, further comprising: Determining first minimum values and first maximum values of first points on first layers, each layer of the first layers being formed from a subset of points of the plurality of first points along the second axis; Determining first intermediate values of first intermediate points on a topmost layer of the first layers and a bottommost layer of the first layers; Obtaining the first polygon by connecting the first minimum values, the first maximum values and the first intermediate values; Determining second minimum values and second maximum values of second points on second layers, each layer of the second layers being formed from a subset of points of the plurality of second points along the second axis; Determining second intermediate values of second intermediate points on a topmost layer of the second layers and a bottommost layer of the second layers; and Obtaining the second polygon by connecting the second minimum values, the second maximum values and the second intermediate values. [17] The method of claim 16, further comprising: Obtaining the vector based on: one of the first minimum values of the first points on a first of the first layers, and one of the second minimum values of the second points on a first of the second layers, the first of the second layers having the same order as the first of the first layers; Obtaining the vector based on: one of the first maximum values of the first points on a second of the first layers, and one of the second maximum values of the second points on a second of the second layers, the second of the second layers having the same order as the second of the first layers; Obtaining the vector based on: one of the first intermediate values of the first intermediate points on the topmost layer of the first layers, and one of the second intermediate values of the second intermediate points on the topmost layer of the second layers; or Obtaining the vector based on: one of the first intermediate values of the first intermediate points on the lowest layer of the first layers, and one of the second intermediate values of the second intermediate points on the lowest layer of the second layers. [18] The method of claim 11, further comprising: Determining that the plurality of first points do not coincide with the plurality of second points in a yaw direction based on identifying a component of the second axis in the obtained vector; and Adjusting the distance between the plurality of first points and the plurality of second points based on the second axis component in the obtained vector. [19] The method of claim 11, further comprising: Determining that the plurality of first points do not coincide with the plurality of second points in a tilt direction based on identifying a third axis component in the obtained vector; and Adjusting the distance between the plurality of first points and the plurality of second points based on the third axis component in the obtained vector. [20] The method of claim 11, wherein the plane comprises a first plane, and wherein the method further comprises: Obtaining an upper point and a lower point on a second plane formed by the first axis and the third axis and different from the first plane based on sensor data of the first sensor and the second sensor; Determining that the plurality of first points do not coincide with the plurality of second points in a tilt direction based on identifying at least one of: the upper point, the lower point, or a component of the third axis of the obtained vector; and Adjusting the distance between the plurality of first points and the plurality of second points based on at least one of the following: the upper point, the lower point, or the third axis component of the obtained vector.